.include "macros.inc"

.section .sdata2
.balign 8
.global lbl_805AF3F0
lbl_805AF3F0:
	# ROM: 0x3FBC90
	.4byte 0

.global lbl_805AF3F4
lbl_805AF3F4:
	# ROM: 0x3FBC94
	.float 1.0

.global lbl_805AF3F8
lbl_805AF3F8:
	# ROM: 0x3FBC98
	.float 0.01

.global lbl_805AF3FC
lbl_805AF3FC:
	# ROM: 0x3FBC9C
	.4byte 0x41200000

.global lbl_805AF400
lbl_805AF400:
	# ROM: 0x3FBCA0
	.float 0.1

.global lbl_805AF404
lbl_805AF404:
	# ROM: 0x3FBCA4
	.4byte 0x46FA0000

.global lbl_805AF408
lbl_805AF408:
	# ROM: 0x3FBCA8
	.4byte 0x40240000
	.4byte 0

.global lbl_805AF410
lbl_805AF410:
	# ROM: 0x3FBCB0
	.4byte 0x3D4CCCCD

.global lbl_805AF414
lbl_805AF414:
	# ROM: 0x3FBCB4
	.4byte 0x3F4CCCCD

.global lbl_805AF418
lbl_805AF418:
	# ROM: 0x3FBCB8
	.double 4.503601774854144E15

.global lbl_805AF420
lbl_805AF420:
	# ROM: 0x3FBCC0
	.double 4.503601774854144E15

.global lbl_805AF428
lbl_805AF428:
	# ROM: 0x3FBCC8
	.float 0.6

.global lbl_805AF42C
lbl_805AF42C:
	# ROM: 0x3FBCCC
	.float 0.3

.global lbl_805AF430
lbl_805AF430:
	# ROM: 0x3FBCD0
	.float 0.5
	.4byte 0


.section .data, "wa"
.balign 8
lbl_803F6470:
	.4byte 0x000006FD
	.4byte 0x000007CF
	.4byte 0x0000091D
	.4byte 0x000001B1
	.4byte 0x00000095
	.4byte 0x0000002F
	.4byte 0x00000049
	.4byte 0x00000043

.section .text, "ax"

