.include "macros.inc"

.section .data
.balign 8

.global lbl_803ECA10
lbl_803ECA10:
	# ROM: 0x3E9A10
	.4byte 0
	.4byte 0
	.4byte __dt__10CGuiWidgetFv
	.4byte Update__10CGuiWidgetFf
	.4byte Draw__10CGuiWidgetCFRC19CGuiWidgetDrawParms
	.4byte Initialize__10CGuiWidgetFv
	.4byte ProcessUserInput__10CGuiWidgetFRC11CFinalInput
	.4byte Touch__10CGuiWidgetCFv
	.4byte GetIsVisible__10CGuiWidgetCFv
	.4byte sub_80020464
	.4byte GetWidgetTypeID__10CGuiWidgetCFv
	.4byte AddWorkerWidget__10CGuiWidgetFP10CGuiWidget
	.4byte GetIsFinishedLoadingWidgetSpecific__10CGuiWidgetCFv
	.4byte OnVisible__10CGuiWidgetFv
	.4byte OnActivate__10CGuiWidgetFv
	.4byte 0


.section .text, "ax"

.global OnActivate__10CGuiWidgetFv
OnActivate__10CGuiWidgetFv:
/* 802CA5DC 002C753C  4E 80 00 20 */	blr

.global OnVisible__10CGuiWidgetFv
OnVisible__10CGuiWidgetFv:
/* 802CA5E0 002C7540  4E 80 00 20 */	blr

.global SetIsActive__10CGuiWidgetFb
SetIsActive__10CGuiWidgetFb:
/* 802CA5E4 002C7544  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CA5E8 002C7548  7C 08 02 A6 */	mflr r0
/* 802CA5EC 002C754C  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CA5F0 002C7550  54 80 06 3E */	clrlwi r0, r4, 0x18
/* 802CA5F4 002C7554  88 A3 00 B6 */	lbz r5, 0xb6(r3)
/* 802CA5F8 002C7558  54 A4 DF FE */	rlwinm r4, r5, 0x1b, 0x1f, 0x1f
/* 802CA5FC 002C755C  7C 04 00 40 */	cmplw r4, r0
/* 802CA600 002C7560  41 82 00 1C */	beq lbl_802CA61C
/* 802CA604 002C7564  50 05 2E B4 */	rlwimi r5, r0, 5, 0x1a, 0x1a
/* 802CA608 002C7568  98 A3 00 B6 */	stb r5, 0xb6(r3)
/* 802CA60C 002C756C  81 83 00 00 */	lwz r12, 0(r3)
/* 802CA610 002C7570  81 8C 00 38 */	lwz r12, 0x38(r12)
/* 802CA614 002C7574  7D 89 03 A6 */	mtctr r12
/* 802CA618 002C7578  4E 80 04 21 */	bctrl
lbl_802CA61C:
/* 802CA61C 002C757C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CA620 002C7580  7C 08 03 A6 */	mtlr r0
/* 802CA624 002C7584  38 21 00 10 */	addi r1, r1, 0x10
/* 802CA628 002C7588  4E 80 00 20 */	blr

.global SetIsVisible__10CGuiWidgetFb
SetIsVisible__10CGuiWidgetFb:
/* 802CA62C 002C758C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CA630 002C7590  7C 08 02 A6 */	mflr r0
/* 802CA634 002C7594  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CA638 002C7598  88 03 00 B6 */	lbz r0, 0xb6(r3)
/* 802CA63C 002C759C  50 80 36 72 */	rlwimi r0, r4, 6, 0x19, 0x19
/* 802CA640 002C75A0  98 03 00 B6 */	stb r0, 0xb6(r3)
/* 802CA644 002C75A4  81 83 00 00 */	lwz r12, 0(r3)
/* 802CA648 002C75A8  81 8C 00 34 */	lwz r12, 0x34(r12)
/* 802CA64C 002C75AC  7D 89 03 A6 */	mtctr r12
/* 802CA650 002C75B0  4E 80 04 21 */	bctrl
/* 802CA654 002C75B4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CA658 002C75B8  7C 08 03 A6 */	mtlr r0
/* 802CA65C 002C75BC  38 21 00 10 */	addi r1, r1, 0x10
/* 802CA660 002C75C0  4E 80 00 20 */	blr

.global ReapplyXform__10CGuiWidgetFv
ReapplyXform__10CGuiWidgetFv:
/* 802CA664 002C75C4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CA668 002C75C8  7C 08 02 A6 */	mflr r0
/* 802CA66C 002C75CC  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CA670 002C75D0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802CA674 002C75D4  7C 7F 1B 78 */	mr r31, r3
/* 802CA678 002C75D8  4B FF AA C9 */	bl RotateReset__10CGuiObjectFv
/* 802CA67C 002C75DC  3C 80 80 5A */	lis r4, sZeroVector__9CVector3f@ha
/* 802CA680 002C75E0  7F E3 FB 78 */	mr r3, r31
/* 802CA684 002C75E4  38 84 66 A0 */	addi r4, r4, sZeroVector__9CVector3f@l
/* 802CA688 002C75E8  4B FF AB 41 */	bl SetLocalPosition__10CGuiObjectFRC9CVector3f
/* 802CA68C 002C75EC  7F E3 FB 78 */	mr r3, r31
/* 802CA690 002C75F0  38 9F 00 74 */	addi r4, r31, 0x74
/* 802CA694 002C75F4  4B FF A9 95 */	bl MultiplyO2P__10CGuiObjectFRC12CTransform4f
/* 802CA698 002C75F8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CA69C 002C75FC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802CA6A0 002C7600  7C 08 03 A6 */	mtlr r0
/* 802CA6A4 002C7604  38 21 00 10 */	addi r1, r1, 0x10
/* 802CA6A8 002C7608  4E 80 00 20 */	blr

.global GetIdlePosition__10CGuiWidgetFv
GetIdlePosition__10CGuiWidgetFv:
/* 802CA6AC 002C760C  C0 24 00 A0 */	lfs f1, 0xa0(r4)
/* 802CA6B0 002C7610  C0 44 00 90 */	lfs f2, 0x90(r4)
/* 802CA6B4 002C7614  C0 04 00 80 */	lfs f0, 0x80(r4)
/* 802CA6B8 002C7618  D0 03 00 00 */	stfs f0, 0(r3)
/* 802CA6BC 002C761C  D0 43 00 04 */	stfs f2, 4(r3)
/* 802CA6C0 002C7620  D0 23 00 08 */	stfs f1, 8(r3)
/* 802CA6C4 002C7624  4E 80 00 20 */	blr

.global AddChildWidget__10CGuiWidgetFP10CGuiWidgetbb
AddChildWidget__10CGuiWidgetFP10CGuiWidgetbb:
/* 802CA6C8 002C7628  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CA6CC 002C762C  7C 08 02 A6 */	mflr r0
/* 802CA6D0 002C7630  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CA6D4 002C7634  4B FF A6 6D */	bl AddChildObject__10CGuiObjectFP10CGuiObjectbb
/* 802CA6D8 002C7638  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CA6DC 002C763C  7C 08 03 A6 */	mtlr r0
/* 802CA6E0 002C7640  38 21 00 10 */	addi r1, r1, 0x10
/* 802CA6E4 002C7644  4E 80 00 20 */	blr

