.include "macros.inc"

.comm sMazeSeeds__15CScriptMazeNode, 0x4B0, 4

.section .data
.balign 8

.global lbl_803EB658
lbl_803EB658:
	# ROM: 0x3E8658
	.4byte 0
	.4byte 0
	.4byte __dt__15CScriptMazeNodeFv
	.4byte Accept__15CScriptMazeNodeFR8IVisitor
	.4byte PreThink__7CEntityFfR13CStateManager
	.4byte Think__15CScriptMazeNodeFfR13CStateManager
	.4byte AcceptScriptMsg__15CScriptMazeNodeF20EScriptObjectMessage9TUniqueIdR13CStateManager
	.4byte SetActive__6CActorFb
	.4byte PreRender__6CActorFR13CStateManagerRC14CFrustumPlanes
	.4byte AddToRenderer__6CActorCFRC14CFrustumPlanesRC13CStateManager
	.4byte Render__6CActorCFRC13CStateManager
	.4byte CanRenderUnsorted__6CActorCFRC13CStateManager
	.4byte CalculateRenderBounds__6CActorFv
	.4byte HealthInfo__6CActorFR13CStateManager
	.4byte GetDamageVulnerability__6CActorCFv
	.4byte GetDamageVulnerability__6CActorCFRC9CVector3fRC9CVector3fRC11CDamageInfo
	.4byte GetTouchBounds__6CActorCFv
	.4byte Touch__6CActorFR6CActorR13CStateManager
	.4byte GetOrbitPosition__6CActorCFRC13CStateManager
	.4byte GetAimPosition__6CActorCFRC13CStateManagerf
	.4byte GetHomingPosition__6CActorCFRC13CStateManagerf
	.4byte GetScanObjectIndicatorPosition__6CActorCFRC13CStateManager
	.4byte GetCollisionResponseType__6CActorCFRC9CVector3fRC9CVector3fRC11CWeaponModei
	.4byte FluidFXThink__6CActorFQ26CActor11EFluidStateR12CScriptWaterR13CStateManager
	.4byte OnScanStateChange__6CActorFQ26CActor10EScanStateR13CStateManager
	.4byte GetSortingBounds__6CActorCFRC13CStateManager
	.4byte DoUserAnimEvent__6CActorFR13CStateManagerRC13CInt32POINode14EUserEventTypef
	.4byte 0

.section .text, "ax"

.global __dt__15CScriptMazeNodeFv
__dt__15CScriptMazeNodeFv:
/* 802887C8 00285728  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802887CC 0028572C  7C 08 02 A6 */	mflr r0
/* 802887D0 00285730  90 01 00 24 */	stw r0, 0x24(r1)
/* 802887D4 00285734  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 802887D8 00285738  7C 9F 23 78 */	mr r31, r4
/* 802887DC 0028573C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 802887E0 00285740  7C 7E 1B 79 */	or. r30, r3, r3
/* 802887E4 00285744  41 82 00 74 */	beq lbl_80288858
/* 802887E8 00285748  3C 60 80 3F */	lis r3, lbl_803EB658@ha
/* 802887EC 0028574C  34 1E 01 2C */	addic. r0, r30, 0x12c
/* 802887F0 00285750  38 03 B6 58 */	addi r0, r3, lbl_803EB658@l
/* 802887F4 00285754  90 1E 00 00 */	stw r0, 0(r30)
/* 802887F8 00285758  41 82 00 44 */	beq lbl_8028883C
/* 802887FC 0028575C  80 1E 01 30 */	lwz r0, 0x130(r30)
/* 80288800 00285760  80 7E 01 38 */	lwz r3, 0x138(r30)
/* 80288804 00285764  54 00 08 3C */	slwi r0, r0, 1
/* 80288808 00285768  7C 03 02 14 */	add r0, r3, r0
/* 8028880C 0028576C  90 61 00 0C */	stw r3, 0xc(r1)
/* 80288810 00285770  7C 64 1B 78 */	mr r4, r3
/* 80288814 00285774  90 01 00 14 */	stw r0, 0x14(r1)
/* 80288818 00285778  90 01 00 10 */	stw r0, 0x10(r1)
/* 8028881C 0028577C  90 61 00 08 */	stw r3, 8(r1)
/* 80288820 00285780  48 00 00 08 */	b lbl_80288828
lbl_80288824:
/* 80288824 00285784  38 84 00 02 */	addi r4, r4, 2
lbl_80288828:
/* 80288828 00285788  7C 04 00 40 */	cmplw r4, r0
/* 8028882C 0028578C  40 82 FF F8 */	bne lbl_80288824
/* 80288830 00285790  28 03 00 00 */	cmplwi r3, 0
/* 80288834 00285794  41 82 00 08 */	beq lbl_8028883C
/* 80288838 00285798  48 08 D0 F9 */	bl Free__7CMemoryFPCv
lbl_8028883C:
/* 8028883C 0028579C  7F C3 F3 78 */	mr r3, r30
/* 80288840 002857A0  38 80 00 00 */	li r4, 0
/* 80288844 002857A4  4B DC CE AD */	bl __dt__6CActorFv
/* 80288848 002857A8  7F E0 07 35 */	extsh. r0, r31
/* 8028884C 002857AC  40 81 00 0C */	ble lbl_80288858
/* 80288850 002857B0  7F C3 F3 78 */	mr r3, r30
/* 80288854 002857B4  48 08 D0 DD */	bl Free__7CMemoryFPCv
lbl_80288858:
/* 80288858 002857B8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028885C 002857BC  7F C3 F3 78 */	mr r3, r30
/* 80288860 002857C0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80288864 002857C4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80288868 002857C8  7C 08 03 A6 */	mtlr r0
/* 8028886C 002857CC  38 21 00 20 */	addi r1, r1, 0x20
/* 80288870 002857D0  4E 80 00 20 */	blr

.global LoadMazeSeeds__15CScriptMazeNodeFv
LoadMazeSeeds__15CScriptMazeNodeFv:
/* 80288874 002857D4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80288878 002857D8  7C 08 02 A6 */	mflr r0
/* 8028887C 002857DC  3C 80 80 3D */	lis r4, lbl_803D5980@ha
/* 80288880 002857E0  90 01 00 24 */	stw r0, 0x24(r1)
/* 80288884 002857E4  38 84 59 80 */	addi r4, r4, lbl_803D5980@l
/* 80288888 002857E8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028888C 002857EC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80288890 002857F0  80 6D A0 60 */	lwz r3, gpResourceFactory@sda21(r13)
/* 80288894 002857F4  81 83 00 00 */	lwz r12, 0(r3)
/* 80288898 002857F8  81 8C 00 1C */	lwz r12, 0x1c(r12)
/* 8028889C 002857FC  7D 89 03 A6 */	mtctr r12
/* 802888A0 00285800  4E 80 04 21 */	bctrl
/* 802888A4 00285804  80 CD A0 60 */	lwz r6, gpResourceFactory@sda21(r13)
/* 802888A8 00285808  7C 64 1B 78 */	mr r4, r3
/* 802888AC 0028580C  38 A0 00 00 */	li r5, 0
/* 802888B0 00285810  38 66 00 04 */	addi r3, r6, 4
/* 802888B4 00285814  48 0B 30 B5 */	bl LoadNewResourceSync__10CResLoaderFRC10SObjectTagPc
/* 802888B8 00285818  7C 03 00 D0 */	neg r0, r3
/* 802888BC 0028581C  3C 80 80 57 */	lis r4, sMazeSeeds__15CScriptMazeNode@ha
/* 802888C0 00285820  7C 00 1B 78 */	or r0, r0, r3
/* 802888C4 00285824  90 61 00 0C */	stw r3, 0xc(r1)
/* 802888C8 00285828  54 00 0F FE */	srwi r0, r0, 0x1f
/* 802888CC 0028582C  3B E4 26 FC */	addi r31, r4, sMazeSeeds__15CScriptMazeNode@l
/* 802888D0 00285830  98 01 00 08 */	stb r0, 8(r1)
/* 802888D4 00285834  3B C0 00 00 */	li r30, 0
lbl_802888D8:
/* 802888D8 00285838  80 61 00 0C */	lwz r3, 0xc(r1)
/* 802888DC 0028583C  48 0B 63 A9 */	bl ReadLong__12CInputStreamFv
/* 802888E0 00285840  3B DE 00 01 */	addi r30, r30, 1
/* 802888E4 00285844  90 7F 00 00 */	stw r3, 0(r31)
/* 802888E8 00285848  2C 1E 01 2C */	cmpwi r30, 0x12c
/* 802888EC 0028584C  3B FF 00 04 */	addi r31, r31, 4
/* 802888F0 00285850  41 80 FF E8 */	blt lbl_802888D8
/* 802888F4 00285854  88 01 00 08 */	lbz r0, 8(r1)
/* 802888F8 00285858  28 00 00 00 */	cmplwi r0, 0
/* 802888FC 0028585C  41 82 00 24 */	beq lbl_80288920
/* 80288900 00285860  80 61 00 0C */	lwz r3, 0xc(r1)
/* 80288904 00285864  28 03 00 00 */	cmplwi r3, 0
/* 80288908 00285868  41 82 00 18 */	beq lbl_80288920
/* 8028890C 0028586C  81 83 00 00 */	lwz r12, 0(r3)
/* 80288910 00285870  38 80 00 01 */	li r4, 1
/* 80288914 00285874  81 8C 00 08 */	lwz r12, 8(r12)
/* 80288918 00285878  7D 89 03 A6 */	mtctr r12
/* 8028891C 0028587C  4E 80 04 21 */	bctrl
lbl_80288920:
/* 80288920 00285880  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80288924 00285884  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80288928 00285888  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8028892C 0028588C  7C 08 03 A6 */	mtlr r0
/* 80288930 00285890  38 21 00 20 */	addi r1, r1, 0x20
/* 80288934 00285894  4E 80 00 20 */	blr

.global Think__15CScriptMazeNodeFfR13CStateManager
Think__15CScriptMazeNodeFfR13CStateManager:
/* 80288938 00285898  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028893C 0028589C  7C 08 02 A6 */	mflr r0
/* 80288940 002858A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80288944 002858A4  88 03 00 30 */	lbz r0, 0x30(r3)
/* 80288948 002858A8  54 00 CF FF */	rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 8028894C 002858AC  41 82 00 70 */	beq lbl_802889BC
/* 80288950 002858B0  88 03 01 3C */	lbz r0, 0x13c(r3)
/* 80288954 002858B4  54 00 D7 FF */	rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 80288958 002858B8  41 82 00 64 */	beq lbl_802889BC
/* 8028895C 002858BC  C0 43 00 F8 */	lfs f2, 0xf8(r3)
/* 80288960 002858C0  C0 02 BE 60 */	lfs f0, lbl_805ADB80@sda21(r2)
/* 80288964 002858C4  EC 22 08 28 */	fsubs f1, f2, f1
/* 80288968 002858C8  D0 23 00 F8 */	stfs f1, 0xf8(r3)
/* 8028896C 002858CC  C0 23 00 F8 */	lfs f1, 0xf8(r3)
/* 80288970 002858D0  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 80288974 002858D4  4C 40 13 82 */	cror 2, 0, 2
/* 80288978 002858D8  40 82 00 44 */	bne lbl_802889BC
/* 8028897C 002858DC  C0 02 BE 64 */	lfs f0, lbl_805ADB84@sda21(r2)
/* 80288980 002858E0  D0 03 00 F8 */	stfs f0, 0xf8(r3)
/* 80288984 002858E4  88 C3 01 3C */	lbz r6, 0x13c(r3)
/* 80288988 002858E8  54 C0 DF FF */	rlwinm. r0, r6, 0x1b, 0x1f, 0x1f
/* 8028898C 002858EC  41 82 00 1C */	beq lbl_802889A8
/* 80288990 002858F0  38 00 00 00 */	li r0, 0
/* 80288994 002858F4  38 A0 00 04 */	li r5, 4
/* 80288998 002858F8  50 06 2E B4 */	rlwimi r6, r0, 5, 0x1a, 0x1a
/* 8028899C 002858FC  98 C3 01 3C */	stb r6, 0x13c(r3)
/* 802889A0 00285900  48 00 08 81 */	bl SendScriptMsgs__15CScriptMazeNodeFR13CStateManager20EScriptObjectMessage
/* 802889A4 00285904  48 00 00 18 */	b lbl_802889BC
lbl_802889A8:
/* 802889A8 00285908  38 00 00 01 */	li r0, 1
/* 802889AC 0028590C  38 A0 00 01 */	li r5, 1
/* 802889B0 00285910  50 06 2E B4 */	rlwimi r6, r0, 5, 0x1a, 0x1a
/* 802889B4 00285914  98 C3 01 3C */	stb r6, 0x13c(r3)
/* 802889B8 00285918  48 00 08 69 */	bl SendScriptMsgs__15CScriptMazeNodeFR13CStateManager20EScriptObjectMessage
lbl_802889BC:
/* 802889BC 0028591C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802889C0 00285920  7C 08 03 A6 */	mtlr r0
/* 802889C4 00285924  38 21 00 10 */	addi r1, r1, 0x10
/* 802889C8 00285928  4E 80 00 20 */	blr