.global ReverbHICreate
ReverbHICreate:
/* 803B5BC0 003B2B20  94 21 FF 40 */	stwu r1, -0xc0(r1)
/* 803B5BC4 003B2B24  7C 08 02 A6 */	mflr r0
/* 803B5BC8 003B2B28  90 01 00 C4 */	stw r0, 0xc4(r1)
/* 803B5BCC 003B2B2C  DB E1 00 B0 */	stfd f31, 0xb0(r1)
/* 803B5BD0 003B2B30  F3 E1 00 B8 */	psq_st f31, 184(r1), 0, qr0
/* 803B5BD4 003B2B34  DB C1 00 A0 */	stfd f30, 0xa0(r1)
/* 803B5BD8 003B2B38  F3 C1 00 A8 */	psq_st f30, 168(r1), 0, qr0
/* 803B5BDC 003B2B3C  DB A1 00 90 */	stfd f29, 0x90(r1)
/* 803B5BE0 003B2B40  F3 A1 00 98 */	psq_st f29, 152(r1), 0, qr0
/* 803B5BE4 003B2B44  DB 81 00 80 */	stfd f28, 0x80(r1)
/* 803B5BE8 003B2B48  F3 81 00 88 */	psq_st f28, 136(r1), 0, qr0
/* 803B5BEC 003B2B4C  DB 61 00 70 */	stfd f27, 0x70(r1)
/* 803B5BF0 003B2B50  F3 61 00 78 */	psq_st f27, 120(r1), 0, qr0
/* 803B5BF4 003B2B54  DB 41 00 60 */	stfd f26, 0x60(r1)
/* 803B5BF8 003B2B58  F3 41 00 68 */	psq_st f26, 104(r1), 0, qr0
/* 803B5BFC 003B2B5C  DB 21 00 50 */	stfd f25, 0x50(r1)
/* 803B5C00 003B2B60  F3 21 00 58 */	psq_st f25, 88(r1), 0, qr0
/* 803B5C04 003B2B64  DB 01 00 40 */	stfd f24, 0x40(r1)
/* 803B5C08 003B2B68  F3 01 00 48 */	psq_st f24, 72(r1), 0, qr0
/* 803B5C0C 003B2B6C  39 61 00 40 */	addi r11, r1, 0x40
/* 803B5C10 003B2B70  4B FD 3E 51 */	bl _savegpr_20
/* 803B5C14 003B2B74  FF 00 08 90 */	fmr f24, f1
/* 803B5C18 003B2B78  C0 E2 D6 D0 */	lfs f7, lbl_805AF3F0@sda21(r2)
/* 803B5C1C 003B2B7C  FF 80 10 90 */	fmr f28, f2
/* 803B5C20 003B2B80  7C 7E 1B 78 */	mr r30, r3
/* 803B5C24 003B2B84  FF 20 18 90 */	fmr f25, f3
/* 803B5C28 003B2B88  FF 40 20 90 */	fmr f26, f4
/* 803B5C2C 003B2B8C  FF E0 28 90 */	fmr f31, f5
/* 803B5C30 003B2B90  FF 60 30 90 */	fmr f27, f6
/* 803B5C34 003B2B94  FC 18 38 40 */	fcmpo cr0, f24, f7
/* 803B5C38 003B2B98  41 80 00 6C */	blt lbl_803B5CA4
/* 803B5C3C 003B2B9C  C0 22 D6 D4 */	lfs f1, lbl_805AF3F4@sda21(r2)
/* 803B5C40 003B2BA0  FC 18 08 40 */	fcmpo cr0, f24, f1
/* 803B5C44 003B2BA4  41 81 00 60 */	bgt lbl_803B5CA4
/* 803B5C48 003B2BA8  C0 02 D6 D8 */	lfs f0, lbl_805AF3F8@sda21(r2)
/* 803B5C4C 003B2BAC  FC 1C 00 40 */	fcmpo cr0, f28, f0
/* 803B5C50 003B2BB0  41 80 00 54 */	blt lbl_803B5CA4
/* 803B5C54 003B2BB4  C0 02 D6 DC */	lfs f0, lbl_805AF3FC@sda21(r2)
/* 803B5C58 003B2BB8  FC 1C 00 40 */	fcmpo cr0, f28, f0
/* 803B5C5C 003B2BBC  41 81 00 48 */	bgt lbl_803B5CA4
/* 803B5C60 003B2BC0  FC 19 38 40 */	fcmpo cr0, f25, f7
/* 803B5C64 003B2BC4  41 80 00 40 */	blt lbl_803B5CA4
/* 803B5C68 003B2BC8  FC 19 08 40 */	fcmpo cr0, f25, f1
/* 803B5C6C 003B2BCC  41 81 00 38 */	bgt lbl_803B5CA4
/* 803B5C70 003B2BD0  FC 1B 38 40 */	fcmpo cr0, f27, f7
/* 803B5C74 003B2BD4  41 80 00 30 */	blt lbl_803B5CA4
/* 803B5C78 003B2BD8  FC 1B 08 40 */	fcmpo cr0, f27, f1
/* 803B5C7C 003B2BDC  41 81 00 28 */	bgt lbl_803B5CA4
/* 803B5C80 003B2BE0  FC 1A 38 40 */	fcmpo cr0, f26, f7
/* 803B5C84 003B2BE4  41 80 00 20 */	blt lbl_803B5CA4
/* 803B5C88 003B2BE8  FC 1A 08 40 */	fcmpo cr0, f26, f1
/* 803B5C8C 003B2BEC  41 81 00 18 */	bgt lbl_803B5CA4
/* 803B5C90 003B2BF0  FC 1F 38 40 */	fcmpo cr0, f31, f7
/* 803B5C94 003B2BF4  41 80 00 10 */	blt lbl_803B5CA4
/* 803B5C98 003B2BF8  C0 02 D6 E0 */	lfs f0, lbl_805AF400@sda21(r2)
/* 803B5C9C 003B2BFC  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 803B5CA0 003B2C00  40 81 00 0C */	ble lbl_803B5CAC
lbl_803B5CA4:
/* 803B5CA4 003B2C04  38 60 00 00 */	li r3, 0
/* 803B5CA8 003B2C08  48 00 03 CC */	b lbl_803B6074
lbl_803B5CAC:
/* 803B5CAC 003B2C0C  38 80 00 00 */	li r4, 0
/* 803B5CB0 003B2C10  38 A0 01 C4 */	li r5, 0x1c4
/* 803B5CB4 003B2C14  4B C4 D6 F5 */	bl memset
/* 803B5CB8 003B2C18  C0 02 D6 E4 */	lfs f0, lbl_805AF404@sda21(r2)
/* 803B5CBC 003B2C1C  3C 60 80 3F */	lis r3, lbl_803F6470@ha
/* 803B5CC0 003B2C20  C3 C2 D6 D0 */	lfs f30, lbl_805AF3F0@sda21(r2)
/* 803B5CC4 003B2C24  3B A3 64 70 */	addi r29, r3, lbl_803F6470@l
/* 803B5CC8 003B2C28  EF 80 07 32 */	fmuls f28, f0, f28
/* 803B5CCC 003B2C2C  CB A2 D6 F8 */	lfd f29, lbl_805AF418@sda21(r2)
/* 803B5CD0 003B2C30  3B E0 00 00 */	li r31, 0
/* 803B5CD4 003B2C34  3F 80 43 30 */	lis r28, 0x4330
/* 803B5CD8 003B2C38  48 00 02 B4 */	b lbl_803B5F8C
lbl_803B5CDC:
/* 803B5CDC 003B2C3C  57 F7 06 3E */	clrlwi r23, r31, 0x18
/* 803B5CE0 003B2C40  3A C0 00 00 */	li r22, 0
/* 803B5CE4 003B2C44  1F 17 00 03 */	mulli r24, r23, 3
/* 803B5CE8 003B2C48  48 00 00 F8 */	b lbl_803B5DE0
lbl_803B5CEC:
/* 803B5CEC 003B2C4C  56 C0 06 3E */	clrlwi r0, r22, 0x18
/* 803B5CF0 003B2C50  56 DB 15 BA */	rlwinm r27, r22, 2, 0x16, 0x1d
/* 803B5CF4 003B2C54  7F 20 C2 14 */	add r25, r0, r24
/* 803B5CF8 003B2C58  7C 7D D8 2E */	lwzx r3, r29, r27
/* 803B5CFC 003B2C5C  1C 19 00 14 */	mulli r0, r25, 0x14
/* 803B5D00 003B2C60  3A A3 00 02 */	addi r21, r3, 2
/* 803B5D04 003B2C64  56 B4 10 3A */	slwi r20, r21, 2
/* 803B5D08 003B2C68  7F 5E 02 14 */	add r26, r30, r0
/* 803B5D0C 003B2C6C  92 9A 00 BC */	stw r20, 0xbc(r26)
/* 803B5D10 003B2C70  7E 83 A3 78 */	mr r3, r20
/* 803B5D14 003B2C74  4B FF F4 21 */	bl salMalloc
/* 803B5D18 003B2C78  90 7A 00 C0 */	stw r3, 0xc0(r26)
/* 803B5D1C 003B2C7C  7E 85 A3 78 */	mr r5, r20
/* 803B5D20 003B2C80  38 80 00 00 */	li r4, 0
/* 803B5D24 003B2C84  80 7A 00 C0 */	lwz r3, 0xc0(r26)
/* 803B5D28 003B2C88  4B C4 D6 81 */	bl memset
/* 803B5D2C 003B2C8C  D3 DA 00 C4 */	stfs f30, 0xc4(r26)
/* 803B5D30 003B2C90  7E A0 0E 70 */	srawi r0, r21, 1
/* 803B5D34 003B2C94  54 03 10 3A */	slwi r3, r0, 2
/* 803B5D38 003B2C98  80 1A 00 B4 */	lwz r0, 0xb4(r26)
/* 803B5D3C 003B2C9C  7C 03 00 50 */	subf r0, r3, r0
/* 803B5D40 003B2CA0  90 1A 00 B8 */	stw r0, 0xb8(r26)
/* 803B5D44 003B2CA4  48 00 00 14 */	b lbl_803B5D58
lbl_803B5D48:
/* 803B5D48 003B2CA8  80 7A 00 B8 */	lwz r3, 0xb8(r26)
/* 803B5D4C 003B2CAC  80 1A 00 BC */	lwz r0, 0xbc(r26)
/* 803B5D50 003B2CB0  7C 03 02 14 */	add r0, r3, r0
/* 803B5D54 003B2CB4  90 1A 00 B8 */	stw r0, 0xb8(r26)
lbl_803B5D58:
/* 803B5D58 003B2CB8  80 1A 00 B8 */	lwz r0, 0xb8(r26)
/* 803B5D5C 003B2CBC  2C 00 00 00 */	cmpwi r0, 0
/* 803B5D60 003B2CC0  41 80 FF E8 */	blt lbl_803B5D48
/* 803B5D64 003B2CC4  38 00 00 00 */	li r0, 0
/* 803B5D68 003B2CC8  90 1A 00 B4 */	stw r0, 0xb4(r26)
/* 803B5D6C 003B2CCC  90 1A 00 B8 */	stw r0, 0xb8(r26)
/* 803B5D70 003B2CD0  7C 7D D8 2E */	lwzx r3, r29, r27
/* 803B5D74 003B2CD4  80 1A 00 B4 */	lwz r0, 0xb4(r26)
/* 803B5D78 003B2CD8  54 63 10 3A */	slwi r3, r3, 2
/* 803B5D7C 003B2CDC  7C 03 00 50 */	subf r0, r3, r0
/* 803B5D80 003B2CE0  90 1A 00 B8 */	stw r0, 0xb8(r26)
/* 803B5D84 003B2CE4  48 00 00 14 */	b lbl_803B5D98
lbl_803B5D88:
/* 803B5D88 003B2CE8  80 7A 00 B8 */	lwz r3, 0xb8(r26)
/* 803B5D8C 003B2CEC  80 1A 00 BC */	lwz r0, 0xbc(r26)
/* 803B5D90 003B2CF0  7C 03 02 14 */	add r0, r3, r0
/* 803B5D94 003B2CF4  90 1A 00 B8 */	stw r0, 0xb8(r26)
lbl_803B5D98:
/* 803B5D98 003B2CF8  80 1A 00 B8 */	lwz r0, 0xb8(r26)
/* 803B5D9C 003B2CFC  2C 00 00 00 */	cmpwi r0, 0
/* 803B5DA0 003B2D00  41 80 FF E8 */	blt lbl_803B5D88
/* 803B5DA4 003B2D04  7C 1D D8 2E */	lwzx r0, r29, r27
/* 803B5DA8 003B2D08  93 81 00 08 */	stw r28, 8(r1)
/* 803B5DAC 003B2D0C  1C 00 FF FD */	mulli r0, r0, -3
/* 803B5DB0 003B2D10  C8 22 D6 E8 */	lfd f1, lbl_805AF408@sda21(r2)
/* 803B5DB4 003B2D14  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 803B5DB8 003B2D18  90 01 00 0C */	stw r0, 0xc(r1)
/* 803B5DBC 003B2D1C  C8 01 00 08 */	lfd f0, 8(r1)
/* 803B5DC0 003B2D20  EC 00 E8 28 */	fsubs f0, f0, f29
/* 803B5DC4 003B2D24  EC 40 E0 24 */	fdivs f2, f0, f28
/* 803B5DC8 003B2D28  4B FD EF 25 */	bl pow
/* 803B5DCC 003B2D2C  FC 00 08 18 */	frsp f0, f1
/* 803B5DD0 003B2D30  57 23 10 3A */	slwi r3, r25, 2
/* 803B5DD4 003B2D34  38 03 01 6C */	addi r0, r3, 0x16c
/* 803B5DD8 003B2D38  3A D6 00 01 */	addi r22, r22, 1
/* 803B5DDC 003B2D3C  7C 1E 05 2E */	stfsx f0, r30, r0
lbl_803B5DE0:
/* 803B5DE0 003B2D40  56 C0 06 3E */	clrlwi r0, r22, 0x18
/* 803B5DE4 003B2D44  28 00 00 03 */	cmplwi r0, 3
/* 803B5DE8 003B2D48  41 80 FF 04 */	blt lbl_803B5CEC
/* 803B5DEC 003B2D4C  3B 60 00 00 */	li r27, 0
/* 803B5DF0 003B2D50  48 00 00 C8 */	b lbl_803B5EB8
lbl_803B5DF4:
/* 803B5DF4 003B2D54  57 60 15 BA */	rlwinm r0, r27, 2, 0x16, 0x1d
/* 803B5DF8 003B2D58  57 64 06 3E */	clrlwi r4, r27, 0x18
/* 803B5DFC 003B2D5C  7C 7D 02 14 */	add r3, r29, r0
/* 803B5E00 003B2D60  7C 04 C2 14 */	add r0, r4, r24
/* 803B5E04 003B2D64  3B 43 00 0C */	addi r26, r3, 0xc
/* 803B5E08 003B2D68  80 63 00 0C */	lwz r3, 0xc(r3)
/* 803B5E0C 003B2D6C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 803B5E10 003B2D70  3A A3 00 02 */	addi r21, r3, 2
/* 803B5E14 003B2D74  56 B4 10 3A */	slwi r20, r21, 2
/* 803B5E18 003B2D78  7F 3E 02 14 */	add r25, r30, r0
/* 803B5E1C 003B2D7C  92 99 00 08 */	stw r20, 8(r25)
/* 803B5E20 003B2D80  7E 83 A3 78 */	mr r3, r20
/* 803B5E24 003B2D84  4B FF F3 11 */	bl salMalloc
/* 803B5E28 003B2D88  90 79 00 0C */	stw r3, 0xc(r25)
/* 803B5E2C 003B2D8C  7E 85 A3 78 */	mr r5, r20
/* 803B5E30 003B2D90  38 80 00 00 */	li r4, 0
/* 803B5E34 003B2D94  80 79 00 0C */	lwz r3, 0xc(r25)
/* 803B5E38 003B2D98  4B C4 D5 71 */	bl memset
/* 803B5E3C 003B2D9C  D3 D9 00 10 */	stfs f30, 0x10(r25)
/* 803B5E40 003B2DA0  7E A0 0E 70 */	srawi r0, r21, 1
/* 803B5E44 003B2DA4  54 03 10 3A */	slwi r3, r0, 2
/* 803B5E48 003B2DA8  80 19 00 00 */	lwz r0, 0(r25)
/* 803B5E4C 003B2DAC  7C 03 00 50 */	subf r0, r3, r0
/* 803B5E50 003B2DB0  90 19 00 04 */	stw r0, 4(r25)
/* 803B5E54 003B2DB4  48 00 00 14 */	b lbl_803B5E68
lbl_803B5E58:
/* 803B5E58 003B2DB8  80 79 00 04 */	lwz r3, 4(r25)
/* 803B5E5C 003B2DBC  80 19 00 08 */	lwz r0, 8(r25)
/* 803B5E60 003B2DC0  7C 03 02 14 */	add r0, r3, r0
/* 803B5E64 003B2DC4  90 19 00 04 */	stw r0, 4(r25)
lbl_803B5E68:
/* 803B5E68 003B2DC8  80 19 00 04 */	lwz r0, 4(r25)
/* 803B5E6C 003B2DCC  2C 00 00 00 */	cmpwi r0, 0
/* 803B5E70 003B2DD0  41 80 FF E8 */	blt lbl_803B5E58
/* 803B5E74 003B2DD4  38 00 00 00 */	li r0, 0
/* 803B5E78 003B2DD8  90 19 00 00 */	stw r0, 0(r25)
/* 803B5E7C 003B2DDC  90 19 00 04 */	stw r0, 4(r25)
/* 803B5E80 003B2DE0  80 7A 00 00 */	lwz r3, 0(r26)
/* 803B5E84 003B2DE4  80 19 00 00 */	lwz r0, 0(r25)
/* 803B5E88 003B2DE8  54 63 10 3A */	slwi r3, r3, 2
/* 803B5E8C 003B2DEC  7C 03 00 50 */	subf r0, r3, r0
/* 803B5E90 003B2DF0  90 19 00 04 */	stw r0, 4(r25)
/* 803B5E94 003B2DF4  48 00 00 14 */	b lbl_803B5EA8
lbl_803B5E98:
/* 803B5E98 003B2DF8  80 79 00 04 */	lwz r3, 4(r25)
/* 803B5E9C 003B2DFC  80 19 00 08 */	lwz r0, 8(r25)
/* 803B5EA0 003B2E00  7C 03 02 14 */	add r0, r3, r0
/* 803B5EA4 003B2E04  90 19 00 04 */	stw r0, 4(r25)
lbl_803B5EA8:
/* 803B5EA8 003B2E08  80 19 00 04 */	lwz r0, 4(r25)
/* 803B5EAC 003B2E0C  2C 00 00 00 */	cmpwi r0, 0
/* 803B5EB0 003B2E10  41 80 FF E8 */	blt lbl_803B5E98
/* 803B5EB4 003B2E14  3B 7B 00 01 */	addi r27, r27, 1
lbl_803B5EB8:
/* 803B5EB8 003B2E18  57 60 06 3E */	clrlwi r0, r27, 0x18
/* 803B5EBC 003B2E1C  28 00 00 02 */	cmplwi r0, 2
/* 803B5EC0 003B2E20  41 80 FF 34 */	blt lbl_803B5DF4
/* 803B5EC4 003B2E24  56 E0 10 3A */	slwi r0, r23, 2
/* 803B5EC8 003B2E28  7C 7D 02 14 */	add r3, r29, r0
/* 803B5ECC 003B2E2C  3B 03 00 14 */	addi r24, r3, 0x14
/* 803B5ED0 003B2E30  80 63 00 14 */	lwz r3, 0x14(r3)
/* 803B5ED4 003B2E34  1C 17 00 3C */	mulli r0, r23, 0x3c
/* 803B5ED8 003B2E38  3A A3 00 02 */	addi r21, r3, 2
/* 803B5EDC 003B2E3C  56 B4 10 3A */	slwi r20, r21, 2
/* 803B5EE0 003B2E40  7E FE 02 14 */	add r23, r30, r0
/* 803B5EE4 003B2E44  92 97 00 30 */	stw r20, 0x30(r23)
/* 803B5EE8 003B2E48  7E 83 A3 78 */	mr r3, r20
/* 803B5EEC 003B2E4C  4B FF F2 49 */	bl salMalloc
/* 803B5EF0 003B2E50  90 77 00 34 */	stw r3, 0x34(r23)
/* 803B5EF4 003B2E54  7E 85 A3 78 */	mr r5, r20
/* 803B5EF8 003B2E58  38 80 00 00 */	li r4, 0
/* 803B5EFC 003B2E5C  80 77 00 34 */	lwz r3, 0x34(r23)
/* 803B5F00 003B2E60  4B C4 D4 A9 */	bl memset
/* 803B5F04 003B2E64  D3 D7 00 38 */	stfs f30, 0x38(r23)
/* 803B5F08 003B2E68  7E A0 0E 70 */	srawi r0, r21, 1
/* 803B5F0C 003B2E6C  54 03 10 3A */	slwi r3, r0, 2
/* 803B5F10 003B2E70  80 17 00 28 */	lwz r0, 0x28(r23)
/* 803B5F14 003B2E74  7C 03 00 50 */	subf r0, r3, r0
/* 803B5F18 003B2E78  90 17 00 2C */	stw r0, 0x2c(r23)
/* 803B5F1C 003B2E7C  48 00 00 14 */	b lbl_803B5F30
lbl_803B5F20:
/* 803B5F20 003B2E80  80 77 00 2C */	lwz r3, 0x2c(r23)
/* 803B5F24 003B2E84  80 17 00 30 */	lwz r0, 0x30(r23)
/* 803B5F28 003B2E88  7C 03 02 14 */	add r0, r3, r0
/* 803B5F2C 003B2E8C  90 17 00 2C */	stw r0, 0x2c(r23)
lbl_803B5F30:
/* 803B5F30 003B2E90  80 17 00 2C */	lwz r0, 0x2c(r23)
/* 803B5F34 003B2E94  2C 00 00 00 */	cmpwi r0, 0
/* 803B5F38 003B2E98  41 80 FF E8 */	blt lbl_803B5F20
/* 803B5F3C 003B2E9C  38 00 00 00 */	li r0, 0
/* 803B5F40 003B2EA0  90 17 00 28 */	stw r0, 0x28(r23)
/* 803B5F44 003B2EA4  90 17 00 2C */	stw r0, 0x2c(r23)
/* 803B5F48 003B2EA8  80 78 00 00 */	lwz r3, 0(r24)
/* 803B5F4C 003B2EAC  80 17 00 28 */	lwz r0, 0x28(r23)
/* 803B5F50 003B2EB0  54 63 10 3A */	slwi r3, r3, 2
/* 803B5F54 003B2EB4  7C 03 00 50 */	subf r0, r3, r0
/* 803B5F58 003B2EB8  90 17 00 2C */	stw r0, 0x2c(r23)
/* 803B5F5C 003B2EBC  48 00 00 14 */	b lbl_803B5F70
lbl_803B5F60:
/* 803B5F60 003B2EC0  80 77 00 2C */	lwz r3, 0x2c(r23)
/* 803B5F64 003B2EC4  80 17 00 30 */	lwz r0, 0x30(r23)
/* 803B5F68 003B2EC8  7C 03 02 14 */	add r0, r3, r0
/* 803B5F6C 003B2ECC  90 17 00 2C */	stw r0, 0x2c(r23)
lbl_803B5F70:
/* 803B5F70 003B2ED0  80 17 00 2C */	lwz r0, 0x2c(r23)
/* 803B5F74 003B2ED4  2C 00 00 00 */	cmpwi r0, 0
/* 803B5F78 003B2ED8  41 80 FF E8 */	blt lbl_803B5F60
/* 803B5F7C 003B2EDC  57 E3 15 BA */	rlwinm r3, r31, 2, 0x16, 0x1d
/* 803B5F80 003B2EE0  3B FF 00 01 */	addi r31, r31, 1
/* 803B5F84 003B2EE4  38 03 01 90 */	addi r0, r3, 0x190
/* 803B5F88 003B2EE8  7F DE 05 2E */	stfsx f30, r30, r0
lbl_803B5F8C:
/* 803B5F8C 003B2EEC  57 E0 06 3E */	clrlwi r0, r31, 0x18
/* 803B5F90 003B2EF0  28 00 00 03 */	cmplwi r0, 3
/* 803B5F94 003B2EF4  41 80 FD 48 */	blt lbl_803B5CDC
/* 803B5F98 003B2EF8  D3 1E 01 68 */	stfs f24, 0x168(r30)
/* 803B5F9C 003B2EFC  C0 02 D6 F0 */	lfs f0, lbl_805AF410@sda21(r2)
/* 803B5FA0 003B2F00  D3 3E 01 9C */	stfs f25, 0x19c(r30)
/* 803B5FA4 003B2F04  D3 7E 01 A8 */	stfs f27, 0x1a8(r30)
/* 803B5FA8 003B2F08  D3 5E 01 A0 */	stfs f26, 0x1a0(r30)
/* 803B5FAC 003B2F0C  C0 3E 01 A0 */	lfs f1, 0x1a0(r30)
/* 803B5FB0 003B2F10  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 803B5FB4 003B2F14  40 80 00 08 */	bge lbl_803B5FBC
/* 803B5FB8 003B2F18  D0 1E 01 A0 */	stfs f0, 0x1a0(r30)
lbl_803B5FBC:
/* 803B5FBC 003B2F1C  C0 42 D6 F4 */	lfs f2, lbl_805AF414@sda21(r2)
/* 803B5FC0 003B2F20  C0 3E 01 A0 */	lfs f1, 0x1a0(r30)
/* 803B5FC4 003B2F24  C0 02 D6 D0 */	lfs f0, lbl_805AF3F0@sda21(r2)
/* 803B5FC8 003B2F28  EC 22 00 72 */	fmuls f1, f2, f1
/* 803B5FCC 003B2F2C  C0 42 D6 F0 */	lfs f2, lbl_805AF410@sda21(r2)
/* 803B5FD0 003B2F30  C0 62 D6 D4 */	lfs f3, lbl_805AF3F4@sda21(r2)
/* 803B5FD4 003B2F34  FC 00 F8 00 */	fcmpu cr0, f0, f31
/* 803B5FD8 003B2F38  EC 02 08 2A */	fadds f0, f2, f1
/* 803B5FDC 003B2F3C  EC 03 00 28 */	fsubs f0, f3, f0
/* 803B5FE0 003B2F40  D0 1E 01 A0 */	stfs f0, 0x1a0(r30)
/* 803B5FE4 003B2F44  41 82 00 6C */	beq lbl_803B6050
/* 803B5FE8 003B2F48  C0 02 D6 E4 */	lfs f0, lbl_805AF404@sda21(r2)
/* 803B5FEC 003B2F4C  3A A0 00 00 */	li r21, 0
/* 803B5FF0 003B2F50  EC 00 07 F2 */	fmuls f0, f0, f31
/* 803B5FF4 003B2F54  FC 00 00 1E */	fctiwz f0, f0
/* 803B5FF8 003B2F58  D8 01 00 08 */	stfd f0, 8(r1)
/* 803B5FFC 003B2F5C  80 01 00 0C */	lwz r0, 0xc(r1)
/* 803B6000 003B2F60  90 1E 01 A4 */	stw r0, 0x1a4(r30)
/* 803B6004 003B2F64  48 00 00 3C */	b lbl_803B6040
lbl_803B6008:
/* 803B6008 003B2F68  80 1E 01 A4 */	lwz r0, 0x1a4(r30)
/* 803B600C 003B2F6C  54 03 10 3A */	slwi r3, r0, 2
/* 803B6010 003B2F70  4B FF F1 25 */	bl salMalloc
/* 803B6014 003B2F74  56 A0 15 BA */	rlwinm r0, r21, 2, 0x16, 0x1d
/* 803B6018 003B2F78  38 80 00 00 */	li r4, 0
/* 803B601C 003B2F7C  7E 9E 02 14 */	add r20, r30, r0
/* 803B6020 003B2F80  90 74 01 AC */	stw r3, 0x1ac(r20)
/* 803B6024 003B2F84  80 1E 01 A4 */	lwz r0, 0x1a4(r30)
/* 803B6028 003B2F88  80 74 01 AC */	lwz r3, 0x1ac(r20)
/* 803B602C 003B2F8C  54 05 10 3A */	slwi r5, r0, 2
/* 803B6030 003B2F90  4B C4 D3 79 */	bl memset
/* 803B6034 003B2F94  80 14 01 AC */	lwz r0, 0x1ac(r20)
/* 803B6038 003B2F98  3A B5 00 01 */	addi r21, r21, 1
/* 803B603C 003B2F9C  90 14 01 B8 */	stw r0, 0x1b8(r20)
lbl_803B6040:
/* 803B6040 003B2FA0  56 A0 06 3E */	clrlwi r0, r21, 0x18
/* 803B6044 003B2FA4  28 00 00 03 */	cmplwi r0, 3
/* 803B6048 003B2FA8  41 80 FF C0 */	blt lbl_803B6008
/* 803B604C 003B2FAC  48 00 00 24 */	b lbl_803B6070
lbl_803B6050:
/* 803B6050 003B2FB0  38 00 00 00 */	li r0, 0
/* 803B6054 003B2FB4  90 1E 01 A4 */	stw r0, 0x1a4(r30)
/* 803B6058 003B2FB8  90 1E 01 B8 */	stw r0, 0x1b8(r30)
/* 803B605C 003B2FBC  90 1E 01 AC */	stw r0, 0x1ac(r30)
/* 803B6060 003B2FC0  90 1E 01 BC */	stw r0, 0x1bc(r30)
/* 803B6064 003B2FC4  90 1E 01 B0 */	stw r0, 0x1b0(r30)
/* 803B6068 003B2FC8  90 1E 01 C0 */	stw r0, 0x1c0(r30)
/* 803B606C 003B2FCC  90 1E 01 B4 */	stw r0, 0x1b4(r30)
lbl_803B6070:
/* 803B6070 003B2FD0  38 60 00 01 */	li r3, 1
lbl_803B6074:
/* 803B6074 003B2FD4  E3 E1 00 B8 */	psq_l f31, 184(r1), 0, qr0
/* 803B6078 003B2FD8  CB E1 00 B0 */	lfd f31, 0xb0(r1)
/* 803B607C 003B2FDC  E3 C1 00 A8 */	psq_l f30, 168(r1), 0, qr0
/* 803B6080 003B2FE0  CB C1 00 A0 */	lfd f30, 0xa0(r1)
/* 803B6084 003B2FE4  E3 A1 00 98 */	psq_l f29, 152(r1), 0, qr0
/* 803B6088 003B2FE8  CB A1 00 90 */	lfd f29, 0x90(r1)
/* 803B608C 003B2FEC  E3 81 00 88 */	psq_l f28, 136(r1), 0, qr0
/* 803B6090 003B2FF0  CB 81 00 80 */	lfd f28, 0x80(r1)
/* 803B6094 003B2FF4  E3 61 00 78 */	psq_l f27, 120(r1), 0, qr0
/* 803B6098 003B2FF8  CB 61 00 70 */	lfd f27, 0x70(r1)
/* 803B609C 003B2FFC  E3 41 00 68 */	psq_l f26, 104(r1), 0, qr0
/* 803B60A0 003B3000  CB 41 00 60 */	lfd f26, 0x60(r1)
/* 803B60A4 003B3004  E3 21 00 58 */	psq_l f25, 88(r1), 0, qr0
/* 803B60A8 003B3008  CB 21 00 50 */	lfd f25, 0x50(r1)
/* 803B60AC 003B300C  E3 01 00 48 */	psq_l f24, 72(r1), 0, qr0
/* 803B60B0 003B3010  39 61 00 40 */	addi r11, r1, 0x40
/* 803B60B4 003B3014  CB 01 00 40 */	lfd f24, 0x40(r1)
/* 803B60B8 003B3018  4B FD 39 F5 */	bl _restgpr_20
/* 803B60BC 003B301C  80 01 00 C4 */	lwz r0, 0xc4(r1)
/* 803B60C0 003B3020  7C 08 03 A6 */	mtlr r0
/* 803B60C4 003B3024  38 21 00 C0 */	addi r1, r1, 0xc0
/* 803B60C8 003B3028  4E 80 00 20 */	blr