.global SetVisibility__10CGuiWidgetFb14ETraversalMode
SetVisibility__10CGuiWidgetFb14ETraversalMode:
/* 802CA6E8 002C7648  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CA6EC 002C764C  7C 08 02 A6 */	mflr r0
/* 802CA6F0 002C7650  2C 05 00 01 */	cmpwi r5, 1
/* 802CA6F4 002C7654  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CA6F8 002C7658  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802CA6FC 002C765C  7C 9F 23 78 */	mr r31, r4
/* 802CA700 002C7660  93 C1 00 08 */	stw r30, 8(r1)
/* 802CA704 002C7664  7C 7E 1B 78 */	mr r30, r3
/* 802CA708 002C7668  41 82 00 18 */	beq lbl_802CA720
/* 802CA70C 002C766C  40 80 00 7C */	bge lbl_802CA788
/* 802CA710 002C7670  2C 05 00 00 */	cmpwi r5, 0
/* 802CA714 002C7674  40 80 00 30 */	bge lbl_802CA744
/* 802CA718 002C7678  48 00 00 70 */	b lbl_802CA788
/* 802CA71C 002C767C  48 00 00 6C */	b lbl_802CA788
lbl_802CA720:
/* 802CA720 002C7680  4B FF A6 11 */	bl GetChildObject__10CGuiObjectFv
/* 802CA724 002C7684  28 03 00 00 */	cmplwi r3, 0
/* 802CA728 002C7688  41 82 00 60 */	beq lbl_802CA788
/* 802CA72C 002C768C  7F C3 F3 78 */	mr r3, r30
/* 802CA730 002C7690  4B FF A6 01 */	bl GetChildObject__10CGuiObjectFv
/* 802CA734 002C7694  7F E4 FB 78 */	mr r4, r31
/* 802CA738 002C7698  38 A0 00 00 */	li r5, 0
/* 802CA73C 002C769C  4B FF FF AD */	bl SetVisibility__10CGuiWidgetFb14ETraversalMode
/* 802CA740 002C76A0  48 00 00 48 */	b lbl_802CA788
lbl_802CA744:
/* 802CA744 002C76A4  4B FF A5 ED */	bl GetChildObject__10CGuiObjectFv
/* 802CA748 002C76A8  28 03 00 00 */	cmplwi r3, 0
/* 802CA74C 002C76AC  41 82 00 18 */	beq lbl_802CA764
/* 802CA750 002C76B0  7F C3 F3 78 */	mr r3, r30
/* 802CA754 002C76B4  4B FF A5 DD */	bl GetChildObject__10CGuiObjectFv
/* 802CA758 002C76B8  7F E4 FB 78 */	mr r4, r31
/* 802CA75C 002C76BC  38 A0 00 00 */	li r5, 0
/* 802CA760 002C76C0  4B FF FF 89 */	bl SetVisibility__10CGuiWidgetFb14ETraversalMode
lbl_802CA764:
/* 802CA764 002C76C4  7F C3 F3 78 */	mr r3, r30
/* 802CA768 002C76C8  4B FF A5 B9 */	bl GetNextSibling__10CGuiObjectFv
/* 802CA76C 002C76CC  28 03 00 00 */	cmplwi r3, 0
/* 802CA770 002C76D0  41 82 00 18 */	beq lbl_802CA788
/* 802CA774 002C76D4  7F C3 F3 78 */	mr r3, r30
/* 802CA778 002C76D8  4B FF A5 A9 */	bl GetNextSibling__10CGuiObjectFv
/* 802CA77C 002C76DC  7F E4 FB 78 */	mr r4, r31
/* 802CA780 002C76E0  38 A0 00 00 */	li r5, 0
/* 802CA784 002C76E4  4B FF FF 65 */	bl SetVisibility__10CGuiWidgetFb14ETraversalMode
lbl_802CA788:
/* 802CA788 002C76E8  7F C3 F3 78 */	mr r3, r30
/* 802CA78C 002C76EC  57 E4 06 3E */	clrlwi r4, r31, 0x18
/* 802CA790 002C76F0  4B FF FE 9D */	bl SetIsVisible__10CGuiWidgetFb
/* 802CA794 002C76F4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CA798 002C76F8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802CA79C 002C76FC  83 C1 00 08 */	lwz r30, 8(r1)
/* 802CA7A0 002C7700  7C 08 03 A6 */	mtlr r0
/* 802CA7A4 002C7704  38 21 00 10 */	addi r1, r1, 0x10
/* 802CA7A8 002C7708  4E 80 00 20 */	blr

.global RecalcWidgetColor__10CGuiWidgetF14ETraversalMode
RecalcWidgetColor__10CGuiWidgetF14ETraversalMode:
/* 802CA7AC 002C770C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802CA7B0 002C7710  7C 08 02 A6 */	mflr r0
/* 802CA7B4 002C7714  90 01 00 24 */	stw r0, 0x24(r1)
/* 802CA7B8 002C7718  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 802CA7BC 002C771C  7C 9F 23 78 */	mr r31, r4
/* 802CA7C0 002C7720  93 C1 00 18 */	stw r30, 0x18(r1)
/* 802CA7C4 002C7724  7C 7E 1B 78 */	mr r30, r3
/* 802CA7C8 002C7728  4B FF A5 51 */	bl GetParent__10CGuiObjectFv
/* 802CA7CC 002C772C  7C 65 1B 79 */	or. r5, r3, r3
/* 802CA7D0 002C7730  41 82 00 20 */	beq lbl_802CA7F0
/* 802CA7D4 002C7734  38 61 00 08 */	addi r3, r1, 8
/* 802CA7D8 002C7738  38 9E 00 A4 */	addi r4, r30, 0xa4
/* 802CA7DC 002C773C  38 A5 00 A8 */	addi r5, r5, 0xa8
/* 802CA7E0 002C7740  48 09 89 99 */	bl Modulate__6CColorFRC6CColorRC6CColor
/* 802CA7E4 002C7744  80 01 00 08 */	lwz r0, 8(r1)
/* 802CA7E8 002C7748  90 1E 00 A8 */	stw r0, 0xa8(r30)
/* 802CA7EC 002C774C  48 00 00 0C */	b lbl_802CA7F8
lbl_802CA7F0:
/* 802CA7F0 002C7750  80 1E 00 A4 */	lwz r0, 0xa4(r30)
/* 802CA7F4 002C7754  90 1E 00 A8 */	stw r0, 0xa8(r30)
lbl_802CA7F8:
/* 802CA7F8 002C7758  2C 1F 00 01 */	cmpwi r31, 1
/* 802CA7FC 002C775C  41 82 00 38 */	beq lbl_802CA834
/* 802CA800 002C7760  40 80 00 54 */	bge lbl_802CA854
/* 802CA804 002C7764  2C 1F 00 00 */	cmpwi r31, 0
/* 802CA808 002C7768  40 80 00 0C */	bge lbl_802CA814
/* 802CA80C 002C776C  48 00 00 48 */	b lbl_802CA854
/* 802CA810 002C7770  48 00 00 44 */	b lbl_802CA854
lbl_802CA814:
/* 802CA814 002C7774  7F C3 F3 78 */	mr r3, r30
/* 802CA818 002C7778  4B FF A5 09 */	bl GetNextSibling__10CGuiObjectFv
/* 802CA81C 002C777C  28 03 00 00 */	cmplwi r3, 0
/* 802CA820 002C7780  41 82 00 14 */	beq lbl_802CA834
/* 802CA824 002C7784  7F C3 F3 78 */	mr r3, r30
/* 802CA828 002C7788  4B FF A4 F9 */	bl GetNextSibling__10CGuiObjectFv
/* 802CA82C 002C778C  38 80 00 00 */	li r4, 0
/* 802CA830 002C7790  4B FF FF 7D */	bl RecalcWidgetColor__10CGuiWidgetF14ETraversalMode
lbl_802CA834:
/* 802CA834 002C7794  7F C3 F3 78 */	mr r3, r30
/* 802CA838 002C7798  4B FF A4 F9 */	bl GetChildObject__10CGuiObjectFv
/* 802CA83C 002C779C  28 03 00 00 */	cmplwi r3, 0
/* 802CA840 002C77A0  41 82 00 14 */	beq lbl_802CA854
/* 802CA844 002C77A4  7F C3 F3 78 */	mr r3, r30
/* 802CA848 002C77A8  4B FF A4 E9 */	bl GetChildObject__10CGuiObjectFv
/* 802CA84C 002C77AC  38 80 00 00 */	li r4, 0
/* 802CA850 002C77B0  4B FF FF 5D */	bl RecalcWidgetColor__10CGuiWidgetF14ETraversalMode
lbl_802CA854:
/* 802CA854 002C77B4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802CA858 002C77B8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 802CA85C 002C77BC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 802CA860 002C77C0  7C 08 03 A6 */	mtlr r0
/* 802CA864 002C77C4  38 21 00 20 */	addi r1, r1, 0x20
/* 802CA868 002C77C8  4E 80 00 20 */	blr