.global AcceptScriptMsg__15CScriptMazeNodeF20EScriptObjectMessage9TUniqueIdR13CStateManager
AcceptScriptMsg__15CScriptMazeNodeF20EScriptObjectMessage9TUniqueIdR13CStateManager:
/* 802889CC 0028592C  94 21 FF 10 */	stwu r1, -0xf0(r1)
/* 802889D0 00285930  7C 08 02 A6 */	mflr r0
/* 802889D4 00285934  90 01 00 F4 */	stw r0, 0xf4(r1)
/* 802889D8 00285938  BF 01 00 D0 */	stmw r24, 0xd0(r1)
/* 802889DC 0028593C  7C 7F 1B 78 */	mr r31, r3
/* 802889E0 00285940  7C 98 23 78 */	mr r24, r4
/* 802889E4 00285944  7C B9 2B 78 */	mr r25, r5
/* 802889E8 00285948  7C DE 33 78 */	mr r30, r6
/* 802889EC 0028594C  88 03 00 30 */	lbz r0, 0x30(r3)
/* 802889F0 00285950  54 00 CF FF */	rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 802889F4 00285954  41 82 07 FC */	beq lbl_802891F0
/* 802889F8 00285958  2C 18 00 13 */	cmpwi r24, 0x13
/* 802889FC 0028595C  41 82 01 04 */	beq lbl_80288B00
/* 80288A00 00285960  40 80 00 1C */	bge lbl_80288A1C
/* 80288A04 00285964  2C 18 00 0D */	cmpwi r24, 0xd
/* 80288A08 00285968  41 82 04 A4 */	beq lbl_80288EAC
/* 80288A0C 0028596C  40 80 07 E4 */	bge lbl_802891F0
/* 80288A10 00285970  2C 18 00 04 */	cmpwi r24, 4
/* 80288A14 00285974  41 82 07 D4 */	beq lbl_802891E8
/* 80288A18 00285978  48 00 07 D8 */	b lbl_802891F0
lbl_80288A1C:
/* 80288A1C 0028597C  2C 18 00 23 */	cmpwi r24, 0x23
/* 80288A20 00285980  41 82 00 14 */	beq lbl_80288A34
/* 80288A24 00285984  40 80 07 CC */	bge lbl_802891F0
/* 80288A28 00285988  2C 18 00 22 */	cmpwi r24, 0x22
/* 80288A2C 0028598C  40 80 07 80 */	bge lbl_802891AC
/* 80288A30 00285990  48 00 07 C0 */	b lbl_802891F0
lbl_80288A34:
/* 80288A34 00285994  7F C3 F3 78 */	mr r3, r30
/* 80288A38 00285998  4B DB B6 51 */	bl CurrentMaze__13CStateManagerFv
/* 80288A3C 0028599C  28 03 00 00 */	cmplwi r3, 0
/* 80288A40 002859A0  40 82 07 B0 */	bne lbl_802891F0
/* 80288A44 002859A4  3C 80 80 3D */	lis r4, lbl_803D5980@ha
/* 80288A48 002859A8  38 60 00 98 */	li r3, 0x98
/* 80288A4C 002859AC  38 84 59 80 */	addi r4, r4, lbl_803D5980@l
/* 80288A50 002859B0  38 A0 00 00 */	li r5, 0
/* 80288A54 002859B4  38 84 00 0F */	addi r4, r4, 0xf
/* 80288A58 002859B8  48 08 CE 15 */	bl __nw__FUlPCcPCc
/* 80288A5C 002859BC  7C 7A 1B 79 */	or. r26, r3, r3
/* 80288A60 002859C0  41 82 00 1C */	beq lbl_80288A7C
/* 80288A64 002859C4  38 80 00 04 */	li r4, 4
/* 80288A68 002859C8  38 A0 00 04 */	li r5, 4
/* 80288A6C 002859CC  38 C0 00 05 */	li r6, 5
/* 80288A70 002859D0  38 E0 00 03 */	li r7, 3
/* 80288A74 002859D4  48 00 1E 25 */	bl __ct__10CMazeStateFiiii
/* 80288A78 002859D8  7C 7A 1B 78 */	mr r26, r3
lbl_80288A7C:
/* 80288A7C 002859DC  93 41 00 5C */	stw r26, 0x5c(r1)
/* 80288A80 002859E0  80 7E 09 00 */	lwz r3, 0x900(r30)
/* 80288A84 002859E4  48 08 9A 9D */	bl Next__9CRandom16Fv
/* 80288A88 002859E8  3C A0 1B 4F */	lis r5, 0x1B4E81B5@ha
/* 80288A8C 002859EC  3C 80 80 57 */	lis r4, sMazeSeeds__15CScriptMazeNode@ha
/* 80288A90 002859F0  38 05 81 B5 */	addi r0, r5, 0x1B4E81B5@l
/* 80288A94 002859F4  7C 00 18 96 */	mulhw r0, r0, r3
/* 80288A98 002859F8  38 84 26 FC */	addi r4, r4, sMazeSeeds__15CScriptMazeNode@l
/* 80288A9C 002859FC  7C 00 2E 70 */	srawi r0, r0, 5
/* 80288AA0 00285A00  54 05 0F FE */	srwi r5, r0, 0x1f
/* 80288AA4 00285A04  7C 00 2A 14 */	add r0, r0, r5
/* 80288AA8 00285A08  1C 00 01 2C */	mulli r0, r0, 0x12c
/* 80288AAC 00285A0C  7C 00 18 50 */	subf r0, r0, r3
/* 80288AB0 00285A10  7F 43 D3 78 */	mr r3, r26
/* 80288AB4 00285A14  54 00 10 3A */	slwi r0, r0, 2
/* 80288AB8 00285A18  7C 84 00 2E */	lwzx r4, r4, r0
/* 80288ABC 00285A1C  48 00 14 75 */	bl Reset__10CMazeStateFi
/* 80288AC0 00285A20  7F 43 D3 78 */	mr r3, r26
/* 80288AC4 00285A24  48 00 0D 39 */	bl Initialize__10CMazeStateFv
/* 80288AC8 00285A28  7F 43 D3 78 */	mr r3, r26
/* 80288ACC 00285A2C  48 00 0E FD */	bl GenerateObstacles__10CMazeStateFv
/* 80288AD0 00285A30  7F 45 D3 78 */	mr r5, r26
/* 80288AD4 00285A34  38 00 00 00 */	li r0, 0
/* 80288AD8 00285A38  90 A1 00 58 */	stw r5, 0x58(r1)
/* 80288ADC 00285A3C  7F C3 F3 78 */	mr r3, r30
/* 80288AE0 00285A40  38 81 00 58 */	addi r4, r1, 0x58
/* 80288AE4 00285A44  90 01 00 5C */	stw r0, 0x5c(r1)
/* 80288AE8 00285A48  4B DB B5 49 */	bl "SetCurrentMaze__13CStateManagerFQ24rstl24single_ptr<10CMazeState>"
/* 80288AEC 00285A4C  80 61 00 58 */	lwz r3, 0x58(r1)
/* 80288AF0 00285A50  48 08 CE 41 */	bl Free__7CMemoryFPCv
/* 80288AF4 00285A54  80 61 00 5C */	lwz r3, 0x5c(r1)
/* 80288AF8 00285A58  48 08 CE 39 */	bl Free__7CMemoryFPCv
/* 80288AFC 00285A5C  48 00 06 F4 */	b lbl_802891F0
lbl_80288B00:
/* 80288B00 00285A60  7F C3 F3 78 */	mr r3, r30
/* 80288B04 00285A64  3B 60 00 00 */	li r27, 0
/* 80288B08 00285A68  4B DB B5 81 */	bl CurrentMaze__13CStateManagerFv
/* 80288B0C 00285A6C  28 03 00 00 */	cmplwi r3, 0
/* 80288B10 00285A70  41 82 06 E0 */	beq lbl_802891F0
/* 80288B14 00285A74  80 9F 00 E8 */	lwz r4, 0xe8(r31)
/* 80288B18 00285A78  80 BF 00 EC */	lwz r5, 0xec(r31)
/* 80288B1C 00285A7C  48 00 13 F9 */	bl GetCell__10CMazeStateCFUiUi
/* 80288B20 00285A80  80 9F 00 F0 */	lwz r4, 0xf0(r31)
/* 80288B24 00285A84  7C 7A 1B 78 */	mr r26, r3
/* 80288B28 00285A88  2C 04 00 00 */	cmpwi r4, 0
/* 80288B2C 00285A8C  40 82 00 30 */	bne lbl_80288B5C
/* 80288B30 00285A90  88 7A 00 00 */	lbz r3, 0(r26)
/* 80288B34 00285A94  54 60 CF FF */	rlwinm. r0, r3, 0x19, 0x1f, 0x1f
/* 80288B38 00285A98  41 82 00 24 */	beq lbl_80288B5C
/* 80288B3C 00285A9C  54 60 EF FF */	rlwinm. r0, r3, 0x1d, 0x1f, 0x1f
/* 80288B40 00285AA0  41 82 00 54 */	beq lbl_80288B94
/* 80288B44 00285AA4  88 1F 01 3C */	lbz r0, 0x13c(r31)
/* 80288B48 00285AA8  38 60 00 01 */	li r3, 1
/* 80288B4C 00285AAC  50 60 36 72 */	rlwimi r0, r3, 6, 0x19, 0x19
/* 80288B50 00285AB0  3B 60 00 01 */	li r27, 1
/* 80288B54 00285AB4  98 1F 01 3C */	stb r0, 0x13c(r31)
/* 80288B58 00285AB8  48 00 00 3C */	b lbl_80288B94
lbl_80288B5C:
/* 80288B5C 00285ABC  2C 04 00 01 */	cmpwi r4, 1
/* 80288B60 00285AC0  40 82 00 30 */	bne lbl_80288B90
/* 80288B64 00285AC4  88 7A 00 00 */	lbz r3, 0(r26)
/* 80288B68 00285AC8  54 60 D7 FF */	rlwinm. r0, r3, 0x1a, 0x1f, 0x1f
/* 80288B6C 00285ACC  41 82 00 24 */	beq lbl_80288B90
/* 80288B70 00285AD0  54 60 F7 FF */	rlwinm. r0, r3, 0x1e, 0x1f, 0x1f
/* 80288B74 00285AD4  41 82 00 20 */	beq lbl_80288B94
/* 80288B78 00285AD8  88 1F 01 3C */	lbz r0, 0x13c(r31)
/* 80288B7C 00285ADC  38 60 00 01 */	li r3, 1
/* 80288B80 00285AE0  50 60 36 72 */	rlwimi r0, r3, 6, 0x19, 0x19
/* 80288B84 00285AE4  3B 60 00 01 */	li r27, 1
/* 80288B88 00285AE8  98 1F 01 3C */	stb r0, 0x13c(r31)
/* 80288B8C 00285AEC  48 00 00 08 */	b lbl_80288B94
lbl_80288B90:
/* 80288B90 00285AF0  3B 60 00 01 */	li r27, 1
lbl_80288B94:
/* 80288B94 00285AF4  57 60 06 3F */	clrlwi. r0, r27, 0x18
/* 80288B98 00285AF8  41 82 00 10 */	beq lbl_80288BA8
/* 80288B9C 00285AFC  7F E3 FB 78 */	mr r3, r31
/* 80288BA0 00285B00  7F C4 F3 78 */	mr r4, r30
/* 80288BA4 00285B04  48 00 08 41 */	bl GenerateObjects__15CScriptMazeNodeFR13CStateManager
lbl_80288BA8:
/* 80288BA8 00285B08  80 1F 00 F0 */	lwz r0, 0xf0(r31)
/* 80288BAC 00285B0C  2C 00 00 01 */	cmpwi r0, 1
/* 80288BB0 00285B10  40 82 00 20 */	bne lbl_80288BD0
/* 80288BB4 00285B14  88 1A 00 01 */	lbz r0, 1(r26)
/* 80288BB8 00285B18  54 00 CF FF */	rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80288BBC 00285B1C  41 82 00 14 */	beq lbl_80288BD0
/* 80288BC0 00285B20  88 1F 01 3C */	lbz r0, 0x13c(r31)
/* 80288BC4 00285B24  38 60 00 01 */	li r3, 1
/* 80288BC8 00285B28  50 60 3E 30 */	rlwimi r0, r3, 7, 0x18, 0x18
/* 80288BCC 00285B2C  98 1F 01 3C */	stb r0, 0x13c(r31)
lbl_80288BD0:
/* 80288BD0 00285B30  88 1F 01 3C */	lbz r0, 0x13c(r31)
/* 80288BD4 00285B34  54 00 D7 FF */	rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 80288BD8 00285B38  41 82 01 14 */	beq lbl_80288CEC
/* 80288BDC 00285B3C  38 61 00 94 */	addi r3, r1, 0x94
/* 80288BE0 00285B40  38 9F 00 34 */	addi r4, r31, 0x34
/* 80288BE4 00285B44  48 08 9F 91 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 80288BE8 00285B48  80 DF 00 2C */	lwz r6, 0x2c(r31)
/* 80288BEC 00285B4C  48 00 00 E8 */	b lbl_80288CD4
lbl_80288BF0:
/* 80288BF0 00285B50  80 06 00 00 */	lwz r0, 0(r6)
/* 80288BF4 00285B54  2C 00 00 19 */	cmpwi r0, 0x19
/* 80288BF8 00285B58  40 82 00 D8 */	bne lbl_80288CD0
/* 80288BFC 00285B5C  80 06 00 04 */	lwz r0, 4(r6)
/* 80288C00 00285B60  2C 00 00 01 */	cmpwi r0, 1
/* 80288C04 00285B64  40 82 00 CC */	bne lbl_80288CD0
/* 80288C08 00285B68  88 BE 0F 94 */	lbz r5, 0xf94(r30)
/* 80288C0C 00285B6C  38 60 00 01 */	li r3, 1
/* 80288C10 00285B70  88 1E 0F 94 */	lbz r0, 0xf94(r30)
/* 80288C14 00285B74  50 60 2E B4 */	rlwimi r0, r3, 5, 0x1a, 0x1a
/* 80288C18 00285B78  7F C4 F3 78 */	mr r4, r30
/* 80288C1C 00285B7C  54 BA DF FE */	rlwinm r26, r5, 0x1b, 0x1f, 0x1f
/* 80288C20 00285B80  98 1E 0F 94 */	stb r0, 0xf94(r30)
/* 80288C24 00285B84  38 61 00 80 */	addi r3, r1, 0x80
/* 80288C28 00285B88  38 A6 00 08 */	addi r5, r6, 8
/* 80288C2C 00285B8C  4B DB F6 BD */	bl GenerateObject__13CStateManagerFRC9TEditorId
/* 80288C30 00285B90  A0 A1 00 84 */	lhz r5, 0x84(r1)
/* 80288C34 00285B94  7F C3 F3 78 */	mr r3, r30
/* 80288C38 00285B98  88 1E 0F 94 */	lbz r0, 0xf94(r30)
/* 80288C3C 00285B9C  53 40 2E B4 */	rlwimi r0, r26, 5, 0x1a, 0x1a
/* 80288C40 00285BA0  B0 A1 00 3C */	sth r5, 0x3c(r1)
/* 80288C44 00285BA4  38 81 00 34 */	addi r4, r1, 0x34
/* 80288C48 00285BA8  98 1E 0F 94 */	stb r0, 0xf94(r30)
/* 80288C4C 00285BAC  B0 BF 00 F4 */	sth r5, 0xf4(r31)
/* 80288C50 00285BB0  B0 A1 00 34 */	sth r5, 0x34(r1)
/* 80288C54 00285BB4  4B DC 39 21 */	bl ObjectById__13CStateManagerF9TUniqueId
/* 80288C58 00285BB8  7C 64 1B 78 */	mr r4, r3
/* 80288C5C 00285BBC  38 61 00 78 */	addi r3, r1, 0x78
/* 80288C60 00285BC0  4B E2 70 31 */	bl "__ct__19TCastToPtr<6CActor>FP7CEntity"
/* 80288C64 00285BC4  83 43 00 04 */	lwz r26, 4(r3)
/* 80288C68 00285BC8  28 1A 00 00 */	cmplwi r26, 0
/* 80288C6C 00285BCC  41 82 00 80 */	beq lbl_80288CEC
/* 80288C70 00285BD0  C0 3F 00 50 */	lfs f1, 0x50(r31)
/* 80288C74 00285BD4  7F 43 D3 78 */	mr r3, r26
/* 80288C78 00285BD8  C0 1F 01 24 */	lfs f0, 0x124(r31)
/* 80288C7C 00285BDC  38 81 00 88 */	addi r4, r1, 0x88
/* 80288C80 00285BE0  C0 7F 00 60 */	lfs f3, 0x60(r31)
/* 80288C84 00285BE4  C0 5F 01 28 */	lfs f2, 0x128(r31)
/* 80288C88 00285BE8  EC 81 00 2A */	fadds f4, f1, f0
/* 80288C8C 00285BEC  C0 3F 00 40 */	lfs f1, 0x40(r31)
/* 80288C90 00285BF0  C0 1F 01 20 */	lfs f0, 0x120(r31)
/* 80288C94 00285BF4  EC 43 10 2A */	fadds f2, f3, f2
/* 80288C98 00285BF8  EC 01 00 2A */	fadds f0, f1, f0
/* 80288C9C 00285BFC  D0 81 00 8C */	stfs f4, 0x8c(r1)
/* 80288CA0 00285C00  D0 41 00 90 */	stfs f2, 0x90(r1)
/* 80288CA4 00285C04  D0 01 00 88 */	stfs f0, 0x88(r1)
/* 80288CA8 00285C08  4B DC A1 E5 */	bl SetTranslation__6CActorFRC9CVector3f
/* 80288CAC 00285C0C  A0 1F 00 08 */	lhz r0, 8(r31)
/* 80288CB0 00285C10  7F C3 F3 78 */	mr r3, r30
/* 80288CB4 00285C14  7F 44 D3 78 */	mr r4, r26
/* 80288CB8 00285C18  38 A1 00 30 */	addi r5, r1, 0x30
/* 80288CBC 00285C1C  B0 01 00 2C */	sth r0, 0x2c(r1)
/* 80288CC0 00285C20  38 C0 00 01 */	li r6, 1
/* 80288CC4 00285C24  B0 01 00 30 */	sth r0, 0x30(r1)
/* 80288CC8 00285C28  4B DB B2 09 */	bl SendScriptMsg__13CStateManagerFP7CEntity9TUniqueId20EScriptObjectMessage
/* 80288CCC 00285C2C  48 00 00 20 */	b lbl_80288CEC
lbl_80288CD0:
/* 80288CD0 00285C30  38 C6 00 0C */	addi r6, r6, 0xc
lbl_80288CD4:
/* 80288CD4 00285C34  80 1F 00 24 */	lwz r0, 0x24(r31)
/* 80288CD8 00285C38  80 7F 00 2C */	lwz r3, 0x2c(r31)
/* 80288CDC 00285C3C  1C 00 00 0C */	mulli r0, r0, 0xc
/* 80288CE0 00285C40  7C 03 02 14 */	add r0, r3, r0
/* 80288CE4 00285C44  7C 06 00 40 */	cmplw r6, r0
/* 80288CE8 00285C48  40 82 FF 08 */	bne lbl_80288BF0
lbl_80288CEC:
/* 80288CEC 00285C4C  88 1F 01 3C */	lbz r0, 0x13c(r31)
/* 80288CF0 00285C50  54 00 CF FF */	rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80288CF4 00285C54  41 82 04 FC */	beq lbl_802891F0
/* 80288CF8 00285C58  80 BF 00 2C */	lwz r5, 0x2c(r31)
/* 80288CFC 00285C5C  38 80 00 00 */	li r4, 0
/* 80288D00 00285C60  48 00 00 2C */	b lbl_80288D2C
lbl_80288D04:
/* 80288D04 00285C64  80 05 00 00 */	lwz r0, 0(r5)
/* 80288D08 00285C68  2C 00 00 02 */	cmpwi r0, 2
/* 80288D0C 00285C6C  41 82 00 0C */	beq lbl_80288D18
/* 80288D10 00285C70  2C 00 00 11 */	cmpwi r0, 0x11
/* 80288D14 00285C74  40 82 00 14 */	bne lbl_80288D28
lbl_80288D18:
/* 80288D18 00285C78  80 05 00 04 */	lwz r0, 4(r5)
/* 80288D1C 00285C7C  2C 00 00 01 */	cmpwi r0, 1
/* 80288D20 00285C80  40 82 00 08 */	bne lbl_80288D28
/* 80288D24 00285C84  38 84 00 01 */	addi r4, r4, 1
lbl_80288D28:
/* 80288D28 00285C88  38 A5 00 0C */	addi r5, r5, 0xc
lbl_80288D2C:
/* 80288D2C 00285C8C  80 1F 00 24 */	lwz r0, 0x24(r31)
/* 80288D30 00285C90  80 7F 00 2C */	lwz r3, 0x2c(r31)
/* 80288D34 00285C94  1C 00 00 0C */	mulli r0, r0, 0xc
/* 80288D38 00285C98  7C 03 02 14 */	add r0, r3, r0
/* 80288D3C 00285C9C  7C 05 00 40 */	cmplw r5, r0
/* 80288D40 00285CA0  40 82 FF C4 */	bne lbl_80288D04
/* 80288D44 00285CA4  38 7F 01 2C */	addi r3, r31, 0x12c
/* 80288D48 00285CA8  4B D8 36 C1 */	bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi"
/* 80288D4C 00285CAC  83 5F 00 2C */	lwz r26, 0x2c(r31)
/* 80288D50 00285CB0  48 00 01 40 */	b lbl_80288E90
lbl_80288D54:
/* 80288D54 00285CB4  80 1A 00 00 */	lwz r0, 0(r26)
/* 80288D58 00285CB8  2C 00 00 02 */	cmpwi r0, 2
/* 80288D5C 00285CBC  41 82 00 0C */	beq lbl_80288D68
/* 80288D60 00285CC0  2C 00 00 11 */	cmpwi r0, 0x11
/* 80288D64 00285CC4  40 82 01 28 */	bne lbl_80288E8C
lbl_80288D68:
/* 80288D68 00285CC8  80 1A 00 04 */	lwz r0, 4(r26)
/* 80288D6C 00285CCC  2C 00 00 01 */	cmpwi r0, 1
/* 80288D70 00285CD0  40 82 01 1C */	bne lbl_80288E8C
/* 80288D74 00285CD4  88 BE 0F 94 */	lbz r5, 0xf94(r30)
/* 80288D78 00285CD8  38 60 00 01 */	li r3, 1
/* 80288D7C 00285CDC  88 1E 0F 94 */	lbz r0, 0xf94(r30)
/* 80288D80 00285CE0  50 60 2E B4 */	rlwimi r0, r3, 5, 0x1a, 0x1a
/* 80288D84 00285CE4  7F C4 F3 78 */	mr r4, r30
/* 80288D88 00285CE8  54 BB DF FE */	rlwinm r27, r5, 0x1b, 0x1f, 0x1f
/* 80288D8C 00285CEC  98 1E 0F 94 */	stb r0, 0xf94(r30)
/* 80288D90 00285CF0  38 61 00 70 */	addi r3, r1, 0x70
/* 80288D94 00285CF4  38 BA 00 08 */	addi r5, r26, 8
/* 80288D98 00285CF8  4B DB F5 51 */	bl GenerateObject__13CStateManagerFRC9TEditorId
/* 80288D9C 00285CFC  A0 61 00 74 */	lhz r3, 0x74(r1)
/* 80288DA0 00285D00  88 1E 0F 94 */	lbz r0, 0xf94(r30)
/* 80288DA4 00285D04  53 60 2E B4 */	rlwimi r0, r27, 5, 0x1a, 0x1a
/* 80288DA8 00285D08  B0 61 00 38 */	sth r3, 0x38(r1)
/* 80288DAC 00285D0C  98 1E 0F 94 */	stb r0, 0xf94(r30)
/* 80288DB0 00285D10  80 1F 01 30 */	lwz r0, 0x130(r31)
/* 80288DB4 00285D14  80 BF 01 34 */	lwz r5, 0x134(r31)
/* 80288DB8 00285D18  7C 00 28 00 */	cmpw r0, r5
/* 80288DBC 00285D1C  41 80 00 1C */	blt lbl_80288DD8
/* 80288DC0 00285D20  2C 05 00 00 */	cmpwi r5, 0
/* 80288DC4 00285D24  38 7F 01 2C */	addi r3, r31, 0x12c
/* 80288DC8 00285D28  38 80 00 04 */	li r4, 4
/* 80288DCC 00285D2C  41 82 00 08 */	beq lbl_80288DD4
/* 80288DD0 00285D30  54 A4 08 3C */	slwi r4, r5, 1
lbl_80288DD4:
/* 80288DD4 00285D34  4B D8 36 35 */	bl "reserve__Q24rstl45vector<9TUniqueId,Q24rstl17rmemory_allocator>Fi"
lbl_80288DD8:
/* 80288DD8 00285D38  80 1F 01 30 */	lwz r0, 0x130(r31)
/* 80288DDC 00285D3C  80 7F 01 38 */	lwz r3, 0x138(r31)
/* 80288DE0 00285D40  54 00 08 3C */	slwi r0, r0, 1
/* 80288DE4 00285D44  7C 63 02 15 */	add. r3, r3, r0
/* 80288DE8 00285D48  41 82 00 0C */	beq lbl_80288DF4
/* 80288DEC 00285D4C  A0 01 00 38 */	lhz r0, 0x38(r1)
/* 80288DF0 00285D50  B0 03 00 00 */	sth r0, 0(r3)
lbl_80288DF4:
/* 80288DF4 00285D54  80 BF 01 30 */	lwz r5, 0x130(r31)
/* 80288DF8 00285D58  7F C3 F3 78 */	mr r3, r30
/* 80288DFC 00285D5C  A0 01 00 38 */	lhz r0, 0x38(r1)
/* 80288E00 00285D60  38 81 00 28 */	addi r4, r1, 0x28
/* 80288E04 00285D64  38 A5 00 01 */	addi r5, r5, 1
/* 80288E08 00285D68  90 BF 01 30 */	stw r5, 0x130(r31)
/* 80288E0C 00285D6C  B0 01 00 28 */	sth r0, 0x28(r1)
/* 80288E10 00285D70  4B DC 37 65 */	bl ObjectById__13CStateManagerF9TUniqueId
/* 80288E14 00285D74  7C 64 1B 78 */	mr r4, r3
/* 80288E18 00285D78  38 61 00 68 */	addi r3, r1, 0x68
/* 80288E1C 00285D7C  4B E2 6E 75 */	bl "__ct__19TCastToPtr<6CActor>FP7CEntity"
/* 80288E20 00285D80  83 63 00 04 */	lwz r27, 4(r3)
/* 80288E24 00285D84  28 1B 00 00 */	cmplwi r27, 0
/* 80288E28 00285D88  41 82 00 64 */	beq lbl_80288E8C
/* 80288E2C 00285D8C  38 7B 00 34 */	addi r3, r27, 0x34
/* 80288E30 00285D90  38 9F 00 34 */	addi r4, r31, 0x34
/* 80288E34 00285D94  48 08 9D 0D */	bl __as__12CTransform4fFRC12CTransform4f
/* 80288E38 00285D98  88 1B 00 E4 */	lbz r0, 0xe4(r27)
/* 80288E3C 00285D9C  38 60 00 01 */	li r3, 1
/* 80288E40 00285DA0  50 60 26 F6 */	rlwimi r0, r3, 4, 0x1b, 0x1b
/* 80288E44 00285DA4  98 1B 00 E4 */	stb r0, 0xe4(r27)
/* 80288E48 00285DA8  88 1B 00 E4 */	lbz r0, 0xe4(r27)
/* 80288E4C 00285DAC  50 60 1F 38 */	rlwimi r0, r3, 3, 0x1c, 0x1c
/* 80288E50 00285DB0  98 1B 00 E4 */	stb r0, 0xe4(r27)
/* 80288E54 00285DB4  88 1B 00 E4 */	lbz r0, 0xe4(r27)
/* 80288E58 00285DB8  50 60 17 7A */	rlwimi r0, r3, 2, 0x1d, 0x1d
/* 80288E5C 00285DBC  98 1B 00 E4 */	stb r0, 0xe4(r27)
/* 80288E60 00285DC0  80 1A 00 00 */	lwz r0, 0(r26)
/* 80288E64 00285DC4  2C 00 00 02 */	cmpwi r0, 2
/* 80288E68 00285DC8  40 82 00 24 */	bne lbl_80288E8C
/* 80288E6C 00285DCC  A0 1F 00 08 */	lhz r0, 8(r31)
/* 80288E70 00285DD0  7F C3 F3 78 */	mr r3, r30
/* 80288E74 00285DD4  7F 64 DB 78 */	mr r4, r27
/* 80288E78 00285DD8  38 A1 00 24 */	addi r5, r1, 0x24
/* 80288E7C 00285DDC  B0 01 00 20 */	sth r0, 0x20(r1)
/* 80288E80 00285DE0  38 C0 00 01 */	li r6, 1
/* 80288E84 00285DE4  B0 01 00 24 */	sth r0, 0x24(r1)
/* 80288E88 00285DE8  4B DB B0 49 */	bl SendScriptMsg__13CStateManagerFP7CEntity9TUniqueId20EScriptObjectMessage
lbl_80288E8C:
/* 80288E8C 00285DEC  3B 5A 00 0C */	addi r26, r26, 0xc
lbl_80288E90:
/* 80288E90 00285DF0  80 1F 00 24 */	lwz r0, 0x24(r31)
/* 80288E94 00285DF4  80 7F 00 2C */	lwz r3, 0x2c(r31)
/* 80288E98 00285DF8  1C 00 00 0C */	mulli r0, r0, 0xc
/* 80288E9C 00285DFC  7C 03 02 14 */	add r0, r3, r0
/* 80288EA0 00285E00  7C 1A 00 40 */	cmplw r26, r0
/* 80288EA4 00285E04  40 82 FE B0 */	bne lbl_80288D54
/* 80288EA8 00285E08  48 00 03 48 */	b lbl_802891F0
lbl_80288EAC:
/* 80288EAC 00285E0C  7F C3 F3 78 */	mr r3, r30
/* 80288EB0 00285E10  4B DB B1 D9 */	bl CurrentMaze__13CStateManagerFv
/* 80288EB4 00285E14  88 1F 01 3C */	lbz r0, 0x13c(r31)
/* 80288EB8 00285E18  7C 7C 1B 78 */	mr r28, r3
/* 80288EBC 00285E1C  54 00 CF FF */	rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80288EC0 00285E20  41 82 03 30 */	beq lbl_802891F0
/* 80288EC4 00285E24  28 1C 00 00 */	cmplwi r28, 0
/* 80288EC8 00285E28  41 82 03 28 */	beq lbl_802891F0
/* 80288ECC 00285E2C  80 1F 01 30 */	lwz r0, 0x130(r31)
/* 80288ED0 00285E30  83 5F 01 38 */	lwz r26, 0x138(r31)
/* 80288ED4 00285E34  54 00 08 3C */	slwi r0, r0, 1
/* 80288ED8 00285E38  7C 9A 02 14 */	add r4, r26, r0
/* 80288EDC 00285E3C  93 41 00 50 */	stw r26, 0x50(r1)
/* 80288EE0 00285E40  90 81 00 44 */	stw r4, 0x44(r1)
/* 80288EE4 00285E44  93 41 00 54 */	stw r26, 0x54(r1)
/* 80288EE8 00285E48  90 81 00 48 */	stw r4, 0x48(r1)
/* 80288EEC 00285E4C  90 81 00 4C */	stw r4, 0x4c(r1)
/* 80288EF0 00285E50  48 00 00 10 */	b lbl_80288F00
lbl_80288EF4:
/* 80288EF4 00285E54  80 61 00 54 */	lwz r3, 0x54(r1)
/* 80288EF8 00285E58  38 03 00 02 */	addi r0, r3, 2
/* 80288EFC 00285E5C  90 01 00 54 */	stw r0, 0x54(r1)
lbl_80288F00:
/* 80288F00 00285E60  80 61 00 54 */	lwz r3, 0x54(r1)
/* 80288F04 00285E64  7C 03 20 40 */	cmplw r3, r4
/* 80288F08 00285E68  41 82 00 14 */	beq lbl_80288F1C
/* 80288F0C 00285E6C  A0 63 00 00 */	lhz r3, 0(r3)
/* 80288F10 00285E70  A0 19 00 00 */	lhz r0, 0(r25)
/* 80288F14 00285E74  7C 03 00 40 */	cmplw r3, r0
/* 80288F18 00285E78  40 82 FF DC */	bne lbl_80288EF4
lbl_80288F1C:
/* 80288F1C 00285E7C  80 61 00 54 */	lwz r3, 0x54(r1)
/* 80288F20 00285E80  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80288F24 00285E84  7C 03 00 40 */	cmplw r3, r0
/* 80288F28 00285E88  41 82 02 C8 */	beq lbl_802891F0
/* 80288F2C 00285E8C  48 00 00 68 */	b lbl_80288F94
lbl_80288F30:
/* 80288F30 00285E90  A0 1A 00 00 */	lhz r0, 0(r26)
/* 80288F34 00285E94  7F C3 F3 78 */	mr r3, r30
/* 80288F38 00285E98  38 81 00 1C */	addi r4, r1, 0x1c
/* 80288F3C 00285E9C  B0 01 00 1C */	sth r0, 0x1c(r1)
/* 80288F40 00285EA0  4B DC 36 35 */	bl ObjectById__13CStateManagerF9TUniqueId
/* 80288F44 00285EA4  7C 64 1B 79 */	or. r4, r3, r3
/* 80288F48 00285EA8  41 82 00 48 */	beq lbl_80288F90
/* 80288F4C 00285EAC  88 04 00 30 */	lbz r0, 0x30(r4)
/* 80288F50 00285EB0  54 00 CF FF */	rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 80288F54 00285EB4  40 82 00 24 */	bne lbl_80288F78
/* 80288F58 00285EB8  A0 1F 00 08 */	lhz r0, 8(r31)
/* 80288F5C 00285EBC  7F C3 F3 78 */	mr r3, r30
/* 80288F60 00285EC0  38 A1 00 18 */	addi r5, r1, 0x18
/* 80288F64 00285EC4  38 C0 00 01 */	li r6, 1
/* 80288F68 00285EC8  B0 01 00 14 */	sth r0, 0x14(r1)
/* 80288F6C 00285ECC  B0 01 00 18 */	sth r0, 0x18(r1)
/* 80288F70 00285ED0  4B DB AF 61 */	bl SendScriptMsg__13CStateManagerFP7CEntity9TUniqueId20EScriptObjectMessage
/* 80288F74 00285ED4  48 00 00 1C */	b lbl_80288F90
lbl_80288F78:
/* 80288F78 00285ED8  A0 04 00 08 */	lhz r0, 8(r4)
/* 80288F7C 00285EDC  7F C3 F3 78 */	mr r3, r30
/* 80288F80 00285EE0  38 81 00 10 */	addi r4, r1, 0x10
/* 80288F84 00285EE4  B0 01 00 0C */	sth r0, 0xc(r1)
/* 80288F88 00285EE8  B0 01 00 10 */	sth r0, 0x10(r1)
/* 80288F8C 00285EEC  4B DC 32 E1 */	bl FreeScriptObject__13CStateManagerF9TUniqueId
lbl_80288F90:
/* 80288F90 00285EF0  3B 5A 00 02 */	addi r26, r26, 2
lbl_80288F94:
/* 80288F94 00285EF4  80 1F 01 30 */	lwz r0, 0x130(r31)
/* 80288F98 00285EF8  80 7F 01 38 */	lwz r3, 0x138(r31)
/* 80288F9C 00285EFC  54 00 08 3C */	slwi r0, r0, 1
/* 80288FA0 00285F00  7C 03 02 14 */	add r0, r3, r0
/* 80288FA4 00285F04  7C 1A 00 40 */	cmplw r26, r0
/* 80288FA8 00285F08  40 82 FF 88 */	bne lbl_80288F30
/* 80288FAC 00285F0C  83 5E 08 10 */	lwz r26, 0x810(r30)
/* 80288FB0 00285F10  AB BA 20 08 */	lha r29, 0x2008(r26)
/* 80288FB4 00285F14  48 00 01 EC */	b lbl_802891A0
lbl_80288FB8:
/* 80288FB8 00285F18  7F 43 D3 78 */	mr r3, r26
/* 80288FBC 00285F1C  7F A4 EB 78 */	mr r4, r29
/* 80288FC0 00285F20  4B D8 6D 55 */	bl __vc__11CObjectListFi
/* 80288FC4 00285F24  7C 64 1B 78 */	mr r4, r3
/* 80288FC8 00285F28  38 61 00 60 */	addi r3, r1, 0x60
/* 80288FCC 00285F2C  4B E2 04 D5 */	bl "__ct__29TCastToPtr<15CScriptMazeNode>FP7CEntity"
/* 80288FD0 00285F30  83 63 00 04 */	lwz r27, 4(r3)
/* 80288FD4 00285F34  28 1B 00 00 */	cmplwi r27, 0
/* 80288FD8 00285F38  41 82 01 AC */	beq lbl_80289184
/* 80288FDC 00285F3C  80 7F 00 E8 */	lwz r3, 0xe8(r31)
/* 80288FE0 00285F40  80 1B 00 E8 */	lwz r0, 0xe8(r27)
/* 80288FE4 00285F44  38 83 FF FF */	addi r4, r3, -1
/* 80288FE8 00285F48  7C 00 20 00 */	cmpw r0, r4
/* 80288FEC 00285F4C  40 82 00 5C */	bne lbl_80289048
/* 80288FF0 00285F50  80 1B 00 EC */	lwz r0, 0xec(r27)
/* 80288FF4 00285F54  80 BF 00 EC */	lwz r5, 0xec(r31)
/* 80288FF8 00285F58  7C 00 28 00 */	cmpw r0, r5
/* 80288FFC 00285F5C  40 82 00 4C */	bne lbl_80289048
/* 80289000 00285F60  80 1B 00 F0 */	lwz r0, 0xf0(r27)
/* 80289004 00285F64  2C 00 00 01 */	cmpwi r0, 1
/* 80289008 00285F68  40 82 00 40 */	bne lbl_80289048
/* 8028900C 00285F6C  7F 83 E3 78 */	mr r3, r28
/* 80289010 00285F70  48 00 0E E9 */	bl GetCell__10CMazeStateFUiUi
/* 80289014 00285F74  88 A3 00 00 */	lbz r5, 0(r3)
/* 80289018 00285F78  54 A0 D7 FF */	rlwinm. r0, r5, 0x1a, 0x1f, 0x1f
/* 8028901C 00285F7C  40 82 00 2C */	bne lbl_80289048
/* 80289020 00285F80  38 00 00 01 */	li r0, 1
/* 80289024 00285F84  7F C4 F3 78 */	mr r4, r30
/* 80289028 00285F88  50 05 36 72 */	rlwimi r5, r0, 6, 0x19, 0x19
/* 8028902C 00285F8C  98 A3 00 00 */	stb r5, 0(r3)
/* 80289030 00285F90  7F 63 DB 78 */	mr r3, r27
/* 80289034 00285F94  48 00 03 0D */	bl Reset__15CScriptMazeNodeFR13CStateManager
/* 80289038 00285F98  88 1B 01 3C */	lbz r0, 0x13c(r27)
/* 8028903C 00285F9C  38 60 00 00 */	li r3, 0
/* 80289040 00285FA0  50 60 36 72 */	rlwimi r0, r3, 6, 0x19, 0x19
/* 80289044 00285FA4  98 1B 01 3C */	stb r0, 0x13c(r27)
lbl_80289048:
/* 80289048 00285FA8  80 1B 00 E8 */	lwz r0, 0xe8(r27)
/* 8028904C 00285FAC  80 9F 00 E8 */	lwz r4, 0xe8(r31)
/* 80289050 00285FB0  7C 00 20 00 */	cmpw r0, r4
/* 80289054 00285FB4  40 82 00 5C */	bne lbl_802890B0
/* 80289058 00285FB8  80 1B 00 EC */	lwz r0, 0xec(r27)
/* 8028905C 00285FBC  80 BF 00 EC */	lwz r5, 0xec(r31)
/* 80289060 00285FC0  7C 00 28 00 */	cmpw r0, r5
/* 80289064 00285FC4  40 82 00 4C */	bne lbl_802890B0
/* 80289068 00285FC8  80 1B 00 F0 */	lwz r0, 0xf0(r27)
/* 8028906C 00285FCC  2C 00 00 01 */	cmpwi r0, 1
/* 80289070 00285FD0  40 82 00 40 */	bne lbl_802890B0
/* 80289074 00285FD4  7F 83 E3 78 */	mr r3, r28
/* 80289078 00285FD8  48 00 0E 81 */	bl GetCell__10CMazeStateFUiUi
/* 8028907C 00285FDC  88 A3 00 00 */	lbz r5, 0(r3)
/* 80289080 00285FE0  54 A0 D7 FF */	rlwinm. r0, r5, 0x1a, 0x1f, 0x1f
/* 80289084 00285FE4  40 82 00 2C */	bne lbl_802890B0
/* 80289088 00285FE8  38 00 00 01 */	li r0, 1
/* 8028908C 00285FEC  7F C4 F3 78 */	mr r4, r30
/* 80289090 00285FF0  50 05 36 72 */	rlwimi r5, r0, 6, 0x19, 0x19
/* 80289094 00285FF4  98 A3 00 00 */	stb r5, 0(r3)
/* 80289098 00285FF8  7F 63 DB 78 */	mr r3, r27
/* 8028909C 00285FFC  48 00 02 A5 */	bl Reset__15CScriptMazeNodeFR13CStateManager
/* 802890A0 00286000  88 1B 01 3C */	lbz r0, 0x13c(r27)
/* 802890A4 00286004  38 60 00 00 */	li r3, 0
/* 802890A8 00286008  50 60 36 72 */	rlwimi r0, r3, 6, 0x19, 0x19
/* 802890AC 0028600C  98 1B 01 3C */	stb r0, 0x13c(r27)
lbl_802890B0:
/* 802890B0 00286010  80 1B 00 E8 */	lwz r0, 0xe8(r27)
/* 802890B4 00286014  80 9F 00 E8 */	lwz r4, 0xe8(r31)
/* 802890B8 00286018  7C 00 20 00 */	cmpw r0, r4
/* 802890BC 0028601C  40 82 00 5C */	bne lbl_80289118
/* 802890C0 00286020  80 1B 00 EC */	lwz r0, 0xec(r27)
/* 802890C4 00286024  80 BF 00 EC */	lwz r5, 0xec(r31)
/* 802890C8 00286028  7C 00 28 00 */	cmpw r0, r5
/* 802890CC 0028602C  40 82 00 4C */	bne lbl_80289118
/* 802890D0 00286030  80 1B 00 F0 */	lwz r0, 0xf0(r27)
/* 802890D4 00286034  2C 00 00 00 */	cmpwi r0, 0
/* 802890D8 00286038  40 82 00 40 */	bne lbl_80289118
/* 802890DC 0028603C  7F 83 E3 78 */	mr r3, r28
/* 802890E0 00286040  48 00 0E 19 */	bl GetCell__10CMazeStateFUiUi
/* 802890E4 00286044  88 A3 00 00 */	lbz r5, 0(r3)
/* 802890E8 00286048  54 A0 CF FF */	rlwinm. r0, r5, 0x19, 0x1f, 0x1f
/* 802890EC 0028604C  40 82 00 2C */	bne lbl_80289118
/* 802890F0 00286050  38 00 00 01 */	li r0, 1
/* 802890F4 00286054  7F C4 F3 78 */	mr r4, r30
/* 802890F8 00286058  50 05 3E 30 */	rlwimi r5, r0, 7, 0x18, 0x18
/* 802890FC 0028605C  98 A3 00 00 */	stb r5, 0(r3)
/* 80289100 00286060  7F 63 DB 78 */	mr r3, r27
/* 80289104 00286064  48 00 02 3D */	bl Reset__15CScriptMazeNodeFR13CStateManager
/* 80289108 00286068  88 1B 01 3C */	lbz r0, 0x13c(r27)
/* 8028910C 0028606C  38 60 00 00 */	li r3, 0
/* 80289110 00286070  50 60 36 72 */	rlwimi r0, r3, 6, 0x19, 0x19
/* 80289114 00286074  98 1B 01 3C */	stb r0, 0x13c(r27)
lbl_80289118:
/* 80289118 00286078  80 1B 00 E8 */	lwz r0, 0xe8(r27)
/* 8028911C 0028607C  80 9F 00 E8 */	lwz r4, 0xe8(r31)
/* 80289120 00286080  7C 00 20 00 */	cmpw r0, r4
/* 80289124 00286084  40 82 00 60 */	bne lbl_80289184
/* 80289128 00286088  80 7F 00 EC */	lwz r3, 0xec(r31)
/* 8028912C 0028608C  80 1B 00 EC */	lwz r0, 0xec(r27)
/* 80289130 00286090  38 A3 00 01 */	addi r5, r3, 1
/* 80289134 00286094  7C 00 28 00 */	cmpw r0, r5
/* 80289138 00286098  40 82 00 4C */	bne lbl_80289184
/* 8028913C 0028609C  80 1B 00 F0 */	lwz r0, 0xf0(r27)
/* 80289140 002860A0  2C 00 00 00 */	cmpwi r0, 0
/* 80289144 002860A4  40 82 00 40 */	bne lbl_80289184
/* 80289148 002860A8  7F 83 E3 78 */	mr r3, r28
/* 8028914C 002860AC  48 00 0D AD */	bl GetCell__10CMazeStateFUiUi
/* 80289150 002860B0  88 A3 00 00 */	lbz r5, 0(r3)
/* 80289154 002860B4  54 A0 CF FF */	rlwinm. r0, r5, 0x19, 0x1f, 0x1f
/* 80289158 002860B8  40 82 00 2C */	bne lbl_80289184
/* 8028915C 002860BC  38 00 00 01 */	li r0, 1
/* 80289160 002860C0  7F C4 F3 78 */	mr r4, r30
/* 80289164 002860C4  50 05 3E 30 */	rlwimi r5, r0, 7, 0x18, 0x18
/* 80289168 002860C8  98 A3 00 00 */	stb r5, 0(r3)
/* 8028916C 002860CC  7F 63 DB 78 */	mr r3, r27
/* 80289170 002860D0  48 00 01 D1 */	bl Reset__15CScriptMazeNodeFR13CStateManager
/* 80289174 002860D4  88 1B 01 3C */	lbz r0, 0x13c(r27)
/* 80289178 002860D8  38 60 00 00 */	li r3, 0
/* 8028917C 002860DC  50 60 36 72 */	rlwimi r0, r3, 6, 0x19, 0x19
/* 80289180 002860E0  98 1B 01 3C */	stb r0, 0x13c(r27)
lbl_80289184:
/* 80289184 002860E4  2C 1D FF FF */	cmpwi r29, -1
/* 80289188 002860E8  41 82 00 14 */	beq lbl_8028919C
/* 8028918C 002860EC  57 A3 18 38 */	slwi r3, r29, 3
/* 80289190 002860F0  38 03 00 08 */	addi r0, r3, 8
/* 80289194 002860F4  7F BA 02 AE */	lhax r29, r26, r0
/* 80289198 002860F8  48 00 00 08 */	b lbl_802891A0
lbl_8028919C:
/* 8028919C 002860FC  3B A0 FF FF */	li r29, -1
lbl_802891A0:
/* 802891A0 00286100  2C 1D FF FF */	cmpwi r29, -1
/* 802891A4 00286104  40 82 FE 14 */	bne lbl_80288FB8
/* 802891A8 00286108  48 00 00 48 */	b lbl_802891F0
lbl_802891AC:
/* 802891AC 0028610C  7F C3 F3 78 */	mr r3, r30
/* 802891B0 00286110  4B DB AE E1 */	bl GetCurrentMaze__13CStateManagerCFv
/* 802891B4 00286114  28 03 00 00 */	cmplwi r3, 0
/* 802891B8 00286118  41 82 00 20 */	beq lbl_802891D8
/* 802891BC 0028611C  38 00 00 00 */	li r0, 0
/* 802891C0 00286120  7F C3 F3 78 */	mr r3, r30
/* 802891C4 00286124  90 01 00 40 */	stw r0, 0x40(r1)
/* 802891C8 00286128  38 81 00 40 */	addi r4, r1, 0x40
/* 802891CC 0028612C  4B DB AE 65 */	bl "SetCurrentMaze__13CStateManagerFQ24rstl24single_ptr<10CMazeState>"
/* 802891D0 00286130  80 61 00 40 */	lwz r3, 0x40(r1)
/* 802891D4 00286134  48 08 C7 5D */	bl Free__7CMemoryFPCv
lbl_802891D8:
/* 802891D8 00286138  7F E3 FB 78 */	mr r3, r31
/* 802891DC 0028613C  7F C4 F3 78 */	mr r4, r30
/* 802891E0 00286140  48 00 01 61 */	bl Reset__15CScriptMazeNodeFR13CStateManager
/* 802891E4 00286144  48 00 00 0C */	b lbl_802891F0
lbl_802891E8:
/* 802891E8 00286148  7F C4 F3 78 */	mr r4, r30
/* 802891EC 0028614C  48 00 01 55 */	bl Reset__15CScriptMazeNodeFR13CStateManager
lbl_802891F0:
/* 802891F0 00286150  A0 19 00 00 */	lhz r0, 0(r25)
/* 802891F4 00286154  7F E3 FB 78 */	mr r3, r31
/* 802891F8 00286158  7F 04 C3 78 */	mr r4, r24
/* 802891FC 0028615C  7F C6 F3 78 */	mr r6, r30
/* 80289200 00286160  B0 01 00 08 */	sth r0, 8(r1)
/* 80289204 00286164  38 A1 00 08 */	addi r5, r1, 8
/* 80289208 00286168  4B DC 7F 55 */	bl AcceptScriptMsg__7CEntityF20EScriptObjectMessage9TUniqueIdR13CStateManager
/* 8028920C 0028616C  BB 01 00 D0 */	lmw r24, 0xd0(r1)
/* 80289210 00286170  80 01 00 F4 */	lwz r0, 0xf4(r1)
/* 80289214 00286174  7C 08 03 A6 */	mtlr r0
/* 80289218 00286178  38 21 00 F0 */	addi r1, r1, 0xf0
/* 8028921C 0028617C  4E 80 00 20 */	blr