.global DoCrossTalk
DoCrossTalk:
/* 803B60CC 003B302C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 803B60D0 003B3030  D9 C1 00 28 */	stfd f14, 0x28(r1)
/* 803B60D4 003B3034  3C A0 80 5B */	lis r5, lbl_805AF420@ha
/* 803B60D8 003B3038  C8 05 F4 20 */	lfd f0, lbl_805AF420@l(r5)
/* 803B60DC 003B303C  3C A0 43 30 */	lis r5, 0x4330
/* 803B60E0 003B3040  90 A1 00 08 */	stw r5, 8(r1)
/* 803B60E4 003B3044  90 A1 00 10 */	stw r5, 0x10(r1)
/* 803B60E8 003B3048  90 A1 00 18 */	stw r5, 0x18(r1)
/* 803B60EC 003B304C  90 A1 00 20 */	stw r5, 0x20(r1)
/* 803B60F0 003B3050  10 62 0C 20 */	ps_merge00 f3, f2, f1
/* 803B60F4 003B3054  10 81 14 20 */	ps_merge00 f4, f1, f2
/* 803B60F8 003B3058  3C A0 80 5B */	lis r5, lbl_805AF428@ha
/* 803B60FC 003B305C  C0 A5 F4 28 */	lfs f5, lbl_805AF428@l(r5)
/* 803B6100 003B3060  38 A0 00 4F */	li r5, 0x4f
/* 803B6104 003B3064  7C A9 03 A6 */	mtctr r5
/* 803B6108 003B3068  39 40 FF F8 */	li r10, -8
/* 803B610C 003B306C  39 60 FF FC */	li r11, -4
/* 803B6110 003B3070  10 84 01 58 */	ps_muls0 f4, f4, f5
/* 803B6114 003B3074  80 C3 00 00 */	lwz r6, 0(r3)
/* 803B6118 003B3078  80 E4 00 00 */	lwz r7, 0(r4)
/* 803B611C 003B307C  6C C6 80 00 */	xoris r6, r6, 0x8000
/* 803B6120 003B3080  81 03 00 04 */	lwz r8, 4(r3)
/* 803B6124 003B3084  6C E7 80 00 */	xoris r7, r7, 0x8000
/* 803B6128 003B3088  81 24 00 04 */	lwz r9, 4(r4)
/* 803B612C 003B308C  6D 08 80 00 */	xoris r8, r8, 0x8000
/* 803B6130 003B3090  90 C1 00 0C */	stw r6, 0xc(r1)
/* 803B6134 003B3094  6D 29 80 00 */	xoris r9, r9, 0x8000
/* 803B6138 003B3098  90 E1 00 14 */	stw r7, 0x14(r1)
/* 803B613C 003B309C  91 01 00 1C */	stw r8, 0x1c(r1)
/* 803B6140 003B30A0  91 21 00 24 */	stw r9, 0x24(r1)
/* 803B6144 003B30A4  C8 A1 00 08 */	lfd f5, 8(r1)
/* 803B6148 003B30A8  C8 C1 00 10 */	lfd f6, 0x10(r1)
/* 803B614C 003B30AC  EC A5 00 28 */	fsubs f5, f5, f0
/* 803B6150 003B30B0  C8 E1 00 18 */	lfd f7, 0x18(r1)
/* 803B6154 003B30B4  EC C6 00 28 */	fsubs f6, f6, f0
/* 803B6158 003B30B8  C9 01 00 20 */	lfd f8, 0x20(r1)
/* 803B615C 003B30BC  EC E7 00 28 */	fsubs f7, f7, f0
/* 803B6160 003B30C0  ED 08 00 28 */	fsubs f8, f8, f0
lbl_803B6164:
/* 803B6164 003B30C4  11 25 34 20 */	ps_merge00 f9, f5, f6
/* 803B6168 003B30C8  84 C3 00 08 */	lwzu r6, 8(r3)
/* 803B616C 003B30CC  11 47 44 20 */	ps_merge00 f10, f7, f8
/* 803B6170 003B30D0  84 E4 00 08 */	lwzu r7, 8(r4)
/* 803B6174 003B30D4  6C C6 80 00 */	xoris r6, r6, 0x8000
/* 803B6178 003B30D8  81 03 00 04 */	lwz r8, 4(r3)
/* 803B617C 003B30DC  11 69 00 F2 */	ps_mul f11, f9, f3
/* 803B6180 003B30E0  6C E7 80 00 */	xoris r7, r7, 0x8000
/* 803B6184 003B30E4  11 89 01 32 */	ps_mul f12, f9, f4
/* 803B6188 003B30E8  81 24 00 04 */	lwz r9, 4(r4)
/* 803B618C 003B30EC  11 AA 00 F2 */	ps_mul f13, f10, f3
/* 803B6190 003B30F0  6D 08 80 00 */	xoris r8, r8, 0x8000
/* 803B6194 003B30F4  11 CA 01 32 */	ps_mul f14, f10, f4
/* 803B6198 003B30F8  90 C1 00 0C */	stw r6, 0xc(r1)
/* 803B619C 003B30FC  11 6B 5A D4 */	ps_sum0 f11, f11, f11, f11
/* 803B61A0 003B3100  6D 29 80 00 */	xoris r9, r9, 0x8000
/* 803B61A4 003B3104  11 8C 63 14 */	ps_sum0 f12, f12, f12, f12
/* 803B61A8 003B3108  90 E1 00 14 */	stw r7, 0x14(r1)
/* 803B61AC 003B310C  11 AD 6B 54 */	ps_sum0 f13, f13, f13, f13
/* 803B61B0 003B3110  91 01 00 1C */	stw r8, 0x1c(r1)
/* 803B61B4 003B3114  11 CE 73 94 */	ps_sum0 f14, f14, f14, f14
/* 803B61B8 003B3118  91 21 00 24 */	stw r9, 0x24(r1)
/* 803B61BC 003B311C  FD 60 58 1C */	fctiw f11, f11
/* 803B61C0 003B3120  C8 A1 00 08 */	lfd f5, 8(r1)
/* 803B61C4 003B3124  FD 80 60 1C */	fctiw f12, f12
/* 803B61C8 003B3128  C8 C1 00 10 */	lfd f6, 0x10(r1)
/* 803B61CC 003B312C  FD A0 68 1C */	fctiw f13, f13
/* 803B61D0 003B3130  EC A5 00 28 */	fsubs f5, f5, f0
/* 803B61D4 003B3134  FD C0 70 1C */	fctiw f14, f14
/* 803B61D8 003B3138  C8 E1 00 18 */	lfd f7, 0x18(r1)
/* 803B61DC 003B313C  7D 6A 1F AE */	stfiwx f11, r10, r3
/* 803B61E0 003B3140  EC C6 00 28 */	fsubs f6, f6, f0
/* 803B61E4 003B3144  7D 8A 27 AE */	stfiwx f12, r10, r4
/* 803B61E8 003B3148  C9 01 00 20 */	lfd f8, 0x20(r1)
/* 803B61EC 003B314C  7D AB 1F AE */	stfiwx f13, r11, r3
/* 803B61F0 003B3150  EC E7 00 28 */	fsubs f7, f7, f0
/* 803B61F4 003B3154  7D CB 27 AE */	stfiwx f14, r11, r4
/* 803B61F8 003B3158  ED 08 00 28 */	fsubs f8, f8, f0
/* 803B61FC 003B315C  42 00 FF 68 */	bdnz lbl_803B6164
/* 803B6200 003B3160  11 25 34 20 */	ps_merge00 f9, f5, f6
/* 803B6204 003B3164  38 63 00 08 */	addi r3, r3, 8
/* 803B6208 003B3168  11 47 44 20 */	ps_merge00 f10, f7, f8
/* 803B620C 003B316C  38 84 00 08 */	addi r4, r4, 8
/* 803B6210 003B3170  11 69 00 F2 */	ps_mul f11, f9, f3
/* 803B6214 003B3174  11 89 01 32 */	ps_mul f12, f9, f4
/* 803B6218 003B3178  11 AA 00 F2 */	ps_mul f13, f10, f3
/* 803B621C 003B317C  11 CA 01 32 */	ps_mul f14, f10, f4
/* 803B6220 003B3180  11 6B 5A D4 */	ps_sum0 f11, f11, f11, f11
/* 803B6224 003B3184  11 8C 63 14 */	ps_sum0 f12, f12, f12, f12
/* 803B6228 003B3188  11 AD 6B 54 */	ps_sum0 f13, f13, f13, f13
/* 803B622C 003B318C  11 CE 73 94 */	ps_sum0 f14, f14, f14, f14
/* 803B6230 003B3190  FD 60 58 1C */	fctiw f11, f11
/* 803B6234 003B3194  FD 80 60 1C */	fctiw f12, f12
/* 803B6238 003B3198  FD A0 68 1C */	fctiw f13, f13
/* 803B623C 003B319C  FD C0 70 1C */	fctiw f14, f14
/* 803B6240 003B31A0  7D 6A 1F AE */	stfiwx f11, r10, r3
/* 803B6244 003B31A4  7D 8A 27 AE */	stfiwx f12, r10, r4
/* 803B6248 003B31A8  7D AB 1F AE */	stfiwx f13, r11, r3
/* 803B624C 003B31AC  7D CB 27 AE */	stfiwx f14, r11, r4
/* 803B6250 003B31B0  C9 C1 00 28 */	lfd f14, 0x28(r1)
/* 803B6254 003B31B4  38 21 00 30 */	addi r1, r1, 0x30
/* 803B6258 003B31B8  4E 80 00 20 */	blr