.global SetColor__10CGuiWidgetFRC6CColor
SetColor__10CGuiWidgetFRC6CColor:
/* 802CA86C 002C77CC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CA870 002C77D0  7C 08 02 A6 */	mflr r0
/* 802CA874 002C77D4  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CA878 002C77D8  80 04 00 00 */	lwz r0, 0(r4)
/* 802CA87C 002C77DC  38 80 00 01 */	li r4, 1
/* 802CA880 002C77E0  90 03 00 A4 */	stw r0, 0xa4(r3)
/* 802CA884 002C77E4  4B FF FF 29 */	bl RecalcWidgetColor__10CGuiWidgetF14ETraversalMode
/* 802CA888 002C77E8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CA88C 002C77EC  7C 08 03 A6 */	mtlr r0
/* 802CA890 002C77F0  38 21 00 10 */	addi r1, r1, 0x10
/* 802CA894 002C77F4  4E 80 00 20 */	blr

.global FindWidget__10CGuiWidgetFs
FindWidget__10CGuiWidgetFs:
/* 802CA898 002C77F8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CA89C 002C77FC  7C 08 02 A6 */	mflr r0
/* 802CA8A0 002C7800  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CA8A4 002C7804  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802CA8A8 002C7808  7C 9F 23 78 */	mr r31, r4
/* 802CA8AC 002C780C  7F E0 07 34 */	extsh r0, r31
/* 802CA8B0 002C7810  93 C1 00 08 */	stw r30, 8(r1)
/* 802CA8B4 002C7814  7C 7E 1B 78 */	mr r30, r3
/* 802CA8B8 002C7818  A8 83 00 70 */	lha r4, 0x70(r3)
/* 802CA8BC 002C781C  7C 04 00 00 */	cmpw r4, r0
/* 802CA8C0 002C7820  40 82 00 08 */	bne lbl_802CA8C8
/* 802CA8C4 002C7824  48 00 00 5C */	b lbl_802CA920
lbl_802CA8C8:
/* 802CA8C8 002C7828  4B FF A4 69 */	bl GetChildObject__10CGuiObjectFv
/* 802CA8CC 002C782C  28 03 00 00 */	cmplwi r3, 0
/* 802CA8D0 002C7830  41 82 00 20 */	beq lbl_802CA8F0
/* 802CA8D4 002C7834  7F C3 F3 78 */	mr r3, r30
/* 802CA8D8 002C7838  4B FF A4 59 */	bl GetChildObject__10CGuiObjectFv
/* 802CA8DC 002C783C  7F E4 FB 78 */	mr r4, r31
/* 802CA8E0 002C7840  4B FF FF B9 */	bl FindWidget__10CGuiWidgetFs
/* 802CA8E4 002C7844  28 03 00 00 */	cmplwi r3, 0
/* 802CA8E8 002C7848  41 82 00 08 */	beq lbl_802CA8F0
/* 802CA8EC 002C784C  48 00 00 34 */	b lbl_802CA920
lbl_802CA8F0:
/* 802CA8F0 002C7850  7F C3 F3 78 */	mr r3, r30
/* 802CA8F4 002C7854  4B FF A4 2D */	bl GetNextSibling__10CGuiObjectFv
/* 802CA8F8 002C7858  28 03 00 00 */	cmplwi r3, 0
/* 802CA8FC 002C785C  41 82 00 20 */	beq lbl_802CA91C
/* 802CA900 002C7860  7F C3 F3 78 */	mr r3, r30
/* 802CA904 002C7864  4B FF A4 1D */	bl GetNextSibling__10CGuiObjectFv
/* 802CA908 002C7868  7F E4 FB 78 */	mr r4, r31
/* 802CA90C 002C786C  4B FF FF 8D */	bl FindWidget__10CGuiWidgetFs
/* 802CA910 002C7870  28 03 00 00 */	cmplwi r3, 0
/* 802CA914 002C7874  41 82 00 08 */	beq lbl_802CA91C
/* 802CA918 002C7878  48 00 00 08 */	b lbl_802CA920
lbl_802CA91C:
/* 802CA91C 002C787C  38 60 00 00 */	li r3, 0
lbl_802CA920:
/* 802CA920 002C7880  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CA924 002C7884  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802CA928 002C7888  83 C1 00 08 */	lwz r30, 8(r1)
/* 802CA92C 002C788C  7C 08 03 A6 */	mtlr r0
/* 802CA930 002C7890  38 21 00 10 */	addi r1, r1, 0x10
/* 802CA934 002C7894  4E 80 00 20 */	blr

.global GetIsFinishedLoading__10CGuiWidgetCFv
GetIsFinishedLoading__10CGuiWidgetCFv:
/* 802CA938 002C7898  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CA93C 002C789C  7C 08 02 A6 */	mflr r0
/* 802CA940 002C78A0  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CA944 002C78A4  81 83 00 00 */	lwz r12, 0(r3)
/* 802CA948 002C78A8  81 8C 00 30 */	lwz r12, 0x30(r12)
/* 802CA94C 002C78AC  7D 89 03 A6 */	mtctr r12
/* 802CA950 002C78B0  4E 80 04 21 */	bctrl
/* 802CA954 002C78B4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CA958 002C78B8  7C 08 03 A6 */	mtlr r0
/* 802CA95C 002C78BC  38 21 00 10 */	addi r1, r1, 0x10
/* 802CA960 002C78C0  4E 80 00 20 */	blr

.global DispatchInitialize__10CGuiWidgetFv
DispatchInitialize__10CGuiWidgetFv:
/* 802CA964 002C78C4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CA968 002C78C8  7C 08 02 A6 */	mflr r0
/* 802CA96C 002C78CC  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CA970 002C78D0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802CA974 002C78D4  7C 7F 1B 78 */	mr r31, r3
/* 802CA978 002C78D8  81 83 00 00 */	lwz r12, 0(r3)
/* 802CA97C 002C78DC  81 8C 00 14 */	lwz r12, 0x14(r12)
/* 802CA980 002C78E0  7D 89 03 A6 */	mtctr r12
/* 802CA984 002C78E4  4E 80 04 21 */	bctrl
/* 802CA988 002C78E8  7F E3 FB 78 */	mr r3, r31
/* 802CA98C 002C78EC  4B FF A3 A5 */	bl GetChildObject__10CGuiObjectFv
/* 802CA990 002C78F0  28 03 00 00 */	cmplwi r3, 0
/* 802CA994 002C78F4  41 82 00 10 */	beq lbl_802CA9A4
/* 802CA998 002C78F8  7F E3 FB 78 */	mr r3, r31
/* 802CA99C 002C78FC  4B FF A3 95 */	bl GetChildObject__10CGuiObjectFv
/* 802CA9A0 002C7900  4B FF FF C5 */	bl DispatchInitialize__10CGuiWidgetFv
lbl_802CA9A4:
/* 802CA9A4 002C7904  7F E3 FB 78 */	mr r3, r31
/* 802CA9A8 002C7908  4B FF A3 79 */	bl GetNextSibling__10CGuiObjectFv
/* 802CA9AC 002C790C  28 03 00 00 */	cmplwi r3, 0
/* 802CA9B0 002C7910  41 82 00 10 */	beq lbl_802CA9C0
/* 802CA9B4 002C7914  7F E3 FB 78 */	mr r3, r31
/* 802CA9B8 002C7918  4B FF A3 69 */	bl GetNextSibling__10CGuiObjectFv
/* 802CA9BC 002C791C  4B FF FF A9 */	bl DispatchInitialize__10CGuiWidgetFv
lbl_802CA9C0:
/* 802CA9C0 002C7920  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CA9C4 002C7924  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802CA9C8 002C7928  7C 08 03 A6 */	mtlr r0
/* 802CA9CC 002C792C  38 21 00 10 */	addi r1, r1, 0x10
/* 802CA9D0 002C7930  4E 80 00 20 */	blr

