.include "macros.inc" .section .ctors, "wa" # 0x80472F00 - 0x804732C0 lbl_constructor: .4byte __sinit_ShadowCylinder_cpp .section .rodata # 0x804732E0 - 0x8049E220 .balign 8 .global lbl_80483F58 lbl_80483F58: .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x3234362D .4byte 0x53686164 .4byte 0x6F774379 .4byte 0x6C696E64 .4byte 0x65720000 .global lbl_80483F78 lbl_80483F78: .4byte 0x53686164 .4byte 0x6F774379 .4byte 0x6C696E64 .4byte 0x65722E63 .4byte 0x70700000 .global lbl_80483F8C lbl_80483F8C: .asciz "P2Assert" .skip 3 .4byte 0x00000000 .float 1.0 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .float 1.0 .global lbl_80483FBC lbl_80483FBC: .4byte 0x53686164 .4byte 0x6F772054 .4byte 0x65787475 .4byte 0x72650000 .4byte 0x00000000 .section .data, "wa" # 0x8049E220 - 0x804EFC20 .balign 32 .global lbl_804C1780 lbl_804C1780: .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .global sHighCylinderDL__4Game sHighCylinderDL__4Game: .4byte 0xA0000C00 .4byte 0x00000100 .4byte 0x02000300 .4byte 0x04000500 .4byte 0x06000700 .4byte 0x08000900 .4byte 0x0A000BA0 .4byte 0x000C0017 .4byte 0x00160015 .4byte 0x00140013 .4byte 0x00120011 .4byte 0x0010000F .4byte 0x000E000D .4byte 0x000C9800 .4byte 0x1A000000 .4byte 0x0C000100 .4byte 0x0D000200 .4byte 0x0E000300 .4byte 0x0F000400 .4byte 0x10000500 .4byte 0x11000600 .4byte 0x12000700 .4byte 0x13000800 .4byte 0x14000900 .4byte 0x15000A00 .4byte 0x16000B00 .4byte 0x17000000 .4byte 0x0C000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .global sMidCylinderDL__4Game sMidCylinderDL__4Game: .4byte 0xA0000800 .4byte 0x18001900 .4byte 0x1A001B00 .4byte 0x1C001D00 .4byte 0x1E001FA0 .4byte 0x00080027 .4byte 0x00260025 .4byte 0x00240023 .4byte 0x00220021 .4byte 0x00209800 .4byte 0x12001800 .4byte 0x20001900 .4byte 0x21001A00 .4byte 0x22001B00 .4byte 0x23001C00 .4byte 0x24001D00 .4byte 0x25001E00 .4byte 0x26001F00 .4byte 0x27001800 .4byte 0x20000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .global sLowCylinderDL__4Game sLowCylinderDL__4Game: .4byte 0xA0000400 .4byte 0x28002900 .4byte 0x2A002BA0 .4byte 0x0004002F .4byte 0x002E002D .4byte 0x002C9800 .4byte 0x0A002800 .4byte 0x2C002900 .4byte 0x2D002A00 .4byte 0x2E002B00 .4byte 0x2F002800 .4byte 0x2C000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .4byte 0x00000000 .global __vt__Q24Game15ShadowCylinder3 __vt__Q24Game15ShadowCylinder3: .4byte 0 .4byte 0 .4byte setFilterTextureID__Q24Game15ShadowCylinder3Fi .4byte drawInit__Q24Game15ShadowCylinder3Fv .4byte drawCylinder__Q24Game15ShadowCylinder3FR7Matrixfi .4byte drawFinish__Q24Game15ShadowCylinder3Fv .global __vt__Q24Game15ShadowCylinder2 __vt__Q24Game15ShadowCylinder2: .4byte 0 .4byte 0 .4byte setFilterTextureID__Q24Game15ShadowCylinder2Fi .4byte drawInit__Q24Game15ShadowCylinder2Fv .4byte drawCylinder__Q24Game15ShadowCylinder2FR7Matrixfi .4byte drawFinish__Q24Game15ShadowCylinder2Fv .global __vt__Q24Game12CylinderBase __vt__Q24Game12CylinderBase: .4byte 0 .4byte 0 .4byte setFilterTextureID__Q24Game12CylinderBaseFi .4byte drawInit__Q24Game12CylinderBaseFv .4byte drawCylinder__Q24Game12CylinderBaseFR7Matrixfi .4byte drawFinish__Q24Game12CylinderBaseFv .section .bss # 0x804EFC20 - 0x8051467C .balign 8 .lcomm sCylinderVertPos__4Game, 0x240, 4 .section .sbss # 0x80514D80 - 0x80516360 .balign 8 gu32NAN___Q24Game5P2JST: .skip 0x4 gfNAN___Q24Game5P2JST: .skip 0x4 .section .sdata2, "a" # 0x80516360 - 0x80520E40 .balign 8 .global lbl_8051A618 lbl_8051A618: .4byte 0x40C90FDB .global lbl_8051A61C lbl_8051A61C: .float 0.5 .global lbl_8051A620 lbl_8051A620: .4byte 0x00000000 .global lbl_8051A624 lbl_8051A624: .4byte 0x43A2F983 .global lbl_8051A628 lbl_8051A628: .4byte 0xC3A2F983 .global lbl_8051A62C lbl_8051A62C: .4byte 0xBF800000 .global lbl_8051A630 lbl_8051A630: .4byte 0x43300000 .4byte 0x00000000 .global lbl_8051A638 lbl_8051A638: .4byte 0x43300000 .4byte 0x80000000 .global lbl_8051A640 lbl_8051A640: .float 1.0 .global lbl_8051A644 lbl_8051A644: .4byte 0x3F866666 .global lbl_8051A648 lbl_8051A648: .4byte 0x3FACCCCD .global lbl_8051A64C lbl_8051A64C: .4byte 0x46480000 .global lbl_8051A650 lbl_8051A650: .4byte 0x40000000 .global lbl_8051A654 lbl_8051A654: .4byte 0xFFFFFF04 .global lbl_8051A658 lbl_8051A658: .4byte 0xFFFFFF7F .4byte 0x00000000 .section .sbss2, "", @nobits # 0x80520E40 - 0x80520ED8 .balign 8 lbl_80520E88: .skip 0x4 .section .text, "ax" # 0x800056C0 - 0x80472F00 .global __ct__Q24Game12CylinderBaseFv __ct__Q24Game12CylinderBaseFv: /* 8023DA30 0023A970 94 21 FF 20 */ stwu r1, -0xe0(r1) /* 8023DA34 0023A974 7C 08 02 A6 */ mflr r0 /* 8023DA38 0023A978 90 01 00 E4 */ stw r0, 0xe4(r1) /* 8023DA3C 0023A97C DB E1 00 D0 */ stfd f31, 0xd0(r1) /* 8023DA40 0023A980 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 /* 8023DA44 0023A984 DB C1 00 C0 */ stfd f30, 0xc0(r1) /* 8023DA48 0023A988 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 /* 8023DA4C 0023A98C DB A1 00 B0 */ stfd f29, 0xb0(r1) /* 8023DA50 0023A990 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0 /* 8023DA54 0023A994 DB 81 00 A0 */ stfd f28, 0xa0(r1) /* 8023DA58 0023A998 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0 /* 8023DA5C 0023A99C DB 61 00 90 */ stfd f27, 0x90(r1) /* 8023DA60 0023A9A0 F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0 /* 8023DA64 0023A9A4 DB 41 00 80 */ stfd f26, 0x80(r1) /* 8023DA68 0023A9A8 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0 /* 8023DA6C 0023A9AC DB 21 00 70 */ stfd f25, 0x70(r1) /* 8023DA70 0023A9B0 F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0 /* 8023DA74 0023A9B4 DB 01 00 60 */ stfd f24, 0x60(r1) /* 8023DA78 0023A9B8 F3 01 00 68 */ psq_st f24, 104(r1), 0, qr0 /* 8023DA7C 0023A9BC BF 01 00 40 */ stmw r24, 0x40(r1) /* 8023DA80 0023A9C0 3C 80 80 4C */ lis r4, __vt__Q24Game12CylinderBase@ha /* 8023DA84 0023A9C4 7C 78 1B 78 */ mr r24, r3 /* 8023DA88 0023A9C8 38 04 19 40 */ addi r0, r4, __vt__Q24Game12CylinderBase@l /* 8023DA8C 0023A9CC 3C 60 80 12 */ lis r3, "__ct__10Vector3Fv"@ha /* 8023DA90 0023A9D0 38 83 F3 48 */ addi r4, r3, "__ct__10Vector3Fv"@l /* 8023DA94 0023A9D4 90 18 00 00 */ stw r0, 0(r24) /* 8023DA98 0023A9D8 3C 60 80 4C */ lis r3, lbl_804C1780@ha /* 8023DA9C 0023A9DC 38 A0 00 00 */ li r5, 0 /* 8023DAA0 0023A9E0 3B 63 17 80 */ addi r27, r3, lbl_804C1780@l /* 8023DAA4 0023A9E4 38 C0 00 0C */ li r6, 0xc /* 8023DAA8 0023A9E8 38 78 00 20 */ addi r3, r24, 0x20 /* 8023DAAC 0023A9EC 38 E0 00 02 */ li r7, 2 /* 8023DAB0 0023A9F0 4B E8 3D 8D */ bl __construct_array /* 8023DAB4 0023A9F4 3C 80 80 12 */ lis r4, "__ct__10Vector3Fv"@ha /* 8023DAB8 0023A9F8 38 78 00 38 */ addi r3, r24, 0x38 /* 8023DABC 0023A9FC 38 84 F3 48 */ addi r4, r4, "__ct__10Vector3Fv"@l /* 8023DAC0 0023AA00 38 A0 00 00 */ li r5, 0 /* 8023DAC4 0023AA04 38 C0 00 0C */ li r6, 0xc /* 8023DAC8 0023AA08 38 E0 00 02 */ li r7, 2 /* 8023DACC 0023AA0C 4B E8 3D 71 */ bl __construct_array /* 8023DAD0 0023AA10 38 60 00 0C */ li r3, 0xc /* 8023DAD4 0023AA14 4B DE 64 D9 */ bl __nwa__FUl /* 8023DAD8 0023AA18 3C A0 80 50 */ lis r5, sincosTable___5JMath@ha /* 8023DADC 0023AA1C 3C 80 80 4F */ lis r4, sCylinderVertPos__4Game@ha /* 8023DAE0 0023AA20 90 78 00 04 */ stw r3, 4(r24) /* 8023DAE4 0023AA24 3B C5 71 A0 */ addi r30, r5, sincosTable___5JMath@l /* 8023DAE8 0023AA28 CB A2 C2 D8 */ lfd f29, lbl_8051A638@sda21(r2) /* 8023DAEC 0023AA2C 3B E4 79 D0 */ addi r31, r4, sCylinderVertPos__4Game@l /* 8023DAF0 0023AA30 C3 C2 C2 C0 */ lfs f30, lbl_8051A620@sda21(r2) /* 8023DAF4 0023AA34 3B 20 00 00 */ li r25, 0 /* 8023DAF8 0023AA38 C3 E2 C2 C4 */ lfs f31, lbl_8051A624@sda21(r2) /* 8023DAFC 0023AA3C 3B 40 00 00 */ li r26, 0 /* 8023DB00 0023AA40 C3 02 C2 CC */ lfs f24, lbl_8051A62C@sda21(r2) /* 8023DB04 0023AA44 3F A0 43 30 */ lis r29, 0x4330 /* 8023DB08 0023AA48 C3 42 C2 B8 */ lfs f26, lbl_8051A618@sda21(r2) /* 8023DB0C 0023AA4C CB 62 C2 D0 */ lfd f27, lbl_8051A630@sda21(r2) /* 8023DB10 0023AA50 C3 82 C2 BC */ lfs f28, lbl_8051A61C@sda21(r2) .L_8023DB14: /* 8023DB14 0023AA54 2C 19 00 01 */ cmpwi r25, 1 /* 8023DB18 0023AA58 C3 22 C2 E0 */ lfs f25, lbl_8051A640@sda21(r2) /* 8023DB1C 0023AA5C 41 82 00 24 */ beq .L_8023DB40 /* 8023DB20 0023AA60 40 80 00 10 */ bge .L_8023DB30 /* 8023DB24 0023AA64 2C 19 00 00 */ cmpwi r25, 0 /* 8023DB28 0023AA68 40 80 00 24 */ bge .L_8023DB4C /* 8023DB2C 0023AA6C 48 00 00 20 */ b .L_8023DB4C .L_8023DB30: /* 8023DB30 0023AA70 2C 19 00 03 */ cmpwi r25, 3 /* 8023DB34 0023AA74 40 80 00 18 */ bge .L_8023DB4C /* 8023DB38 0023AA78 48 00 00 10 */ b .L_8023DB48 /* 8023DB3C 0023AA7C 48 00 00 10 */ b .L_8023DB4C .L_8023DB40: /* 8023DB40 0023AA80 C3 22 C2 E4 */ lfs f25, lbl_8051A644@sda21(r2) /* 8023DB44 0023AA84 48 00 00 08 */ b .L_8023DB4C .L_8023DB48: /* 8023DB48 0023AA88 C3 22 C2 E8 */ lfs f25, lbl_8051A648@sda21(r2) .L_8023DB4C: /* 8023DB4C 0023AA8C 38 60 00 0C */ li r3, 0xc /* 8023DB50 0023AA90 4B DE 63 55 */ bl __nw__FUl /* 8023DB54 0023AA94 7C 7C 1B 79 */ or. r28, r3, r3 /* 8023DB58 0023AA98 41 82 00 D8 */ beq .L_8023DC30 /* 8023DB5C 0023AA9C 38 00 00 00 */ li r0, 0 /* 8023DB60 0023AAA0 2C 19 00 01 */ cmpwi r25, 1 /* 8023DB64 0023AAA4 98 1C 00 00 */ stb r0, 0(r28) /* 8023DB68 0023AAA8 90 1C 00 04 */ stw r0, 4(r28) /* 8023DB6C 0023AAAC 90 1C 00 08 */ stw r0, 8(r28) /* 8023DB70 0023AAB0 41 82 00 3C */ beq .L_8023DBAC /* 8023DB74 0023AAB4 40 80 00 10 */ bge .L_8023DB84 /* 8023DB78 0023AAB8 2C 19 00 00 */ cmpwi r25, 0 /* 8023DB7C 0023AABC 40 80 00 14 */ bge .L_8023DB90 /* 8023DB80 0023AAC0 48 00 00 60 */ b .L_8023DBE0 .L_8023DB84: /* 8023DB84 0023AAC4 2C 19 00 03 */ cmpwi r25, 3 /* 8023DB88 0023AAC8 40 80 00 58 */ bge .L_8023DBE0 /* 8023DB8C 0023AACC 48 00 00 3C */ b .L_8023DBC8 .L_8023DB90: /* 8023DB90 0023AAD0 38 00 00 0C */ li r0, 0xc /* 8023DB94 0023AAD4 38 7B 00 20 */ addi r3, r27, 0x20 /* 8023DB98 0023AAD8 98 1C 00 00 */ stb r0, 0(r28) /* 8023DB9C 0023AADC 38 00 00 8D */ li r0, 0x8d /* 8023DBA0 0023AAE0 90 7C 00 04 */ stw r3, 4(r28) /* 8023DBA4 0023AAE4 90 1C 00 08 */ stw r0, 8(r28) /* 8023DBA8 0023AAE8 48 00 00 38 */ b .L_8023DBE0 .L_8023DBAC: /* 8023DBAC 0023AAEC 38 00 00 08 */ li r0, 8 /* 8023DBB0 0023AAF0 38 7B 00 C0 */ addi r3, r27, 0xc0 /* 8023DBB4 0023AAF4 98 1C 00 00 */ stb r0, 0(r28) /* 8023DBB8 0023AAF8 38 00 00 6D */ li r0, 0x6d /* 8023DBBC 0023AAFC 90 7C 00 04 */ stw r3, 4(r28) /* 8023DBC0 0023AB00 90 1C 00 08 */ stw r0, 8(r28) /* 8023DBC4 0023AB04 48 00 00 1C */ b .L_8023DBE0 .L_8023DBC8: /* 8023DBC8 0023AB08 38 00 00 04 */ li r0, 4 /* 8023DBCC 0023AB0C 38 7B 01 40 */ addi r3, r27, 0x140 /* 8023DBD0 0023AB10 98 1C 00 00 */ stb r0, 0(r28) /* 8023DBD4 0023AB14 38 00 00 4D */ li r0, 0x4d /* 8023DBD8 0023AB18 90 7C 00 04 */ stw r3, 4(r28) /* 8023DBDC 0023AB1C 90 1C 00 08 */ stw r0, 8(r28) .L_8023DBE0: /* 8023DBE0 0023AB20 88 1C 00 00 */ lbz r0, 0(r28) /* 8023DBE4 0023AB24 38 60 00 00 */ li r3, 0 /* 8023DBE8 0023AB28 28 00 00 00 */ cmplwi r0, 0 /* 8023DBEC 0023AB2C 41 82 00 20 */ beq .L_8023DC0C /* 8023DBF0 0023AB30 80 1C 00 04 */ lwz r0, 4(r28) /* 8023DBF4 0023AB34 28 00 00 00 */ cmplwi r0, 0 /* 8023DBF8 0023AB38 41 82 00 14 */ beq .L_8023DC0C /* 8023DBFC 0023AB3C 80 1C 00 08 */ lwz r0, 8(r28) /* 8023DC00 0023AB40 2C 00 00 00 */ cmpwi r0, 0 /* 8023DC04 0023AB44 41 82 00 08 */ beq .L_8023DC0C /* 8023DC08 0023AB48 38 60 00 01 */ li r3, 1 .L_8023DC0C: /* 8023DC0C 0023AB4C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 8023DC10 0023AB50 40 82 00 20 */ bne .L_8023DC30 /* 8023DC14 0023AB54 3C 60 80 48 */ lis r3, lbl_80483F78@ha /* 8023DC18 0023AB58 3C A0 80 48 */ lis r5, lbl_80483F8C@ha /* 8023DC1C 0023AB5C 38 63 3F 78 */ addi r3, r3, lbl_80483F78@l /* 8023DC20 0023AB60 38 80 00 BC */ li r4, 0xbc /* 8023DC24 0023AB64 38 A5 3F 8C */ addi r5, r5, lbl_80483F8C@l /* 8023DC28 0023AB68 4C C6 31 82 */ crclr 6 /* 8023DC2C 0023AB6C 4B DE CA 15 */ bl panic_f__12JUTExceptionFPCciPCce .L_8023DC30: /* 8023DC30 0023AB70 80 78 00 04 */ lwz r3, 4(r24) /* 8023DC34 0023AB74 2C 19 00 01 */ cmpwi r25, 1 /* 8023DC38 0023AB78 38 00 00 00 */ li r0, 0 /* 8023DC3C 0023AB7C 7F 83 D1 2E */ stwx r28, r3, r26 /* 8023DC40 0023AB80 80 78 00 04 */ lwz r3, 4(r24) /* 8023DC44 0023AB84 7C 83 D0 2E */ lwzx r4, r3, r26 /* 8023DC48 0023AB88 41 82 00 24 */ beq .L_8023DC6C /* 8023DC4C 0023AB8C 40 80 00 10 */ bge .L_8023DC5C /* 8023DC50 0023AB90 2C 19 00 00 */ cmpwi r25, 0 /* 8023DC54 0023AB94 40 80 00 24 */ bge .L_8023DC78 /* 8023DC58 0023AB98 48 00 00 20 */ b .L_8023DC78 .L_8023DC5C: /* 8023DC5C 0023AB9C 2C 19 00 03 */ cmpwi r25, 3 /* 8023DC60 0023ABA0 40 80 00 18 */ bge .L_8023DC78 /* 8023DC64 0023ABA4 48 00 00 10 */ b .L_8023DC74 /* 8023DC68 0023ABA8 48 00 00 10 */ b .L_8023DC78 .L_8023DC6C: /* 8023DC6C 0023ABAC 38 00 00 48 */ li r0, 0x48 /* 8023DC70 0023ABB0 48 00 00 08 */ b .L_8023DC78 .L_8023DC74: /* 8023DC74 0023ABB4 38 00 00 78 */ li r0, 0x78 .L_8023DC78: /* 8023DC78 0023ABB8 88 E4 00 00 */ lbz r7, 0(r4) /* 8023DC7C 0023ABBC 7C 05 03 78 */ mr r5, r0 /* 8023DC80 0023ABC0 93 A1 00 08 */ stw r29, 8(r1) /* 8023DC84 0023ABC4 54 06 10 3A */ slwi r6, r0, 2 /* 8023DC88 0023ABC8 38 60 00 00 */ li r3, 0 /* 8023DC8C 0023ABCC 90 E1 00 0C */ stw r7, 0xc(r1) /* 8023DC90 0023ABD0 C8 01 00 08 */ lfd f0, 8(r1) /* 8023DC94 0023ABD4 EC 00 D8 28 */ fsubs f0, f0, f27 /* 8023DC98 0023ABD8 EC 3A 00 24 */ fdivs f1, f26, f0 /* 8023DC9C 0023ABDC EC 01 07 32 */ fmuls f0, f1, f28 /* 8023DCA0 0023ABE0 48 00 01 6C */ b .L_8023DE0C .L_8023DCA4: /* 8023DCA4 0023ABE4 6C 67 80 00 */ xoris r7, r3, 0x8000 /* 8023DCA8 0023ABE8 93 A1 00 08 */ stw r29, 8(r1) /* 8023DCAC 0023ABEC 7D 23 42 14 */ add r9, r3, r8 /* 8023DCB0 0023ABF0 90 E1 00 0C */ stw r7, 0xc(r1) /* 8023DCB4 0023ABF4 C8 41 00 08 */ lfd f2, 8(r1) /* 8023DCB8 0023ABF8 EC 42 E8 28 */ fsubs f2, f2, f29 /* 8023DCBC 0023ABFC EC 82 00 72 */ fmuls f4, f2, f1 /* 8023DCC0 0023AC00 EC 64 00 28 */ fsubs f3, f4, f0 /* 8023DCC4 0023AC04 FC 40 18 90 */ fmr f2, f3 /* 8023DCC8 0023AC08 FC 03 F0 40 */ fcmpo cr0, f3, f30 /* 8023DCCC 0023AC0C 40 80 00 08 */ bge .L_8023DCD4 /* 8023DCD0 0023AC10 FC 40 18 50 */ fneg f2, f3 .L_8023DCD4: /* 8023DCD4 0023AC14 EC 42 07 F2 */ fmuls f2, f2, f31 /* 8023DCD8 0023AC18 7D 5F 32 14 */ add r10, r31, r6 /* 8023DCDC 0023AC1C FC 03 F0 40 */ fcmpo cr0, f3, f30 /* 8023DCE0 0023AC20 FC 40 10 1E */ fctiwz f2, f2 /* 8023DCE4 0023AC24 D8 41 00 10 */ stfd f2, 0x10(r1) /* 8023DCE8 0023AC28 80 E1 00 14 */ lwz r7, 0x14(r1) /* 8023DCEC 0023AC2C 54 E7 1C B8 */ rlwinm r7, r7, 3, 0x12, 0x1c /* 8023DCF0 0023AC30 7C FE 3A 14 */ add r7, r30, r7 /* 8023DCF4 0023AC34 C0 47 00 04 */ lfs f2, 4(r7) /* 8023DCF8 0023AC38 EC 59 00 B2 */ fmuls f2, f25, f2 /* 8023DCFC 0023AC3C D0 4A 00 00 */ stfs f2, 0(r10) /* 8023DD00 0023AC40 D3 CA 00 04 */ stfs f30, 4(r10) /* 8023DD04 0023AC44 40 80 00 30 */ bge .L_8023DD34 /* 8023DD08 0023AC48 C0 42 C2 C8 */ lfs f2, lbl_8051A628@sda21(r2) /* 8023DD0C 0023AC4C 3C E0 80 50 */ lis r7, sincosTable___5JMath@ha /* 8023DD10 0023AC50 38 E7 71 A0 */ addi r7, r7, sincosTable___5JMath@l /* 8023DD14 0023AC54 EC 43 00 B2 */ fmuls f2, f3, f2 /* 8023DD18 0023AC58 FC 40 10 1E */ fctiwz f2, f2 /* 8023DD1C 0023AC5C D8 41 00 18 */ stfd f2, 0x18(r1) /* 8023DD20 0023AC60 81 01 00 1C */ lwz r8, 0x1c(r1) /* 8023DD24 0023AC64 55 08 1C B8 */ rlwinm r8, r8, 3, 0x12, 0x1c /* 8023DD28 0023AC68 7C 47 44 2E */ lfsx f2, r7, r8 /* 8023DD2C 0023AC6C FC 40 10 50 */ fneg f2, f2 /* 8023DD30 0023AC70 48 00 00 24 */ b .L_8023DD54 .L_8023DD34: /* 8023DD34 0023AC74 EC 43 07 F2 */ fmuls f2, f3, f31 /* 8023DD38 0023AC78 3C E0 80 50 */ lis r7, sincosTable___5JMath@ha /* 8023DD3C 0023AC7C 38 E7 71 A0 */ addi r7, r7, sincosTable___5JMath@l /* 8023DD40 0023AC80 FC 40 10 1E */ fctiwz f2, f2 /* 8023DD44 0023AC84 D8 41 00 20 */ stfd f2, 0x20(r1) /* 8023DD48 0023AC88 81 01 00 24 */ lwz r8, 0x24(r1) /* 8023DD4C 0023AC8C 55 08 1C B8 */ rlwinm r8, r8, 3, 0x12, 0x1c /* 8023DD50 0023AC90 7C 47 44 2E */ lfsx f2, r7, r8 .L_8023DD54: /* 8023DD54 0023AC94 EC 59 00 B2 */ fmuls f2, f25, f2 /* 8023DD58 0023AC98 FC 60 20 90 */ fmr f3, f4 /* 8023DD5C 0023AC9C FC 04 F0 40 */ fcmpo cr0, f4, f30 /* 8023DD60 0023ACA0 D0 4A 00 08 */ stfs f2, 8(r10) /* 8023DD64 0023ACA4 40 80 00 08 */ bge .L_8023DD6C /* 8023DD68 0023ACA8 FC 60 20 50 */ fneg f3, f4 .L_8023DD6C: /* 8023DD6C 0023ACAC EC 43 07 F2 */ fmuls f2, f3, f31 /* 8023DD70 0023ACB0 1C E9 00 03 */ mulli r7, r9, 3 /* 8023DD74 0023ACB4 FC 04 F0 40 */ fcmpo cr0, f4, f30 /* 8023DD78 0023ACB8 FC 40 10 1E */ fctiwz f2, f2 /* 8023DD7C 0023ACBC 7C E0 3A 14 */ add r7, r0, r7 /* 8023DD80 0023ACC0 54 E7 10 3A */ slwi r7, r7, 2 /* 8023DD84 0023ACC4 7D 3F 3A 14 */ add r9, r31, r7 /* 8023DD88 0023ACC8 D8 41 00 28 */ stfd f2, 0x28(r1) /* 8023DD8C 0023ACCC 80 E1 00 2C */ lwz r7, 0x2c(r1) /* 8023DD90 0023ACD0 54 E7 1C B8 */ rlwinm r7, r7, 3, 0x12, 0x1c /* 8023DD94 0023ACD4 7C FE 3A 14 */ add r7, r30, r7 /* 8023DD98 0023ACD8 C0 47 00 04 */ lfs f2, 4(r7) /* 8023DD9C 0023ACDC EC 59 00 B2 */ fmuls f2, f25, f2 /* 8023DDA0 0023ACE0 D0 49 00 00 */ stfs f2, 0(r9) /* 8023DDA4 0023ACE4 D3 09 00 04 */ stfs f24, 4(r9) /* 8023DDA8 0023ACE8 40 80 00 30 */ bge .L_8023DDD8 /* 8023DDAC 0023ACEC C0 42 C2 C8 */ lfs f2, lbl_8051A628@sda21(r2) /* 8023DDB0 0023ACF0 3C E0 80 50 */ lis r7, sincosTable___5JMath@ha /* 8023DDB4 0023ACF4 38 E7 71 A0 */ addi r7, r7, sincosTable___5JMath@l /* 8023DDB8 0023ACF8 EC 44 00 B2 */ fmuls f2, f4, f2 /* 8023DDBC 0023ACFC FC 40 10 1E */ fctiwz f2, f2 /* 8023DDC0 0023AD00 D8 41 00 30 */ stfd f2, 0x30(r1) /* 8023DDC4 0023AD04 81 01 00 34 */ lwz r8, 0x34(r1) /* 8023DDC8 0023AD08 55 08 1C B8 */ rlwinm r8, r8, 3, 0x12, 0x1c /* 8023DDCC 0023AD0C 7C 47 44 2E */ lfsx f2, r7, r8 /* 8023DDD0 0023AD10 FC 40 10 50 */ fneg f2, f2 /* 8023DDD4 0023AD14 48 00 00 24 */ b .L_8023DDF8 .L_8023DDD8: /* 8023DDD8 0023AD18 EC 44 07 F2 */ fmuls f2, f4, f31 /* 8023DDDC 0023AD1C 3C E0 80 50 */ lis r7, sincosTable___5JMath@ha /* 8023DDE0 0023AD20 38 E7 71 A0 */ addi r7, r7, sincosTable___5JMath@l /* 8023DDE4 0023AD24 FC 40 10 1E */ fctiwz f2, f2 /* 8023DDE8 0023AD28 D8 41 00 38 */ stfd f2, 0x38(r1) /* 8023DDEC 0023AD2C 81 01 00 3C */ lwz r8, 0x3c(r1) /* 8023DDF0 0023AD30 55 08 1C B8 */ rlwinm r8, r8, 3, 0x12, 0x1c /* 8023DDF4 0023AD34 7C 47 44 2E */ lfsx f2, r7, r8 .L_8023DDF8: /* 8023DDF8 0023AD38 EC 59 00 B2 */ fmuls f2, f25, f2 /* 8023DDFC 0023AD3C 38 A5 00 03 */ addi r5, r5, 3 /* 8023DE00 0023AD40 38 C6 00 0C */ addi r6, r6, 0xc /* 8023DE04 0023AD44 38 63 00 01 */ addi r3, r3, 1 /* 8023DE08 0023AD48 D0 49 00 08 */ stfs f2, 8(r9) .L_8023DE0C: /* 8023DE0C 0023AD4C 89 04 00 00 */ lbz r8, 0(r4) /* 8023DE10 0023AD50 7C 03 40 00 */ cmpw r3, r8 /* 8023DE14 0023AD54 41 80 FE 90 */ blt .L_8023DCA4 /* 8023DE18 0023AD58 3B 39 00 01 */ addi r25, r25, 1 /* 8023DE1C 0023AD5C 3B 5A 00 04 */ addi r26, r26, 4 /* 8023DE20 0023AD60 2C 19 00 03 */ cmpwi r25, 3 /* 8023DE24 0023AD64 41 80 FC F0 */ blt .L_8023DB14 /* 8023DE28 0023AD68 48 1E 53 FD */ bl getRenderModeObj__6SystemFv /* 8023DE2C 0023AD6C A3 23 00 06 */ lhz r25, 6(r3) /* 8023DE30 0023AD70 48 1E 53 F5 */ bl getRenderModeObj__6SystemFv /* 8023DE34 0023AD74 A0 83 00 04 */ lhz r4, 4(r3) /* 8023DE38 0023AD78 3C 00 43 30 */ lis r0, 0x4330 /* 8023DE3C 0023AD7C C0 A2 C2 C0 */ lfs f5, lbl_8051A620@sda21(r2) /* 8023DE40 0023AD80 7F 03 C3 78 */ mr r3, r24 /* 8023DE44 0023AD84 90 81 00 3C */ stw r4, 0x3c(r1) /* 8023DE48 0023AD88 C8 82 C2 D0 */ lfd f4, lbl_8051A630@sda21(r2) /* 8023DE4C 0023AD8C 90 01 00 38 */ stw r0, 0x38(r1) /* 8023DE50 0023AD90 C0 22 C2 E0 */ lfs f1, lbl_8051A640@sda21(r2) /* 8023DE54 0023AD94 C8 01 00 38 */ lfd f0, 0x38(r1) /* 8023DE58 0023AD98 D0 B8 00 10 */ stfs f5, 0x10(r24) /* 8023DE5C 0023AD9C EC 60 20 28 */ fsubs f3, f0, f4 /* 8023DE60 0023ADA0 C0 02 C2 EC */ lfs f0, lbl_8051A64C@sda21(r2) /* 8023DE64 0023ADA4 D0 B8 00 14 */ stfs f5, 0x14(r24) /* 8023DE68 0023ADA8 93 21 00 34 */ stw r25, 0x34(r1) /* 8023DE6C 0023ADAC 90 01 00 30 */ stw r0, 0x30(r1) /* 8023DE70 0023ADB0 C8 41 00 30 */ lfd f2, 0x30(r1) /* 8023DE74 0023ADB4 D0 78 00 18 */ stfs f3, 0x18(r24) /* 8023DE78 0023ADB8 EC 42 20 28 */ fsubs f2, f2, f4 /* 8023DE7C 0023ADBC D0 58 00 1C */ stfs f2, 0x1c(r24) /* 8023DE80 0023ADC0 D0 B8 00 20 */ stfs f5, 0x20(r24) /* 8023DE84 0023ADC4 D0 B8 00 24 */ stfs f5, 0x24(r24) /* 8023DE88 0023ADC8 D0 38 00 28 */ stfs f1, 0x28(r24) /* 8023DE8C 0023ADCC D0 B8 00 38 */ stfs f5, 0x38(r24) /* 8023DE90 0023ADD0 D0 B8 00 3C */ stfs f5, 0x3c(r24) /* 8023DE94 0023ADD4 D0 38 00 40 */ stfs f1, 0x40(r24) /* 8023DE98 0023ADD8 D0 18 00 50 */ stfs f0, 0x50(r24) /* 8023DE9C 0023ADDC D0 B8 00 2C */ stfs f5, 0x2c(r24) /* 8023DEA0 0023ADE0 D0 B8 00 30 */ stfs f5, 0x30(r24) /* 8023DEA4 0023ADE4 D0 38 00 34 */ stfs f1, 0x34(r24) /* 8023DEA8 0023ADE8 D0 B8 00 44 */ stfs f5, 0x44(r24) /* 8023DEAC 0023ADEC D0 B8 00 48 */ stfs f5, 0x48(r24) /* 8023DEB0 0023ADF0 D0 38 00 4C */ stfs f1, 0x4c(r24) /* 8023DEB4 0023ADF4 D0 18 00 54 */ stfs f0, 0x54(r24) /* 8023DEB8 0023ADF8 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 /* 8023DEBC 0023ADFC CB E1 00 D0 */ lfd f31, 0xd0(r1) /* 8023DEC0 0023AE00 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 /* 8023DEC4 0023AE04 CB C1 00 C0 */ lfd f30, 0xc0(r1) /* 8023DEC8 0023AE08 E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0 /* 8023DECC 0023AE0C CB A1 00 B0 */ lfd f29, 0xb0(r1) /* 8023DED0 0023AE10 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0 /* 8023DED4 0023AE14 CB 81 00 A0 */ lfd f28, 0xa0(r1) /* 8023DED8 0023AE18 E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0 /* 8023DEDC 0023AE1C CB 61 00 90 */ lfd f27, 0x90(r1) /* 8023DEE0 0023AE20 E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0 /* 8023DEE4 0023AE24 CB 41 00 80 */ lfd f26, 0x80(r1) /* 8023DEE8 0023AE28 E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0 /* 8023DEEC 0023AE2C CB 21 00 70 */ lfd f25, 0x70(r1) /* 8023DEF0 0023AE30 E3 01 00 68 */ psq_l f24, 104(r1), 0, qr0 /* 8023DEF4 0023AE34 CB 01 00 60 */ lfd f24, 0x60(r1) /* 8023DEF8 0023AE38 BB 01 00 40 */ lmw r24, 0x40(r1) /* 8023DEFC 0023AE3C 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 8023DF00 0023AE40 7C 08 03 A6 */ mtlr r0 /* 8023DF04 0023AE44 38 21 00 E0 */ addi r1, r1, 0xe0 /* 8023DF08 0023AE48 4E 80 00 20 */ blr .global setColor__Q24Game12CylinderBaseFP6Color4 setColor__Q24Game12CylinderBaseFP6Color4: /* 8023DF0C 0023AE4C 90 83 00 08 */ stw r4, 8(r3) /* 8023DF10 0023AE50 4E 80 00 20 */ blr .global "setShadowRect__Q24Game12CylinderBaseFR7Rect" "setShadowRect__Q24Game12CylinderBaseFR7Rect": /* 8023DF14 0023AE54 C0 04 00 00 */ lfs f0, 0(r4) /* 8023DF18 0023AE58 D0 03 00 10 */ stfs f0, 0x10(r3) /* 8023DF1C 0023AE5C C0 04 00 04 */ lfs f0, 4(r4) /* 8023DF20 0023AE60 D0 03 00 14 */ stfs f0, 0x14(r3) /* 8023DF24 0023AE64 C0 04 00 08 */ lfs f0, 8(r4) /* 8023DF28 0023AE68 D0 03 00 18 */ stfs f0, 0x18(r3) /* 8023DF2C 0023AE6C C0 04 00 0C */ lfs f0, 0xc(r4) /* 8023DF30 0023AE70 D0 03 00 1C */ stfs f0, 0x1c(r3) /* 8023DF34 0023AE74 4E 80 00 20 */ blr .global setCameraParms__Q24Game12CylinderBaseFP6Camerai setCameraParms__Q24Game12CylinderBaseFP6Camerai: /* 8023DF38 0023AE78 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8023DF3C 0023AE7C 7C 08 02 A6 */ mflr r0 /* 8023DF40 0023AE80 90 01 00 34 */ stw r0, 0x34(r1) /* 8023DF44 0023AE84 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8023DF48 0023AE88 93 C1 00 28 */ stw r30, 0x28(r1) /* 8023DF4C 0023AE8C 7C BE 2B 78 */ mr r30, r5 /* 8023DF50 0023AE90 93 A1 00 24 */ stw r29, 0x24(r1) /* 8023DF54 0023AE94 7C 9D 23 78 */ mr r29, r4 /* 8023DF58 0023AE98 93 81 00 20 */ stw r28, 0x20(r1) /* 8023DF5C 0023AE9C 7C 7C 1B 78 */ mr r28, r3 /* 8023DF60 0023AEA0 38 61 00 14 */ addi r3, r1, 0x14 /* 8023DF64 0023AEA4 81 84 00 00 */ lwz r12, 0(r4) /* 8023DF68 0023AEA8 81 8C 00 4C */ lwz r12, 0x4c(r12) /* 8023DF6C 0023AEAC 7D 89 03 A6 */ mtctr r12 /* 8023DF70 0023AEB0 4E 80 04 21 */ bctrl /* 8023DF74 0023AEB4 1F FE 00 0C */ mulli r31, r30, 0xc /* 8023DF78 0023AEB8 C0 01 00 14 */ lfs f0, 0x14(r1) /* 8023DF7C 0023AEBC 7F A4 EB 78 */ mr r4, r29 /* 8023DF80 0023AEC0 38 61 00 08 */ addi r3, r1, 8 /* 8023DF84 0023AEC4 7C BC FA 14 */ add r5, r28, r31 /* 8023DF88 0023AEC8 D0 05 00 20 */ stfs f0, 0x20(r5) /* 8023DF8C 0023AECC C0 01 00 18 */ lfs f0, 0x18(r1) /* 8023DF90 0023AED0 D0 05 00 24 */ stfs f0, 0x24(r5) /* 8023DF94 0023AED4 C0 01 00 1C */ lfs f0, 0x1c(r1) /* 8023DF98 0023AED8 D0 05 00 28 */ stfs f0, 0x28(r5) /* 8023DF9C 0023AEDC 48 1D C3 39 */ bl getViewVector__11CullFrustumFv /* 8023DFA0 0023AEE0 C0 01 00 08 */ lfs f0, 8(r1) /* 8023DFA4 0023AEE4 7C 9C FA 14 */ add r4, r28, r31 /* 8023DFA8 0023AEE8 57 C0 10 3A */ slwi r0, r30, 2 /* 8023DFAC 0023AEEC D0 04 00 38 */ stfs f0, 0x38(r4) /* 8023DFB0 0023AEF0 7C 7C 02 14 */ add r3, r28, r0 /* 8023DFB4 0023AEF4 C0 01 00 0C */ lfs f0, 0xc(r1) /* 8023DFB8 0023AEF8 D0 04 00 3C */ stfs f0, 0x3c(r4) /* 8023DFBC 0023AEFC C0 01 00 10 */ lfs f0, 0x10(r1) /* 8023DFC0 0023AF00 D0 04 00 40 */ stfs f0, 0x40(r4) /* 8023DFC4 0023AF04 C0 1D 01 38 */ lfs f0, 0x138(r29) /* 8023DFC8 0023AF08 D0 03 00 50 */ stfs f0, 0x50(r3) /* 8023DFCC 0023AF0C 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8023DFD0 0023AF10 83 C1 00 28 */ lwz r30, 0x28(r1) /* 8023DFD4 0023AF14 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8023DFD8 0023AF18 83 81 00 20 */ lwz r28, 0x20(r1) /* 8023DFDC 0023AF1C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8023DFE0 0023AF20 7C 08 03 A6 */ mtlr r0 /* 8023DFE4 0023AF24 38 21 00 30 */ addi r1, r1, 0x30 /* 8023DFE8 0023AF28 4E 80 00 20 */ blr .global makeSRT__Q24Game12CylinderBaseFR7MatrixfRQ24Game11ShadowParam makeSRT__Q24Game12CylinderBaseFR7MatrixfRQ24Game11ShadowParam: /* 8023DFEC 0023AF2C C0 25 00 10 */ lfs f1, 0x10(r5) /* 8023DFF0 0023AF30 C0 02 C2 E0 */ lfs f0, lbl_8051A640@sda21(r2) /* 8023DFF4 0023AF34 C0 65 00 00 */ lfs f3, 0(r5) /* 8023DFF8 0023AF38 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8023DFFC 0023AF3C C0 85 00 04 */ lfs f4, 4(r5) /* 8023E000 0023AF40 C0 A5 00 08 */ lfs f5, 8(r5) /* 8023E004 0023AF44 C0 C5 00 1C */ lfs f6, 0x1c(r5) /* 8023E008 0023AF48 C0 E5 00 18 */ lfs f7, 0x18(r5) /* 8023E00C 0023AF4C 4C 41 13 82 */ cror 2, 1, 2 /* 8023E010 0023AF50 41 82 00 14 */ beq .L_8023E024 /* 8023E014 0023AF54 C0 42 C2 C0 */ lfs f2, lbl_8051A620@sda21(r2) /* 8023E018 0023AF58 FC 01 10 40 */ fcmpo cr0, f1, f2 /* 8023E01C 0023AF5C 4C 40 13 82 */ cror 2, 0, 2 /* 8023E020 0023AF60 40 82 00 3C */ bne .L_8023E05C .L_8023E024: /* 8023E024 0023AF64 D0 C4 00 00 */ stfs f6, 0(r4) /* 8023E028 0023AF68 C0 02 C2 C0 */ lfs f0, lbl_8051A620@sda21(r2) /* 8023E02C 0023AF6C D0 04 00 10 */ stfs f0, 0x10(r4) /* 8023E030 0023AF70 D0 04 00 20 */ stfs f0, 0x20(r4) /* 8023E034 0023AF74 D0 04 00 04 */ stfs f0, 4(r4) /* 8023E038 0023AF78 D0 E4 00 14 */ stfs f7, 0x14(r4) /* 8023E03C 0023AF7C D0 04 00 24 */ stfs f0, 0x24(r4) /* 8023E040 0023AF80 D0 04 00 08 */ stfs f0, 8(r4) /* 8023E044 0023AF84 D0 04 00 18 */ stfs f0, 0x18(r4) /* 8023E048 0023AF88 D0 C4 00 28 */ stfs f6, 0x28(r4) /* 8023E04C 0023AF8C D0 64 00 0C */ stfs f3, 0xc(r4) /* 8023E050 0023AF90 D0 84 00 1C */ stfs f4, 0x1c(r4) /* 8023E054 0023AF94 D0 A4 00 2C */ stfs f5, 0x2c(r4) /* 8023E058 0023AF98 4E 80 00 20 */ blr .L_8023E05C: /* 8023E05C 0023AF9C D0 C4 00 00 */ stfs f6, 0(r4) /* 8023E060 0023AFA0 C0 25 00 0C */ lfs f1, 0xc(r5) /* 8023E064 0023AFA4 C0 05 00 10 */ lfs f0, 0x10(r5) /* 8023E068 0023AFA8 FC 20 08 50 */ fneg f1, f1 /* 8023E06C 0023AFAC EC 01 00 24 */ fdivs f0, f1, f0 /* 8023E070 0023AFB0 EC 06 00 32 */ fmuls f0, f6, f0 /* 8023E074 0023AFB4 D0 04 00 10 */ stfs f0, 0x10(r4) /* 8023E078 0023AFB8 D0 44 00 20 */ stfs f2, 0x20(r4) /* 8023E07C 0023AFBC D0 44 00 04 */ stfs f2, 4(r4) /* 8023E080 0023AFC0 D0 E4 00 14 */ stfs f7, 0x14(r4) /* 8023E084 0023AFC4 D0 44 00 24 */ stfs f2, 0x24(r4) /* 8023E088 0023AFC8 D0 44 00 08 */ stfs f2, 8(r4) /* 8023E08C 0023AFCC C0 25 00 14 */ lfs f1, 0x14(r5) /* 8023E090 0023AFD0 C0 05 00 10 */ lfs f0, 0x10(r5) /* 8023E094 0023AFD4 FC 20 08 50 */ fneg f1, f1 /* 8023E098 0023AFD8 EC 01 00 24 */ fdivs f0, f1, f0 /* 8023E09C 0023AFDC EC 06 00 32 */ fmuls f0, f6, f0 /* 8023E0A0 0023AFE0 D0 04 00 18 */ stfs f0, 0x18(r4) /* 8023E0A4 0023AFE4 D0 C4 00 28 */ stfs f6, 0x28(r4) /* 8023E0A8 0023AFE8 D0 64 00 0C */ stfs f3, 0xc(r4) /* 8023E0AC 0023AFEC D0 84 00 1C */ stfs f4, 0x1c(r4) /* 8023E0B0 0023AFF0 D0 A4 00 2C */ stfs f5, 0x2c(r4) /* 8023E0B4 0023AFF4 4E 80 00 20 */ blr .global getCylinderType__Q24Game12CylinderBaseFRQ24Game11ShadowParami getCylinderType__Q24Game12CylinderBaseFRQ24Game11ShadowParami: /* 8023E0B8 0023AFF8 1C C5 00 0C */ mulli r6, r5, 0xc /* 8023E0BC 0023AFFC 54 A0 10 3A */ slwi r0, r5, 2 /* 8023E0C0 0023B000 80 E3 00 0C */ lwz r7, 0xc(r3) /* 8023E0C4 0023B004 7C A3 02 14 */ add r5, r3, r0 /* 8023E0C8 0023B008 C0 24 00 04 */ lfs f1, 4(r4) /* 8023E0CC 0023B00C 7C 63 32 14 */ add r3, r3, r6 /* 8023E0D0 0023B010 C0 03 00 24 */ lfs f0, 0x24(r3) /* 8023E0D4 0023B014 C0 64 00 00 */ lfs f3, 0(r4) /* 8023E0D8 0023B018 EC 01 00 28 */ fsubs f0, f1, f0 /* 8023E0DC 0023B01C C0 43 00 20 */ lfs f2, 0x20(r3) /* 8023E0E0 0023B020 C0 23 00 3C */ lfs f1, 0x3c(r3) /* 8023E0E4 0023B024 EC 43 10 28 */ fsubs f2, f3, f2 /* 8023E0E8 0023B028 C0 84 00 08 */ lfs f4, 8(r4) /* 8023E0EC 0023B02C EC 01 00 32 */ fmuls f0, f1, f0 /* 8023E0F0 0023B030 C0 63 00 28 */ lfs f3, 0x28(r3) /* 8023E0F4 0023B034 C0 23 00 38 */ lfs f1, 0x38(r3) /* 8023E0F8 0023B038 EC A4 18 28 */ fsubs f5, f4, f3 /* 8023E0FC 0023B03C C0 85 00 50 */ lfs f4, 0x50(r5) /* 8023E100 0023B040 C0 64 00 1C */ lfs f3, 0x1c(r4) /* 8023E104 0023B044 EC 01 00 BA */ fmadds f0, f1, f2, f0 /* 8023E108 0023B048 C0 23 00 40 */ lfs f1, 0x40(r3) /* 8023E10C 0023B04C EC 44 00 F2 */ fmuls f2, f4, f3 /* 8023E110 0023B050 EC 21 01 7A */ fmadds f1, f1, f5, f0 /* 8023E114 0023B054 C0 07 00 24 */ lfs f0, 0x24(r7) /* 8023E118 0023B058 EC 22 08 24 */ fdivs f1, f2, f1 /* 8023E11C 0023B05C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8023E120 0023B060 40 81 00 0C */ ble .L_8023E12C /* 8023E124 0023B064 38 60 00 00 */ li r3, 0 /* 8023E128 0023B068 4E 80 00 20 */ blr .L_8023E12C: /* 8023E12C 0023B06C C0 07 00 4C */ lfs f0, 0x4c(r7) /* 8023E130 0023B070 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8023E134 0023B074 40 81 00 0C */ ble .L_8023E140 /* 8023E138 0023B078 38 60 00 01 */ li r3, 1 /* 8023E13C 0023B07C 4E 80 00 20 */ blr .L_8023E140: /* 8023E140 0023B080 C0 02 C2 C0 */ lfs f0, lbl_8051A620@sda21(r2) /* 8023E144 0023B084 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 8023E148 0023B088 40 81 00 0C */ ble .L_8023E154 /* 8023E14C 0023B08C 38 60 00 02 */ li r3, 2 /* 8023E150 0023B090 4E 80 00 20 */ blr .L_8023E154: /* 8023E154 0023B094 38 60 00 00 */ li r3, 0 /* 8023E158 0023B098 4E 80 00 20 */ blr .global setFilterTextureID__Q24Game12CylinderBaseFi setFilterTextureID__Q24Game12CylinderBaseFi: /* 8023E15C 0023B09C 4E 80 00 20 */ blr .global drawInit__Q24Game12CylinderBaseFv drawInit__Q24Game12CylinderBaseFv: /* 8023E160 0023B0A0 4E 80 00 20 */ blr .global drawCylinder__Q24Game12CylinderBaseFR7Matrixfi drawCylinder__Q24Game12CylinderBaseFR7Matrixfi: /* 8023E164 0023B0A4 4E 80 00 20 */ blr .global drawFinish__Q24Game12CylinderBaseFv drawFinish__Q24Game12CylinderBaseFv: /* 8023E168 0023B0A8 4E 80 00 20 */ blr .global __ct__Q24Game15ShadowCylinder2FPQ24Game11ShadowParmsP6Color4 __ct__Q24Game15ShadowCylinder2FPQ24Game11ShadowParmsP6Color4: /* 8023E16C 0023B0AC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023E170 0023B0B0 7C 08 02 A6 */ mflr r0 /* 8023E174 0023B0B4 90 01 00 24 */ stw r0, 0x24(r1) /* 8023E178 0023B0B8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8023E17C 0023B0BC 7C BF 2B 78 */ mr r31, r5 /* 8023E180 0023B0C0 93 C1 00 18 */ stw r30, 0x18(r1) /* 8023E184 0023B0C4 7C 9E 23 78 */ mr r30, r4 /* 8023E188 0023B0C8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8023E18C 0023B0CC 7C 7D 1B 78 */ mr r29, r3 /* 8023E190 0023B0D0 93 81 00 10 */ stw r28, 0x10(r1) /* 8023E194 0023B0D4 4B FF F8 9D */ bl __ct__Q24Game12CylinderBaseFv /* 8023E198 0023B0D8 3C 80 80 4C */ lis r4, __vt__Q24Game15ShadowCylinder2@ha /* 8023E19C 0023B0DC 3C 60 80 48 */ lis r3, lbl_80483FBC@ha /* 8023E1A0 0023B0E0 38 04 19 28 */ addi r0, r4, __vt__Q24Game15ShadowCylinder2@l /* 8023E1A4 0023B0E4 38 A0 00 00 */ li r5, 0 /* 8023E1A8 0023B0E8 90 1D 00 00 */ stw r0, 0(r29) /* 8023E1AC 0023B0EC 38 83 3F BC */ addi r4, r3, lbl_80483FBC@l /* 8023E1B0 0023B0F0 80 6D 9A EC */ lwz r3, sys@sda21(r13) /* 8023E1B4 0023B0F4 48 1E 51 A9 */ bl heapStatusStart__6SystemFPcP7JKRHeap /* 8023E1B8 0023B0F8 48 1E 50 6D */ bl getRenderModeObj__6SystemFv /* 8023E1BC 0023B0FC A3 83 00 06 */ lhz r28, 6(r3) /* 8023E1C0 0023B100 48 1E 50 65 */ bl getRenderModeObj__6SystemFv /* 8023E1C4 0023B104 A0 03 00 04 */ lhz r0, 4(r3) /* 8023E1C8 0023B108 57 84 FC 7E */ rlwinm r4, r28, 0x1f, 0x11, 0x1f /* 8023E1CC 0023B10C 38 A0 00 27 */ li r5, 0x27 /* 8023E1D0 0023B110 38 C0 00 00 */ li r6, 0 /* 8023E1D4 0023B114 54 03 FC 7E */ rlwinm r3, r0, 0x1f, 0x11, 0x1f /* 8023E1D8 0023B118 38 E0 00 00 */ li r7, 0 /* 8023E1DC 0023B11C 4B EA 8D 7D */ bl GXGetTexBufferSize /* 8023E1E0 0023B120 80 8D 93 E8 */ lwz r4, gameSystem__4Game@sda21(r13) /* 8023E1E4 0023B124 7C 7C 1B 78 */ mr r28, r3 /* 8023E1E8 0023B128 28 04 00 00 */ cmplwi r4, 0 /* 8023E1EC 0023B12C 41 82 00 5C */ beq .L_8023E248 /* 8023E1F0 0023B130 80 64 00 44 */ lwz r3, 0x44(r4) /* 8023E1F4 0023B134 38 00 00 00 */ li r0, 0 /* 8023E1F8 0023B138 2C 03 00 01 */ cmpwi r3, 1 /* 8023E1FC 0023B13C 41 82 00 0C */ beq .L_8023E208 /* 8023E200 0023B140 2C 03 00 03 */ cmpwi r3, 3 /* 8023E204 0023B144 40 82 00 08 */ bne .L_8023E20C .L_8023E208: /* 8023E208 0023B148 38 00 00 01 */ li r0, 1 .L_8023E20C: /* 8023E20C 0023B14C 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 8023E210 0023B150 40 82 00 38 */ bne .L_8023E248 /* 8023E214 0023B154 38 60 00 04 */ li r3, 4 /* 8023E218 0023B158 38 80 00 20 */ li r4, 0x20 /* 8023E21C 0023B15C 4B DE 5D DD */ bl __nwa__FUli /* 8023E220 0023B160 90 7D 00 58 */ stw r3, 0x58(r29) /* 8023E224 0023B164 7F 83 E3 78 */ mr r3, r28 /* 8023E228 0023B168 38 80 00 20 */ li r4, 0x20 /* 8023E22C 0023B16C 4B DE 5D CD */ bl __nwa__FUli /* 8023E230 0023B170 80 9D 00 58 */ lwz r4, 0x58(r29) /* 8023E234 0023B174 90 64 00 00 */ stw r3, 0(r4) /* 8023E238 0023B178 38 60 00 20 */ li r3, 0x20 /* 8023E23C 0023B17C 4B DE 5D 71 */ bl __nwa__FUl /* 8023E240 0023B180 90 7D 00 5C */ stw r3, 0x5c(r29) /* 8023E244 0023B184 48 00 00 48 */ b .L_8023E28C .L_8023E248: /* 8023E248 0023B188 38 60 00 08 */ li r3, 8 /* 8023E24C 0023B18C 38 80 00 20 */ li r4, 0x20 /* 8023E250 0023B190 4B DE 5D A9 */ bl __nwa__FUli /* 8023E254 0023B194 90 7D 00 58 */ stw r3, 0x58(r29) /* 8023E258 0023B198 7F 83 E3 78 */ mr r3, r28 /* 8023E25C 0023B19C 38 80 00 20 */ li r4, 0x20 /* 8023E260 0023B1A0 4B DE 5D 99 */ bl __nwa__FUli /* 8023E264 0023B1A4 80 BD 00 58 */ lwz r5, 0x58(r29) /* 8023E268 0023B1A8 38 80 00 20 */ li r4, 0x20 /* 8023E26C 0023B1AC 90 65 00 00 */ stw r3, 0(r5) /* 8023E270 0023B1B0 7F 83 E3 78 */ mr r3, r28 /* 8023E274 0023B1B4 4B DE 5D 85 */ bl __nwa__FUli /* 8023E278 0023B1B8 80 9D 00 58 */ lwz r4, 0x58(r29) /* 8023E27C 0023B1BC 90 64 00 04 */ stw r3, 4(r4) /* 8023E280 0023B1C0 38 60 00 40 */ li r3, 0x40 /* 8023E284 0023B1C4 4B DE 5D 29 */ bl __nwa__FUl /* 8023E288 0023B1C8 90 7D 00 5C */ stw r3, 0x5c(r29) .L_8023E28C: /* 8023E28C 0023B1CC 93 DD 00 0C */ stw r30, 0xc(r29) /* 8023E290 0023B1D0 3C 60 80 48 */ lis r3, lbl_80483FBC@ha /* 8023E294 0023B1D4 38 00 00 00 */ li r0, 0 /* 8023E298 0023B1D8 93 FD 00 08 */ stw r31, 8(r29) /* 8023E29C 0023B1DC 38 83 3F BC */ addi r4, r3, lbl_80483FBC@l /* 8023E2A0 0023B1E0 90 1D 00 60 */ stw r0, 0x60(r29) /* 8023E2A4 0023B1E4 80 6D 9A EC */ lwz r3, sys@sda21(r13) /* 8023E2A8 0023B1E8 48 1E 50 BD */ bl heapStatusEnd__6SystemFPc /* 8023E2AC 0023B1EC 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023E2B0 0023B1F0 7F A3 EB 78 */ mr r3, r29 /* 8023E2B4 0023B1F4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8023E2B8 0023B1F8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8023E2BC 0023B1FC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8023E2C0 0023B200 83 81 00 10 */ lwz r28, 0x10(r1) /* 8023E2C4 0023B204 7C 08 03 A6 */ mtlr r0 /* 8023E2C8 0023B208 38 21 00 20 */ addi r1, r1, 0x20 /* 8023E2CC 0023B20C 4E 80 00 20 */ blr .global setFilterTextureID__Q24Game15ShadowCylinder2Fi setFilterTextureID__Q24Game15ShadowCylinder2Fi: /* 8023E2D0 0023B210 80 AD 93 E8 */ lwz r5, gameSystem__4Game@sda21(r13) /* 8023E2D4 0023B214 28 05 00 00 */ cmplwi r5, 0 /* 8023E2D8 0023B218 41 82 00 34 */ beq .L_8023E30C /* 8023E2DC 0023B21C 80 A5 00 44 */ lwz r5, 0x44(r5) /* 8023E2E0 0023B220 38 00 00 00 */ li r0, 0 /* 8023E2E4 0023B224 2C 05 00 01 */ cmpwi r5, 1 /* 8023E2E8 0023B228 41 82 00 0C */ beq .L_8023E2F4 /* 8023E2EC 0023B22C 2C 05 00 03 */ cmpwi r5, 3 /* 8023E2F0 0023B230 40 82 00 08 */ bne .L_8023E2F8 .L_8023E2F4: /* 8023E2F4 0023B234 38 00 00 01 */ li r0, 1 .L_8023E2F8: /* 8023E2F8 0023B238 54 00 06 3F */ clrlwi. r0, r0, 0x18 /* 8023E2FC 0023B23C 40 82 00 10 */ bne .L_8023E30C /* 8023E300 0023B240 38 00 00 00 */ li r0, 0 /* 8023E304 0023B244 90 03 00 60 */ stw r0, 0x60(r3) /* 8023E308 0023B248 4E 80 00 20 */ blr .L_8023E30C: /* 8023E30C 0023B24C 90 83 00 60 */ stw r4, 0x60(r3) /* 8023E310 0023B250 4E 80 00 20 */ blr .global drawInit__Q24Game15ShadowCylinder2Fv drawInit__Q24Game15ShadowCylinder2Fv: /* 8023E314 0023B254 94 21 FF 20 */ stwu r1, -0xe0(r1) /* 8023E318 0023B258 7C 08 02 A6 */ mflr r0 /* 8023E31C 0023B25C 90 01 00 E4 */ stw r0, 0xe4(r1) /* 8023E320 0023B260 DB E1 00 D0 */ stfd f31, 0xd0(r1) /* 8023E324 0023B264 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 /* 8023E328 0023B268 DB C1 00 C0 */ stfd f30, 0xc0(r1) /* 8023E32C 0023B26C F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 /* 8023E330 0023B270 93 E1 00 BC */ stw r31, 0xbc(r1) /* 8023E334 0023B274 93 C1 00 B8 */ stw r30, 0xb8(r1) /* 8023E338 0023B278 93 A1 00 B4 */ stw r29, 0xb4(r1) /* 8023E33C 0023B27C 93 81 00 B0 */ stw r28, 0xb0(r1) /* 8023E340 0023B280 7C 7F 1B 78 */ mr r31, r3 /* 8023E344 0023B284 3C 60 80 48 */ lis r3, lbl_80483F58@ha /* 8023E348 0023B288 C0 3F 00 14 */ lfs f1, 0x14(r31) /* 8023E34C 0023B28C 3B C3 3F 58 */ addi r30, r3, lbl_80483F58@l /* 8023E350 0023B290 C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023E354 0023B294 38 61 00 68 */ addi r3, r1, 0x68 /* 8023E358 0023B298 C0 7F 00 10 */ lfs f3, 0x10(r31) /* 8023E35C 0023B29C C0 9F 00 18 */ lfs f4, 0x18(r31) /* 8023E360 0023B2A0 C0 A2 C2 C0 */ lfs f5, lbl_8051A620@sda21(r2) /* 8023E364 0023B2A4 C0 C2 C2 F0 */ lfs f6, lbl_8051A650@sda21(r2) /* 8023E368 0023B2A8 4B EA CA 71 */ bl C_MTXOrtho /* 8023E36C 0023B2AC 38 61 00 68 */ addi r3, r1, 0x68 /* 8023E370 0023B2B0 38 80 00 01 */ li r4, 1 /* 8023E374 0023B2B4 4B EA B0 D5 */ bl GXSetProjection /* 8023E378 0023B2B8 83 BE 00 40 */ lwz r29, 0x40(r30) /* 8023E37C 0023B2BC 38 61 00 38 */ addi r3, r1, 0x38 /* 8023E380 0023B2C0 83 9E 00 44 */ lwz r28, 0x44(r30) /* 8023E384 0023B2C4 38 81 00 2C */ addi r4, r1, 0x2c /* 8023E388 0023B2C8 81 9E 00 48 */ lwz r12, 0x48(r30) /* 8023E38C 0023B2CC 38 A1 00 14 */ addi r5, r1, 0x14 /* 8023E390 0023B2D0 81 7E 00 4C */ lwz r11, 0x4c(r30) /* 8023E394 0023B2D4 38 C1 00 20 */ addi r6, r1, 0x20 /* 8023E398 0023B2D8 81 5E 00 50 */ lwz r10, 0x50(r30) /* 8023E39C 0023B2DC 81 3E 00 54 */ lwz r9, 0x54(r30) /* 8023E3A0 0023B2E0 81 1E 00 58 */ lwz r8, 0x58(r30) /* 8023E3A4 0023B2E4 80 FE 00 5C */ lwz r7, 0x5c(r30) /* 8023E3A8 0023B2E8 80 1E 00 60 */ lwz r0, 0x60(r30) /* 8023E3AC 0023B2EC 93 A1 00 14 */ stw r29, 0x14(r1) /* 8023E3B0 0023B2F0 93 81 00 18 */ stw r28, 0x18(r1) /* 8023E3B4 0023B2F4 91 81 00 1C */ stw r12, 0x1c(r1) /* 8023E3B8 0023B2F8 91 61 00 20 */ stw r11, 0x20(r1) /* 8023E3BC 0023B2FC 91 41 00 24 */ stw r10, 0x24(r1) /* 8023E3C0 0023B300 91 21 00 28 */ stw r9, 0x28(r1) /* 8023E3C4 0023B304 91 01 00 2C */ stw r8, 0x2c(r1) /* 8023E3C8 0023B308 90 E1 00 30 */ stw r7, 0x30(r1) /* 8023E3CC 0023B30C 90 01 00 34 */ stw r0, 0x34(r1) /* 8023E3D0 0023B310 4B EA C5 29 */ bl C_MTXLookAt /* 8023E3D4 0023B314 38 61 00 38 */ addi r3, r1, 0x38 /* 8023E3D8 0023B318 38 80 00 00 */ li r4, 0 /* 8023E3DC 0023B31C 4B EA B1 9D */ bl GXLoadPosMtxImm /* 8023E3E0 0023B320 C3 FF 00 14 */ lfs f31, 0x14(r31) /* 8023E3E4 0023B324 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 8023E3E8 0023B328 C3 DF 00 10 */ lfs f30, 0x10(r31) /* 8023E3EC 0023B32C EC 20 F8 28 */ fsubs f1, f0, f31 /* 8023E3F0 0023B330 4B E8 37 5D */ bl __cvt_fp2unsigned /* 8023E3F4 0023B334 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023E3F8 0023B338 7C 7C 1B 78 */ mr r28, r3 /* 8023E3FC 0023B33C EC 20 F0 28 */ fsubs f1, f0, f30 /* 8023E400 0023B340 4B E8 37 4D */ bl __cvt_fp2unsigned /* 8023E404 0023B344 FC 20 F8 90 */ fmr f1, f31 /* 8023E408 0023B348 7C 7D 1B 78 */ mr r29, r3 /* 8023E40C 0023B34C 4B E8 37 41 */ bl __cvt_fp2unsigned /* 8023E410 0023B350 FC 20 F0 90 */ fmr f1, f30 /* 8023E414 0023B354 7C 7E 1B 78 */ mr r30, r3 /* 8023E418 0023B358 4B E8 37 35 */ bl __cvt_fp2unsigned /* 8023E41C 0023B35C 7F C4 F3 78 */ mr r4, r30 /* 8023E420 0023B360 7F A5 EB 78 */ mr r5, r29 /* 8023E424 0023B364 7F 86 E3 78 */ mr r6, r28 /* 8023E428 0023B368 4B EA B3 B1 */ bl GXSetScissor /* 8023E42C 0023B36C C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023E430 0023B370 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 8023E434 0023B374 C0 3F 00 10 */ lfs f1, 0x10(r31) /* 8023E438 0023B378 C0 7F 00 18 */ lfs f3, 0x18(r31) /* 8023E43C 0023B37C EC 80 10 28 */ fsubs f4, f0, f2 /* 8023E440 0023B380 C0 A2 C2 C0 */ lfs f5, lbl_8051A620@sda21(r2) /* 8023E444 0023B384 EC 63 08 28 */ fsubs f3, f3, f1 /* 8023E448 0023B388 C0 C2 C2 E0 */ lfs f6, lbl_8051A640@sda21(r2) /* 8023E44C 0023B38C 4B EA B3 45 */ bl GXSetViewport /* 8023E450 0023B390 38 60 00 00 */ li r3, 0 /* 8023E454 0023B394 4B EA 6B 49 */ bl GXSetNumTexGens /* 8023E458 0023B398 38 60 00 00 */ li r3, 0 /* 8023E45C 0023B39C 4B EA 9E F9 */ bl GXSetNumIndStages /* 8023E460 0023B3A0 38 60 00 00 */ li r3, 0 /* 8023E464 0023B3A4 4B EA 9F C5 */ bl __GXSetIndirectMask /* 8023E468 0023B3A8 38 60 00 00 */ li r3, 0 /* 8023E46C 0023B3AC 4B EA B1 AD */ bl GXSetCurrentMtx /* 8023E470 0023B3B0 38 60 00 01 */ li r3, 1 /* 8023E474 0023B3B4 4B EA A7 45 */ bl GXSetNumTevStages /* 8023E478 0023B3B8 38 60 00 00 */ li r3, 0 /* 8023E47C 0023B3BC 38 80 00 04 */ li r4, 4 /* 8023E480 0023B3C0 4B EA 9F FD */ bl GXSetTevOp /* 8023E484 0023B3C4 38 60 00 00 */ li r3, 0 /* 8023E488 0023B3C8 38 80 00 FF */ li r4, 0xff /* 8023E48C 0023B3CC 38 A0 00 FF */ li r5, 0xff /* 8023E490 0023B3D0 38 C0 00 04 */ li r6, 4 /* 8023E494 0023B3D4 4B EA A5 89 */ bl GXSetTevOrder /* 8023E498 0023B3D8 38 60 00 01 */ li r3, 1 /* 8023E49C 0023B3DC 4B EA 89 C9 */ bl GXSetNumChans /* 8023E4A0 0023B3E0 81 1F 00 08 */ lwz r8, 8(r31) /* 8023E4A4 0023B3E4 38 81 00 0C */ addi r4, r1, 0xc /* 8023E4A8 0023B3E8 38 60 00 04 */ li r3, 4 /* 8023E4AC 0023B3EC 88 E8 00 00 */ lbz r7, 0(r8) /* 8023E4B0 0023B3F0 88 C8 00 01 */ lbz r6, 1(r8) /* 8023E4B4 0023B3F4 88 A8 00 02 */ lbz r5, 2(r8) /* 8023E4B8 0023B3F8 88 08 00 03 */ lbz r0, 3(r8) /* 8023E4BC 0023B3FC 98 E1 00 08 */ stb r7, 8(r1) /* 8023E4C0 0023B400 98 C1 00 09 */ stb r6, 9(r1) /* 8023E4C4 0023B404 98 A1 00 0A */ stb r5, 0xa(r1) /* 8023E4C8 0023B408 98 01 00 0B */ stb r0, 0xb(r1) /* 8023E4CC 0023B40C 80 01 00 08 */ lwz r0, 8(r1) /* 8023E4D0 0023B410 90 01 00 0C */ stw r0, 0xc(r1) /* 8023E4D4 0023B414 4B EA 88 A1 */ bl GXSetChanMatColor /* 8023E4D8 0023B418 38 60 00 04 */ li r3, 4 /* 8023E4DC 0023B41C 38 80 00 00 */ li r4, 0 /* 8023E4E0 0023B420 38 A0 00 00 */ li r5, 0 /* 8023E4E4 0023B424 38 C0 00 00 */ li r6, 0 /* 8023E4E8 0023B428 38 E0 00 00 */ li r7, 0 /* 8023E4EC 0023B42C 39 00 00 00 */ li r8, 0 /* 8023E4F0 0023B430 39 20 00 02 */ li r9, 2 /* 8023E4F4 0023B434 4B EA 89 AD */ bl GXSetChanCtrl /* 8023E4F8 0023B438 38 60 00 02 */ li r3, 2 /* 8023E4FC 0023B43C 4B EA 76 AD */ bl GXSetCullMode /* 8023E500 0023B440 38 60 00 00 */ li r3, 0 /* 8023E504 0023B444 38 80 00 00 */ li r4, 0 /* 8023E508 0023B448 38 A0 00 00 */ li r5, 0 /* 8023E50C 0023B44C 4B EA AC 79 */ bl GXSetZMode /* 8023E510 0023B450 38 60 00 00 */ li r3, 0 /* 8023E514 0023B454 38 80 00 01 */ li r4, 1 /* 8023E518 0023B458 38 A0 00 01 */ li r5, 1 /* 8023E51C 0023B45C 38 C0 00 00 */ li r6, 0 /* 8023E520 0023B460 4B EA AB B9 */ bl GXSetBlendMode /* 8023E524 0023B464 38 60 00 00 */ li r3, 0 /* 8023E528 0023B468 4B EA AC 05 */ bl GXSetColorUpdate /* 8023E52C 0023B46C 38 60 00 01 */ li r3, 1 /* 8023E530 0023B470 4B EA AC 29 */ bl GXSetAlphaUpdate /* 8023E534 0023B474 38 60 00 01 */ li r3, 1 /* 8023E538 0023B478 38 80 00 00 */ li r4, 0 /* 8023E53C 0023B47C 4B EA AD B1 */ bl GXSetDstAlpha /* 8023E540 0023B480 4B EA 61 91 */ bl GXClearVtxDesc /* 8023E544 0023B484 4B EA 67 C9 */ bl GXInvalidateVtxCache /* 8023E548 0023B488 38 60 00 09 */ li r3, 9 /* 8023E54C 0023B48C 38 80 00 01 */ li r4, 1 /* 8023E550 0023B490 4B EA 5D 35 */ bl GXSetVtxDesc /* 8023E554 0023B494 38 60 00 00 */ li r3, 0 /* 8023E558 0023B498 38 80 00 09 */ li r4, 9 /* 8023E55C 0023B49C 38 A0 00 01 */ li r5, 1 /* 8023E560 0023B4A0 38 C0 00 04 */ li r6, 4 /* 8023E564 0023B4A4 38 E0 00 00 */ li r7, 0 /* 8023E568 0023B4A8 4B EA 61 A1 */ bl GXSetVtxAttrFmt /* 8023E56C 0023B4AC 38 60 00 80 */ li r3, 0x80 /* 8023E570 0023B4B0 38 80 00 00 */ li r4, 0 /* 8023E574 0023B4B4 38 A0 00 04 */ li r5, 4 /* 8023E578 0023B4B8 4B EA 74 11 */ bl GXBegin /* 8023E57C 0023B4BC C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023E580 0023B4C0 3C A0 CC 01 */ lis r5, 0xCC008000@ha /* 8023E584 0023B4C4 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8023E588 0023B4C8 38 60 00 00 */ li r3, 0 /* 8023E58C 0023B4CC C0 22 C2 C0 */ lfs f1, lbl_8051A620@sda21(r2) /* 8023E590 0023B4D0 38 80 00 00 */ li r4, 0 /* 8023E594 0023B4D4 D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) /* 8023E598 0023B4D8 D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) /* 8023E59C 0023B4DC D0 25 80 00 */ stfs f1, 0xCC008000@l(r5) /* 8023E5A0 0023B4E0 C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023E5A4 0023B4E4 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023E5A8 0023B4E8 D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) /* 8023E5AC 0023B4EC D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) /* 8023E5B0 0023B4F0 D0 25 80 00 */ stfs f1, 0xCC008000@l(r5) /* 8023E5B4 0023B4F4 C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023E5B8 0023B4F8 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023E5BC 0023B4FC D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) /* 8023E5C0 0023B500 D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) /* 8023E5C4 0023B504 D0 25 80 00 */ stfs f1, 0xCC008000@l(r5) /* 8023E5C8 0023B508 C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023E5CC 0023B50C C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8023E5D0 0023B510 D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) /* 8023E5D4 0023B514 D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) /* 8023E5D8 0023B518 D0 25 80 00 */ stfs f1, 0xCC008000@l(r5) /* 8023E5DC 0023B51C 4B EA AD 11 */ bl GXSetDstAlpha /* 8023E5E0 0023B520 80 02 C2 F4 */ lwz r0, lbl_8051A654@sda21(r2) /* 8023E5E4 0023B524 38 81 00 10 */ addi r4, r1, 0x10 /* 8023E5E8 0023B528 38 60 00 04 */ li r3, 4 /* 8023E5EC 0023B52C 90 01 00 10 */ stw r0, 0x10(r1) /* 8023E5F0 0023B530 4B EA 87 85 */ bl GXSetChanMatColor /* 8023E5F4 0023B534 4B EA 60 DD */ bl GXClearVtxDesc /* 8023E5F8 0023B538 4B EA 67 15 */ bl GXInvalidateVtxCache /* 8023E5FC 0023B53C 38 60 00 09 */ li r3, 9 /* 8023E600 0023B540 38 80 00 03 */ li r4, 3 /* 8023E604 0023B544 4B EA 5C 81 */ bl GXSetVtxDesc /* 8023E608 0023B548 38 60 00 00 */ li r3, 0 /* 8023E60C 0023B54C 38 80 00 09 */ li r4, 9 /* 8023E610 0023B550 38 A0 00 01 */ li r5, 1 /* 8023E614 0023B554 38 C0 00 04 */ li r6, 4 /* 8023E618 0023B558 38 E0 00 00 */ li r7, 0 /* 8023E61C 0023B55C 4B EA 60 ED */ bl GXSetVtxAttrFmt /* 8023E620 0023B560 3C 80 80 4F */ lis r4, sCylinderVertPos__4Game@ha /* 8023E624 0023B564 38 60 00 09 */ li r3, 9 /* 8023E628 0023B568 38 84 79 D0 */ addi r4, r4, sCylinderVertPos__4Game@l /* 8023E62C 0023B56C 38 A0 00 0C */ li r5, 0xc /* 8023E630 0023B570 4B EA 66 51 */ bl GXSetArray /* 8023E634 0023B574 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 /* 8023E638 0023B578 CB E1 00 D0 */ lfd f31, 0xd0(r1) /* 8023E63C 0023B57C E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 /* 8023E640 0023B580 CB C1 00 C0 */ lfd f30, 0xc0(r1) /* 8023E644 0023B584 83 E1 00 BC */ lwz r31, 0xbc(r1) /* 8023E648 0023B588 83 C1 00 B8 */ lwz r30, 0xb8(r1) /* 8023E64C 0023B58C 83 A1 00 B4 */ lwz r29, 0xb4(r1) /* 8023E650 0023B590 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 8023E654 0023B594 83 81 00 B0 */ lwz r28, 0xb0(r1) /* 8023E658 0023B598 7C 08 03 A6 */ mtlr r0 /* 8023E65C 0023B59C 38 21 00 E0 */ addi r1, r1, 0xe0 /* 8023E660 0023B5A0 4E 80 00 20 */ blr .global drawCylinder__Q24Game15ShadowCylinder2FR7Matrixfi drawCylinder__Q24Game15ShadowCylinder2FR7Matrixfi: /* 8023E664 0023B5A4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023E668 0023B5A8 7C 08 02 A6 */ mflr r0 /* 8023E66C 0023B5AC 90 01 00 14 */ stw r0, 0x14(r1) /* 8023E670 0023B5B0 7C 80 23 78 */ mr r0, r4 /* 8023E674 0023B5B4 38 80 00 00 */ li r4, 0 /* 8023E678 0023B5B8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023E67C 0023B5BC 7C BF 2B 78 */ mr r31, r5 /* 8023E680 0023B5C0 93 C1 00 08 */ stw r30, 8(r1) /* 8023E684 0023B5C4 7C 7E 1B 78 */ mr r30, r3 /* 8023E688 0023B5C8 7C 03 03 78 */ mr r3, r0 /* 8023E68C 0023B5CC 4B EA AE ED */ bl GXLoadPosMtxImm /* 8023E690 0023B5D0 38 60 00 01 */ li r3, 1 /* 8023E694 0023B5D4 38 80 00 03 */ li r4, 3 /* 8023E698 0023B5D8 38 A0 00 00 */ li r5, 0 /* 8023E69C 0023B5DC 4B EA AA E9 */ bl GXSetZMode /* 8023E6A0 0023B5E0 38 60 00 02 */ li r3, 2 /* 8023E6A4 0023B5E4 4B EA 75 05 */ bl GXSetCullMode /* 8023E6A8 0023B5E8 38 60 00 01 */ li r3, 1 /* 8023E6AC 0023B5EC 38 80 00 01 */ li r4, 1 /* 8023E6B0 0023B5F0 38 A0 00 01 */ li r5, 1 /* 8023E6B4 0023B5F4 38 C0 00 05 */ li r6, 5 /* 8023E6B8 0023B5F8 4B EA AA 21 */ bl GXSetBlendMode /* 8023E6BC 0023B5FC 80 7E 00 04 */ lwz r3, 4(r30) /* 8023E6C0 0023B600 57 FF 10 3A */ slwi r31, r31, 2 /* 8023E6C4 0023B604 7C 63 F8 2E */ lwzx r3, r3, r31 /* 8023E6C8 0023B608 80 03 00 08 */ lwz r0, 8(r3) /* 8023E6CC 0023B60C 80 63 00 04 */ lwz r3, 4(r3) /* 8023E6D0 0023B610 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 8023E6D4 0023B614 4B EA AD 05 */ bl GXCallDisplayList /* 8023E6D8 0023B618 38 60 00 01 */ li r3, 1 /* 8023E6DC 0023B61C 4B EA 74 CD */ bl GXSetCullMode /* 8023E6E0 0023B620 38 60 00 03 */ li r3, 3 /* 8023E6E4 0023B624 38 80 00 01 */ li r4, 1 /* 8023E6E8 0023B628 38 A0 00 01 */ li r5, 1 /* 8023E6EC 0023B62C 38 C0 00 05 */ li r6, 5 /* 8023E6F0 0023B630 4B EA A9 E9 */ bl GXSetBlendMode /* 8023E6F4 0023B634 80 7E 00 04 */ lwz r3, 4(r30) /* 8023E6F8 0023B638 7C 63 F8 2E */ lwzx r3, r3, r31 /* 8023E6FC 0023B63C 80 03 00 08 */ lwz r0, 8(r3) /* 8023E700 0023B640 80 63 00 04 */ lwz r3, 4(r3) /* 8023E704 0023B644 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 8023E708 0023B648 4B EA AC D1 */ bl GXCallDisplayList /* 8023E70C 0023B64C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023E710 0023B650 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023E714 0023B654 83 C1 00 08 */ lwz r30, 8(r1) /* 8023E718 0023B658 7C 08 03 A6 */ mtlr r0 /* 8023E71C 0023B65C 38 21 00 10 */ addi r1, r1, 0x10 /* 8023E720 0023B660 4E 80 00 20 */ blr .global drawFinish__Q24Game15ShadowCylinder2Fv drawFinish__Q24Game15ShadowCylinder2Fv: /* 8023E724 0023B664 94 21 FF 20 */ stwu r1, -0xe0(r1) /* 8023E728 0023B668 7C 08 02 A6 */ mflr r0 /* 8023E72C 0023B66C 90 01 00 E4 */ stw r0, 0xe4(r1) /* 8023E730 0023B670 DB E1 00 D0 */ stfd f31, 0xd0(r1) /* 8023E734 0023B674 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 /* 8023E738 0023B678 DB C1 00 C0 */ stfd f30, 0xc0(r1) /* 8023E73C 0023B67C F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 /* 8023E740 0023B680 93 E1 00 BC */ stw r31, 0xbc(r1) /* 8023E744 0023B684 93 C1 00 B8 */ stw r30, 0xb8(r1) /* 8023E748 0023B688 93 A1 00 B4 */ stw r29, 0xb4(r1) /* 8023E74C 0023B68C 93 81 00 B0 */ stw r28, 0xb0(r1) /* 8023E750 0023B690 7C 7F 1B 78 */ mr r31, r3 /* 8023E754 0023B694 3C 60 80 48 */ lis r3, lbl_80483F58@ha /* 8023E758 0023B698 C0 3F 00 14 */ lfs f1, 0x14(r31) /* 8023E75C 0023B69C 3B C3 3F 58 */ addi r30, r3, lbl_80483F58@l /* 8023E760 0023B6A0 C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023E764 0023B6A4 38 61 00 64 */ addi r3, r1, 0x64 /* 8023E768 0023B6A8 C0 7F 00 10 */ lfs f3, 0x10(r31) /* 8023E76C 0023B6AC C0 9F 00 18 */ lfs f4, 0x18(r31) /* 8023E770 0023B6B0 C0 A2 C2 C0 */ lfs f5, lbl_8051A620@sda21(r2) /* 8023E774 0023B6B4 C0 C2 C2 F0 */ lfs f6, lbl_8051A650@sda21(r2) /* 8023E778 0023B6B8 4B EA C6 61 */ bl C_MTXOrtho /* 8023E77C 0023B6BC 38 61 00 64 */ addi r3, r1, 0x64 /* 8023E780 0023B6C0 38 80 00 01 */ li r4, 1 /* 8023E784 0023B6C4 4B EA AC C5 */ bl GXSetProjection /* 8023E788 0023B6C8 83 BE 00 40 */ lwz r29, 0x40(r30) /* 8023E78C 0023B6CC 38 61 00 34 */ addi r3, r1, 0x34 /* 8023E790 0023B6D0 83 9E 00 44 */ lwz r28, 0x44(r30) /* 8023E794 0023B6D4 38 81 00 28 */ addi r4, r1, 0x28 /* 8023E798 0023B6D8 81 9E 00 48 */ lwz r12, 0x48(r30) /* 8023E79C 0023B6DC 38 A1 00 10 */ addi r5, r1, 0x10 /* 8023E7A0 0023B6E0 81 7E 00 4C */ lwz r11, 0x4c(r30) /* 8023E7A4 0023B6E4 38 C1 00 1C */ addi r6, r1, 0x1c /* 8023E7A8 0023B6E8 81 5E 00 50 */ lwz r10, 0x50(r30) /* 8023E7AC 0023B6EC 81 3E 00 54 */ lwz r9, 0x54(r30) /* 8023E7B0 0023B6F0 81 1E 00 58 */ lwz r8, 0x58(r30) /* 8023E7B4 0023B6F4 80 FE 00 5C */ lwz r7, 0x5c(r30) /* 8023E7B8 0023B6F8 80 1E 00 60 */ lwz r0, 0x60(r30) /* 8023E7BC 0023B6FC 93 A1 00 10 */ stw r29, 0x10(r1) /* 8023E7C0 0023B700 93 81 00 14 */ stw r28, 0x14(r1) /* 8023E7C4 0023B704 91 81 00 18 */ stw r12, 0x18(r1) /* 8023E7C8 0023B708 91 61 00 1C */ stw r11, 0x1c(r1) /* 8023E7CC 0023B70C 91 41 00 20 */ stw r10, 0x20(r1) /* 8023E7D0 0023B710 91 21 00 24 */ stw r9, 0x24(r1) /* 8023E7D4 0023B714 91 01 00 28 */ stw r8, 0x28(r1) /* 8023E7D8 0023B718 90 E1 00 2C */ stw r7, 0x2c(r1) /* 8023E7DC 0023B71C 90 01 00 30 */ stw r0, 0x30(r1) /* 8023E7E0 0023B720 4B EA C1 19 */ bl C_MTXLookAt /* 8023E7E4 0023B724 38 61 00 34 */ addi r3, r1, 0x34 /* 8023E7E8 0023B728 38 80 00 00 */ li r4, 0 /* 8023E7EC 0023B72C 4B EA AD 8D */ bl GXLoadPosMtxImm /* 8023E7F0 0023B730 C3 FF 00 14 */ lfs f31, 0x14(r31) /* 8023E7F4 0023B734 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 8023E7F8 0023B738 C3 DF 00 10 */ lfs f30, 0x10(r31) /* 8023E7FC 0023B73C EC 20 F8 28 */ fsubs f1, f0, f31 /* 8023E800 0023B740 4B E8 33 4D */ bl __cvt_fp2unsigned /* 8023E804 0023B744 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023E808 0023B748 7C 7C 1B 78 */ mr r28, r3 /* 8023E80C 0023B74C EC 20 F0 28 */ fsubs f1, f0, f30 /* 8023E810 0023B750 4B E8 33 3D */ bl __cvt_fp2unsigned /* 8023E814 0023B754 FC 20 F8 90 */ fmr f1, f31 /* 8023E818 0023B758 7C 7D 1B 78 */ mr r29, r3 /* 8023E81C 0023B75C 4B E8 33 31 */ bl __cvt_fp2unsigned /* 8023E820 0023B760 FC 20 F0 90 */ fmr f1, f30 /* 8023E824 0023B764 7C 7E 1B 78 */ mr r30, r3 /* 8023E828 0023B768 4B E8 33 25 */ bl __cvt_fp2unsigned /* 8023E82C 0023B76C 7F C4 F3 78 */ mr r4, r30 /* 8023E830 0023B770 7F A5 EB 78 */ mr r5, r29 /* 8023E834 0023B774 7F 86 E3 78 */ mr r6, r28 /* 8023E838 0023B778 4B EA AF A1 */ bl GXSetScissor /* 8023E83C 0023B77C C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023E840 0023B780 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 8023E844 0023B784 C0 3F 00 10 */ lfs f1, 0x10(r31) /* 8023E848 0023B788 C0 7F 00 18 */ lfs f3, 0x18(r31) /* 8023E84C 0023B78C EC 80 10 28 */ fsubs f4, f0, f2 /* 8023E850 0023B790 C0 A2 C2 C0 */ lfs f5, lbl_8051A620@sda21(r2) /* 8023E854 0023B794 EC 63 08 28 */ fsubs f3, f3, f1 /* 8023E858 0023B798 C0 C2 C2 E0 */ lfs f6, lbl_8051A640@sda21(r2) /* 8023E85C 0023B79C 4B EA AF 35 */ bl GXSetViewport /* 8023E860 0023B7A0 38 60 00 01 */ li r3, 1 /* 8023E864 0023B7A4 4B EA A8 C9 */ bl GXSetColorUpdate /* 8023E868 0023B7A8 38 60 00 01 */ li r3, 1 /* 8023E86C 0023B7AC 4B EA A8 ED */ bl GXSetAlphaUpdate /* 8023E870 0023B7B0 81 1F 00 08 */ lwz r8, 8(r31) /* 8023E874 0023B7B4 38 81 00 0C */ addi r4, r1, 0xc /* 8023E878 0023B7B8 38 60 00 04 */ li r3, 4 /* 8023E87C 0023B7BC 88 E8 00 00 */ lbz r7, 0(r8) /* 8023E880 0023B7C0 88 C8 00 01 */ lbz r6, 1(r8) /* 8023E884 0023B7C4 88 A8 00 02 */ lbz r5, 2(r8) /* 8023E888 0023B7C8 88 08 00 03 */ lbz r0, 3(r8) /* 8023E88C 0023B7CC 98 E1 00 08 */ stb r7, 8(r1) /* 8023E890 0023B7D0 98 C1 00 09 */ stb r6, 9(r1) /* 8023E894 0023B7D4 98 A1 00 0A */ stb r5, 0xa(r1) /* 8023E898 0023B7D8 98 01 00 0B */ stb r0, 0xb(r1) /* 8023E89C 0023B7DC 80 01 00 08 */ lwz r0, 8(r1) /* 8023E8A0 0023B7E0 90 01 00 0C */ stw r0, 0xc(r1) /* 8023E8A4 0023B7E4 4B EA 84 D1 */ bl GXSetChanMatColor /* 8023E8A8 0023B7E8 38 60 00 02 */ li r3, 2 /* 8023E8AC 0023B7EC 4B EA 72 FD */ bl GXSetCullMode /* 8023E8B0 0023B7F0 38 60 00 00 */ li r3, 0 /* 8023E8B4 0023B7F4 38 80 00 00 */ li r4, 0 /* 8023E8B8 0023B7F8 38 A0 00 00 */ li r5, 0 /* 8023E8BC 0023B7FC 4B EA A8 C9 */ bl GXSetZMode /* 8023E8C0 0023B800 7F E3 FB 78 */ mr r3, r31 /* 8023E8C4 0023B804 48 00 00 45 */ bl copyShadowTexture__Q24Game15ShadowCylinder2Fv /* 8023E8C8 0023B808 7F E3 FB 78 */ mr r3, r31 /* 8023E8CC 0023B80C 48 00 01 AD */ bl setupTextureFilterGX__Q24Game15ShadowCylinder2Fv /* 8023E8D0 0023B810 7F E3 FB 78 */ mr r3, r31 /* 8023E8D4 0023B814 48 00 02 A1 */ bl drawTextureFilter__Q24Game15ShadowCylinder2Fv /* 8023E8D8 0023B818 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 /* 8023E8DC 0023B81C CB E1 00 D0 */ lfd f31, 0xd0(r1) /* 8023E8E0 0023B820 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 /* 8023E8E4 0023B824 CB C1 00 C0 */ lfd f30, 0xc0(r1) /* 8023E8E8 0023B828 83 E1 00 BC */ lwz r31, 0xbc(r1) /* 8023E8EC 0023B82C 83 C1 00 B8 */ lwz r30, 0xb8(r1) /* 8023E8F0 0023B830 83 A1 00 B4 */ lwz r29, 0xb4(r1) /* 8023E8F4 0023B834 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 8023E8F8 0023B838 83 81 00 B0 */ lwz r28, 0xb0(r1) /* 8023E8FC 0023B83C 7C 08 03 A6 */ mtlr r0 /* 8023E900 0023B840 38 21 00 E0 */ addi r1, r1, 0xe0 /* 8023E904 0023B844 4E 80 00 20 */ blr .global copyShadowTexture__Q24Game15ShadowCylinder2Fv copyShadowTexture__Q24Game15ShadowCylinder2Fv: /* 8023E908 0023B848 94 21 FF B0 */ stwu r1, -0x50(r1) /* 8023E90C 0023B84C 7C 08 02 A6 */ mflr r0 /* 8023E910 0023B850 90 01 00 54 */ stw r0, 0x54(r1) /* 8023E914 0023B854 93 E1 00 4C */ stw r31, 0x4c(r1) /* 8023E918 0023B858 7C 7F 1B 78 */ mr r31, r3 /* 8023E91C 0023B85C C0 03 00 10 */ lfs f0, 0x10(r3) /* 8023E920 0023B860 C0 43 00 14 */ lfs f2, 0x14(r3) /* 8023E924 0023B864 FC 60 00 1E */ fctiwz f3, f0 /* 8023E928 0023B868 C0 23 00 18 */ lfs f1, 0x18(r3) /* 8023E92C 0023B86C C0 03 00 1C */ lfs f0, 0x1c(r3) /* 8023E930 0023B870 FC 40 10 1E */ fctiwz f2, f2 /* 8023E934 0023B874 FC 20 08 1E */ fctiwz f1, f1 /* 8023E938 0023B878 FC 00 00 1E */ fctiwz f0, f0 /* 8023E93C 0023B87C D8 61 00 08 */ stfd f3, 8(r1) /* 8023E940 0023B880 D8 41 00 10 */ stfd f2, 0x10(r1) /* 8023E944 0023B884 80 61 00 0C */ lwz r3, 0xc(r1) /* 8023E948 0023B888 D8 21 00 18 */ stfd f1, 0x18(r1) /* 8023E94C 0023B88C 80 81 00 14 */ lwz r4, 0x14(r1) /* 8023E950 0023B890 D8 01 00 20 */ stfd f0, 0x20(r1) /* 8023E954 0023B894 80 A1 00 1C */ lwz r5, 0x1c(r1) /* 8023E958 0023B898 80 C1 00 24 */ lwz r6, 0x24(r1) /* 8023E95C 0023B89C 4B EA 73 65 */ bl GXSetTexCopySrc /* 8023E960 0023B8A0 C0 7F 00 18 */ lfs f3, 0x18(r31) /* 8023E964 0023B8A4 38 A0 00 27 */ li r5, 0x27 /* 8023E968 0023B8A8 C0 5F 00 10 */ lfs f2, 0x10(r31) /* 8023E96C 0023B8AC 38 C0 00 01 */ li r6, 1 /* 8023E970 0023B8B0 C0 3F 00 1C */ lfs f1, 0x1c(r31) /* 8023E974 0023B8B4 C0 1F 00 14 */ lfs f0, 0x14(r31) /* 8023E978 0023B8B8 EC 63 10 28 */ fsubs f3, f3, f2 /* 8023E97C 0023B8BC C0 42 C2 BC */ lfs f2, lbl_8051A61C@sda21(r2) /* 8023E980 0023B8C0 EC 01 00 28 */ fsubs f0, f1, f0 /* 8023E984 0023B8C4 EC 23 00 B2 */ fmuls f1, f3, f2 /* 8023E988 0023B8C8 EC 00 00 B2 */ fmuls f0, f0, f2 /* 8023E98C 0023B8CC FC 20 08 1E */ fctiwz f1, f1 /* 8023E990 0023B8D0 FC 00 00 1E */ fctiwz f0, f0 /* 8023E994 0023B8D4 D8 21 00 28 */ stfd f1, 0x28(r1) /* 8023E998 0023B8D8 D8 01 00 30 */ stfd f0, 0x30(r1) /* 8023E99C 0023B8DC 80 61 00 2C */ lwz r3, 0x2c(r1) /* 8023E9A0 0023B8E0 80 81 00 34 */ lwz r4, 0x34(r1) /* 8023E9A4 0023B8E4 4B EA 73 CD */ bl GXSetTexCopyDst /* 8023E9A8 0023B8E8 80 1F 00 60 */ lwz r0, 0x60(r31) /* 8023E9AC 0023B8EC 38 80 00 00 */ li r4, 0 /* 8023E9B0 0023B8F0 80 7F 00 58 */ lwz r3, 0x58(r31) /* 8023E9B4 0023B8F4 54 00 10 3A */ slwi r0, r0, 2 /* 8023E9B8 0023B8F8 7C 63 00 2E */ lwzx r3, r3, r0 /* 8023E9BC 0023B8FC 4B EA 7C F1 */ bl GXCopyTex /* 8023E9C0 0023B900 4B EA 6B FD */ bl GXPixModeSync /* 8023E9C4 0023B904 C0 7F 00 18 */ lfs f3, 0x18(r31) /* 8023E9C8 0023B908 38 E0 00 01 */ li r7, 1 /* 8023E9CC 0023B90C C0 5F 00 10 */ lfs f2, 0x10(r31) /* 8023E9D0 0023B910 39 00 00 00 */ li r8, 0 /* 8023E9D4 0023B914 C0 3F 00 1C */ lfs f1, 0x1c(r31) /* 8023E9D8 0023B918 39 20 00 00 */ li r9, 0 /* 8023E9DC 0023B91C C0 1F 00 14 */ lfs f0, 0x14(r31) /* 8023E9E0 0023B920 EC 63 10 28 */ fsubs f3, f3, f2 /* 8023E9E4 0023B924 C0 42 C2 BC */ lfs f2, lbl_8051A61C@sda21(r2) /* 8023E9E8 0023B928 39 40 00 00 */ li r10, 0 /* 8023E9EC 0023B92C EC 01 00 28 */ fsubs f0, f1, f0 /* 8023E9F0 0023B930 80 9F 00 60 */ lwz r4, 0x60(r31) /* 8023E9F4 0023B934 EC 23 00 B2 */ fmuls f1, f3, f2 /* 8023E9F8 0023B938 80 7F 00 58 */ lwz r3, 0x58(r31) /* 8023E9FC 0023B93C 54 80 10 3A */ slwi r0, r4, 2 /* 8023EA00 0023B940 EC 00 00 B2 */ fmuls f0, f0, f2 /* 8023EA04 0023B944 FC 20 08 1E */ fctiwz f1, f1 /* 8023EA08 0023B948 80 DF 00 5C */ lwz r6, 0x5c(r31) /* 8023EA0C 0023B94C 54 85 28 34 */ slwi r5, r4, 5 /* 8023EA10 0023B950 7C 83 00 2E */ lwzx r4, r3, r0 /* 8023EA14 0023B954 FC 00 00 1E */ fctiwz f0, f0 /* 8023EA18 0023B958 D8 21 00 38 */ stfd f1, 0x38(r1) /* 8023EA1C 0023B95C 7C 66 2A 14 */ add r3, r6, r5 /* 8023EA20 0023B960 D8 01 00 40 */ stfd f0, 0x40(r1) /* 8023EA24 0023B964 80 A1 00 3C */ lwz r5, 0x3c(r1) /* 8023EA28 0023B968 80 C1 00 44 */ lwz r6, 0x44(r1) /* 8023EA2C 0023B96C 4B EA 87 51 */ bl GXInitTexObj /* 8023EA30 0023B970 C0 22 C2 C0 */ lfs f1, lbl_8051A620@sda21(r2) /* 8023EA34 0023B974 38 80 00 01 */ li r4, 1 /* 8023EA38 0023B978 80 1F 00 60 */ lwz r0, 0x60(r31) /* 8023EA3C 0023B97C 38 A0 00 01 */ li r5, 1 /* 8023EA40 0023B980 FC 40 08 90 */ fmr f2, f1 /* 8023EA44 0023B984 80 7F 00 5C */ lwz r3, 0x5c(r31) /* 8023EA48 0023B988 54 00 28 34 */ slwi r0, r0, 5 /* 8023EA4C 0023B98C FC 60 08 90 */ fmr f3, f1 /* 8023EA50 0023B990 7C 63 02 14 */ add r3, r3, r0 /* 8023EA54 0023B994 38 C0 00 00 */ li r6, 0 /* 8023EA58 0023B998 38 E0 00 00 */ li r7, 0 /* 8023EA5C 0023B99C 39 00 00 00 */ li r8, 0 /* 8023EA60 0023B9A0 4B EA 89 B1 */ bl GXInitTexObjLOD /* 8023EA64 0023B9A4 80 01 00 54 */ lwz r0, 0x54(r1) /* 8023EA68 0023B9A8 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 8023EA6C 0023B9AC 7C 08 03 A6 */ mtlr r0 /* 8023EA70 0023B9B0 38 21 00 50 */ addi r1, r1, 0x50 /* 8023EA74 0023B9B4 4E 80 00 20 */ blr .global setupTextureFilterGX__Q24Game15ShadowCylinder2Fv setupTextureFilterGX__Q24Game15ShadowCylinder2Fv: /* 8023EA78 0023B9B8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023EA7C 0023B9BC 7C 08 02 A6 */ mflr r0 /* 8023EA80 0023B9C0 38 80 00 00 */ li r4, 0 /* 8023EA84 0023B9C4 90 01 00 14 */ stw r0, 0x14(r1) /* 8023EA88 0023B9C8 80 03 00 60 */ lwz r0, 0x60(r3) /* 8023EA8C 0023B9CC 80 63 00 5C */ lwz r3, 0x5c(r3) /* 8023EA90 0023B9D0 54 00 28 34 */ slwi r0, r0, 5 /* 8023EA94 0023B9D4 7C 63 02 14 */ add r3, r3, r0 /* 8023EA98 0023B9D8 4B EA 8C 79 */ bl GXLoadTexObj /* 8023EA9C 0023B9DC 38 60 00 01 */ li r3, 1 /* 8023EAA0 0023B9E0 4B EA 64 FD */ bl GXSetNumTexGens /* 8023EAA4 0023B9E4 38 60 00 00 */ li r3, 0 /* 8023EAA8 0023B9E8 38 80 00 01 */ li r4, 1 /* 8023EAAC 0023B9EC 38 A0 00 04 */ li r5, 4 /* 8023EAB0 0023B9F0 38 C0 00 3C */ li r6, 0x3c /* 8023EAB4 0023B9F4 38 E0 00 00 */ li r7, 0 /* 8023EAB8 0023B9F8 39 00 00 7D */ li r8, 0x7d /* 8023EABC 0023B9FC 4B EA 62 61 */ bl GXSetTexCoordGen2 /* 8023EAC0 0023BA00 38 60 00 00 */ li r3, 0 /* 8023EAC4 0023BA04 38 80 00 00 */ li r4, 0 /* 8023EAC8 0023BA08 38 A0 00 00 */ li r5, 0 /* 8023EACC 0023BA0C 38 C0 00 04 */ li r6, 4 /* 8023EAD0 0023BA10 4B EA 9F 4D */ bl GXSetTevOrder /* 8023EAD4 0023BA14 80 02 2B 28 */ lwz r0, lbl_80520E88@sda21(r2) /* 8023EAD8 0023BA18 38 81 00 08 */ addi r4, r1, 8 /* 8023EADC 0023BA1C 38 60 00 01 */ li r3, 1 /* 8023EAE0 0023BA20 90 01 00 08 */ stw r0, 8(r1) /* 8023EAE4 0023BA24 4B EA 9B 7D */ bl GXSetTevColor /* 8023EAE8 0023BA28 38 60 00 00 */ li r3, 0 /* 8023EAEC 0023BA2C 38 80 00 09 */ li r4, 9 /* 8023EAF0 0023BA30 38 A0 00 03 */ li r5, 3 /* 8023EAF4 0023BA34 38 C0 00 0A */ li r6, 0xa /* 8023EAF8 0023BA38 38 E0 00 0F */ li r7, 0xf /* 8023EAFC 0023BA3C 4B EA 9A 0D */ bl GXSetTevColorIn /* 8023EB00 0023BA40 38 60 00 00 */ li r3, 0 /* 8023EB04 0023BA44 38 80 00 08 */ li r4, 8 /* 8023EB08 0023BA48 38 A0 00 00 */ li r5, 0 /* 8023EB0C 0023BA4C 38 C0 00 00 */ li r6, 0 /* 8023EB10 0023BA50 38 E0 00 00 */ li r7, 0 /* 8023EB14 0023BA54 39 00 00 00 */ li r8, 0 /* 8023EB18 0023BA58 4B EA 9A 79 */ bl GXSetTevColorOp /* 8023EB1C 0023BA5C 38 60 00 00 */ li r3, 0 /* 8023EB20 0023BA60 38 80 00 04 */ li r4, 4 /* 8023EB24 0023BA64 38 A0 00 01 */ li r5, 1 /* 8023EB28 0023BA68 38 C0 00 05 */ li r6, 5 /* 8023EB2C 0023BA6C 38 E0 00 07 */ li r7, 7 /* 8023EB30 0023BA70 4B EA 9A 1D */ bl GXSetTevAlphaIn /* 8023EB34 0023BA74 38 60 00 00 */ li r3, 0 /* 8023EB38 0023BA78 38 80 00 08 */ li r4, 8 /* 8023EB3C 0023BA7C 38 A0 00 00 */ li r5, 0 /* 8023EB40 0023BA80 38 C0 00 00 */ li r6, 0 /* 8023EB44 0023BA84 38 E0 00 00 */ li r7, 0 /* 8023EB48 0023BA88 39 00 00 00 */ li r8, 0 /* 8023EB4C 0023BA8C 4B EA 9A AD */ bl GXSetTevAlphaOp /* 8023EB50 0023BA90 38 60 00 01 */ li r3, 1 /* 8023EB54 0023BA94 38 80 00 04 */ li r4, 4 /* 8023EB58 0023BA98 38 A0 00 05 */ li r5, 5 /* 8023EB5C 0023BA9C 38 C0 00 05 */ li r6, 5 /* 8023EB60 0023BAA0 4B EA A5 79 */ bl GXSetBlendMode /* 8023EB64 0023BAA4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023EB68 0023BAA8 7C 08 03 A6 */ mtlr r0 /* 8023EB6C 0023BAAC 38 21 00 10 */ addi r1, r1, 0x10 /* 8023EB70 0023BAB0 4E 80 00 20 */ blr .global drawTextureFilter__Q24Game15ShadowCylinder2Fv drawTextureFilter__Q24Game15ShadowCylinder2Fv: /* 8023EB74 0023BAB4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023EB78 0023BAB8 7C 08 02 A6 */ mflr r0 /* 8023EB7C 0023BABC 90 01 00 14 */ stw r0, 0x14(r1) /* 8023EB80 0023BAC0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023EB84 0023BAC4 7C 7F 1B 78 */ mr r31, r3 /* 8023EB88 0023BAC8 4B EA 5B 49 */ bl GXClearVtxDesc /* 8023EB8C 0023BACC 4B EA 61 81 */ bl GXInvalidateVtxCache /* 8023EB90 0023BAD0 38 60 00 09 */ li r3, 9 /* 8023EB94 0023BAD4 38 80 00 01 */ li r4, 1 /* 8023EB98 0023BAD8 4B EA 56 ED */ bl GXSetVtxDesc /* 8023EB9C 0023BADC 38 60 00 0D */ li r3, 0xd /* 8023EBA0 0023BAE0 38 80 00 01 */ li r4, 1 /* 8023EBA4 0023BAE4 4B EA 56 E1 */ bl GXSetVtxDesc /* 8023EBA8 0023BAE8 38 60 00 00 */ li r3, 0 /* 8023EBAC 0023BAEC 38 80 00 09 */ li r4, 9 /* 8023EBB0 0023BAF0 38 A0 00 01 */ li r5, 1 /* 8023EBB4 0023BAF4 38 C0 00 04 */ li r6, 4 /* 8023EBB8 0023BAF8 38 E0 00 00 */ li r7, 0 /* 8023EBBC 0023BAFC 4B EA 5B 4D */ bl GXSetVtxAttrFmt /* 8023EBC0 0023BB00 38 60 00 00 */ li r3, 0 /* 8023EBC4 0023BB04 38 80 00 0D */ li r4, 0xd /* 8023EBC8 0023BB08 38 A0 00 01 */ li r5, 1 /* 8023EBCC 0023BB0C 38 C0 00 01 */ li r6, 1 /* 8023EBD0 0023BB10 38 E0 00 04 */ li r7, 4 /* 8023EBD4 0023BB14 4B EA 5B 35 */ bl GXSetVtxAttrFmt /* 8023EBD8 0023BB18 38 60 00 80 */ li r3, 0x80 /* 8023EBDC 0023BB1C 38 80 00 00 */ li r4, 0 /* 8023EBE0 0023BB20 38 A0 00 04 */ li r5, 4 /* 8023EBE4 0023BB24 4B EA 6D A5 */ bl GXBegin /* 8023EBE8 0023BB28 C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023EBEC 0023BB2C 3C 80 CC 01 */ lis r4, 0xCC008000@ha /* 8023EBF0 0023BB30 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8023EBF4 0023BB34 38 60 00 00 */ li r3, 0 /* 8023EBF8 0023BB38 C0 22 C2 C0 */ lfs f1, lbl_8051A620@sda21(r2) /* 8023EBFC 0023BB3C 38 00 00 10 */ li r0, 0x10 /* 8023EC00 0023BB40 D0 04 80 00 */ stfs f0, 0xCC008000@l(r4) /* 8023EC04 0023BB44 D0 44 80 00 */ stfs f2, 0xCC008000@l(r4) /* 8023EC08 0023BB48 D0 24 80 00 */ stfs f1, 0xCC008000@l(r4) /* 8023EC0C 0023BB4C 98 64 80 00 */ stb r3, 0xCC008000@l(r4) /* 8023EC10 0023BB50 98 64 80 00 */ stb r3, 0xCC008000@l(r4) /* 8023EC14 0023BB54 C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023EC18 0023BB58 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023EC1C 0023BB5C D0 04 80 00 */ stfs f0, 0xCC008000@l(r4) /* 8023EC20 0023BB60 D0 44 80 00 */ stfs f2, 0xCC008000@l(r4) /* 8023EC24 0023BB64 D0 24 80 00 */ stfs f1, 0xCC008000@l(r4) /* 8023EC28 0023BB68 98 04 80 00 */ stb r0, 0xCC008000@l(r4) /* 8023EC2C 0023BB6C 98 64 80 00 */ stb r3, 0xCC008000@l(r4) /* 8023EC30 0023BB70 C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023EC34 0023BB74 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023EC38 0023BB78 D0 04 80 00 */ stfs f0, 0xCC008000@l(r4) /* 8023EC3C 0023BB7C D0 44 80 00 */ stfs f2, 0xCC008000@l(r4) /* 8023EC40 0023BB80 D0 24 80 00 */ stfs f1, 0xCC008000@l(r4) /* 8023EC44 0023BB84 98 04 80 00 */ stb r0, 0xCC008000@l(r4) /* 8023EC48 0023BB88 98 04 80 00 */ stb r0, 0xCC008000@l(r4) /* 8023EC4C 0023BB8C C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023EC50 0023BB90 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8023EC54 0023BB94 D0 04 80 00 */ stfs f0, 0xCC008000@l(r4) /* 8023EC58 0023BB98 D0 44 80 00 */ stfs f2, 0xCC008000@l(r4) /* 8023EC5C 0023BB9C D0 24 80 00 */ stfs f1, 0xCC008000@l(r4) /* 8023EC60 0023BBA0 98 64 80 00 */ stb r3, 0xCC008000@l(r4) /* 8023EC64 0023BBA4 98 04 80 00 */ stb r0, 0xCC008000@l(r4) /* 8023EC68 0023BBA8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023EC6C 0023BBAC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023EC70 0023BBB0 7C 08 03 A6 */ mtlr r0 /* 8023EC74 0023BBB4 38 21 00 10 */ addi r1, r1, 0x10 /* 8023EC78 0023BBB8 4E 80 00 20 */ blr .global __ct__Q24Game15ShadowCylinder3FPQ24Game11ShadowParmsP6Color4 __ct__Q24Game15ShadowCylinder3FPQ24Game11ShadowParmsP6Color4: /* 8023EC7C 0023BBBC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8023EC80 0023BBC0 7C 08 02 A6 */ mflr r0 /* 8023EC84 0023BBC4 90 01 00 24 */ stw r0, 0x24(r1) /* 8023EC88 0023BBC8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8023EC8C 0023BBCC 7C BF 2B 78 */ mr r31, r5 /* 8023EC90 0023BBD0 93 C1 00 18 */ stw r30, 0x18(r1) /* 8023EC94 0023BBD4 7C 9E 23 78 */ mr r30, r4 /* 8023EC98 0023BBD8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8023EC9C 0023BBDC 7C 7D 1B 78 */ mr r29, r3 /* 8023ECA0 0023BBE0 4B FF ED 91 */ bl __ct__Q24Game12CylinderBaseFv /* 8023ECA4 0023BBE4 3C 80 80 4C */ lis r4, __vt__Q24Game15ShadowCylinder3@ha /* 8023ECA8 0023BBE8 7F A3 EB 78 */ mr r3, r29 /* 8023ECAC 0023BBEC 38 04 19 10 */ addi r0, r4, __vt__Q24Game15ShadowCylinder3@l /* 8023ECB0 0023BBF0 90 1D 00 00 */ stw r0, 0(r29) /* 8023ECB4 0023BBF4 93 DD 00 0C */ stw r30, 0xc(r29) /* 8023ECB8 0023BBF8 93 FD 00 08 */ stw r31, 8(r29) /* 8023ECBC 0023BBFC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8023ECC0 0023BC00 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8023ECC4 0023BC04 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8023ECC8 0023BC08 80 01 00 24 */ lwz r0, 0x24(r1) /* 8023ECCC 0023BC0C 7C 08 03 A6 */ mtlr r0 /* 8023ECD0 0023BC10 38 21 00 20 */ addi r1, r1, 0x20 /* 8023ECD4 0023BC14 4E 80 00 20 */ blr .global drawInit__Q24Game15ShadowCylinder3Fv drawInit__Q24Game15ShadowCylinder3Fv: /* 8023ECD8 0023BC18 94 21 FF 20 */ stwu r1, -0xe0(r1) /* 8023ECDC 0023BC1C 7C 08 02 A6 */ mflr r0 /* 8023ECE0 0023BC20 90 01 00 E4 */ stw r0, 0xe4(r1) /* 8023ECE4 0023BC24 DB E1 00 D0 */ stfd f31, 0xd0(r1) /* 8023ECE8 0023BC28 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 /* 8023ECEC 0023BC2C DB C1 00 C0 */ stfd f30, 0xc0(r1) /* 8023ECF0 0023BC30 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 /* 8023ECF4 0023BC34 93 E1 00 BC */ stw r31, 0xbc(r1) /* 8023ECF8 0023BC38 93 C1 00 B8 */ stw r30, 0xb8(r1) /* 8023ECFC 0023BC3C 93 A1 00 B4 */ stw r29, 0xb4(r1) /* 8023ED00 0023BC40 93 81 00 B0 */ stw r28, 0xb0(r1) /* 8023ED04 0023BC44 7C 7F 1B 78 */ mr r31, r3 /* 8023ED08 0023BC48 3C 60 80 48 */ lis r3, lbl_80483F58@ha /* 8023ED0C 0023BC4C C0 3F 00 14 */ lfs f1, 0x14(r31) /* 8023ED10 0023BC50 3B C3 3F 58 */ addi r30, r3, lbl_80483F58@l /* 8023ED14 0023BC54 C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023ED18 0023BC58 38 61 00 68 */ addi r3, r1, 0x68 /* 8023ED1C 0023BC5C C0 7F 00 10 */ lfs f3, 0x10(r31) /* 8023ED20 0023BC60 C0 9F 00 18 */ lfs f4, 0x18(r31) /* 8023ED24 0023BC64 C0 A2 C2 C0 */ lfs f5, lbl_8051A620@sda21(r2) /* 8023ED28 0023BC68 C0 C2 C2 F0 */ lfs f6, lbl_8051A650@sda21(r2) /* 8023ED2C 0023BC6C 4B EA C0 AD */ bl C_MTXOrtho /* 8023ED30 0023BC70 38 61 00 68 */ addi r3, r1, 0x68 /* 8023ED34 0023BC74 38 80 00 01 */ li r4, 1 /* 8023ED38 0023BC78 4B EA A7 11 */ bl GXSetProjection /* 8023ED3C 0023BC7C 83 BE 00 40 */ lwz r29, 0x40(r30) /* 8023ED40 0023BC80 38 61 00 38 */ addi r3, r1, 0x38 /* 8023ED44 0023BC84 83 9E 00 44 */ lwz r28, 0x44(r30) /* 8023ED48 0023BC88 38 81 00 2C */ addi r4, r1, 0x2c /* 8023ED4C 0023BC8C 81 9E 00 48 */ lwz r12, 0x48(r30) /* 8023ED50 0023BC90 38 A1 00 14 */ addi r5, r1, 0x14 /* 8023ED54 0023BC94 81 7E 00 4C */ lwz r11, 0x4c(r30) /* 8023ED58 0023BC98 38 C1 00 20 */ addi r6, r1, 0x20 /* 8023ED5C 0023BC9C 81 5E 00 50 */ lwz r10, 0x50(r30) /* 8023ED60 0023BCA0 81 3E 00 54 */ lwz r9, 0x54(r30) /* 8023ED64 0023BCA4 81 1E 00 58 */ lwz r8, 0x58(r30) /* 8023ED68 0023BCA8 80 FE 00 5C */ lwz r7, 0x5c(r30) /* 8023ED6C 0023BCAC 80 1E 00 60 */ lwz r0, 0x60(r30) /* 8023ED70 0023BCB0 93 A1 00 14 */ stw r29, 0x14(r1) /* 8023ED74 0023BCB4 93 81 00 18 */ stw r28, 0x18(r1) /* 8023ED78 0023BCB8 91 81 00 1C */ stw r12, 0x1c(r1) /* 8023ED7C 0023BCBC 91 61 00 20 */ stw r11, 0x20(r1) /* 8023ED80 0023BCC0 91 41 00 24 */ stw r10, 0x24(r1) /* 8023ED84 0023BCC4 91 21 00 28 */ stw r9, 0x28(r1) /* 8023ED88 0023BCC8 91 01 00 2C */ stw r8, 0x2c(r1) /* 8023ED8C 0023BCCC 90 E1 00 30 */ stw r7, 0x30(r1) /* 8023ED90 0023BCD0 90 01 00 34 */ stw r0, 0x34(r1) /* 8023ED94 0023BCD4 4B EA BB 65 */ bl C_MTXLookAt /* 8023ED98 0023BCD8 38 61 00 38 */ addi r3, r1, 0x38 /* 8023ED9C 0023BCDC 38 80 00 00 */ li r4, 0 /* 8023EDA0 0023BCE0 4B EA A7 D9 */ bl GXLoadPosMtxImm /* 8023EDA4 0023BCE4 C3 FF 00 14 */ lfs f31, 0x14(r31) /* 8023EDA8 0023BCE8 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 8023EDAC 0023BCEC C3 DF 00 10 */ lfs f30, 0x10(r31) /* 8023EDB0 0023BCF0 EC 20 F8 28 */ fsubs f1, f0, f31 /* 8023EDB4 0023BCF4 4B E8 2D 99 */ bl __cvt_fp2unsigned /* 8023EDB8 0023BCF8 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023EDBC 0023BCFC 7C 7C 1B 78 */ mr r28, r3 /* 8023EDC0 0023BD00 EC 20 F0 28 */ fsubs f1, f0, f30 /* 8023EDC4 0023BD04 4B E8 2D 89 */ bl __cvt_fp2unsigned /* 8023EDC8 0023BD08 FC 20 F8 90 */ fmr f1, f31 /* 8023EDCC 0023BD0C 7C 7D 1B 78 */ mr r29, r3 /* 8023EDD0 0023BD10 4B E8 2D 7D */ bl __cvt_fp2unsigned /* 8023EDD4 0023BD14 FC 20 F0 90 */ fmr f1, f30 /* 8023EDD8 0023BD18 7C 7E 1B 78 */ mr r30, r3 /* 8023EDDC 0023BD1C 4B E8 2D 71 */ bl __cvt_fp2unsigned /* 8023EDE0 0023BD20 7F C4 F3 78 */ mr r4, r30 /* 8023EDE4 0023BD24 7F A5 EB 78 */ mr r5, r29 /* 8023EDE8 0023BD28 7F 86 E3 78 */ mr r6, r28 /* 8023EDEC 0023BD2C 4B EA A9 ED */ bl GXSetScissor /* 8023EDF0 0023BD30 C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023EDF4 0023BD34 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 8023EDF8 0023BD38 C0 3F 00 10 */ lfs f1, 0x10(r31) /* 8023EDFC 0023BD3C C0 7F 00 18 */ lfs f3, 0x18(r31) /* 8023EE00 0023BD40 EC 80 10 28 */ fsubs f4, f0, f2 /* 8023EE04 0023BD44 C0 A2 C2 C0 */ lfs f5, lbl_8051A620@sda21(r2) /* 8023EE08 0023BD48 EC 63 08 28 */ fsubs f3, f3, f1 /* 8023EE0C 0023BD4C C0 C2 C2 E0 */ lfs f6, lbl_8051A640@sda21(r2) /* 8023EE10 0023BD50 4B EA A9 81 */ bl GXSetViewport /* 8023EE14 0023BD54 38 60 00 00 */ li r3, 0 /* 8023EE18 0023BD58 4B EA 61 85 */ bl GXSetNumTexGens /* 8023EE1C 0023BD5C 38 60 00 00 */ li r3, 0 /* 8023EE20 0023BD60 4B EA 95 35 */ bl GXSetNumIndStages /* 8023EE24 0023BD64 38 60 00 00 */ li r3, 0 /* 8023EE28 0023BD68 4B EA 96 01 */ bl __GXSetIndirectMask /* 8023EE2C 0023BD6C 38 60 00 00 */ li r3, 0 /* 8023EE30 0023BD70 4B EA A7 E9 */ bl GXSetCurrentMtx /* 8023EE34 0023BD74 38 60 00 01 */ li r3, 1 /* 8023EE38 0023BD78 4B EA 9D 81 */ bl GXSetNumTevStages /* 8023EE3C 0023BD7C 38 60 00 00 */ li r3, 0 /* 8023EE40 0023BD80 38 80 00 04 */ li r4, 4 /* 8023EE44 0023BD84 4B EA 96 39 */ bl GXSetTevOp /* 8023EE48 0023BD88 38 60 00 00 */ li r3, 0 /* 8023EE4C 0023BD8C 38 80 00 FF */ li r4, 0xff /* 8023EE50 0023BD90 38 A0 00 FF */ li r5, 0xff /* 8023EE54 0023BD94 38 C0 00 04 */ li r6, 4 /* 8023EE58 0023BD98 4B EA 9B C5 */ bl GXSetTevOrder /* 8023EE5C 0023BD9C 38 60 00 01 */ li r3, 1 /* 8023EE60 0023BDA0 4B EA 80 05 */ bl GXSetNumChans /* 8023EE64 0023BDA4 81 1F 00 08 */ lwz r8, 8(r31) /* 8023EE68 0023BDA8 38 81 00 0C */ addi r4, r1, 0xc /* 8023EE6C 0023BDAC 38 60 00 04 */ li r3, 4 /* 8023EE70 0023BDB0 88 E8 00 00 */ lbz r7, 0(r8) /* 8023EE74 0023BDB4 88 C8 00 01 */ lbz r6, 1(r8) /* 8023EE78 0023BDB8 88 A8 00 02 */ lbz r5, 2(r8) /* 8023EE7C 0023BDBC 88 08 00 03 */ lbz r0, 3(r8) /* 8023EE80 0023BDC0 98 E1 00 08 */ stb r7, 8(r1) /* 8023EE84 0023BDC4 98 C1 00 09 */ stb r6, 9(r1) /* 8023EE88 0023BDC8 98 A1 00 0A */ stb r5, 0xa(r1) /* 8023EE8C 0023BDCC 98 01 00 0B */ stb r0, 0xb(r1) /* 8023EE90 0023BDD0 80 01 00 08 */ lwz r0, 8(r1) /* 8023EE94 0023BDD4 90 01 00 0C */ stw r0, 0xc(r1) /* 8023EE98 0023BDD8 4B EA 7E DD */ bl GXSetChanMatColor /* 8023EE9C 0023BDDC 38 60 00 04 */ li r3, 4 /* 8023EEA0 0023BDE0 38 80 00 00 */ li r4, 0 /* 8023EEA4 0023BDE4 38 A0 00 00 */ li r5, 0 /* 8023EEA8 0023BDE8 38 C0 00 00 */ li r6, 0 /* 8023EEAC 0023BDEC 38 E0 00 00 */ li r7, 0 /* 8023EEB0 0023BDF0 39 00 00 00 */ li r8, 0 /* 8023EEB4 0023BDF4 39 20 00 02 */ li r9, 2 /* 8023EEB8 0023BDF8 4B EA 7F E9 */ bl GXSetChanCtrl /* 8023EEBC 0023BDFC 38 60 00 02 */ li r3, 2 /* 8023EEC0 0023BE00 4B EA 6C E9 */ bl GXSetCullMode /* 8023EEC4 0023BE04 38 60 00 00 */ li r3, 0 /* 8023EEC8 0023BE08 38 80 00 00 */ li r4, 0 /* 8023EECC 0023BE0C 38 A0 00 00 */ li r5, 0 /* 8023EED0 0023BE10 4B EA A2 B5 */ bl GXSetZMode /* 8023EED4 0023BE14 38 60 00 00 */ li r3, 0 /* 8023EED8 0023BE18 38 80 00 01 */ li r4, 1 /* 8023EEDC 0023BE1C 38 A0 00 01 */ li r5, 1 /* 8023EEE0 0023BE20 38 C0 00 00 */ li r6, 0 /* 8023EEE4 0023BE24 4B EA A1 F5 */ bl GXSetBlendMode /* 8023EEE8 0023BE28 38 60 00 00 */ li r3, 0 /* 8023EEEC 0023BE2C 4B EA A2 41 */ bl GXSetColorUpdate /* 8023EEF0 0023BE30 38 60 00 01 */ li r3, 1 /* 8023EEF4 0023BE34 4B EA A2 65 */ bl GXSetAlphaUpdate /* 8023EEF8 0023BE38 38 60 00 01 */ li r3, 1 /* 8023EEFC 0023BE3C 38 80 00 00 */ li r4, 0 /* 8023EF00 0023BE40 4B EA A3 ED */ bl GXSetDstAlpha /* 8023EF04 0023BE44 4B EA 57 CD */ bl GXClearVtxDesc /* 8023EF08 0023BE48 4B EA 5E 05 */ bl GXInvalidateVtxCache /* 8023EF0C 0023BE4C 38 60 00 09 */ li r3, 9 /* 8023EF10 0023BE50 38 80 00 01 */ li r4, 1 /* 8023EF14 0023BE54 4B EA 53 71 */ bl GXSetVtxDesc /* 8023EF18 0023BE58 38 60 00 00 */ li r3, 0 /* 8023EF1C 0023BE5C 38 80 00 09 */ li r4, 9 /* 8023EF20 0023BE60 38 A0 00 01 */ li r5, 1 /* 8023EF24 0023BE64 38 C0 00 04 */ li r6, 4 /* 8023EF28 0023BE68 38 E0 00 00 */ li r7, 0 /* 8023EF2C 0023BE6C 4B EA 57 DD */ bl GXSetVtxAttrFmt /* 8023EF30 0023BE70 38 60 00 80 */ li r3, 0x80 /* 8023EF34 0023BE74 38 80 00 00 */ li r4, 0 /* 8023EF38 0023BE78 38 A0 00 04 */ li r5, 4 /* 8023EF3C 0023BE7C 4B EA 6A 4D */ bl GXBegin /* 8023EF40 0023BE80 C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023EF44 0023BE84 3C A0 CC 01 */ lis r5, 0xCC008000@ha /* 8023EF48 0023BE88 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8023EF4C 0023BE8C 38 60 00 00 */ li r3, 0 /* 8023EF50 0023BE90 C0 22 C2 C0 */ lfs f1, lbl_8051A620@sda21(r2) /* 8023EF54 0023BE94 38 80 00 00 */ li r4, 0 /* 8023EF58 0023BE98 D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) /* 8023EF5C 0023BE9C D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) /* 8023EF60 0023BEA0 D0 25 80 00 */ stfs f1, 0xCC008000@l(r5) /* 8023EF64 0023BEA4 C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023EF68 0023BEA8 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023EF6C 0023BEAC D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) /* 8023EF70 0023BEB0 D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) /* 8023EF74 0023BEB4 D0 25 80 00 */ stfs f1, 0xCC008000@l(r5) /* 8023EF78 0023BEB8 C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023EF7C 0023BEBC C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023EF80 0023BEC0 D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) /* 8023EF84 0023BEC4 D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) /* 8023EF88 0023BEC8 D0 25 80 00 */ stfs f1, 0xCC008000@l(r5) /* 8023EF8C 0023BECC C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023EF90 0023BED0 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8023EF94 0023BED4 D0 05 80 00 */ stfs f0, 0xCC008000@l(r5) /* 8023EF98 0023BED8 D0 45 80 00 */ stfs f2, 0xCC008000@l(r5) /* 8023EF9C 0023BEDC D0 25 80 00 */ stfs f1, 0xCC008000@l(r5) /* 8023EFA0 0023BEE0 4B EA A3 4D */ bl GXSetDstAlpha /* 8023EFA4 0023BEE4 80 02 C2 F8 */ lwz r0, lbl_8051A658@sda21(r2) /* 8023EFA8 0023BEE8 38 81 00 10 */ addi r4, r1, 0x10 /* 8023EFAC 0023BEEC 38 60 00 04 */ li r3, 4 /* 8023EFB0 0023BEF0 90 01 00 10 */ stw r0, 0x10(r1) /* 8023EFB4 0023BEF4 4B EA 7D C1 */ bl GXSetChanMatColor /* 8023EFB8 0023BEF8 4B EA 57 19 */ bl GXClearVtxDesc /* 8023EFBC 0023BEFC 4B EA 5D 51 */ bl GXInvalidateVtxCache /* 8023EFC0 0023BF00 38 60 00 09 */ li r3, 9 /* 8023EFC4 0023BF04 38 80 00 03 */ li r4, 3 /* 8023EFC8 0023BF08 4B EA 52 BD */ bl GXSetVtxDesc /* 8023EFCC 0023BF0C 38 60 00 00 */ li r3, 0 /* 8023EFD0 0023BF10 38 80 00 09 */ li r4, 9 /* 8023EFD4 0023BF14 38 A0 00 01 */ li r5, 1 /* 8023EFD8 0023BF18 38 C0 00 04 */ li r6, 4 /* 8023EFDC 0023BF1C 38 E0 00 00 */ li r7, 0 /* 8023EFE0 0023BF20 4B EA 57 29 */ bl GXSetVtxAttrFmt /* 8023EFE4 0023BF24 3C 80 80 4F */ lis r4, sCylinderVertPos__4Game@ha /* 8023EFE8 0023BF28 38 60 00 09 */ li r3, 9 /* 8023EFEC 0023BF2C 38 84 79 D0 */ addi r4, r4, sCylinderVertPos__4Game@l /* 8023EFF0 0023BF30 38 A0 00 0C */ li r5, 0xc /* 8023EFF4 0023BF34 4B EA 5C 8D */ bl GXSetArray /* 8023EFF8 0023BF38 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 /* 8023EFFC 0023BF3C CB E1 00 D0 */ lfd f31, 0xd0(r1) /* 8023F000 0023BF40 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 /* 8023F004 0023BF44 CB C1 00 C0 */ lfd f30, 0xc0(r1) /* 8023F008 0023BF48 83 E1 00 BC */ lwz r31, 0xbc(r1) /* 8023F00C 0023BF4C 83 C1 00 B8 */ lwz r30, 0xb8(r1) /* 8023F010 0023BF50 83 A1 00 B4 */ lwz r29, 0xb4(r1) /* 8023F014 0023BF54 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 8023F018 0023BF58 83 81 00 B0 */ lwz r28, 0xb0(r1) /* 8023F01C 0023BF5C 7C 08 03 A6 */ mtlr r0 /* 8023F020 0023BF60 38 21 00 E0 */ addi r1, r1, 0xe0 /* 8023F024 0023BF64 4E 80 00 20 */ blr .global drawCylinder__Q24Game15ShadowCylinder3FR7Matrixfi drawCylinder__Q24Game15ShadowCylinder3FR7Matrixfi: /* 8023F028 0023BF68 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023F02C 0023BF6C 7C 08 02 A6 */ mflr r0 /* 8023F030 0023BF70 90 01 00 14 */ stw r0, 0x14(r1) /* 8023F034 0023BF74 7C 80 23 78 */ mr r0, r4 /* 8023F038 0023BF78 38 80 00 00 */ li r4, 0 /* 8023F03C 0023BF7C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023F040 0023BF80 7C BF 2B 78 */ mr r31, r5 /* 8023F044 0023BF84 93 C1 00 08 */ stw r30, 8(r1) /* 8023F048 0023BF88 7C 7E 1B 78 */ mr r30, r3 /* 8023F04C 0023BF8C 7C 03 03 78 */ mr r3, r0 /* 8023F050 0023BF90 4B EA A5 29 */ bl GXLoadPosMtxImm /* 8023F054 0023BF94 38 60 00 01 */ li r3, 1 /* 8023F058 0023BF98 4B EA 6B 51 */ bl GXSetCullMode /* 8023F05C 0023BF9C 38 60 00 01 */ li r3, 1 /* 8023F060 0023BFA0 38 80 00 06 */ li r4, 6 /* 8023F064 0023BFA4 38 A0 00 00 */ li r5, 0 /* 8023F068 0023BFA8 4B EA A1 1D */ bl GXSetZMode /* 8023F06C 0023BFAC 38 60 00 01 */ li r3, 1 /* 8023F070 0023BFB0 38 80 00 01 */ li r4, 1 /* 8023F074 0023BFB4 38 A0 00 01 */ li r5, 1 /* 8023F078 0023BFB8 38 C0 00 05 */ li r6, 5 /* 8023F07C 0023BFBC 4B EA A0 5D */ bl GXSetBlendMode /* 8023F080 0023BFC0 80 7E 00 04 */ lwz r3, 4(r30) /* 8023F084 0023BFC4 57 FF 10 3A */ slwi r31, r31, 2 /* 8023F088 0023BFC8 7C 63 F8 2E */ lwzx r3, r3, r31 /* 8023F08C 0023BFCC 80 03 00 08 */ lwz r0, 8(r3) /* 8023F090 0023BFD0 80 63 00 04 */ lwz r3, 4(r3) /* 8023F094 0023BFD4 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 8023F098 0023BFD8 4B EA A3 41 */ bl GXCallDisplayList /* 8023F09C 0023BFDC 38 60 00 02 */ li r3, 2 /* 8023F0A0 0023BFE0 4B EA 6B 09 */ bl GXSetCullMode /* 8023F0A4 0023BFE4 38 60 00 01 */ li r3, 1 /* 8023F0A8 0023BFE8 38 80 00 03 */ li r4, 3 /* 8023F0AC 0023BFEC 38 A0 00 00 */ li r5, 0 /* 8023F0B0 0023BFF0 4B EA A0 D5 */ bl GXSetZMode /* 8023F0B4 0023BFF4 80 7E 00 04 */ lwz r3, 4(r30) /* 8023F0B8 0023BFF8 7C 63 F8 2E */ lwzx r3, r3, r31 /* 8023F0BC 0023BFFC 80 03 00 08 */ lwz r0, 8(r3) /* 8023F0C0 0023C000 80 63 00 04 */ lwz r3, 4(r3) /* 8023F0C4 0023C004 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 8023F0C8 0023C008 4B EA A3 11 */ bl GXCallDisplayList /* 8023F0CC 0023C00C 38 60 00 00 */ li r3, 0 /* 8023F0D0 0023C010 38 80 00 07 */ li r4, 7 /* 8023F0D4 0023C014 38 A0 00 00 */ li r5, 0 /* 8023F0D8 0023C018 4B EA A0 AD */ bl GXSetZMode /* 8023F0DC 0023C01C 38 60 00 03 */ li r3, 3 /* 8023F0E0 0023C020 38 80 00 01 */ li r4, 1 /* 8023F0E4 0023C024 38 A0 00 01 */ li r5, 1 /* 8023F0E8 0023C028 38 C0 00 05 */ li r6, 5 /* 8023F0EC 0023C02C 4B EA 9F ED */ bl GXSetBlendMode /* 8023F0F0 0023C030 80 7E 00 04 */ lwz r3, 4(r30) /* 8023F0F4 0023C034 7C 63 F8 2E */ lwzx r3, r3, r31 /* 8023F0F8 0023C038 80 03 00 08 */ lwz r0, 8(r3) /* 8023F0FC 0023C03C 80 63 00 04 */ lwz r3, 4(r3) /* 8023F100 0023C040 54 04 00 34 */ rlwinm r4, r0, 0, 0, 0x1a /* 8023F104 0023C044 4B EA A2 D5 */ bl GXCallDisplayList /* 8023F108 0023C048 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023F10C 0023C04C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023F110 0023C050 83 C1 00 08 */ lwz r30, 8(r1) /* 8023F114 0023C054 7C 08 03 A6 */ mtlr r0 /* 8023F118 0023C058 38 21 00 10 */ addi r1, r1, 0x10 /* 8023F11C 0023C05C 4E 80 00 20 */ blr .global drawFinish__Q24Game15ShadowCylinder3Fv drawFinish__Q24Game15ShadowCylinder3Fv: /* 8023F120 0023C060 94 21 FF 20 */ stwu r1, -0xe0(r1) /* 8023F124 0023C064 7C 08 02 A6 */ mflr r0 /* 8023F128 0023C068 90 01 00 E4 */ stw r0, 0xe4(r1) /* 8023F12C 0023C06C DB E1 00 D0 */ stfd f31, 0xd0(r1) /* 8023F130 0023C070 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0 /* 8023F134 0023C074 DB C1 00 C0 */ stfd f30, 0xc0(r1) /* 8023F138 0023C078 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0 /* 8023F13C 0023C07C 93 E1 00 BC */ stw r31, 0xbc(r1) /* 8023F140 0023C080 93 C1 00 B8 */ stw r30, 0xb8(r1) /* 8023F144 0023C084 93 A1 00 B4 */ stw r29, 0xb4(r1) /* 8023F148 0023C088 93 81 00 B0 */ stw r28, 0xb0(r1) /* 8023F14C 0023C08C 7C 7F 1B 78 */ mr r31, r3 /* 8023F150 0023C090 3C 60 80 48 */ lis r3, lbl_80483F58@ha /* 8023F154 0023C094 C0 3F 00 14 */ lfs f1, 0x14(r31) /* 8023F158 0023C098 3B C3 3F 58 */ addi r30, r3, lbl_80483F58@l /* 8023F15C 0023C09C C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023F160 0023C0A0 38 61 00 64 */ addi r3, r1, 0x64 /* 8023F164 0023C0A4 C0 7F 00 10 */ lfs f3, 0x10(r31) /* 8023F168 0023C0A8 C0 9F 00 18 */ lfs f4, 0x18(r31) /* 8023F16C 0023C0AC C0 A2 C2 C0 */ lfs f5, lbl_8051A620@sda21(r2) /* 8023F170 0023C0B0 C0 C2 C2 F0 */ lfs f6, lbl_8051A650@sda21(r2) /* 8023F174 0023C0B4 4B EA BC 65 */ bl C_MTXOrtho /* 8023F178 0023C0B8 38 61 00 64 */ addi r3, r1, 0x64 /* 8023F17C 0023C0BC 38 80 00 01 */ li r4, 1 /* 8023F180 0023C0C0 4B EA A2 C9 */ bl GXSetProjection /* 8023F184 0023C0C4 83 BE 00 40 */ lwz r29, 0x40(r30) /* 8023F188 0023C0C8 38 61 00 34 */ addi r3, r1, 0x34 /* 8023F18C 0023C0CC 83 9E 00 44 */ lwz r28, 0x44(r30) /* 8023F190 0023C0D0 38 81 00 28 */ addi r4, r1, 0x28 /* 8023F194 0023C0D4 81 9E 00 48 */ lwz r12, 0x48(r30) /* 8023F198 0023C0D8 38 A1 00 10 */ addi r5, r1, 0x10 /* 8023F19C 0023C0DC 81 7E 00 4C */ lwz r11, 0x4c(r30) /* 8023F1A0 0023C0E0 38 C1 00 1C */ addi r6, r1, 0x1c /* 8023F1A4 0023C0E4 81 5E 00 50 */ lwz r10, 0x50(r30) /* 8023F1A8 0023C0E8 81 3E 00 54 */ lwz r9, 0x54(r30) /* 8023F1AC 0023C0EC 81 1E 00 58 */ lwz r8, 0x58(r30) /* 8023F1B0 0023C0F0 80 FE 00 5C */ lwz r7, 0x5c(r30) /* 8023F1B4 0023C0F4 80 1E 00 60 */ lwz r0, 0x60(r30) /* 8023F1B8 0023C0F8 93 A1 00 10 */ stw r29, 0x10(r1) /* 8023F1BC 0023C0FC 93 81 00 14 */ stw r28, 0x14(r1) /* 8023F1C0 0023C100 91 81 00 18 */ stw r12, 0x18(r1) /* 8023F1C4 0023C104 91 61 00 1C */ stw r11, 0x1c(r1) /* 8023F1C8 0023C108 91 41 00 20 */ stw r10, 0x20(r1) /* 8023F1CC 0023C10C 91 21 00 24 */ stw r9, 0x24(r1) /* 8023F1D0 0023C110 91 01 00 28 */ stw r8, 0x28(r1) /* 8023F1D4 0023C114 90 E1 00 2C */ stw r7, 0x2c(r1) /* 8023F1D8 0023C118 90 01 00 30 */ stw r0, 0x30(r1) /* 8023F1DC 0023C11C 4B EA B7 1D */ bl C_MTXLookAt /* 8023F1E0 0023C120 38 61 00 34 */ addi r3, r1, 0x34 /* 8023F1E4 0023C124 38 80 00 00 */ li r4, 0 /* 8023F1E8 0023C128 4B EA A3 91 */ bl GXLoadPosMtxImm /* 8023F1EC 0023C12C C3 FF 00 14 */ lfs f31, 0x14(r31) /* 8023F1F0 0023C130 C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 8023F1F4 0023C134 C3 DF 00 10 */ lfs f30, 0x10(r31) /* 8023F1F8 0023C138 EC 20 F8 28 */ fsubs f1, f0, f31 /* 8023F1FC 0023C13C 4B E8 29 51 */ bl __cvt_fp2unsigned /* 8023F200 0023C140 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023F204 0023C144 7C 7C 1B 78 */ mr r28, r3 /* 8023F208 0023C148 EC 20 F0 28 */ fsubs f1, f0, f30 /* 8023F20C 0023C14C 4B E8 29 41 */ bl __cvt_fp2unsigned /* 8023F210 0023C150 FC 20 F8 90 */ fmr f1, f31 /* 8023F214 0023C154 7C 7D 1B 78 */ mr r29, r3 /* 8023F218 0023C158 4B E8 29 35 */ bl __cvt_fp2unsigned /* 8023F21C 0023C15C FC 20 F0 90 */ fmr f1, f30 /* 8023F220 0023C160 7C 7E 1B 78 */ mr r30, r3 /* 8023F224 0023C164 4B E8 29 29 */ bl __cvt_fp2unsigned /* 8023F228 0023C168 7F C4 F3 78 */ mr r4, r30 /* 8023F22C 0023C16C 7F A5 EB 78 */ mr r5, r29 /* 8023F230 0023C170 7F 86 E3 78 */ mr r6, r28 /* 8023F234 0023C174 4B EA A5 A5 */ bl GXSetScissor /* 8023F238 0023C178 C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023F23C 0023C17C C0 1F 00 1C */ lfs f0, 0x1c(r31) /* 8023F240 0023C180 C0 3F 00 10 */ lfs f1, 0x10(r31) /* 8023F244 0023C184 C0 7F 00 18 */ lfs f3, 0x18(r31) /* 8023F248 0023C188 EC 80 10 28 */ fsubs f4, f0, f2 /* 8023F24C 0023C18C C0 A2 C2 C0 */ lfs f5, lbl_8051A620@sda21(r2) /* 8023F250 0023C190 EC 63 08 28 */ fsubs f3, f3, f1 /* 8023F254 0023C194 C0 C2 C2 E0 */ lfs f6, lbl_8051A640@sda21(r2) /* 8023F258 0023C198 4B EA A5 39 */ bl GXSetViewport /* 8023F25C 0023C19C 38 60 00 01 */ li r3, 1 /* 8023F260 0023C1A0 4B EA 9E CD */ bl GXSetColorUpdate /* 8023F264 0023C1A4 38 60 00 01 */ li r3, 1 /* 8023F268 0023C1A8 4B EA 9E F1 */ bl GXSetAlphaUpdate /* 8023F26C 0023C1AC 81 1F 00 08 */ lwz r8, 8(r31) /* 8023F270 0023C1B0 38 81 00 0C */ addi r4, r1, 0xc /* 8023F274 0023C1B4 38 60 00 04 */ li r3, 4 /* 8023F278 0023C1B8 88 E8 00 00 */ lbz r7, 0(r8) /* 8023F27C 0023C1BC 88 C8 00 01 */ lbz r6, 1(r8) /* 8023F280 0023C1C0 88 A8 00 02 */ lbz r5, 2(r8) /* 8023F284 0023C1C4 88 08 00 03 */ lbz r0, 3(r8) /* 8023F288 0023C1C8 98 E1 00 08 */ stb r7, 8(r1) /* 8023F28C 0023C1CC 98 C1 00 09 */ stb r6, 9(r1) /* 8023F290 0023C1D0 98 A1 00 0A */ stb r5, 0xa(r1) /* 8023F294 0023C1D4 98 01 00 0B */ stb r0, 0xb(r1) /* 8023F298 0023C1D8 80 01 00 08 */ lwz r0, 8(r1) /* 8023F29C 0023C1DC 90 01 00 0C */ stw r0, 0xc(r1) /* 8023F2A0 0023C1E0 4B EA 7A D5 */ bl GXSetChanMatColor /* 8023F2A4 0023C1E4 38 60 00 02 */ li r3, 2 /* 8023F2A8 0023C1E8 4B EA 69 01 */ bl GXSetCullMode /* 8023F2AC 0023C1EC 38 60 00 00 */ li r3, 0 /* 8023F2B0 0023C1F0 38 80 00 00 */ li r4, 0 /* 8023F2B4 0023C1F4 38 A0 00 00 */ li r5, 0 /* 8023F2B8 0023C1F8 4B EA 9E CD */ bl GXSetZMode /* 8023F2BC 0023C1FC 7F E3 FB 78 */ mr r3, r31 /* 8023F2C0 0023C200 48 00 00 35 */ bl drawScreenFilter__Q24Game15ShadowCylinder3Fv /* 8023F2C4 0023C204 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0 /* 8023F2C8 0023C208 CB E1 00 D0 */ lfd f31, 0xd0(r1) /* 8023F2CC 0023C20C E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0 /* 8023F2D0 0023C210 CB C1 00 C0 */ lfd f30, 0xc0(r1) /* 8023F2D4 0023C214 83 E1 00 BC */ lwz r31, 0xbc(r1) /* 8023F2D8 0023C218 83 C1 00 B8 */ lwz r30, 0xb8(r1) /* 8023F2DC 0023C21C 83 A1 00 B4 */ lwz r29, 0xb4(r1) /* 8023F2E0 0023C220 80 01 00 E4 */ lwz r0, 0xe4(r1) /* 8023F2E4 0023C224 83 81 00 B0 */ lwz r28, 0xb0(r1) /* 8023F2E8 0023C228 7C 08 03 A6 */ mtlr r0 /* 8023F2EC 0023C22C 38 21 00 E0 */ addi r1, r1, 0xe0 /* 8023F2F0 0023C230 4E 80 00 20 */ blr .global drawScreenFilter__Q24Game15ShadowCylinder3Fv drawScreenFilter__Q24Game15ShadowCylinder3Fv: /* 8023F2F4 0023C234 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8023F2F8 0023C238 7C 08 02 A6 */ mflr r0 /* 8023F2FC 0023C23C 38 80 00 06 */ li r4, 6 /* 8023F300 0023C240 38 A0 00 07 */ li r5, 7 /* 8023F304 0023C244 90 01 00 14 */ stw r0, 0x14(r1) /* 8023F308 0023C248 38 C0 00 05 */ li r6, 5 /* 8023F30C 0023C24C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8023F310 0023C250 7C 7F 1B 78 */ mr r31, r3 /* 8023F314 0023C254 38 60 00 01 */ li r3, 1 /* 8023F318 0023C258 4B EA 9D C1 */ bl GXSetBlendMode /* 8023F31C 0023C25C 4B EA 53 B5 */ bl GXClearVtxDesc /* 8023F320 0023C260 4B EA 59 ED */ bl GXInvalidateVtxCache /* 8023F324 0023C264 38 60 00 09 */ li r3, 9 /* 8023F328 0023C268 38 80 00 01 */ li r4, 1 /* 8023F32C 0023C26C 4B EA 4F 59 */ bl GXSetVtxDesc /* 8023F330 0023C270 38 60 00 00 */ li r3, 0 /* 8023F334 0023C274 38 80 00 09 */ li r4, 9 /* 8023F338 0023C278 38 A0 00 01 */ li r5, 1 /* 8023F33C 0023C27C 38 C0 00 04 */ li r6, 4 /* 8023F340 0023C280 38 E0 00 00 */ li r7, 0 /* 8023F344 0023C284 4B EA 53 C5 */ bl GXSetVtxAttrFmt /* 8023F348 0023C288 38 60 00 80 */ li r3, 0x80 /* 8023F34C 0023C28C 38 80 00 00 */ li r4, 0 /* 8023F350 0023C290 38 A0 00 04 */ li r5, 4 /* 8023F354 0023C294 4B EA 66 35 */ bl GXBegin /* 8023F358 0023C298 C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023F35C 0023C29C 3C 60 CC 01 */ lis r3, 0xCC008000@ha /* 8023F360 0023C2A0 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8023F364 0023C2A4 C0 22 C2 C0 */ lfs f1, lbl_8051A620@sda21(r2) /* 8023F368 0023C2A8 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) /* 8023F36C 0023C2AC D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) /* 8023F370 0023C2B0 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) /* 8023F374 0023C2B4 C0 5F 00 14 */ lfs f2, 0x14(r31) /* 8023F378 0023C2B8 C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023F37C 0023C2BC D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) /* 8023F380 0023C2C0 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) /* 8023F384 0023C2C4 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) /* 8023F388 0023C2C8 C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023F38C 0023C2CC C0 1F 00 18 */ lfs f0, 0x18(r31) /* 8023F390 0023C2D0 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) /* 8023F394 0023C2D4 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) /* 8023F398 0023C2D8 D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) /* 8023F39C 0023C2DC C0 5F 00 1C */ lfs f2, 0x1c(r31) /* 8023F3A0 0023C2E0 C0 1F 00 10 */ lfs f0, 0x10(r31) /* 8023F3A4 0023C2E4 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) /* 8023F3A8 0023C2E8 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) /* 8023F3AC 0023C2EC D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) /* 8023F3B0 0023C2F0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8023F3B4 0023C2F4 80 01 00 14 */ lwz r0, 0x14(r1) /* 8023F3B8 0023C2F8 7C 08 03 A6 */ mtlr r0 /* 8023F3BC 0023C2FC 38 21 00 10 */ addi r1, r1, 0x10 /* 8023F3C0 0023C300 4E 80 00 20 */ blr .global setFilterTextureID__Q24Game15ShadowCylinder3Fi setFilterTextureID__Q24Game15ShadowCylinder3Fi: /* 8023F3C4 0023C304 4E 80 00 20 */ blr __sinit_ShadowCylinder_cpp: # static initializer /* 8023F3C8 0023C308 3C 80 80 51 */ lis r4, __float_nan@ha /* 8023F3CC 0023C30C 38 00 FF FF */ li r0, -1 /* 8023F3D0 0023C310 C0 04 48 B0 */ lfs f0, __float_nan@l(r4) /* 8023F3D4 0023C314 3C 60 80 4C */ lis r3, lbl_804C1780@ha /* 8023F3D8 0023C318 90 0D 96 68 */ stw r0, gu32NAN___Q24Game5P2JST@sda21(r13) /* 8023F3DC 0023C31C D4 03 17 80 */ stfsu f0, lbl_804C1780@l(r3) /* 8023F3E0 0023C320 D0 0D 96 6C */ stfs f0, gfNAN___Q24Game5P2JST@sda21(r13) /* 8023F3E4 0023C324 D0 03 00 04 */ stfs f0, 4(r3) /* 8023F3E8 0023C328 D0 03 00 08 */ stfs f0, 8(r3) /* 8023F3EC 0023C32C 4E 80 00 20 */ blr