.global HandleReverb_0
HandleReverb_0:
/* 803B625C 003B31BC  94 21 FF 40 */	stwu r1, -0xc0(r1)
/* 803B6260 003B31C0  BD C1 00 08 */	stmw r14, 8(r1)
/* 803B6264 003B31C4  D9 C1 00 60 */	stfd f14, 0x60(r1)
/* 803B6268 003B31C8  D9 E1 00 68 */	stfd f15, 0x68(r1)
/* 803B626C 003B31CC  DA 01 00 70 */	stfd f16, 0x70(r1)
/* 803B6270 003B31D0  DA 21 00 78 */	stfd f17, 0x78(r1)
/* 803B6274 003B31D4  DA 41 00 80 */	stfd f18, 0x80(r1)
/* 803B6278 003B31D8  DA 61 00 88 */	stfd f19, 0x88(r1)
/* 803B627C 003B31DC  DA 81 00 90 */	stfd f20, 0x90(r1)
/* 803B6280 003B31E0  DA A1 00 98 */	stfd f21, 0x98(r1)
/* 803B6284 003B31E4  DA C1 00 A0 */	stfd f22, 0xa0(r1)
/* 803B6288 003B31E8  DA E1 00 A8 */	stfd f23, 0xa8(r1)
/* 803B628C 003B31EC  DB 01 00 B0 */	stfd f24, 0xb0(r1)
/* 803B6290 003B31F0  DB 21 00 B8 */	stfd f25, 0xb8(r1)
/* 803B6294 003B31F4  90 A1 00 50 */	stw r5, 0x50(r1)
/* 803B6298 003B31F8  90 81 00 54 */	stw r4, 0x54(r1)
/* 803B629C 003B31FC  3F E0 80 5B */	lis r31, lbl_805AF42C@ha
/* 803B62A0 003B3200  C0 DF F4 2C */	lfs f6, lbl_805AF42C@l(r31)
/* 803B62A4 003B3204  3F E0 80 5B */	lis r31, lbl_805AF428@ha
/* 803B62A8 003B3208  C1 3F F4 28 */	lfs f9, lbl_805AF428@l(r31)
/* 803B62AC 003B320C  3F E0 80 5B */	lis r31, lbl_805AF420@ha
/* 803B62B0 003B3210  C8 BF F4 20 */	lfd f5, lbl_805AF420@l(r31)
/* 803B62B4 003B3214  C0 44 01 68 */	lfs f2, 0x168(r4)
/* 803B62B8 003B3218  C1 E4 01 A0 */	lfs f15, 0x1a0(r4)
/* 803B62BC 003B321C  C1 04 01 9C */	lfs f8, 0x19c(r4)
/* 803B62C0 003B3220  EC 68 02 72 */	fmuls f3, f8, f9
/* 803B62C4 003B3224  EC 89 18 28 */	fsubs f4, f9, f3
/* 803B62C8 003B3228  54 BE 08 3C */	slwi r30, r5, 1
/* 803B62CC 003B322C  7F DE 2A 14 */	add r30, r30, r5
/* 803B62D0 003B3230  1F FE 00 14 */	mulli r31, r30, 0x14
/* 803B62D4 003B3234  3B A4 00 B4 */	addi r29, r4, 0xb4
/* 803B62D8 003B3238  7F BD FA 14 */	add r29, r29, r31
/* 803B62DC 003B323C  3B 64 00 00 */	addi r27, r4, 0
/* 803B62E0 003B3240  7F 7B FA 14 */	add r27, r27, r31
/* 803B62E4 003B3244  57 DF 10 3A */	slwi r31, r30, 2
/* 803B62E8 003B3248  7F FF 22 14 */	add r31, r31, r4
/* 803B62EC 003B324C  C2 DF 01 6C */	lfs f22, 0x16c(r31)
/* 803B62F0 003B3250  C2 FF 01 70 */	lfs f23, 0x170(r31)
/* 803B62F4 003B3254  C3 1F 01 74 */	lfs f24, 0x174(r31)
/* 803B62F8 003B3258  54 BF 10 3A */	slwi r31, r5, 2
/* 803B62FC 003B325C  7F FF 22 14 */	add r31, r31, r4
/* 803B6300 003B3260  C3 3F 01 90 */	lfs f25, 0x190(r31)
/* 803B6304 003B3264  83 E4 01 A4 */	lwz r31, 0x1a4(r4)
/* 803B6308 003B3268  3F C0 43 30 */	lis r30, 0x4330
/* 803B630C 003B326C  93 C1 00 58 */	stw r30, 0x58(r1)
/* 803B6310 003B3270  3A DF FF FF */	addi r22, r31, -1
/* 803B6314 003B3274  56 D6 10 3A */	slwi r22, r22, 2
/* 803B6318 003B3278  54 BC 10 3A */	slwi r28, r5, 2
/* 803B631C 003B327C  7F 9C 22 14 */	add r28, r28, r4
/* 803B6320 003B3280  2F 9F 00 00 */	cmpwi cr7, r31, 0
/* 803B6324 003B3284  82 BD 00 00 */	lwz r21, 0(r29)
/* 803B6328 003B3288  82 9D 00 04 */	lwz r20, 4(r29)
/* 803B632C 003B328C  82 7D 00 14 */	lwz r19, 0x14(r29)
/* 803B6330 003B3290  82 5D 00 18 */	lwz r18, 0x18(r29)
/* 803B6334 003B3294  82 3D 00 28 */	lwz r17, 0x28(r29)
/* 803B6338 003B3298  82 1D 00 2C */	lwz r16, 0x2c(r29)
/* 803B633C 003B329C  C2 1D 00 10 */	lfs f16, 0x10(r29)
/* 803B6340 003B32A0  C2 3D 00 24 */	lfs f17, 0x24(r29)
/* 803B6344 003B32A4  C2 5D 00 38 */	lfs f18, 0x38(r29)
/* 803B6348 003B32A8  83 3D 00 08 */	lwz r25, 8(r29)
/* 803B634C 003B32AC  83 1D 00 1C */	lwz r24, 0x1c(r29)
/* 803B6350 003B32B0  82 FD 00 30 */	lwz r23, 0x30(r29)
/* 803B6354 003B32B4  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 803B6358 003B32B8  80 BD 00 20 */	lwz r5, 0x20(r29)
/* 803B635C 003B32BC  80 DD 00 34 */	lwz r6, 0x34(r29)
/* 803B6360 003B32C0  81 9B 00 00 */	lwz r12, 0(r27)
/* 803B6364 003B32C4  81 7B 00 04 */	lwz r11, 4(r27)
/* 803B6368 003B32C8  81 5B 00 14 */	lwz r10, 0x14(r27)
/* 803B636C 003B32CC  81 3B 00 18 */	lwz r9, 0x18(r27)
/* 803B6370 003B32D0  81 1B 00 28 */	lwz r8, 0x28(r27)
/* 803B6374 003B32D4  80 FB 00 2C */	lwz r7, 0x2c(r27)
/* 803B6378 003B32D8  C2 7B 00 10 */	lfs f19, 0x10(r27)
/* 803B637C 003B32DC  C2 9B 00 24 */	lfs f20, 0x24(r27)
/* 803B6380 003B32E0  C2 BB 00 38 */	lfs f21, 0x38(r27)
/* 803B6384 003B32E4  81 FB 00 08 */	lwz r15, 8(r27)
/* 803B6388 003B32E8  81 DB 00 1C */	lwz r14, 0x1c(r27)
/* 803B638C 003B32EC  83 C3 00 00 */	lwz r30, 0(r3)
/* 803B6390 003B32F0  6F DE 80 00 */	xoris r30, r30, 0x8000
/* 803B6394 003B32F4  93 C1 00 5C */	stw r30, 0x5c(r1)
/* 803B6398 003B32F8  C9 81 00 58 */	lfd f12, 0x58(r1)
/* 803B639C 003B32FC  ED 8C 28 28 */	fsubs f12, f12, f5
/* 803B63A0 003B3300  3B E0 00 9F */	li r31, 0x9f
/* 803B63A4 003B3304  7F E9 03 A6 */	mtctr r31
lbl_803B63A8:
/* 803B63A8 003B3308  FD A0 60 90 */	fmr f13, f12
/* 803B63AC 003B330C  41 9E 00 2C */	beq cr7, lbl_803B63D8
/* 803B63B0 003B3310  83 DC 01 AC */	lwz r30, 0x1ac(r28)
/* 803B63B4 003B3314  83 BC 01 B8 */	lwz r29, 0x1b8(r28)
/* 803B63B8 003B3318  7F F6 F2 14 */	add r31, r22, r30
/* 803B63BC 003B331C  3B BD 00 04 */	addi r29, r29, 4
/* 803B63C0 003B3320  C1 BD FF FC */	lfs f13, -4(r29)
/* 803B63C4 003B3324  7C 1D F8 00 */	cmpw r29, r31
/* 803B63C8 003B3328  D1 9D FF FC */	stfs f12, -4(r29)
/* 803B63CC 003B332C  40 A2 00 08 */	bne+ lbl_803B63D4
/* 803B63D0 003B3330  7F DD F3 78 */	mr r29, r30
lbl_803B63D4:
/* 803B63D4 003B3334  93 BE 01 B8 */	stw r29, 0x1b8(r30)
lbl_803B63D8:
/* 803B63D8 003B3338  ED 16 6C 3A */	fmadds f8, f22, f16, f13
/* 803B63DC 003B333C  87 A3 00 04 */	lwzu r29, 4(r3)
/* 803B63E0 003B3340  ED 37 6C 7A */	fmadds f9, f23, f17, f13
/* 803B63E4 003B3344  7D 04 AD 2E */	stfsx f8, r4, r21
/* 803B63E8 003B3348  3A B5 00 04 */	addi r21, r21, 4
/* 803B63EC 003B334C  7D 25 9D 2E */	stfsx f9, r5, r19
/* 803B63F0 003B3350  7D C4 A4 2E */	lfsx f14, r4, r20
/* 803B63F4 003B3354  3A 94 00 04 */	addi r20, r20, 4
/* 803B63F8 003B3358  7E 25 94 2E */	lfsx f17, r5, r18
/* 803B63FC 003B335C  7C 15 C8 00 */	cmpw r21, r25
/* 803B6400 003B3360  7C 94 C8 00 */	cmpw cr1, r20, r25
/* 803B6404 003B3364  3A 73 00 04 */	addi r19, r19, 4
/* 803B6408 003B3368  3A 52 00 04 */	addi r18, r18, 4
/* 803B640C 003B336C  FE 00 70 90 */	fmr f16, f14
/* 803B6410 003B3370  7E 93 C0 00 */	cmpw cr5, r19, r24
/* 803B6414 003B3374  ED CE 88 2A */	fadds f14, f14, f17
/* 803B6418 003B3378  7F 12 C0 00 */	cmpw cr6, r18, r24
/* 803B641C 003B337C  40 A2 00 08 */	bne+ lbl_803B6424
/* 803B6420 003B3380  3A A0 00 00 */	li r21, 0
lbl_803B6424:
/* 803B6424 003B3384  ED 18 6C BA */	fmadds f8, f24, f18, f13
/* 803B6428 003B3388  40 A6 00 08 */	bne+ cr1, lbl_803B6430
/* 803B642C 003B338C  3A 80 00 00 */	li r20, 0
lbl_803B6430:
/* 803B6430 003B3390  7D 06 8D 2E */	stfsx f8, r6, r17
/* 803B6434 003B3394  3A 31 00 04 */	addi r17, r17, 4
/* 803B6438 003B3398  40 B6 00 08 */	bne+ cr5, lbl_803B6440
/* 803B643C 003B339C  3A 60 00 00 */	li r19, 0
lbl_803B6440:
/* 803B6440 003B33A0  7E 46 84 2E */	lfsx f18, r6, r16
/* 803B6444 003B33A4  3A 10 00 04 */	addi r16, r16, 4
/* 803B6448 003B33A8  7C 11 B8 00 */	cmpw r17, r23
/* 803B644C 003B33AC  40 BA 00 08 */	bne+ cr6, lbl_803B6454
/* 803B6450 003B33B0  3A 40 00 00 */	li r18, 0
lbl_803B6454:
/* 803B6454 003B33B4  ED CE 90 2A */	fadds f14, f14, f18
/* 803B6458 003B33B8  7C 90 B8 00 */	cmpw cr1, r16, r23
/* 803B645C 003B33BC  83 5B 00 0C */	lwz r26, 0xc(r27)
/* 803B6460 003B33C0  ED 22 74 FA */	fmadds f9, f2, f19, f14
/* 803B6464 003B33C4  40 A2 00 08 */	bne+ lbl_803B646C
/* 803B6468 003B33C8  3A 20 00 00 */	li r17, 0
lbl_803B646C:
/* 803B646C 003B33CC  40 A6 00 08 */	bne+ cr1, lbl_803B6474
/* 803B6470 003B33D0  3A 00 00 00 */	li r16, 0
lbl_803B6474:
/* 803B6474 003B33D4  6F BD 80 00 */	xoris r29, r29, 0x8000
/* 803B6478 003B33D8  7D 3A 65 2E */	stfsx f9, r26, r12
/* 803B647C 003B33DC  ED C2 9A 7C */	fnmsubs f14, f2, f9, f19
/* 803B6480 003B33E0  39 8C 00 04 */	addi r12, r12, 4
/* 803B6484 003B33E4  7E 7A 5C 2E */	lfsx f19, r26, r11
/* 803B6488 003B33E8  7E 8C 78 00 */	cmpw cr5, r12, r15
/* 803B648C 003B33EC  39 6B 00 04 */	addi r11, r11, 4
/* 803B6490 003B33F0  83 5B 00 20 */	lwz r26, 0x20(r27)
/* 803B6494 003B33F4  7F 0B 78 00 */	cmpw cr6, r11, r15
/* 803B6498 003B33F8  ED 02 75 3A */	fmadds f8, f2, f20, f14
/* 803B649C 003B33FC  40 B6 00 08 */	bne+ cr5, lbl_803B64A4
/* 803B64A0 003B3400  39 80 00 00 */	li r12, 0
lbl_803B64A4:
/* 803B64A4 003B3404  93 A1 00 5C */	stw r29, 0x5c(r1)
/* 803B64A8 003B3408  7D 1A 55 2E */	stfsx f8, r26, r10
/* 803B64AC 003B340C  ED C2 A2 3C */	fnmsubs f14, f2, f8, f20
/* 803B64B0 003B3410  39 4A 00 04 */	addi r10, r10, 4
/* 803B64B4 003B3414  40 BA 00 08 */	bne+ cr6, lbl_803B64BC
/* 803B64B8 003B3418  39 60 00 00 */	li r11, 0
lbl_803B64BC:
/* 803B64BC 003B341C  7E 9A 4C 2E */	lfsx f20, r26, r9
/* 803B64C0 003B3420  7C 0A 70 00 */	cmpw r10, r14
/* 803B64C4 003B3424  ED CE 01 B2 */	fmuls f14, f14, f6
/* 803B64C8 003B3428  39 29 00 04 */	addi r9, r9, 4
/* 803B64CC 003B342C  7C 89 70 00 */	cmpw cr1, r9, r14
/* 803B64D0 003B3430  C9 41 00 58 */	lfd f10, 0x58(r1)
/* 803B64D4 003B3434  ED CF 76 7A */	fmadds f14, f15, f25, f14
/* 803B64D8 003B3438  40 A2 00 08 */	bne+ lbl_803B64E0
/* 803B64DC 003B343C  39 40 00 00 */	li r10, 0
lbl_803B64E0:
/* 803B64E0 003B3440  83 5B 00 34 */	lwz r26, 0x34(r27)
/* 803B64E4 003B3444  ED 22 75 7A */	fmadds f9, f2, f21, f14
/* 803B64E8 003B3448  FF 20 70 90 */	fmr f25, f14
/* 803B64EC 003B344C  40 A6 00 08 */	bne+ cr1, lbl_803B64F4
/* 803B64F0 003B3450  39 20 00 00 */	li r9, 0
lbl_803B64F4:
/* 803B64F4 003B3454  7D 3A 45 2E */	stfsx f9, r26, r8
/* 803B64F8 003B3458  ED C2 AA 7C */	fnmsubs f14, f2, f9, f21
/* 803B64FC 003B345C  83 FB 00 30 */	lwz r31, 0x30(r27)
/* 803B6500 003B3460  ED 04 03 32 */	fmuls f8, f4, f12
/* 803B6504 003B3464  7E BA 3C 2E */	lfsx f21, r26, r7
/* 803B6508 003B3468  39 08 00 04 */	addi r8, r8, 4
/* 803B650C 003B346C  38 E7 00 04 */	addi r7, r7, 4
/* 803B6510 003B3470  ED C3 43 BA */	fmadds f14, f3, f14, f8
/* 803B6514 003B3474  7E 88 F8 00 */	cmpw cr5, r8, r31
/* 803B6518 003B3478  7F 07 F8 00 */	cmpw cr6, r7, r31
/* 803B651C 003B347C  FD C0 70 1E */	fctiwz f14, f14
/* 803B6520 003B3480  40 B6 00 08 */	bne+ cr5, lbl_803B6528
/* 803B6524 003B3484  39 00 00 00 */	li r8, 0
lbl_803B6528:
/* 803B6528 003B3488  40 BA 00 08 */	bne+ cr6, lbl_803B6530
/* 803B652C 003B348C  38 E0 00 00 */	li r7, 0
lbl_803B6530:
/* 803B6530 003B3490  3B E0 FF FC */	li r31, -4
/* 803B6534 003B3494  ED 8A 28 28 */	fsubs f12, f10, f5
/* 803B6538 003B3498  7D C3 FF AE */	stfiwx f14, r3, r31
/* 803B653C 003B349C  42 00 FE 6C */	bdnz lbl_803B63A8
/* 803B6540 003B34A0  FD A0 60 90 */	fmr f13, f12
/* 803B6544 003B34A4  41 9E 00 2C */	beq cr7, lbl_803B6570
/* 803B6548 003B34A8  83 DC 01 AC */	lwz r30, 0x1ac(r28)
/* 803B654C 003B34AC  83 BC 01 B8 */	lwz r29, 0x1b8(r28)
/* 803B6550 003B34B0  7F F6 F2 14 */	add r31, r22, r30
/* 803B6554 003B34B4  3B BD 00 04 */	addi r29, r29, 4
/* 803B6558 003B34B8  C1 BD FF FC */	lfs f13, -4(r29)
/* 803B655C 003B34BC  7C 1D F8 00 */	cmpw r29, r31
/* 803B6560 003B34C0  D1 9D FF FC */	stfs f12, -4(r29)
/* 803B6564 003B34C4  40 A2 00 08 */	bne+ lbl_803B656C
/* 803B6568 003B34C8  7F DD F3 78 */	mr r29, r30
lbl_803B656C:
/* 803B656C 003B34CC  93 BE 01 B8 */	stw r29, 0x1b8(r30)
lbl_803B6570:
/* 803B6570 003B34D0  ED 16 6C 3A */	fmadds f8, f22, f16, f13
/* 803B6574 003B34D4  ED 37 6C 7A */	fmadds f9, f23, f17, f13
/* 803B6578 003B34D8  7D 04 AD 2E */	stfsx f8, r4, r21
/* 803B657C 003B34DC  3A B5 00 04 */	addi r21, r21, 4
/* 803B6580 003B34E0  7D 25 9D 2E */	stfsx f9, r5, r19
/* 803B6584 003B34E4  7D C4 A4 2E */	lfsx f14, r4, r20
/* 803B6588 003B34E8  3A 94 00 04 */	addi r20, r20, 4
/* 803B658C 003B34EC  7E 25 94 2E */	lfsx f17, r5, r18
/* 803B6590 003B34F0  7C 15 C8 00 */	cmpw r21, r25
/* 803B6594 003B34F4  7C 94 C8 00 */	cmpw cr1, r20, r25
/* 803B6598 003B34F8  3A 73 00 04 */	addi r19, r19, 4
/* 803B659C 003B34FC  3A 52 00 04 */	addi r18, r18, 4
/* 803B65A0 003B3500  FE 00 70 90 */	fmr f16, f14
/* 803B65A4 003B3504  7E 93 C0 00 */	cmpw cr5, r19, r24
/* 803B65A8 003B3508  ED CE 88 2A */	fadds f14, f14, f17
/* 803B65AC 003B350C  7F 12 C0 00 */	cmpw cr6, r18, r24
/* 803B65B0 003B3510  40 A2 00 08 */	bne+ lbl_803B65B8
/* 803B65B4 003B3514  3A A0 00 00 */	li r21, 0
lbl_803B65B8:
/* 803B65B8 003B3518  ED 18 6C BA */	fmadds f8, f24, f18, f13
/* 803B65BC 003B351C  40 A6 00 08 */	bne+ cr1, lbl_803B65C4
/* 803B65C0 003B3520  3A 80 00 00 */	li r20, 0
lbl_803B65C4:
/* 803B65C4 003B3524  7D 06 8D 2E */	stfsx f8, r6, r17
/* 803B65C8 003B3528  3A 31 00 04 */	addi r17, r17, 4
/* 803B65CC 003B352C  40 B6 00 08 */	bne+ cr5, lbl_803B65D4
/* 803B65D0 003B3530  3A 60 00 00 */	li r19, 0
lbl_803B65D4:
/* 803B65D4 003B3534  7E 46 84 2E */	lfsx f18, r6, r16
/* 803B65D8 003B3538  3A 10 00 04 */	addi r16, r16, 4
/* 803B65DC 003B353C  7C 11 B8 00 */	cmpw r17, r23
/* 803B65E0 003B3540  40 BA 00 08 */	bne+ cr6, lbl_803B65E8
/* 803B65E4 003B3544  3A 40 00 00 */	li r18, 0
lbl_803B65E8:
/* 803B65E8 003B3548  ED CE 90 2A */	fadds f14, f14, f18
/* 803B65EC 003B354C  7C 90 B8 00 */	cmpw cr1, r16, r23
/* 803B65F0 003B3550  83 5B 00 0C */	lwz r26, 0xc(r27)
/* 803B65F4 003B3554  ED 22 74 FA */	fmadds f9, f2, f19, f14
/* 803B65F8 003B3558  40 A2 00 08 */	bne+ lbl_803B6600
/* 803B65FC 003B355C  3A 20 00 00 */	li r17, 0
lbl_803B6600:
/* 803B6600 003B3560  40 A6 00 08 */	bne+ cr1, lbl_803B6608
/* 803B6604 003B3564  3A 00 00 00 */	li r16, 0
lbl_803B6608:
/* 803B6608 003B3568  7D 3A 65 2E */	stfsx f9, r26, r12
/* 803B660C 003B356C  ED C2 9A 7C */	fnmsubs f14, f2, f9, f19
/* 803B6610 003B3570  39 8C 00 04 */	addi r12, r12, 4
/* 803B6614 003B3574  7E 7A 5C 2E */	lfsx f19, r26, r11
/* 803B6618 003B3578  7E 8C 78 00 */	cmpw cr5, r12, r15
/* 803B661C 003B357C  39 6B 00 04 */	addi r11, r11, 4
/* 803B6620 003B3580  83 5B 00 20 */	lwz r26, 0x20(r27)
/* 803B6624 003B3584  7F 0B 78 00 */	cmpw cr6, r11, r15
/* 803B6628 003B3588  ED 02 75 3A */	fmadds f8, f2, f20, f14
/* 803B662C 003B358C  40 B6 00 08 */	bne+ cr5, lbl_803B6634
/* 803B6630 003B3590  39 80 00 00 */	li r12, 0
lbl_803B6634:
/* 803B6634 003B3594  7D 1A 55 2E */	stfsx f8, r26, r10
/* 803B6638 003B3598  ED C2 A2 3C */	fnmsubs f14, f2, f8, f20
/* 803B663C 003B359C  39 4A 00 04 */	addi r10, r10, 4
/* 803B6640 003B35A0  40 BA 00 08 */	bne+ cr6, lbl_803B6648
/* 803B6644 003B35A4  39 60 00 00 */	li r11, 0
lbl_803B6648:
/* 803B6648 003B35A8  7E 9A 4C 2E */	lfsx f20, r26, r9
/* 803B664C 003B35AC  7C 0A 70 00 */	cmpw r10, r14
/* 803B6650 003B35B0  ED CE 01 B2 */	fmuls f14, f14, f6
/* 803B6654 003B35B4  39 29 00 04 */	addi r9, r9, 4
/* 803B6658 003B35B8  7C 89 70 00 */	cmpw cr1, r9, r14
/* 803B665C 003B35BC  ED CF 76 7A */	fmadds f14, f15, f25, f14
/* 803B6660 003B35C0  40 A2 00 08 */	bne+ lbl_803B6668
/* 803B6664 003B35C4  39 40 00 00 */	li r10, 0
lbl_803B6668:
/* 803B6668 003B35C8  83 5B 00 34 */	lwz r26, 0x34(r27)
/* 803B666C 003B35CC  80 A1 00 50 */	lwz r5, 0x50(r1)
/* 803B6670 003B35D0  80 81 00 54 */	lwz r4, 0x54(r1)
/* 803B6674 003B35D4  ED 22 75 7A */	fmadds f9, f2, f21, f14
/* 803B6678 003B35D8  FF 20 70 90 */	fmr f25, f14
/* 803B667C 003B35DC  40 A6 00 08 */	bne+ cr1, lbl_803B6684
/* 803B6680 003B35E0  39 20 00 00 */	li r9, 0
lbl_803B6684:
/* 803B6684 003B35E4  7D 3A 45 2E */	stfsx f9, r26, r8
/* 803B6688 003B35E8  ED C2 AA 7C */	fnmsubs f14, f2, f9, f21
/* 803B668C 003B35EC  83 BB 00 30 */	lwz r29, 0x30(r27)
/* 803B6690 003B35F0  ED 04 03 32 */	fmuls f8, f4, f12
/* 803B6694 003B35F4  7E BA 3C 2E */	lfsx f21, r26, r7
/* 803B6698 003B35F8  39 08 00 04 */	addi r8, r8, 4
/* 803B669C 003B35FC  38 E7 00 04 */	addi r7, r7, 4
/* 803B66A0 003B3600  ED C3 43 BA */	fmadds f14, f3, f14, f8
/* 803B66A4 003B3604  7E 88 E8 00 */	cmpw cr5, r8, r29
/* 803B66A8 003B3608  7F 07 E8 00 */	cmpw cr6, r7, r29
/* 803B66AC 003B360C  FD C0 70 1E */	fctiwz f14, f14
/* 803B66B0 003B3610  40 B6 00 08 */	bne+ cr5, lbl_803B66B8
/* 803B66B4 003B3614  39 00 00 00 */	li r8, 0
lbl_803B66B8:
/* 803B66B8 003B3618  40 BA 00 08 */	bne+ cr6, lbl_803B66C0
/* 803B66BC 003B361C  38 E0 00 00 */	li r7, 0
lbl_803B66C0:
/* 803B66C0 003B3620  54 BE 08 3C */	slwi r30, r5, 1
/* 803B66C4 003B3624  7F DE 2A 14 */	add r30, r30, r5
/* 803B66C8 003B3628  1F FE 00 14 */	mulli r31, r30, 0x14
/* 803B66CC 003B362C  7D C0 1F AE */	stfiwx f14, r0, r3
/* 803B66D0 003B3630  3B A4 00 B4 */	addi r29, r4, 0xb4
/* 803B66D4 003B3634  7F BD FA 14 */	add r29, r29, r31
/* 803B66D8 003B3638  92 BD 00 00 */	stw r21, 0(r29)
/* 803B66DC 003B363C  92 9D 00 04 */	stw r20, 4(r29)
/* 803B66E0 003B3640  92 7D 00 14 */	stw r19, 0x14(r29)
/* 803B66E4 003B3644  92 5D 00 18 */	stw r18, 0x18(r29)
/* 803B66E8 003B3648  92 3D 00 28 */	stw r17, 0x28(r29)
/* 803B66EC 003B364C  92 1D 00 2C */	stw r16, 0x2c(r29)
/* 803B66F0 003B3650  D2 1D 00 10 */	stfs f16, 0x10(r29)
/* 803B66F4 003B3654  D2 3D 00 24 */	stfs f17, 0x24(r29)
/* 803B66F8 003B3658  D2 5D 00 38 */	stfs f18, 0x38(r29)
/* 803B66FC 003B365C  91 9B 00 00 */	stw r12, 0(r27)
/* 803B6700 003B3660  91 7B 00 04 */	stw r11, 4(r27)
/* 803B6704 003B3664  91 5B 00 14 */	stw r10, 0x14(r27)
/* 803B6708 003B3668  91 3B 00 18 */	stw r9, 0x18(r27)
/* 803B670C 003B366C  91 1B 00 28 */	stw r8, 0x28(r27)
/* 803B6710 003B3670  90 FB 00 2C */	stw r7, 0x2c(r27)
/* 803B6714 003B3674  D2 7B 00 10 */	stfs f19, 0x10(r27)
/* 803B6718 003B3678  D2 9B 00 24 */	stfs f20, 0x24(r27)
/* 803B671C 003B367C  D2 BB 00 38 */	stfs f21, 0x38(r27)
/* 803B6720 003B3680  54 BF 10 3A */	slwi r31, r5, 2
/* 803B6724 003B3684  7F FF 22 14 */	add r31, r31, r4
/* 803B6728 003B3688  D3 3F 01 90 */	stfs f25, 0x190(r31)
/* 803B672C 003B368C  C9 C1 00 60 */	lfd f14, 0x60(r1)
/* 803B6730 003B3690  C9 E1 00 68 */	lfd f15, 0x68(r1)
/* 803B6734 003B3694  CA 01 00 70 */	lfd f16, 0x70(r1)
/* 803B6738 003B3698  CA 21 00 78 */	lfd f17, 0x78(r1)
/* 803B673C 003B369C  CA 41 00 80 */	lfd f18, 0x80(r1)
/* 803B6740 003B36A0  CA 61 00 88 */	lfd f19, 0x88(r1)
/* 803B6744 003B36A4  CA 81 00 90 */	lfd f20, 0x90(r1)
/* 803B6748 003B36A8  CA A1 00 98 */	lfd f21, 0x98(r1)
/* 803B674C 003B36AC  CA C1 00 A0 */	lfd f22, 0xa0(r1)
/* 803B6750 003B36B0  CA E1 00 A8 */	lfd f23, 0xa8(r1)
/* 803B6754 003B36B4  CB 01 00 B0 */	lfd f24, 0xb0(r1)
/* 803B6758 003B36B8  CB 21 00 B8 */	lfd f25, 0xb8(r1)
/* 803B675C 003B36BC  B9 C1 00 08 */	lmw r14, 8(r1)
/* 803B6760 003B36C0  38 21 00 C0 */	addi r1, r1, 0xc0
/* 803B6764 003B36C4  4E 80 00 20 */	blr