.global SendScriptMsgs__15CScriptMazeNodeFR13CStateManager20EScriptObjectMessage
SendScriptMsgs__15CScriptMazeNodeFR13CStateManager20EScriptObjectMessage:
/* 80289220 00286180  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 80289224 00286184  7C 08 02 A6 */	mflr r0
/* 80289228 00286188  90 01 00 54 */	stw r0, 0x54(r1)
/* 8028922C 0028618C  93 E1 00 4C */	stw r31, 0x4c(r1)
/* 80289230 00286190  7C BF 2B 78 */	mr r31, r5
/* 80289234 00286194  93 C1 00 48 */	stw r30, 0x48(r1)
/* 80289238 00286198  7C 9E 23 78 */	mr r30, r4
/* 8028923C 0028619C  93 A1 00 44 */	stw r29, 0x44(r1)
/* 80289240 002861A0  7C 7D 1B 78 */	mr r29, r3
/* 80289244 002861A4  A0 83 00 08 */	lhz r4, 8(r3)
/* 80289248 002861A8  A0 03 01 1C */	lhz r0, 0x11c(r3)
/* 8028924C 002861AC  7F C3 F3 78 */	mr r3, r30
/* 80289250 002861B0  B0 81 00 30 */	sth r4, 0x30(r1)
/* 80289254 002861B4  38 81 00 34 */	addi r4, r1, 0x34
/* 80289258 002861B8  B0 01 00 34 */	sth r0, 0x34(r1)
/* 8028925C 002861BC  4B DC 33 19 */	bl ObjectById__13CStateManagerF9TUniqueId
/* 80289260 002861C0  A0 01 00 30 */	lhz r0, 0x30(r1)
/* 80289264 002861C4  7C 64 1B 78 */	mr r4, r3
/* 80289268 002861C8  7F C3 F3 78 */	mr r3, r30
/* 8028926C 002861CC  7F E6 FB 78 */	mr r6, r31
/* 80289270 002861D0  B0 01 00 14 */	sth r0, 0x14(r1)
/* 80289274 002861D4  38 A1 00 14 */	addi r5, r1, 0x14
/* 80289278 002861D8  4B DB AC 59 */	bl SendScriptMsg__13CStateManagerFP7CEntity9TUniqueId20EScriptObjectMessage
/* 8028927C 002861DC  A0 BD 00 08 */	lhz r5, 8(r29)
/* 80289280 002861E0  7F C3 F3 78 */	mr r3, r30
/* 80289284 002861E4  A0 1D 00 FC */	lhz r0, 0xfc(r29)
/* 80289288 002861E8  38 81 00 2C */	addi r4, r1, 0x2c
/* 8028928C 002861EC  B0 A1 00 28 */	sth r5, 0x28(r1)
/* 80289290 002861F0  B0 01 00 2C */	sth r0, 0x2c(r1)
/* 80289294 002861F4  4B DC 32 E1 */	bl ObjectById__13CStateManagerF9TUniqueId
/* 80289298 002861F8  A0 01 00 28 */	lhz r0, 0x28(r1)
/* 8028929C 002861FC  7C 64 1B 78 */	mr r4, r3
/* 802892A0 00286200  7F C3 F3 78 */	mr r3, r30
/* 802892A4 00286204  7F E6 FB 78 */	mr r6, r31
/* 802892A8 00286208  B0 01 00 10 */	sth r0, 0x10(r1)
/* 802892AC 0028620C  38 A1 00 10 */	addi r5, r1, 0x10
/* 802892B0 00286210  4B DB AC 21 */	bl SendScriptMsg__13CStateManagerFP7CEntity9TUniqueId20EScriptObjectMessage
/* 802892B4 00286214  A0 BD 00 08 */	lhz r5, 8(r29)
/* 802892B8 00286218  7F C3 F3 78 */	mr r3, r30
/* 802892BC 0028621C  A0 1D 01 0C */	lhz r0, 0x10c(r29)
/* 802892C0 00286220  38 81 00 24 */	addi r4, r1, 0x24
/* 802892C4 00286224  B0 A1 00 20 */	sth r5, 0x20(r1)
/* 802892C8 00286228  B0 01 00 24 */	sth r0, 0x24(r1)
/* 802892CC 0028622C  4B DC 32 A9 */	bl ObjectById__13CStateManagerF9TUniqueId
/* 802892D0 00286230  A0 01 00 20 */	lhz r0, 0x20(r1)
/* 802892D4 00286234  7C 64 1B 78 */	mr r4, r3
/* 802892D8 00286238  7F C3 F3 78 */	mr r3, r30
/* 802892DC 0028623C  7F E6 FB 78 */	mr r6, r31
/* 802892E0 00286240  B0 01 00 0C */	sth r0, 0xc(r1)
/* 802892E4 00286244  38 A1 00 0C */	addi r5, r1, 0xc
/* 802892E8 00286248  4B DB AB E9 */	bl SendScriptMsg__13CStateManagerFP7CEntity9TUniqueId20EScriptObjectMessage
/* 802892EC 0028624C  A0 BD 00 08 */	lhz r5, 8(r29)
/* 802892F0 00286250  7F C3 F3 78 */	mr r3, r30
/* 802892F4 00286254  A0 1D 00 F4 */	lhz r0, 0xf4(r29)
/* 802892F8 00286258  38 81 00 1C */	addi r4, r1, 0x1c
/* 802892FC 0028625C  B0 A1 00 18 */	sth r5, 0x18(r1)
/* 80289300 00286260  B0 01 00 1C */	sth r0, 0x1c(r1)
/* 80289304 00286264  4B DC 32 71 */	bl ObjectById__13CStateManagerF9TUniqueId
/* 80289308 00286268  A0 01 00 18 */	lhz r0, 0x18(r1)
/* 8028930C 0028626C  7C 64 1B 78 */	mr r4, r3
/* 80289310 00286270  7F C3 F3 78 */	mr r3, r30
/* 80289314 00286274  7F E6 FB 78 */	mr r6, r31
/* 80289318 00286278  B0 01 00 08 */	sth r0, 8(r1)
/* 8028931C 0028627C  38 A1 00 08 */	addi r5, r1, 8
/* 80289320 00286280  4B DB AB B1 */	bl SendScriptMsg__13CStateManagerFP7CEntity9TUniqueId20EScriptObjectMessage
/* 80289324 00286284  80 01 00 54 */	lwz r0, 0x54(r1)
/* 80289328 00286288  83 E1 00 4C */	lwz r31, 0x4c(r1)
/* 8028932C 0028628C  83 C1 00 48 */	lwz r30, 0x48(r1)
/* 80289330 00286290  83 A1 00 44 */	lwz r29, 0x44(r1)
/* 80289334 00286294  7C 08 03 A6 */	mtlr r0
/* 80289338 00286298  38 21 00 50 */	addi r1, r1, 0x50
/* 8028933C 0028629C  4E 80 00 20 */	blr

.global Reset__15CScriptMazeNodeFR13CStateManager
Reset__15CScriptMazeNodeFR13CStateManager:
/* 80289340 002862A0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80289344 002862A4  7C 08 02 A6 */	mflr r0
/* 80289348 002862A8  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028934C 002862AC  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80289350 002862B0  7C 9F 23 78 */	mr r31, r4
/* 80289354 002862B4  38 81 00 14 */	addi r4, r1, 0x14
/* 80289358 002862B8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8028935C 002862BC  7C 7E 1B 78 */	mr r30, r3
/* 80289360 002862C0  A0 03 01 1C */	lhz r0, 0x11c(r3)
/* 80289364 002862C4  7F E3 FB 78 */	mr r3, r31
/* 80289368 002862C8  B0 01 00 14 */	sth r0, 0x14(r1)
/* 8028936C 002862CC  4B DC 2F 01 */	bl FreeScriptObject__13CStateManagerF9TUniqueId
/* 80289370 002862D0  A0 1E 00 FC */	lhz r0, 0xfc(r30)
/* 80289374 002862D4  7F E3 FB 78 */	mr r3, r31
/* 80289378 002862D8  38 81 00 10 */	addi r4, r1, 0x10
/* 8028937C 002862DC  B0 01 00 10 */	sth r0, 0x10(r1)
/* 80289380 002862E0  4B DC 2E ED */	bl FreeScriptObject__13CStateManagerF9TUniqueId
/* 80289384 002862E4  A0 1E 01 0C */	lhz r0, 0x10c(r30)
/* 80289388 002862E8  7F E3 FB 78 */	mr r3, r31
/* 8028938C 002862EC  38 81 00 0C */	addi r4, r1, 0xc
/* 80289390 002862F0  B0 01 00 0C */	sth r0, 0xc(r1)
/* 80289394 002862F4  4B DC 2E D9 */	bl FreeScriptObject__13CStateManagerF9TUniqueId
/* 80289398 002862F8  A0 1E 00 F4 */	lhz r0, 0xf4(r30)
/* 8028939C 002862FC  7F E3 FB 78 */	mr r3, r31
/* 802893A0 00286300  38 81 00 08 */	addi r4, r1, 8
/* 802893A4 00286304  B0 01 00 08 */	sth r0, 8(r1)
/* 802893A8 00286308  4B DC 2E C5 */	bl FreeScriptObject__13CStateManagerF9TUniqueId
/* 802893AC 0028630C  A0 0D A3 8C */	lhz r0, kInvalidUniqueId@sda21(r13)
/* 802893B0 00286310  B0 1E 00 F4 */	sth r0, 0xf4(r30)
/* 802893B4 00286314  A0 1E 00 F4 */	lhz r0, 0xf4(r30)
/* 802893B8 00286318  B0 1E 01 0C */	sth r0, 0x10c(r30)
/* 802893BC 0028631C  A0 1E 01 0C */	lhz r0, 0x10c(r30)
/* 802893C0 00286320  B0 1E 00 FC */	sth r0, 0xfc(r30)
/* 802893C4 00286324  A0 1E 00 FC */	lhz r0, 0xfc(r30)
/* 802893C8 00286328  B0 1E 01 1C */	sth r0, 0x11c(r30)
/* 802893CC 0028632C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 802893D0 00286330  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 802893D4 00286334  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802893D8 00286338  7C 08 03 A6 */	mtlr r0
/* 802893DC 0028633C  38 21 00 20 */	addi r1, r1, 0x20
/* 802893E0 00286340  4E 80 00 20 */	blr

