Files
dusklight/include/d/d_kankyo/asm/func_801ACD24.s
T
lepelog 0eec99db4d Split SComponent (#45)
* split c_math

* split c_angle

* split c_API_controller_pad

* split c_API_graphic

* split c_bg_s_chk

* c_bg_s_gnd_chk split

* more c_bg split

* split c_cc_d

* delete asm

* split c_cc_s

* split c_lib

* split c_m2d and c_m3d_g_aab

* split c_m3d_g_cir

* split c_m3d_g_cps

* split rest of c_m3d_g

* split c_m3d

* split c_malloc

* split c_request

* split c_sxyz

* split and partly decompile c_xyz

* format

* c_angle.h

* begin c_angle decomp

* c_angle

* progress adding stub classes for SComponent

* more c_m3d

* remove some asm and format

* more m3d headers

* more c_angle decomp

* c_lib headers

* add public to classes

* fix csXyz member names

* c_sxyz partly OK

* move Zero csXyz to c_sxyz header

* c_API_graphic

* delete some unused asm

* move math extern data, decompile some functions

* delete unused asm

* fix duplicated c_angle.h

* fix an inlined function name, add more inlined functions for c_angle.h (currently unused)

* format

Co-authored-by: Pheenoh <pheenoh@gmail.com>
2021-01-06 20:04:53 -05:00

982 lines
51 KiB
ArmAsm

/* 801ACD24 001A9C64 94 21 FD D0 */ stwu r1, -0x230(r1)
/* 801ACD28 001A9C68 7C 08 02 A6 */ mflr r0
/* 801ACD2C 001A9C6C 90 01 02 34 */ stw r0, 0x234(r1)
/* 801ACD30 001A9C70 DB E1 02 20 */ stfd f31, 0x220(r1)
/* 801ACD34 001A9C74 F3 E1 02 28 */ psq_st f31, 552(r1), 0, 0
/* 801ACD38 001A9C78 DB C1 02 10 */ stfd f30, 0x210(r1)
/* 801ACD3C 001A9C7C F3 C1 02 18 */ psq_st f30, 536(r1), 0, 0
/* 801ACD40 001A9C80 DB A1 02 00 */ stfd f29, 0x200(r1)
/* 801ACD44 001A9C84 F3 A1 02 08 */ psq_st f29, 520(r1), 0, 0
/* 801ACD48 001A9C88 39 61 02 00 */ addi r11, r1, 0x200
/* 801ACD4C 001A9C8C 48 1B 54 5D */ bl _savegpr_16
/* 801ACD50 001A9C90 3C 80 80 43 */ lis r4, lbl_8042CA54@ha
/* 801ACD54 001A9C94 3B A4 CA 54 */ addi r29, r4, lbl_8042CA54@l
/* 801ACD58 001A9C98 3C 80 80 40 */ lis r4, g_dComIfG_gameInfo@ha
/* 801ACD5C 001A9C9C 3B C4 61 C0 */ addi r30, r4, g_dComIfG_gameInfo@l
/* 801ACD60 001A9CA0 88 1E 5D 70 */ lbz r0, 0x5d70(r30)
/* 801ACD64 001A9CA4 7C 00 07 74 */ extsb r0, r0
/* 801ACD68 001A9CA8 3A DE 5D 74 */ addi r22, r30, 0x5d74
/* 801ACD6C 001A9CAC 1C 00 00 38 */ mulli r0, r0, 0x38
/* 801ACD70 001A9CB0 7F 96 00 2E */ lwzx r28, r22, r0
/* 801ACD74 001A9CB4 83 7E 5D AC */ lwz r27, 0x5dac(r30)
/* 801ACD78 001A9CB8 28 03 00 00 */ cmplwi r3, 0
/* 801ACD7C 001A9CBC 41 82 0E 10 */ beq lbl_801ADB8C
/* 801ACD80 001A9CC0 28 1B 00 00 */ cmplwi r27, 0
/* 801ACD84 001A9CC4 41 82 0E 08 */ beq lbl_801ADB8C
/* 801ACD88 001A9CC8 83 43 00 04 */ lwz r26, 4(r3)
/* 801ACD8C 001A9CCC 3A A0 00 00 */ li r21, 0
/* 801ACD90 001A9CD0 3C 60 80 43 */ lis r3, lbl_80434AC8@ha
/* 801ACD94 001A9CD4 3B E3 4A C8 */ addi r31, r3, lbl_80434AC8@l
/* 801ACD98 001A9CD8 3B 0D 81 98 */ addi r24, r13, 0x80450718 - 0x80458580 /*SDA HACK; original: lbl_80450718-_SDA_BASE_*/
/* 801ACD9C 001A9CDC 3A 2D 81 88 */ addi r17, r13, 0x80450708 - 0x80458580 /*SDA HACK; original: lbl_80450708-_SDA_BASE_*/
/* 801ACDA0 001A9CE0 3A ED 81 90 */ addi r23, r13, 0x80450710 - 0x80458580 /*SDA HACK; original: lbl_80450710-_SDA_BASE_*/
/* 801ACDA4 001A9CE4 3A 4D 81 8C */ addi r18, r13, 0x8045070C - 0x80458580 /*SDA HACK; original: lbl_8045070C-_SDA_BASE_*/
/* 801ACDA8 001A9CE8 3C 60 80 39 */ lis r3, lbl_80394C6C@ha
/* 801ACDAC 001A9CEC 3A 83 4C 6C */ addi r20, r3, lbl_80394C6C@l
/* 801ACDB0 001A9CF0 48 00 0D CC */ b lbl_801ADB7C
lbl_801ACDB4:
/* 801ACDB4 001A9CF4 80 7A 00 60 */ lwz r3, 0x60(r26)
/* 801ACDB8 001A9CF8 56 A0 13 BA */ rlwinm r0, r21, 2, 0xe, 0x1d
/* 801ACDBC 001A9CFC 7F 23 00 2E */ lwzx r25, r3, r0
/* 801ACDC0 001A9D00 80 7A 00 64 */ lwz r3, 0x64(r26)
/* 801ACDC4 001A9D04 7E A4 AB 78 */ mr r4, r21
/* 801ACDC8 001A9D08 48 13 1D 31 */ bl JUTNameTab_NS_getName
/* 801ACDCC 001A9D0C 7C 73 1B 78 */ mr r19, r3
/* 801ACDD0 001A9D10 88 03 00 03 */ lbz r0, 3(r3)
/* 801ACDD4 001A9D14 2C 00 00 4D */ cmpwi r0, 0x4d
/* 801ACDD8 001A9D18 40 82 0A D4 */ bne lbl_801AD8AC
/* 801ACDDC 001A9D1C 88 13 00 04 */ lbz r0, 4(r19)
/* 801ACDE0 001A9D20 2C 00 00 41 */ cmpwi r0, 0x41
/* 801ACDE4 001A9D24 40 82 0A C8 */ bne lbl_801AD8AC
/* 801ACDE8 001A9D28 38 73 00 03 */ addi r3, r19, 3
/* 801ACDEC 001A9D2C 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801ACDF0 001A9D30 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801ACDF4 001A9D34 38 84 02 71 */ addi r4, r4, 0x271
/* 801ACDF8 001A9D38 38 A0 00 04 */ li r5, 4
/* 801ACDFC 001A9D3C 48 1B 92 91 */ bl func_8036608C
/* 801ACE00 001A9D40 2C 03 00 00 */ cmpwi r3, 0
/* 801ACE04 001A9D44 40 82 00 0C */ bne lbl_801ACE10
/* 801ACE08 001A9D48 7F 23 CB 78 */ mr r3, r25
/* 801ACE0C 001A9D4C 4B FF FB 0D */ bl dKy_murky_set
lbl_801ACE10:
/* 801ACE10 001A9D50 38 73 00 03 */ addi r3, r19, 3
/* 801ACE14 001A9D54 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801ACE18 001A9D58 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801ACE1C 001A9D5C 38 84 02 76 */ addi r4, r4, 0x276
/* 801ACE20 001A9D60 38 A0 00 04 */ li r5, 4
/* 801ACE24 001A9D64 48 1B 92 69 */ bl func_8036608C
/* 801ACE28 001A9D68 2C 03 00 00 */ cmpwi r3, 0
/* 801ACE2C 001A9D6C 41 82 00 64 */ beq lbl_801ACE90
/* 801ACE30 001A9D70 38 73 00 03 */ addi r3, r19, 3
/* 801ACE34 001A9D74 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801ACE38 001A9D78 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801ACE3C 001A9D7C 38 84 02 7B */ addi r4, r4, 0x27b
/* 801ACE40 001A9D80 38 A0 00 04 */ li r5, 4
/* 801ACE44 001A9D84 48 1B 92 49 */ bl func_8036608C
/* 801ACE48 001A9D88 2C 03 00 00 */ cmpwi r3, 0
/* 801ACE4C 001A9D8C 41 82 00 44 */ beq lbl_801ACE90
/* 801ACE50 001A9D90 38 73 00 03 */ addi r3, r19, 3
/* 801ACE54 001A9D94 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801ACE58 001A9D98 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801ACE5C 001A9D9C 38 84 02 80 */ addi r4, r4, 0x280
/* 801ACE60 001A9DA0 38 A0 00 04 */ li r5, 4
/* 801ACE64 001A9DA4 48 1B 92 29 */ bl func_8036608C
/* 801ACE68 001A9DA8 2C 03 00 00 */ cmpwi r3, 0
/* 801ACE6C 001A9DAC 41 82 00 24 */ beq lbl_801ACE90
/* 801ACE70 001A9DB0 38 73 00 03 */ addi r3, r19, 3
/* 801ACE74 001A9DB4 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801ACE78 001A9DB8 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801ACE7C 001A9DBC 38 84 02 85 */ addi r4, r4, 0x285
/* 801ACE80 001A9DC0 38 A0 00 04 */ li r5, 4
/* 801ACE84 001A9DC4 48 1B 92 09 */ bl func_8036608C
/* 801ACE88 001A9DC8 2C 03 00 00 */ cmpwi r3, 0
/* 801ACE8C 001A9DCC 40 82 01 84 */ bne lbl_801AD010
lbl_801ACE90:
/* 801ACE90 001A9DD0 88 13 00 05 */ lbz r0, 5(r19)
/* 801ACE94 001A9DD4 2C 00 00 31 */ cmpwi r0, 0x31
/* 801ACE98 001A9DD8 41 82 00 18 */ beq lbl_801ACEB0
/* 801ACE9C 001A9DDC 80 1E 5F 78 */ lwz r0, 0x5f78(r30)
/* 801ACEA0 001A9DE0 90 1F 00 48 */ stw r0, 0x48(r31)
/* 801ACEA4 001A9DE4 80 1E 5F 7C */ lwz r0, 0x5f7c(r30)
/* 801ACEA8 001A9DE8 90 1F 00 4C */ stw r0, 0x4c(r31)
/* 801ACEAC 001A9DEC 48 00 00 20 */ b lbl_801ACECC
lbl_801ACEB0:
/* 801ACEB0 001A9DF0 88 13 00 06 */ lbz r0, 6(r19)
/* 801ACEB4 001A9DF4 2C 00 00 39 */ cmpwi r0, 0x39
/* 801ACEB8 001A9DF8 40 82 00 14 */ bne lbl_801ACECC
/* 801ACEBC 001A9DFC 80 1E 5F A0 */ lwz r0, 0x5fa0(r30)
/* 801ACEC0 001A9E00 90 1F 00 48 */ stw r0, 0x48(r31)
/* 801ACEC4 001A9E04 80 1E 5F A4 */ lwz r0, 0x5fa4(r30)
/* 801ACEC8 001A9E08 90 1F 00 4C */ stw r0, 0x4c(r31)
lbl_801ACECC:
/* 801ACECC 001A9E0C 80 79 00 34 */ lwz r3, 0x34(r25)
/* 801ACED0 001A9E10 81 83 00 00 */ lwz r12, 0(r3)
/* 801ACED4 001A9E14 81 8C 00 30 */ lwz r12, 0x30(r12)
/* 801ACED8 001A9E18 7D 89 03 A6 */ mtctr r12
/* 801ACEDC 001A9E1C 4E 80 04 21 */ bctrl
/* 801ACEE0 001A9E20 28 03 00 00 */ cmplwi r3, 0
/* 801ACEE4 001A9E24 41 82 01 2C */ beq lbl_801AD010
/* 801ACEE8 001A9E28 80 79 00 34 */ lwz r3, 0x34(r25)
/* 801ACEEC 001A9E2C 81 83 00 00 */ lwz r12, 0(r3)
/* 801ACEF0 001A9E30 81 8C 00 30 */ lwz r12, 0x30(r12)
/* 801ACEF4 001A9E34 7D 89 03 A6 */ mtctr r12
/* 801ACEF8 001A9E38 4E 80 04 21 */ bctrl
/* 801ACEFC 001A9E3C 28 03 00 00 */ cmplwi r3, 0
/* 801ACF00 001A9E40 41 82 01 10 */ beq lbl_801AD010
/* 801ACF04 001A9E44 88 13 00 05 */ lbz r0, 5(r19)
/* 801ACF08 001A9E48 2C 00 00 30 */ cmpwi r0, 0x30
/* 801ACF0C 001A9E4C 40 82 00 8C */ bne lbl_801ACF98
/* 801ACF10 001A9E50 88 13 00 06 */ lbz r0, 6(r19)
/* 801ACF14 001A9E54 2C 00 00 39 */ cmpwi r0, 0x39
/* 801ACF18 001A9E58 40 82 00 80 */ bne lbl_801ACF98
/* 801ACF1C 001A9E5C 38 00 00 06 */ li r0, 6
/* 801ACF20 001A9E60 98 03 00 00 */ stb r0, 0(r3)
/* 801ACF24 001A9E64 C0 42 A4 10 */ lfs f2, lbl_80453E10-_SDA2_BASE_(r2)
/* 801ACF28 001A9E68 C0 02 A4 14 */ lfs f0, lbl_80453E14-_SDA2_BASE_(r2)
/* 801ACF2C 001A9E6C C0 3D 13 04 */ lfs f1, 0x1304(r29)
/* 801ACF30 001A9E70 EC 00 00 72 */ fmuls f0, f0, f1
/* 801ACF34 001A9E74 EC 02 00 28 */ fsubs f0, f2, f0
/* 801ACF38 001A9E78 FC 00 00 1E */ fctiwz f0, f0
/* 801ACF3C 001A9E7C D8 01 01 A0 */ stfd f0, 0x1a0(r1)
/* 801ACF40 001A9E80 80 01 01 A4 */ lwz r0, 0x1a4(r1)
/* 801ACF44 001A9E84 98 01 00 1C */ stb r0, 0x1c(r1)
/* 801ACF48 001A9E88 D8 01 01 A8 */ stfd f0, 0x1a8(r1)
/* 801ACF4C 001A9E8C 80 01 01 AC */ lwz r0, 0x1ac(r1)
/* 801ACF50 001A9E90 98 01 00 1D */ stb r0, 0x1d(r1)
/* 801ACF54 001A9E94 C0 02 A3 A4 */ lfs f0, lbl_80453DA4-_SDA2_BASE_(r2)
/* 801ACF58 001A9E98 EC 00 00 72 */ fmuls f0, f0, f1
/* 801ACF5C 001A9E9C EC 02 00 28 */ fsubs f0, f2, f0
/* 801ACF60 001A9EA0 FC 00 00 1E */ fctiwz f0, f0
/* 801ACF64 001A9EA4 D8 01 01 B0 */ stfd f0, 0x1b0(r1)
/* 801ACF68 001A9EA8 80 01 01 B4 */ lwz r0, 0x1b4(r1)
/* 801ACF6C 001A9EAC 98 01 00 1E */ stb r0, 0x1e(r1)
/* 801ACF70 001A9EB0 38 00 00 FF */ li r0, 0xff
/* 801ACF74 001A9EB4 98 01 00 1F */ stb r0, 0x1f(r1)
/* 801ACF78 001A9EB8 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801ACF7C 001A9EBC 38 80 00 01 */ li r4, 1
/* 801ACF80 001A9EC0 38 A1 00 1C */ addi r5, r1, 0x1c
/* 801ACF84 001A9EC4 81 83 00 00 */ lwz r12, 0(r3)
/* 801ACF88 001A9EC8 81 8C 00 6C */ lwz r12, 0x6c(r12)
/* 801ACF8C 001A9ECC 7D 89 03 A6 */ mtctr r12
/* 801ACF90 001A9ED0 4E 80 04 21 */ bctrl
/* 801ACF94 001A9ED4 48 00 00 7C */ b lbl_801AD010
lbl_801ACF98:
/* 801ACF98 001A9ED8 38 00 00 07 */ li r0, 7
/* 801ACF9C 001A9EDC 98 03 00 00 */ stb r0, 0(r3)
/* 801ACFA0 001A9EE0 A8 1D 11 18 */ lha r0, 0x1118(r29)
/* 801ACFA4 001A9EE4 B0 01 00 54 */ sth r0, 0x54(r1)
/* 801ACFA8 001A9EE8 A8 1D 11 1A */ lha r0, 0x111a(r29)
/* 801ACFAC 001A9EEC B0 01 00 56 */ sth r0, 0x56(r1)
/* 801ACFB0 001A9EF0 A8 1D 11 1C */ lha r0, 0x111c(r29)
/* 801ACFB4 001A9EF4 B0 01 00 58 */ sth r0, 0x58(r1)
/* 801ACFB8 001A9EF8 A8 1D 11 1E */ lha r0, 0x111e(r29)
/* 801ACFBC 001A9EFC B0 01 00 5A */ sth r0, 0x5a(r1)
/* 801ACFC0 001A9F00 A8 1D 11 16 */ lha r0, 0x1116(r29)
/* 801ACFC4 001A9F04 98 01 00 1B */ stb r0, 0x1b(r1)
/* 801ACFC8 001A9F08 38 00 00 00 */ li r0, 0
/* 801ACFCC 001A9F0C 98 01 00 18 */ stb r0, 0x18(r1)
/* 801ACFD0 001A9F10 98 01 00 19 */ stb r0, 0x19(r1)
/* 801ACFD4 001A9F14 98 01 00 1A */ stb r0, 0x1a(r1)
/* 801ACFD8 001A9F18 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801ACFDC 001A9F1C 38 80 00 01 */ li r4, 1
/* 801ACFE0 001A9F20 38 A1 00 54 */ addi r5, r1, 0x54
/* 801ACFE4 001A9F24 81 83 00 00 */ lwz r12, 0(r3)
/* 801ACFE8 001A9F28 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801ACFEC 001A9F2C 7D 89 03 A6 */ mtctr r12
/* 801ACFF0 001A9F30 4E 80 04 21 */ bctrl
/* 801ACFF4 001A9F34 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801ACFF8 001A9F38 38 80 00 03 */ li r4, 3
/* 801ACFFC 001A9F3C 38 A1 00 18 */ addi r5, r1, 0x18
/* 801AD000 001A9F40 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD004 001A9F44 81 8C 00 6C */ lwz r12, 0x6c(r12)
/* 801AD008 001A9F48 7D 89 03 A6 */ mtctr r12
/* 801AD00C 001A9F4C 4E 80 04 21 */ bctrl
lbl_801AD010:
/* 801AD010 001A9F50 38 73 00 03 */ addi r3, r19, 3
/* 801AD014 001A9F54 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD018 001A9F58 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD01C 001A9F5C 38 84 02 8A */ addi r4, r4, 0x28a
/* 801AD020 001A9F60 38 A0 00 04 */ li r5, 4
/* 801AD024 001A9F64 48 1B 90 69 */ bl func_8036608C
/* 801AD028 001A9F68 2C 03 00 00 */ cmpwi r3, 0
/* 801AD02C 001A9F6C 40 82 00 68 */ bne lbl_801AD094
/* 801AD030 001A9F70 C0 22 A2 94 */ lfs f1, lbl_80453C94-_SDA2_BASE_(r2)
/* 801AD034 001A9F74 C0 1D 0E DC */ lfs f0, 0xedc(r29)
/* 801AD038 001A9F78 EC 01 00 32 */ fmuls f0, f1, f0
/* 801AD03C 001A9F7C FC 00 00 1E */ fctiwz f0, f0
/* 801AD040 001A9F80 D8 01 01 B0 */ stfd f0, 0x1b0(r1)
/* 801AD044 001A9F84 80 01 01 B4 */ lwz r0, 0x1b4(r1)
/* 801AD048 001A9F88 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 801AD04C 001A9F8C B0 01 00 4C */ sth r0, 0x4c(r1)
/* 801AD050 001A9F90 D8 01 01 A8 */ stfd f0, 0x1a8(r1)
/* 801AD054 001A9F94 80 01 01 AC */ lwz r0, 0x1ac(r1)
/* 801AD058 001A9F98 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 801AD05C 001A9F9C B0 01 00 4E */ sth r0, 0x4e(r1)
/* 801AD060 001A9FA0 D8 01 01 A0 */ stfd f0, 0x1a0(r1)
/* 801AD064 001A9FA4 80 01 01 A4 */ lwz r0, 0x1a4(r1)
/* 801AD068 001A9FA8 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 801AD06C 001A9FAC B0 01 00 50 */ sth r0, 0x50(r1)
/* 801AD070 001A9FB0 38 00 00 FF */ li r0, 0xff
/* 801AD074 001A9FB4 B0 01 00 52 */ sth r0, 0x52(r1)
/* 801AD078 001A9FB8 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD07C 001A9FBC 38 80 00 00 */ li r4, 0
/* 801AD080 001A9FC0 38 A1 00 4C */ addi r5, r1, 0x4c
/* 801AD084 001A9FC4 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD088 001A9FC8 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801AD08C 001A9FCC 7D 89 03 A6 */ mtctr r12
/* 801AD090 001A9FD0 4E 80 04 21 */ bctrl
lbl_801AD094:
/* 801AD094 001A9FD4 38 73 00 03 */ addi r3, r19, 3
/* 801AD098 001A9FD8 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD09C 001A9FDC 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD0A0 001A9FE0 38 84 02 8F */ addi r4, r4, 0x28f
/* 801AD0A4 001A9FE4 38 A0 00 04 */ li r5, 4
/* 801AD0A8 001A9FE8 48 1B 8F E5 */ bl func_8036608C
/* 801AD0AC 001A9FEC 2C 03 00 00 */ cmpwi r3, 0
/* 801AD0B0 001A9FF0 41 82 00 24 */ beq lbl_801AD0D4
/* 801AD0B4 001A9FF4 38 73 00 03 */ addi r3, r19, 3
/* 801AD0B8 001A9FF8 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD0BC 001A9FFC 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD0C0 001AA000 38 84 02 94 */ addi r4, r4, 0x294
/* 801AD0C4 001AA004 38 A0 00 04 */ li r5, 4
/* 801AD0C8 001AA008 48 1B 8F C5 */ bl func_8036608C
/* 801AD0CC 001AA00C 2C 03 00 00 */ cmpwi r3, 0
/* 801AD0D0 001AA010 40 82 00 D0 */ bne lbl_801AD1A0
lbl_801AD0D4:
/* 801AD0D4 001AA014 80 1E 5F A0 */ lwz r0, 0x5fa0(r30)
/* 801AD0D8 001AA018 90 1F 00 48 */ stw r0, 0x48(r31)
/* 801AD0DC 001AA01C 80 1E 5F A4 */ lwz r0, 0x5fa4(r30)
/* 801AD0E0 001AA020 90 1F 00 4C */ stw r0, 0x4c(r31)
/* 801AD0E4 001AA024 80 79 00 28 */ lwz r3, 0x28(r25)
/* 801AD0E8 001AA028 38 80 00 00 */ li r4, 0
/* 801AD0EC 001AA02C 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD0F0 001AA030 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 801AD0F4 001AA034 7D 89 03 A6 */ mtctr r12
/* 801AD0F8 001AA038 4E 80 04 21 */ bctrl
/* 801AD0FC 001AA03C 28 03 00 00 */ cmplwi r3, 0
/* 801AD100 001AA040 41 82 00 A0 */ beq lbl_801AD1A0
/* 801AD104 001AA044 80 79 00 28 */ lwz r3, 0x28(r25)
/* 801AD108 001AA048 38 80 00 00 */ li r4, 0
/* 801AD10C 001AA04C 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD110 001AA050 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 801AD114 001AA054 7D 89 03 A6 */ mtctr r12
/* 801AD118 001AA058 4E 80 04 21 */ bctrl
/* 801AD11C 001AA05C 7C 70 1B 79 */ or. r16, r3, r3
/* 801AD120 001AA060 41 82 00 80 */ beq lbl_801AD1A0
/* 801AD124 001AA064 4B EA D9 BD */ bl dKyw_get_wind_vec
/* 801AD128 001AA068 88 13 00 06 */ lbz r0, 6(r19)
/* 801AD12C 001AA06C 2C 00 00 32 */ cmpwi r0, 0x32
/* 801AD130 001AA070 40 82 00 2C */ bne lbl_801AD15C
/* 801AD134 001AA074 38 61 01 70 */ addi r3, r1, 0x170
/* 801AD138 001AA078 80 9E 61 B0 */ lwz r4, 0x61b0(r30)
/* 801AD13C 001AA07C C0 24 00 D0 */ lfs f1, 0xd0(r4)
/* 801AD140 001AA080 C0 5C 00 D4 */ lfs f2, 0xd4(r28)
/* 801AD144 001AA084 C0 62 A2 48 */ lfs f3, lbl_80453C48-_SDA2_BASE_(r2)
/* 801AD148 001AA088 FC 80 18 90 */ fmr f4, f3
/* 801AD14C 001AA08C C0 A2 A4 18 */ lfs f5, lbl_80453E18-_SDA2_BASE_(r2)
/* 801AD150 001AA090 C0 C2 A2 0C */ lfs f6, lbl_80453C0C-_SDA2_BASE_(r2)
/* 801AD154 001AA094 48 19 9A C5 */ bl C_MTXLightPerspective
/* 801AD158 001AA098 48 00 00 28 */ b lbl_801AD180
lbl_801AD15C:
/* 801AD15C 001AA09C 38 61 01 70 */ addi r3, r1, 0x170
/* 801AD160 001AA0A0 80 9E 61 B0 */ lwz r4, 0x61b0(r30)
/* 801AD164 001AA0A4 C0 24 00 D0 */ lfs f1, 0xd0(r4)
/* 801AD168 001AA0A8 C0 5C 00 D4 */ lfs f2, 0xd4(r28)
/* 801AD16C 001AA0AC C0 62 A4 1C */ lfs f3, lbl_80453E1C-_SDA2_BASE_(r2)
/* 801AD170 001AA0B0 C0 82 A4 20 */ lfs f4, lbl_80453E20-_SDA2_BASE_(r2)
/* 801AD174 001AA0B4 C0 A2 A2 60 */ lfs f5, lbl_80453C60-_SDA2_BASE_(r2)
/* 801AD178 001AA0B8 FC C0 28 90 */ fmr f6, f5
/* 801AD17C 001AA0BC 48 19 9A 9D */ bl C_MTXLightPerspective
lbl_801AD180:
/* 801AD180 001AA0C0 7E 03 83 78 */ mr r3, r16
/* 801AD184 001AA0C4 38 81 01 70 */ addi r4, r1, 0x170
/* 801AD188 001AA0C8 48 17 86 0D */ bl J3DTexMtxInfo_NS_setEffectMtx
/* 801AD18C 001AA0CC 7F 43 D3 78 */ mr r3, r26
/* 801AD190 001AA0D0 38 80 00 00 */ li r4, 0
/* 801AD194 001AA0D4 3C A0 80 3A */ lis r5, lbl_803A1E5C@ha
/* 801AD198 001AA0D8 38 A5 1E 5C */ addi r5, r5, lbl_803A1E5C@l
/* 801AD19C 001AA0DC 48 17 8E 71 */ bl J3DModelData_NS_simpleCalcMaterial
lbl_801AD1A0:
/* 801AD1A0 001AA0E0 38 73 00 03 */ addi r3, r19, 3
/* 801AD1A4 001AA0E4 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD1A8 001AA0E8 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD1AC 001AA0EC 38 84 02 99 */ addi r4, r4, 0x299
/* 801AD1B0 001AA0F0 38 A0 00 04 */ li r5, 4
/* 801AD1B4 001AA0F4 48 1B 8E D9 */ bl func_8036608C
/* 801AD1B8 001AA0F8 2C 03 00 00 */ cmpwi r3, 0
/* 801AD1BC 001AA0FC 41 82 00 64 */ beq lbl_801AD220
/* 801AD1C0 001AA100 38 73 00 03 */ addi r3, r19, 3
/* 801AD1C4 001AA104 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD1C8 001AA108 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD1CC 001AA10C 38 84 02 9E */ addi r4, r4, 0x29e
/* 801AD1D0 001AA110 38 A0 00 04 */ li r5, 4
/* 801AD1D4 001AA114 48 1B 8E B9 */ bl func_8036608C
/* 801AD1D8 001AA118 2C 03 00 00 */ cmpwi r3, 0
/* 801AD1DC 001AA11C 41 82 00 44 */ beq lbl_801AD220
/* 801AD1E0 001AA120 38 73 00 03 */ addi r3, r19, 3
/* 801AD1E4 001AA124 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD1E8 001AA128 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD1EC 001AA12C 38 84 02 A3 */ addi r4, r4, 0x2a3
/* 801AD1F0 001AA130 38 A0 00 04 */ li r5, 4
/* 801AD1F4 001AA134 48 1B 8E 99 */ bl func_8036608C
/* 801AD1F8 001AA138 2C 03 00 00 */ cmpwi r3, 0
/* 801AD1FC 001AA13C 41 82 00 24 */ beq lbl_801AD220
/* 801AD200 001AA140 38 73 00 03 */ addi r3, r19, 3
/* 801AD204 001AA144 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD208 001AA148 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD20C 001AA14C 38 84 02 A8 */ addi r4, r4, 0x2a8
/* 801AD210 001AA150 38 A0 00 04 */ li r5, 4
/* 801AD214 001AA154 48 1B 8E 79 */ bl func_8036608C
/* 801AD218 001AA158 2C 03 00 00 */ cmpwi r3, 0
/* 801AD21C 001AA15C 40 82 01 70 */ bne lbl_801AD38C
lbl_801AD220:
/* 801AD220 001AA160 88 1D 12 F8 */ lbz r0, 0x12f8(r29)
/* 801AD224 001AA164 98 01 00 20 */ stb r0, 0x20(r1)
/* 801AD228 001AA168 38 60 00 00 */ li r3, 0
/* 801AD22C 001AA16C 98 61 00 21 */ stb r3, 0x21(r1)
/* 801AD230 001AA170 98 61 00 22 */ stb r3, 0x22(r1)
/* 801AD234 001AA174 88 13 00 06 */ lbz r0, 6(r19)
/* 801AD238 001AA178 2C 00 00 31 */ cmpwi r0, 0x31
/* 801AD23C 001AA17C 40 82 01 30 */ bne lbl_801AD36C
/* 801AD240 001AA180 82 19 00 34 */ lwz r16, 0x34(r25)
/* 801AD244 001AA184 7F 23 CB 78 */ mr r3, r25
/* 801AD248 001AA188 81 99 00 00 */ lwz r12, 0(r25)
/* 801AD24C 001AA18C 81 8C 00 2C */ lwz r12, 0x2c(r12)
/* 801AD250 001AA190 7D 89 03 A6 */ mtctr r12
/* 801AD254 001AA194 4E 80 04 21 */ bctrl
/* 801AD258 001AA198 4B FF E0 29 */ bl dKy_camera_water_in_status_check
/* 801AD25C 001AA19C 2C 03 00 00 */ cmpwi r3, 0
/* 801AD260 001AA1A0 41 82 00 88 */ beq lbl_801AD2E8
/* 801AD264 001AA1A4 38 00 00 FF */ li r0, 0xff
/* 801AD268 001AA1A8 98 01 00 23 */ stb r0, 0x23(r1)
/* 801AD26C 001AA1AC 7E 03 83 78 */ mr r3, r16
/* 801AD270 001AA1B0 81 90 00 00 */ lwz r12, 0(r16)
/* 801AD274 001AA1B4 81 8C 00 3C */ lwz r12, 0x3c(r12)
/* 801AD278 001AA1B8 7D 89 03 A6 */ mtctr r12
/* 801AD27C 001AA1BC 4E 80 04 21 */ bctrl
/* 801AD280 001AA1C0 88 18 00 01 */ lbz r0, 1(r24)
/* 801AD284 001AA1C4 98 03 00 02 */ stb r0, 2(r3)
/* 801AD288 001AA1C8 88 18 00 04 */ lbz r0, 4(r24)
/* 801AD28C 001AA1CC 98 03 00 03 */ stb r0, 3(r3)
/* 801AD290 001AA1D0 88 0D 81 98 */ lbz r0, lbl_80450718-_SDA_BASE_(r13)
/* 801AD294 001AA1D4 88 B8 00 03 */ lbz r5, 3(r24)
/* 801AD298 001AA1D8 54 04 28 34 */ slwi r4, r0, 5
/* 801AD29C 001AA1DC 88 18 00 02 */ lbz r0, 2(r24)
/* 801AD2A0 001AA1E0 54 00 1D 78 */ rlwinm r0, r0, 3, 0x15, 0x1c
/* 801AD2A4 001AA1E4 7C 00 2A 14 */ add r0, r0, r5
/* 801AD2A8 001AA1E8 7C 04 02 14 */ add r0, r4, r0
/* 801AD2AC 001AA1EC B0 03 00 00 */ sth r0, 0(r3)
/* 801AD2B0 001AA1F0 7E 03 83 78 */ mr r3, r16
/* 801AD2B4 001AA1F4 81 90 00 00 */ lwz r12, 0(r16)
/* 801AD2B8 001AA1F8 81 8C 00 54 */ lwz r12, 0x54(r12)
/* 801AD2BC 001AA1FC 7D 89 03 A6 */ mtctr r12
/* 801AD2C0 001AA200 4E 80 04 21 */ bctrl
/* 801AD2C4 001AA204 88 CD 81 88 */ lbz r6, lbl_80450708-_SDA_BASE_(r13)
/* 801AD2C8 001AA208 88 B1 00 02 */ lbz r5, 2(r17)
/* 801AD2CC 001AA20C 88 11 00 01 */ lbz r0, 1(r17)
/* 801AD2D0 001AA210 54 04 0D FC */ rlwinm r4, r0, 1, 0x17, 0x1e
/* 801AD2D4 001AA214 54 C0 20 36 */ slwi r0, r6, 4
/* 801AD2D8 001AA218 7C 00 2A 14 */ add r0, r0, r5
/* 801AD2DC 001AA21C 7C 04 02 14 */ add r0, r4, r0
/* 801AD2E0 001AA220 B0 03 00 00 */ sth r0, 0(r3)
/* 801AD2E4 001AA224 48 00 00 8C */ b lbl_801AD370
lbl_801AD2E8:
/* 801AD2E8 001AA228 38 00 00 00 */ li r0, 0
/* 801AD2EC 001AA22C 98 01 00 23 */ stb r0, 0x23(r1)
/* 801AD2F0 001AA230 7E 03 83 78 */ mr r3, r16
/* 801AD2F4 001AA234 81 90 00 00 */ lwz r12, 0(r16)
/* 801AD2F8 001AA238 81 8C 00 3C */ lwz r12, 0x3c(r12)
/* 801AD2FC 001AA23C 7D 89 03 A6 */ mtctr r12
/* 801AD300 001AA240 4E 80 04 21 */ bctrl
/* 801AD304 001AA244 88 17 00 01 */ lbz r0, 1(r23)
/* 801AD308 001AA248 98 03 00 02 */ stb r0, 2(r3)
/* 801AD30C 001AA24C 88 17 00 04 */ lbz r0, 4(r23)
/* 801AD310 001AA250 98 03 00 03 */ stb r0, 3(r3)
/* 801AD314 001AA254 88 0D 81 90 */ lbz r0, lbl_80450710-_SDA_BASE_(r13)
/* 801AD318 001AA258 88 B7 00 03 */ lbz r5, 3(r23)
/* 801AD31C 001AA25C 54 04 28 34 */ slwi r4, r0, 5
/* 801AD320 001AA260 88 17 00 02 */ lbz r0, 2(r23)
/* 801AD324 001AA264 54 00 1D 78 */ rlwinm r0, r0, 3, 0x15, 0x1c
/* 801AD328 001AA268 7C 00 2A 14 */ add r0, r0, r5
/* 801AD32C 001AA26C 7C 04 02 14 */ add r0, r4, r0
/* 801AD330 001AA270 B0 03 00 00 */ sth r0, 0(r3)
/* 801AD334 001AA274 7E 03 83 78 */ mr r3, r16
/* 801AD338 001AA278 81 90 00 00 */ lwz r12, 0(r16)
/* 801AD33C 001AA27C 81 8C 00 54 */ lwz r12, 0x54(r12)
/* 801AD340 001AA280 7D 89 03 A6 */ mtctr r12
/* 801AD344 001AA284 4E 80 04 21 */ bctrl
/* 801AD348 001AA288 88 CD 81 8C */ lbz r6, lbl_8045070C-_SDA_BASE_(r13)
/* 801AD34C 001AA28C 88 B2 00 02 */ lbz r5, 2(r18)
/* 801AD350 001AA290 88 12 00 01 */ lbz r0, 1(r18)
/* 801AD354 001AA294 54 04 0D FC */ rlwinm r4, r0, 1, 0x17, 0x1e
/* 801AD358 001AA298 54 C0 20 36 */ slwi r0, r6, 4
/* 801AD35C 001AA29C 7C 00 2A 14 */ add r0, r0, r5
/* 801AD360 001AA2A0 7C 04 02 14 */ add r0, r4, r0
/* 801AD364 001AA2A4 B0 03 00 00 */ sth r0, 0(r3)
/* 801AD368 001AA2A8 48 00 00 08 */ b lbl_801AD370
lbl_801AD36C:
/* 801AD36C 001AA2AC 98 61 00 23 */ stb r3, 0x23(r1)
lbl_801AD370:
/* 801AD370 001AA2B0 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD374 001AA2B4 38 80 00 01 */ li r4, 1
/* 801AD378 001AA2B8 38 A1 00 20 */ addi r5, r1, 0x20
/* 801AD37C 001AA2BC 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD380 001AA2C0 81 8C 00 6C */ lwz r12, 0x6c(r12)
/* 801AD384 001AA2C4 7D 89 03 A6 */ mtctr r12
/* 801AD388 001AA2C8 4E 80 04 21 */ bctrl
lbl_801AD38C:
/* 801AD38C 001AA2CC 38 73 00 03 */ addi r3, r19, 3
/* 801AD390 001AA2D0 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD394 001AA2D4 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD398 001AA2D8 38 84 02 AD */ addi r4, r4, 0x2ad
/* 801AD39C 001AA2DC 38 A0 00 04 */ li r5, 4
/* 801AD3A0 001AA2E0 48 1B 8C ED */ bl func_8036608C
/* 801AD3A4 001AA2E4 2C 03 00 00 */ cmpwi r3, 0
/* 801AD3A8 001AA2E8 40 82 02 28 */ bne lbl_801AD5D0
/* 801AD3AC 001AA2EC 4B FF F1 D1 */ bl dKy_darkworld_check
/* 801AD3B0 001AA2F0 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 801AD3B4 001AA2F4 41 82 00 8C */ beq lbl_801AD440
/* 801AD3B8 001AA2F8 80 1E 5F 78 */ lwz r0, 0x5f78(r30)
/* 801AD3BC 001AA2FC 90 1F 00 48 */ stw r0, 0x48(r31)
/* 801AD3C0 001AA300 80 1E 5F 7C */ lwz r0, 0x5f7c(r30)
/* 801AD3C4 001AA304 90 1F 00 4C */ stw r0, 0x4c(r31)
/* 801AD3C8 001AA308 38 00 00 AA */ li r0, 0xaa
/* 801AD3CC 001AA30C B0 01 00 44 */ sth r0, 0x44(r1)
/* 801AD3D0 001AA310 38 00 00 A0 */ li r0, 0xa0
/* 801AD3D4 001AA314 B0 01 00 46 */ sth r0, 0x46(r1)
/* 801AD3D8 001AA318 38 00 00 FF */ li r0, 0xff
/* 801AD3DC 001AA31C B0 01 00 48 */ sth r0, 0x48(r1)
/* 801AD3E0 001AA320 B0 01 00 4A */ sth r0, 0x4a(r1)
/* 801AD3E4 001AA324 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD3E8 001AA328 38 80 00 01 */ li r4, 1
/* 801AD3EC 001AA32C 38 A1 00 44 */ addi r5, r1, 0x44
/* 801AD3F0 001AA330 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD3F4 001AA334 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801AD3F8 001AA338 7D 89 03 A6 */ mtctr r12
/* 801AD3FC 001AA33C 4E 80 04 21 */ bctrl
/* 801AD400 001AA340 38 00 00 32 */ li r0, 0x32
/* 801AD404 001AA344 B0 01 00 44 */ sth r0, 0x44(r1)
/* 801AD408 001AA348 38 00 00 14 */ li r0, 0x14
/* 801AD40C 001AA34C B0 01 00 46 */ sth r0, 0x46(r1)
/* 801AD410 001AA350 38 00 00 5A */ li r0, 0x5a
/* 801AD414 001AA354 B0 01 00 48 */ sth r0, 0x48(r1)
/* 801AD418 001AA358 38 00 00 FF */ li r0, 0xff
/* 801AD41C 001AA35C B0 01 00 4A */ sth r0, 0x4a(r1)
/* 801AD420 001AA360 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD424 001AA364 38 80 00 02 */ li r4, 2
/* 801AD428 001AA368 38 A1 00 44 */ addi r5, r1, 0x44
/* 801AD42C 001AA36C 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD430 001AA370 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801AD434 001AA374 7D 89 03 A6 */ mtctr r12
/* 801AD438 001AA378 4E 80 04 21 */ bctrl
/* 801AD43C 001AA37C 48 00 04 70 */ b lbl_801AD8AC
lbl_801AD440:
/* 801AD440 001AA380 38 00 00 78 */ li r0, 0x78
/* 801AD444 001AA384 B0 01 00 44 */ sth r0, 0x44(r1)
/* 801AD448 001AA388 38 00 00 5A */ li r0, 0x5a
/* 801AD44C 001AA38C B0 01 00 46 */ sth r0, 0x46(r1)
/* 801AD450 001AA390 38 00 00 B4 */ li r0, 0xb4
/* 801AD454 001AA394 B0 01 00 48 */ sth r0, 0x48(r1)
/* 801AD458 001AA398 38 00 00 FF */ li r0, 0xff
/* 801AD45C 001AA39C B0 01 00 4A */ sth r0, 0x4a(r1)
/* 801AD460 001AA3A0 38 60 00 00 */ li r3, 0
/* 801AD464 001AA3A4 4B E7 F5 19 */ bl dComIfG_play_c_NS_getLayerNo
/* 801AD468 001AA3A8 2C 03 00 01 */ cmpwi r3, 1
/* 801AD46C 001AA3AC 40 82 00 0C */ bne lbl_801AD478
/* 801AD470 001AA3B0 38 00 00 00 */ li r0, 0
/* 801AD474 001AA3B4 B0 01 00 4A */ sth r0, 0x4a(r1)
lbl_801AD478:
/* 801AD478 001AA3B8 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD47C 001AA3BC 38 80 00 01 */ li r4, 1
/* 801AD480 001AA3C0 38 A1 00 44 */ addi r5, r1, 0x44
/* 801AD484 001AA3C4 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD488 001AA3C8 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801AD48C 001AA3CC 7D 89 03 A6 */ mtctr r12
/* 801AD490 001AA3D0 4E 80 04 21 */ bctrl
/* 801AD494 001AA3D4 38 00 00 28 */ li r0, 0x28
/* 801AD498 001AA3D8 B0 01 00 44 */ sth r0, 0x44(r1)
/* 801AD49C 001AA3DC 38 00 00 1E */ li r0, 0x1e
/* 801AD4A0 001AA3E0 B0 01 00 46 */ sth r0, 0x46(r1)
/* 801AD4A4 001AA3E4 38 00 00 41 */ li r0, 0x41
/* 801AD4A8 001AA3E8 B0 01 00 48 */ sth r0, 0x48(r1)
/* 801AD4AC 001AA3EC 38 00 00 FF */ li r0, 0xff
/* 801AD4B0 001AA3F0 B0 01 00 4A */ sth r0, 0x4a(r1)
/* 801AD4B4 001AA3F4 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD4B8 001AA3F8 38 80 00 02 */ li r4, 2
/* 801AD4BC 001AA3FC 38 A1 00 44 */ addi r5, r1, 0x44
/* 801AD4C0 001AA400 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD4C4 001AA404 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801AD4C8 001AA408 7D 89 03 A6 */ mtctr r12
/* 801AD4CC 001AA40C 4E 80 04 21 */ bctrl
/* 801AD4D0 001AA410 80 7D 10 60 */ lwz r3, 0x1060(r29)
/* 801AD4D4 001AA414 28 03 00 00 */ cmplwi r3, 0
/* 801AD4D8 001AA418 41 82 03 D4 */ beq lbl_801AD8AC
/* 801AD4DC 001AA41C C0 03 05 B8 */ lfs f0, 0x5b8(r3)
/* 801AD4E0 001AA420 D0 01 00 98 */ stfs f0, 0x98(r1)
/* 801AD4E4 001AA424 C0 03 05 BC */ lfs f0, 0x5bc(r3)
/* 801AD4E8 001AA428 D0 01 00 9C */ stfs f0, 0x9c(r1)
/* 801AD4EC 001AA42C C0 03 05 C0 */ lfs f0, 0x5c0(r3)
/* 801AD4F0 001AA430 D0 01 00 A0 */ stfs f0, 0xa0(r1)
/* 801AD4F4 001AA434 C0 23 05 AC */ lfs f1, 0x5ac(r3)
/* 801AD4F8 001AA438 C0 03 05 D0 */ lfs f0, 0x5d0(r3)
/* 801AD4FC 001AA43C EF A1 00 32 */ fmuls f29, f1, f0
/* 801AD500 001AA440 C0 02 A2 64 */ lfs f0, lbl_80453C64-_SDA2_BASE_(r2)
/* 801AD504 001AA444 FC 1D 00 40 */ fcmpo cr0, f29, f0
/* 801AD508 001AA448 40 80 00 08 */ bge lbl_801AD510
/* 801AD50C 001AA44C FF A0 00 90 */ fmr f29, f0
lbl_801AD510:
/* 801AD510 001AA450 80 79 00 28 */ lwz r3, 0x28(r25)
/* 801AD514 001AA454 38 80 00 00 */ li r4, 0
/* 801AD518 001AA458 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD51C 001AA45C 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 801AD520 001AA460 7D 89 03 A6 */ mtctr r12
/* 801AD524 001AA464 4E 80 04 21 */ bctrl
/* 801AD528 001AA468 28 03 00 00 */ cmplwi r3, 0
/* 801AD52C 001AA46C 41 82 03 80 */ beq lbl_801AD8AC
/* 801AD530 001AA470 80 79 00 28 */ lwz r3, 0x28(r25)
/* 801AD534 001AA474 38 80 00 00 */ li r4, 0
/* 801AD538 001AA478 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD53C 001AA47C 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 801AD540 001AA480 7D 89 03 A6 */ mtctr r12
/* 801AD544 001AA484 4E 80 04 21 */ bctrl
/* 801AD548 001AA488 7C 70 1B 79 */ or. r16, r3, r3
/* 801AD54C 001AA48C 41 82 03 60 */ beq lbl_801AD8AC
/* 801AD550 001AA490 38 61 01 40 */ addi r3, r1, 0x140
/* 801AD554 001AA494 C0 02 A4 24 */ lfs f0, lbl_80453E24-_SDA2_BASE_(r2)
/* 801AD558 001AA498 EC 20 07 72 */ fmuls f1, f0, f29
/* 801AD55C 001AA49C C0 42 A2 48 */ lfs f2, lbl_80453C48-_SDA2_BASE_(r2)
/* 801AD560 001AA4A0 C0 62 A2 60 */ lfs f3, lbl_80453C60-_SDA2_BASE_(r2)
/* 801AD564 001AA4A4 FC 80 18 90 */ fmr f4, f3
/* 801AD568 001AA4A8 C0 A2 A2 0C */ lfs f5, lbl_80453C0C-_SDA2_BASE_(r2)
/* 801AD56C 001AA4AC FC C0 28 90 */ fmr f6, f5
/* 801AD570 001AA4B0 48 19 96 A9 */ bl C_MTXLightPerspective
/* 801AD574 001AA4B4 C0 41 00 98 */ lfs f2, 0x98(r1)
/* 801AD578 001AA4B8 D0 41 00 A4 */ stfs f2, 0xa4(r1)
/* 801AD57C 001AA4BC C0 02 A2 94 */ lfs f0, lbl_80453C94-_SDA2_BASE_(r2)
/* 801AD580 001AA4C0 D0 01 00 A8 */ stfs f0, 0xa8(r1)
/* 801AD584 001AA4C4 C0 21 00 A0 */ lfs f1, 0xa0(r1)
/* 801AD588 001AA4C8 D0 21 00 AC */ stfs f1, 0xac(r1)
/* 801AD58C 001AA4CC D0 41 00 8C */ stfs f2, 0x8c(r1)
/* 801AD590 001AA4D0 C0 02 A2 44 */ lfs f0, lbl_80453C44-_SDA2_BASE_(r2)
/* 801AD594 001AA4D4 D0 01 00 90 */ stfs f0, 0x90(r1)
/* 801AD598 001AA4D8 D0 21 00 94 */ stfs f1, 0x94(r1)
/* 801AD59C 001AA4DC 38 61 01 10 */ addi r3, r1, 0x110
/* 801AD5A0 001AA4E0 38 81 00 8C */ addi r4, r1, 0x8c
/* 801AD5A4 001AA4E4 38 A1 00 A4 */ addi r5, r1, 0xa4
/* 801AD5A8 001AA4E8 38 C0 00 00 */ li r6, 0
/* 801AD5AC 001AA4EC 4B E5 EF 61 */ bl mDoMtx_lookAt
/* 801AD5B0 001AA4F0 38 61 01 40 */ addi r3, r1, 0x140
/* 801AD5B4 001AA4F4 38 81 01 10 */ addi r4, r1, 0x110
/* 801AD5B8 001AA4F8 7C 85 23 78 */ mr r5, r4
/* 801AD5BC 001AA4FC 48 19 8F 29 */ bl PSMTXConcat
/* 801AD5C0 001AA500 7E 03 83 78 */ mr r3, r16
/* 801AD5C4 001AA504 38 81 01 10 */ addi r4, r1, 0x110
/* 801AD5C8 001AA508 48 17 81 CD */ bl J3DTexMtxInfo_NS_setEffectMtx
/* 801AD5CC 001AA50C 48 00 02 E0 */ b lbl_801AD8AC
lbl_801AD5D0:
/* 801AD5D0 001AA510 38 73 00 03 */ addi r3, r19, 3
/* 801AD5D4 001AA514 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD5D8 001AA518 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD5DC 001AA51C 38 84 02 B2 */ addi r4, r4, 0x2b2
/* 801AD5E0 001AA520 38 A0 00 04 */ li r5, 4
/* 801AD5E4 001AA524 48 1B 8A A9 */ bl func_8036608C
/* 801AD5E8 001AA528 2C 03 00 00 */ cmpwi r3, 0
/* 801AD5EC 001AA52C 40 82 01 3C */ bne lbl_801AD728
/* 801AD5F0 001AA530 80 79 00 34 */ lwz r3, 0x34(r25)
/* 801AD5F4 001AA534 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD5F8 001AA538 81 8C 00 30 */ lwz r12, 0x30(r12)
/* 801AD5FC 001AA53C 7D 89 03 A6 */ mtctr r12
/* 801AD600 001AA540 4E 80 04 21 */ bctrl
/* 801AD604 001AA544 28 03 00 00 */ cmplwi r3, 0
/* 801AD608 001AA548 41 82 02 A4 */ beq lbl_801AD8AC
/* 801AD60C 001AA54C 80 79 00 34 */ lwz r3, 0x34(r25)
/* 801AD610 001AA550 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD614 001AA554 81 8C 00 30 */ lwz r12, 0x30(r12)
/* 801AD618 001AA558 7D 89 03 A6 */ mtctr r12
/* 801AD61C 001AA55C 4E 80 04 21 */ bctrl
/* 801AD620 001AA560 28 03 00 00 */ cmplwi r3, 0
/* 801AD624 001AA564 41 82 00 0C */ beq lbl_801AD630
/* 801AD628 001AA568 38 00 00 07 */ li r0, 7
/* 801AD62C 001AA56C 98 03 00 00 */ stb r0, 0(r3)
lbl_801AD630:
/* 801AD630 001AA570 A8 1D 11 20 */ lha r0, 0x1120(r29)
/* 801AD634 001AA574 B0 01 00 3C */ sth r0, 0x3c(r1)
/* 801AD638 001AA578 A8 1D 11 22 */ lha r0, 0x1122(r29)
/* 801AD63C 001AA57C B0 01 00 3E */ sth r0, 0x3e(r1)
/* 801AD640 001AA580 A8 1D 11 24 */ lha r0, 0x1124(r29)
/* 801AD644 001AA584 B0 01 00 40 */ sth r0, 0x40(r1)
/* 801AD648 001AA588 38 00 00 FF */ li r0, 0xff
/* 801AD64C 001AA58C B0 01 00 42 */ sth r0, 0x42(r1)
/* 801AD650 001AA590 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD654 001AA594 38 80 00 01 */ li r4, 1
/* 801AD658 001AA598 38 A1 00 3C */ addi r5, r1, 0x3c
/* 801AD65C 001AA59C 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD660 001AA5A0 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801AD664 001AA5A4 7D 89 03 A6 */ mtctr r12
/* 801AD668 001AA5A8 4E 80 04 21 */ bctrl
/* 801AD66C 001AA5AC 80 79 00 28 */ lwz r3, 0x28(r25)
/* 801AD670 001AA5B0 38 80 00 02 */ li r4, 2
/* 801AD674 001AA5B4 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD678 001AA5B8 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 801AD67C 001AA5BC 7D 89 03 A6 */ mtctr r12
/* 801AD680 001AA5C0 4E 80 04 21 */ bctrl
/* 801AD684 001AA5C4 28 03 00 00 */ cmplwi r3, 0
/* 801AD688 001AA5C8 41 82 02 24 */ beq lbl_801AD8AC
/* 801AD68C 001AA5CC 80 79 00 28 */ lwz r3, 0x28(r25)
/* 801AD690 001AA5D0 38 80 00 02 */ li r4, 2
/* 801AD694 001AA5D4 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD698 001AA5D8 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 801AD69C 001AA5DC 7D 89 03 A6 */ mtctr r12
/* 801AD6A0 001AA5E0 4E 80 04 21 */ bctrl
/* 801AD6A4 001AA5E4 7C 70 1B 79 */ or. r16, r3, r3
/* 801AD6A8 001AA5E8 41 82 02 04 */ beq lbl_801AD8AC
/* 801AD6AC 001AA5EC 38 61 00 E0 */ addi r3, r1, 0xe0
/* 801AD6B0 001AA5F0 C0 22 A4 28 */ lfs f1, lbl_80453E28-_SDA2_BASE_(r2)
/* 801AD6B4 001AA5F4 C0 42 A2 48 */ lfs f2, lbl_80453C48-_SDA2_BASE_(r2)
/* 801AD6B8 001AA5F8 C0 62 A3 CC */ lfs f3, lbl_80453DCC-_SDA2_BASE_(r2)
/* 801AD6BC 001AA5FC FC 80 18 90 */ fmr f4, f3
/* 801AD6C0 001AA600 C0 A2 A2 0C */ lfs f5, lbl_80453C0C-_SDA2_BASE_(r2)
/* 801AD6C4 001AA604 FC C0 28 90 */ fmr f6, f5
/* 801AD6C8 001AA608 48 19 95 51 */ bl C_MTXLightPerspective
/* 801AD6CC 001AA60C C0 5B 04 D0 */ lfs f2, 0x4d0(r27)
/* 801AD6D0 001AA610 D0 41 00 80 */ stfs f2, 0x80(r1)
/* 801AD6D4 001AA614 C0 02 A4 2C */ lfs f0, lbl_80453E2C-_SDA2_BASE_(r2)
/* 801AD6D8 001AA618 D0 01 00 84 */ stfs f0, 0x84(r1)
/* 801AD6DC 001AA61C C0 3B 04 D8 */ lfs f1, 0x4d8(r27)
/* 801AD6E0 001AA620 D0 21 00 88 */ stfs f1, 0x88(r1)
/* 801AD6E4 001AA624 D0 41 00 74 */ stfs f2, 0x74(r1)
/* 801AD6E8 001AA628 C0 02 A4 30 */ lfs f0, lbl_80453E30-_SDA2_BASE_(r2)
/* 801AD6EC 001AA62C D0 01 00 78 */ stfs f0, 0x78(r1)
/* 801AD6F0 001AA630 D0 21 00 7C */ stfs f1, 0x7c(r1)
/* 801AD6F4 001AA634 38 61 00 B0 */ addi r3, r1, 0xb0
/* 801AD6F8 001AA638 38 81 00 74 */ addi r4, r1, 0x74
/* 801AD6FC 001AA63C 38 A1 00 80 */ addi r5, r1, 0x80
/* 801AD700 001AA640 38 C0 00 00 */ li r6, 0
/* 801AD704 001AA644 4B E5 EE 09 */ bl mDoMtx_lookAt
/* 801AD708 001AA648 38 61 00 E0 */ addi r3, r1, 0xe0
/* 801AD70C 001AA64C 38 81 00 B0 */ addi r4, r1, 0xb0
/* 801AD710 001AA650 7C 85 23 78 */ mr r5, r4
/* 801AD714 001AA654 48 19 8D D1 */ bl PSMTXConcat
/* 801AD718 001AA658 7E 03 83 78 */ mr r3, r16
/* 801AD71C 001AA65C 38 81 00 B0 */ addi r4, r1, 0xb0
/* 801AD720 001AA660 48 17 80 75 */ bl J3DTexMtxInfo_NS_setEffectMtx
/* 801AD724 001AA664 48 00 01 88 */ b lbl_801AD8AC
lbl_801AD728:
/* 801AD728 001AA668 38 73 00 03 */ addi r3, r19, 3
/* 801AD72C 001AA66C 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD730 001AA670 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD734 001AA674 38 84 02 B7 */ addi r4, r4, 0x2b7
/* 801AD738 001AA678 38 A0 00 04 */ li r5, 4
/* 801AD73C 001AA67C 48 1B 89 51 */ bl func_8036608C
/* 801AD740 001AA680 2C 03 00 00 */ cmpwi r3, 0
/* 801AD744 001AA684 40 82 00 44 */ bne lbl_801AD788
/* 801AD748 001AA688 A8 1D 11 20 */ lha r0, 0x1120(r29)
/* 801AD74C 001AA68C B0 01 00 34 */ sth r0, 0x34(r1)
/* 801AD750 001AA690 A8 1D 11 22 */ lha r0, 0x1122(r29)
/* 801AD754 001AA694 B0 01 00 36 */ sth r0, 0x36(r1)
/* 801AD758 001AA698 A8 1D 11 24 */ lha r0, 0x1124(r29)
/* 801AD75C 001AA69C B0 01 00 38 */ sth r0, 0x38(r1)
/* 801AD760 001AA6A0 A8 1D 11 26 */ lha r0, 0x1126(r29)
/* 801AD764 001AA6A4 B0 01 00 3A */ sth r0, 0x3a(r1)
/* 801AD768 001AA6A8 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD76C 001AA6AC 38 80 00 01 */ li r4, 1
/* 801AD770 001AA6B0 38 A1 00 34 */ addi r5, r1, 0x34
/* 801AD774 001AA6B4 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD778 001AA6B8 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801AD77C 001AA6BC 7D 89 03 A6 */ mtctr r12
/* 801AD780 001AA6C0 4E 80 04 21 */ bctrl
/* 801AD784 001AA6C4 48 00 01 28 */ b lbl_801AD8AC
lbl_801AD788:
/* 801AD788 001AA6C8 38 73 00 03 */ addi r3, r19, 3
/* 801AD78C 001AA6CC 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD790 001AA6D0 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD794 001AA6D4 38 84 02 BC */ addi r4, r4, 0x2bc
/* 801AD798 001AA6D8 38 A0 00 04 */ li r5, 4
/* 801AD79C 001AA6DC 48 1B 88 F1 */ bl func_8036608C
/* 801AD7A0 001AA6E0 2C 03 00 00 */ cmpwi r3, 0
/* 801AD7A4 001AA6E4 40 82 00 78 */ bne lbl_801AD81C
/* 801AD7A8 001AA6E8 A8 1D 11 58 */ lha r0, 0x1158(r29)
/* 801AD7AC 001AA6EC B0 01 00 2C */ sth r0, 0x2c(r1)
/* 801AD7B0 001AA6F0 A8 1D 11 5A */ lha r0, 0x115a(r29)
/* 801AD7B4 001AA6F4 B0 01 00 2E */ sth r0, 0x2e(r1)
/* 801AD7B8 001AA6F8 A8 1D 11 5C */ lha r0, 0x115c(r29)
/* 801AD7BC 001AA6FC B0 01 00 30 */ sth r0, 0x30(r1)
/* 801AD7C0 001AA700 A8 1D 11 5E */ lha r0, 0x115e(r29)
/* 801AD7C4 001AA704 B0 01 00 32 */ sth r0, 0x32(r1)
/* 801AD7C8 001AA708 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD7CC 001AA70C 38 80 00 01 */ li r4, 1
/* 801AD7D0 001AA710 38 A1 00 2C */ addi r5, r1, 0x2c
/* 801AD7D4 001AA714 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD7D8 001AA718 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801AD7DC 001AA71C 7D 89 03 A6 */ mtctr r12
/* 801AD7E0 001AA720 4E 80 04 21 */ bctrl
/* 801AD7E4 001AA724 38 00 00 00 */ li r0, 0
/* 801AD7E8 001AA728 98 01 00 16 */ stb r0, 0x16(r1)
/* 801AD7EC 001AA72C 98 01 00 15 */ stb r0, 0x15(r1)
/* 801AD7F0 001AA730 98 01 00 14 */ stb r0, 0x14(r1)
/* 801AD7F4 001AA734 A8 1D 11 26 */ lha r0, 0x1126(r29)
/* 801AD7F8 001AA738 98 01 00 17 */ stb r0, 0x17(r1)
/* 801AD7FC 001AA73C 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD800 001AA740 38 80 00 03 */ li r4, 3
/* 801AD804 001AA744 38 A1 00 14 */ addi r5, r1, 0x14
/* 801AD808 001AA748 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD80C 001AA74C 81 8C 00 6C */ lwz r12, 0x6c(r12)
/* 801AD810 001AA750 7D 89 03 A6 */ mtctr r12
/* 801AD814 001AA754 4E 80 04 21 */ bctrl
/* 801AD818 001AA758 48 00 00 94 */ b lbl_801AD8AC
lbl_801AD81C:
/* 801AD81C 001AA75C 38 73 00 03 */ addi r3, r19, 3
/* 801AD820 001AA760 3C 80 80 39 */ lis r4, lbl_80394C6C@ha
/* 801AD824 001AA764 38 84 4C 6C */ addi r4, r4, lbl_80394C6C@l
/* 801AD828 001AA768 38 84 02 A8 */ addi r4, r4, 0x2a8
/* 801AD82C 001AA76C 38 A0 00 04 */ li r5, 4
/* 801AD830 001AA770 48 1B 88 5D */ bl func_8036608C
/* 801AD834 001AA774 2C 03 00 00 */ cmpwi r3, 0
/* 801AD838 001AA778 40 82 00 74 */ bne lbl_801AD8AC
/* 801AD83C 001AA77C A8 1D 11 10 */ lha r0, 0x1110(r29)
/* 801AD840 001AA780 B0 01 00 24 */ sth r0, 0x24(r1)
/* 801AD844 001AA784 A8 1D 11 12 */ lha r0, 0x1112(r29)
/* 801AD848 001AA788 B0 01 00 26 */ sth r0, 0x26(r1)
/* 801AD84C 001AA78C A8 1D 11 14 */ lha r0, 0x1114(r29)
/* 801AD850 001AA790 B0 01 00 28 */ sth r0, 0x28(r1)
/* 801AD854 001AA794 A8 1D 11 16 */ lha r0, 0x1116(r29)
/* 801AD858 001AA798 B0 01 00 2A */ sth r0, 0x2a(r1)
/* 801AD85C 001AA79C 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD860 001AA7A0 38 80 00 01 */ li r4, 1
/* 801AD864 001AA7A4 38 A1 00 24 */ addi r5, r1, 0x24
/* 801AD868 001AA7A8 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD86C 001AA7AC 81 8C 00 60 */ lwz r12, 0x60(r12)
/* 801AD870 001AA7B0 7D 89 03 A6 */ mtctr r12
/* 801AD874 001AA7B4 4E 80 04 21 */ bctrl
/* 801AD878 001AA7B8 38 00 00 00 */ li r0, 0
/* 801AD87C 001AA7BC 98 01 00 12 */ stb r0, 0x12(r1)
/* 801AD880 001AA7C0 98 01 00 11 */ stb r0, 0x11(r1)
/* 801AD884 001AA7C4 98 01 00 10 */ stb r0, 0x10(r1)
/* 801AD888 001AA7C8 A8 1D 11 26 */ lha r0, 0x1126(r29)
/* 801AD88C 001AA7CC 98 01 00 13 */ stb r0, 0x13(r1)
/* 801AD890 001AA7D0 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801AD894 001AA7D4 38 80 00 03 */ li r4, 3
/* 801AD898 001AA7D8 38 A1 00 10 */ addi r5, r1, 0x10
/* 801AD89C 001AA7DC 81 83 00 00 */ lwz r12, 0(r3)
/* 801AD8A0 001AA7E0 81 8C 00 6C */ lwz r12, 0x6c(r12)
/* 801AD8A4 001AA7E4 7D 89 03 A6 */ mtctr r12
/* 801AD8A8 001AA7E8 4E 80 04 21 */ bctrl
lbl_801AD8AC:
/* 801AD8AC 001AA7EC 38 73 00 03 */ addi r3, r19, 3
/* 801AD8B0 001AA7F0 38 94 02 C1 */ addi r4, r20, 0x2c1
/* 801AD8B4 001AA7F4 38 A0 00 07 */ li r5, 7
/* 801AD8B8 001AA7F8 48 1B 87 D5 */ bl func_8036608C
/* 801AD8BC 001AA7FC 2C 03 00 00 */ cmpwi r3, 0
/* 801AD8C0 001AA800 40 82 02 B8 */ bne lbl_801ADB78
/* 801AD8C4 001AA804 3C 60 80 43 */ lis r3, lbl_8042CA54@ha
/* 801AD8C8 001AA808 38 63 CA 54 */ addi r3, r3, lbl_8042CA54@l
/* 801AD8CC 001AA80C 4B FF 21 3D */ bl dScnKy_env_light_c_NS_getDaytime
/* 801AD8D0 001AA810 FF E0 08 90 */ fmr f31, f1
/* 801AD8D4 001AA814 82 16 00 00 */ lwz r16, 0(r22)
/* 801AD8D8 001AA818 C0 02 A4 34 */ lfs f0, lbl_80453E34-_SDA2_BASE_(r2)
/* 801AD8DC 001AA81C D0 01 00 5C */ stfs f0, 0x5c(r1)
/* 801AD8E0 001AA820 C0 10 00 DC */ lfs f0, 0xdc(r16)
/* 801AD8E4 001AA824 D0 01 00 60 */ stfs f0, 0x60(r1)
/* 801AD8E8 001AA828 C0 02 A4 38 */ lfs f0, lbl_80453E38-_SDA2_BASE_(r2)
/* 801AD8EC 001AA82C D0 01 00 64 */ stfs f0, 0x64(r1)
/* 801AD8F0 001AA830 38 61 00 5C */ addi r3, r1, 0x5c
/* 801AD8F4 001AA834 38 90 00 D8 */ addi r4, r16, 0xd8
/* 801AD8F8 001AA838 48 19 9A A5 */ bl PSVECSquareDistance
/* 801AD8FC 001AA83C C0 02 A2 0C */ lfs f0, lbl_80453C0C-_SDA2_BASE_(r2)
/* 801AD900 001AA840 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 801AD904 001AA844 40 81 00 58 */ ble lbl_801AD95C
/* 801AD908 001AA848 FC 00 08 34 */ frsqrte f0, f1
/* 801AD90C 001AA84C C8 82 A2 10 */ lfd f4, lbl_80453C10-_SDA2_BASE_(r2)
/* 801AD910 001AA850 FC 44 00 32 */ fmul f2, f4, f0
/* 801AD914 001AA854 C8 62 A2 18 */ lfd f3, lbl_80453C18-_SDA2_BASE_(r2)
/* 801AD918 001AA858 FC 00 00 32 */ fmul f0, f0, f0
/* 801AD91C 001AA85C FC 01 00 32 */ fmul f0, f1, f0
/* 801AD920 001AA860 FC 03 00 28 */ fsub f0, f3, f0
/* 801AD924 001AA864 FC 02 00 32 */ fmul f0, f2, f0
/* 801AD928 001AA868 FC 44 00 32 */ fmul f2, f4, f0
/* 801AD92C 001AA86C FC 00 00 32 */ fmul f0, f0, f0
/* 801AD930 001AA870 FC 01 00 32 */ fmul f0, f1, f0
/* 801AD934 001AA874 FC 03 00 28 */ fsub f0, f3, f0
/* 801AD938 001AA878 FC 02 00 32 */ fmul f0, f2, f0
/* 801AD93C 001AA87C FC 44 00 32 */ fmul f2, f4, f0
/* 801AD940 001AA880 FC 00 00 32 */ fmul f0, f0, f0
/* 801AD944 001AA884 FC 01 00 32 */ fmul f0, f1, f0
/* 801AD948 001AA888 FC 03 00 28 */ fsub f0, f3, f0
/* 801AD94C 001AA88C FC 02 00 32 */ fmul f0, f2, f0
/* 801AD950 001AA890 FC 21 00 32 */ fmul f1, f1, f0
/* 801AD954 001AA894 FC 20 08 18 */ frsp f1, f1
/* 801AD958 001AA898 48 00 00 88 */ b lbl_801AD9E0
lbl_801AD95C:
/* 801AD95C 001AA89C C8 02 A2 20 */ lfd f0, lbl_80453C20-_SDA2_BASE_(r2)
/* 801AD960 001AA8A0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 801AD964 001AA8A4 40 80 00 10 */ bge lbl_801AD974
/* 801AD968 001AA8A8 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
/* 801AD96C 001AA8AC C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
/* 801AD970 001AA8B0 48 00 00 70 */ b lbl_801AD9E0
lbl_801AD974:
/* 801AD974 001AA8B4 D0 21 00 08 */ stfs f1, 8(r1)
/* 801AD978 001AA8B8 80 81 00 08 */ lwz r4, 8(r1)
/* 801AD97C 001AA8BC 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8
/* 801AD980 001AA8C0 3C 00 7F 80 */ lis r0, 0x7f80
/* 801AD984 001AA8C4 7C 03 00 00 */ cmpw r3, r0
/* 801AD988 001AA8C8 41 82 00 14 */ beq lbl_801AD99C
/* 801AD98C 001AA8CC 40 80 00 40 */ bge lbl_801AD9CC
/* 801AD990 001AA8D0 2C 03 00 00 */ cmpwi r3, 0
/* 801AD994 001AA8D4 41 82 00 20 */ beq lbl_801AD9B4
/* 801AD998 001AA8D8 48 00 00 34 */ b lbl_801AD9CC
lbl_801AD99C:
/* 801AD99C 001AA8DC 54 80 02 7F */ clrlwi. r0, r4, 9
/* 801AD9A0 001AA8E0 41 82 00 0C */ beq lbl_801AD9AC
/* 801AD9A4 001AA8E4 38 00 00 01 */ li r0, 1
/* 801AD9A8 001AA8E8 48 00 00 28 */ b lbl_801AD9D0
lbl_801AD9AC:
/* 801AD9AC 001AA8EC 38 00 00 02 */ li r0, 2
/* 801AD9B0 001AA8F0 48 00 00 20 */ b lbl_801AD9D0
lbl_801AD9B4:
/* 801AD9B4 001AA8F4 54 80 02 7F */ clrlwi. r0, r4, 9
/* 801AD9B8 001AA8F8 41 82 00 0C */ beq lbl_801AD9C4
/* 801AD9BC 001AA8FC 38 00 00 05 */ li r0, 5
/* 801AD9C0 001AA900 48 00 00 10 */ b lbl_801AD9D0
lbl_801AD9C4:
/* 801AD9C4 001AA904 38 00 00 03 */ li r0, 3
/* 801AD9C8 001AA908 48 00 00 08 */ b lbl_801AD9D0
lbl_801AD9CC:
/* 801AD9CC 001AA90C 38 00 00 04 */ li r0, 4
lbl_801AD9D0:
/* 801AD9D0 001AA910 2C 00 00 01 */ cmpwi r0, 1
/* 801AD9D4 001AA914 40 82 00 0C */ bne lbl_801AD9E0
/* 801AD9D8 001AA918 3C 60 80 45 */ lis r3, lbl_80450AE0@ha
/* 801AD9DC 001AA91C C0 23 0A E0 */ lfs f1, lbl_80450AE0@l(r3)
lbl_801AD9E0:
/* 801AD9E0 001AA920 C0 42 A4 3C */ lfs f2, lbl_80453E3C-_SDA2_BASE_(r2)
/* 801AD9E4 001AA924 C0 02 A4 40 */ lfs f0, lbl_80453E40-_SDA2_BASE_(r2)
/* 801AD9E8 001AA928 EC 01 00 24 */ fdivs f0, f1, f0
/* 801AD9EC 001AA92C EF A2 00 2A */ fadds f29, f2, f0
/* 801AD9F0 001AA930 C0 02 A2 48 */ lfs f0, lbl_80453C48-_SDA2_BASE_(r2)
/* 801AD9F4 001AA934 FC 1D 00 40 */ fcmpo cr0, f29, f0
/* 801AD9F8 001AA938 40 81 00 0C */ ble lbl_801ADA04
/* 801AD9FC 001AA93C FF A0 00 90 */ fmr f29, f0
/* 801ADA00 001AA940 48 00 00 14 */ b lbl_801ADA14
lbl_801ADA04:
/* 801ADA04 001AA944 C0 02 A2 0C */ lfs f0, lbl_80453C0C-_SDA2_BASE_(r2)
/* 801ADA08 001AA948 FC 1D 00 40 */ fcmpo cr0, f29, f0
/* 801ADA0C 001AA94C 40 80 00 08 */ bge lbl_801ADA14
/* 801ADA10 001AA950 FF A0 00 90 */ fmr f29, f0
lbl_801ADA14:
/* 801ADA14 001AA954 38 00 00 FF */ li r0, 0xff
/* 801ADA18 001AA958 98 01 00 0C */ stb r0, 0xc(r1)
/* 801ADA1C 001AA95C 98 01 00 0D */ stb r0, 0xd(r1)
/* 801ADA20 001AA960 98 01 00 0E */ stb r0, 0xe(r1)
/* 801ADA24 001AA964 98 01 00 0F */ stb r0, 0xf(r1)
/* 801ADA28 001AA968 C3 C2 A2 0C */ lfs f30, lbl_80453C0C-_SDA2_BASE_(r2)
/* 801ADA2C 001AA96C C0 02 A2 C8 */ lfs f0, lbl_80453CC8-_SDA2_BASE_(r2)
/* 801ADA30 001AA970 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 801ADA34 001AA974 4C 41 13 82 */ cror 2, 1, 2
/* 801ADA38 001AA978 40 82 00 20 */ bne lbl_801ADA58
/* 801ADA3C 001AA97C C0 02 A3 B0 */ lfs f0, lbl_80453DB0-_SDA2_BASE_(r2)
/* 801ADA40 001AA980 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 801ADA44 001AA984 40 80 00 4C */ bge lbl_801ADA90
/* 801ADA48 001AA988 EC 20 F8 28 */ fsubs f1, f0, f31
/* 801ADA4C 001AA98C C0 02 A2 AC */ lfs f0, lbl_80453CAC-_SDA2_BASE_(r2)
/* 801ADA50 001AA990 EF C1 00 24 */ fdivs f30, f1, f0
/* 801ADA54 001AA994 48 00 00 3C */ b lbl_801ADA90
lbl_801ADA58:
/* 801ADA58 001AA998 C0 22 A4 44 */ lfs f1, lbl_80453E44-_SDA2_BASE_(r2)
/* 801ADA5C 001AA99C FC 1F 08 40 */ fcmpo cr0, f31, f1
/* 801ADA60 001AA9A0 40 80 00 2C */ bge lbl_801ADA8C
/* 801ADA64 001AA9A4 C0 02 A2 BC */ lfs f0, lbl_80453CBC-_SDA2_BASE_(r2)
/* 801ADA68 001AA9A8 FC 1F 00 40 */ fcmpo cr0, f31, f0
/* 801ADA6C 001AA9AC 4C 41 13 82 */ cror 2, 1, 2
/* 801ADA70 001AA9B0 40 82 00 20 */ bne lbl_801ADA90
/* 801ADA74 001AA9B4 C0 42 A2 48 */ lfs f2, lbl_80453C48-_SDA2_BASE_(r2)
/* 801ADA78 001AA9B8 EC 21 F8 28 */ fsubs f1, f1, f31
/* 801ADA7C 001AA9BC C0 02 A2 AC */ lfs f0, lbl_80453CAC-_SDA2_BASE_(r2)
/* 801ADA80 001AA9C0 EC 01 00 24 */ fdivs f0, f1, f0
/* 801ADA84 001AA9C4 EF C2 00 28 */ fsubs f30, f2, f0
/* 801ADA88 001AA9C8 48 00 00 08 */ b lbl_801ADA90
lbl_801ADA8C:
/* 801ADA8C 001AA9CC C3 C2 A2 48 */ lfs f30, lbl_80453C48-_SDA2_BASE_(r2)
lbl_801ADA90:
/* 801ADA90 001AA9D0 88 1D 12 C8 */ lbz r0, 0x12c8(r29)
/* 801ADA94 001AA9D4 28 00 00 00 */ cmplwi r0, 0
/* 801ADA98 001AA9D8 41 82 00 08 */ beq lbl_801ADAA0
/* 801ADA9C 001AA9DC C3 C2 A2 0C */ lfs f30, lbl_80453C0C-_SDA2_BASE_(r2)
lbl_801ADAA0:
/* 801ADAA0 001AA9E0 38 00 00 FF */ li r0, 0xff
/* 801ADAA4 001AA9E4 98 01 00 0E */ stb r0, 0xe(r1)
/* 801ADAA8 001AA9E8 98 01 00 0D */ stb r0, 0xd(r1)
/* 801ADAAC 001AA9EC 98 01 00 0C */ stb r0, 0xc(r1)
/* 801ADAB0 001AA9F0 C0 10 00 E4 */ lfs f0, 0xe4(r16)
/* 801ADAB4 001AA9F4 D0 01 00 5C */ stfs f0, 0x5c(r1)
/* 801ADAB8 001AA9F8 C0 10 00 E8 */ lfs f0, 0xe8(r16)
/* 801ADABC 001AA9FC D0 01 00 60 */ stfs f0, 0x60(r1)
/* 801ADAC0 001AAA00 C0 10 00 EC */ lfs f0, 0xec(r16)
/* 801ADAC4 001AAA04 D0 01 00 64 */ stfs f0, 0x64(r1)
/* 801ADAC8 001AAA08 C0 10 00 DC */ lfs f0, 0xdc(r16)
/* 801ADACC 001AAA0C D0 01 00 60 */ stfs f0, 0x60(r1)
/* 801ADAD0 001AAA10 38 70 00 D8 */ addi r3, r16, 0xd8
/* 801ADAD4 001AAA14 38 81 00 5C */ addi r4, r1, 0x5c
/* 801ADAD8 001AAA18 38 A1 00 68 */ addi r5, r1, 0x68
/* 801ADADC 001AAA1C 4B EA DC 85 */ bl dKyr_get_vectle_calc
/* 801ADAE0 001AAA20 C0 22 A2 0C */ lfs f1, lbl_80453C0C-_SDA2_BASE_(r2)
/* 801ADAE4 001AAA24 FC 40 08 90 */ fmr f2, f1
/* 801ADAE8 001AAA28 C0 62 A4 48 */ lfs f3, lbl_80453E48-_SDA2_BASE_(r2)
/* 801ADAEC 001AAA2C C0 82 A4 4C */ lfs f4, lbl_80453E4C-_SDA2_BASE_(r2)
/* 801ADAF0 001AAA30 C0 A1 00 68 */ lfs f5, 0x68(r1)
/* 801ADAF4 001AAA34 C0 C1 00 70 */ lfs f6, 0x70(r1)
/* 801ADAF8 001AAA38 48 0B AD 9D */ bl cM3d_VectorProduct2d__Fffffff
/* 801ADAFC 001AAA3C C0 82 A2 F4 */ lfs f4, lbl_80453CF4-_SDA2_BASE_(r2)
/* 801ADB00 001AAA40 FC 01 20 40 */ fcmpo cr0, f1, f4
/* 801ADB04 001AAA44 40 80 00 10 */ bge lbl_801ADB14
/* 801ADB08 001AAA48 38 00 00 00 */ li r0, 0
/* 801ADB0C 001AAA4C 98 01 00 0F */ stb r0, 0xf(r1)
/* 801ADB10 001AAA50 48 00 00 4C */ b lbl_801ADB5C
lbl_801ADB14:
/* 801ADB14 001AAA54 C0 62 A2 48 */ lfs f3, lbl_80453C48-_SDA2_BASE_(r2)
/* 801ADB18 001AAA58 C0 42 A4 50 */ lfs f2, lbl_80453E50-_SDA2_BASE_(r2)
/* 801ADB1C 001AAA5C C0 02 A3 84 */ lfs f0, lbl_80453D84-_SDA2_BASE_(r2)
/* 801ADB20 001AAA60 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 801ADB24 001AAA64 40 81 00 0C */ ble lbl_801ADB30
/* 801ADB28 001AAA68 FC 00 18 90 */ fmr f0, f3
/* 801ADB2C 001AAA6C 48 00 00 10 */ b lbl_801ADB3C
lbl_801ADB30:
/* 801ADB30 001AAA70 EC 21 20 28 */ fsubs f1, f1, f4
/* 801ADB34 001AAA74 C0 02 A2 FC */ lfs f0, lbl_80453CFC-_SDA2_BASE_(r2)
/* 801ADB38 001AAA78 EC 01 00 24 */ fdivs f0, f1, f0
lbl_801ADB3C:
/* 801ADB3C 001AAA7C EC 02 00 32 */ fmuls f0, f2, f0
/* 801ADB40 001AAA80 EC 00 07 B2 */ fmuls f0, f0, f30
/* 801ADB44 001AAA84 EC 1D 00 32 */ fmuls f0, f29, f0
/* 801ADB48 001AAA88 EC 03 00 32 */ fmuls f0, f3, f0
/* 801ADB4C 001AAA8C FC 00 00 1E */ fctiwz f0, f0
/* 801ADB50 001AAA90 D8 01 01 B0 */ stfd f0, 0x1b0(r1)
/* 801ADB54 001AAA94 80 01 01 B4 */ lwz r0, 0x1b4(r1)
/* 801ADB58 001AAA98 98 01 00 0F */ stb r0, 0xf(r1)
lbl_801ADB5C:
/* 801ADB5C 001AAA9C 80 79 00 2C */ lwz r3, 0x2c(r25)
/* 801ADB60 001AAAA0 38 80 00 03 */ li r4, 3
/* 801ADB64 001AAAA4 38 A1 00 0C */ addi r5, r1, 0xc
/* 801ADB68 001AAAA8 81 83 00 00 */ lwz r12, 0(r3)
/* 801ADB6C 001AAAAC 81 8C 00 6C */ lwz r12, 0x6c(r12)
/* 801ADB70 001AAAB0 7D 89 03 A6 */ mtctr r12
/* 801ADB74 001AAAB4 4E 80 04 21 */ bctrl
lbl_801ADB78:
/* 801ADB78 001AAAB8 3A B5 00 01 */ addi r21, r21, 1
lbl_801ADB7C:
/* 801ADB7C 001AAABC 56 A3 04 3E */ clrlwi r3, r21, 0x10
/* 801ADB80 001AAAC0 A0 1A 00 5C */ lhz r0, 0x5c(r26)
/* 801ADB84 001AAAC4 7C 03 00 40 */ cmplw r3, r0
/* 801ADB88 001AAAC8 41 80 F2 2C */ blt lbl_801ACDB4
lbl_801ADB8C:
/* 801ADB8C 001AAACC E3 E1 02 28 */ psq_l f31, 552(r1), 0, 0
/* 801ADB90 001AAAD0 CB E1 02 20 */ lfd f31, 0x220(r1)
/* 801ADB94 001AAAD4 E3 C1 02 18 */ psq_l f30, 536(r1), 0, 0
/* 801ADB98 001AAAD8 CB C1 02 10 */ lfd f30, 0x210(r1)
/* 801ADB9C 001AAADC E3 A1 02 08 */ psq_l f29, 520(r1), 0, 0
/* 801ADBA0 001AAAE0 CB A1 02 00 */ lfd f29, 0x200(r1)
/* 801ADBA4 001AAAE4 39 61 02 00 */ addi r11, r1, 0x200
/* 801ADBA8 001AAAE8 48 1B 46 4D */ bl _restgpr_16
/* 801ADBAC 001AAAEC 80 01 02 34 */ lwz r0, 0x234(r1)
/* 801ADBB0 001AAAF0 7C 08 03 A6 */ mtlr r0
/* 801ADBB4 001AAAF4 38 21 02 30 */ addi r1, r1, 0x230
/* 801ADBB8 001AAAF8 4E 80 00 20 */ blr