.global ReverbHICallback
ReverbHICallback:
/* 803B6768 003B36C8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 803B676C 003B36CC  7C 08 02 A6 */	mflr r0
/* 803B6770 003B36D0  90 01 00 24 */	stw r0, 0x24(r1)
/* 803B6774 003B36D4  39 61 00 20 */	addi r11, r1, 0x20
/* 803B6778 003B36D8  4B FD 33 05 */	bl _savegpr_27
/* 803B677C 003B36DC  7C 7B 1B 78 */	mr r27, r3
/* 803B6780 003B36E0  7C 9C 23 78 */	mr r28, r4
/* 803B6784 003B36E4  7C BD 2B 78 */	mr r29, r5
/* 803B6788 003B36E8  7C DE 33 78 */	mr r30, r6
/* 803B678C 003B36EC  3B E0 00 00 */	li r31, 0
/* 803B6790 003B36F0  48 00 00 94 */	b lbl_803B6824
lbl_803B6794:
/* 803B6794 003B36F4  57 E0 06 3E */	clrlwi r0, r31, 0x18
/* 803B6798 003B36F8  2C 00 00 01 */	cmpwi r0, 1
/* 803B679C 003B36FC  41 82 00 60 */	beq lbl_803B67FC
/* 803B67A0 003B3700  40 80 00 10 */	bge lbl_803B67B0
/* 803B67A4 003B3704  2C 00 00 00 */	cmpwi r0, 0
/* 803B67A8 003B3708  40 80 00 14 */	bge lbl_803B67BC
/* 803B67AC 003B370C  48 00 00 74 */	b lbl_803B6820
lbl_803B67B0:
/* 803B67B0 003B3710  2C 00 00 03 */	cmpwi r0, 3
/* 803B67B4 003B3714  40 80 00 6C */	bge lbl_803B6820
/* 803B67B8 003B3718  48 00 00 58 */	b lbl_803B6810
lbl_803B67BC:
/* 803B67BC 003B371C  C0 02 D6 D0 */	lfs f0, lbl_805AF3F0@sda21(r2)
/* 803B67C0 003B3720  C0 5E 01 A8 */	lfs f2, 0x1a8(r30)
/* 803B67C4 003B3724  FC 00 10 00 */	fcmpu cr0, f0, f2
/* 803B67C8 003B3728  41 82 00 20 */	beq lbl_803B67E8
/* 803B67CC 003B372C  C0 22 D7 10 */	lfs f1, lbl_805AF430@sda21(r2)
/* 803B67D0 003B3730  7F 63 DB 78 */	mr r3, r27
/* 803B67D4 003B3734  C0 02 D6 D4 */	lfs f0, lbl_805AF3F4@sda21(r2)
/* 803B67D8 003B3738  7F 84 E3 78 */	mr r4, r28
/* 803B67DC 003B373C  EC 21 00 B2 */	fmuls f1, f1, f2
/* 803B67E0 003B3740  EC 40 08 28 */	fsubs f2, f0, f1
/* 803B67E4 003B3744  4B FF F8 E9 */	bl DoCrossTalk
lbl_803B67E8:
/* 803B67E8 003B3748  7F 63 DB 78 */	mr r3, r27
/* 803B67EC 003B374C  7F C4 F3 78 */	mr r4, r30
/* 803B67F0 003B3750  38 A0 00 00 */	li r5, 0
/* 803B67F4 003B3754  4B FF FA 69 */	bl HandleReverb_0
/* 803B67F8 003B3758  48 00 00 28 */	b lbl_803B6820
lbl_803B67FC:
/* 803B67FC 003B375C  7F 83 E3 78 */	mr r3, r28
/* 803B6800 003B3760  7F C4 F3 78 */	mr r4, r30
/* 803B6804 003B3764  38 A0 00 01 */	li r5, 1
/* 803B6808 003B3768  4B FF FA 55 */	bl HandleReverb_0
/* 803B680C 003B376C  48 00 00 14 */	b lbl_803B6820
lbl_803B6810:
/* 803B6810 003B3770  7F A3 EB 78 */	mr r3, r29
/* 803B6814 003B3774  7F C4 F3 78 */	mr r4, r30
/* 803B6818 003B3778  38 A0 00 02 */	li r5, 2
/* 803B681C 003B377C  4B FF FA 41 */	bl HandleReverb_0
lbl_803B6820:
/* 803B6820 003B3780  3B FF 00 01 */	addi r31, r31, 1
lbl_803B6824:
/* 803B6824 003B3784  57 E0 06 3E */	clrlwi r0, r31, 0x18
/* 803B6828 003B3788  28 00 00 03 */	cmplwi r0, 3
/* 803B682C 003B378C  41 80 FF 68 */	blt lbl_803B6794
/* 803B6830 003B3790  39 61 00 20 */	addi r11, r1, 0x20
/* 803B6834 003B3794  4B FD 32 95 */	bl _restgpr_27
/* 803B6838 003B3798  80 01 00 24 */	lwz r0, 0x24(r1)
/* 803B683C 003B379C  7C 08 03 A6 */	mtlr r0
/* 803B6840 003B37A0  38 21 00 20 */	addi r1, r1, 0x20
/* 803B6844 003B37A4  4E 80 00 20 */	blr