.global GenerateObjects__15CScriptMazeNodeFR13CStateManager
GenerateObjects__15CScriptMazeNodeFR13CStateManager:
/* 802893E4 00286344  94 21 FF 70 */	stwu r1, -0x90(r1)
/* 802893E8 00286348  7C 08 02 A6 */	mflr r0
/* 802893EC 0028634C  90 01 00 94 */	stw r0, 0x94(r1)
/* 802893F0 00286350  BF 21 00 74 */	stmw r25, 0x74(r1)
/* 802893F4 00286354  7C 7D 1B 78 */	mr r29, r3
/* 802893F8 00286358  7C 9E 23 78 */	mr r30, r4
/* 802893FC 0028635C  83 E3 00 2C */	lwz r31, 0x2c(r3)
/* 80289400 00286360  48 00 02 08 */	b lbl_80289608
lbl_80289404:
/* 80289404 00286364  80 1F 00 00 */	lwz r0, 0(r31)
/* 80289408 00286368  2C 00 00 07 */	cmpwi r0, 7
/* 8028940C 0028636C  40 82 01 F8 */	bne lbl_80289604
/* 80289410 00286370  80 1F 00 04 */	lwz r0, 4(r31)
/* 80289414 00286374  2C 00 00 01 */	cmpwi r0, 1
/* 80289418 00286378  40 82 01 EC */	bne lbl_80289604
/* 8028941C 0028637C  80 1F 00 08 */	lwz r0, 8(r31)
/* 80289420 00286380  7F C4 F3 78 */	mr r4, r30
/* 80289424 00286384  38 61 00 14 */	addi r3, r1, 0x14
/* 80289428 00286388  38 A1 00 20 */	addi r5, r1, 0x20
/* 8028942C 0028638C  90 01 00 20 */	stw r0, 0x20(r1)
/* 80289430 00286390  4B DB EA ED */	bl GetIdForScript__13CStateManagerCF9TEditorId
/* 80289434 00286394  A0 01 00 14 */	lhz r0, 0x14(r1)
/* 80289438 00286398  7F C3 F3 78 */	mr r3, r30
/* 8028943C 0028639C  38 81 00 18 */	addi r4, r1, 0x18
/* 80289440 002863A0  B0 01 00 18 */	sth r0, 0x18(r1)
/* 80289444 002863A4  4B DC 31 31 */	bl ObjectById__13CStateManagerF9TUniqueId
/* 80289448 002863A8  7C 60 1B 78 */	mr r0, r3
/* 8028944C 002863AC  38 61 00 3C */	addi r3, r1, 0x3c
/* 80289450 002863B0  7C 19 03 78 */	mr r25, r0
/* 80289454 002863B4  7F 24 CB 78 */	mr r4, r25
/* 80289458 002863B8  4B E2 09 85 */	bl "__ct__27TCastToPtr<13CScriptEffect>FP7CEntity"
/* 8028945C 002863BC  83 83 00 04 */	lwz r28, 4(r3)
/* 80289460 002863C0  7F 24 CB 78 */	mr r4, r25
/* 80289464 002863C4  38 61 00 34 */	addi r3, r1, 0x34
/* 80289468 002863C8  4B E2 29 05 */	bl "__ct__26TCastToPtr<12CScriptActor>FP7CEntity"
/* 8028946C 002863CC  83 63 00 04 */	lwz r27, 4(r3)
/* 80289470 002863D0  7F 24 CB 78 */	mr r4, r25
/* 80289474 002863D4  38 61 00 2C */	addi r3, r1, 0x2c
/* 80289478 002863D8  4B E1 DA 71 */	bl "__ct__28TCastToPtr<14CScriptTrigger>FP7CEntity"
/* 8028947C 002863DC  28 1C 00 00 */	cmplwi r28, 0
/* 80289480 002863E0  83 43 00 04 */	lwz r26, 4(r3)
/* 80289484 002863E4  40 82 00 14 */	bne lbl_80289498
/* 80289488 002863E8  28 1B 00 00 */	cmplwi r27, 0
/* 8028948C 002863EC  40 82 00 0C */	bne lbl_80289498
/* 80289490 002863F0  28 1A 00 00 */	cmplwi r26, 0
/* 80289494 002863F4  41 82 01 70 */	beq lbl_80289604
lbl_80289498:
/* 80289498 002863F8  28 1C 00 00 */	cmplwi r28, 0
/* 8028949C 002863FC  41 82 00 10 */	beq lbl_802894AC
/* 802894A0 00286400  88 1D 01 3C */	lbz r0, 0x13c(r29)
/* 802894A4 00286404  54 00 D7 FF */	rlwinm. r0, r0, 0x1a, 0x1f, 0x1f
/* 802894A8 00286408  40 82 01 5C */	bne lbl_80289604
lbl_802894AC:
/* 802894AC 0028640C  88 BE 0F 94 */	lbz r5, 0xf94(r30)
/* 802894B0 00286410  38 60 00 01 */	li r3, 1
/* 802894B4 00286414  88 1E 0F 94 */	lbz r0, 0xf94(r30)
/* 802894B8 00286418  50 60 2E B4 */	rlwimi r0, r3, 5, 0x1a, 0x1a
/* 802894BC 0028641C  7F C4 F3 78 */	mr r4, r30
/* 802894C0 00286420  54 B9 DF FE */	rlwinm r25, r5, 0x1b, 0x1f, 0x1f
/* 802894C4 00286424  98 1E 0F 94 */	stb r0, 0xf94(r30)
/* 802894C8 00286428  38 61 00 24 */	addi r3, r1, 0x24
/* 802894CC 0028642C  38 BF 00 08 */	addi r5, r31, 8
/* 802894D0 00286430  4B DB EE 19 */	bl GenerateObject__13CStateManagerFRC9TEditorId
/* 802894D4 00286434  A0 A1 00 28 */	lhz r5, 0x28(r1)
/* 802894D8 00286438  7F C3 F3 78 */	mr r3, r30
/* 802894DC 0028643C  88 1E 0F 94 */	lbz r0, 0xf94(r30)
/* 802894E0 00286440  53 20 2E B4 */	rlwimi r0, r25, 5, 0x1a, 0x1a
/* 802894E4 00286444  B0 A1 00 1C */	sth r5, 0x1c(r1)
/* 802894E8 00286448  38 81 00 10 */	addi r4, r1, 0x10
/* 802894EC 0028644C  98 1E 0F 94 */	stb r0, 0xf94(r30)
/* 802894F0 00286450  B0 A1 00 10 */	sth r5, 0x10(r1)
/* 802894F4 00286454  4B DC 30 81 */	bl ObjectById__13CStateManagerF9TUniqueId
/* 802894F8 00286458  7C 79 1B 79 */	or. r25, r3, r3
/* 802894FC 0028645C  41 82 01 08 */	beq lbl_80289604
/* 80289500 00286460  A0 1D 00 08 */	lhz r0, 8(r29)
/* 80289504 00286464  7F C3 F3 78 */	mr r3, r30
/* 80289508 00286468  7F 24 CB 78 */	mr r4, r25
/* 8028950C 0028646C  38 A1 00 0C */	addi r5, r1, 0xc
/* 80289510 00286470  B0 01 00 08 */	sth r0, 8(r1)
/* 80289514 00286474  38 C0 00 01 */	li r6, 1
/* 80289518 00286478  B0 01 00 0C */	sth r0, 0xc(r1)
/* 8028951C 0028647C  4B DB A9 B5 */	bl SendScriptMsg__13CStateManagerFP7CEntity9TUniqueId20EScriptObjectMessage
/* 80289520 00286480  28 1C 00 00 */	cmplwi r28, 0
/* 80289524 00286484  41 82 00 48 */	beq lbl_8028956C
/* 80289528 00286488  C0 3D 00 50 */	lfs f1, 0x50(r29)
/* 8028952C 0028648C  7F 23 CB 78 */	mr r3, r25
/* 80289530 00286490  C0 1D 01 24 */	lfs f0, 0x124(r29)
/* 80289534 00286494  38 81 00 5C */	addi r4, r1, 0x5c
/* 80289538 00286498  C0 7D 00 60 */	lfs f3, 0x60(r29)
/* 8028953C 0028649C  C0 5D 01 28 */	lfs f2, 0x128(r29)
/* 80289540 002864A0  EC 81 00 2A */	fadds f4, f1, f0
/* 80289544 002864A4  C0 3D 00 40 */	lfs f1, 0x40(r29)
/* 80289548 002864A8  C0 1D 01 20 */	lfs f0, 0x120(r29)
/* 8028954C 002864AC  EC 43 10 2A */	fadds f2, f3, f2
/* 80289550 002864B0  EC 01 00 2A */	fadds f0, f1, f0
/* 80289554 002864B4  D0 81 00 60 */	stfs f4, 0x60(r1)
/* 80289558 002864B8  D0 41 00 64 */	stfs f2, 0x64(r1)
/* 8028955C 002864BC  D0 01 00 5C */	stfs f0, 0x5c(r1)
/* 80289560 002864C0  4B DC 99 2D */	bl SetTranslation__6CActorFRC9CVector3f
/* 80289564 002864C4  A0 01 00 1C */	lhz r0, 0x1c(r1)
/* 80289568 002864C8  B0 1D 01 1C */	sth r0, 0x11c(r29)
lbl_8028956C:
/* 8028956C 002864CC  28 1B 00 00 */	cmplwi r27, 0
/* 80289570 002864D0  41 82 00 48 */	beq lbl_802895B8
/* 80289574 002864D4  C0 3D 00 50 */	lfs f1, 0x50(r29)
/* 80289578 002864D8  7F 23 CB 78 */	mr r3, r25
/* 8028957C 002864DC  C0 1D 01 04 */	lfs f0, 0x104(r29)
/* 80289580 002864E0  38 81 00 50 */	addi r4, r1, 0x50
/* 80289584 002864E4  C0 7D 00 60 */	lfs f3, 0x60(r29)
/* 80289588 002864E8  C0 5D 01 08 */	lfs f2, 0x108(r29)
/* 8028958C 002864EC  EC 81 00 2A */	fadds f4, f1, f0
/* 80289590 002864F0  C0 3D 00 40 */	lfs f1, 0x40(r29)
/* 80289594 002864F4  C0 1D 01 00 */	lfs f0, 0x100(r29)
/* 80289598 002864F8  EC 43 10 2A */	fadds f2, f3, f2
/* 8028959C 002864FC  EC 01 00 2A */	fadds f0, f1, f0
/* 802895A0 00286500  D0 81 00 54 */	stfs f4, 0x54(r1)
/* 802895A4 00286504  D0 41 00 58 */	stfs f2, 0x58(r1)
/* 802895A8 00286508  D0 01 00 50 */	stfs f0, 0x50(r1)
/* 802895AC 0028650C  4B DC 98 E1 */	bl SetTranslation__6CActorFRC9CVector3f
/* 802895B0 00286510  A0 01 00 1C */	lhz r0, 0x1c(r1)
/* 802895B4 00286514  B0 1D 00 FC */	sth r0, 0xfc(r29)
lbl_802895B8:
/* 802895B8 00286518  28 1A 00 00 */	cmplwi r26, 0
/* 802895BC 0028651C  41 82 00 48 */	beq lbl_80289604
/* 802895C0 00286520  C0 3D 00 50 */	lfs f1, 0x50(r29)
/* 802895C4 00286524  7F 23 CB 78 */	mr r3, r25
/* 802895C8 00286528  C0 1D 01 14 */	lfs f0, 0x114(r29)
/* 802895CC 0028652C  38 81 00 44 */	addi r4, r1, 0x44
/* 802895D0 00286530  C0 7D 00 60 */	lfs f3, 0x60(r29)
/* 802895D4 00286534  C0 5D 01 18 */	lfs f2, 0x118(r29)
/* 802895D8 00286538  EC 81 00 2A */	fadds f4, f1, f0
/* 802895DC 0028653C  C0 3D 00 40 */	lfs f1, 0x40(r29)
/* 802895E0 00286540  C0 1D 01 10 */	lfs f0, 0x110(r29)
/* 802895E4 00286544  EC 43 10 2A */	fadds f2, f3, f2
/* 802895E8 00286548  EC 01 00 2A */	fadds f0, f1, f0
/* 802895EC 0028654C  D0 81 00 48 */	stfs f4, 0x48(r1)
/* 802895F0 00286550  D0 41 00 4C */	stfs f2, 0x4c(r1)
/* 802895F4 00286554  D0 01 00 44 */	stfs f0, 0x44(r1)
/* 802895F8 00286558  4B DC 98 95 */	bl SetTranslation__6CActorFRC9CVector3f
/* 802895FC 0028655C  A0 01 00 1C */	lhz r0, 0x1c(r1)
/* 80289600 00286560  B0 1D 01 0C */	sth r0, 0x10c(r29)
lbl_80289604:
/* 80289604 00286564  3B FF 00 0C */	addi r31, r31, 0xc
lbl_80289608:
/* 80289608 00286568  80 1D 00 24 */	lwz r0, 0x24(r29)
/* 8028960C 0028656C  80 7D 00 2C */	lwz r3, 0x2c(r29)
/* 80289610 00286570  1C 00 00 0C */	mulli r0, r0, 0xc
/* 80289614 00286574  7C 03 02 14 */	add r0, r3, r0
/* 80289618 00286578  7C 1F 00 40 */	cmplw r31, r0
/* 8028961C 0028657C  40 82 FD E8 */	bne lbl_80289404
/* 80289620 00286580  BB 21 00 74 */	lmw r25, 0x74(r1)
/* 80289624 00286584  80 01 00 94 */	lwz r0, 0x94(r1)
/* 80289628 00286588  7C 08 03 A6 */	mtlr r0
/* 8028962C 0028658C  38 21 00 90 */	addi r1, r1, 0x90
/* 80289630 00286590  4E 80 00 20 */	blr

.global Accept__15CScriptMazeNodeFR8IVisitor
Accept__15CScriptMazeNodeFR8IVisitor:
/* 80289634 00286594  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80289638 00286598  7C 08 02 A6 */	mflr r0
/* 8028963C 0028659C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80289640 002865A0  7C 60 1B 78 */	mr r0, r3
/* 80289644 002865A4  7C 83 23 78 */	mr r3, r4
/* 80289648 002865A8  81 84 00 00 */	lwz r12, 0(r4)
/* 8028964C 002865AC  7C 04 03 78 */	mr r4, r0
/* 80289650 002865B0  81 8C 00 94 */	lwz r12, 0x94(r12)
/* 80289654 002865B4  7D 89 03 A6 */	mtctr r12
/* 80289658 002865B8  4E 80 04 21 */	bctrl
/* 8028965C 002865BC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80289660 002865C0  7C 08 03 A6 */	mtlr r0
/* 80289664 002865C4  38 21 00 10 */	addi r1, r1, 0x10
/* 80289668 002865C8  4E 80 00 20 */	blr

.global "__ct__15CScriptMazeNodeF9TUniqueIdRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbiiiRC9CVector3fRC9CVector3fRC9CVector3f"
"__ct__15CScriptMazeNodeF9TUniqueIdRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbiiiRC9CVector3fRC9CVector3fRC9CVector3f":
/* 8028966C 002865CC  94 21 FE F0 */	stwu r1, -0x110(r1)
/* 80289670 002865D0  7C 08 02 A6 */	mflr r0
/* 80289674 002865D4  90 01 01 14 */	stw r0, 0x114(r1)
/* 80289678 002865D8  BE 81 00 E0 */	stmw r20, 0xe0(r1)
/* 8028967C 002865DC  7C 7F 1B 78 */	mr r31, r3
/* 80289680 002865E0  83 61 01 18 */	lwz r27, 0x118(r1)
/* 80289684 002865E4  7C 94 23 78 */	mr r20, r4
/* 80289688 002865E8  83 81 01 1C */	lwz r28, 0x11c(r1)
/* 8028968C 002865EC  7C B5 2B 78 */	mr r21, r5
/* 80289690 002865F0  83 A1 01 20 */	lwz r29, 0x120(r1)
/* 80289694 002865F4  7C D6 33 78 */	mr r22, r6
/* 80289698 002865F8  83 C1 01 24 */	lwz r30, 0x124(r1)
/* 8028969C 002865FC  7C F7 3B 78 */	mr r23, r7
/* 802896A0 00286600  7D 18 43 78 */	mr r24, r8
/* 802896A4 00286604  7D 39 4B 78 */	mr r25, r9
/* 802896A8 00286608  7D 5A 53 78 */	mr r26, r10
/* 802896AC 0028660C  38 61 00 88 */	addi r3, r1, 0x88
/* 802896B0 00286610  4B DB 10 F5 */	bl CModelDataNull__10CModelDataFv
/* 802896B4 00286614  38 61 00 20 */	addi r3, r1, 0x20
/* 802896B8 00286618  4B D9 17 81 */	bl None__16CActorParametersFv
/* 802896BC 0028661C  A0 0D A3 8C */	lhz r0, kInvalidUniqueId@sda21(r13)
/* 802896C0 00286620  38 80 00 00 */	li r4, 0
/* 802896C4 00286624  A1 94 00 00 */	lhz r12, 0(r20)
/* 802896C8 00286628  39 61 00 20 */	addi r11, r1, 0x20
/* 802896CC 0028662C  B0 01 00 10 */	sth r0, 0x10(r1)
/* 802896D0 00286630  38 01 00 10 */	addi r0, r1, 0x10
/* 802896D4 00286634  7F E3 FB 78 */	mr r3, r31
/* 802896D8 00286638  7F 05 C3 78 */	mr r5, r24
/* 802896DC 0028663C  90 81 00 1C */	stw r4, 0x1c(r1)
/* 802896E0 00286640  7E A6 AB 78 */	mr r6, r21
/* 802896E4 00286644  7E C7 B3 78 */	mr r7, r22
/* 802896E8 00286648  7E E8 BB 78 */	mr r8, r23
/* 802896EC 0028664C  90 81 00 18 */	stw r4, 0x18(r1)
/* 802896F0 00286650  38 81 00 14 */	addi r4, r1, 0x14
/* 802896F4 00286654  39 21 00 88 */	addi r9, r1, 0x88
/* 802896F8 00286658  39 41 00 18 */	addi r10, r1, 0x18
/* 802896FC 0028665C  B1 81 00 14 */	sth r12, 0x14(r1)
/* 80289700 00286660  91 61 00 08 */	stw r11, 8(r1)
/* 80289704 00286664  90 01 00 0C */	stw r0, 0xc(r1)
/* 80289708 00286668  4B DC C1 19 */	bl "__ct__6CActorF9TUniqueIdbRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fRC10CModelDataRC13CMaterialListRC16CActorParameters9TUniqueId"
/* 8028970C 0028666C  38 61 00 20 */	addi r3, r1, 0x20
/* 80289710 00286670  38 80 FF FF */	li r4, -1
/* 80289714 00286674  4B E7 CE F5 */	bl __dt__16CLightParametersFv
/* 80289718 00286678  38 61 00 88 */	addi r3, r1, 0x88
/* 8028971C 0028667C  38 80 FF FF */	li r4, -1
/* 80289720 00286680  4B E8 D3 2D */	bl __dt__10CModelDataFv
/* 80289724 00286684  3C 60 80 3F */	lis r3, lbl_803EB658@ha
/* 80289728 00286688  C0 02 BE 64 */	lfs f0, lbl_805ADB84@sda21(r2)
/* 8028972C 0028668C  38 03 B6 58 */	addi r0, r3, lbl_803EB658@l
/* 80289730 00286690  38 A0 00 00 */	li r5, 0
/* 80289734 00286694  90 1F 00 00 */	stw r0, 0(r31)
/* 80289738 00286698  38 80 00 01 */	li r4, 1
/* 8028973C 0028669C  7F E3 FB 78 */	mr r3, r31
/* 80289740 002866A0  93 3F 00 E8 */	stw r25, 0xe8(r31)
/* 80289744 002866A4  93 5F 00 EC */	stw r26, 0xec(r31)
/* 80289748 002866A8  93 7F 00 F0 */	stw r27, 0xf0(r31)
/* 8028974C 002866AC  A0 0D A3 8C */	lhz r0, kInvalidUniqueId@sda21(r13)
/* 80289750 002866B0  B0 1F 00 F4 */	sth r0, 0xf4(r31)
/* 80289754 002866B4  D0 1F 00 F8 */	stfs f0, 0xf8(r31)
/* 80289758 002866B8  A0 0D A3 8C */	lhz r0, kInvalidUniqueId@sda21(r13)
/* 8028975C 002866BC  B0 1F 00 FC */	sth r0, 0xfc(r31)
/* 80289760 002866C0  C0 1C 00 00 */	lfs f0, 0(r28)
/* 80289764 002866C4  D0 1F 01 00 */	stfs f0, 0x100(r31)
/* 80289768 002866C8  C0 1C 00 04 */	lfs f0, 4(r28)
/* 8028976C 002866CC  D0 1F 01 04 */	stfs f0, 0x104(r31)
/* 80289770 002866D0  C0 1C 00 08 */	lfs f0, 8(r28)
/* 80289774 002866D4  D0 1F 01 08 */	stfs f0, 0x108(r31)
/* 80289778 002866D8  A0 0D A3 8C */	lhz r0, kInvalidUniqueId@sda21(r13)
/* 8028977C 002866DC  B0 1F 01 0C */	sth r0, 0x10c(r31)
/* 80289780 002866E0  C0 1D 00 00 */	lfs f0, 0(r29)
/* 80289784 002866E4  D0 1F 01 10 */	stfs f0, 0x110(r31)
/* 80289788 002866E8  C0 1D 00 04 */	lfs f0, 4(r29)
/* 8028978C 002866EC  D0 1F 01 14 */	stfs f0, 0x114(r31)
/* 80289790 002866F0  C0 1D 00 08 */	lfs f0, 8(r29)
/* 80289794 002866F4  D0 1F 01 18 */	stfs f0, 0x118(r31)
/* 80289798 002866F8  A0 0D A3 8C */	lhz r0, kInvalidUniqueId@sda21(r13)
/* 8028979C 002866FC  B0 1F 01 1C */	sth r0, 0x11c(r31)
/* 802897A0 00286700  C0 1E 00 00 */	lfs f0, 0(r30)
/* 802897A4 00286704  D0 1F 01 20 */	stfs f0, 0x120(r31)
/* 802897A8 00286708  C0 1E 00 04 */	lfs f0, 4(r30)
/* 802897AC 0028670C  D0 1F 01 24 */	stfs f0, 0x124(r31)
/* 802897B0 00286710  C0 1E 00 08 */	lfs f0, 8(r30)
/* 802897B4 00286714  D0 1F 01 28 */	stfs f0, 0x128(r31)
/* 802897B8 00286718  90 BF 01 30 */	stw r5, 0x130(r31)
/* 802897BC 0028671C  90 BF 01 34 */	stw r5, 0x134(r31)
/* 802897C0 00286720  90 BF 01 38 */	stw r5, 0x138(r31)
/* 802897C4 00286724  88 1F 01 3C */	lbz r0, 0x13c(r31)
/* 802897C8 00286728  50 A0 3E 30 */	rlwimi r0, r5, 7, 0x18, 0x18
/* 802897CC 0028672C  98 1F 01 3C */	stb r0, 0x13c(r31)
/* 802897D0 00286730  88 1F 01 3C */	lbz r0, 0x13c(r31)
/* 802897D4 00286734  50 A0 36 72 */	rlwimi r0, r5, 6, 0x19, 0x19
/* 802897D8 00286738  98 1F 01 3C */	stb r0, 0x13c(r31)
/* 802897DC 0028673C  88 1F 01 3C */	lbz r0, 0x13c(r31)
/* 802897E0 00286740  50 80 2E B4 */	rlwimi r0, r4, 5, 0x1a, 0x1a
/* 802897E4 00286744  98 1F 01 3C */	stb r0, 0x13c(r31)
/* 802897E8 00286748  BA 81 00 E0 */	lmw r20, 0xe0(r1)
/* 802897EC 0028674C  80 01 01 14 */	lwz r0, 0x114(r1)
/* 802897F0 00286750  7C 08 03 A6 */	mtlr r0
/* 802897F4 00286754  38 21 01 10 */	addi r1, r1, 0x110
/* 802897F8 00286758  4E 80 00 20 */	blr