.global Update__10CGuiWidgetFf
Update__10CGuiWidgetFf:
/* 802CA9D4 002C7934  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802CA9D8 002C7938  7C 08 02 A6 */	mflr r0
/* 802CA9DC 002C793C  90 01 00 24 */	stw r0, 0x24(r1)
/* 802CA9E0 002C7940  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 802CA9E4 002C7944  FF E0 08 90 */	fmr f31, f1
/* 802CA9E8 002C7948  93 E1 00 14 */	stw r31, 0x14(r1)
/* 802CA9EC 002C794C  7C 7F 1B 78 */	mr r31, r3
/* 802CA9F0 002C7950  4B FF A3 41 */	bl GetChildObject__10CGuiObjectFv
/* 802CA9F4 002C7954  28 03 00 00 */	cmplwi r3, 0
/* 802CA9F8 002C7958  41 82 00 20 */	beq lbl_802CAA18
/* 802CA9FC 002C795C  7F E3 FB 78 */	mr r3, r31
/* 802CAA00 002C7960  4B FF A3 31 */	bl GetChildObject__10CGuiObjectFv
/* 802CAA04 002C7964  81 83 00 00 */	lwz r12, 0(r3)
/* 802CAA08 002C7968  FC 20 F8 90 */	fmr f1, f31
/* 802CAA0C 002C796C  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 802CAA10 002C7970  7D 89 03 A6 */	mtctr r12
/* 802CAA14 002C7974  4E 80 04 21 */	bctrl
lbl_802CAA18:
/* 802CAA18 002C7978  7F E3 FB 78 */	mr r3, r31
/* 802CAA1C 002C797C  4B FF A3 05 */	bl GetNextSibling__10CGuiObjectFv
/* 802CAA20 002C7980  28 03 00 00 */	cmplwi r3, 0
/* 802CAA24 002C7984  41 82 00 20 */	beq lbl_802CAA44
/* 802CAA28 002C7988  7F E3 FB 78 */	mr r3, r31
/* 802CAA2C 002C798C  4B FF A2 F5 */	bl GetNextSibling__10CGuiObjectFv
/* 802CAA30 002C7990  81 83 00 00 */	lwz r12, 0(r3)
/* 802CAA34 002C7994  FC 20 F8 90 */	fmr f1, f31
/* 802CAA38 002C7998  81 8C 00 0C */	lwz r12, 0xc(r12)
/* 802CAA3C 002C799C  7D 89 03 A6 */	mtctr r12
/* 802CAA40 002C79A0  4E 80 04 21 */	bctrl
lbl_802CAA44:
/* 802CAA44 002C79A4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802CAA48 002C79A8  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 802CAA4C 002C79AC  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 802CAA50 002C79B0  7C 08 03 A6 */	mtlr r0
/* 802CAA54 002C79B4  38 21 00 20 */	addi r1, r1, 0x20
/* 802CAA58 002C79B8  4E 80 00 20 */	blr

.global ProcessUserInput__10CGuiWidgetFRC11CFinalInput
ProcessUserInput__10CGuiWidgetFRC11CFinalInput:
/* 802CAA5C 002C79BC  4E 80 00 20 */	blr

.global Draw__10CGuiWidgetCFRC19CGuiWidgetDrawParms
Draw__10CGuiWidgetCFRC19CGuiWidgetDrawParms:
/* 802CAA60 002C79C0  4E 80 00 20 */	blr

.global ReadUnusedThing__10CGuiWidgetFR12CInputStream
ReadUnusedThing__10CGuiWidgetFR12CInputStream:
/* 802CAA64 002C79C4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CAA68 002C79C8  7C 08 02 A6 */	mflr r0
/* 802CAA6C 002C79CC  7C 83 23 78 */	mr r3, r4
/* 802CAA70 002C79D0  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CAA74 002C79D4  48 07 42 11 */	bl ReadLong__12CInputStreamFv
/* 802CAA78 002C79D8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CAA7C 002C79DC  7C 08 03 A6 */	mtlr r0
/* 802CAA80 002C79E0  38 21 00 10 */	addi r1, r1, 0x10
/* 802CAA84 002C79E4  4E 80 00 20 */	blr