.global ReverbHIFree
ReverbHIFree:
/* 803B6848 003B37A8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 803B684C 003B37AC  7C 08 02 A6 */	mflr r0
/* 803B6850 003B37B0  90 01 00 14 */	stw r0, 0x14(r1)
/* 803B6854 003B37B4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 803B6858 003B37B8  3B E0 00 00 */	li r31, 0
/* 803B685C 003B37BC  93 C1 00 08 */	stw r30, 8(r1)
/* 803B6860 003B37C0  7C 7E 1B 78 */	mr r30, r3
/* 803B6864 003B37C4  48 00 00 1C */	b lbl_803B6880
lbl_803B6868:
/* 803B6868 003B37C8  57 E0 06 3E */	clrlwi r0, r31, 0x18
/* 803B686C 003B37CC  1C 60 00 14 */	mulli r3, r0, 0x14
/* 803B6870 003B37D0  38 03 00 0C */	addi r0, r3, 0xc
/* 803B6874 003B37D4  7C 7E 00 2E */	lwzx r3, r30, r0
/* 803B6878 003B37D8  4B FF E8 E5 */	bl salFree
/* 803B687C 003B37DC  3B FF 00 01 */	addi r31, r31, 1
lbl_803B6880:
/* 803B6880 003B37E0  57 E0 06 3E */	clrlwi r0, r31, 0x18
/* 803B6884 003B37E4  28 00 00 09 */	cmplwi r0, 9
/* 803B6888 003B37E8  41 80 FF E0 */	blt lbl_803B6868
/* 803B688C 003B37EC  3B E0 00 00 */	li r31, 0
/* 803B6890 003B37F0  48 00 00 1C */	b lbl_803B68AC
lbl_803B6894:
/* 803B6894 003B37F4  57 E0 06 3E */	clrlwi r0, r31, 0x18
/* 803B6898 003B37F8  1C 60 00 14 */	mulli r3, r0, 0x14
/* 803B689C 003B37FC  38 03 00 C0 */	addi r0, r3, 0xc0
/* 803B68A0 003B3800  7C 7E 00 2E */	lwzx r3, r30, r0
/* 803B68A4 003B3804  4B FF E8 B9 */	bl salFree
/* 803B68A8 003B3808  3B FF 00 01 */	addi r31, r31, 1
lbl_803B68AC:
/* 803B68AC 003B380C  57 E0 06 3E */	clrlwi r0, r31, 0x18
/* 803B68B0 003B3810  28 00 00 09 */	cmplwi r0, 9
/* 803B68B4 003B3814  41 80 FF E0 */	blt lbl_803B6894
/* 803B68B8 003B3818  80 1E 01 A4 */	lwz r0, 0x1a4(r30)
/* 803B68BC 003B381C  2C 00 00 00 */	cmpwi r0, 0
/* 803B68C0 003B3820  41 82 00 2C */	beq lbl_803B68EC
/* 803B68C4 003B3824  3B E0 00 00 */	li r31, 0
/* 803B68C8 003B3828  48 00 00 18 */	b lbl_803B68E0
lbl_803B68CC:
/* 803B68CC 003B382C  57 E3 15 BA */	rlwinm r3, r31, 2, 0x16, 0x1d
/* 803B68D0 003B3830  38 03 01 AC */	addi r0, r3, 0x1ac
/* 803B68D4 003B3834  7C 7E 00 2E */	lwzx r3, r30, r0
/* 803B68D8 003B3838  4B FF E8 85 */	bl salFree
/* 803B68DC 003B383C  3B FF 00 01 */	addi r31, r31, 1
lbl_803B68E0:
/* 803B68E0 003B3840  57 E0 06 3E */	clrlwi r0, r31, 0x18
/* 803B68E4 003B3844  28 00 00 03 */	cmplwi r0, 3
/* 803B68E8 003B3848  41 80 FF E4 */	blt lbl_803B68CC
lbl_803B68EC:
/* 803B68EC 003B384C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803B68F0 003B3850  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803B68F4 003B3854  83 C1 00 08 */	lwz r30, 8(r1)
/* 803B68F8 003B3858  7C 08 03 A6 */	mtlr r0
/* 803B68FC 003B385C  38 21 00 10 */	addi r1, r1, 0x10
/* 803B6900 003B3860  4E 80 00 20 */	blr