.global Initialize__10CMazeStateFv
Initialize__10CMazeStateFv:
/* 802897FC 0028675C  94 21 FE F0 */	stwu r1, -0x110(r1)
/* 80289800 00286760  38 A0 00 00 */	li r5, 0
/* 80289804 00286764  54 A0 10 3A */	slwi r0, r5, 2
/* 80289808 00286768  39 00 00 01 */	li r8, 1
/* 8028980C 0028676C  80 83 00 88 */	lwz r4, 0x88(r3)
/* 80289810 00286770  81 23 00 90 */	lwz r9, 0x90(r3)
/* 80289814 00286774  1C A4 00 09 */	mulli r5, r4, 9
/* 80289818 00286778  80 C3 00 84 */	lwz r6, 0x84(r3)
/* 8028981C 0028677C  38 81 00 08 */	addi r4, r1, 8
/* 80289820 00286780  81 43 00 8C */	lwz r10, 0x8c(r3)
/* 80289824 00286784  7C C6 2A 14 */	add r6, r6, r5
/* 80289828 00286788  54 C5 08 3C */	slwi r5, r6, 1
/* 8028982C 0028678C  7C C4 01 2E */	stwx r6, r4, r0
/* 80289830 00286790  38 E5 00 05 */	addi r7, r5, 5
/* 80289834 00286794  7C 03 38 AE */	lbzx r0, r3, r7
/* 80289838 00286798  1D 29 00 09 */	mulli r9, r9, 9
/* 8028983C 0028679C  51 00 2E B4 */	rlwimi r0, r8, 5, 0x1a, 0x1a
/* 80289840 002867A0  7C 03 39 AE */	stbx r0, r3, r7
/* 80289844 002867A4  38 A0 00 01 */	li r5, 1
/* 80289848 002867A8  7C EA 4A 14 */	add r7, r10, r9
/* 8028984C 002867AC  48 00 01 18 */	b lbl_80289964
lbl_80289850:
/* 80289850 002867B0  54 C8 08 3C */	slwi r8, r6, 1
/* 80289854 002867B4  38 08 00 04 */	addi r0, r8, 4
/* 80289858 002867B8  7D 03 00 AE */	lbzx r8, r3, r0
/* 8028985C 002867BC  55 08 CF FF */	rlwinm. r8, r8, 0x19, 0x1f, 0x1f
/* 80289860 002867C0  41 82 00 2C */	beq lbl_8028988C
/* 80289864 002867C4  39 46 FF F7 */	addi r10, r6, -9
/* 80289868 002867C8  55 48 08 3C */	slwi r8, r10, 1
/* 8028986C 002867CC  39 08 00 05 */	addi r8, r8, 5
/* 80289870 002867D0  7D 03 40 AE */	lbzx r8, r3, r8
/* 80289874 002867D4  55 08 DF FF */	rlwinm. r8, r8, 0x1b, 0x1f, 0x1f
/* 80289878 002867D8  40 82 00 14 */	bne lbl_8028988C
/* 8028987C 002867DC  54 A9 10 3A */	slwi r9, r5, 2
/* 80289880 002867E0  39 01 00 08 */	addi r8, r1, 8
/* 80289884 002867E4  7D 48 49 2E */	stwx r10, r8, r9
/* 80289888 002867E8  38 A5 00 01 */	addi r5, r5, 1
lbl_8028988C:
/* 8028988C 002867EC  7D 03 00 AE */	lbzx r8, r3, r0
/* 80289890 002867F0  55 08 D7 FF */	rlwinm. r8, r8, 0x1a, 0x1f, 0x1f
/* 80289894 002867F4  41 82 00 2C */	beq lbl_802898C0
/* 80289898 002867F8  39 46 00 01 */	addi r10, r6, 1
/* 8028989C 002867FC  55 48 08 3C */	slwi r8, r10, 1
/* 802898A0 00286800  39 08 00 05 */	addi r8, r8, 5
/* 802898A4 00286804  7D 03 40 AE */	lbzx r8, r3, r8
/* 802898A8 00286808  55 08 DF FF */	rlwinm. r8, r8, 0x1b, 0x1f, 0x1f
/* 802898AC 0028680C  40 82 00 14 */	bne lbl_802898C0
/* 802898B0 00286810  54 A9 10 3A */	slwi r9, r5, 2
/* 802898B4 00286814  39 01 00 08 */	addi r8, r1, 8
/* 802898B8 00286818  7D 48 49 2E */	stwx r10, r8, r9
/* 802898BC 0028681C  38 A5 00 01 */	addi r5, r5, 1
lbl_802898C0:
/* 802898C0 00286820  7D 03 00 AE */	lbzx r8, r3, r0
/* 802898C4 00286824  55 08 DF FF */	rlwinm. r8, r8, 0x1b, 0x1f, 0x1f
/* 802898C8 00286828  41 82 00 2C */	beq lbl_802898F4
/* 802898CC 0028682C  39 46 00 09 */	addi r10, r6, 9
/* 802898D0 00286830  55 48 08 3C */	slwi r8, r10, 1
/* 802898D4 00286834  39 08 00 05 */	addi r8, r8, 5
/* 802898D8 00286838  7D 03 40 AE */	lbzx r8, r3, r8
/* 802898DC 0028683C  55 08 DF FF */	rlwinm. r8, r8, 0x1b, 0x1f, 0x1f
/* 802898E0 00286840  40 82 00 14 */	bne lbl_802898F4
/* 802898E4 00286844  54 A9 10 3A */	slwi r9, r5, 2
/* 802898E8 00286848  39 01 00 08 */	addi r8, r1, 8
/* 802898EC 0028684C  7D 48 49 2E */	stwx r10, r8, r9
/* 802898F0 00286850  38 A5 00 01 */	addi r5, r5, 1
lbl_802898F4:
/* 802898F4 00286854  7C 03 00 AE */	lbzx r0, r3, r0
/* 802898F8 00286858  54 00 E7 FF */	rlwinm. r0, r0, 0x1c, 0x1f, 0x1f
/* 802898FC 0028685C  41 82 00 2C */	beq lbl_80289928
/* 80289900 00286860  39 26 FF FF */	addi r9, r6, -1
/* 80289904 00286864  55 28 08 3C */	slwi r8, r9, 1
/* 80289908 00286868  38 08 00 05 */	addi r0, r8, 5
/* 8028990C 0028686C  7C 03 00 AE */	lbzx r0, r3, r0
/* 80289910 00286870  54 00 DF FF */	rlwinm. r0, r0, 0x1b, 0x1f, 0x1f
/* 80289914 00286874  40 82 00 14 */	bne lbl_80289928
/* 80289918 00286878  54 A0 10 3A */	slwi r0, r5, 2
/* 8028991C 0028687C  39 01 00 08 */	addi r8, r1, 8
/* 80289920 00286880  7D 28 01 2E */	stwx r9, r8, r0
/* 80289924 00286884  38 A5 00 01 */	addi r5, r5, 1
lbl_80289928:
/* 80289928 00286888  54 A8 10 3A */	slwi r8, r5, 2
/* 8028992C 0028688C  38 08 FF FC */	addi r0, r8, -4
/* 80289930 00286890  7C 04 00 2E */	lwzx r0, r4, r0
/* 80289934 00286894  7C 06 00 00 */	cmpw r6, r0
/* 80289938 00286898  40 82 00 08 */	bne lbl_80289940
/* 8028993C 0028689C  38 A5 FF FF */	addi r5, r5, -1
lbl_80289940:
/* 80289940 002868A0  54 A6 10 3A */	slwi r6, r5, 2
/* 80289944 002868A4  39 20 00 01 */	li r9, 1
/* 80289948 002868A8  38 06 FF FC */	addi r0, r6, -4
/* 8028994C 002868AC  7C C4 00 2E */	lwzx r6, r4, r0
/* 80289950 002868B0  54 C8 08 3C */	slwi r8, r6, 1
/* 80289954 002868B4  39 08 00 05 */	addi r8, r8, 5
/* 80289958 002868B8  7C 03 40 AE */	lbzx r0, r3, r8
/* 8028995C 002868BC  51 20 2E B4 */	rlwimi r0, r9, 5, 0x1a, 0x1a
/* 80289960 002868C0  7C 03 41 AE */	stbx r0, r3, r8
lbl_80289964:
/* 80289964 002868C4  7C 06 38 00 */	cmpw r6, r7
/* 80289968 002868C8  40 82 FE E8 */	bne lbl_80289850
/* 8028996C 002868CC  54 A0 10 3A */	slwi r0, r5, 2
/* 80289970 002868D0  38 E1 00 08 */	addi r7, r1, 8
/* 80289974 002868D4  7C E7 02 14 */	add r7, r7, r0
/* 80289978 002868D8  38 00 00 01 */	li r0, 1
/* 8028997C 002868DC  48 00 00 24 */	b lbl_802899A0
lbl_80289980:
/* 80289980 002868E0  80 87 00 00 */	lwz r4, 0(r7)
/* 80289984 002868E4  54 84 08 3C */	slwi r4, r4, 1
/* 80289988 002868E8  39 04 00 05 */	addi r8, r4, 5
/* 8028998C 002868EC  7C C3 40 AE */	lbzx r6, r3, r8
/* 80289990 002868F0  54 C4 DF FF */	rlwinm. r4, r6, 0x1b, 0x1f, 0x1f
/* 80289994 002868F4  41 82 00 0C */	beq lbl_802899A0
/* 80289998 002868F8  50 06 36 72 */	rlwimi r6, r0, 6, 0x19, 0x19
/* 8028999C 002868FC  7C C3 41 AE */	stbx r6, r3, r8
lbl_802899A0:
/* 802899A0 00286900  2C 05 00 00 */	cmpwi r5, 0
/* 802899A4 00286904  38 A5 FF FF */	addi r5, r5, -1
/* 802899A8 00286908  38 E7 FF FC */	addi r7, r7, -4
/* 802899AC 0028690C  40 82 FF D4 */	bne lbl_80289980
/* 802899B0 00286910  88 03 00 94 */	lbz r0, 0x94(r3)
/* 802899B4 00286914  38 80 00 01 */	li r4, 1
/* 802899B8 00286918  50 80 3E 30 */	rlwimi r0, r4, 7, 0x18, 0x18
/* 802899BC 0028691C  98 03 00 94 */	stb r0, 0x94(r3)
/* 802899C0 00286920  38 21 01 10 */	addi r1, r1, 0x110
/* 802899C4 00286924  4E 80 00 20 */	blr

.global GenerateObstacles__10CMazeStateFv
GenerateObstacles__10CMazeStateFv:
/* 802899C8 00286928  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802899CC 0028692C  7C 08 02 A6 */	mflr r0
/* 802899D0 00286930  90 01 00 24 */	stw r0, 0x24(r1)
/* 802899D4 00286934  BF 61 00 0C */	stmw r27, 0xc(r1)
/* 802899D8 00286938  7C 7B 1B 78 */	mr r27, r3
/* 802899DC 0028693C  88 03 00 94 */	lbz r0, 0x94(r3)
/* 802899E0 00286940  54 00 CF FF */	rlwinm. r0, r0, 0x19, 0x1f, 0x1f
/* 802899E4 00286944  40 82 00 08 */	bne lbl_802899EC
/* 802899E8 00286948  4B FF FE 15 */	bl Initialize__10CMazeStateFv
lbl_802899EC:
/* 802899EC 0028694C  7F 63 DB 78 */	mr r3, r27
/* 802899F0 00286950  48 08 8B 31 */	bl Next__9CRandom16Fv
/* 802899F4 00286954  3C 80 66 66 */	lis r4, 0x66666667@ha
/* 802899F8 00286958  38 04 66 67 */	addi r0, r4, 0x66666667@l
/* 802899FC 0028695C  7C 00 18 96 */	mulhw r0, r0, r3
/* 80289A00 00286960  7C 00 0E 70 */	srawi r0, r0, 1
/* 80289A04 00286964  54 04 0F FE */	srwi r4, r0, 0x1f
/* 80289A08 00286968  7C 00 22 14 */	add r0, r0, r4
/* 80289A0C 0028696C  1C 00 00 05 */	mulli r0, r0, 5
/* 80289A10 00286970  7C 80 18 50 */	subf r4, r0, r3
/* 80289A14 00286974  7F 63 DB 78 */	mr r3, r27
/* 80289A18 00286978  3B E4 00 09 */	addi r31, r4, 9
/* 80289A1C 0028697C  48 08 8B 05 */	bl Next__9CRandom16Fv
/* 80289A20 00286980  3C 80 66 66 */	lis r4, 0x66666667@ha
/* 80289A24 00286984  38 04 66 67 */	addi r0, r4, 0x66666667@l
/* 80289A28 00286988  7C 00 18 96 */	mulhw r0, r0, r3
/* 80289A2C 0028698C  7C 00 0E 70 */	srawi r0, r0, 1
/* 80289A30 00286990  54 04 0F FE */	srwi r4, r0, 0x1f
/* 80289A34 00286994  7C 00 22 14 */	add r0, r0, r4
/* 80289A38 00286998  1C 00 00 05 */	mulli r0, r0, 5
/* 80289A3C 0028699C  7C 80 18 50 */	subf r4, r0, r3
/* 80289A40 002869A0  7F 63 DB 78 */	mr r3, r27
/* 80289A44 002869A4  3B C4 00 15 */	addi r30, r4, 0x15
/* 80289A48 002869A8  48 08 8A D9 */	bl Next__9CRandom16Fv
/* 80289A4C 002869AC  3C 80 66 66 */	lis r4, 0x66666667@ha
/* 80289A50 002869B0  38 04 66 67 */	addi r0, r4, 0x66666667@l
/* 80289A54 002869B4  7C 00 18 96 */	mulhw r0, r0, r3
/* 80289A58 002869B8  7C 00 0E 70 */	srawi r0, r0, 1
/* 80289A5C 002869BC  54 04 0F FE */	srwi r4, r0, 0x1f
/* 80289A60 002869C0  7C 00 22 14 */	add r0, r0, r4
/* 80289A64 002869C4  1C 00 00 05 */	mulli r0, r0, 5
/* 80289A68 002869C8  7C 80 18 50 */	subf r4, r0, r3
/* 80289A6C 002869CC  7F 63 DB 78 */	mr r3, r27
/* 80289A70 002869D0  3B A4 00 21 */	addi r29, r4, 0x21
/* 80289A74 002869D4  48 08 8A AD */	bl Next__9CRandom16Fv
/* 80289A78 002869D8  3C 80 66 66 */	lis r4, 0x66666667@ha
/* 80289A7C 002869DC  38 04 66 67 */	addi r0, r4, 0x66666667@l
/* 80289A80 002869E0  7C 00 18 96 */	mulhw r0, r0, r3
/* 80289A84 002869E4  7C 00 0E 70 */	srawi r0, r0, 1
/* 80289A88 002869E8  54 04 0F FE */	srwi r4, r0, 0x1f
/* 80289A8C 002869EC  7C 00 22 14 */	add r0, r0, r4
/* 80289A90 002869F0  1C 00 00 05 */	mulli r0, r0, 5
/* 80289A94 002869F4  7C 80 18 50 */	subf r4, r0, r3
/* 80289A98 002869F8  7F 63 DB 78 */	mr r3, r27
/* 80289A9C 002869FC  3B 84 00 0D */	addi r28, r4, 0xd
/* 80289AA0 00286A00  48 08 8A 81 */	bl Next__9CRandom16Fv
/* 80289AA4 00286A04  3C 80 66 66 */	lis r4, 0x66666667@ha
/* 80289AA8 00286A08  80 1B 00 84 */	lwz r0, 0x84(r27)
/* 80289AAC 00286A0C  38 84 66 67 */	addi r4, r4, 0x66666667@l
/* 80289AB0 00286A10  80 BB 00 88 */	lwz r5, 0x88(r27)
/* 80289AB4 00286A14  7C 84 18 96 */	mulhw r4, r4, r3
/* 80289AB8 00286A18  7C 08 03 78 */	mr r8, r0
/* 80289ABC 00286A1C  7C A9 2B 78 */	mr r9, r5
/* 80289AC0 00286A20  38 C0 FF FF */	li r6, -1
/* 80289AC4 00286A24  38 E0 00 00 */	li r7, 0
/* 80289AC8 00286A28  7C 84 0E 70 */	srawi r4, r4, 1
/* 80289ACC 00286A2C  54 8A 0F FE */	srwi r10, r4, 0x1f
/* 80289AD0 00286A30  7C 84 52 14 */	add r4, r4, r10
/* 80289AD4 00286A34  1C 84 00 05 */	mulli r4, r4, 5
/* 80289AD8 00286A38  7C 64 18 50 */	subf r3, r4, r3
/* 80289ADC 00286A3C  38 83 00 1D */	addi r4, r3, 0x1d
/* 80289AE0 00286A40  48 00 03 EC */	b lbl_80289ECC
lbl_80289AE4:
/* 80289AE4 00286A44  7C 07 F8 00 */	cmpw r7, r31
/* 80289AE8 00286A48  41 82 00 14 */	beq lbl_80289AFC
/* 80289AEC 00286A4C  7C 07 F0 00 */	cmpw r7, r30
/* 80289AF0 00286A50  41 82 00 0C */	beq lbl_80289AFC
/* 80289AF4 00286A54  7C 07 E8 00 */	cmpw r7, r29
/* 80289AF8 00286A58  40 82 01 28 */	bne lbl_80289C20
lbl_80289AFC:
/* 80289AFC 00286A5C  2C 06 00 02 */	cmpwi r6, 2
/* 80289B00 00286A60  41 82 00 A4 */	beq lbl_80289BA4
/* 80289B04 00286A64  40 80 00 14 */	bge lbl_80289B18
/* 80289B08 00286A68  2C 06 00 00 */	cmpwi r6, 0
/* 80289B0C 00286A6C  41 82 00 18 */	beq lbl_80289B24
/* 80289B10 00286A70  40 80 00 54 */	bge lbl_80289B64
/* 80289B14 00286A74  48 00 01 0C */	b lbl_80289C20
lbl_80289B18:
/* 80289B18 00286A78  2C 06 00 04 */	cmpwi r6, 4
/* 80289B1C 00286A7C  40 80 01 04 */	bge lbl_80289C20
/* 80289B20 00286A80  48 00 00 C4 */	b lbl_80289BE4
lbl_80289B24:
/* 80289B24 00286A84  1C 69 00 09 */	mulli r3, r9, 9
/* 80289B28 00286A88  39 60 00 01 */	li r11, 1
/* 80289B2C 00286A8C  7C 68 1A 14 */	add r3, r8, r3
/* 80289B30 00286A90  54 6A 08 3C */	slwi r10, r3, 1
/* 80289B34 00286A94  1C 65 00 09 */	mulli r3, r5, 9
/* 80289B38 00286A98  39 4A 00 04 */	addi r10, r10, 4
/* 80289B3C 00286A9C  7C BB 50 AE */	lbzx r5, r27, r10
/* 80289B40 00286AA0  51 65 0F BC */	rlwimi r5, r11, 1, 0x1e, 0x1e
/* 80289B44 00286AA4  7C 00 1A 14 */	add r0, r0, r3
/* 80289B48 00286AA8  54 03 08 3C */	slwi r3, r0, 1
/* 80289B4C 00286AAC  7C BB 51 AE */	stbx r5, r27, r10
/* 80289B50 00286AB0  38 63 00 04 */	addi r3, r3, 4
/* 80289B54 00286AB4  7C 1B 18 AE */	lbzx r0, r27, r3
/* 80289B58 00286AB8  51 60 1F 38 */	rlwimi r0, r11, 3, 0x1c, 0x1c
/* 80289B5C 00286ABC  7C 1B 19 AE */	stbx r0, r27, r3
/* 80289B60 00286AC0  48 00 00 C0 */	b lbl_80289C20
lbl_80289B64:
/* 80289B64 00286AC4  1C 69 00 09 */	mulli r3, r9, 9
/* 80289B68 00286AC8  39 60 00 01 */	li r11, 1
/* 80289B6C 00286ACC  7C 68 1A 14 */	add r3, r8, r3
/* 80289B70 00286AD0  54 6A 08 3C */	slwi r10, r3, 1
/* 80289B74 00286AD4  1C 65 00 09 */	mulli r3, r5, 9
/* 80289B78 00286AD8  39 4A 00 04 */	addi r10, r10, 4
/* 80289B7C 00286ADC  7C BB 50 AE */	lbzx r5, r27, r10
/* 80289B80 00286AE0  51 65 07 FE */	rlwimi r5, r11, 0, 0x1f, 0x1f
/* 80289B84 00286AE4  7C 00 1A 14 */	add r0, r0, r3
/* 80289B88 00286AE8  54 03 08 3C */	slwi r3, r0, 1
/* 80289B8C 00286AEC  7C BB 51 AE */	stbx r5, r27, r10
/* 80289B90 00286AF0  38 63 00 04 */	addi r3, r3, 4
/* 80289B94 00286AF4  7C 1B 18 AE */	lbzx r0, r27, r3
/* 80289B98 00286AF8  51 60 17 7A */	rlwimi r0, r11, 2, 0x1d, 0x1d
/* 80289B9C 00286AFC  7C 1B 19 AE */	stbx r0, r27, r3
/* 80289BA0 00286B00  48 00 00 80 */	b lbl_80289C20
lbl_80289BA4:
/* 80289BA4 00286B04  1C 69 00 09 */	mulli r3, r9, 9
/* 80289BA8 00286B08  39 60 00 01 */	li r11, 1
/* 80289BAC 00286B0C  7C 68 1A 14 */	add r3, r8, r3
/* 80289BB0 00286B10  54 6A 08 3C */	slwi r10, r3, 1
/* 80289BB4 00286B14  1C 65 00 09 */	mulli r3, r5, 9
/* 80289BB8 00286B18  39 4A 00 04 */	addi r10, r10, 4
/* 80289BBC 00286B1C  7C BB 50 AE */	lbzx r5, r27, r10
/* 80289BC0 00286B20  51 65 1F 38 */	rlwimi r5, r11, 3, 0x1c, 0x1c
/* 80289BC4 00286B24  7C 00 1A 14 */	add r0, r0, r3
/* 80289BC8 00286B28  54 03 08 3C */	slwi r3, r0, 1
/* 80289BCC 00286B2C  7C BB 51 AE */	stbx r5, r27, r10
/* 80289BD0 00286B30  38 63 00 04 */	addi r3, r3, 4
/* 80289BD4 00286B34  7C 1B 18 AE */	lbzx r0, r27, r3
/* 80289BD8 00286B38  51 60 0F BC */	rlwimi r0, r11, 1, 0x1e, 0x1e
/* 80289BDC 00286B3C  7C 1B 19 AE */	stbx r0, r27, r3
/* 80289BE0 00286B40  48 00 00 40 */	b lbl_80289C20
lbl_80289BE4:
/* 80289BE4 00286B44  1C 69 00 09 */	mulli r3, r9, 9
/* 80289BE8 00286B48  39 60 00 01 */	li r11, 1
/* 80289BEC 00286B4C  7C 68 1A 14 */	add r3, r8, r3
/* 80289BF0 00286B50  54 6A 08 3C */	slwi r10, r3, 1
/* 80289BF4 00286B54  1C 65 00 09 */	mulli r3, r5, 9
/* 80289BF8 00286B58  39 4A 00 04 */	addi r10, r10, 4
/* 80289BFC 00286B5C  7C BB 50 AE */	lbzx r5, r27, r10
/* 80289C00 00286B60  51 65 17 7A */	rlwimi r5, r11, 2, 0x1d, 0x1d
/* 80289C04 00286B64  7C 00 1A 14 */	add r0, r0, r3
/* 80289C08 00286B68  54 03 08 3C */	slwi r3, r0, 1
/* 80289C0C 00286B6C  7C BB 51 AE */	stbx r5, r27, r10
/* 80289C10 00286B70  38 63 00 04 */	addi r3, r3, 4
/* 80289C14 00286B74  7C 1B 18 AE */	lbzx r0, r27, r3
/* 80289C18 00286B78  51 60 07 FE */	rlwimi r0, r11, 0, 0x1f, 0x1f
/* 80289C1C 00286B7C  7C 1B 19 AE */	stbx r0, r27, r3
lbl_80289C20:
/* 80289C20 00286B80  2C 09 00 00 */	cmpwi r9, 0
/* 80289C24 00286B84  7D 00 43 78 */	mr r0, r8
/* 80289C28 00286B88  7D 25 4B 78 */	mr r5, r9
/* 80289C2C 00286B8C  40 81 00 54 */	ble lbl_80289C80
/* 80289C30 00286B90  2C 06 00 02 */	cmpwi r6, 2
/* 80289C34 00286B94  41 82 00 4C */	beq lbl_80289C80
/* 80289C38 00286B98  1C 69 00 09 */	mulli r3, r9, 9
/* 80289C3C 00286B9C  7C 68 1A 14 */	add r3, r8, r3
/* 80289C40 00286BA0  54 63 08 3C */	slwi r3, r3, 1
/* 80289C44 00286BA4  38 63 00 04 */	addi r3, r3, 4
/* 80289C48 00286BA8  7C 7B 18 AE */	lbzx r3, r27, r3
/* 80289C4C 00286BAC  54 63 CF FF */	rlwinm. r3, r3, 0x19, 0x1f, 0x1f
/* 80289C50 00286BB0  41 82 00 30 */	beq lbl_80289C80
/* 80289C54 00286BB4  38 69 FF FF */	addi r3, r9, -1
/* 80289C58 00286BB8  1C 63 00 09 */	mulli r3, r3, 9
/* 80289C5C 00286BBC  7C 68 1A 14 */	add r3, r8, r3
/* 80289C60 00286BC0  54 63 08 3C */	slwi r3, r3, 1
/* 80289C64 00286BC4  38 63 00 05 */	addi r3, r3, 5
/* 80289C68 00286BC8  7C 7B 18 AE */	lbzx r3, r27, r3
/* 80289C6C 00286BCC  54 63 D7 FF */	rlwinm. r3, r3, 0x1a, 0x1f, 0x1f
/* 80289C70 00286BD0  41 82 00 10 */	beq lbl_80289C80
/* 80289C74 00286BD4  38 C0 00 00 */	li r6, 0
/* 80289C78 00286BD8  39 29 FF FF */	addi r9, r9, -1
/* 80289C7C 00286BDC  48 00 01 00 */	b lbl_80289D7C
lbl_80289C80:
/* 80289C80 00286BE0  2C 09 00 06 */	cmpwi r9, 6
/* 80289C84 00286BE4  40 80 00 54 */	bge lbl_80289CD8
/* 80289C88 00286BE8  2C 06 00 00 */	cmpwi r6, 0
/* 80289C8C 00286BEC  41 82 00 4C */	beq lbl_80289CD8
/* 80289C90 00286BF0  1C 69 00 09 */	mulli r3, r9, 9
/* 80289C94 00286BF4  7C 68 1A 14 */	add r3, r8, r3
/* 80289C98 00286BF8  54 63 08 3C */	slwi r3, r3, 1
/* 80289C9C 00286BFC  38 63 00 04 */	addi r3, r3, 4
/* 80289CA0 00286C00  7C 7B 18 AE */	lbzx r3, r27, r3
/* 80289CA4 00286C04  54 63 DF FF */	rlwinm. r3, r3, 0x1b, 0x1f, 0x1f
/* 80289CA8 00286C08  41 82 00 30 */	beq lbl_80289CD8
/* 80289CAC 00286C0C  38 69 00 01 */	addi r3, r9, 1
/* 80289CB0 00286C10  1C 63 00 09 */	mulli r3, r3, 9
/* 80289CB4 00286C14  7C 68 1A 14 */	add r3, r8, r3
/* 80289CB8 00286C18  54 63 08 3C */	slwi r3, r3, 1
/* 80289CBC 00286C1C  38 63 00 05 */	addi r3, r3, 5
/* 80289CC0 00286C20  7C 7B 18 AE */	lbzx r3, r27, r3
/* 80289CC4 00286C24  54 63 D7 FF */	rlwinm. r3, r3, 0x1a, 0x1f, 0x1f
/* 80289CC8 00286C28  41 82 00 10 */	beq lbl_80289CD8
/* 80289CCC 00286C2C  38 C0 00 02 */	li r6, 2
/* 80289CD0 00286C30  39 29 00 01 */	addi r9, r9, 1
/* 80289CD4 00286C34  48 00 00 A8 */	b lbl_80289D7C
lbl_80289CD8:
/* 80289CD8 00286C38  2C 08 00 00 */	cmpwi r8, 0
/* 80289CDC 00286C3C  40 81 00 4C */	ble lbl_80289D28
/* 80289CE0 00286C40  2C 06 00 01 */	cmpwi r6, 1
/* 80289CE4 00286C44  41 82 00 44 */	beq lbl_80289D28
/* 80289CE8 00286C48  1C 69 00 09 */	mulli r3, r9, 9
/* 80289CEC 00286C4C  7D 48 1A 14 */	add r10, r8, r3
/* 80289CF0 00286C50  55 43 08 3C */	slwi r3, r10, 1
/* 80289CF4 00286C54  38 63 00 04 */	addi r3, r3, 4
/* 80289CF8 00286C58  7C 7B 18 AE */	lbzx r3, r27, r3
/* 80289CFC 00286C5C  54 63 E7 FF */	rlwinm. r3, r3, 0x1c, 0x1f, 0x1f
/* 80289D00 00286C60  41 82 00 28 */	beq lbl_80289D28
/* 80289D04 00286C64  38 6A FF FF */	addi r3, r10, -1
/* 80289D08 00286C68  54 63 08 3C */	slwi r3, r3, 1
/* 80289D0C 00286C6C  38 63 00 05 */	addi r3, r3, 5
/* 80289D10 00286C70  7C 7B 18 AE */	lbzx r3, r27, r3
/* 80289D14 00286C74  54 63 D7 FF */	rlwinm. r3, r3, 0x1a, 0x1f, 0x1f
/* 80289D18 00286C78  41 82 00 10 */	beq lbl_80289D28
/* 80289D1C 00286C7C  38 C0 00 03 */	li r6, 3
/* 80289D20 00286C80  39 08 FF FF */	addi r8, r8, -1
/* 80289D24 00286C84  48 00 00 58 */	b lbl_80289D7C
lbl_80289D28:
/* 80289D28 00286C88  2C 08 00 08 */	cmpwi r8, 8
/* 80289D2C 00286C8C  40 80 01 B8 */	bge lbl_80289EE4
/* 80289D30 00286C90  2C 06 00 03 */	cmpwi r6, 3
/* 80289D34 00286C94  41 82 01 B0 */	beq lbl_80289EE4
/* 80289D38 00286C98  1C 69 00 09 */	mulli r3, r9, 9
/* 80289D3C 00286C9C  7C C8 1A 14 */	add r6, r8, r3
/* 80289D40 00286CA0  54 C3 08 3C */	slwi r3, r6, 1
/* 80289D44 00286CA4  38 63 00 04 */	addi r3, r3, 4
/* 80289D48 00286CA8  7C 7B 18 AE */	lbzx r3, r27, r3
/* 80289D4C 00286CAC  54 63 D7 FF */	rlwinm. r3, r3, 0x1a, 0x1f, 0x1f
/* 80289D50 00286CB0  41 82 01 94 */	beq lbl_80289EE4
/* 80289D54 00286CB4  38 66 00 01 */	addi r3, r6, 1
/* 80289D58 00286CB8  54 63 08 3C */	slwi r3, r3, 1
/* 80289D5C 00286CBC  38 63 00 05 */	addi r3, r3, 5
/* 80289D60 00286CC0  7C 7B 18 AE */	lbzx r3, r27, r3
/* 80289D64 00286CC4  54 63 D7 FF */	rlwinm. r3, r3, 0x1a, 0x1f, 0x1f
/* 80289D68 00286CC8  41 82 01 7C */	beq lbl_80289EE4
/* 80289D6C 00286CCC  38 C0 00 01 */	li r6, 1
/* 80289D70 00286CD0  39 08 00 01 */	addi r8, r8, 1
/* 80289D74 00286CD4  48 00 00 08 */	b lbl_80289D7C
/* 80289D78 00286CD8  48 00 01 6C */	b lbl_80289EE4
lbl_80289D7C:
/* 80289D7C 00286CDC  7C 07 E0 00 */	cmpw r7, r28
/* 80289D80 00286CE0  41 82 00 0C */	beq lbl_80289D8C
/* 80289D84 00286CE4  7C 07 20 00 */	cmpw r7, r4
/* 80289D88 00286CE8  40 82 01 40 */	bne lbl_80289EC8
lbl_80289D8C:
/* 80289D8C 00286CEC  2C 00 00 00 */	cmpwi r0, 0
/* 80289D90 00286CF0  41 82 00 1C */	beq lbl_80289DAC
/* 80289D94 00286CF4  2C 05 00 00 */	cmpwi r5, 0
/* 80289D98 00286CF8  41 82 00 14 */	beq lbl_80289DAC
/* 80289D9C 00286CFC  2C 00 00 08 */	cmpwi r0, 8
/* 80289DA0 00286D00  41 82 00 0C */	beq lbl_80289DAC
/* 80289DA4 00286D04  2C 05 00 06 */	cmpwi r5, 6
/* 80289DA8 00286D08  40 82 00 1C */	bne lbl_80289DC4
lbl_80289DAC:
/* 80289DAC 00286D0C  7C 07 E0 00 */	cmpw r7, r28
/* 80289DB0 00286D10  40 82 00 0C */	bne lbl_80289DBC
/* 80289DB4 00286D14  3B 9C 00 01 */	addi r28, r28, 1
/* 80289DB8 00286D18  48 00 01 10 */	b lbl_80289EC8
lbl_80289DBC:
/* 80289DBC 00286D1C  38 84 00 01 */	addi r4, r4, 1
/* 80289DC0 00286D20  48 00 01 08 */	b lbl_80289EC8
lbl_80289DC4:
/* 80289DC4 00286D24  1C 65 00 09 */	mulli r3, r5, 9
/* 80289DC8 00286D28  39 60 00 01 */	li r11, 1
/* 80289DCC 00286D2C  2C 06 00 02 */	cmpwi r6, 2
/* 80289DD0 00286D30  7C 60 1A 14 */	add r3, r0, r3
/* 80289DD4 00286D34  54 63 08 3C */	slwi r3, r3, 1
/* 80289DD8 00286D38  7C 7B 1A 14 */	add r3, r27, r3
/* 80289DDC 00286D3C  89 43 00 05 */	lbz r10, 5(r3)
/* 80289DE0 00286D40  51 6A 3E 30 */	rlwimi r10, r11, 7, 0x18, 0x18
/* 80289DE4 00286D44  99 43 00 05 */	stb r10, 5(r3)
/* 80289DE8 00286D48  41 82 00 84 */	beq lbl_80289E6C
/* 80289DEC 00286D4C  40 80 00 14 */	bge lbl_80289E00
/* 80289DF0 00286D50  2C 06 00 00 */	cmpwi r6, 0
/* 80289DF4 00286D54  41 82 00 18 */	beq lbl_80289E0C
/* 80289DF8 00286D58  40 80 00 44 */	bge lbl_80289E3C
/* 80289DFC 00286D5C  48 00 00 CC */	b lbl_80289EC8
lbl_80289E00:
/* 80289E00 00286D60  2C 06 00 04 */	cmpwi r6, 4
/* 80289E04 00286D64  40 80 00 C4 */	bge lbl_80289EC8
/* 80289E08 00286D68  48 00 00 94 */	b lbl_80289E9C
lbl_80289E0C:
/* 80289E0C 00286D6C  1D 49 00 09 */	mulli r10, r9, 9
/* 80289E10 00286D70  39 80 00 00 */	li r12, 0
/* 80289E14 00286D74  7D 48 52 14 */	add r10, r8, r10
/* 80289E18 00286D78  55 4A 08 3C */	slwi r10, r10, 1
/* 80289E1C 00286D7C  39 6A 00 04 */	addi r11, r10, 4
/* 80289E20 00286D80  7D 5B 58 AE */	lbzx r10, r27, r11
/* 80289E24 00286D84  51 8A 2E B4 */	rlwimi r10, r12, 5, 0x1a, 0x1a
/* 80289E28 00286D88  7D 5B 59 AE */	stbx r10, r27, r11
/* 80289E2C 00286D8C  89 43 00 04 */	lbz r10, 4(r3)
/* 80289E30 00286D90  51 8A 3E 30 */	rlwimi r10, r12, 7, 0x18, 0x18
/* 80289E34 00286D94  99 43 00 04 */	stb r10, 4(r3)
/* 80289E38 00286D98  48 00 00 90 */	b lbl_80289EC8
lbl_80289E3C:
/* 80289E3C 00286D9C  1D 49 00 09 */	mulli r10, r9, 9
/* 80289E40 00286DA0  39 80 00 00 */	li r12, 0
/* 80289E44 00286DA4  7D 48 52 14 */	add r10, r8, r10
/* 80289E48 00286DA8  55 4A 08 3C */	slwi r10, r10, 1
/* 80289E4C 00286DAC  39 6A 00 04 */	addi r11, r10, 4
/* 80289E50 00286DB0  7D 5B 58 AE */	lbzx r10, r27, r11
/* 80289E54 00286DB4  51 8A 26 F6 */	rlwimi r10, r12, 4, 0x1b, 0x1b
/* 80289E58 00286DB8  7D 5B 59 AE */	stbx r10, r27, r11
/* 80289E5C 00286DBC  89 43 00 04 */	lbz r10, 4(r3)
/* 80289E60 00286DC0  51 8A 36 72 */	rlwimi r10, r12, 6, 0x19, 0x19
/* 80289E64 00286DC4  99 43 00 04 */	stb r10, 4(r3)
/* 80289E68 00286DC8  48 00 00 60 */	b lbl_80289EC8
lbl_80289E6C:
/* 80289E6C 00286DCC  1D 49 00 09 */	mulli r10, r9, 9
/* 80289E70 00286DD0  39 80 00 00 */	li r12, 0
/* 80289E74 00286DD4  7D 48 52 14 */	add r10, r8, r10
/* 80289E78 00286DD8  55 4A 08 3C */	slwi r10, r10, 1
/* 80289E7C 00286DDC  39 6A 00 04 */	addi r11, r10, 4
/* 80289E80 00286DE0  7D 5B 58 AE */	lbzx r10, r27, r11
/* 80289E84 00286DE4  51 8A 3E 30 */	rlwimi r10, r12, 7, 0x18, 0x18
/* 80289E88 00286DE8  7D 5B 59 AE */	stbx r10, r27, r11
/* 80289E8C 00286DEC  89 43 00 04 */	lbz r10, 4(r3)
/* 80289E90 00286DF0  51 8A 2E B4 */	rlwimi r10, r12, 5, 0x1a, 0x1a
/* 80289E94 00286DF4  99 43 00 04 */	stb r10, 4(r3)
/* 80289E98 00286DF8  48 00 00 30 */	b lbl_80289EC8
lbl_80289E9C:
/* 80289E9C 00286DFC  1D 49 00 09 */	mulli r10, r9, 9
/* 80289EA0 00286E00  39 80 00 00 */	li r12, 0
/* 80289EA4 00286E04  7D 48 52 14 */	add r10, r8, r10
/* 80289EA8 00286E08  55 4A 08 3C */	slwi r10, r10, 1
/* 80289EAC 00286E0C  39 6A 00 04 */	addi r11, r10, 4
/* 80289EB0 00286E10  7D 5B 58 AE */	lbzx r10, r27, r11
/* 80289EB4 00286E14  51 8A 36 72 */	rlwimi r10, r12, 6, 0x19, 0x19
/* 80289EB8 00286E18  7D 5B 59 AE */	stbx r10, r27, r11
/* 80289EBC 00286E1C  89 43 00 04 */	lbz r10, 4(r3)
/* 80289EC0 00286E20  51 8A 26 F6 */	rlwimi r10, r12, 4, 0x1b, 0x1b
/* 80289EC4 00286E24  99 43 00 04 */	stb r10, 4(r3)
lbl_80289EC8:
/* 80289EC8 00286E28  38 E7 00 01 */	addi r7, r7, 1
lbl_80289ECC:
/* 80289ECC 00286E2C  80 7B 00 8C */	lwz r3, 0x8c(r27)
/* 80289ED0 00286E30  7C 08 18 00 */	cmpw r8, r3
/* 80289ED4 00286E34  40 82 FC 10 */	bne lbl_80289AE4
/* 80289ED8 00286E38  80 7B 00 90 */	lwz r3, 0x90(r27)
/* 80289EDC 00286E3C  7C 09 18 00 */	cmpw r9, r3
/* 80289EE0 00286E40  40 82 FC 04 */	bne lbl_80289AE4
lbl_80289EE4:
/* 80289EE4 00286E44  BB 61 00 0C */	lmw r27, 0xc(r1)
/* 80289EE8 00286E48  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80289EEC 00286E4C  7C 08 03 A6 */	mtlr r0
/* 80289EF0 00286E50  38 21 00 20 */	addi r1, r1, 0x20
/* 80289EF4 00286E54  4E 80 00 20 */	blr