.global ParseBaseInfo__10CGuiWidgetFP9CGuiFrameR12CInputStreamRCQ210CGuiWidget15CGuiWidgetParms
ParseBaseInfo__10CGuiWidgetFP9CGuiFrameR12CInputStreamRCQ210CGuiWidget15CGuiWidgetParms:
/* 802CAA88 002C79E8  94 21 FF 70 */	stwu r1, -0x90(r1)
/* 802CAA8C 002C79EC  7C 08 02 A6 */	mflr r0
/* 802CAA90 002C79F0  90 01 00 94 */	stw r0, 0x94(r1)
/* 802CAA94 002C79F4  7C 80 23 78 */	mr r0, r4
/* 802CAA98 002C79F8  93 E1 00 8C */	stw r31, 0x8c(r1)
/* 802CAA9C 002C79FC  93 C1 00 88 */	stw r30, 0x88(r1)
/* 802CAAA0 002C7A00  93 A1 00 84 */	stw r29, 0x84(r1)
/* 802CAAA4 002C7A04  7C BD 2B 78 */	mr r29, r5
/* 802CAAA8 002C7A08  93 81 00 80 */	stw r28, 0x80(r1)
/* 802CAAAC 002C7A0C  7C 7C 1B 78 */	mr r28, r3
/* 802CAAB0 002C7A10  7C 03 03 78 */	mr r3, r0
/* 802CAAB4 002C7A14  A8 86 00 08 */	lha r4, 8(r6)
/* 802CAAB8 002C7A18  4B FF 76 F9 */	bl FindWidget__9CGuiFrameCFs
/* 802CAABC 002C7A1C  7C 60 1B 78 */	mr r0, r3
/* 802CAAC0 002C7A20  7F A3 EB 78 */	mr r3, r29
/* 802CAAC4 002C7A24  7C 1E 03 78 */	mr r30, r0
/* 802CAAC8 002C7A28  48 07 42 15 */	bl ReadBool__12CInputStreamFv
/* 802CAACC 002C7A2C  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 802CAAD0 002C7A30  7C 7F 1B 78 */	mr r31, r3
/* 802CAAD4 002C7A34  41 82 00 10 */	beq lbl_802CAAE4
/* 802CAAD8 002C7A38  7F A3 EB 78 */	mr r3, r29
/* 802CAADC 002C7A3C  48 07 41 D5 */	bl ReadShort__12CInputStreamFv
/* 802CAAE0 002C7A40  B0 7C 00 B4 */	sth r3, 0xb4(r28)
lbl_802CAAE4:
/* 802CAAE4 002C7A44  7F A4 EB 78 */	mr r4, r29
/* 802CAAE8 002C7A48  38 61 00 14 */	addi r3, r1, 0x14
/* 802CAAEC 002C7A4C  48 04 A0 A1 */	bl __ct__9CVector3fFR12CInputStream
/* 802CAAF0 002C7A50  7F A4 EB 78 */	mr r4, r29
/* 802CAAF4 002C7A54  38 61 00 50 */	addi r3, r1, 0x50
/* 802CAAF8 002C7A58  48 04 5A 29 */	bl __ct__9CMatrix3fFR12CInputStream
/* 802CAAFC 002C7A5C  38 61 00 20 */	addi r3, r1, 0x20
/* 802CAB00 002C7A60  38 81 00 50 */	addi r4, r1, 0x50
/* 802CAB04 002C7A64  38 A1 00 14 */	addi r5, r1, 0x14
/* 802CAB08 002C7A68  48 04 87 71 */	bl __ct__12CTransform4fFRC9CMatrix3fRC9CVector3f
/* 802CAB0C 002C7A6C  38 7C 00 74 */	addi r3, r28, 0x74
/* 802CAB10 002C7A70  38 81 00 20 */	addi r4, r1, 0x20
/* 802CAB14 002C7A74  48 04 80 2D */	bl __as__12CTransform4fFRC12CTransform4f
/* 802CAB18 002C7A78  7F 83 E3 78 */	mr r3, r28
/* 802CAB1C 002C7A7C  4B FF FB 49 */	bl ReapplyXform__10CGuiWidgetFv
/* 802CAB20 002C7A80  7F A4 EB 78 */	mr r4, r29
/* 802CAB24 002C7A84  38 61 00 08 */	addi r3, r1, 8
/* 802CAB28 002C7A88  48 04 A0 65 */	bl __ct__9CVector3fFR12CInputStream
/* 802CAB2C 002C7A8C  7F 83 E3 78 */	mr r3, r28
/* 802CAB30 002C7A90  7F A4 EB 78 */	mr r4, r29
/* 802CAB34 002C7A94  4B FF FF 31 */	bl ReadUnusedThing__10CGuiWidgetFR12CInputStream
/* 802CAB38 002C7A98  7F A3 EB 78 */	mr r3, r29
/* 802CAB3C 002C7A9C  48 07 41 75 */	bl ReadShort__12CInputStreamFv
/* 802CAB40 002C7AA0  57 E0 06 3F */	clrlwi. r0, r31, 0x18
/* 802CAB44 002C7AA4  41 82 00 3C */	beq lbl_802CAB80
/* 802CAB48 002C7AA8  7F C3 F3 78 */	mr r3, r30
/* 802CAB4C 002C7AAC  7F 84 E3 78 */	mr r4, r28
/* 802CAB50 002C7AB0  81 9E 00 00 */	lwz r12, 0(r30)
/* 802CAB54 002C7AB4  81 8C 00 2C */	lwz r12, 0x2c(r12)
/* 802CAB58 002C7AB8  7D 89 03 A6 */	mtctr r12
/* 802CAB5C 002C7ABC  4E 80 04 21 */	bctrl
/* 802CAB60 002C7AC0  54 60 06 3F */	clrlwi. r0, r3, 0x18
/* 802CAB64 002C7AC4  40 82 00 1C */	bne lbl_802CAB80
/* 802CAB68 002C7AC8  3C 60 80 3D */	lis r3, lbl_803D68F8@ha
/* 802CAB6C 002C7ACC  38 63 68 F8 */	addi r3, r3, lbl_803D68F8@l
/* 802CAB70 002C7AD0  4C C6 31 82 */	crclr 6
/* 802CAB74 002C7AD4  48 0C 33 3D */	bl printf
/* 802CAB78 002C7AD8  38 00 FF FF */	li r0, -1
/* 802CAB7C 002C7ADC  B0 1C 00 B4 */	sth r0, 0xb4(r28)
lbl_802CAB80:
/* 802CAB80 002C7AE0  7F C3 F3 78 */	mr r3, r30
/* 802CAB84 002C7AE4  7F 84 E3 78 */	mr r4, r28
/* 802CAB88 002C7AE8  38 A0 00 00 */	li r5, 0
/* 802CAB8C 002C7AEC  38 C0 00 01 */	li r6, 1
/* 802CAB90 002C7AF0  4B FF FB 39 */	bl AddChildWidget__10CGuiWidgetFP10CGuiWidgetbb
/* 802CAB94 002C7AF4  80 01 00 94 */	lwz r0, 0x94(r1)
/* 802CAB98 002C7AF8  83 E1 00 8C */	lwz r31, 0x8c(r1)
/* 802CAB9C 002C7AFC  83 C1 00 88 */	lwz r30, 0x88(r1)
/* 802CABA0 002C7B00  83 A1 00 84 */	lwz r29, 0x84(r1)
/* 802CABA4 002C7B04  83 81 00 80 */	lwz r28, 0x80(r1)
/* 802CABA8 002C7B08  7C 08 03 A6 */	mtlr r0
/* 802CABAC 002C7B0C  38 21 00 90 */	addi r1, r1, 0x90
/* 802CABB0 002C7B10  4E 80 00 20 */	blr

.global __dt__10CGuiWidgetFv
__dt__10CGuiWidgetFv:
/* 802CABB4 002C7B14  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CABB8 002C7B18  7C 08 02 A6 */	mflr r0
/* 802CABBC 002C7B1C  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CABC0 002C7B20  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802CABC4 002C7B24  7C 9F 23 78 */	mr r31, r4
/* 802CABC8 002C7B28  93 C1 00 08 */	stw r30, 8(r1)
/* 802CABCC 002C7B2C  7C 7E 1B 79 */	or. r30, r3, r3
/* 802CABD0 002C7B30  41 82 00 38 */	beq lbl_802CAC08
/* 802CABD4 002C7B34  3C 60 80 3F */	lis r3, lbl_803ECA10@ha
/* 802CABD8 002C7B38  7F C4 F3 78 */	mr r4, r30
/* 802CABDC 002C7B3C  38 03 CA 10 */	addi r0, r3, lbl_803ECA10@l
/* 802CABE0 002C7B40  90 1E 00 00 */	stw r0, 0(r30)
/* 802CABE4 002C7B44  80 7E 00 B0 */	lwz r3, 0xb0(r30)
/* 802CABE8 002C7B48  4B FF 76 3D */	bl sub_802c2224
/* 802CABEC 002C7B4C  7F C3 F3 78 */	mr r3, r30
/* 802CABF0 002C7B50  38 80 00 00 */	li r4, 0
/* 802CABF4 002C7B54  4B FF A7 E1 */	bl __dt__10CGuiObjectFv
/* 802CABF8 002C7B58  7F E0 07 35 */	extsh. r0, r31
/* 802CABFC 002C7B5C  40 81 00 0C */	ble lbl_802CAC08
/* 802CAC00 002C7B60  7F C3 F3 78 */	mr r3, r30
/* 802CAC04 002C7B64  48 04 AD 2D */	bl Free__7CMemoryFPCv
lbl_802CAC08:
/* 802CAC08 002C7B68  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CAC0C 002C7B6C  7F C3 F3 78 */	mr r3, r30
/* 802CAC10 002C7B70  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802CAC14 002C7B74  83 C1 00 08 */	lwz r30, 8(r1)
/* 802CAC18 002C7B78  7C 08 03 A6 */	mtlr r0
/* 802CAC1C 002C7B7C  38 21 00 10 */	addi r1, r1, 0x10
/* 802CAC20 002C7B80  4E 80 00 20 */	blr

