prime/asm/MetroidPrime/CMappableObject.s

1192 lines
54 KiB
ArmAsm
Raw Normal View History

.include "macros.inc"
.section .ctors, "wa"
lbl_ctor:
.4byte __sinit_CMappableObject_cpp
.section .data
.balign 8
.global lbl_803DFC10
lbl_803DFC10:
# ROM: 0x3DCC10
.4byte lbl_800E8F24
.4byte lbl_800E8F4C
.4byte lbl_800E8F74
.4byte lbl_800E8FA0
.4byte lbl_800E8FCC
.4byte lbl_800E8FF8
.4byte lbl_800E903C
.4byte lbl_800E9024
.4byte lbl_800E903C
.4byte lbl_800E903C
.4byte lbl_800E9030
.global lbl_803DFC3C
lbl_803DFC3C:
# ROM: 0x3DCC3C
.4byte lbl_800E92E8
.4byte lbl_800E92CC
.4byte lbl_800E92D4
.4byte lbl_800E92DC
.4byte lbl_800E92E4
.4byte lbl_800E92E8
.4byte lbl_800E92E8
.4byte lbl_800E92D4
.4byte lbl_800E92D4
.4byte lbl_800E92DC
.4byte lbl_800E92DC
.4byte lbl_800E92E4
.4byte lbl_800E92E4
.4byte lbl_800E92D4
.4byte lbl_800E92DC
.4byte lbl_800E92E4
.4byte 0
.section .sdata
.balign 8
.global lbl_805A7368
lbl_805A7368:
# ROM: 0x3F4D08
.float 1.0
.global lbl_805A736C
lbl_805A736C:
# ROM: 0x3F4D0C
.float 1.0
.global lbl_805A7370
lbl_805A7370:
# ROM: 0x3F4D10
.float 1.0
.global lbl_805A7374
lbl_805A7374:
# ROM: 0x3F4D14
.float 1.0
.section .bss
.balign 8
.lcomm skDoorVerts__15CMappableObject, 0x60, 4
.section .sdata2, "a"
.balign 8
.global lbl_805AAD40
lbl_805AAD40:
# ROM: 0x3F75E0
.4byte 0
.global lbl_805AAD44
lbl_805AAD44:
# ROM: 0x3F75E4
.4byte 0xBFB33333
.global lbl_805AAD48
lbl_805AAD48:
# ROM: 0x3F75E8
.4byte 0x3FC90FDB
.global lbl_805AAD4C
lbl_805AAD4C:
# ROM: 0x3F75EC
.float 1.5
.global lbl_805AAD50
lbl_805AAD50:
# ROM: 0x3F75F0
.4byte 0xC0000000
.global lbl_805AAD54
lbl_805AAD54:
# ROM: 0x3F75F4
.4byte 0xBFC90FDB
.global lbl_805AAD58
lbl_805AAD58:
# ROM: 0x3F75F8
.4byte 0xBFD33333
.global lbl_805AAD5C
lbl_805AAD5C:
# ROM: 0x3F75FC
.4byte 0xBFC00000
.global lbl_805AAD60
lbl_805AAD60:
# ROM: 0x3F7600
.float -1.0
.global lbl_805AAD64
lbl_805AAD64:
# ROM: 0x3F7604
.4byte 0xBEFAE148
.global lbl_805AAD68
lbl_805AAD68:
# ROM: 0x3F7608
.float 2.0
.global lbl_805AAD6C
lbl_805AAD6C:
# ROM: 0x3F760C
.float 255.0
.global lbl_805AAD70
lbl_805AAD70:
# ROM: 0x3F7610
.float 1.0
.global lbl_805AAD74
lbl_805AAD74:
# ROM: 0x3F7614
.4byte 0xC0266666
.global lbl_805AAD78
lbl_805AAD78:
# ROM: 0x3F7618
.4byte 0x40266666
.global lbl_805AAD7C
lbl_805AAD7C:
# ROM: 0x3F761C
.4byte 0x3FB33333
.global lbl_805AAD80
lbl_805AAD80:
# ROM: 0x3F7620
.4byte 0x3B808081
.4byte 0
.global lbl_805AAD88
lbl_805AAD88:
# ROM: 0x3F7628
.4byte 0x43300000
.4byte 0
.global lbl_805AAD90
lbl_805AAD90:
# ROM: 0x3F7630
.float 0.2
.4byte 0
.section .text, "ax"
.global AdjustTransformForType__15CMappableObjectFv
AdjustTransformForType__15CMappableObjectFv:
/* 800E8770 000E56D0 94 21 FD 30 */ stwu r1, -0x2d0(r1)
/* 800E8774 000E56D4 7C 08 02 A6 */ mflr r0
/* 800E8778 000E56D8 90 01 02 D4 */ stw r0, 0x2d4(r1)
/* 800E877C 000E56DC 93 E1 02 CC */ stw r31, 0x2cc(r1)
/* 800E8780 000E56E0 7C 9F 23 78 */ mr r31, r4
/* 800E8784 000E56E4 93 C1 02 C8 */ stw r30, 0x2c8(r1)
/* 800E8788 000E56E8 7C 7E 1B 78 */ mr r30, r3
/* 800E878C 000E56EC 80 BF 00 00 */ lwz r5, 0(r31)
/* 800E8790 000E56F0 80 8D A1 44 */ lwz r4, gpTweakAutoMapper@sda21(r13)
/* 800E8794 000E56F4 2C 05 00 05 */ cmpwi r5, 5
/* 800E8798 000E56F8 C0 44 00 A4 */ lfs f2, 0xa4(r4)
/* 800E879C 000E56FC C0 84 00 AC */ lfs f4, 0xac(r4)
/* 800E87A0 000E5700 40 82 00 70 */ bne lbl_800E8810
/* 800E87A4 000E5704 C0 02 90 24 */ lfs f0, lbl_805AAD44@sda21(r2)
/* 800E87A8 000E5708 38 61 02 14 */ addi r3, r1, 0x214
/* 800E87AC 000E570C C0 62 90 20 */ lfs f3, lbl_805AAD40@sda21(r2)
/* 800E87B0 000E5710 EC 40 00 B2 */ fmuls f2, f0, f2
/* 800E87B4 000E5714 C0 02 90 28 */ lfs f0, lbl_805AAD48@sda21(r2)
/* 800E87B8 000E5718 D0 61 00 58 */ stfs f3, 0x58(r1)
/* 800E87BC 000E571C C0 22 90 2C */ lfs f1, lbl_805AAD4C@sda21(r2)
/* 800E87C0 000E5720 D0 61 00 5C */ stfs f3, 0x5c(r1)
/* 800E87C4 000E5724 D0 41 00 60 */ stfs f2, 0x60(r1)
/* 800E87C8 000E5728 D0 01 00 18 */ stfs f0, 0x18(r1)
/* 800E87CC 000E572C 48 22 AA 75 */ bl Scale__12CTransform4fFf
/* 800E87D0 000E5730 38 61 02 44 */ addi r3, r1, 0x244
/* 800E87D4 000E5734 38 81 00 18 */ addi r4, r1, 0x18
/* 800E87D8 000E5738 48 22 7C 31 */ bl RotateZ__9CMatrix3fFRC9CRelAngle
/* 800E87DC 000E573C 38 61 02 68 */ addi r3, r1, 0x268
/* 800E87E0 000E5740 38 81 02 44 */ addi r4, r1, 0x244
/* 800E87E4 000E5744 38 A1 00 58 */ addi r5, r1, 0x58
/* 800E87E8 000E5748 48 22 AA 91 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f
/* 800E87EC 000E574C 7C 65 1B 78 */ mr r5, r3
/* 800E87F0 000E5750 38 61 02 98 */ addi r3, r1, 0x298
/* 800E87F4 000E5754 38 9F 00 10 */ addi r4, r31, 0x10
/* 800E87F8 000E5758 48 22 A1 59 */ bl __ml__12CTransform4fCFRC12CTransform4f
/* 800E87FC 000E575C 7F C3 F3 78 */ mr r3, r30
/* 800E8800 000E5760 38 81 02 98 */ addi r4, r1, 0x298
/* 800E8804 000E5764 38 A1 02 14 */ addi r5, r1, 0x214
/* 800E8808 000E5768 48 22 A1 49 */ bl __ml__12CTransform4fCFRC12CTransform4f
/* 800E880C 000E576C 48 00 02 20 */ b lbl_800E8A2C
lbl_800E8810:
/* 800E8810 000E5770 2C 05 00 06 */ cmpwi r5, 6
/* 800E8814 000E5774 40 82 00 78 */ bne lbl_800E888C
/* 800E8818 000E5778 C0 22 90 30 */ lfs f1, lbl_805AAD50@sda21(r2)
/* 800E881C 000E577C 38 61 01 60 */ addi r3, r1, 0x160
/* 800E8820 000E5780 C0 02 90 24 */ lfs f0, lbl_805AAD44@sda21(r2)
/* 800E8824 000E5784 EC 61 01 32 */ fmuls f3, f1, f4
/* 800E8828 000E5788 C0 22 90 20 */ lfs f1, lbl_805AAD40@sda21(r2)
/* 800E882C 000E578C EC 40 00 B2 */ fmuls f2, f0, f2
/* 800E8830 000E5790 C0 02 90 34 */ lfs f0, lbl_805AAD54@sda21(r2)
/* 800E8834 000E5794 D0 21 00 4C */ stfs f1, 0x4c(r1)
/* 800E8838 000E5798 C0 22 90 2C */ lfs f1, lbl_805AAD4C@sda21(r2)
/* 800E883C 000E579C D0 61 00 50 */ stfs f3, 0x50(r1)
/* 800E8840 000E57A0 D0 41 00 54 */ stfs f2, 0x54(r1)
/* 800E8844 000E57A4 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 800E8848 000E57A8 48 22 A9 F9 */ bl Scale__12CTransform4fFf
/* 800E884C 000E57AC 38 61 01 90 */ addi r3, r1, 0x190
/* 800E8850 000E57B0 38 81 00 14 */ addi r4, r1, 0x14
/* 800E8854 000E57B4 48 22 7B B5 */ bl RotateZ__9CMatrix3fFRC9CRelAngle
/* 800E8858 000E57B8 38 61 01 B4 */ addi r3, r1, 0x1b4
/* 800E885C 000E57BC 38 81 01 90 */ addi r4, r1, 0x190
/* 800E8860 000E57C0 38 A1 00 4C */ addi r5, r1, 0x4c
/* 800E8864 000E57C4 48 22 AA 15 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f
/* 800E8868 000E57C8 7C 65 1B 78 */ mr r5, r3
/* 800E886C 000E57CC 38 61 01 E4 */ addi r3, r1, 0x1e4
/* 800E8870 000E57D0 38 9F 00 10 */ addi r4, r31, 0x10
/* 800E8874 000E57D4 48 22 A0 DD */ bl __ml__12CTransform4fCFRC12CTransform4f
/* 800E8878 000E57D8 7F C3 F3 78 */ mr r3, r30
/* 800E887C 000E57DC 38 81 01 E4 */ addi r4, r1, 0x1e4
/* 800E8880 000E57E0 38 A1 01 60 */ addi r5, r1, 0x160
/* 800E8884 000E57E4 48 22 A0 CD */ bl __ml__12CTransform4fCFRC12CTransform4f
/* 800E8888 000E57E8 48 00 01 A4 */ b lbl_800E8A2C
lbl_800E888C:
/* 800E888C 000E57EC 2C 05 00 07 */ cmpwi r5, 7
/* 800E8890 000E57F0 41 82 00 14 */ beq lbl_800E88A4
/* 800E8894 000E57F4 2C 05 00 09 */ cmpwi r5, 9
/* 800E8898 000E57F8 41 82 00 0C */ beq lbl_800E88A4
/* 800E889C 000E57FC 2C 05 00 0B */ cmpwi r5, 0xb
/* 800E88A0 000E5800 40 82 00 5C */ bne lbl_800E88FC
lbl_800E88A4:
/* 800E88A4 000E5804 C0 22 90 38 */ lfs f1, lbl_805AAD58@sda21(r2)
/* 800E88A8 000E5808 38 61 01 0C */ addi r3, r1, 0x10c
/* 800E88AC 000E580C C0 02 90 3C */ lfs f0, lbl_805AAD5C@sda21(r2)
/* 800E88B0 000E5810 38 81 00 10 */ addi r4, r1, 0x10
/* 800E88B4 000E5814 EC 61 00 B2 */ fmuls f3, f1, f2
/* 800E88B8 000E5818 C0 42 90 20 */ lfs f2, lbl_805AAD40@sda21(r2)
/* 800E88BC 000E581C EC 20 01 32 */ fmuls f1, f0, f4
/* 800E88C0 000E5820 C0 02 90 28 */ lfs f0, lbl_805AAD48@sda21(r2)
/* 800E88C4 000E5824 D0 41 00 44 */ stfs f2, 0x44(r1)
/* 800E88C8 000E5828 D0 61 00 40 */ stfs f3, 0x40(r1)
/* 800E88CC 000E582C D0 21 00 48 */ stfs f1, 0x48(r1)
/* 800E88D0 000E5830 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 800E88D4 000E5834 48 22 7B C1 */ bl RotateY__9CMatrix3fFRC9CRelAngle
/* 800E88D8 000E5838 38 61 01 30 */ addi r3, r1, 0x130
/* 800E88DC 000E583C 38 81 01 0C */ addi r4, r1, 0x10c
/* 800E88E0 000E5840 38 A1 00 40 */ addi r5, r1, 0x40
/* 800E88E4 000E5844 48 22 A9 95 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f
/* 800E88E8 000E5848 7C 65 1B 78 */ mr r5, r3
/* 800E88EC 000E584C 7F C3 F3 78 */ mr r3, r30
/* 800E88F0 000E5850 38 9F 00 10 */ addi r4, r31, 0x10
/* 800E88F4 000E5854 48 22 A0 5D */ bl __ml__12CTransform4fCFRC12CTransform4f
/* 800E88F8 000E5858 48 00 01 34 */ b lbl_800E8A2C
lbl_800E88FC:
/* 800E88FC 000E585C 2C 05 00 08 */ cmpwi r5, 8
/* 800E8900 000E5860 41 82 00 14 */ beq lbl_800E8914
/* 800E8904 000E5864 2C 05 00 0A */ cmpwi r5, 0xa
/* 800E8908 000E5868 41 82 00 0C */ beq lbl_800E8914
/* 800E890C 000E586C 2C 05 00 0C */ cmpwi r5, 0xc
/* 800E8910 000E5870 40 82 00 5C */ bne lbl_800E896C
lbl_800E8914:
/* 800E8914 000E5874 C0 22 90 38 */ lfs f1, lbl_805AAD58@sda21(r2)
/* 800E8918 000E5878 38 61 00 B8 */ addi r3, r1, 0xb8
/* 800E891C 000E587C C0 02 90 40 */ lfs f0, lbl_805AAD60@sda21(r2)
/* 800E8920 000E5880 38 81 00 0C */ addi r4, r1, 0xc
/* 800E8924 000E5884 EC 61 00 B2 */ fmuls f3, f1, f2
/* 800E8928 000E5888 C0 42 90 20 */ lfs f2, lbl_805AAD40@sda21(r2)
/* 800E892C 000E588C EC 20 01 32 */ fmuls f1, f0, f4
/* 800E8930 000E5890 C0 02 90 28 */ lfs f0, lbl_805AAD48@sda21(r2)
/* 800E8934 000E5894 D0 41 00 38 */ stfs f2, 0x38(r1)
/* 800E8938 000E5898 D0 61 00 34 */ stfs f3, 0x34(r1)
/* 800E893C 000E589C D0 21 00 3C */ stfs f1, 0x3c(r1)
/* 800E8940 000E58A0 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 800E8944 000E58A4 48 22 7B 51 */ bl RotateY__9CMatrix3fFRC9CRelAngle
/* 800E8948 000E58A8 38 61 00 DC */ addi r3, r1, 0xdc
/* 800E894C 000E58AC 38 81 00 B8 */ addi r4, r1, 0xb8
/* 800E8950 000E58B0 38 A1 00 34 */ addi r5, r1, 0x34
/* 800E8954 000E58B4 48 22 A9 25 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f
/* 800E8958 000E58B8 7C 65 1B 78 */ mr r5, r3
/* 800E895C 000E58BC 7F C3 F3 78 */ mr r3, r30
/* 800E8960 000E58C0 38 9F 00 10 */ addi r4, r31, 0x10
/* 800E8964 000E58C4 48 22 9F ED */ bl __ml__12CTransform4fCFRC12CTransform4f
/* 800E8968 000E58C8 48 00 00 C4 */ b lbl_800E8A2C
lbl_800E896C:
/* 800E896C 000E58CC 38 05 FF F3 */ addi r0, r5, -13
/* 800E8970 000E58D0 28 00 00 01 */ cmplwi r0, 1
/* 800E8974 000E58D4 40 81 00 0C */ ble lbl_800E8980
/* 800E8978 000E58D8 2C 05 00 0F */ cmpwi r5, 0xf
/* 800E897C 000E58DC 40 82 00 5C */ bne lbl_800E89D8
lbl_800E8980:
/* 800E8980 000E58E0 C0 22 90 44 */ lfs f1, lbl_805AAD64@sda21(r2)
/* 800E8984 000E58E4 38 61 00 64 */ addi r3, r1, 0x64
/* 800E8988 000E58E8 C0 02 90 40 */ lfs f0, lbl_805AAD60@sda21(r2)
/* 800E898C 000E58EC 38 81 00 08 */ addi r4, r1, 8
/* 800E8990 000E58F0 EC 61 00 B2 */ fmuls f3, f1, f2
/* 800E8994 000E58F4 C0 42 90 20 */ lfs f2, lbl_805AAD40@sda21(r2)
/* 800E8998 000E58F8 EC 20 01 32 */ fmuls f1, f0, f4
/* 800E899C 000E58FC C0 02 90 28 */ lfs f0, lbl_805AAD48@sda21(r2)
/* 800E89A0 000E5900 D0 41 00 2C */ stfs f2, 0x2c(r1)
/* 800E89A4 000E5904 D0 61 00 28 */ stfs f3, 0x28(r1)
/* 800E89A8 000E5908 D0 21 00 30 */ stfs f1, 0x30(r1)
/* 800E89AC 000E590C D0 01 00 08 */ stfs f0, 8(r1)
/* 800E89B0 000E5910 48 22 7A E5 */ bl RotateY__9CMatrix3fFRC9CRelAngle
/* 800E89B4 000E5914 38 61 00 88 */ addi r3, r1, 0x88
/* 800E89B8 000E5918 38 81 00 64 */ addi r4, r1, 0x64
/* 800E89BC 000E591C 38 A1 00 28 */ addi r5, r1, 0x28
/* 800E89C0 000E5920 48 22 A8 B9 */ bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f
/* 800E89C4 000E5924 7C 65 1B 78 */ mr r5, r3
/* 800E89C8 000E5928 7F C3 F3 78 */ mr r3, r30
/* 800E89CC 000E592C 38 9F 00 10 */ addi r4, r31, 0x10
/* 800E89D0 000E5930 48 22 9F 81 */ bl __ml__12CTransform4fCFRC12CTransform4f
/* 800E89D4 000E5934 48 00 00 58 */ b lbl_800E8A2C
lbl_800E89D8:
/* 800E89D8 000E5938 2C 05 00 00 */ cmpwi r5, 0
/* 800E89DC 000E593C 38 00 00 00 */ li r0, 0
/* 800E89E0 000E5940 41 80 00 10 */ blt lbl_800E89F0
/* 800E89E4 000E5944 2C 05 00 0F */ cmpwi r5, 0xf
/* 800E89E8 000E5948 41 81 00 08 */ bgt lbl_800E89F0
/* 800E89EC 000E594C 38 00 00 01 */ li r0, 1
lbl_800E89F0:
/* 800E89F0 000E5950 54 00 06 3F */ clrlwi. r0, r0, 0x18
/* 800E89F4 000E5954 41 82 00 14 */ beq lbl_800E8A08
/* 800E89F8 000E5958 7F C3 F3 78 */ mr r3, r30
/* 800E89FC 000E595C 38 9F 00 10 */ addi r4, r31, 0x10
/* 800E8A00 000E5960 48 22 A1 75 */ bl __ct__12CTransform4fFRC12CTransform4f
/* 800E8A04 000E5964 48 00 00 28 */ b lbl_800E8A2C
lbl_800E8A08:
/* 800E8A08 000E5968 C0 5F 00 3C */ lfs f2, 0x3c(r31)
/* 800E8A0C 000E596C 7F C3 F3 78 */ mr r3, r30
/* 800E8A10 000E5970 C0 3F 00 2C */ lfs f1, 0x2c(r31)
/* 800E8A14 000E5974 38 81 00 1C */ addi r4, r1, 0x1c
/* 800E8A18 000E5978 C0 1F 00 1C */ lfs f0, 0x1c(r31)
/* 800E8A1C 000E597C D0 21 00 20 */ stfs f1, 0x20(r1)
/* 800E8A20 000E5980 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 800E8A24 000E5984 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 800E8A28 000E5988 48 22 A7 19 */ bl Translate__12CTransform4fFRC9CVector3f
lbl_800E8A2C:
/* 800E8A2C 000E598C 80 01 02 D4 */ lwz r0, 0x2d4(r1)
/* 800E8A30 000E5990 83 E1 02 CC */ lwz r31, 0x2cc(r1)
/* 800E8A34 000E5994 83 C1 02 C8 */ lwz r30, 0x2c8(r1)
/* 800E8A38 000E5998 7C 08 03 A6 */ mtlr r0
/* 800E8A3C 000E599C 38 21 02 D0 */ addi r1, r1, 0x2d0
/* 800E8A40 000E59A0 4E 80 00 20 */ blr
.global GetIsVisibleToAutoMapper__15CMappableObjectFbRC13CMapWorldInfo
GetIsVisibleToAutoMapper__15CMappableObjectFbRC13CMapWorldInfo:
/* 800E8A44 000E59A4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 800E8A48 000E59A8 7C 08 02 A6 */ mflr r0
/* 800E8A4C 000E59AC 90 01 00 34 */ stw r0, 0x34(r1)
/* 800E8A50 000E59B0 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 800E8A54 000E59B4 7C BF 2B 78 */ mr r31, r5
/* 800E8A58 000E59B8 93 C1 00 28 */ stw r30, 0x28(r1)
/* 800E8A5C 000E59BC 7C 9E 23 78 */ mr r30, r4
/* 800E8A60 000E59C0 38 81 00 10 */ addi r4, r1, 0x10
/* 800E8A64 000E59C4 93 A1 00 24 */ stw r29, 0x24(r1)
/* 800E8A68 000E59C8 7C 7D 1B 78 */ mr r29, r3
/* 800E8A6C 000E59CC 80 03 00 08 */ lwz r0, 8(r3)
/* 800E8A70 000E59D0 7F E3 FB 78 */ mr r3, r31
/* 800E8A74 000E59D4 54 00 85 BE */ rlwinm r0, r0, 0x10, 0x16, 0x1f
/* 800E8A78 000E59D8 90 01 00 0C */ stw r0, 0xc(r1)
/* 800E8A7C 000E59DC 90 01 00 10 */ stw r0, 0x10(r1)
/* 800E8A80 000E59E0 48 07 F2 85 */ bl IsAreaVisible__13CMapWorldInfoCF7TAreaId
/* 800E8A84 000E59E4 80 1D 00 04 */ lwz r0, 4(r29)
/* 800E8A88 000E59E8 2C 00 00 02 */ cmpwi r0, 2
/* 800E8A8C 000E59EC 41 82 00 50 */ beq lbl_800E8ADC
/* 800E8A90 000E59F0 40 80 00 14 */ bge lbl_800E8AA4
/* 800E8A94 000E59F4 2C 00 00 00 */ cmpwi r0, 0
/* 800E8A98 000E59F8 41 82 00 1C */ beq lbl_800E8AB4
/* 800E8A9C 000E59FC 40 80 00 20 */ bge lbl_800E8ABC
/* 800E8AA0 000E5A00 48 00 00 84 */ b lbl_800E8B24
lbl_800E8AA4:
/* 800E8AA4 000E5A04 2C 00 00 04 */ cmpwi r0, 4
/* 800E8AA8 000E5A08 41 82 00 14 */ beq lbl_800E8ABC
/* 800E8AAC 000E5A0C 40 80 00 78 */ bge lbl_800E8B24
/* 800E8AB0 000E5A10 48 00 00 6C */ b lbl_800E8B1C
lbl_800E8AB4:
/* 800E8AB4 000E5A14 38 60 00 01 */ li r3, 1
/* 800E8AB8 000E5A18 48 00 00 70 */ b lbl_800E8B28
lbl_800E8ABC:
/* 800E8ABC 000E5A1C 57 C0 06 3F */ clrlwi. r0, r30, 0x18
/* 800E8AC0 000E5A20 38 80 00 00 */ li r4, 0
/* 800E8AC4 000E5A24 40 82 00 0C */ bne lbl_800E8AD0
/* 800E8AC8 000E5A28 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 800E8ACC 000E5A2C 41 82 00 08 */ beq lbl_800E8AD4
lbl_800E8AD0:
/* 800E8AD0 000E5A30 38 80 00 01 */ li r4, 1
lbl_800E8AD4:
/* 800E8AD4 000E5A34 7C 83 23 78 */ mr r3, r4
/* 800E8AD8 000E5A38 48 00 00 50 */ b lbl_800E8B28
lbl_800E8ADC:
/* 800E8ADC 000E5A3C 80 9D 00 00 */ lwz r4, 0(r29)
/* 800E8AE0 000E5A40 38 00 00 00 */ li r0, 0
/* 800E8AE4 000E5A44 2C 04 00 00 */ cmpwi r4, 0
/* 800E8AE8 000E5A48 41 80 00 10 */ blt lbl_800E8AF8
/* 800E8AEC 000E5A4C 2C 04 00 0F */ cmpwi r4, 0xf
/* 800E8AF0 000E5A50 41 81 00 08 */ bgt lbl_800E8AF8
/* 800E8AF4 000E5A54 38 00 00 01 */ li r0, 1
lbl_800E8AF8:
/* 800E8AF8 000E5A58 54 00 06 3F */ clrlwi. r0, r0, 0x18
/* 800E8AFC 000E5A5C 41 82 00 2C */ beq lbl_800E8B28
/* 800E8B00 000E5A60 80 1D 00 08 */ lwz r0, 8(r29)
/* 800E8B04 000E5A64 7F E3 FB 78 */ mr r3, r31
/* 800E8B08 000E5A68 38 81 00 08 */ addi r4, r1, 8
/* 800E8B0C 000E5A6C 90 01 00 08 */ stw r0, 8(r1)
/* 800E8B10 000E5A70 48 07 FB E1 */ bl IsDoorVisited__13CMapWorldInfoCF9TEditorId
/* 800E8B14 000E5A74 48 00 00 14 */ b lbl_800E8B28
/* 800E8B18 000E5A78 48 00 00 10 */ b lbl_800E8B28
lbl_800E8B1C:
/* 800E8B1C 000E5A7C 38 60 00 00 */ li r3, 0
/* 800E8B20 000E5A80 48 00 00 08 */ b lbl_800E8B28
lbl_800E8B24:
/* 800E8B24 000E5A84 38 60 00 01 */ li r3, 1
lbl_800E8B28:
/* 800E8B28 000E5A88 80 01 00 34 */ lwz r0, 0x34(r1)
/* 800E8B2C 000E5A8C 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 800E8B30 000E5A90 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 800E8B34 000E5A94 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 800E8B38 000E5A98 7C 08 03 A6 */ mtlr r0
/* 800E8B3C 000E5A9C 38 21 00 30 */ addi r1, r1, 0x30
/* 800E8B40 000E5AA0 4E 80 00 20 */ blr
.global BuildSurfaceCenterPoint__15CMappableObjectCFi
BuildSurfaceCenterPoint__15CMappableObjectCFi:
/* 800E8B44 000E5AA4 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 800E8B48 000E5AA8 7C 08 02 A6 */ mflr r0
/* 800E8B4C 000E5AAC 2C 05 00 03 */ cmpwi r5, 3
/* 800E8B50 000E5AB0 90 01 00 54 */ stw r0, 0x54(r1)
/* 800E8B54 000E5AB4 93 E1 00 4C */ stw r31, 0x4c(r1)
/* 800E8B58 000E5AB8 7C 7F 1B 78 */ mr r31, r3
/* 800E8B5C 000E5ABC 80 CD A1 44 */ lwz r6, gpTweakAutoMapper@sda21(r13)
/* 800E8B60 000E5AC0 C0 26 00 AC */ lfs f1, 0xac(r6)
/* 800E8B64 000E5AC4 C0 46 00 A8 */ lfs f2, 0xa8(r6)
/* 800E8B68 000E5AC8 C0 66 00 A4 */ lfs f3, 0xa4(r6)
/* 800E8B6C 000E5ACC 41 82 00 90 */ beq lbl_800E8BFC
/* 800E8B70 000E5AD0 40 80 00 1C */ bge lbl_800E8B8C
/* 800E8B74 000E5AD4 2C 05 00 01 */ cmpwi r5, 1
/* 800E8B78 000E5AD8 41 82 00 38 */ beq lbl_800E8BB0
/* 800E8B7C 000E5ADC 40 80 00 5C */ bge lbl_800E8BD8
/* 800E8B80 000E5AE0 2C 05 00 00 */ cmpwi r5, 0
/* 800E8B84 000E5AE4 40 80 00 18 */ bge lbl_800E8B9C
/* 800E8B88 000E5AE8 48 00 00 D8 */ b lbl_800E8C60
lbl_800E8B8C:
/* 800E8B8C 000E5AEC 2C 05 00 05 */ cmpwi r5, 5
/* 800E8B90 000E5AF0 41 82 00 B0 */ beq lbl_800E8C40
/* 800E8B94 000E5AF4 40 80 00 CC */ bge lbl_800E8C60
/* 800E8B98 000E5AF8 48 00 00 84 */ b lbl_800E8C1C
lbl_800E8B9C:
/* 800E8B9C 000E5AFC 3C A0 80 5A */ lis r5, sZeroVector__9CVector3f@ha
/* 800E8BA0 000E5B00 38 84 00 10 */ addi r4, r4, 0x10
/* 800E8BA4 000E5B04 38 A5 66 A0 */ addi r5, r5, sZeroVector__9CVector3f@l
/* 800E8BA8 000E5B08 48 22 9F 41 */ bl __ml__12CTransform4fCFRC9CVector3f
/* 800E8BAC 000E5B0C 48 00 00 D0 */ b lbl_800E8C7C
lbl_800E8BB0:
/* 800E8BB0 000E5B10 C0 02 90 48 */ lfs f0, lbl_805AAD68@sda21(r2)
/* 800E8BB4 000E5B14 38 84 00 10 */ addi r4, r4, 0x10
/* 800E8BB8 000E5B18 C0 22 90 20 */ lfs f1, lbl_805AAD40@sda21(r2)
/* 800E8BBC 000E5B1C 38 A1 00 38 */ addi r5, r1, 0x38
/* 800E8BC0 000E5B20 EC 00 00 F2 */ fmuls f0, f0, f3
/* 800E8BC4 000E5B24 D0 21 00 38 */ stfs f1, 0x38(r1)
/* 800E8BC8 000E5B28 D0 21 00 3C */ stfs f1, 0x3c(r1)
/* 800E8BCC 000E5B2C D0 01 00 40 */ stfs f0, 0x40(r1)
/* 800E8BD0 000E5B30 48 22 9F 19 */ bl __ml__12CTransform4fCFRC9CVector3f
/* 800E8BD4 000E5B34 48 00 00 A8 */ b lbl_800E8C7C
lbl_800E8BD8:
/* 800E8BD8 000E5B38 FC 00 10 50 */ fneg f0, f2
/* 800E8BDC 000E5B3C C0 22 90 20 */ lfs f1, lbl_805AAD40@sda21(r2)
/* 800E8BE0 000E5B40 38 84 00 10 */ addi r4, r4, 0x10
/* 800E8BE4 000E5B44 38 A1 00 2C */ addi r5, r1, 0x2c
/* 800E8BE8 000E5B48 D0 21 00 2C */ stfs f1, 0x2c(r1)
/* 800E8BEC 000E5B4C D0 01 00 30 */ stfs f0, 0x30(r1)
/* 800E8BF0 000E5B50 D0 21 00 34 */ stfs f1, 0x34(r1)
/* 800E8BF4 000E5B54 48 22 9E F5 */ bl __ml__12CTransform4fCFRC9CVector3f
/* 800E8BF8 000E5B58 48 00 00 84 */ b lbl_800E8C7C
lbl_800E8BFC:
/* 800E8BFC 000E5B5C C0 02 90 20 */ lfs f0, lbl_805AAD40@sda21(r2)
/* 800E8C00 000E5B60 38 84 00 10 */ addi r4, r4, 0x10
/* 800E8C04 000E5B64 D0 41 00 24 */ stfs f2, 0x24(r1)
/* 800E8C08 000E5B68 38 A1 00 20 */ addi r5, r1, 0x20
/* 800E8C0C 000E5B6C D0 01 00 20 */ stfs f0, 0x20(r1)
/* 800E8C10 000E5B70 D0 01 00 28 */ stfs f0, 0x28(r1)
/* 800E8C14 000E5B74 48 22 9E D5 */ bl __ml__12CTransform4fCFRC9CVector3f
/* 800E8C18 000E5B78 48 00 00 64 */ b lbl_800E8C7C
lbl_800E8C1C:
/* 800E8C1C 000E5B7C FC 20 08 50 */ fneg f1, f1
/* 800E8C20 000E5B80 C0 02 90 20 */ lfs f0, lbl_805AAD40@sda21(r2)
/* 800E8C24 000E5B84 38 84 00 10 */ addi r4, r4, 0x10
/* 800E8C28 000E5B88 38 A1 00 14 */ addi r5, r1, 0x14
/* 800E8C2C 000E5B8C D0 01 00 18 */ stfs f0, 0x18(r1)
/* 800E8C30 000E5B90 D0 21 00 14 */ stfs f1, 0x14(r1)
/* 800E8C34 000E5B94 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 800E8C38 000E5B98 48 22 9E B1 */ bl __ml__12CTransform4fCFRC9CVector3f
/* 800E8C3C 000E5B9C 48 00 00 40 */ b lbl_800E8C7C
lbl_800E8C40:
/* 800E8C40 000E5BA0 C0 02 90 20 */ lfs f0, lbl_805AAD40@sda21(r2)
/* 800E8C44 000E5BA4 38 84 00 10 */ addi r4, r4, 0x10
/* 800E8C48 000E5BA8 D0 21 00 08 */ stfs f1, 8(r1)
/* 800E8C4C 000E5BAC 38 A1 00 08 */ addi r5, r1, 8
/* 800E8C50 000E5BB0 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 800E8C54 000E5BB4 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 800E8C58 000E5BB8 48 22 9E 91 */ bl __ml__12CTransform4fCFRC9CVector3f
/* 800E8C5C 000E5BBC 48 00 00 20 */ b lbl_800E8C7C
lbl_800E8C60:
/* 800E8C60 000E5BC0 3C 60 80 5A */ lis r3, sZeroVector__9CVector3f@ha
/* 800E8C64 000E5BC4 C4 03 66 A0 */ lfsu f0, sZeroVector__9CVector3f@l(r3)
/* 800E8C68 000E5BC8 D0 1F 00 00 */ stfs f0, 0(r31)
/* 800E8C6C 000E5BCC C0 03 00 04 */ lfs f0, 4(r3)
/* 800E8C70 000E5BD0 D0 1F 00 04 */ stfs f0, 4(r31)
/* 800E8C74 000E5BD4 C0 03 00 08 */ lfs f0, 8(r3)
/* 800E8C78 000E5BD8 D0 1F 00 08 */ stfs f0, 8(r31)
lbl_800E8C7C:
/* 800E8C7C 000E5BDC 80 01 00 54 */ lwz r0, 0x54(r1)
/* 800E8C80 000E5BE0 83 E1 00 4C */ lwz r31, 0x4c(r1)
/* 800E8C84 000E5BE4 7C 08 03 A6 */ mtlr r0
/* 800E8C88 000E5BE8 38 21 00 50 */ addi r1, r1, 0x50
/* 800E8C8C 000E5BEC 4E 80 00 20 */ blr
.global DrawDoorSurface__15CMappableObjectCFiRC13CMapWorldInfofib
DrawDoorSurface__15CMappableObjectCFiRC13CMapWorldInfofib:
/* 800E8C90 000E5BF0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 800E8C94 000E5BF4 7C 08 02 A6 */ mflr r0
/* 800E8C98 000E5BF8 7C 88 23 78 */ mr r8, r4
/* 800E8C9C 000E5BFC 7C 64 1B 78 */ mr r4, r3
/* 800E8CA0 000E5C00 90 01 00 24 */ stw r0, 0x24(r1)
/* 800E8CA4 000E5C04 7C A0 2B 78 */ mr r0, r5
/* 800E8CA8 000E5C08 7D 05 43 78 */ mr r5, r8
/* 800E8CAC 000E5C0C 38 61 00 08 */ addi r3, r1, 8
/* 800E8CB0 000E5C10 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 800E8CB4 000E5C14 7C DF 33 78 */ mr r31, r6
/* 800E8CB8 000E5C18 7C 06 03 78 */ mr r6, r0
/* 800E8CBC 000E5C1C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 800E8CC0 000E5C20 7C FE 3B 78 */ mr r30, r7
/* 800E8CC4 000E5C24 48 00 05 45 */ bl GetDoorColors__15CMappableObjectCFiRC13CMapWorldInfof
/* 800E8CC8 000E5C28 57 C0 06 3F */ clrlwi. r0, r30, 0x18
/* 800E8CCC 000E5C2C 80 81 00 08 */ lwz r4, 8(r1)
/* 800E8CD0 000E5C30 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 800E8CD4 000E5C34 3C 60 80 3D */ lis r3, sDoorData@ha
/* 800E8CD8 000E5C38 90 81 00 10 */ stw r4, 0x10(r1)
/* 800E8CDC 000E5C3C 57 E4 20 36 */ slwi r4, r31, 4
/* 800E8CE0 000E5C40 38 03 E5 F0 */ addi r0, r3, sDoorData@l
/* 800E8CE4 000E5C44 3B C1 00 14 */ addi r30, r1, 0x14
/* 800E8CE8 000E5C48 90 A1 00 14 */ stw r5, 0x14(r1)
/* 800E8CEC 000E5C4C 7F E0 22 14 */ add r31, r0, r4
/* 800E8CF0 000E5C50 41 82 00 18 */ beq lbl_800E8D08
/* 800E8CF4 000E5C54 3C 80 80 47 */ lis r4, skDoorVerts__15CMappableObject@ha
/* 800E8CF8 000E5C58 38 60 00 09 */ li r3, 9
/* 800E8CFC 000E5C5C 38 84 C4 98 */ addi r4, r4, skDoorVerts__15CMappableObject@l
/* 800E8D00 000E5C60 38 A0 00 0C */ li r5, 0xc
/* 800E8D04 000E5C64 48 21 F9 41 */ bl SetArray__3CGXF7_GXAttrPCvUc
lbl_800E8D08:
/* 800E8D08 000E5C68 38 81 00 10 */ addi r4, r1, 0x10
/* 800E8D0C 000E5C6C 38 60 00 00 */ li r3, 0
/* 800E8D10 000E5C70 48 21 FF 35 */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor
/* 800E8D14 000E5C74 38 60 00 98 */ li r3, 0x98
/* 800E8D18 000E5C78 38 80 00 00 */ li r4, 0
/* 800E8D1C 000E5C7C 38 A0 00 04 */ li r5, 4
/* 800E8D20 000E5C80 48 21 F8 65 */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs
/* 800E8D24 000E5C84 88 7F 00 0C */ lbz r3, 0xc(r31)
/* 800E8D28 000E5C88 3C 80 CC 01 */ lis r4, 0xCC008000@ha
/* 800E8D2C 000E5C8C 88 1F 00 0D */ lbz r0, 0xd(r31)
/* 800E8D30 000E5C90 98 64 80 00 */ stb r3, 0xCC008000@l(r4)
/* 800E8D34 000E5C94 88 7F 00 0E */ lbz r3, 0xe(r31)
/* 800E8D38 000E5C98 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
/* 800E8D3C 000E5C9C 88 1F 00 0F */ lbz r0, 0xf(r31)
/* 800E8D40 000E5CA0 98 64 80 00 */ stb r3, 0xCC008000@l(r4)
/* 800E8D44 000E5CA4 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
/* 800E8D48 000E5CA8 48 21 F8 39 */ bl End__3CGXFv
/* 800E8D4C 000E5CAC 7F C4 F3 78 */ mr r4, r30
/* 800E8D50 000E5CB0 38 60 00 00 */ li r3, 0
/* 800E8D54 000E5CB4 48 21 FE F1 */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor
/* 800E8D58 000E5CB8 38 60 00 B0 */ li r3, 0xb0
/* 800E8D5C 000E5CBC 38 80 00 00 */ li r4, 0
/* 800E8D60 000E5CC0 38 A0 00 05 */ li r5, 5
/* 800E8D64 000E5CC4 48 21 F8 21 */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs
/* 800E8D68 000E5CC8 88 BF 00 0C */ lbz r5, 0xc(r31)
/* 800E8D6C 000E5CCC 3C 80 CC 01 */ lis r4, 0xCC008000@ha
/* 800E8D70 000E5CD0 88 1F 00 0D */ lbz r0, 0xd(r31)
/* 800E8D74 000E5CD4 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
/* 800E8D78 000E5CD8 88 7F 00 0F */ lbz r3, 0xf(r31)
/* 800E8D7C 000E5CDC 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
/* 800E8D80 000E5CE0 88 1F 00 0E */ lbz r0, 0xe(r31)
/* 800E8D84 000E5CE4 98 64 80 00 */ stb r3, 0xCC008000@l(r4)
/* 800E8D88 000E5CE8 98 04 80 00 */ stb r0, 0xCC008000@l(r4)
/* 800E8D8C 000E5CEC 98 A4 80 00 */ stb r5, 0xCC008000@l(r4)
/* 800E8D90 000E5CF0 48 21 F7 F1 */ bl End__3CGXFv
/* 800E8D94 000E5CF4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800E8D98 000E5CF8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 800E8D9C 000E5CFC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 800E8DA0 000E5D00 7C 08 03 A6 */ mtlr r0
/* 800E8DA4 000E5D04 38 21 00 20 */ addi r1, r1, 0x20
/* 800E8DA8 000E5D08 4E 80 00 20 */ blr
.global Draw__15CMappableObjectCFiRC13CMapWorldInfofb
Draw__15CMappableObjectCFiRC13CMapWorldInfofb:
/* 800E8DAC 000E5D0C 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 800E8DB0 000E5D10 7C 08 02 A6 */ mflr r0
/* 800E8DB4 000E5D14 90 01 00 94 */ stw r0, 0x94(r1)
/* 800E8DB8 000E5D18 DB E1 00 80 */ stfd f31, 0x80(r1)
/* 800E8DBC 000E5D1C F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0
/* 800E8DC0 000E5D20 DB C1 00 70 */ stfd f30, 0x70(r1)
/* 800E8DC4 000E5D24 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0
/* 800E8DC8 000E5D28 BF 61 00 5C */ stmw r27, 0x5c(r1)
/* 800E8DCC 000E5D2C 80 E3 00 00 */ lwz r7, 0(r3)
/* 800E8DD0 000E5D30 FF C0 08 90 */ fmr f30, f1
/* 800E8DD4 000E5D34 7C 89 23 78 */ mr r9, r4
/* 800E8DD8 000E5D38 7C A8 2B 78 */ mr r8, r5
/* 800E8DDC 000E5D3C 2C 07 00 00 */ cmpwi r7, 0
/* 800E8DE0 000E5D40 7C DB 33 78 */ mr r27, r6
/* 800E8DE4 000E5D44 38 00 00 00 */ li r0, 0
/* 800E8DE8 000E5D48 41 80 00 10 */ blt lbl_800E8DF8
/* 800E8DEC 000E5D4C 2C 07 00 0F */ cmpwi r7, 0xf
/* 800E8DF0 000E5D50 41 81 00 08 */ bgt lbl_800E8DF8
/* 800E8DF4 000E5D54 38 00 00 01 */ li r0, 1
lbl_800E8DF8:
/* 800E8DF8 000E5D58 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 800E8DFC 000E5D5C 28 00 00 01 */ cmplwi r0, 1
/* 800E8E00 000E5D60 40 82 00 F8 */ bne lbl_800E8EF8
/* 800E8E04 000E5D64 FC 20 F0 90 */ fmr f1, f30
/* 800E8E08 000E5D68 7C 64 1B 78 */ mr r4, r3
/* 800E8E0C 000E5D6C 7D 25 4B 78 */ mr r5, r9
/* 800E8E10 000E5D70 7D 06 43 78 */ mr r6, r8
/* 800E8E14 000E5D74 38 61 00 38 */ addi r3, r1, 0x38
/* 800E8E18 000E5D78 48 00 03 F1 */ bl GetDoorColors__15CMappableObjectCFiRC13CMapWorldInfof
/* 800E8E1C 000E5D7C 80 81 00 38 */ lwz r4, 0x38(r1)
/* 800E8E20 000E5D80 3C 60 80 3D */ lis r3, sDoorData@ha
/* 800E8E24 000E5D84 80 01 00 3C */ lwz r0, 0x3c(r1)
/* 800E8E28 000E5D88 57 7D 06 3E */ clrlwi r29, r27, 0x18
/* 800E8E2C 000E5D8C 90 81 00 40 */ stw r4, 0x40(r1)
/* 800E8E30 000E5D90 3B E1 00 44 */ addi r31, r1, 0x44
/* 800E8E34 000E5D94 3B 83 E5 F0 */ addi r28, r3, sDoorData@l
/* 800E8E38 000E5D98 3B 60 00 00 */ li r27, 0
/* 800E8E3C 000E5D9C 90 01 00 44 */ stw r0, 0x44(r1)
/* 800E8E40 000E5DA0 3F C0 CC 01 */ lis r30, 0xcc01
lbl_800E8E44:
/* 800E8E44 000E5DA4 28 1D 00 00 */ cmplwi r29, 0
/* 800E8E48 000E5DA8 41 82 00 18 */ beq lbl_800E8E60
/* 800E8E4C 000E5DAC 3C 80 80 47 */ lis r4, skDoorVerts__15CMappableObject@ha
/* 800E8E50 000E5DB0 38 60 00 09 */ li r3, 9
/* 800E8E54 000E5DB4 38 84 C4 98 */ addi r4, r4, skDoorVerts__15CMappableObject@l
/* 800E8E58 000E5DB8 38 A0 00 0C */ li r5, 0xc
/* 800E8E5C 000E5DBC 48 21 F7 E9 */ bl SetArray__3CGXF7_GXAttrPCvUc
lbl_800E8E60:
/* 800E8E60 000E5DC0 38 81 00 40 */ addi r4, r1, 0x40
/* 800E8E64 000E5DC4 38 60 00 00 */ li r3, 0
/* 800E8E68 000E5DC8 48 21 FD DD */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor
/* 800E8E6C 000E5DCC 38 60 00 98 */ li r3, 0x98
/* 800E8E70 000E5DD0 38 80 00 00 */ li r4, 0
/* 800E8E74 000E5DD4 38 A0 00 04 */ li r5, 4
/* 800E8E78 000E5DD8 48 21 F7 0D */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs
/* 800E8E7C 000E5DDC 88 7C 00 0C */ lbz r3, 0xc(r28)
/* 800E8E80 000E5DE0 88 1C 00 0D */ lbz r0, 0xd(r28)
/* 800E8E84 000E5DE4 98 7E 80 00 */ stb r3, 0xCC008000@l(r30)
/* 800E8E88 000E5DE8 88 7C 00 0E */ lbz r3, 0xe(r28)
/* 800E8E8C 000E5DEC 98 1E 80 00 */ stb r0, 0xCC008000@l(r30)
/* 800E8E90 000E5DF0 88 1C 00 0F */ lbz r0, 0xf(r28)
/* 800E8E94 000E5DF4 98 7E 80 00 */ stb r3, 0xCC008000@l(r30)
/* 800E8E98 000E5DF8 98 1E 80 00 */ stb r0, 0xCC008000@l(r30)
/* 800E8E9C 000E5DFC 48 21 F6 E5 */ bl End__3CGXFv
/* 800E8EA0 000E5E00 7F E4 FB 78 */ mr r4, r31
/* 800E8EA4 000E5E04 38 60 00 00 */ li r3, 0
/* 800E8EA8 000E5E08 48 21 FD 9D */ bl SetTevKColor__3CGXF14_GXTevKColorIDRC8_GXColor
/* 800E8EAC 000E5E0C 38 60 00 B0 */ li r3, 0xb0
/* 800E8EB0 000E5E10 38 80 00 00 */ li r4, 0
/* 800E8EB4 000E5E14 38 A0 00 05 */ li r5, 5
/* 800E8EB8 000E5E18 48 21 F6 CD */ bl Begin__3CGXF12_GXPrimitive9_GXVtxFmtUs
/* 800E8EBC 000E5E1C 88 9C 00 0C */ lbz r4, 0xc(r28)
/* 800E8EC0 000E5E20 88 1C 00 0D */ lbz r0, 0xd(r28)
/* 800E8EC4 000E5E24 98 9E 80 00 */ stb r4, 0xCC008000@l(r30)
/* 800E8EC8 000E5E28 88 7C 00 0F */ lbz r3, 0xf(r28)
/* 800E8ECC 000E5E2C 98 1E 80 00 */ stb r0, 0xCC008000@l(r30)
/* 800E8ED0 000E5E30 88 1C 00 0E */ lbz r0, 0xe(r28)
/* 800E8ED4 000E5E34 98 7E 80 00 */ stb r3, 0xCC008000@l(r30)
/* 800E8ED8 000E5E38 98 1E 80 00 */ stb r0, 0xCC008000@l(r30)
/* 800E8EDC 000E5E3C 98 9E 80 00 */ stb r4, 0xCC008000@l(r30)
/* 800E8EE0 000E5E40 48 21 F6 A1 */ bl End__3CGXFv
/* 800E8EE4 000E5E44 3B 7B 00 01 */ addi r27, r27, 1
/* 800E8EE8 000E5E48 3B 9C 00 10 */ addi r28, r28, 0x10
/* 800E8EEC 000E5E4C 2C 1B 00 06 */ cmpwi r27, 6
/* 800E8EF0 000E5E50 41 80 FF 54 */ blt lbl_800E8E44
/* 800E8EF4 000E5E54 48 00 02 70 */ b lbl_800E9164
lbl_800E8EF8:
/* 800E8EF8 000E5E58 80 63 00 00 */ lwz r3, 0(r3)
/* 800E8EFC 000E5E5C 3B A0 FF FF */ li r29, -1
/* 800E8F00 000E5E60 38 03 FF E5 */ addi r0, r3, -27
/* 800E8F04 000E5E64 28 00 00 0A */ cmplwi r0, 0xa
/* 800E8F08 000E5E68 41 81 01 34 */ bgt lbl_800E903C
/* 800E8F0C 000E5E6C 3C 60 80 3E */ lis r3, lbl_803DFC10@ha
/* 800E8F10 000E5E70 54 00 10 3A */ slwi r0, r0, 2
/* 800E8F14 000E5E74 38 63 FC 10 */ addi r3, r3, lbl_803DFC10@l
/* 800E8F18 000E5E78 7C 03 00 2E */ lwzx r0, r3, r0
/* 800E8F1C 000E5E7C 7C 09 03 A6 */ mtctr r0
/* 800E8F20 000E5E80 4E 80 04 20 */ bctr
lbl_800E8F24:
/* 800E8F24 000E5E84 38 80 00 FF */ li r4, 0xff
/* 800E8F28 000E5E88 38 00 00 96 */ li r0, 0x96
/* 800E8F2C 000E5E8C 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13)
/* 800E8F30 000E5E90 98 81 00 24 */ stb r4, 0x24(r1)
/* 800E8F34 000E5E94 80 C3 00 10 */ lwz r6, 0x10(r3)
/* 800E8F38 000E5E98 98 81 00 25 */ stb r4, 0x25(r1)
/* 800E8F3C 000E5E9C 98 01 00 26 */ stb r0, 0x26(r1)
/* 800E8F40 000E5EA0 98 81 00 27 */ stb r4, 0x27(r1)
/* 800E8F44 000E5EA4 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 800E8F48 000E5EA8 48 00 00 FC */ b lbl_800E9044
lbl_800E8F4C:
/* 800E8F4C 000E5EAC 38 80 00 FF */ li r4, 0xff
/* 800E8F50 000E5EB0 38 00 00 96 */ li r0, 0x96
/* 800E8F54 000E5EB4 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13)
/* 800E8F58 000E5EB8 98 81 00 20 */ stb r4, 0x20(r1)
/* 800E8F5C 000E5EBC 80 C3 00 14 */ lwz r6, 0x14(r3)
/* 800E8F60 000E5EC0 98 81 00 21 */ stb r4, 0x21(r1)
/* 800E8F64 000E5EC4 98 01 00 22 */ stb r0, 0x22(r1)
/* 800E8F68 000E5EC8 98 81 00 23 */ stb r4, 0x23(r1)
/* 800E8F6C 000E5ECC 83 A1 00 20 */ lwz r29, 0x20(r1)
/* 800E8F70 000E5ED0 48 00 00 D4 */ b lbl_800E9044
lbl_800E8F74:
/* 800E8F74 000E5ED4 38 80 00 FF */ li r4, 0xff
/* 800E8F78 000E5ED8 38 A0 00 64 */ li r5, 0x64
/* 800E8F7C 000E5EDC 38 00 00 96 */ li r0, 0x96
/* 800E8F80 000E5EE0 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13)
/* 800E8F84 000E5EE4 98 A1 00 1C */ stb r5, 0x1c(r1)
/* 800E8F88 000E5EE8 80 C3 00 10 */ lwz r6, 0x10(r3)
/* 800E8F8C 000E5EEC 98 81 00 1D */ stb r4, 0x1d(r1)
/* 800E8F90 000E5EF0 98 01 00 1E */ stb r0, 0x1e(r1)
/* 800E8F94 000E5EF4 98 81 00 1F */ stb r4, 0x1f(r1)
/* 800E8F98 000E5EF8 83 A1 00 1C */ lwz r29, 0x1c(r1)
/* 800E8F9C 000E5EFC 48 00 00 A8 */ b lbl_800E9044
lbl_800E8FA0:
/* 800E8FA0 000E5F00 38 80 00 FF */ li r4, 0xff
/* 800E8FA4 000E5F04 38 A0 00 64 */ li r5, 0x64
/* 800E8FA8 000E5F08 38 00 00 96 */ li r0, 0x96
/* 800E8FAC 000E5F0C 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13)
/* 800E8FB0 000E5F10 98 A1 00 18 */ stb r5, 0x18(r1)
/* 800E8FB4 000E5F14 80 C3 00 14 */ lwz r6, 0x14(r3)
/* 800E8FB8 000E5F18 98 81 00 19 */ stb r4, 0x19(r1)
/* 800E8FBC 000E5F1C 98 01 00 1A */ stb r0, 0x1a(r1)
/* 800E8FC0 000E5F20 98 81 00 1B */ stb r4, 0x1b(r1)
/* 800E8FC4 000E5F24 83 A1 00 18 */ lwz r29, 0x18(r1)
/* 800E8FC8 000E5F28 48 00 00 7C */ b lbl_800E9044
lbl_800E8FCC:
/* 800E8FCC 000E5F2C 38 A0 00 FF */ li r5, 0xff
/* 800E8FD0 000E5F30 38 80 00 64 */ li r4, 0x64
/* 800E8FD4 000E5F34 38 00 00 96 */ li r0, 0x96
/* 800E8FD8 000E5F38 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13)
/* 800E8FDC 000E5F3C 98 A1 00 14 */ stb r5, 0x14(r1)
/* 800E8FE0 000E5F40 80 C3 00 10 */ lwz r6, 0x10(r3)
/* 800E8FE4 000E5F44 98 81 00 15 */ stb r4, 0x15(r1)
/* 800E8FE8 000E5F48 98 01 00 16 */ stb r0, 0x16(r1)
/* 800E8FEC 000E5F4C 98 A1 00 17 */ stb r5, 0x17(r1)
/* 800E8FF0 000E5F50 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 800E8FF4 000E5F54 48 00 00 50 */ b lbl_800E9044
lbl_800E8FF8:
/* 800E8FF8 000E5F58 38 A0 00 FF */ li r5, 0xff
/* 800E8FFC 000E5F5C 38 80 00 64 */ li r4, 0x64
/* 800E9000 000E5F60 38 00 00 96 */ li r0, 0x96
/* 800E9004 000E5F64 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13)
/* 800E9008 000E5F68 98 A1 00 10 */ stb r5, 0x10(r1)
/* 800E900C 000E5F6C 80 C3 00 14 */ lwz r6, 0x14(r3)
/* 800E9010 000E5F70 98 81 00 11 */ stb r4, 0x11(r1)
/* 800E9014 000E5F74 98 01 00 12 */ stb r0, 0x12(r1)
/* 800E9018 000E5F78 98 A1 00 13 */ stb r5, 0x13(r1)
/* 800E901C 000E5F7C 83 A1 00 10 */ lwz r29, 0x10(r1)
/* 800E9020 000E5F80 48 00 00 24 */ b lbl_800E9044
lbl_800E9024:
/* 800E9024 000E5F84 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13)
/* 800E9028 000E5F88 80 C3 00 04 */ lwz r6, 4(r3)
/* 800E902C 000E5F8C 48 00 00 18 */ b lbl_800E9044
lbl_800E9030:
/* 800E9030 000E5F90 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13)
/* 800E9034 000E5F94 80 C3 00 08 */ lwz r6, 8(r3)
/* 800E9038 000E5F98 48 00 00 0C */ b lbl_800E9044
lbl_800E903C:
/* 800E903C 000E5F9C 80 6D A1 4C */ lwz r3, gpTweakPlayerRes@sda21(r13)
/* 800E9040 000E5FA0 80 C3 00 0C */ lwz r6, 0xc(r3)
lbl_800E9044:
/* 800E9044 000E5FA4 3C 60 54 58 */ lis r3, 0x54585452@ha
/* 800E9048 000E5FA8 90 C1 00 34 */ stw r6, 0x34(r1)
/* 800E904C 000E5FAC 38 03 54 52 */ addi r0, r3, 0x54585452@l
/* 800E9050 000E5FB0 80 8D A0 64 */ lwz r4, gpSimplePool@sda21(r13)
/* 800E9054 000E5FB4 90 01 00 30 */ stw r0, 0x30(r1)
/* 800E9058 000E5FB8 38 61 00 28 */ addi r3, r1, 0x28
/* 800E905C 000E5FBC 38 A1 00 30 */ addi r5, r1, 0x30
/* 800E9060 000E5FC0 81 84 00 00 */ lwz r12, 0(r4)
/* 800E9064 000E5FC4 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 800E9068 000E5FC8 7D 89 03 A6 */ mtctr r12
/* 800E906C 000E5FCC 4E 80 04 21 */ bctrl
/* 800E9070 000E5FD0 3B 61 00 48 */ addi r27, r1, 0x48
/* 800E9074 000E5FD4 38 81 00 28 */ addi r4, r1, 0x28
/* 800E9078 000E5FD8 7F 63 DB 78 */ mr r3, r27
/* 800E907C 000E5FDC 48 25 7E 2D */ bl __ct__6CTokenFRC6CToken
/* 800E9080 000E5FE0 7F 63 DB 78 */ mr r3, r27
/* 800E9084 000E5FE4 48 25 7D 89 */ bl GetObj__6CTokenFv
/* 800E9088 000E5FE8 80 03 00 04 */ lwz r0, 4(r3)
/* 800E908C 000E5FEC 38 61 00 28 */ addi r3, r1, 0x28
/* 800E9090 000E5FF0 38 80 FF FF */ li r4, -1
/* 800E9094 000E5FF4 90 01 00 50 */ stw r0, 0x50(r1)
/* 800E9098 000E5FF8 48 25 7D A9 */ bl __dt__6CTokenFv
/* 800E909C 000E5FFC 80 61 00 50 */ lwz r3, 0x50(r1)
/* 800E90A0 000E6000 38 80 00 00 */ li r4, 0
/* 800E90A4 000E6004 38 A0 00 01 */ li r5, 1
/* 800E90A8 000E6008 48 22 66 95 */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode
/* 800E90AC 000E600C 3C 80 80 5A */ lis r4, kEnvModulate__9CGraphics@ha
/* 800E90B0 000E6010 38 60 00 00 */ li r3, 0
/* 800E90B4 000E6014 38 84 5E BC */ addi r4, r4, kEnvModulate__9CGraphics@l
/* 800E90B8 000E6018 48 22 12 01 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass
/* 800E90BC 000E601C 38 60 00 98 */ li r3, 0x98
/* 800E90C0 000E6020 48 22 25 A9 */ bl StreamBegin__9CGraphicsF13ERglPrimitive
/* 800E90C4 000E6024 C0 02 90 4C */ lfs f0, lbl_805AAD6C@sda21(r2)
/* 800E90C8 000E6028 EF E0 07 B2 */ fmuls f31, f0, f30
/* 800E90CC 000E602C F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2
/* 800E90D0 000E6030 38 61 00 0C */ addi r3, r1, 0xc
/* 800E90D4 000E6034 88 01 00 08 */ lbz r0, 8(r1)
/* 800E90D8 000E6038 53 A0 00 2E */ rlwimi r0, r29, 0, 0, 0x17
/* 800E90DC 000E603C 90 01 00 0C */ stw r0, 0xc(r1)
/* 800E90E0 000E6040 48 22 24 69 */ bl StreamColor__9CGraphicsFRC6CColor
/* 800E90E4 000E6044 C0 22 90 20 */ lfs f1, lbl_805AAD40@sda21(r2)
/* 800E90E8 000E6048 C0 42 90 50 */ lfs f2, lbl_805AAD70@sda21(r2)
/* 800E90EC 000E604C 48 22 23 79 */ bl StreamTexcoord__9CGraphicsFff
/* 800E90F0 000E6050 C0 22 90 54 */ lfs f1, lbl_805AAD74@sda21(r2)
/* 800E90F4 000E6054 C0 42 90 20 */ lfs f2, lbl_805AAD40@sda21(r2)
/* 800E90F8 000E6058 C0 62 90 58 */ lfs f3, lbl_805AAD78@sda21(r2)
/* 800E90FC 000E605C 48 22 25 3D */ bl StreamVertex__9CGraphicsFfff
/* 800E9100 000E6060 C0 22 90 20 */ lfs f1, lbl_805AAD40@sda21(r2)
/* 800E9104 000E6064 FC 40 08 90 */ fmr f2, f1
/* 800E9108 000E6068 48 22 23 5D */ bl StreamTexcoord__9CGraphicsFff
/* 800E910C 000E606C C0 22 90 54 */ lfs f1, lbl_805AAD74@sda21(r2)
/* 800E9110 000E6070 C0 42 90 20 */ lfs f2, lbl_805AAD40@sda21(r2)
/* 800E9114 000E6074 FC 60 08 90 */ fmr f3, f1
/* 800E9118 000E6078 48 22 25 21 */ bl StreamVertex__9CGraphicsFfff
/* 800E911C 000E607C C0 22 90 50 */ lfs f1, lbl_805AAD70@sda21(r2)
/* 800E9120 000E6080 FC 40 08 90 */ fmr f2, f1
/* 800E9124 000E6084 48 22 23 41 */ bl StreamTexcoord__9CGraphicsFff
/* 800E9128 000E6088 C0 22 90 58 */ lfs f1, lbl_805AAD78@sda21(r2)
/* 800E912C 000E608C C0 42 90 20 */ lfs f2, lbl_805AAD40@sda21(r2)
/* 800E9130 000E6090 FC 60 08 90 */ fmr f3, f1
/* 800E9134 000E6094 48 22 25 05 */ bl StreamVertex__9CGraphicsFfff
/* 800E9138 000E6098 C0 22 90 50 */ lfs f1, lbl_805AAD70@sda21(r2)
/* 800E913C 000E609C C0 42 90 20 */ lfs f2, lbl_805AAD40@sda21(r2)
/* 800E9140 000E60A0 48 22 23 25 */ bl StreamTexcoord__9CGraphicsFff
/* 800E9144 000E60A4 C0 22 90 58 */ lfs f1, lbl_805AAD78@sda21(r2)
/* 800E9148 000E60A8 C0 42 90 20 */ lfs f2, lbl_805AAD40@sda21(r2)
/* 800E914C 000E60AC C0 62 90 54 */ lfs f3, lbl_805AAD74@sda21(r2)
/* 800E9150 000E60B0 48 22 24 E9 */ bl StreamVertex__9CGraphicsFfff
/* 800E9154 000E60B4 48 22 22 BD */ bl StreamEnd__9CGraphicsFv
/* 800E9158 000E60B8 7F 63 DB 78 */ mr r3, r27
/* 800E915C 000E60BC 38 80 00 00 */ li r4, 0
/* 800E9160 000E60C0 48 25 7C E1 */ bl __dt__6CTokenFv
lbl_800E9164:
/* 800E9164 000E60C4 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0
/* 800E9168 000E60C8 CB E1 00 80 */ lfd f31, 0x80(r1)
/* 800E916C 000E60CC E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0
/* 800E9170 000E60D0 CB C1 00 70 */ lfd f30, 0x70(r1)
/* 800E9174 000E60D4 BB 61 00 5C */ lmw r27, 0x5c(r1)
/* 800E9178 000E60D8 80 01 00 94 */ lwz r0, 0x94(r1)
/* 800E917C 000E60DC 7C 08 03 A6 */ mtlr r0
/* 800E9180 000E60E0 38 21 00 90 */ addi r1, r1, 0x90
/* 800E9184 000E60E4 4E 80 00 20 */ blr
.global PostConstruct__15CMappableObjectFPCv
PostConstruct__15CMappableObjectFPCv:
/* 800E9188 000E60E8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 800E918C 000E60EC 7C 08 02 A6 */ mflr r0
/* 800E9190 000E60F0 90 01 00 44 */ stw r0, 0x44(r1)
/* 800E9194 000E60F4 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 800E9198 000E60F8 7C 7F 1B 78 */ mr r31, r3
/* 800E919C 000E60FC 38 61 00 08 */ addi r3, r1, 8
/* 800E91A0 000E6100 80 1F 00 00 */ lwz r0, 0(r31)
/* 800E91A4 000E6104 7F E4 FB 78 */ mr r4, r31
/* 800E91A8 000E6108 80 1F 00 04 */ lwz r0, 4(r31)
/* 800E91AC 000E610C 80 1F 00 08 */ lwz r0, 8(r31)
/* 800E91B0 000E6110 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 800E91B4 000E6114 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 800E91B8 000E6118 80 1F 00 14 */ lwz r0, 0x14(r31)
/* 800E91BC 000E611C 80 1F 00 18 */ lwz r0, 0x18(r31)
/* 800E91C0 000E6120 80 1F 00 1C */ lwz r0, 0x1c(r31)
/* 800E91C4 000E6124 80 1F 00 20 */ lwz r0, 0x20(r31)
/* 800E91C8 000E6128 80 1F 00 24 */ lwz r0, 0x24(r31)
/* 800E91CC 000E612C 80 1F 00 28 */ lwz r0, 0x28(r31)
/* 800E91D0 000E6130 80 1F 00 2C */ lwz r0, 0x2c(r31)
/* 800E91D4 000E6134 80 1F 00 30 */ lwz r0, 0x30(r31)
/* 800E91D8 000E6138 80 1F 00 34 */ lwz r0, 0x34(r31)
/* 800E91DC 000E613C 80 1F 00 38 */ lwz r0, 0x38(r31)
/* 800E91E0 000E6140 80 1F 00 3C */ lwz r0, 0x3c(r31)
/* 800E91E4 000E6144 4B FF F5 8D */ bl AdjustTransformForType__15CMappableObjectFv
/* 800E91E8 000E6148 38 7F 00 10 */ addi r3, r31, 0x10
/* 800E91EC 000E614C 38 81 00 08 */ addi r4, r1, 8
/* 800E91F0 000E6150 48 22 99 51 */ bl __as__12CTransform4fFRC12CTransform4f
/* 800E91F4 000E6154 80 01 00 44 */ lwz r0, 0x44(r1)
/* 800E91F8 000E6158 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 800E91FC 000E615C 7C 08 03 A6 */ mtlr r0
/* 800E9200 000E6160 38 21 00 40 */ addi r1, r1, 0x40
/* 800E9204 000E6164 4E 80 00 20 */ blr
.global GetDoorColors__15CMappableObjectCFiRC13CMapWorldInfof
GetDoorColors__15CMappableObjectCFiRC13CMapWorldInfof:
/* 800E9208 000E6168 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 800E920C 000E616C 7C 08 02 A6 */ mflr r0
/* 800E9210 000E6170 90 01 00 64 */ stw r0, 0x64(r1)
/* 800E9214 000E6174 DB E1 00 50 */ stfd f31, 0x50(r1)
/* 800E9218 000E6178 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
/* 800E921C 000E617C DB C1 00 40 */ stfd f30, 0x40(r1)
/* 800E9220 000E6180 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0
/* 800E9224 000E6184 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 800E9228 000E6188 93 C1 00 38 */ stw r30, 0x38(r1)
/* 800E922C 000E618C 93 A1 00 34 */ stw r29, 0x34(r1)
/* 800E9230 000E6190 80 E4 00 08 */ lwz r7, 8(r4)
/* 800E9234 000E6194 39 00 00 FF */ li r8, 0xff
/* 800E9238 000E6198 7C 9D 23 78 */ mr r29, r4
/* 800E923C 000E619C 38 80 00 00 */ li r4, 0
/* 800E9240 000E61A0 54 E0 85 BE */ rlwinm r0, r7, 0x10, 0x16, 0x1f
/* 800E9244 000E61A4 98 81 00 25 */ stb r4, 0x25(r1)
/* 800E9248 000E61A8 7C 05 00 50 */ subf r0, r5, r0
/* 800E924C 000E61AC FF C0 08 90 */ fmr f30, f1
/* 800E9250 000E61B0 7C 00 00 34 */ cntlzw r0, r0
/* 800E9254 000E61B4 99 01 00 24 */ stb r8, 0x24(r1)
/* 800E9258 000E61B8 7C 7F 1B 78 */ mr r31, r3
/* 800E925C 000E61BC 7C C3 33 78 */ mr r3, r6
/* 800E9260 000E61C0 99 01 00 26 */ stb r8, 0x26(r1)
/* 800E9264 000E61C4 54 1E D9 7E */ srwi r30, r0, 5
/* 800E9268 000E61C8 38 81 00 1C */ addi r4, r1, 0x1c
/* 800E926C 000E61CC 99 01 00 27 */ stb r8, 0x27(r1)
/* 800E9270 000E61D0 90 E1 00 1C */ stw r7, 0x1c(r1)
/* 800E9274 000E61D4 48 07 F4 7D */ bl IsDoorVisited__13CMapWorldInfoCF9TEditorId
/* 800E9278 000E61D8 57 C0 06 3F */ clrlwi. r0, r30, 0x18
/* 800E927C 000E61DC 41 82 00 84 */ beq lbl_800E9300
/* 800E9280 000E61E0 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 800E9284 000E61E4 41 82 00 20 */ beq lbl_800E92A4
/* 800E9288 000E61E8 80 1D 00 00 */ lwz r0, 0(r29)
/* 800E928C 000E61EC 2C 00 00 01 */ cmpwi r0, 1
/* 800E9290 000E61F0 40 82 00 14 */ bne lbl_800E92A4
/* 800E9294 000E61F4 80 6D A1 44 */ lwz r3, gpTweakAutoMapper@sda21(r13)
/* 800E9298 000E61F8 80 03 01 04 */ lwz r0, 0x104(r3)
/* 800E929C 000E61FC 90 01 00 24 */ stw r0, 0x24(r1)
/* 800E92A0 000E6200 48 00 00 80 */ b lbl_800E9320
lbl_800E92A4:
/* 800E92A4 000E6204 80 1D 00 00 */ lwz r0, 0(r29)
/* 800E92A8 000E6208 38 80 00 00 */ li r4, 0
/* 800E92AC 000E620C 28 00 00 0F */ cmplwi r0, 0xf
/* 800E92B0 000E6210 41 81 00 38 */ bgt lbl_800E92E8
/* 800E92B4 000E6214 3C 60 80 3E */ lis r3, lbl_803DFC3C@ha
/* 800E92B8 000E6218 54 00 10 3A */ slwi r0, r0, 2
/* 800E92BC 000E621C 38 63 FC 3C */ addi r3, r3, lbl_803DFC3C@l
/* 800E92C0 000E6220 7C 03 00 2E */ lwzx r0, r3, r0
/* 800E92C4 000E6224 7C 09 03 A6 */ mtctr r0
/* 800E92C8 000E6228 4E 80 04 20 */ bctr
lbl_800E92CC:
/* 800E92CC 000E622C 38 80 00 01 */ li r4, 1
/* 800E92D0 000E6230 48 00 00 18 */ b lbl_800E92E8
lbl_800E92D4:
/* 800E92D4 000E6234 38 80 00 02 */ li r4, 2
/* 800E92D8 000E6238 48 00 00 10 */ b lbl_800E92E8
lbl_800E92DC:
/* 800E92DC 000E623C 38 80 00 03 */ li r4, 3
/* 800E92E0 000E6240 48 00 00 08 */ b lbl_800E92E8
lbl_800E92E4:
/* 800E92E4 000E6244 38 80 00 04 */ li r4, 4
lbl_800E92E8:
/* 800E92E8 000E6248 80 6D A1 44 */ lwz r3, gpTweakAutoMapper@sda21(r13)
/* 800E92EC 000E624C 54 80 10 3A */ slwi r0, r4, 2
/* 800E92F0 000E6250 7C 63 02 14 */ add r3, r3, r0
/* 800E92F4 000E6254 80 03 01 04 */ lwz r0, 0x104(r3)
/* 800E92F8 000E6258 90 01 00 24 */ stw r0, 0x24(r1)
/* 800E92FC 000E625C 48 00 00 24 */ b lbl_800E9320
lbl_800E9300:
/* 800E9300 000E6260 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 800E9304 000E6264 41 82 00 14 */ beq lbl_800E9318
/* 800E9308 000E6268 80 6D A1 44 */ lwz r3, gpTweakAutoMapper@sda21(r13)
/* 800E930C 000E626C 80 03 01 1C */ lwz r0, 0x11c(r3)
/* 800E9310 000E6270 90 01 00 24 */ stw r0, 0x24(r1)
/* 800E9314 000E6274 48 00 00 0C */ b lbl_800E9320
lbl_800E9318:
/* 800E9318 000E6278 38 00 00 00 */ li r0, 0
/* 800E931C 000E627C 90 01 00 24 */ stw r0, 0x24(r1)
lbl_800E9320:
/* 800E9320 000E6280 88 61 00 27 */ lbz r3, 0x27(r1)
/* 800E9324 000E6284 3C 00 43 30 */ lis r0, 0x4330
/* 800E9328 000E6288 90 01 00 28 */ stw r0, 0x28(r1)
/* 800E932C 000E628C C8 22 90 68 */ lfd f1, lbl_805AAD88@sda21(r2)
/* 800E9330 000E6290 90 61 00 2C */ stw r3, 0x2c(r1)
/* 800E9334 000E6294 C8 01 00 28 */ lfd f0, 0x28(r1)
/* 800E9338 000E6298 EC 00 08 28 */ fsubs f0, f0, f1
/* 800E933C 000E629C EF FE 00 32 */ fmuls f31, f30, f0
/* 800E9340 000E62A0 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2
/* 800E9344 000E62A4 80 61 00 24 */ lwz r3, 0x24(r1)
/* 800E9348 000E62A8 88 01 00 08 */ lbz r0, 8(r1)
/* 800E934C 000E62AC 50 60 00 2E */ rlwimi r0, r3, 0, 0, 0x17
/* 800E9350 000E62B0 90 01 00 24 */ stw r0, 0x24(r1)
/* 800E9354 000E62B4 E0 21 A0 24 */ psq_l f1, 36(r1), 1, qr2
/* 800E9358 000E62B8 C0 02 90 60 */ lfs f0, lbl_805AAD80@sda21(r2)
/* 800E935C 000E62BC C0 42 90 5C */ lfs f2, lbl_805AAD7C@sda21(r2)
/* 800E9360 000E62C0 EC 20 00 72 */ fmuls f1, f0, f1
/* 800E9364 000E62C4 C0 0D 87 A8 */ lfs f0, lbl_805A7368@sda21(r13)
/* 800E9368 000E62C8 EC 22 00 72 */ fmuls f1, f2, f1
/* 800E936C 000E62CC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 800E9370 000E62D0 D0 21 00 18 */ stfs f1, 0x18(r1)
/* 800E9374 000E62D4 40 80 00 0C */ bge lbl_800E9380
/* 800E9378 000E62D8 38 81 00 18 */ addi r4, r1, 0x18
/* 800E937C 000E62DC 48 00 00 08 */ b lbl_800E9384
lbl_800E9380:
/* 800E9380 000E62E0 38 8D 87 A8 */ addi r4, r13, lbl_805A7368@sda21
lbl_800E9384:
/* 800E9384 000E62E4 E0 21 A0 25 */ psq_l f1, 37(r1), 1, qr2
/* 800E9388 000E62E8 C0 02 90 60 */ lfs f0, lbl_805AAD80@sda21(r2)
/* 800E938C 000E62EC C0 42 90 5C */ lfs f2, lbl_805AAD7C@sda21(r2)
/* 800E9390 000E62F0 EC 20 00 72 */ fmuls f1, f0, f1
/* 800E9394 000E62F4 C0 0D 87 AC */ lfs f0, lbl_805A736C@sda21(r13)
/* 800E9398 000E62F8 EC 22 00 72 */ fmuls f1, f2, f1
/* 800E939C 000E62FC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 800E93A0 000E6300 D0 21 00 14 */ stfs f1, 0x14(r1)
/* 800E93A4 000E6304 40 80 00 0C */ bge lbl_800E93B0
/* 800E93A8 000E6308 38 A1 00 14 */ addi r5, r1, 0x14
/* 800E93AC 000E630C 48 00 00 08 */ b lbl_800E93B4
lbl_800E93B0:
/* 800E93B0 000E6310 38 AD 87 AC */ addi r5, r13, lbl_805A736C@sda21
lbl_800E93B4:
/* 800E93B4 000E6314 E0 21 A0 26 */ psq_l f1, 38(r1), 1, qr2
/* 800E93B8 000E6318 C0 02 90 60 */ lfs f0, lbl_805AAD80@sda21(r2)
/* 800E93BC 000E631C C0 42 90 5C */ lfs f2, lbl_805AAD7C@sda21(r2)
/* 800E93C0 000E6320 EC 20 00 72 */ fmuls f1, f0, f1
/* 800E93C4 000E6324 C0 0D 87 B0 */ lfs f0, lbl_805A7370@sda21(r13)
/* 800E93C8 000E6328 EC 22 00 72 */ fmuls f1, f2, f1
/* 800E93CC 000E632C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 800E93D0 000E6330 D0 21 00 10 */ stfs f1, 0x10(r1)
/* 800E93D4 000E6334 40 80 00 0C */ bge lbl_800E93E0
/* 800E93D8 000E6338 38 C1 00 10 */ addi r6, r1, 0x10
/* 800E93DC 000E633C 48 00 00 08 */ b lbl_800E93E4
lbl_800E93E0:
/* 800E93E0 000E6340 38 CD 87 B0 */ addi r6, r13, lbl_805A7370@sda21
lbl_800E93E4:
/* 800E93E4 000E6344 E0 21 A0 27 */ psq_l f1, 39(r1), 1, qr2
/* 800E93E8 000E6348 38 61 00 20 */ addi r3, r1, 0x20
/* 800E93EC 000E634C C0 02 90 60 */ lfs f0, lbl_805AAD80@sda21(r2)
/* 800E93F0 000E6350 C0 42 90 5C */ lfs f2, lbl_805AAD7C@sda21(r2)
/* 800E93F4 000E6354 EC 20 00 72 */ fmuls f1, f0, f1
/* 800E93F8 000E6358 C0 0D 87 B4 */ lfs f0, lbl_805A7374@sda21(r13)
/* 800E93FC 000E635C EC 22 00 72 */ fmuls f1, f2, f1
/* 800E9400 000E6360 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 800E9404 000E6364 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 800E9408 000E6368 C0 24 00 00 */ lfs f1, 0(r4)
/* 800E940C 000E636C C0 45 00 00 */ lfs f2, 0(r5)
/* 800E9410 000E6370 C0 66 00 00 */ lfs f3, 0(r6)
/* 800E9414 000E6374 40 80 00 0C */ bge lbl_800E9420
/* 800E9418 000E6378 38 81 00 0C */ addi r4, r1, 0xc
/* 800E941C 000E637C 48 00 00 08 */ b lbl_800E9424
lbl_800E9420:
/* 800E9420 000E6380 38 8D 87 B4 */ addi r4, r13, lbl_805A7374@sda21
lbl_800E9424:
/* 800E9424 000E6384 C0 84 00 00 */ lfs f4, 0(r4)
/* 800E9428 000E6388 48 27 9F C5 */ bl __ct__6CColorFffff
/* 800E942C 000E638C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 800E9430 000E6390 90 1F 00 00 */ stw r0, 0(r31)
/* 800E9434 000E6394 80 01 00 20 */ lwz r0, 0x20(r1)
/* 800E9438 000E6398 90 1F 00 04 */ stw r0, 4(r31)
/* 800E943C 000E639C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0
/* 800E9440 000E63A0 CB E1 00 50 */ lfd f31, 0x50(r1)
/* 800E9444 000E63A4 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0
/* 800E9448 000E63A8 CB C1 00 40 */ lfd f30, 0x40(r1)
/* 800E944C 000E63AC 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 800E9450 000E63B0 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 800E9454 000E63B4 80 01 00 64 */ lwz r0, 0x64(r1)
/* 800E9458 000E63B8 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 800E945C 000E63BC 7C 08 03 A6 */ mtlr r0
/* 800E9460 000E63C0 38 21 00 60 */ addi r1, r1, 0x60
/* 800E9464 000E63C4 4E 80 00 20 */ blr
.global ReadAutomapperTweaks__15CMappableObjectFRC16CTweakAutoMapper
ReadAutomapperTweaks__15CMappableObjectFRC16CTweakAutoMapper:
/* 800E9468 000E63C8 C0 03 00 AC */ lfs f0, 0xac(r3)
/* 800E946C 000E63CC 3C 80 80 47 */ lis r4, skDoorVerts__15CMappableObject@ha
/* 800E9470 000E63D0 C0 A3 00 A8 */ lfs f5, 0xa8(r3)
/* 800E9474 000E63D4 FC 40 00 50 */ fneg f2, f0
/* 800E9478 000E63D8 C0 02 90 70 */ lfs f0, lbl_805AAD90@sda21(r2)
/* 800E947C 000E63DC C0 C3 00 A4 */ lfs f6, 0xa4(r3)
/* 800E9480 000E63E0 FC 60 28 50 */ fneg f3, f5
/* 800E9484 000E63E4 C0 22 90 20 */ lfs f1, lbl_805AAD40@sda21(r2)
/* 800E9488 000E63E8 EC 80 00 B2 */ fmuls f4, f0, f2
/* 800E948C 000E63EC C0 02 90 48 */ lfs f0, lbl_805AAD68@sda21(r2)
/* 800E9490 000E63F0 D4 44 C4 98 */ stfsu f2, skDoorVerts__15CMappableObject@l(r4)
/* 800E9494 000E63F4 EC 00 01 B2 */ fmuls f0, f0, f6
/* 800E9498 000E63F8 D0 64 00 04 */ stfs f3, 4(r4)
/* 800E949C 000E63FC D0 24 00 08 */ stfs f1, 8(r4)
/* 800E94A0 000E6400 D0 44 00 0C */ stfs f2, 0xc(r4)
/* 800E94A4 000E6404 D0 64 00 10 */ stfs f3, 0x10(r4)
/* 800E94A8 000E6408 D0 04 00 14 */ stfs f0, 0x14(r4)
/* 800E94AC 000E640C D0 44 00 18 */ stfs f2, 0x18(r4)
/* 800E94B0 000E6410 D0 A4 00 1C */ stfs f5, 0x1c(r4)
/* 800E94B4 000E6414 D0 24 00 20 */ stfs f1, 0x20(r4)
/* 800E94B8 000E6418 D0 44 00 24 */ stfs f2, 0x24(r4)
/* 800E94BC 000E641C D0 A4 00 28 */ stfs f5, 0x28(r4)
/* 800E94C0 000E6420 D0 04 00 2C */ stfs f0, 0x2c(r4)
/* 800E94C4 000E6424 D0 84 00 30 */ stfs f4, 0x30(r4)
/* 800E94C8 000E6428 D0 64 00 34 */ stfs f3, 0x34(r4)
/* 800E94CC 000E642C D0 24 00 38 */ stfs f1, 0x38(r4)
/* 800E94D0 000E6430 D0 84 00 3C */ stfs f4, 0x3c(r4)
/* 800E94D4 000E6434 D0 64 00 40 */ stfs f3, 0x40(r4)
/* 800E94D8 000E6438 D0 04 00 44 */ stfs f0, 0x44(r4)
/* 800E94DC 000E643C D0 84 00 48 */ stfs f4, 0x48(r4)
/* 800E94E0 000E6440 D0 A4 00 4C */ stfs f5, 0x4c(r4)
/* 800E94E4 000E6444 D0 24 00 50 */ stfs f1, 0x50(r4)
/* 800E94E8 000E6448 D0 84 00 54 */ stfs f4, 0x54(r4)
/* 800E94EC 000E644C D0 A4 00 58 */ stfs f5, 0x58(r4)
/* 800E94F0 000E6450 D0 04 00 5C */ stfs f0, 0x5c(r4)
/* 800E94F4 000E6454 4E 80 00 20 */ blr
.global __sinit_CMappableObject_cpp
__sinit_CMappableObject_cpp:
/* 800E94F8 000E6458 3C 80 80 5A */ lis r4, sZeroVector__9CVector3f@ha
/* 800E94FC 000E645C C4 04 66 A0 */ lfsu f0, sZeroVector__9CVector3f@l(r4)
/* 800E9500 000E6460 3C 60 80 47 */ lis r3, skDoorVerts__15CMappableObject@ha
/* 800E9504 000E6464 D4 03 C4 98 */ stfsu f0, skDoorVerts__15CMappableObject@l(r3)
/* 800E9508 000E6468 C0 24 00 04 */ lfs f1, 4(r4)
/* 800E950C 000E646C C0 44 00 08 */ lfs f2, 8(r4)
/* 800E9510 000E6470 D0 23 00 04 */ stfs f1, 4(r3)
/* 800E9514 000E6474 D0 43 00 08 */ stfs f2, 8(r3)
/* 800E9518 000E6478 D0 03 00 0C */ stfs f0, 0xc(r3)
/* 800E951C 000E647C D0 23 00 10 */ stfs f1, 0x10(r3)
/* 800E9520 000E6480 D0 43 00 14 */ stfs f2, 0x14(r3)
/* 800E9524 000E6484 D0 03 00 18 */ stfs f0, 0x18(r3)
/* 800E9528 000E6488 D0 23 00 1C */ stfs f1, 0x1c(r3)
/* 800E952C 000E648C D0 43 00 20 */ stfs f2, 0x20(r3)
/* 800E9530 000E6490 D0 03 00 24 */ stfs f0, 0x24(r3)
/* 800E9534 000E6494 D0 23 00 28 */ stfs f1, 0x28(r3)
/* 800E9538 000E6498 D0 43 00 2C */ stfs f2, 0x2c(r3)
/* 800E953C 000E649C D0 03 00 30 */ stfs f0, 0x30(r3)
/* 800E9540 000E64A0 D0 23 00 34 */ stfs f1, 0x34(r3)
/* 800E9544 000E64A4 D0 43 00 38 */ stfs f2, 0x38(r3)
/* 800E9548 000E64A8 D0 03 00 3C */ stfs f0, 0x3c(r3)
/* 800E954C 000E64AC D0 23 00 40 */ stfs f1, 0x40(r3)
/* 800E9550 000E64B0 D0 43 00 44 */ stfs f2, 0x44(r3)
/* 800E9554 000E64B4 D0 03 00 48 */ stfs f0, 0x48(r3)
/* 800E9558 000E64B8 D0 23 00 4C */ stfs f1, 0x4c(r3)
/* 800E955C 000E64BC D0 43 00 50 */ stfs f2, 0x50(r3)
/* 800E9560 000E64C0 D0 03 00 54 */ stfs f0, 0x54(r3)
/* 800E9564 000E64C4 D0 23 00 58 */ stfs f1, 0x58(r3)
/* 800E9568 000E64C8 D0 43 00 5C */ stfs f2, 0x5c(r3)
/* 800E956C 000E64CC 4E 80 00 20 */ blr
.section .rodata
.balign 8
.global sDoorData
sDoorData:
# ROM: 0x3CB5F0
.4byte 0
.4byte 0
.float -1.0
.4byte 0x06040200
.4byte 0
.4byte 0
.float 1.0
.4byte 0x03010705
.4byte 0
.float -1.0
.float 1.0
.4byte 0x01000504
.4byte 0
.float 1.0
.float 1.0
.4byte 0x07060302
.float -1.0
.4byte 0
.4byte 0
.4byte 0x03020100
.float 1.0
.4byte 0
.4byte 0
.4byte 0x05040706