.global GetCell__10CMazeStateFUiUi
GetCell__10CMazeStateFUiUi:
/* 80289EF8 00286E58  1C 05 00 09 */	mulli r0, r5, 9
/* 80289EFC 00286E5C  7C 65 1B 78 */	mr r5, r3
/* 80289F00 00286E60  7C 04 02 14 */	add r0, r4, r0
/* 80289F04 00286E64  54 03 08 3C */	slwi r3, r0, 1
/* 80289F08 00286E68  38 63 00 04 */	addi r3, r3, 4
/* 80289F0C 00286E6C  7C 65 1A 14 */	add r3, r5, r3
/* 80289F10 00286E70  4E 80 00 20 */	blr

.global GetCell__10CMazeStateCFUiUi
GetCell__10CMazeStateCFUiUi:
/* 80289F14 00286E74  1C 05 00 09 */	mulli r0, r5, 9
/* 80289F18 00286E78  7C 65 1B 78 */	mr r5, r3
/* 80289F1C 00286E7C  7C 04 02 14 */	add r0, r4, r0
/* 80289F20 00286E80  54 03 08 3C */	slwi r3, r0, 1
/* 80289F24 00286E84  38 63 00 04 */	addi r3, r3, 4
/* 80289F28 00286E88  7C 65 1A 14 */	add r3, r5, r3
/* 80289F2C 00286E8C  4E 80 00 20 */	blr