.global __ct__10CGuiWidgetFRCQ210CGuiWidget15CGuiWidgetParms
__ct__10CGuiWidgetFRCQ210CGuiWidget15CGuiWidgetParms:
/* 802CAC24 002C7B84  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802CAC28 002C7B88  7C 08 02 A6 */	mflr r0
/* 802CAC2C 002C7B8C  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CAC30 002C7B90  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802CAC34 002C7B94  7C 9F 23 78 */	mr r31, r4
/* 802CAC38 002C7B98  93 C1 00 08 */	stw r30, 8(r1)
/* 802CAC3C 002C7B9C  7C 7E 1B 78 */	mr r30, r3
/* 802CAC40 002C7BA0  4B FF A8 3D */	bl __ct__10CGuiObjectFv
/* 802CAC44 002C7BA4  3C 60 80 3F */	lis r3, lbl_803ECA10@ha
/* 802CAC48 002C7BA8  3C 80 80 5A */	lis r4, sIdentity__12CTransform4f@ha
/* 802CAC4C 002C7BAC  38 03 CA 10 */	addi r0, r3, lbl_803ECA10@l
/* 802CAC50 002C7BB0  90 1E 00 00 */	stw r0, 0(r30)
/* 802CAC54 002C7BB4  38 7E 00 74 */	addi r3, r30, 0x74
/* 802CAC58 002C7BB8  38 84 66 70 */	addi r4, r4, sIdentity__12CTransform4f@l
/* 802CAC5C 002C7BBC  A8 1F 00 06 */	lha r0, 6(r31)
/* 802CAC60 002C7BC0  B0 1E 00 70 */	sth r0, 0x70(r30)
/* 802CAC64 002C7BC4  A8 1F 00 08 */	lha r0, 8(r31)
/* 802CAC68 002C7BC8  B0 1E 00 72 */	sth r0, 0x72(r30)
/* 802CAC6C 002C7BCC  48 04 7F 09 */	bl __ct__12CTransform4fFRC12CTransform4f
/* 802CAC70 002C7BD0  80 7F 00 10 */	lwz r3, 0x10(r31)
/* 802CAC74 002C7BD4  38 00 FF FF */	li r0, -1
/* 802CAC78 002C7BD8  38 E0 00 01 */	li r7, 1
/* 802CAC7C 002C7BDC  38 C0 00 00 */	li r6, 0
/* 802CAC80 002C7BE0  90 7E 00 A4 */	stw r3, 0xa4(r30)
/* 802CAC84 002C7BE4  7F C3 F3 78 */	mr r3, r30
/* 802CAC88 002C7BE8  38 80 00 02 */	li r4, 2
/* 802CAC8C 002C7BEC  80 BE 00 A4 */	lwz r5, 0xa4(r30)
/* 802CAC90 002C7BF0  90 BE 00 A8 */	stw r5, 0xa8(r30)
/* 802CAC94 002C7BF4  80 BF 00 14 */	lwz r5, 0x14(r31)
/* 802CAC98 002C7BF8  90 BE 00 AC */	stw r5, 0xac(r30)
/* 802CAC9C 002C7BFC  80 BF 00 00 */	lwz r5, 0(r31)
/* 802CACA0 002C7C00  90 BE 00 B0 */	stw r5, 0xb0(r30)
/* 802CACA4 002C7C04  B0 1E 00 B4 */	sth r0, 0xb4(r30)
/* 802CACA8 002C7C08  88 BF 00 0D */	lbz r5, 0xd(r31)
/* 802CACAC 002C7C0C  88 1E 00 B6 */	lbz r0, 0xb6(r30)
/* 802CACB0 002C7C10  50 A0 3E 30 */	rlwimi r0, r5, 7, 0x18, 0x18
/* 802CACB4 002C7C14  98 1E 00 B6 */	stb r0, 0xb6(r30)
/* 802CACB8 002C7C18  88 BF 00 0A */	lbz r5, 0xa(r31)
/* 802CACBC 002C7C1C  88 1E 00 B6 */	lbz r0, 0xb6(r30)
/* 802CACC0 002C7C20  50 A0 36 72 */	rlwimi r0, r5, 6, 0x19, 0x19
/* 802CACC4 002C7C24  98 1E 00 B6 */	stb r0, 0xb6(r30)
/* 802CACC8 002C7C28  88 BF 00 0B */	lbz r5, 0xb(r31)
/* 802CACCC 002C7C2C  88 1E 00 B6 */	lbz r0, 0xb6(r30)
/* 802CACD0 002C7C30  50 A0 2E B4 */	rlwimi r0, r5, 5, 0x1a, 0x1a
/* 802CACD4 002C7C34  98 1E 00 B6 */	stb r0, 0xb6(r30)
/* 802CACD8 002C7C38  88 1E 00 B6 */	lbz r0, 0xb6(r30)
/* 802CACDC 002C7C3C  50 E0 26 F6 */	rlwimi r0, r7, 4, 0x1b, 0x1b
/* 802CACE0 002C7C40  98 1E 00 B6 */	stb r0, 0xb6(r30)
/* 802CACE4 002C7C44  88 1E 00 B6 */	lbz r0, 0xb6(r30)
/* 802CACE8 002C7C48  50 C0 1F 38 */	rlwimi r0, r6, 3, 0x1c, 0x1c
/* 802CACEC 002C7C4C  98 1E 00 B6 */	stb r0, 0xb6(r30)
/* 802CACF0 002C7C50  88 BF 00 0C */	lbz r5, 0xc(r31)
/* 802CACF4 002C7C54  88 1E 00 B6 */	lbz r0, 0xb6(r30)
/* 802CACF8 002C7C58  50 A0 17 7A */	rlwimi r0, r5, 2, 0x1d, 0x1d
/* 802CACFC 002C7C5C  98 1E 00 B6 */	stb r0, 0xb6(r30)
/* 802CAD00 002C7C60  88 1E 00 B6 */	lbz r0, 0xb6(r30)
/* 802CAD04 002C7C64  50 C0 0F BC */	rlwimi r0, r6, 1, 0x1e, 0x1e
/* 802CAD08 002C7C68  98 1E 00 B6 */	stb r0, 0xb6(r30)
/* 802CAD0C 002C7C6C  88 1E 00 B6 */	lbz r0, 0xb6(r30)
/* 802CAD10 002C7C70  50 E0 07 FE */	rlwimi r0, r7, 0, 0x1f, 0x1f
/* 802CAD14 002C7C74  98 1E 00 B6 */	stb r0, 0xb6(r30)
/* 802CAD18 002C7C78  88 1E 00 B7 */	lbz r0, 0xb7(r30)
/* 802CAD1C 002C7C7C  50 C0 3E 30 */	rlwimi r0, r6, 7, 0x18, 0x18
/* 802CAD20 002C7C80  98 1E 00 B7 */	stb r0, 0xb7(r30)
/* 802CAD24 002C7C84  88 1E 00 B7 */	lbz r0, 0xb7(r30)
/* 802CAD28 002C7C88  50 E0 36 72 */	rlwimi r0, r7, 6, 0x19, 0x19
/* 802CAD2C 002C7C8C  98 1E 00 B7 */	stb r0, 0xb7(r30)
/* 802CAD30 002C7C90  4B FF FA 7D */	bl RecalcWidgetColor__10CGuiWidgetF14ETraversalMode
/* 802CAD34 002C7C94  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802CAD38 002C7C98  7F C3 F3 78 */	mr r3, r30
/* 802CAD3C 002C7C9C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802CAD40 002C7CA0  83 C1 00 08 */	lwz r30, 8(r1)
/* 802CAD44 002C7CA4  7C 08 03 A6 */	mtlr r0
/* 802CAD48 002C7CA8  38 21 00 10 */	addi r1, r1, 0x10
/* 802CAD4C 002C7CAC  4E 80 00 20 */	blr