.global Reset__10CMazeStateFi
Reset__10CMazeStateFi:
/* 80289F30 00286E90  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80289F34 00286E94  7C 08 02 A6 */	mflr r0
/* 80289F38 00286E98  90 01 00 34 */	stw r0, 0x34(r1)
/* 80289F3C 00286E9C  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 80289F40 00286EA0  3B E0 00 3E */	li r31, 0x3e
/* 80289F44 00286EA4  93 C1 00 28 */	stw r30, 0x28(r1)
/* 80289F48 00286EA8  3B C0 00 00 */	li r30, 0
/* 80289F4C 00286EAC  93 A1 00 24 */	stw r29, 0x24(r1)
/* 80289F50 00286EB0  7C 7D 1B 78 */	mr r29, r3
/* 80289F54 00286EB4  38 61 00 0C */	addi r3, r1, 0xc
/* 80289F58 00286EB8  93 81 00 20 */	stw r28, 0x20(r1)
/* 80289F5C 00286EBC  48 08 86 91 */	bl __ct__9CRandom16FUi
/* 80289F60 00286EC0  80 81 00 0C */	lwz r4, 0xc(r1)
/* 80289F64 00286EC4  38 C0 00 00 */	li r6, 0
/* 80289F68 00286EC8  38 00 00 07 */	li r0, 7
/* 80289F6C 00286ECC  7F A3 EB 78 */	mr r3, r29
/* 80289F70 00286ED0  90 9D 00 00 */	stw r4, 0(r29)
/* 80289F74 00286ED4  38 80 00 00 */	li r4, 0
/* 80289F78 00286ED8  88 BD 00 94 */	lbz r5, 0x94(r29)
/* 80289F7C 00286EDC  50 C5 3E 30 */	rlwimi r5, r6, 7, 0x18, 0x18
/* 80289F80 00286EE0  98 BD 00 94 */	stb r5, 0x94(r29)
/* 80289F84 00286EE4  7C 09 03 A6 */	mtctr r0
lbl_80289F88:
/* 80289F88 00286EE8  88 01 00 09 */	lbz r0, 9(r1)
/* 80289F8C 00286EEC  39 40 00 00 */	li r10, 0
/* 80289F90 00286EF0  51 40 2E B4 */	rlwimi r0, r10, 5, 0x1a, 0x1a
/* 80289F94 00286EF4  88 E1 00 08 */	lbz r7, 8(r1)
/* 80289F98 00286EF8  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 80289F9C 00286EFC  98 01 00 09 */	stb r0, 9(r1)
/* 80289FA0 00286F00  50 05 0E 72 */	rlwimi r5, r0, 1, 0x19, 0x19
/* 80289FA4 00286F04  39 60 00 00 */	li r11, 0
/* 80289FA8 00286F08  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 80289FAC 00286F0C  98 A1 00 09 */	stb r5, 9(r1)
/* 80289FB0 00286F10  50 A0 0E 30 */	rlwimi r0, r5, 1, 0x18, 0x18
/* 80289FB4 00286F14  38 C0 00 00 */	li r6, 0
/* 80289FB8 00286F18  50 07 CF FE */	rlwimi r7, r0, 0x19, 0x1f, 0x1f
/* 80289FBC 00286F1C  98 01 00 09 */	stb r0, 9(r1)
/* 80289FC0 00286F20  54 EA 07 FE */	clrlwi r10, r7, 0x1f
/* 80289FC4 00286F24  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 80289FC8 00286F28  98 E1 00 08 */	stb r7, 8(r1)
/* 80289FCC 00286F2C  54 E7 06 3E */	clrlwi r7, r7, 0x18
/* 80289FD0 00286F30  51 47 0F BC */	rlwimi r7, r10, 1, 0x1e, 0x1e
/* 80289FD4 00286F34  51 65 2E B4 */	rlwimi r5, r11, 5, 0x1a, 0x1a
/* 80289FD8 00286F38  54 E8 06 3E */	clrlwi r8, r7, 0x18
/* 80289FDC 00286F3C  98 E1 00 08 */	stb r7, 8(r1)
/* 80289FE0 00286F40  50 E8 0F 7A */	rlwimi r8, r7, 1, 0x1d, 0x1d
/* 80289FE4 00286F44  54 AB DF FE */	rlwinm r11, r5, 0x1b, 0x1f, 0x1f
/* 80289FE8 00286F48  55 07 06 3E */	clrlwi r7, r8, 0x18
/* 80289FEC 00286F4C  99 01 00 08 */	stb r8, 8(r1)
/* 80289FF0 00286F50  51 07 0F 38 */	rlwimi r7, r8, 1, 0x1c, 0x1c
/* 80289FF4 00286F54  98 A1 00 09 */	stb r5, 9(r1)
/* 80289FF8 00286F58  54 EA EF FE */	rlwinm r10, r7, 0x1d, 0x1f, 0x1f
/* 80289FFC 00286F5C  54 A5 06 3E */	clrlwi r5, r5, 0x18
/* 8028A000 00286F60  51 65 36 72 */	rlwimi r5, r11, 6, 0x19, 0x19
/* 8028A004 00286F64  98 E1 00 08 */	stb r7, 8(r1)
/* 8028A008 00286F68  54 E7 06 3E */	clrlwi r7, r7, 0x18
/* 8028A00C 00286F6C  51 47 26 F6 */	rlwimi r7, r10, 4, 0x1b, 0x1b
/* 8028A010 00286F70  54 A9 06 3E */	clrlwi r9, r5, 0x18
/* 8028A014 00286F74  98 E1 00 08 */	stb r7, 8(r1)
/* 8028A018 00286F78  54 EA E7 FE */	rlwinm r10, r7, 0x1c, 0x1f, 0x1f
/* 8028A01C 00286F7C  54 E7 06 3E */	clrlwi r7, r7, 0x18
/* 8028A020 00286F80  50 A9 0E 30 */	rlwimi r9, r5, 1, 0x18, 0x18
/* 8028A024 00286F84  51 47 2E B4 */	rlwimi r7, r10, 5, 0x1a, 0x1a
/* 8028A028 00286F88  98 A1 00 09 */	stb r5, 9(r1)
/* 8028A02C 00286F8C  54 EA DF FE */	rlwinm r10, r7, 0x1b, 0x1f, 0x1f
/* 8028A030 00286F90  54 E5 06 3E */	clrlwi r5, r7, 0x18
/* 8028A034 00286F94  98 E1 00 08 */	stb r7, 8(r1)
/* 8028A038 00286F98  51 45 36 72 */	rlwimi r5, r10, 6, 0x19, 0x19
/* 8028A03C 00286F9C  55 27 06 3E */	clrlwi r7, r9, 0x18
/* 8028A040 00286FA0  54 AC 06 3E */	clrlwi r12, r5, 0x18
/* 8028A044 00286FA4  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A048 00286FA8  50 AC 0E 30 */	rlwimi r12, r5, 1, 0x18, 0x18
/* 8028A04C 00286FAC  50 C7 2E B4 */	rlwimi r7, r6, 5, 0x1a, 0x1a
/* 8028A050 00286FB0  55 88 06 3E */	clrlwi r8, r12, 0x18
/* 8028A054 00286FB4  99 21 00 09 */	stb r9, 9(r1)
/* 8028A058 00286FB8  51 28 CF FE */	rlwimi r8, r9, 0x19, 0x1f, 0x1f
/* 8028A05C 00286FBC  54 E5 06 3E */	clrlwi r5, r7, 0x18
/* 8028A060 00286FC0  99 81 00 08 */	stb r12, 8(r1)
/* 8028A064 00286FC4  50 E5 0E 72 */	rlwimi r5, r7, 1, 0x19, 0x19
/* 8028A068 00286FC8  55 0B 07 FE */	clrlwi r11, r8, 0x1f
/* 8028A06C 00286FCC  99 01 00 08 */	stb r8, 8(r1)
/* 8028A070 00286FD0  55 08 06 3E */	clrlwi r8, r8, 0x18
/* 8028A074 00286FD4  51 68 0F BC */	rlwimi r8, r11, 1, 0x1e, 0x1e
/* 8028A078 00286FD8  54 AA 06 3E */	clrlwi r10, r5, 0x18
/* 8028A07C 00286FDC  98 E1 00 09 */	stb r7, 9(r1)
/* 8028A080 00286FE0  55 0B FF FE */	rlwinm r11, r8, 0x1f, 0x1f, 0x1f
/* 8028A084 00286FE4  50 AA 0E 30 */	rlwimi r10, r5, 1, 0x18, 0x18
/* 8028A088 00286FE8  99 01 00 08 */	stb r8, 8(r1)
/* 8028A08C 00286FEC  55 08 06 3E */	clrlwi r8, r8, 0x18
/* 8028A090 00286FF0  51 68 17 7A */	rlwimi r8, r11, 2, 0x1d, 0x1d
/* 8028A094 00286FF4  99 83 00 04 */	stb r12, 4(r3)
/* 8028A098 00286FF8  55 0B F7 FE */	rlwinm r11, r8, 0x1e, 0x1f, 0x1f
/* 8028A09C 00286FFC  99 01 00 08 */	stb r8, 8(r1)
/* 8028A0A0 00287000  55 08 06 3E */	clrlwi r8, r8, 0x18
/* 8028A0A4 00287004  51 68 1F 38 */	rlwimi r8, r11, 3, 0x1c, 0x1c
/* 8028A0A8 00287008  55 07 06 3E */	clrlwi r7, r8, 0x18
/* 8028A0AC 0028700C  98 A1 00 09 */	stb r5, 9(r1)
/* 8028A0B0 00287010  51 07 0E F6 */	rlwimi r7, r8, 1, 0x1b, 0x1b
/* 8028A0B4 00287014  99 01 00 08 */	stb r8, 8(r1)
/* 8028A0B8 00287018  54 EB E7 FE */	rlwinm r11, r7, 0x1c, 0x1f, 0x1f
/* 8028A0BC 0028701C  98 E1 00 08 */	stb r7, 8(r1)
/* 8028A0C0 00287020  54 E7 06 3E */	clrlwi r7, r7, 0x18
/* 8028A0C4 00287024  51 67 2E B4 */	rlwimi r7, r11, 5, 0x1a, 0x1a
/* 8028A0C8 00287028  98 03 00 05 */	stb r0, 5(r3)
/* 8028A0CC 0028702C  54 E0 06 3E */	clrlwi r0, r7, 0x18
/* 8028A0D0 00287030  50 E0 0E 72 */	rlwimi r0, r7, 1, 0x19, 0x19
/* 8028A0D4 00287034  98 E1 00 08 */	stb r7, 8(r1)
/* 8028A0D8 00287038  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A0DC 0028703C  50 05 0E 30 */	rlwimi r5, r0, 1, 0x18, 0x18
/* 8028A0E0 00287040  98 01 00 08 */	stb r0, 8(r1)
/* 8028A0E4 00287044  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A0E8 00287048  51 40 CF FE */	rlwimi r0, r10, 0x19, 0x1f, 0x1f
/* 8028A0EC 0028704C  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A0F0 00287050  98 A3 00 06 */	stb r5, 6(r3)
/* 8028A0F4 00287054  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A0F8 00287058  50 05 0F BC */	rlwimi r5, r0, 1, 0x1e, 0x1e
/* 8028A0FC 0028705C  98 01 00 08 */	stb r0, 8(r1)
/* 8028A100 00287060  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A104 00287064  50 A0 0F 7A */	rlwimi r0, r5, 1, 0x1d, 0x1d
/* 8028A108 00287068  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A10C 0028706C  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A110 00287070  50 05 0F 38 */	rlwimi r5, r0, 1, 0x1c, 0x1c
/* 8028A114 00287074  98 01 00 08 */	stb r0, 8(r1)
/* 8028A118 00287078  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A11C 0028707C  50 A0 0E F6 */	rlwimi r0, r5, 1, 0x1b, 0x1b
/* 8028A120 00287080  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A124 00287084  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A128 00287088  50 05 0E B4 */	rlwimi r5, r0, 1, 0x1a, 0x1a
/* 8028A12C 0028708C  98 01 00 08 */	stb r0, 8(r1)
/* 8028A130 00287090  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A134 00287094  50 A0 0E 72 */	rlwimi r0, r5, 1, 0x19, 0x19
/* 8028A138 00287098  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A13C 0028709C  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A140 002870A0  50 05 0E 30 */	rlwimi r5, r0, 1, 0x18, 0x18
/* 8028A144 002870A4  98 01 00 08 */	stb r0, 8(r1)
/* 8028A148 002870A8  99 23 00 07 */	stb r9, 7(r3)
/* 8028A14C 002870AC  99 41 00 09 */	stb r10, 9(r1)
/* 8028A150 002870B0  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A154 002870B4  39 20 00 00 */	li r9, 0
/* 8028A158 002870B8  55 40 06 3E */	clrlwi r0, r10, 0x18
/* 8028A15C 002870BC  51 20 2E B4 */	rlwimi r0, r9, 5, 0x1a, 0x1a
/* 8028A160 002870C0  98 A3 00 08 */	stb r5, 8(r3)
/* 8028A164 002870C4  54 A8 06 3E */	clrlwi r8, r5, 0x18
/* 8028A168 002870C8  39 80 00 00 */	li r12, 0
/* 8028A16C 002870CC  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A170 002870D0  98 01 00 09 */	stb r0, 9(r1)
/* 8028A174 002870D4  50 05 0E 72 */	rlwimi r5, r0, 1, 0x19, 0x19
/* 8028A178 002870D8  38 C0 00 00 */	li r6, 0
/* 8028A17C 002870DC  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A180 002870E0  98 A1 00 09 */	stb r5, 9(r1)
/* 8028A184 002870E4  50 A0 0E 30 */	rlwimi r0, r5, 1, 0x18, 0x18
/* 8028A188 002870E8  50 08 CF FE */	rlwimi r8, r0, 0x19, 0x1f, 0x1f
/* 8028A18C 002870EC  98 01 00 09 */	stb r0, 9(r1)
/* 8028A190 002870F0  55 09 07 FE */	clrlwi r9, r8, 0x1f
/* 8028A194 002870F4  54 07 06 3E */	clrlwi r7, r0, 0x18
/* 8028A198 002870F8  99 01 00 08 */	stb r8, 8(r1)
/* 8028A19C 002870FC  55 08 06 3E */	clrlwi r8, r8, 0x18
/* 8028A1A0 00287100  51 28 0F BC */	rlwimi r8, r9, 1, 0x1e, 0x1e
/* 8028A1A4 00287104  51 87 2E B4 */	rlwimi r7, r12, 5, 0x1a, 0x1a
/* 8028A1A8 00287108  55 05 06 3E */	clrlwi r5, r8, 0x18
/* 8028A1AC 0028710C  99 01 00 08 */	stb r8, 8(r1)
/* 8028A1B0 00287110  51 05 0F 7A */	rlwimi r5, r8, 1, 0x1d, 0x1d
/* 8028A1B4 00287114  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A1B8 00287118  54 A9 F7 FE */	rlwinm r9, r5, 0x1e, 0x1f, 0x1f
/* 8028A1BC 0028711C  54 A8 06 3E */	clrlwi r8, r5, 0x18
/* 8028A1C0 00287120  54 E5 06 3E */	clrlwi r5, r7, 0x18
/* 8028A1C4 00287124  51 28 1F 38 */	rlwimi r8, r9, 3, 0x1c, 0x1c
/* 8028A1C8 00287128  98 E1 00 09 */	stb r7, 9(r1)
/* 8028A1CC 0028712C  50 E5 0E 72 */	rlwimi r5, r7, 1, 0x19, 0x19
/* 8028A1D0 00287130  55 07 06 3E */	clrlwi r7, r8, 0x18
/* 8028A1D4 00287134  99 01 00 08 */	stb r8, 8(r1)
/* 8028A1D8 00287138  51 07 0E F6 */	rlwimi r7, r8, 1, 0x1b, 0x1b
/* 8028A1DC 0028713C  54 AB 06 3E */	clrlwi r11, r5, 0x18
/* 8028A1E0 00287140  98 E1 00 08 */	stb r7, 8(r1)
/* 8028A1E4 00287144  54 E9 E7 FE */	rlwinm r9, r7, 0x1c, 0x1f, 0x1f
/* 8028A1E8 00287148  54 E7 06 3E */	clrlwi r7, r7, 0x18
/* 8028A1EC 0028714C  50 AB 0E 30 */	rlwimi r11, r5, 1, 0x18, 0x18
/* 8028A1F0 00287150  51 27 2E B4 */	rlwimi r7, r9, 5, 0x1a, 0x1a
/* 8028A1F4 00287154  99 43 00 09 */	stb r10, 9(r3)
/* 8028A1F8 00287158  54 E9 DF FE */	rlwinm r9, r7, 0x1b, 0x1f, 0x1f
/* 8028A1FC 0028715C  54 E8 06 3E */	clrlwi r8, r7, 0x18
/* 8028A200 00287160  98 E1 00 08 */	stb r7, 8(r1)
/* 8028A204 00287164  51 28 36 72 */	rlwimi r8, r9, 6, 0x19, 0x19
/* 8028A208 00287168  55 67 06 3E */	clrlwi r7, r11, 0x18
/* 8028A20C 0028716C  55 0A 06 3E */	clrlwi r10, r8, 0x18
/* 8028A210 00287170  99 01 00 08 */	stb r8, 8(r1)
/* 8028A214 00287174  51 0A 0E 30 */	rlwimi r10, r8, 1, 0x18, 0x18
/* 8028A218 00287178  50 C7 2E B4 */	rlwimi r7, r6, 5, 0x1a, 0x1a
/* 8028A21C 0028717C  55 48 06 3E */	clrlwi r8, r10, 0x18
/* 8028A220 00287180  99 43 00 0A */	stb r10, 0xa(r3)
/* 8028A224 00287184  51 68 CF FE */	rlwimi r8, r11, 0x19, 0x1f, 0x1f
/* 8028A228 00287188  98 A1 00 09 */	stb r5, 9(r1)
/* 8028A22C 0028718C  55 09 06 3E */	clrlwi r9, r8, 0x18
/* 8028A230 00287190  51 09 0F BC */	rlwimi r9, r8, 1, 0x1e, 0x1e
/* 8028A234 00287194  54 E5 06 3E */	clrlwi r5, r7, 0x18
/* 8028A238 00287198  99 41 00 08 */	stb r10, 8(r1)
/* 8028A23C 0028719C  55 2C FF FE */	rlwinm r12, r9, 0x1f, 0x1f, 0x1f
/* 8028A240 002871A0  50 E5 0E 72 */	rlwimi r5, r7, 1, 0x19, 0x19
/* 8028A244 002871A4  99 01 00 08 */	stb r8, 8(r1)
/* 8028A248 002871A8  54 A8 06 3E */	clrlwi r8, r5, 0x18
/* 8028A24C 002871AC  50 A8 0E 30 */	rlwimi r8, r5, 1, 0x18, 0x18
/* 8028A250 002871B0  99 21 00 08 */	stb r9, 8(r1)
/* 8028A254 002871B4  55 29 06 3E */	clrlwi r9, r9, 0x18
/* 8028A258 002871B8  51 89 17 7A */	rlwimi r9, r12, 2, 0x1d, 0x1d
/* 8028A25C 002871BC  55 2A 06 3E */	clrlwi r10, r9, 0x18
/* 8028A260 002871C0  99 61 00 09 */	stb r11, 9(r1)
/* 8028A264 002871C4  51 2A 0F 38 */	rlwimi r10, r9, 1, 0x1c, 0x1c
/* 8028A268 002871C8  99 21 00 08 */	stb r9, 8(r1)
/* 8028A26C 002871CC  55 49 06 3E */	clrlwi r9, r10, 0x18
/* 8028A270 002871D0  51 49 0E F6 */	rlwimi r9, r10, 1, 0x1b, 0x1b
/* 8028A274 002871D4  99 41 00 08 */	stb r10, 8(r1)
/* 8028A278 002871D8  55 2C E7 FE */	rlwinm r12, r9, 0x1c, 0x1f, 0x1f
/* 8028A27C 002871DC  99 21 00 08 */	stb r9, 8(r1)
/* 8028A280 002871E0  55 29 06 3E */	clrlwi r9, r9, 0x18
/* 8028A284 002871E4  51 89 2E B4 */	rlwimi r9, r12, 5, 0x1a, 0x1a
/* 8028A288 002871E8  98 E1 00 09 */	stb r7, 9(r1)
/* 8028A28C 002871EC  55 27 06 3E */	clrlwi r7, r9, 0x18
/* 8028A290 002871F0  51 27 0E 72 */	rlwimi r7, r9, 1, 0x19, 0x19
/* 8028A294 002871F4  99 21 00 08 */	stb r9, 8(r1)
/* 8028A298 002871F8  54 E9 06 3E */	clrlwi r9, r7, 0x18
/* 8028A29C 002871FC  50 E9 0E 30 */	rlwimi r9, r7, 1, 0x18, 0x18
/* 8028A2A0 00287200  98 E1 00 08 */	stb r7, 8(r1)
/* 8028A2A4 00287204  55 27 06 3E */	clrlwi r7, r9, 0x18
/* 8028A2A8 00287208  51 07 CF FE */	rlwimi r7, r8, 0x19, 0x1f, 0x1f
/* 8028A2AC 0028720C  98 A1 00 09 */	stb r5, 9(r1)
/* 8028A2B0 00287210  54 E5 06 3E */	clrlwi r5, r7, 0x18
/* 8028A2B4 00287214  50 E5 0F BC */	rlwimi r5, r7, 1, 0x1e, 0x1e
/* 8028A2B8 00287218  98 03 00 0B */	stb r0, 0xb(r3)
/* 8028A2BC 0028721C  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A2C0 00287220  50 A0 0F 7A */	rlwimi r0, r5, 1, 0x1d, 0x1d
/* 8028A2C4 00287224  99 21 00 08 */	stb r9, 8(r1)
/* 8028A2C8 00287228  98 E1 00 08 */	stb r7, 8(r1)
/* 8028A2CC 0028722C  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A2D0 00287230  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A2D4 00287234  50 05 0F 38 */	rlwimi r5, r0, 1, 0x1c, 0x1c
/* 8028A2D8 00287238  98 01 00 08 */	stb r0, 8(r1)
/* 8028A2DC 0028723C  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A2E0 00287240  50 A0 0E F6 */	rlwimi r0, r5, 1, 0x1b, 0x1b
/* 8028A2E4 00287244  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A2E8 00287248  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A2EC 0028724C  50 05 0E B4 */	rlwimi r5, r0, 1, 0x1a, 0x1a
/* 8028A2F0 00287250  98 01 00 08 */	stb r0, 8(r1)
/* 8028A2F4 00287254  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A2F8 00287258  50 A0 0E 72 */	rlwimi r0, r5, 1, 0x19, 0x19
/* 8028A2FC 0028725C  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A300 00287260  54 06 D7 FE */	rlwinm r6, r0, 0x1a, 0x1f, 0x1f
/* 8028A304 00287264  99 23 00 0C */	stb r9, 0xc(r3)
/* 8028A308 00287268  98 01 00 08 */	stb r0, 8(r1)
/* 8028A30C 0028726C  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8028A310 00287270  50 C0 3E 30 */	rlwimi r0, r6, 7, 0x18, 0x18
/* 8028A314 00287274  99 63 00 0D */	stb r11, 0xd(r3)
/* 8028A318 00287278  99 01 00 09 */	stb r8, 9(r1)
/* 8028A31C 0028727C  98 01 00 08 */	stb r0, 8(r1)
/* 8028A320 00287280  39 40 00 00 */	li r10, 0
/* 8028A324 00287284  55 05 06 3E */	clrlwi r5, r8, 0x18
/* 8028A328 00287288  51 45 2E B4 */	rlwimi r5, r10, 5, 0x1a, 0x1a
/* 8028A32C 0028728C  98 03 00 0E */	stb r0, 0xe(r3)
/* 8028A330 00287290  54 06 06 3E */	clrlwi r6, r0, 0x18
/* 8028A334 00287294  38 E0 00 00 */	li r7, 0
/* 8028A338 00287298  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A33C 0028729C  98 A1 00 09 */	stb r5, 9(r1)
/* 8028A340 002872A0  50 A0 0E 72 */	rlwimi r0, r5, 1, 0x19, 0x19
/* 8028A344 002872A4  38 84 00 08 */	addi r4, r4, 8
/* 8028A348 002872A8  54 09 06 3E */	clrlwi r9, r0, 0x18
/* 8028A34C 002872AC  98 01 00 09 */	stb r0, 9(r1)
/* 8028A350 002872B0  50 09 0E 30 */	rlwimi r9, r0, 1, 0x18, 0x18
/* 8028A354 002872B4  51 26 CF FE */	rlwimi r6, r9, 0x19, 0x1f, 0x1f
/* 8028A358 002872B8  99 03 00 0F */	stb r8, 0xf(r3)
/* 8028A35C 002872BC  54 CA 07 FE */	clrlwi r10, r6, 0x1f
/* 8028A360 002872C0  55 20 06 3E */	clrlwi r0, r9, 0x18
/* 8028A364 002872C4  98 C1 00 08 */	stb r6, 8(r1)
/* 8028A368 002872C8  54 C6 06 3E */	clrlwi r6, r6, 0x18
/* 8028A36C 002872CC  51 46 0F BC */	rlwimi r6, r10, 1, 0x1e, 0x1e
/* 8028A370 002872D0  50 E0 2E B4 */	rlwimi r0, r7, 5, 0x1a, 0x1a
/* 8028A374 002872D4  54 C5 06 3E */	clrlwi r5, r6, 0x18
/* 8028A378 002872D8  98 C1 00 08 */	stb r6, 8(r1)
/* 8028A37C 002872DC  50 C5 0F 7A */	rlwimi r5, r6, 1, 0x1d, 0x1d
/* 8028A380 002872E0  99 21 00 09 */	stb r9, 9(r1)
/* 8028A384 002872E4  54 AA F7 FE */	rlwinm r10, r5, 0x1e, 0x1f, 0x1f
/* 8028A388 002872E8  54 A6 06 3E */	clrlwi r6, r5, 0x18
/* 8028A38C 002872EC  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A390 002872F0  51 46 1F 38 */	rlwimi r6, r10, 3, 0x1c, 0x1c
/* 8028A394 002872F4  54 C8 06 3E */	clrlwi r8, r6, 0x18
/* 8028A398 002872F8  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A39C 002872FC  98 C1 00 08 */	stb r6, 8(r1)
/* 8028A3A0 00287300  50 C8 0E F6 */	rlwimi r8, r6, 1, 0x1b, 0x1b
/* 8028A3A4 00287304  50 05 0E 72 */	rlwimi r5, r0, 1, 0x19, 0x19
/* 8028A3A8 00287308  98 01 00 09 */	stb r0, 9(r1)
/* 8028A3AC 0028730C  55 00 06 3E */	clrlwi r0, r8, 0x18
/* 8028A3B0 00287310  54 A6 06 3E */	clrlwi r6, r5, 0x18
/* 8028A3B4 00287314  99 01 00 08 */	stb r8, 8(r1)
/* 8028A3B8 00287318  51 00 0E B4 */	rlwimi r0, r8, 1, 0x1a, 0x1a
/* 8028A3BC 0028731C  54 08 06 3E */	clrlwi r8, r0, 0x18
/* 8028A3C0 00287320  50 A6 0E 30 */	rlwimi r6, r5, 1, 0x18, 0x18
/* 8028A3C4 00287324  98 01 00 08 */	stb r0, 8(r1)
/* 8028A3C8 00287328  50 08 0E 72 */	rlwimi r8, r0, 1, 0x19, 0x19
/* 8028A3CC 0028732C  55 00 06 3E */	clrlwi r0, r8, 0x18
/* 8028A3D0 00287330  51 00 0E 30 */	rlwimi r0, r8, 1, 0x18, 0x18
/* 8028A3D4 00287334  99 01 00 08 */	stb r8, 8(r1)
/* 8028A3D8 00287338  54 08 06 3E */	clrlwi r8, r0, 0x18
/* 8028A3DC 0028733C  98 03 00 10 */	stb r0, 0x10(r3)
/* 8028A3E0 00287340  50 C8 CF FE */	rlwimi r8, r6, 0x19, 0x1f, 0x1f
/* 8028A3E4 00287344  98 01 00 08 */	stb r0, 8(r1)
/* 8028A3E8 00287348  55 00 06 3E */	clrlwi r0, r8, 0x18
/* 8028A3EC 0028734C  51 00 0F BC */	rlwimi r0, r8, 1, 0x1e, 0x1e
/* 8028A3F0 00287350  98 A1 00 09 */	stb r5, 9(r1)
/* 8028A3F4 00287354  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A3F8 00287358  50 05 0F 7A */	rlwimi r5, r0, 1, 0x1d, 0x1d
/* 8028A3FC 0028735C  99 01 00 08 */	stb r8, 8(r1)
/* 8028A400 00287360  98 01 00 08 */	stb r0, 8(r1)
/* 8028A404 00287364  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A408 00287368  50 A0 0F 38 */	rlwimi r0, r5, 1, 0x1c, 0x1c
/* 8028A40C 0028736C  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A410 00287370  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A414 00287374  50 05 0E F6 */	rlwimi r5, r0, 1, 0x1b, 0x1b
/* 8028A418 00287378  98 01 00 08 */	stb r0, 8(r1)
/* 8028A41C 0028737C  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A420 00287380  50 A0 0E B4 */	rlwimi r0, r5, 1, 0x1a, 0x1a
/* 8028A424 00287384  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A428 00287388  54 05 06 3E */	clrlwi r5, r0, 0x18
/* 8028A42C 0028738C  50 05 0E 72 */	rlwimi r5, r0, 1, 0x19, 0x19
/* 8028A430 00287390  98 01 00 08 */	stb r0, 8(r1)
/* 8028A434 00287394  54 A0 06 3E */	clrlwi r0, r5, 0x18
/* 8028A438 00287398  50 A0 0E 30 */	rlwimi r0, r5, 1, 0x18, 0x18
/* 8028A43C 0028739C  99 23 00 11 */	stb r9, 0x11(r3)
/* 8028A440 002873A0  98 A1 00 08 */	stb r5, 8(r1)
/* 8028A444 002873A4  98 03 00 12 */	stb r0, 0x12(r3)
/* 8028A448 002873A8  98 C3 00 13 */	stb r6, 0x13(r3)
/* 8028A44C 002873AC  38 63 00 10 */	addi r3, r3, 0x10
/* 8028A450 002873B0  98 C1 00 09 */	stb r6, 9(r1)
/* 8028A454 002873B4  98 01 00 08 */	stb r0, 8(r1)
/* 8028A458 002873B8  42 00 FB 30 */	bdnz lbl_80289F88
/* 8028A45C 002873BC  54 83 08 3C */	slwi r3, r4, 1
/* 8028A460 002873C0  20 04 00 3F */	subfic r0, r4, 0x3f
/* 8028A464 002873C4  7C BD 1A 14 */	add r5, r29, r3
/* 8028A468 002873C8  7C 09 03 A6 */	mtctr r0
/* 8028A46C 002873CC  2C 04 00 3F */	cmpwi r4, 0x3f
/* 8028A470 002873D0  40 80 04 00 */	bge lbl_8028A870
lbl_8028A474:
/* 8028A474 002873D4  88 61 00 09 */	lbz r3, 9(r1)
/* 8028A478 002873D8  38 80 00 00 */	li r4, 0
/* 8028A47C 002873DC  50 83 2E B4 */	rlwimi r3, r4, 5, 0x1a, 0x1a
/* 8028A480 002873E0  88 01 00 08 */	lbz r0, 8(r1)
/* 8028A484 002873E4  54 64 DF FE */	rlwinm r4, r3, 0x1b, 0x1f, 0x1f
/* 8028A488 002873E8  98 61 00 09 */	stb r3, 9(r1)
/* 8028A48C 002873EC  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8028A490 002873F0  50 83 36 72 */	rlwimi r3, r4, 6, 0x19, 0x19
/* 8028A494 002873F4  54 64 D7 FE */	rlwinm r4, r3, 0x1a, 0x1f, 0x1f
/* 8028A498 002873F8  98 61 00 09 */	stb r3, 9(r1)
/* 8028A49C 002873FC  54 63 06 3E */	clrlwi r3, r3, 0x18
/* 8028A4A0 00287400  50 83 3E 30 */	rlwimi r3, r4, 7, 0x18, 0x18
/* 8028A4A4 00287404  50 60 CF FE */	rlwimi r0, r3, 0x19, 0x1f, 0x1f
/* 8028A4A8 00287408  98 61 00 09 */	stb r3, 9(r1)
/* 8028A4AC 0028740C  54 04 07 FE */	clrlwi r4, r0, 0x1f
/* 8028A4B0 00287410  98 01 00 08 */	stb r0, 8(r1)
/* 8028A4B4 00287414  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8028A4B8 00287418  50 80 0F BC */	rlwimi r0, r4, 1, 0x1e, 0x1e
/* 8028A4BC 0028741C  54 04 FF FE */	rlwinm r4, r0, 0x1f, 0x1f, 0x1f
/* 8028A4C0 00287420  98 01 00 08 */	stb r0, 8(r1)
/* 8028A4C4 00287424  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8028A4C8 00287428  50 80 17 7A */	rlwimi r0, r4, 2, 0x1d, 0x1d
/* 8028A4CC 0028742C  54 04 F7 FE */	rlwinm r4, r0, 0x1e, 0x1f, 0x1f
/* 8028A4D0 00287430  98 01 00 08 */	stb r0, 8(r1)
/* 8028A4D4 00287434  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8028A4D8 00287438  50 80 1F 38 */	rlwimi r0, r4, 3, 0x1c, 0x1c
/* 8028A4DC 0028743C  54 04 EF FE */	rlwinm r4, r0, 0x1d, 0x1f, 0x1f
/* 8028A4E0 00287440  98 01 00 08 */	stb r0, 8(r1)
/* 8028A4E4 00287444  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8028A4E8 00287448  50 80 26 F6 */	rlwimi r0, r4, 4, 0x1b, 0x1b
/* 8028A4EC 0028744C  54 04 E7 FE */	rlwinm r4, r0, 0x1c, 0x1f, 0x1f
/* 8028A4F0 00287450  98 01 00 08 */	stb r0, 8(r1)
/* 8028A4F4 00287454  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8028A4F8 00287458  50 80 2E B4 */	rlwimi r0, r4, 5, 0x1a, 0x1a
/* 8028A4FC 0028745C  54 04 DF FE */	rlwinm r4, r0, 0x1b, 0x1f, 0x1f
/* 8028A500 00287460  98 01 00 08 */	stb r0, 8(r1)
/* 8028A504 00287464  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8028A508 00287468  50 80 36 72 */	rlwimi r0, r4, 6, 0x19, 0x19
/* 8028A50C 0028746C  54 04 D7 FE */	rlwinm r4, r0, 0x1a, 0x1f, 0x1f
/* 8028A510 00287470  98 01 00 08 */	stb r0, 8(r1)
/* 8028A514 00287474  54 00 06 3E */	clrlwi r0, r0, 0x18
/* 8028A518 00287478  50 80 3E 30 */	rlwimi r0, r4, 7, 0x18, 0x18
/* 8028A51C 0028747C  98 05 00 04 */	stb r0, 4(r5)
/* 8028A520 00287480  98 65 00 05 */	stb r3, 5(r5)
/* 8028A524 00287484  38 A5 00 02 */	addi r5, r5, 2
/* 8028A528 00287488  98 01 00 08 */	stb r0, 8(r1)
/* 8028A52C 0028748C  42 00 FF 48 */	bdnz lbl_8028A474
/* 8028A530 00287490  48 00 03 40 */	b lbl_8028A870
lbl_8028A534:
/* 8028A534 00287494  34 1E FF F7 */	addic. r0, r30, -9
/* 8028A538 00287498  3B 80 00 00 */	li r28, 0
/* 8028A53C 0028749C  40 81 00 58 */	ble lbl_8028A594
/* 8028A540 002874A0  38 1E FF F7 */	addi r0, r30, -9
/* 8028A544 002874A4  38 80 00 00 */	li r4, 0
/* 8028A548 002874A8  54 03 08 3C */	slwi r3, r0, 1
/* 8028A54C 002874AC  38 03 00 04 */	addi r0, r3, 4
/* 8028A550 002874B0  7C 7D 00 AE */	lbzx r3, r29, r0
/* 8028A554 002874B4  54 60 CF FF */	rlwinm. r0, r3, 0x19, 0x1f, 0x1f
/* 8028A558 002874B8  40 82 00 20 */	bne lbl_8028A578
/* 8028A55C 002874BC  54 60 D7 FF */	rlwinm. r0, r3, 0x1a, 0x1f, 0x1f
/* 8028A560 002874C0  40 82 00 18 */	bne lbl_8028A578
/* 8028A564 002874C4  54 60 DF FF */	rlwinm. r0, r3, 0x1b, 0x1f, 0x1f
/* 8028A568 002874C8  40 82 00 10 */	bne lbl_8028A578
/* 8028A56C 002874CC  54 60 E7 FF */	rlwinm. r0, r3, 0x1c, 0x1f, 0x1f
/* 8028A570 002874D0  40 82 00 08 */	bne lbl_8028A578
/* 8028A574 002874D4  38 80 00 01 */	li r4, 1
lbl_8028A578:
/* 8028A578 002874D8  54 80 06 3F */	clrlwi. r0, r4, 0x18
/* 8028A57C 002874DC  41 82 00 18 */	beq lbl_8028A594
/* 8028A580 002874E0  57 80 10 3A */	slwi r0, r28, 2
/* 8028A584 002874E4  38 61 00 10 */	addi r3, r1, 0x10
/* 8028A588 002874E8  38 80 00 00 */	li r4, 0
/* 8028A58C 002874EC  3B 80 00 01 */	li r28, 1
/* 8028A590 002874F0  7C 83 01 2E */	stwx r4, r3, r0
lbl_8028A594:
/* 8028A594 002874F4  2C 1E 00 3D */	cmpwi r30, 0x3d
/* 8028A598 002874F8  40 80 00 7C */	bge lbl_8028A614
/* 8028A59C 002874FC  3C 60 38 E4 */	lis r3, 0x38E38E39@ha
/* 8028A5A0 00287500  38 9E 00 01 */	addi r4, r30, 1
/* 8028A5A4 00287504  38 03 8E 39 */	addi r0, r3, 0x38E38E39@l
/* 8028A5A8 00287508  7C 00 20 96 */	mulhw r0, r0, r4
/* 8028A5AC 0028750C  7C 00 0E 70 */	srawi r0, r0, 1
/* 8028A5B0 00287510  54 03 0F FE */	srwi r3, r0, 0x1f
/* 8028A5B4 00287514  7C 00 1A 14 */	add r0, r0, r3
/* 8028A5B8 00287518  1C 00 00 09 */	mulli r0, r0, 9
/* 8028A5BC 0028751C  7C 00 20 51 */	subf. r0, r0, r4
/* 8028A5C0 00287520  41 82 00 54 */	beq lbl_8028A614
/* 8028A5C4 00287524  54 83 08 3C */	slwi r3, r4, 1
/* 8028A5C8 00287528  38 80 00 00 */	li r4, 0
/* 8028A5CC 0028752C  38 03 00 04 */	addi r0, r3, 4
/* 8028A5D0 00287530  7C 7D 00 AE */	lbzx r3, r29, r0
/* 8028A5D4 00287534  54 60 CF FF */	rlwinm. r0, r3, 0x19, 0x1f, 0x1f
/* 8028A5D8 00287538  40 82 00 20 */	bne lbl_8028A5F8
/* 8028A5DC 0028753C  54 60 D7 FF */	rlwinm. r0, r3, 0x1a, 0x1f, 0x1f
/* 8028A5E0 00287540  40 82 00 18 */	bne lbl_8028A5F8
/* 8028A5E4 00287544  54 60 DF FF */	rlwinm. r0, r3, 0x1b, 0x1f, 0x1f
/* 8028A5E8 00287548  40 82 00 10 */	bne lbl_8028A5F8
/* 8028A5EC 0028754C  54 60 E7 FF */	rlwinm. r0, r3, 0x1c, 0x1f, 0x1f
/* 8028A5F0 00287550  40 82 00 08 */	bne lbl_8028A5F8
/* 8028A5F4 00287554  38 80 00 01 */	li r4, 1
lbl_8028A5F8:
/* 8028A5F8 00287558  54 80 06 3F */	clrlwi. r0, r4, 0x18
/* 8028A5FC 0028755C  41 82 00 18 */	beq lbl_8028A614
/* 8028A600 00287560  57 80 10 3A */	slwi r0, r28, 2
/* 8028A604 00287564  38 61 00 10 */	addi r3, r1, 0x10
/* 8028A608 00287568  38 80 00 01 */	li r4, 1
/* 8028A60C 0028756C  3B 9C 00 01 */	addi r28, r28, 1
/* 8028A610 00287570  7C 83 01 2E */	stwx r4, r3, r0
lbl_8028A614:
/* 8028A614 00287574  38 1E 00 09 */	addi r0, r30, 9
/* 8028A618 00287578  2C 00 00 3E */	cmpwi r0, 0x3e
/* 8028A61C 0028757C  41 81 00 54 */	bgt lbl_8028A670
/* 8028A620 00287580  54 03 08 3C */	slwi r3, r0, 1
/* 8028A624 00287584  38 80 00 00 */	li r4, 0
/* 8028A628 00287588  38 03 00 04 */	addi r0, r3, 4
/* 8028A62C 0028758C  7C 7D 00 AE */	lbzx r3, r29, r0
/* 8028A630 00287590  54 60 CF FF */	rlwinm. r0, r3, 0x19, 0x1f, 0x1f
/* 8028A634 00287594  40 82 00 20 */	bne lbl_8028A654
/* 8028A638 00287598  54 60 D7 FF */	rlwinm. r0, r3, 0x1a, 0x1f, 0x1f
/* 8028A63C 0028759C  40 82 00 18 */	bne lbl_8028A654
/* 8028A640 002875A0  54 60 DF FF */	rlwinm. r0, r3, 0x1b, 0x1f, 0x1f
/* 8028A644 002875A4  40 82 00 10 */	bne lbl_8028A654
/* 8028A648 002875A8  54 60 E7 FF */	rlwinm. r0, r3, 0x1c, 0x1f, 0x1f
/* 8028A64C 002875AC  40 82 00 08 */	bne lbl_8028A654
/* 8028A650 002875B0  38 80 00 01 */	li r4, 1
lbl_8028A654:
/* 8028A654 002875B4  54 80 06 3F */	clrlwi. r0, r4, 0x18
/* 8028A658 002875B8  41 82 00 18 */	beq lbl_8028A670
/* 8028A65C 002875BC  57 80 10 3A */	slwi r0, r28, 2
/* 8028A660 002875C0  38 61 00 10 */	addi r3, r1, 0x10
/* 8028A664 002875C4  38 80 00 02 */	li r4, 2
/* 8028A668 002875C8  3B 9C 00 01 */	addi r28, r28, 1
/* 8028A66C 002875CC  7C 83 01 2E */	stwx r4, r3, r0
lbl_8028A670:
/* 8028A670 002875D0  2C 1E 00 00 */	cmpwi r30, 0
/* 8028A674 002875D4  40 81 00 7C */	ble lbl_8028A6F0
/* 8028A678 002875D8  3C 60 38 E4 */	lis r3, 0x38E38E39@ha
/* 8028A67C 002875DC  38 03 8E 39 */	addi r0, r3, 0x38E38E39@l
/* 8028A680 002875E0  7C 00 F0 96 */	mulhw r0, r0, r30
/* 8028A684 002875E4  7C 00 0E 70 */	srawi r0, r0, 1
/* 8028A688 002875E8  54 03 0F FE */	srwi r3, r0, 0x1f
/* 8028A68C 002875EC  7C 00 1A 14 */	add r0, r0, r3
/* 8028A690 002875F0  1C 00 00 09 */	mulli r0, r0, 9
/* 8028A694 002875F4  7C 00 F0 51 */	subf. r0, r0, r30
/* 8028A698 002875F8  41 82 00 58 */	beq lbl_8028A6F0
/* 8028A69C 002875FC  38 1E FF FF */	addi r0, r30, -1
/* 8028A6A0 00287600  38 80 00 00 */	li r4, 0
/* 8028A6A4 00287604  54 03 08 3C */	slwi r3, r0, 1
/* 8028A6A8 00287608  38 03 00 04 */	addi r0, r3, 4
/* 8028A6AC 0028760C  7C 7D 00 AE */	lbzx r3, r29, r0
/* 8028A6B0 00287610  54 60 CF FF */	rlwinm. r0, r3, 0x19, 0x1f, 0x1f
/* 8028A6B4 00287614  40 82 00 20 */	bne lbl_8028A6D4
/* 8028A6B8 00287618  54 60 D7 FF */	rlwinm. r0, r3, 0x1a, 0x1f, 0x1f
/* 8028A6BC 0028761C  40 82 00 18 */	bne lbl_8028A6D4
/* 8028A6C0 00287620  54 60 DF FF */	rlwinm. r0, r3, 0x1b, 0x1f, 0x1f
/* 8028A6C4 00287624  40 82 00 10 */	bne lbl_8028A6D4
/* 8028A6C8 00287628  54 60 E7 FF */	rlwinm. r0, r3, 0x1c, 0x1f, 0x1f
/* 8028A6CC 0028762C  40 82 00 08 */	bne lbl_8028A6D4
/* 8028A6D0 00287630  38 80 00 01 */	li r4, 1
lbl_8028A6D4:
/* 8028A6D4 00287634  54 80 06 3F */	clrlwi. r0, r4, 0x18
/* 8028A6D8 00287638  41 82 00 18 */	beq lbl_8028A6F0
/* 8028A6DC 0028763C  57 80 10 3A */	slwi r0, r28, 2
/* 8028A6E0 00287640  38 61 00 10 */	addi r3, r1, 0x10
/* 8028A6E4 00287644  38 80 00 03 */	li r4, 3
/* 8028A6E8 00287648  3B 9C 00 01 */	addi r28, r28, 1
/* 8028A6EC 0028764C  7C 83 01 2E */	stwx r4, r3, r0
lbl_8028A6F0:
/* 8028A6F0 00287650  2C 1C 00 00 */	cmpwi r28, 0
/* 8028A6F4 00287654  41 82 01 30 */	beq lbl_8028A824
/* 8028A6F8 00287658  7F A3 EB 78 */	mr r3, r29
/* 8028A6FC 0028765C  3B FF FF FF */	addi r31, r31, -1
/* 8028A700 00287660  48 08 7E 21 */	bl Next__9CRandom16Fv
/* 8028A704 00287664  7C 03 E3 96 */	divwu r0, r3, r28
/* 8028A708 00287668  38 81 00 10 */	addi r4, r1, 0x10
/* 8028A70C 0028766C  7C 00 E1 D6 */	mullw r0, r0, r28
/* 8028A710 00287670  7C 00 18 50 */	subf r0, r0, r3
/* 8028A714 00287674  54 00 10 3A */	slwi r0, r0, 2
/* 8028A718 00287678  7C 04 00 2E */	lwzx r0, r4, r0
/* 8028A71C 0028767C  2C 00 00 02 */	cmpwi r0, 2
/* 8028A720 00287680  41 82 00 94 */	beq lbl_8028A7B4
/* 8028A724 00287684  40 80 00 14 */	bge lbl_8028A738
/* 8028A728 00287688  2C 00 00 00 */	cmpwi r0, 0
/* 8028A72C 0028768C  41 82 00 18 */	beq lbl_8028A744
/* 8028A730 00287690  40 80 00 4C */	bge lbl_8028A77C
/* 8028A734 00287694  48 00 01 3C */	b lbl_8028A870
lbl_8028A738:
/* 8028A738 00287698  2C 00 00 04 */	cmpwi r0, 4
/* 8028A73C 0028769C  40 80 01 34 */	bge lbl_8028A870
/* 8028A740 002876A0  48 00 00 AC */	b lbl_8028A7EC
lbl_8028A744:
/* 8028A744 002876A4  57 C3 08 3C */	slwi r3, r30, 1
/* 8028A748 002876A8  38 1E FF F7 */	addi r0, r30, -9
/* 8028A74C 002876AC  38 A3 00 04 */	addi r5, r3, 4
/* 8028A750 002876B0  38 C0 00 01 */	li r6, 1
/* 8028A754 002876B4  7C 9D 28 AE */	lbzx r4, r29, r5
/* 8028A758 002876B8  50 C4 3E 30 */	rlwimi r4, r6, 7, 0x18, 0x18
/* 8028A75C 002876BC  54 03 08 3C */	slwi r3, r0, 1
/* 8028A760 002876C0  3B DE FF F7 */	addi r30, r30, -9
/* 8028A764 002876C4  7C 9D 29 AE */	stbx r4, r29, r5
/* 8028A768 002876C8  38 63 00 04 */	addi r3, r3, 4
/* 8028A76C 002876CC  7C 1D 18 AE */	lbzx r0, r29, r3
/* 8028A770 002876D0  50 C0 2E B4 */	rlwimi r0, r6, 5, 0x1a, 0x1a
/* 8028A774 002876D4  7C 1D 19 AE */	stbx r0, r29, r3
/* 8028A778 002876D8  48 00 00 F8 */	b lbl_8028A870
lbl_8028A77C:
/* 8028A77C 002876DC  57 C3 08 3C */	slwi r3, r30, 1
/* 8028A780 002876E0  38 1E 00 01 */	addi r0, r30, 1
/* 8028A784 002876E4  38 A3 00 04 */	addi r5, r3, 4
/* 8028A788 002876E8  38 C0 00 01 */	li r6, 1
/* 8028A78C 002876EC  7C 9D 28 AE */	lbzx r4, r29, r5
/* 8028A790 002876F0  50 C4 36 72 */	rlwimi r4, r6, 6, 0x19, 0x19
/* 8028A794 002876F4  54 03 08 3C */	slwi r3, r0, 1
/* 8028A798 002876F8  3B DE 00 01 */	addi r30, r30, 1
/* 8028A79C 002876FC  7C 9D 29 AE */	stbx r4, r29, r5
/* 8028A7A0 00287700  38 63 00 04 */	addi r3, r3, 4
/* 8028A7A4 00287704  7C 1D 18 AE */	lbzx r0, r29, r3
/* 8028A7A8 00287708  50 C0 26 F6 */	rlwimi r0, r6, 4, 0x1b, 0x1b
/* 8028A7AC 0028770C  7C 1D 19 AE */	stbx r0, r29, r3
/* 8028A7B0 00287710  48 00 00 C0 */	b lbl_8028A870
lbl_8028A7B4:
/* 8028A7B4 00287714  57 C3 08 3C */	slwi r3, r30, 1
/* 8028A7B8 00287718  38 1E 00 09 */	addi r0, r30, 9
/* 8028A7BC 0028771C  38 A3 00 04 */	addi r5, r3, 4
/* 8028A7C0 00287720  38 C0 00 01 */	li r6, 1
/* 8028A7C4 00287724  7C 9D 28 AE */	lbzx r4, r29, r5
/* 8028A7C8 00287728  50 C4 2E B4 */	rlwimi r4, r6, 5, 0x1a, 0x1a
/* 8028A7CC 0028772C  54 03 08 3C */	slwi r3, r0, 1
/* 8028A7D0 00287730  3B DE 00 09 */	addi r30, r30, 9
/* 8028A7D4 00287734  7C 9D 29 AE */	stbx r4, r29, r5
/* 8028A7D8 00287738  38 63 00 04 */	addi r3, r3, 4
/* 8028A7DC 0028773C  7C 1D 18 AE */	lbzx r0, r29, r3
/* 8028A7E0 00287740  50 C0 3E 30 */	rlwimi r0, r6, 7, 0x18, 0x18
/* 8028A7E4 00287744  7C 1D 19 AE */	stbx r0, r29, r3
/* 8028A7E8 00287748  48 00 00 88 */	b lbl_8028A870
lbl_8028A7EC:
/* 8028A7EC 0028774C  57 C3 08 3C */	slwi r3, r30, 1
/* 8028A7F0 00287750  38 1E FF FF */	addi r0, r30, -1
/* 8028A7F4 00287754  38 A3 00 04 */	addi r5, r3, 4
/* 8028A7F8 00287758  38 C0 00 01 */	li r6, 1
/* 8028A7FC 0028775C  7C 9D 28 AE */	lbzx r4, r29, r5
/* 8028A800 00287760  50 C4 26 F6 */	rlwimi r4, r6, 4, 0x1b, 0x1b
/* 8028A804 00287764  54 03 08 3C */	slwi r3, r0, 1
/* 8028A808 00287768  3B DE FF FF */	addi r30, r30, -1
/* 8028A80C 0028776C  7C 9D 29 AE */	stbx r4, r29, r5
/* 8028A810 00287770  38 63 00 04 */	addi r3, r3, 4
/* 8028A814 00287774  7C 1D 18 AE */	lbzx r0, r29, r3
/* 8028A818 00287778  50 C0 36 72 */	rlwimi r0, r6, 6, 0x19, 0x19
/* 8028A81C 0028777C  7C 1D 19 AE */	stbx r0, r29, r3
/* 8028A820 00287780  48 00 00 50 */	b lbl_8028A870
lbl_8028A824:
/* 8028A824 00287784  3B DE 00 01 */	addi r30, r30, 1
/* 8028A828 00287788  2C 1E 00 3E */	cmpwi r30, 0x3e
/* 8028A82C 0028778C  40 81 00 08 */	ble lbl_8028A834
/* 8028A830 00287790  3B C0 00 00 */	li r30, 0
lbl_8028A834:
/* 8028A834 00287794  57 C3 08 3C */	slwi r3, r30, 1
/* 8028A838 00287798  38 80 00 00 */	li r4, 0
/* 8028A83C 0028779C  38 03 00 04 */	addi r0, r3, 4
/* 8028A840 002877A0  7C 7D 00 AE */	lbzx r3, r29, r0
/* 8028A844 002877A4  54 60 CF FF */	rlwinm. r0, r3, 0x19, 0x1f, 0x1f
/* 8028A848 002877A8  40 82 00 20 */	bne lbl_8028A868
/* 8028A84C 002877AC  54 60 D7 FF */	rlwinm. r0, r3, 0x1a, 0x1f, 0x1f
/* 8028A850 002877B0  40 82 00 18 */	bne lbl_8028A868
/* 8028A854 002877B4  54 60 DF FF */	rlwinm. r0, r3, 0x1b, 0x1f, 0x1f
/* 8028A858 002877B8  40 82 00 10 */	bne lbl_8028A868
/* 8028A85C 002877BC  54 60 E7 FF */	rlwinm. r0, r3, 0x1c, 0x1f, 0x1f
/* 8028A860 002877C0  40 82 00 08 */	bne lbl_8028A868
/* 8028A864 002877C4  38 80 00 01 */	li r4, 1
lbl_8028A868:
/* 8028A868 002877C8  54 80 06 3F */	clrlwi. r0, r4, 0x18
/* 8028A86C 002877CC  40 82 FF B8 */	bne lbl_8028A824
lbl_8028A870:
/* 8028A870 002877D0  2C 1F 00 00 */	cmpwi r31, 0
/* 8028A874 002877D4  40 82 FC C0 */	bne lbl_8028A534
/* 8028A878 002877D8  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8028A87C 002877DC  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8028A880 002877E0  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8028A884 002877E4  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8028A888 002877E8  83 81 00 20 */	lwz r28, 0x20(r1)
/* 8028A88C 002877EC  7C 08 03 A6 */	mtlr r0
/* 8028A890 002877F0  38 21 00 30 */	addi r1, r1, 0x30
/* 8028A894 002877F4  4E 80 00 20 */	blr