.global ReadWidgetHeader__10CGuiWidgetFP9CGuiFrameR12CInputStreamb
ReadWidgetHeader__10CGuiWidgetFP9CGuiFrameR12CInputStreamb:
/* 802CAD50 002C7CB0  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 802CAD54 002C7CB4  7C 08 02 A6 */	mflr r0
/* 802CAD58 002C7CB8  90 01 00 74 */	stw r0, 0x74(r1)
/* 802CAD5C 002C7CBC  BE E1 00 4C */	stmw r23, 0x4c(r1)
/* 802CAD60 002C7CC0  7C B9 2B 78 */	mr r25, r5
/* 802CAD64 002C7CC4  7C 77 1B 78 */	mr r23, r3
/* 802CAD68 002C7CC8  7C 98 23 78 */	mr r24, r4
/* 802CAD6C 002C7CCC  38 61 00 34 */	addi r3, r1, 0x34
/* 802CAD70 002C7CD0  7F 24 CB 78 */	mr r4, r25
/* 802CAD74 002C7CD4  38 A1 00 1C */	addi r5, r1, 0x1c
/* 802CAD78 002C7CD8  48 07 35 81 */	bl "__ct__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator"
/* 802CAD7C 002C7CDC  38 78 00 18 */	addi r3, r24, 0x18
/* 802CAD80 002C7CE0  38 81 00 34 */	addi r4, r1, 0x34
/* 802CAD84 002C7CE4  48 00 02 79 */	bl "AddWidget__14CGuiWidgetIdDBFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 802CAD88 002C7CE8  7C 7C 1B 78 */	mr r28, r3
/* 802CAD8C 002C7CEC  7F 24 CB 78 */	mr r4, r25
/* 802CAD90 002C7CF0  38 61 00 24 */	addi r3, r1, 0x24
/* 802CAD94 002C7CF4  38 A1 00 18 */	addi r5, r1, 0x18
/* 802CAD98 002C7CF8  48 07 35 61 */	bl "__ct__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>FR12CInputStreamRCQ24rstl17rmemory_allocator"
/* 802CAD9C 002C7CFC  38 78 00 18 */	addi r3, r24, 0x18
/* 802CADA0 002C7D00  38 81 00 24 */	addi r4, r1, 0x24
/* 802CADA4 002C7D04  48 00 02 59 */	bl "AddWidget__14CGuiWidgetIdDBFRCQ24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>"
/* 802CADA8 002C7D08  7C 7B 1B 78 */	mr r27, r3
/* 802CADAC 002C7D0C  7F 23 CB 78 */	mr r3, r25
/* 802CADB0 002C7D10  48 07 3F 2D */	bl ReadBool__12CInputStreamFv
/* 802CADB4 002C7D14  7C 60 1B 78 */	mr r0, r3
/* 802CADB8 002C7D18  7F 23 CB 78 */	mr r3, r25
/* 802CADBC 002C7D1C  7C 1A 03 78 */	mr r26, r0
/* 802CADC0 002C7D20  48 07 3F 1D */	bl ReadBool__12CInputStreamFv
/* 802CADC4 002C7D24  7C 7D 1B 78 */	mr r29, r3
/* 802CADC8 002C7D28  7F 23 CB 78 */	mr r3, r25
/* 802CADCC 002C7D2C  48 07 3F 11 */	bl ReadBool__12CInputStreamFv
/* 802CADD0 002C7D30  7C 7E 1B 78 */	mr r30, r3
/* 802CADD4 002C7D34  7F 23 CB 78 */	mr r3, r25
/* 802CADD8 002C7D38  48 07 3F 05 */	bl ReadBool__12CInputStreamFv
/* 802CADDC 002C7D3C  7C 7F 1B 78 */	mr r31, r3
/* 802CADE0 002C7D40  7F 24 CB 78 */	mr r4, r25
/* 802CADE4 002C7D44  38 61 00 20 */	addi r3, r1, 0x20
/* 802CADE8 002C7D48  48 09 86 65 */	bl __ct__6CColorFR12CInputStream
/* 802CADEC 002C7D4C  7F 23 CB 78 */	mr r3, r25
/* 802CADF0 002C7D50  48 07 3E 95 */	bl ReadLong__12CInputStreamFv
/* 802CADF4 002C7D54  38 01 00 20 */	addi r0, r1, 0x20
/* 802CADF8 002C7D58  39 00 00 01 */	li r8, 1
/* 802CADFC 002C7D5C  90 01 00 08 */	stw r0, 8(r1)
/* 802CAE00 002C7D60  38 00 00 00 */	li r0, 0
/* 802CAE04 002C7D64  7F 04 C3 78 */	mr r4, r24
/* 802CAE08 002C7D68  7F 45 D3 78 */	mr r5, r26
/* 802CAE0C 002C7D6C  90 61 00 0C */	stw r3, 0xc(r1)
/* 802CAE10 002C7D70  7E E3 BB 78 */	mr r3, r23
/* 802CAE14 002C7D74  7F 86 E3 78 */	mr r6, r28
/* 802CAE18 002C7D78  7F 67 DB 78 */	mr r7, r27
/* 802CAE1C 002C7D7C  91 01 00 10 */	stw r8, 0x10(r1)
/* 802CAE20 002C7D80  57 A8 06 3E */	clrlwi r8, r29, 0x18
/* 802CAE24 002C7D84  57 C9 06 3E */	clrlwi r9, r30, 0x18
/* 802CAE28 002C7D88  57 EA 06 3E */	clrlwi r10, r31, 0x18
/* 802CAE2C 002C7D8C  90 01 00 14 */	stw r0, 0x14(r1)
/* 802CAE30 002C7D90  48 00 01 01 */	bl __ct__Q210CGuiWidget15CGuiWidgetParmsFP9CGuiFramebssbbbRC6CColorQ210CGuiWidget18EGuiModelDrawFlagsbb
/* 802CAE34 002C7D94  38 61 00 24 */	addi r3, r1, 0x24
/* 802CAE38 002C7D98  48 07 2C A9 */	bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 802CAE3C 002C7D9C  38 61 00 34 */	addi r3, r1, 0x34
/* 802CAE40 002C7DA0  48 07 2C A1 */	bl "internal_dereference__Q24rstl66basic_string<c,Q24rstl14char_traits<c>,Q24rstl17rmemory_allocator>Fv"
/* 802CAE44 002C7DA4  BA E1 00 4C */	lmw r23, 0x4c(r1)
/* 802CAE48 002C7DA8  80 01 00 74 */	lwz r0, 0x74(r1)
/* 802CAE4C 002C7DAC  7C 08 03 A6 */	mtlr r0
/* 802CAE50 002C7DB0  38 21 00 70 */	addi r1, r1, 0x70
/* 802CAE54 002C7DB4  4E 80 00 20 */	blr

.global Create__10CGuiWidgetFP9CGuiFrameR12CInputStreamb
Create__10CGuiWidgetFP9CGuiFrameR12CInputStreamb:
/* 802CAE58 002C7DB8  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 802CAE5C 002C7DBC  7C 08 02 A6 */	mflr r0
/* 802CAE60 002C7DC0  90 01 00 54 */	stw r0, 0x54(r1)
/* 802CAE64 002C7DC4  BF 61 00 3C */	stmw r27, 0x3c(r1)
/* 802CAE68 002C7DC8  7C 7E 1B 78 */	mr r30, r3
/* 802CAE6C 002C7DCC  7C 9F 23 78 */	mr r31, r4
/* 802CAE70 002C7DD0  38 61 00 08 */	addi r3, r1, 8
/* 802CAE74 002C7DD4  7F C4 F3 78 */	mr r4, r30
/* 802CAE78 002C7DD8  7F E5 FB 78 */	mr r5, r31
/* 802CAE7C 002C7DDC  4B FF FE D5 */	bl ReadWidgetHeader__10CGuiWidgetFP9CGuiFrameR12CInputStreamb
/* 802CAE80 002C7DE0  83 61 00 08 */	lwz r27, 8(r1)
/* 802CAE84 002C7DE4  3C 60 80 3D */	lis r3, lbl_803D68F8@ha
/* 802CAE88 002C7DE8  8B 81 00 0C */	lbz r28, 0xc(r1)
/* 802CAE8C 002C7DEC  38 63 68 F8 */	addi r3, r3, lbl_803D68F8@l
/* 802CAE90 002C7DF0  AB A1 00 0E */	lha r29, 0xe(r1)
/* 802CAE94 002C7DF4  38 83 00 49 */	addi r4, r3, 0x49
/* 802CAE98 002C7DF8  A9 81 00 10 */	lha r12, 0x10(r1)
/* 802CAE9C 002C7DFC  38 60 00 B8 */	li r3, 0xb8
/* 802CAEA0 002C7E00  89 61 00 12 */	lbz r11, 0x12(r1)
/* 802CAEA4 002C7E04  38 A0 00 00 */	li r5, 0
/* 802CAEA8 002C7E08  89 41 00 13 */	lbz r10, 0x13(r1)
/* 802CAEAC 002C7E0C  89 21 00 14 */	lbz r9, 0x14(r1)
/* 802CAEB0 002C7E10  89 01 00 15 */	lbz r8, 0x15(r1)
/* 802CAEB4 002C7E14  88 E1 00 16 */	lbz r7, 0x16(r1)
/* 802CAEB8 002C7E18  80 C1 00 18 */	lwz r6, 0x18(r1)
/* 802CAEBC 002C7E1C  80 01 00 1C */	lwz r0, 0x1c(r1)
/* 802CAEC0 002C7E20  93 61 00 20 */	stw r27, 0x20(r1)
/* 802CAEC4 002C7E24  9B 81 00 24 */	stb r28, 0x24(r1)
/* 802CAEC8 002C7E28  B3 A1 00 26 */	sth r29, 0x26(r1)
/* 802CAECC 002C7E2C  B1 81 00 28 */	sth r12, 0x28(r1)
/* 802CAED0 002C7E30  99 61 00 2A */	stb r11, 0x2a(r1)
/* 802CAED4 002C7E34  99 41 00 2B */	stb r10, 0x2b(r1)
/* 802CAED8 002C7E38  99 21 00 2C */	stb r9, 0x2c(r1)
/* 802CAEDC 002C7E3C  99 01 00 2D */	stb r8, 0x2d(r1)
/* 802CAEE0 002C7E40  98 E1 00 2E */	stb r7, 0x2e(r1)
/* 802CAEE4 002C7E44  90 C1 00 30 */	stw r6, 0x30(r1)
/* 802CAEE8 002C7E48  90 01 00 34 */	stw r0, 0x34(r1)
/* 802CAEEC 002C7E4C  48 04 A9 81 */	bl __nw__FUlPCcPCc
/* 802CAEF0 002C7E50  7C 7B 1B 79 */	or. r27, r3, r3
/* 802CAEF4 002C7E54  41 82 00 10 */	beq lbl_802CAF04
/* 802CAEF8 002C7E58  38 81 00 20 */	addi r4, r1, 0x20
/* 802CAEFC 002C7E5C  4B FF FD 29 */	bl __ct__10CGuiWidgetFRCQ210CGuiWidget15CGuiWidgetParms
/* 802CAF00 002C7E60  7C 7B 1B 78 */	mr r27, r3
lbl_802CAF04:
/* 802CAF04 002C7E64  7F 63 DB 78 */	mr r3, r27
/* 802CAF08 002C7E68  7F C4 F3 78 */	mr r4, r30
/* 802CAF0C 002C7E6C  7F E5 FB 78 */	mr r5, r31
/* 802CAF10 002C7E70  38 C1 00 20 */	addi r6, r1, 0x20
/* 802CAF14 002C7E74  4B FF FB 75 */	bl ParseBaseInfo__10CGuiWidgetFP9CGuiFrameR12CInputStreamRCQ210CGuiWidget15CGuiWidgetParms
/* 802CAF18 002C7E78  7F 63 DB 78 */	mr r3, r27
/* 802CAF1C 002C7E7C  BB 61 00 3C */	lmw r27, 0x3c(r1)
/* 802CAF20 002C7E80  80 01 00 54 */	lwz r0, 0x54(r1)
/* 802CAF24 002C7E84  7C 08 03 A6 */	mtlr r0
/* 802CAF28 002C7E88  38 21 00 50 */	addi r1, r1, 0x50
/* 802CAF2C 002C7E8C  4E 80 00 20 */	blr

.global __ct__Q210CGuiWidget15CGuiWidgetParmsFP9CGuiFramebssbbbRC6CColorQ210CGuiWidget18EGuiModelDrawFlagsbb
__ct__Q210CGuiWidget15CGuiWidgetParmsFP9CGuiFramebssbbbRC6CColorQ210CGuiWidget18EGuiModelDrawFlagsbb:
/* 802CAF30 002C7E90  90 83 00 00 */	stw r4, 0(r3)
/* 802CAF34 002C7E94  88 81 00 13 */	lbz r4, 0x13(r1)
/* 802CAF38 002C7E98  98 A3 00 04 */	stb r5, 4(r3)
/* 802CAF3C 002C7E9C  88 01 00 17 */	lbz r0, 0x17(r1)
/* 802CAF40 002C7EA0  B0 C3 00 06 */	sth r6, 6(r3)
/* 802CAF44 002C7EA4  80 C1 00 08 */	lwz r6, 8(r1)
/* 802CAF48 002C7EA8  B0 E3 00 08 */	sth r7, 8(r3)
/* 802CAF4C 002C7EAC  80 A1 00 0C */	lwz r5, 0xc(r1)
/* 802CAF50 002C7EB0  99 03 00 0A */	stb r8, 0xa(r3)
/* 802CAF54 002C7EB4  99 23 00 0B */	stb r9, 0xb(r3)
/* 802CAF58 002C7EB8  99 43 00 0C */	stb r10, 0xc(r3)
/* 802CAF5C 002C7EBC  98 83 00 0D */	stb r4, 0xd(r3)
/* 802CAF60 002C7EC0  98 03 00 0E */	stb r0, 0xe(r3)
/* 802CAF64 002C7EC4  80 06 00 00 */	lwz r0, 0(r6)
/* 802CAF68 002C7EC8  90 03 00 10 */	stw r0, 0x10(r3)
/* 802CAF6C 002C7ECC  90 A3 00 14 */	stw r5, 0x14(r3)
/* 802CAF70 002C7ED0  4E 80 00 20 */	blr

.section .rodata
.balign 8
.global lbl_803D68F8
lbl_803D68F8:
	# ROM: 0x3D38F8
	.asciz "Warning: Discarding useless worker id.  Parent is not a compound widget."
	.byte 0x3F, 0x3F, 0x28
	.4byte 0x3F3F2900