.global __ct__10CMazeStateFiiii
__ct__10CMazeStateFiiii:
/* 8028A898 002877F8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8028A89C 002877FC  7C 08 02 A6 */	mflr r0
/* 8028A8A0 00287800  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028A8A4 00287804  BF 61 00 0C */	stmw r27, 0xc(r1)
/* 8028A8A8 00287808  7C 9C 23 78 */	mr r28, r4
/* 8028A8AC 0028780C  7C 7B 1B 78 */	mr r27, r3
/* 8028A8B0 00287810  7C BD 2B 78 */	mr r29, r5
/* 8028A8B4 00287814  7C DE 33 78 */	mr r30, r6
/* 8028A8B8 00287818  7C FF 3B 78 */	mr r31, r7
/* 8028A8BC 0028781C  38 80 00 00 */	li r4, 0
/* 8028A8C0 00287820  48 08 7D 2D */	bl __ct__9CRandom16FUi
/* 8028A8C4 00287824  3C 80 80 29 */	lis r4, __ct__9SMazeCellFv@ha
/* 8028A8C8 00287828  38 7B 00 04 */	addi r3, r27, 4
/* 8028A8CC 0028782C  38 84 A9 18 */	addi r4, r4, __ct__9SMazeCellFv@l
/* 8028A8D0 00287830  38 A0 00 00 */	li r5, 0
/* 8028A8D4 00287834  38 C0 00 02 */	li r6, 2
/* 8028A8D8 00287838  38 E0 00 3F */	li r7, 0x3f
/* 8028A8DC 0028783C  48 0F EE 71 */	bl __construct_array
/* 8028A8E0 00287840  93 9B 00 84 */	stw r28, 0x84(r27)
/* 8028A8E4 00287844  38 80 00 00 */	li r4, 0
/* 8028A8E8 00287848  7F 63 DB 78 */	mr r3, r27
/* 8028A8EC 0028784C  93 BB 00 88 */	stw r29, 0x88(r27)
/* 8028A8F0 00287850  93 DB 00 8C */	stw r30, 0x8c(r27)
/* 8028A8F4 00287854  93 FB 00 90 */	stw r31, 0x90(r27)
/* 8028A8F8 00287858  88 1B 00 94 */	lbz r0, 0x94(r27)
/* 8028A8FC 0028785C  50 80 3E 30 */	rlwimi r0, r4, 7, 0x18, 0x18
/* 8028A900 00287860  98 1B 00 94 */	stb r0, 0x94(r27)
/* 8028A904 00287864  BB 61 00 0C */	lmw r27, 0xc(r1)
/* 8028A908 00287868  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028A90C 0028786C  7C 08 03 A6 */	mtlr r0
/* 8028A910 00287870  38 21 00 20 */	addi r1, r1, 0x20
/* 8028A914 00287874  4E 80 00 20 */	blr

.global __ct__9SMazeCellFv
__ct__9SMazeCellFv:
/* 8028A918 00287878  88 03 00 01 */	lbz r0, 1(r3)
/* 8028A91C 0028787C  38 80 00 00 */	li r4, 0
/* 8028A920 00287880  50 80 2E B4 */	rlwimi r0, r4, 5, 0x1a, 0x1a
/* 8028A924 00287884  98 03 00 01 */	stb r0, 1(r3)
/* 8028A928 00287888  54 04 DF FE */	rlwinm r4, r0, 0x1b, 0x1f, 0x1f
/* 8028A92C 0028788C  88 03 00 01 */	lbz r0, 1(r3)
/* 8028A930 00287890  50 80 36 72 */	rlwimi r0, r4, 6, 0x19, 0x19
/* 8028A934 00287894  98 03 00 01 */	stb r0, 1(r3)
/* 8028A938 00287898  54 04 D7 FE */	rlwinm r4, r0, 0x1a, 0x1f, 0x1f
/* 8028A93C 0028789C  88 03 00 01 */	lbz r0, 1(r3)
/* 8028A940 002878A0  50 80 3E 30 */	rlwimi r0, r4, 7, 0x18, 0x18
/* 8028A944 002878A4  98 03 00 01 */	stb r0, 1(r3)
/* 8028A948 002878A8  54 04 CF FE */	rlwinm r4, r0, 0x19, 0x1f, 0x1f
/* 8028A94C 002878AC  88 03 00 00 */	lbz r0, 0(r3)
/* 8028A950 002878B0  50 80 07 FE */	rlwimi r0, r4, 0, 0x1f, 0x1f
/* 8028A954 002878B4  98 03 00 00 */	stb r0, 0(r3)
/* 8028A958 002878B8  54 04 07 FE */	clrlwi r4, r0, 0x1f
/* 8028A95C 002878BC  88 03 00 00 */	lbz r0, 0(r3)
/* 8028A960 002878C0  50 80 0F BC */	rlwimi r0, r4, 1, 0x1e, 0x1e
/* 8028A964 002878C4  98 03 00 00 */	stb r0, 0(r3)
/* 8028A968 002878C8  54 04 FF FE */	rlwinm r4, r0, 0x1f, 0x1f, 0x1f
/* 8028A96C 002878CC  88 03 00 00 */	lbz r0, 0(r3)
/* 8028A970 002878D0  50 80 17 7A */	rlwimi r0, r4, 2, 0x1d, 0x1d
/* 8028A974 002878D4  98 03 00 00 */	stb r0, 0(r3)
/* 8028A978 002878D8  54 04 F7 FE */	rlwinm r4, r0, 0x1e, 0x1f, 0x1f
/* 8028A97C 002878DC  88 03 00 00 */	lbz r0, 0(r3)
/* 8028A980 002878E0  50 80 1F 38 */	rlwimi r0, r4, 3, 0x1c, 0x1c
/* 8028A984 002878E4  98 03 00 00 */	stb r0, 0(r3)
/* 8028A988 002878E8  54 04 EF FE */	rlwinm r4, r0, 0x1d, 0x1f, 0x1f
/* 8028A98C 002878EC  88 03 00 00 */	lbz r0, 0(r3)
/* 8028A990 002878F0  50 80 26 F6 */	rlwimi r0, r4, 4, 0x1b, 0x1b
/* 8028A994 002878F4  98 03 00 00 */	stb r0, 0(r3)
/* 8028A998 002878F8  54 04 E7 FE */	rlwinm r4, r0, 0x1c, 0x1f, 0x1f
/* 8028A99C 002878FC  88 03 00 00 */	lbz r0, 0(r3)
/* 8028A9A0 00287900  50 80 2E B4 */	rlwimi r0, r4, 5, 0x1a, 0x1a
/* 8028A9A4 00287904  98 03 00 00 */	stb r0, 0(r3)
/* 8028A9A8 00287908  54 04 DF FE */	rlwinm r4, r0, 0x1b, 0x1f, 0x1f
/* 8028A9AC 0028790C  88 03 00 00 */	lbz r0, 0(r3)
/* 8028A9B0 00287910  50 80 36 72 */	rlwimi r0, r4, 6, 0x19, 0x19
/* 8028A9B4 00287914  98 03 00 00 */	stb r0, 0(r3)
/* 8028A9B8 00287918  54 04 D7 FE */	rlwinm r4, r0, 0x1a, 0x1f, 0x1f
/* 8028A9BC 0028791C  88 03 00 00 */	lbz r0, 0(r3)
/* 8028A9C0 00287920  50 80 3E 30 */	rlwimi r0, r4, 7, 0x18, 0x18
/* 8028A9C4 00287924  98 03 00 00 */	stb r0, 0(r3)
/* 8028A9C8 00287928  4E 80 00 20 */	blr

.section .sdata2, "a"
.balign 8
.global lbl_805ADB80
lbl_805ADB80:
	# ROM: 0x3FA420
	.4byte 0

.global lbl_805ADB84
lbl_805ADB84:
	# ROM: 0x3FA424
	.float 1.0


.section .rodata
.balign 8
.global lbl_803D5980
lbl_803D5980:
	# ROM: 0x3D2980
	.asciz "DUMB_MazeSeeds"
	.byte 0x3F
	.asciz "?(??)"
	.balign 4