.include "macros.inc" .section .data .balign 8 .global lbl_803ECA50 lbl_803ECA50: # ROM: 0x3E9A50 .4byte 0 .4byte 0 .4byte __dt__16CAuiEnergyBarT01Fv .4byte Update__16CAuiEnergyBarT01Ff .4byte Draw__16CAuiEnergyBarT01CFRC19CGuiWidgetDrawParms .4byte Initialize__10CGuiWidgetFv .4byte ProcessUserInput__10CGuiWidgetFRC11CFinalInput .4byte Touch__10CGuiWidgetCFv .4byte GetIsVisible__10CGuiWidgetCFv .4byte sub_80020464 .4byte GetWidgetTypeID__16CAuiEnergyBarT01CFv .4byte AddWorkerWidget__10CGuiWidgetFP10CGuiWidget .4byte GetIsFinishedLoadingWidgetSpecific__10CGuiWidgetCFv .4byte OnVisible__10CGuiWidgetFv .4byte OnActivate__10CGuiWidgetFv .4byte 0 .section .sdata .balign 8 .global lbl_805A86D8 lbl_805A86D8: # ROM: 0x3F6078 .4byte 0 .global lbl_805A86DC lbl_805A86DC: # ROM: 0x3F607C .4byte 0 .section .text, "ax" .global GetWidgetTypeID__16CAuiEnergyBarT01CFv GetWidgetTypeID__16CAuiEnergyBarT01CFv: /* 802CB1D0 002C8130 3C 60 45 4E */ lis r3, 0x454E5247@ha /* 802CB1D4 002C8134 38 63 52 47 */ addi r3, r3, 0x454E5247@l /* 802CB1D8 002C8138 4E 80 00 20 */ blr .global GetActualFraction__16CAuiEnergyBarT01CFv GetActualFraction__16CAuiEnergyBarT01CFv: /* 802CB1DC 002C813C C0 22 C4 20 */ lfs f1, lbl_805AE140@sda21(r2) /* 802CB1E0 002C8140 C0 43 00 E0 */ lfs f2, 0xe0(r3) /* 802CB1E4 002C8144 FC 01 10 00 */ fcmpu cr0, f1, f2 /* 802CB1E8 002C8148 4D 82 00 20 */ beqlr /* 802CB1EC 002C814C C0 03 00 F4 */ lfs f0, 0xf4(r3) /* 802CB1F0 002C8150 EC 20 10 24 */ fdivs f1, f0, f2 /* 802CB1F4 002C8154 4E 80 00 20 */ blr .global Draw__16CAuiEnergyBarT01CFRC19CGuiWidgetDrawParms Draw__16CAuiEnergyBarT01CFRC19CGuiWidgetDrawParms: /* 802CB1F8 002C8158 94 21 FE F0 */ stwu r1, -0x110(r1) /* 802CB1FC 002C815C 7C 08 02 A6 */ mflr r0 /* 802CB200 002C8160 90 01 01 14 */ stw r0, 0x114(r1) /* 802CB204 002C8164 DB E1 01 00 */ stfd f31, 0x100(r1) /* 802CB208 002C8168 F3 E1 01 08 */ psq_st f31, 264(r1), 0, qr0 /* 802CB20C 002C816C DB C1 00 F0 */ stfd f30, 0xf0(r1) /* 802CB210 002C8170 F3 C1 00 F8 */ psq_st f30, 248(r1), 0, qr0 /* 802CB214 002C8174 DB A1 00 E0 */ stfd f29, 0xe0(r1) /* 802CB218 002C8178 F3 A1 00 E8 */ psq_st f29, 232(r1), 0, qr0 /* 802CB21C 002C817C DB 81 00 D0 */ stfd f28, 0xd0(r1) /* 802CB220 002C8180 F3 81 00 D8 */ psq_st f28, 216(r1), 0, qr0 /* 802CB224 002C8184 DB 61 00 C0 */ stfd f27, 0xc0(r1) /* 802CB228 002C8188 F3 61 00 C8 */ psq_st f27, 200(r1), 0, qr0 /* 802CB22C 002C818C BF 61 00 AC */ stmw r27, 0xac(r1) /* 802CB230 002C8190 7C 7C 1B 78 */ mr r28, r3 /* 802CB234 002C8194 7C 9D 23 78 */ mr r29, r4 /* 802CB238 002C8198 38 7C 00 34 */ addi r3, r28, 0x34 /* 802CB23C 002C819C 48 04 13 A5 */ bl SetModelMatrix__9CGraphicsFRC12CTransform4f /* 802CB240 002C81A0 88 1C 00 C8 */ lbz r0, 0xc8(r28) /* 802CB244 002C81A4 28 00 00 00 */ cmplwi r0, 0 /* 802CB248 002C81A8 41 82 03 AC */ beq lbl_802CB5F4 /* 802CB24C 002C81AC 80 1C 00 C4 */ lwz r0, 0xc4(r28) /* 802CB250 002C81B0 38 80 00 00 */ li r4, 0 /* 802CB254 002C81B4 28 00 00 00 */ cmplwi r0, 0 /* 802CB258 002C81B8 40 82 00 14 */ bne lbl_802CB26C /* 802CB25C 002C81BC 80 7C 00 BC */ lwz r3, 0xbc(r28) /* 802CB260 002C81C0 80 03 00 10 */ lwz r0, 0x10(r3) /* 802CB264 002C81C4 28 00 00 00 */ cmplwi r0, 0 /* 802CB268 002C81C8 41 82 00 08 */ beq lbl_802CB270 lbl_802CB26C: /* 802CB26C 002C81CC 38 80 00 01 */ li r4, 1 lbl_802CB270: /* 802CB270 002C81D0 54 80 06 3F */ clrlwi. r0, r4, 0x18 /* 802CB274 002C81D4 41 82 03 80 */ beq lbl_802CB5F4 /* 802CB278 002C81D8 80 1C 00 D8 */ lwz r0, 0xd8(r28) /* 802CB27C 002C81DC 28 00 00 00 */ cmplwi r0, 0 /* 802CB280 002C81E0 40 82 00 08 */ bne lbl_802CB288 /* 802CB284 002C81E4 48 00 03 70 */ b lbl_802CB5F4 lbl_802CB288: /* 802CB288 002C81E8 83 DC 00 C4 */ lwz r30, 0xc4(r28) /* 802CB28C 002C81EC 28 1E 00 00 */ cmplwi r30, 0 /* 802CB290 002C81F0 41 82 03 64 */ beq lbl_802CB5F4 /* 802CB294 002C81F4 38 60 00 01 */ li r3, 1 /* 802CB298 002C81F8 38 80 00 03 */ li r4, 3 /* 802CB29C 002C81FC 38 A0 00 00 */ li r5, 0 /* 802CB2A0 002C8200 48 04 07 F5 */ bl SetDepthWriteMode__9CGraphicsFb8ERglEnumb /* 802CB2A4 002C8204 48 07 ED 09 */ bl White__6CColorFv /* 802CB2A8 002C8208 48 04 0D 75 */ bl SetAmbientColor__9CGraphicsFRC6CColor /* 802CB2AC 002C820C 38 60 00 01 */ li r3, 1 /* 802CB2B0 002C8210 38 80 00 04 */ li r4, 4 /* 802CB2B4 002C8214 38 A0 00 01 */ li r5, 1 /* 802CB2B8 002C8218 38 C0 00 00 */ li r6, 0 /* 802CB2BC 002C821C 48 04 07 95 */ bl SetBlendMode__9CGraphicsF13ERglBlendMode15ERglBlendFactor15ERglBlendFactor11ERglLogicOp /* 802CB2C0 002C8220 C0 3C 00 E0 */ lfs f1, 0xe0(r28) /* 802CB2C4 002C8224 C3 C2 C4 20 */ lfs f30, lbl_805AE140@sda21(r2) /* 802CB2C8 002C8228 FC 01 F0 40 */ fcmpo cr0, f1, f30 /* 802CB2CC 002C822C 40 81 00 0C */ ble lbl_802CB2D8 /* 802CB2D0 002C8230 C0 1C 00 F8 */ lfs f0, 0xf8(r28) /* 802CB2D4 002C8234 EF C0 08 24 */ fdivs f30, f0, f1 lbl_802CB2D8: /* 802CB2D8 002C8238 C3 A2 C4 20 */ lfs f29, lbl_805AE140@sda21(r2) /* 802CB2DC 002C823C FC 01 E8 40 */ fcmpo cr0, f1, f29 /* 802CB2E0 002C8240 40 81 00 0C */ ble lbl_802CB2EC /* 802CB2E4 002C8244 C0 1C 00 FC */ lfs f0, 0xfc(r28) /* 802CB2E8 002C8248 EF A0 08 24 */ fdivs f29, f0, f1 lbl_802CB2EC: /* 802CB2EC 002C824C 88 7C 00 D3 */ lbz r3, 0xd3(r28) /* 802CB2F0 002C8250 3C 00 43 30 */ lis r0, 0x4330 /* 802CB2F4 002C8254 90 01 00 90 */ stw r0, 0x90(r1) /* 802CB2F8 002C8258 3B FC 00 A8 */ addi r31, r28, 0xa8 /* 802CB2FC 002C825C C8 22 C4 28 */ lfd f1, lbl_805AE148@sda21(r2) /* 802CB300 002C8260 90 61 00 94 */ stw r3, 0x94(r1) /* 802CB304 002C8264 C0 5D 00 00 */ lfs f2, 0(r29) /* 802CB308 002C8268 C8 01 00 90 */ lfd f0, 0x90(r1) /* 802CB30C 002C826C EC 00 08 28 */ fsubs f0, f0, f1 /* 802CB310 002C8270 EF 82 00 32 */ fmuls f28, f2, f0 /* 802CB314 002C8274 F3 81 A0 0A */ psq_st f28, 10(r1), 1, qr2 /* 802CB318 002C8278 7F E4 FB 78 */ mr r4, r31 /* 802CB31C 002C827C 80 DC 00 D0 */ lwz r6, 0xd0(r28) /* 802CB320 002C8280 38 61 00 20 */ addi r3, r1, 0x20 /* 802CB324 002C8284 88 01 00 0A */ lbz r0, 0xa(r1) /* 802CB328 002C8288 38 A1 00 1C */ addi r5, r1, 0x1c /* 802CB32C 002C828C 50 C0 00 2E */ rlwimi r0, r6, 0, 0, 0x17 /* 802CB330 002C8290 90 01 00 1C */ stw r0, 0x1c(r1) /* 802CB334 002C8294 48 09 7E 45 */ bl Modulate__6CColorFRC6CColorRC6CColor /* 802CB338 002C8298 88 7C 00 D7 */ lbz r3, 0xd7(r28) /* 802CB33C 002C829C 3C 00 43 30 */ lis r0, 0x4330 /* 802CB340 002C82A0 80 81 00 20 */ lwz r4, 0x20(r1) /* 802CB344 002C82A4 90 61 00 9C */ stw r3, 0x9c(r1) /* 802CB348 002C82A8 C8 22 C4 28 */ lfd f1, lbl_805AE148@sda21(r2) /* 802CB34C 002C82AC 90 01 00 98 */ stw r0, 0x98(r1) /* 802CB350 002C82B0 C0 5D 00 00 */ lfs f2, 0(r29) /* 802CB354 002C82B4 C8 01 00 98 */ lfd f0, 0x98(r1) /* 802CB358 002C82B8 90 81 00 2C */ stw r4, 0x2c(r1) /* 802CB35C 002C82BC EC 00 08 28 */ fsubs f0, f0, f1 /* 802CB360 002C82C0 EF 62 00 32 */ fmuls f27, f2, f0 /* 802CB364 002C82C4 F3 61 A0 09 */ psq_st f27, 9(r1), 1, qr2 /* 802CB368 002C82C8 7F E4 FB 78 */ mr r4, r31 /* 802CB36C 002C82CC 80 DC 00 D4 */ lwz r6, 0xd4(r28) /* 802CB370 002C82D0 38 61 00 18 */ addi r3, r1, 0x18 /* 802CB374 002C82D4 88 01 00 09 */ lbz r0, 9(r1) /* 802CB378 002C82D8 38 A1 00 14 */ addi r5, r1, 0x14 /* 802CB37C 002C82DC 50 C0 00 2E */ rlwimi r0, r6, 0, 0, 0x17 /* 802CB380 002C82E0 90 01 00 14 */ stw r0, 0x14(r1) /* 802CB384 002C82E4 48 09 7D F5 */ bl Modulate__6CColorFRC6CColorRC6CColor /* 802CB388 002C82E8 88 7C 00 CF */ lbz r3, 0xcf(r28) /* 802CB38C 002C82EC 3C 00 43 30 */ lis r0, 0x4330 /* 802CB390 002C82F0 80 81 00 18 */ lwz r4, 0x18(r1) /* 802CB394 002C82F4 90 61 00 A4 */ stw r3, 0xa4(r1) /* 802CB398 002C82F8 C8 22 C4 28 */ lfd f1, lbl_805AE148@sda21(r2) /* 802CB39C 002C82FC 90 01 00 A0 */ stw r0, 0xa0(r1) /* 802CB3A0 002C8300 C0 5D 00 00 */ lfs f2, 0(r29) /* 802CB3A4 002C8304 C8 01 00 A0 */ lfd f0, 0xa0(r1) /* 802CB3A8 002C8308 90 81 00 28 */ stw r4, 0x28(r1) /* 802CB3AC 002C830C EC 00 08 28 */ fsubs f0, f0, f1 /* 802CB3B0 002C8310 EF E2 00 32 */ fmuls f31, f2, f0 /* 802CB3B4 002C8314 F3 E1 A0 08 */ psq_st f31, 8(r1), 1, qr2 /* 802CB3B8 002C8318 7F E4 FB 78 */ mr r4, r31 /* 802CB3BC 002C831C 80 DC 00 CC */ lwz r6, 0xcc(r28) /* 802CB3C0 002C8320 38 61 00 10 */ addi r3, r1, 0x10 /* 802CB3C4 002C8324 88 01 00 08 */ lbz r0, 8(r1) /* 802CB3C8 002C8328 38 A1 00 0C */ addi r5, r1, 0xc /* 802CB3CC 002C832C 50 C0 00 2E */ rlwimi r0, r6, 0, 0, 0x17 /* 802CB3D0 002C8330 90 01 00 0C */ stw r0, 0xc(r1) /* 802CB3D4 002C8334 48 09 7D A5 */ bl Modulate__6CColorFRC6CColorRC6CColor /* 802CB3D8 002C8338 80 01 00 10 */ lwz r0, 0x10(r1) /* 802CB3DC 002C833C 3B E1 00 84 */ addi r31, r1, 0x84 /* 802CB3E0 002C8340 3B A0 00 00 */ li r29, 0 /* 802CB3E4 002C8344 90 01 00 24 */ stw r0, 0x24(r1) lbl_802CB3E8: /* 802CB3E8 002C8348 2C 1D 00 00 */ cmpwi r29, 0 /* 802CB3EC 002C834C 40 82 00 0C */ bne lbl_802CB3F8 /* 802CB3F0 002C8350 C3 62 C4 20 */ lfs f27, lbl_805AE140@sda21(r2) /* 802CB3F4 002C8354 48 00 00 18 */ b lbl_802CB40C lbl_802CB3F8: /* 802CB3F8 002C8358 2C 1D 00 01 */ cmpwi r29, 1 /* 802CB3FC 002C835C 40 82 00 0C */ bne lbl_802CB408 /* 802CB400 002C8360 FF 60 F0 90 */ fmr f27, f30 /* 802CB404 002C8364 48 00 00 08 */ b lbl_802CB40C lbl_802CB408: /* 802CB408 002C8368 FF 60 E8 90 */ fmr f27, f29 lbl_802CB40C: /* 802CB40C 002C836C 2C 1D 00 00 */ cmpwi r29, 0 /* 802CB410 002C8370 40 82 00 0C */ bne lbl_802CB41C /* 802CB414 002C8374 FF 80 F0 90 */ fmr f28, f30 /* 802CB418 002C8378 48 00 00 18 */ b lbl_802CB430 lbl_802CB41C: /* 802CB41C 002C837C 2C 1D 00 01 */ cmpwi r29, 1 /* 802CB420 002C8380 40 82 00 0C */ bne lbl_802CB42C /* 802CB424 002C8384 FF 80 E8 90 */ fmr f28, f29 /* 802CB428 002C8388 48 00 00 08 */ b lbl_802CB430 lbl_802CB42C: /* 802CB42C 002C838C C3 82 C4 24 */ lfs f28, lbl_805AE144@sda21(r2) lbl_802CB430: /* 802CB430 002C8390 2C 1D 00 00 */ cmpwi r29, 0 /* 802CB434 002C8394 40 82 00 0C */ bne lbl_802CB440 /* 802CB438 002C8398 3B 61 00 2C */ addi r27, r1, 0x2c /* 802CB43C 002C839C 48 00 00 14 */ b lbl_802CB450 lbl_802CB440: /* 802CB440 002C83A0 2C 1D 00 01 */ cmpwi r29, 1 /* 802CB444 002C83A4 3B 61 00 24 */ addi r27, r1, 0x24 /* 802CB448 002C83A8 40 82 00 08 */ bne lbl_802CB450 /* 802CB44C 002C83AC 3B 61 00 28 */ addi r27, r1, 0x28 lbl_802CB450: /* 802CB450 002C83B0 FC 1B E0 00 */ fcmpu cr0, f27, f28 /* 802CB454 002C83B4 41 82 01 84 */ beq lbl_802CB5D8 /* 802CB458 002C83B8 3C 80 80 5A */ lis r4, lbl_805A5EBC@ha /* 802CB45C 002C83BC 38 60 00 00 */ li r3, 0 /* 802CB460 002C83C0 38 84 5E BC */ addi r4, r4, lbl_805A5EBC@l /* 802CB464 002C83C4 48 03 EE 55 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass /* 802CB468 002C83C8 80 8D 9C 68 */ lwz r4, lbl_805A8828@sda21(r13) /* 802CB46C 002C83CC 38 60 00 01 */ li r3, 1 /* 802CB470 002C83D0 48 03 EE 49 */ bl SetTevOp__9CGraphicsF12ERglTevStageRCQ213CTevCombiners8CTevPass /* 802CB474 002C83D4 7F C3 F3 78 */ mr r3, r30 /* 802CB478 002C83D8 38 80 00 00 */ li r4, 0 /* 802CB47C 002C83DC 38 A0 00 01 */ li r5, 1 /* 802CB480 002C83E0 48 04 42 BD */ bl Load__8CTextureCF11_GXTexMapIDQ28CTexture10EClampMode /* 802CB484 002C83E4 38 60 00 98 */ li r3, 0x98 /* 802CB488 002C83E8 48 04 01 E1 */ bl StreamBegin__9CGraphicsF13ERglPrimitive /* 802CB48C 002C83EC 7F 63 DB 78 */ mr r3, r27 /* 802CB490 002C83F0 48 04 00 B9 */ bl StreamColor__9CGraphicsFRC6CColor /* 802CB494 002C83F4 81 9C 00 D8 */ lwz r12, 0xd8(r28) /* 802CB498 002C83F8 FC 20 D8 90 */ fmr f1, f27 /* 802CB49C 002C83FC 38 61 00 60 */ addi r3, r1, 0x60 /* 802CB4A0 002C8400 7D 89 03 A6 */ mtctr r12 /* 802CB4A4 002C8404 4E 80 04 21 */ bctrl /* 802CB4A8 002C8408 C0 A1 00 60 */ lfs f5, 0x60(r1) /* 802CB4AC 002C840C C0 81 00 64 */ lfs f4, 0x64(r1) /* 802CB4B0 002C8410 C0 61 00 68 */ lfs f3, 0x68(r1) /* 802CB4B4 002C8414 C0 41 00 6C */ lfs f2, 0x6c(r1) /* 802CB4B8 002C8418 C0 21 00 70 */ lfs f1, 0x70(r1) /* 802CB4BC 002C841C C0 01 00 74 */ lfs f0, 0x74(r1) /* 802CB4C0 002C8420 D0 A1 00 78 */ stfs f5, 0x78(r1) /* 802CB4C4 002C8424 D0 81 00 7C */ stfs f4, 0x7c(r1) /* 802CB4C8 002C8428 D0 61 00 80 */ stfs f3, 0x80(r1) /* 802CB4CC 002C842C D0 41 00 84 */ stfs f2, 0x84(r1) /* 802CB4D0 002C8430 D0 21 00 88 */ stfs f1, 0x88(r1) /* 802CB4D4 002C8434 D0 01 00 8C */ stfs f0, 0x8c(r1) /* 802CB4D8 002C8438 48 00 00 F4 */ b lbl_802CB5CC lbl_802CB4DC: /* 802CB4DC 002C843C FC 20 D8 90 */ fmr f1, f27 /* 802CB4E0 002C8440 C0 42 C4 20 */ lfs f2, lbl_805AE140@sda21(r2) /* 802CB4E4 002C8444 48 03 FF 81 */ bl StreamTexcoord__9CGraphicsFff /* 802CB4E8 002C8448 38 61 00 78 */ addi r3, r1, 0x78 /* 802CB4EC 002C844C 48 04 00 D5 */ bl StreamVertex__9CGraphicsFRC9CVector3f /* 802CB4F0 002C8450 FC 20 D8 90 */ fmr f1, f27 /* 802CB4F4 002C8454 C0 42 C4 24 */ lfs f2, lbl_805AE144@sda21(r2) /* 802CB4F8 002C8458 48 03 FF 6D */ bl StreamTexcoord__9CGraphicsFff /* 802CB4FC 002C845C 7F E3 FB 78 */ mr r3, r31 /* 802CB500 002C8460 48 04 00 C1 */ bl StreamVertex__9CGraphicsFRC9CVector3f /* 802CB504 002C8464 C0 1C 00 DC */ lfs f0, 0xdc(r28) /* 802CB508 002C8468 EF 7B 00 2A */ fadds f27, f27, f0 /* 802CB50C 002C846C FC 1B E0 40 */ fcmpo cr0, f27, f28 /* 802CB510 002C8470 4C 41 13 82 */ cror 2, 1, 2 /* 802CB514 002C8474 40 82 00 74 */ bne lbl_802CB588 /* 802CB518 002C8478 81 9C 00 D8 */ lwz r12, 0xd8(r28) /* 802CB51C 002C847C FC 20 E0 90 */ fmr f1, f28 /* 802CB520 002C8480 38 61 00 48 */ addi r3, r1, 0x48 /* 802CB524 002C8484 7D 89 03 A6 */ mtctr r12 /* 802CB528 002C8488 4E 80 04 21 */ bctrl /* 802CB52C 002C848C 80 E1 00 48 */ lwz r7, 0x48(r1) /* 802CB530 002C8490 FC 20 E0 90 */ fmr f1, f28 /* 802CB534 002C8494 80 C1 00 4C */ lwz r6, 0x4c(r1) /* 802CB538 002C8498 80 A1 00 50 */ lwz r5, 0x50(r1) /* 802CB53C 002C849C 80 81 00 54 */ lwz r4, 0x54(r1) /* 802CB540 002C84A0 80 61 00 58 */ lwz r3, 0x58(r1) /* 802CB544 002C84A4 80 01 00 5C */ lwz r0, 0x5c(r1) /* 802CB548 002C84A8 90 E1 00 78 */ stw r7, 0x78(r1) /* 802CB54C 002C84AC C0 42 C4 20 */ lfs f2, lbl_805AE140@sda21(r2) /* 802CB550 002C84B0 90 C1 00 7C */ stw r6, 0x7c(r1) /* 802CB554 002C84B4 90 A1 00 80 */ stw r5, 0x80(r1) /* 802CB558 002C84B8 90 9F 00 00 */ stw r4, 0(r31) /* 802CB55C 002C84BC 90 7F 00 04 */ stw r3, 4(r31) /* 802CB560 002C84C0 90 1F 00 08 */ stw r0, 8(r31) /* 802CB564 002C84C4 48 03 FF 01 */ bl StreamTexcoord__9CGraphicsFff /* 802CB568 002C84C8 38 61 00 78 */ addi r3, r1, 0x78 /* 802CB56C 002C84CC 48 04 00 55 */ bl StreamVertex__9CGraphicsFRC9CVector3f /* 802CB570 002C84D0 FC 20 E0 90 */ fmr f1, f28 /* 802CB574 002C84D4 C0 42 C4 24 */ lfs f2, lbl_805AE144@sda21(r2) /* 802CB578 002C84D8 48 03 FE ED */ bl StreamTexcoord__9CGraphicsFff /* 802CB57C 002C84DC 7F E3 FB 78 */ mr r3, r31 /* 802CB580 002C84E0 48 04 00 41 */ bl StreamVertex__9CGraphicsFRC9CVector3f /* 802CB584 002C84E4 48 00 00 48 */ b lbl_802CB5CC lbl_802CB588: /* 802CB588 002C84E8 81 9C 00 D8 */ lwz r12, 0xd8(r28) /* 802CB58C 002C84EC FC 20 D8 90 */ fmr f1, f27 /* 802CB590 002C84F0 38 61 00 30 */ addi r3, r1, 0x30 /* 802CB594 002C84F4 7D 89 03 A6 */ mtctr r12 /* 802CB598 002C84F8 4E 80 04 21 */ bctrl /* 802CB59C 002C84FC 80 E1 00 30 */ lwz r7, 0x30(r1) /* 802CB5A0 002C8500 80 C1 00 34 */ lwz r6, 0x34(r1) /* 802CB5A4 002C8504 80 A1 00 38 */ lwz r5, 0x38(r1) /* 802CB5A8 002C8508 80 81 00 3C */ lwz r4, 0x3c(r1) /* 802CB5AC 002C850C 80 61 00 40 */ lwz r3, 0x40(r1) /* 802CB5B0 002C8510 80 01 00 44 */ lwz r0, 0x44(r1) /* 802CB5B4 002C8514 90 E1 00 78 */ stw r7, 0x78(r1) /* 802CB5B8 002C8518 90 C1 00 7C */ stw r6, 0x7c(r1) /* 802CB5BC 002C851C 90 A1 00 80 */ stw r5, 0x80(r1) /* 802CB5C0 002C8520 90 9F 00 00 */ stw r4, 0(r31) /* 802CB5C4 002C8524 90 7F 00 04 */ stw r3, 4(r31) /* 802CB5C8 002C8528 90 1F 00 08 */ stw r0, 8(r31) lbl_802CB5CC: /* 802CB5CC 002C852C FC 1B E0 40 */ fcmpo cr0, f27, f28 /* 802CB5D0 002C8530 41 80 FF 0C */ blt lbl_802CB4DC /* 802CB5D4 002C8534 48 03 FE 3D */ bl StreamEnd__9CGraphicsFv lbl_802CB5D8: /* 802CB5D8 002C8538 3B BD 00 01 */ addi r29, r29, 1 /* 802CB5DC 002C853C 2C 1D 00 03 */ cmpwi r29, 3 /* 802CB5E0 002C8540 41 80 FE 08 */ blt lbl_802CB3E8 /* 802CB5E4 002C8544 38 60 00 01 */ li r3, 1 /* 802CB5E8 002C8548 38 80 00 03 */ li r4, 3 /* 802CB5EC 002C854C 38 A0 00 01 */ li r5, 1 /* 802CB5F0 002C8550 48 04 04 A5 */ bl SetDepthWriteMode__9CGraphicsFb8ERglEnumb lbl_802CB5F4: /* 802CB5F4 002C8554 E3 E1 01 08 */ psq_l f31, 264(r1), 0, qr0 /* 802CB5F8 002C8558 CB E1 01 00 */ lfd f31, 0x100(r1) /* 802CB5FC 002C855C E3 C1 00 F8 */ psq_l f30, 248(r1), 0, qr0 /* 802CB600 002C8560 CB C1 00 F0 */ lfd f30, 0xf0(r1) /* 802CB604 002C8564 E3 A1 00 E8 */ psq_l f29, 232(r1), 0, qr0 /* 802CB608 002C8568 CB A1 00 E0 */ lfd f29, 0xe0(r1) /* 802CB60C 002C856C E3 81 00 D8 */ psq_l f28, 216(r1), 0, qr0 /* 802CB610 002C8570 CB 81 00 D0 */ lfd f28, 0xd0(r1) /* 802CB614 002C8574 E3 61 00 C8 */ psq_l f27, 200(r1), 0, qr0 /* 802CB618 002C8578 CB 61 00 C0 */ lfd f27, 0xc0(r1) /* 802CB61C 002C857C BB 61 00 AC */ lmw r27, 0xac(r1) /* 802CB620 002C8580 80 01 01 14 */ lwz r0, 0x114(r1) /* 802CB624 002C8584 7C 08 03 A6 */ mtlr r0 /* 802CB628 002C8588 38 21 01 10 */ addi r1, r1, 0x110 /* 802CB62C 002C858C 4E 80 00 20 */ blr .global DownloadBarCoordFunc__16CAuiEnergyBarT01Ff DownloadBarCoordFunc__16CAuiEnergyBarT01Ff: /* 802CB630 002C8590 C0 62 C4 30 */ lfs f3, lbl_805AE150@sda21(r2) /* 802CB634 002C8594 C0 02 C4 34 */ lfs f0, lbl_805AE154@sda21(r2) /* 802CB638 002C8598 C0 42 C4 20 */ lfs f2, lbl_805AE140@sda21(r2) /* 802CB63C 002C859C EC 63 00 78 */ fmsubs f3, f3, f1, f0 /* 802CB640 002C85A0 C0 22 C4 38 */ lfs f1, lbl_805AE158@sda21(r2) /* 802CB644 002C85A4 C0 02 C4 3C */ lfs f0, lbl_805AE15C@sda21(r2) /* 802CB648 002C85A8 D0 63 00 00 */ stfs f3, 0(r3) /* 802CB64C 002C85AC D0 43 00 04 */ stfs f2, 4(r3) /* 802CB650 002C85B0 D0 23 00 08 */ stfs f1, 8(r3) /* 802CB654 002C85B4 D0 63 00 0C */ stfs f3, 0xc(r3) /* 802CB658 002C85B8 D0 43 00 10 */ stfs f2, 0x10(r3) /* 802CB65C 002C85BC D0 03 00 14 */ stfs f0, 0x14(r3) /* 802CB660 002C85C0 4E 80 00 20 */ blr .global Update__16CAuiEnergyBarT01Ff Update__16CAuiEnergyBarT01Ff: /* 802CB664 002C85C4 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802CB668 002C85C8 7C 08 02 A6 */ mflr r0 /* 802CB66C 002C85CC 90 01 00 44 */ stw r0, 0x44(r1) /* 802CB670 002C85D0 DB E1 00 30 */ stfd f31, 0x30(r1) /* 802CB674 002C85D4 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0 /* 802CB678 002C85D8 93 E1 00 2C */ stw r31, 0x2c(r1) /* 802CB67C 002C85DC 93 C1 00 28 */ stw r30, 0x28(r1) /* 802CB680 002C85E0 7C 7F 1B 78 */ mr r31, r3 /* 802CB684 002C85E4 C0 02 C4 20 */ lfs f0, lbl_805AE140@sda21(r2) /* 802CB688 002C85E8 C0 43 01 00 */ lfs f2, 0x100(r3) /* 802CB68C 002C85EC FF E0 08 90 */ fmr f31, f1 /* 802CB690 002C85F0 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802CB694 002C85F4 40 81 00 2C */ ble lbl_802CB6C0 /* 802CB698 002C85F8 EC 22 F8 28 */ fsubs f1, f2, f31 /* 802CB69C 002C85FC C0 0D 9B 1C */ lfs f0, lbl_805A86DC@sda21(r13) /* 802CB6A0 002C8600 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802CB6A4 002C8604 D0 21 00 1C */ stfs f1, 0x1c(r1) /* 802CB6A8 002C8608 40 80 00 0C */ bge lbl_802CB6B4 /* 802CB6AC 002C860C 38 6D 9B 1C */ addi r3, r13, lbl_805A86DC@sda21 /* 802CB6B0 002C8610 48 00 00 08 */ b lbl_802CB6B8 lbl_802CB6B4: /* 802CB6B4 002C8614 38 61 00 1C */ addi r3, r1, 0x1c lbl_802CB6B8: /* 802CB6B8 002C8618 C0 03 00 00 */ lfs f0, 0(r3) /* 802CB6BC 002C861C D0 1F 01 00 */ stfs f0, 0x100(r31) lbl_802CB6C0: /* 802CB6C0 002C8620 C0 5F 00 F8 */ lfs f2, 0xf8(r31) /* 802CB6C4 002C8624 C0 1F 00 F4 */ lfs f0, 0xf4(r31) /* 802CB6C8 002C8628 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802CB6CC 002C862C 40 80 00 9C */ bge lbl_802CB768 /* 802CB6D0 002C8630 88 1F 00 F1 */ lbz r0, 0xf1(r31) /* 802CB6D4 002C8634 28 00 00 00 */ cmplwi r0, 0 /* 802CB6D8 002C8638 41 82 00 60 */ beq lbl_802CB738 /* 802CB6DC 002C863C C0 3F 00 E4 */ lfs f1, 0xe4(r31) /* 802CB6E0 002C8640 C0 02 C4 20 */ lfs f0, lbl_805AE140@sda21(r2) /* 802CB6E4 002C8644 EC 3F 10 7C */ fnmsubs f1, f31, f1, f2 /* 802CB6E8 002C8648 D0 3F 00 F8 */ stfs f1, 0xf8(r31) /* 802CB6EC 002C864C C0 3F 00 F8 */ lfs f1, 0xf8(r31) /* 802CB6F0 002C8650 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802CB6F4 002C8654 40 80 01 08 */ bge lbl_802CB7FC /* 802CB6F8 002C8658 C0 1F 00 E0 */ lfs f0, 0xe0(r31) /* 802CB6FC 002C865C EC 21 00 2A */ fadds f1, f1, f0 /* 802CB700 002C8660 D0 21 00 18 */ stfs f1, 0x18(r1) /* 802CB704 002C8664 C0 1F 00 F4 */ lfs f0, 0xf4(r31) /* 802CB708 002C8668 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 802CB70C 002C866C 40 80 00 0C */ bge lbl_802CB718 /* 802CB710 002C8670 38 61 00 18 */ addi r3, r1, 0x18 /* 802CB714 002C8674 48 00 00 08 */ b lbl_802CB71C lbl_802CB718: /* 802CB718 002C8678 38 7F 00 F4 */ addi r3, r31, 0xf4 lbl_802CB71C: /* 802CB71C 002C867C C0 03 00 00 */ lfs f0, 0(r3) /* 802CB720 002C8680 38 00 00 00 */ li r0, 0 /* 802CB724 002C8684 D0 1F 00 F8 */ stfs f0, 0xf8(r31) /* 802CB728 002C8688 98 1F 00 F1 */ stb r0, 0xf1(r31) /* 802CB72C 002C868C C0 1F 00 E0 */ lfs f0, 0xe0(r31) /* 802CB730 002C8690 D0 1F 00 FC */ stfs f0, 0xfc(r31) /* 802CB734 002C8694 48 00 00 C8 */ b lbl_802CB7FC lbl_802CB738: /* 802CB738 002C8698 C0 1F 00 E4 */ lfs f0, 0xe4(r31) /* 802CB73C 002C869C EC 3F 10 3A */ fmadds f1, f31, f0, f2 /* 802CB740 002C86A0 D0 21 00 14 */ stfs f1, 0x14(r1) /* 802CB744 002C86A4 C0 1F 00 F4 */ lfs f0, 0xf4(r31) /* 802CB748 002C86A8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802CB74C 002C86AC 40 80 00 0C */ bge lbl_802CB758 /* 802CB750 002C86B0 38 61 00 14 */ addi r3, r1, 0x14 /* 802CB754 002C86B4 48 00 00 08 */ b lbl_802CB75C lbl_802CB758: /* 802CB758 002C86B8 38 7F 00 F4 */ addi r3, r31, 0xf4 lbl_802CB75C: /* 802CB75C 002C86BC C0 03 00 00 */ lfs f0, 0(r3) /* 802CB760 002C86C0 D0 1F 00 F8 */ stfs f0, 0xf8(r31) /* 802CB764 002C86C4 48 00 00 98 */ b lbl_802CB7FC lbl_802CB768: /* 802CB768 002C86C8 40 81 00 94 */ ble lbl_802CB7FC /* 802CB76C 002C86CC 88 1F 00 F1 */ lbz r0, 0xf1(r31) /* 802CB770 002C86D0 28 00 00 00 */ cmplwi r0, 0 /* 802CB774 002C86D4 41 82 00 5C */ beq lbl_802CB7D0 /* 802CB778 002C86D8 C0 1F 00 E4 */ lfs f0, 0xe4(r31) /* 802CB77C 002C86DC EC 1F 10 3A */ fmadds f0, f31, f0, f2 /* 802CB780 002C86E0 D0 1F 00 F8 */ stfs f0, 0xf8(r31) /* 802CB784 002C86E4 C0 3F 00 F8 */ lfs f1, 0xf8(r31) /* 802CB788 002C86E8 C0 1F 00 E0 */ lfs f0, 0xe0(r31) /* 802CB78C 002C86EC FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802CB790 002C86F0 40 81 00 6C */ ble lbl_802CB7FC /* 802CB794 002C86F4 EC 21 00 28 */ fsubs f1, f1, f0 /* 802CB798 002C86F8 D0 21 00 10 */ stfs f1, 0x10(r1) /* 802CB79C 002C86FC C0 1F 00 F4 */ lfs f0, 0xf4(r31) /* 802CB7A0 002C8700 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802CB7A4 002C8704 40 80 00 0C */ bge lbl_802CB7B0 /* 802CB7A8 002C8708 38 61 00 10 */ addi r3, r1, 0x10 /* 802CB7AC 002C870C 48 00 00 08 */ b lbl_802CB7B4 lbl_802CB7B0: /* 802CB7B0 002C8710 38 7F 00 F4 */ addi r3, r31, 0xf4 lbl_802CB7B4: /* 802CB7B4 002C8714 C0 03 00 00 */ lfs f0, 0(r3) /* 802CB7B8 002C8718 38 00 00 00 */ li r0, 0 /* 802CB7BC 002C871C D0 1F 00 F8 */ stfs f0, 0xf8(r31) /* 802CB7C0 002C8720 98 1F 00 F1 */ stb r0, 0xf1(r31) /* 802CB7C4 002C8724 C0 1F 00 F8 */ lfs f0, 0xf8(r31) /* 802CB7C8 002C8728 D0 1F 00 FC */ stfs f0, 0xfc(r31) /* 802CB7CC 002C872C 48 00 00 30 */ b lbl_802CB7FC lbl_802CB7D0: /* 802CB7D0 002C8730 C0 1F 00 E4 */ lfs f0, 0xe4(r31) /* 802CB7D4 002C8734 EC 3F 10 3C */ fnmsubs f1, f31, f0, f2 /* 802CB7D8 002C8738 D0 21 00 0C */ stfs f1, 0xc(r1) /* 802CB7DC 002C873C C0 1F 00 F4 */ lfs f0, 0xf4(r31) /* 802CB7E0 002C8740 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 802CB7E4 002C8744 40 80 00 0C */ bge lbl_802CB7F0 /* 802CB7E8 002C8748 38 61 00 0C */ addi r3, r1, 0xc /* 802CB7EC 002C874C 48 00 00 08 */ b lbl_802CB7F4 lbl_802CB7F0: /* 802CB7F0 002C8750 38 7F 00 F4 */ addi r3, r31, 0xf4 lbl_802CB7F4: /* 802CB7F4 002C8754 C0 03 00 00 */ lfs f0, 0(r3) /* 802CB7F8 002C8758 D0 1F 00 F8 */ stfs f0, 0xf8(r31) lbl_802CB7FC: /* 802CB7FC 002C875C C0 5F 00 FC */ lfs f2, 0xfc(r31) /* 802CB800 002C8760 C0 1F 00 F8 */ lfs f0, 0xf8(r31) /* 802CB804 002C8764 FC 02 00 40 */ fcmpo cr0, f2, f0 /* 802CB808 002C8768 40 80 00 0C */ bge lbl_802CB814 /* 802CB80C 002C876C D0 1F 00 FC */ stfs f0, 0xfc(r31) /* 802CB810 002C8770 48 00 00 44 */ b lbl_802CB854 lbl_802CB814: /* 802CB814 002C8774 40 81 00 40 */ ble lbl_802CB854 /* 802CB818 002C8778 C0 22 C4 20 */ lfs f1, lbl_805AE140@sda21(r2) /* 802CB81C 002C877C C0 1F 01 00 */ lfs f0, 0x100(r31) /* 802CB820 002C8780 FC 01 00 00 */ fcmpu cr0, f1, f0 /* 802CB824 002C8784 40 82 00 30 */ bne lbl_802CB854 /* 802CB828 002C8788 C0 1F 00 E8 */ lfs f0, 0xe8(r31) /* 802CB82C 002C878C EC 3F 10 3C */ fnmsubs f1, f31, f0, f2 /* 802CB830 002C8790 D0 21 00 08 */ stfs f1, 8(r1) /* 802CB834 002C8794 C0 1F 00 F8 */ lfs f0, 0xf8(r31) /* 802CB838 002C8798 FC 00 08 40 */ fcmpo cr0, f0, f1 /* 802CB83C 002C879C 40 80 00 0C */ bge lbl_802CB848 /* 802CB840 002C87A0 38 61 00 08 */ addi r3, r1, 8 /* 802CB844 002C87A4 48 00 00 08 */ b lbl_802CB84C lbl_802CB848: /* 802CB848 002C87A8 38 7F 00 F8 */ addi r3, r31, 0xf8 lbl_802CB84C: /* 802CB84C 002C87AC C0 03 00 00 */ lfs f0, 0(r3) /* 802CB850 002C87B0 D0 1F 00 FC */ stfs f0, 0xfc(r31) lbl_802CB854: /* 802CB854 002C87B4 88 1F 00 C8 */ lbz r0, 0xc8(r31) /* 802CB858 002C87B8 28 00 00 00 */ cmplwi r0, 0 /* 802CB85C 002C87BC 41 82 00 40 */ beq lbl_802CB89C /* 802CB860 002C87C0 3B DF 00 BC */ addi r30, r31, 0xbc /* 802CB864 002C87C4 80 1F 00 C4 */ lwz r0, 0xc4(r31) /* 802CB868 002C87C8 28 00 00 00 */ cmplwi r0, 0 /* 802CB86C 002C87CC 40 82 00 30 */ bne lbl_802CB89C /* 802CB870 002C87D0 88 1E 00 04 */ lbz r0, 4(r30) /* 802CB874 002C87D4 28 00 00 00 */ cmplwi r0, 0 /* 802CB878 002C87D8 41 82 00 24 */ beq lbl_802CB89C /* 802CB87C 002C87DC 80 7E 00 00 */ lwz r3, 0(r30) /* 802CB880 002C87E0 80 03 00 10 */ lwz r0, 0x10(r3) /* 802CB884 002C87E4 28 00 00 00 */ cmplwi r0, 0 /* 802CB888 002C87E8 41 82 00 14 */ beq lbl_802CB89C /* 802CB88C 002C87EC 7F C3 F3 78 */ mr r3, r30 /* 802CB890 002C87F0 48 07 55 7D */ bl GetObj__6CTokenFv /* 802CB894 002C87F4 80 03 00 04 */ lwz r0, 4(r3) /* 802CB898 002C87F8 90 1E 00 08 */ stw r0, 8(r30) lbl_802CB89C: /* 802CB89C 002C87FC FC 20 F8 90 */ fmr f1, f31 /* 802CB8A0 002C8800 7F E3 FB 78 */ mr r3, r31 /* 802CB8A4 002C8804 4B FF F1 31 */ bl Update__10CGuiWidgetFf /* 802CB8A8 002C8808 E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0 /* 802CB8AC 002C880C 80 01 00 44 */ lwz r0, 0x44(r1) /* 802CB8B0 002C8810 CB E1 00 30 */ lfd f31, 0x30(r1) /* 802CB8B4 002C8814 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 802CB8B8 002C8818 83 C1 00 28 */ lwz r30, 0x28(r1) /* 802CB8BC 002C881C 7C 08 03 A6 */ mtlr r0 /* 802CB8C0 002C8820 38 21 00 40 */ addi r1, r1, 0x40 /* 802CB8C4 002C8824 4E 80 00 20 */ blr .global SetCurrEnergy__16CAuiEnergyBarT01Ffb SetCurrEnergy__16CAuiEnergyBarT01Ffb: /* 802CB8C8 002C8828 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802CB8CC 002C882C 7C 08 02 A6 */ mflr r0 /* 802CB8D0 002C8830 90 01 00 24 */ stw r0, 0x24(r1) /* 802CB8D4 002C8834 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802CB8D8 002C8838 7C 9F 23 78 */ mr r31, r4 /* 802CB8DC 002C883C 38 81 00 08 */ addi r4, r1, 8 /* 802CB8E0 002C8840 93 C1 00 18 */ stw r30, 0x18(r1) /* 802CB8E4 002C8844 7C 7E 1B 78 */ mr r30, r3 /* 802CB8E8 002C8848 38 BE 00 E0 */ addi r5, r30, 0xe0 /* 802CB8EC 002C884C 38 6D 9B 18 */ addi r3, r13, lbl_805A86D8@sda21 /* 802CB8F0 002C8850 D0 21 00 08 */ stfs f1, 8(r1) /* 802CB8F4 002C8854 4B D4 09 C1 */ bl "Clamp__5CMathFRCfRCfRCf" /* 802CB8F8 002C8858 C0 43 00 00 */ lfs f2, 0(r3) /* 802CB8FC 002C885C C0 1E 00 F4 */ lfs f0, 0xf4(r30) /* 802CB900 002C8860 FC 02 00 00 */ fcmpu cr0, f2, f0 /* 802CB904 002C8864 41 82 00 4C */ beq lbl_802CB950 /* 802CB908 002C8868 88 1E 00 F0 */ lbz r0, 0xf0(r30) /* 802CB90C 002C886C 28 00 00 00 */ cmplwi r0, 0 /* 802CB910 002C8870 40 82 00 14 */ bne lbl_802CB924 /* 802CB914 002C8874 C0 3E 00 F8 */ lfs f1, 0xf8(r30) /* 802CB918 002C8878 C0 1E 00 FC */ lfs f0, 0xfc(r30) /* 802CB91C 002C887C FC 01 00 00 */ fcmpu cr0, f1, f0 /* 802CB920 002C8880 40 82 00 0C */ bne lbl_802CB92C lbl_802CB924: /* 802CB924 002C8884 C0 1E 00 EC */ lfs f0, 0xec(r30) /* 802CB928 002C8888 D0 1E 01 00 */ stfs f0, 0x100(r30) lbl_802CB92C: /* 802CB92C 002C888C 20 1F 00 01 */ subfic r0, r31, 1 /* 802CB930 002C8890 2C 1F 00 02 */ cmpwi r31, 2 /* 802CB934 002C8894 7C 00 00 34 */ cntlzw r0, r0 /* 802CB938 002C8898 54 00 D9 7E */ srwi r0, r0, 5 /* 802CB93C 002C889C 98 1E 00 F1 */ stb r0, 0xf1(r30) /* 802CB940 002C88A0 D0 5E 00 F4 */ stfs f2, 0xf4(r30) /* 802CB944 002C88A4 40 82 00 0C */ bne lbl_802CB950 /* 802CB948 002C88A8 C0 1E 00 F4 */ lfs f0, 0xf4(r30) /* 802CB94C 002C88AC D0 1E 00 F8 */ stfs f0, 0xf8(r30) lbl_802CB950: /* 802CB950 002C88B0 80 01 00 24 */ lwz r0, 0x24(r1) /* 802CB954 002C88B4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802CB958 002C88B8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802CB95C 002C88BC 7C 08 03 A6 */ mtlr r0 /* 802CB960 002C88C0 38 21 00 20 */ addi r1, r1, 0x20 /* 802CB964 002C88C4 4E 80 00 20 */ blr .global SetMaxEnergy__16CAuiEnergyBarT01Ff SetMaxEnergy__16CAuiEnergyBarT01Ff: /* 802CB968 002C88C8 D0 23 00 E0 */ stfs f1, 0xe0(r3) /* 802CB96C 002C88CC C0 23 00 E0 */ lfs f1, 0xe0(r3) /* 802CB970 002C88D0 C0 03 00 F4 */ lfs f0, 0xf4(r3) /* 802CB974 002C88D4 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802CB978 002C88D8 40 80 00 0C */ bge lbl_802CB984 /* 802CB97C 002C88DC 38 83 00 E0 */ addi r4, r3, 0xe0 /* 802CB980 002C88E0 48 00 00 08 */ b lbl_802CB988 lbl_802CB984: /* 802CB984 002C88E4 38 83 00 F4 */ addi r4, r3, 0xf4 lbl_802CB988: /* 802CB988 002C88E8 C0 04 00 00 */ lfs f0, 0(r4) /* 802CB98C 002C88EC D0 03 00 F4 */ stfs f0, 0xf4(r3) /* 802CB990 002C88F0 C0 23 00 E0 */ lfs f1, 0xe0(r3) /* 802CB994 002C88F4 C0 03 00 F8 */ lfs f0, 0xf8(r3) /* 802CB998 002C88F8 FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802CB99C 002C88FC 40 80 00 0C */ bge lbl_802CB9A8 /* 802CB9A0 002C8900 38 83 00 E0 */ addi r4, r3, 0xe0 /* 802CB9A4 002C8904 48 00 00 08 */ b lbl_802CB9AC lbl_802CB9A8: /* 802CB9A8 002C8908 38 83 00 F8 */ addi r4, r3, 0xf8 lbl_802CB9AC: /* 802CB9AC 002C890C C0 04 00 00 */ lfs f0, 0(r4) /* 802CB9B0 002C8910 D0 03 00 F8 */ stfs f0, 0xf8(r3) /* 802CB9B4 002C8914 C0 23 00 E0 */ lfs f1, 0xe0(r3) /* 802CB9B8 002C8918 C0 03 00 FC */ lfs f0, 0xfc(r3) /* 802CB9BC 002C891C FC 01 00 40 */ fcmpo cr0, f1, f0 /* 802CB9C0 002C8920 40 80 00 0C */ bge lbl_802CB9CC /* 802CB9C4 002C8924 38 83 00 E0 */ addi r4, r3, 0xe0 /* 802CB9C8 002C8928 48 00 00 08 */ b lbl_802CB9D0 lbl_802CB9CC: /* 802CB9CC 002C892C 38 83 00 FC */ addi r4, r3, 0xfc lbl_802CB9D0: /* 802CB9D0 002C8930 C0 04 00 00 */ lfs f0, 0(r4) /* 802CB9D4 002C8934 D0 03 00 FC */ stfs f0, 0xfc(r3) /* 802CB9D8 002C8938 4E 80 00 20 */ blr .global __dt__16CAuiEnergyBarT01Fv __dt__16CAuiEnergyBarT01Fv: /* 802CB9DC 002C893C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802CB9E0 002C8940 7C 08 02 A6 */ mflr r0 /* 802CB9E4 002C8944 90 01 00 14 */ stw r0, 0x14(r1) /* 802CB9E8 002C8948 93 E1 00 0C */ stw r31, 0xc(r1) /* 802CB9EC 002C894C 7C 9F 23 78 */ mr r31, r4 /* 802CB9F0 002C8950 93 C1 00 08 */ stw r30, 8(r1) /* 802CB9F4 002C8954 7C 7E 1B 79 */ or. r30, r3, r3 /* 802CB9F8 002C8958 41 82 00 60 */ beq lbl_802CBA58 /* 802CB9FC 002C895C 3C 60 80 3F */ lis r3, lbl_803ECA50@ha /* 802CBA00 002C8960 34 1E 00 BC */ addic. r0, r30, 0xbc /* 802CBA04 002C8964 38 03 CA 50 */ addi r0, r3, lbl_803ECA50@l /* 802CBA08 002C8968 90 1E 00 00 */ stw r0, 0(r30) /* 802CBA0C 002C896C 41 82 00 30 */ beq lbl_802CBA3C /* 802CBA10 002C8970 88 1E 00 C8 */ lbz r0, 0xc8(r30) /* 802CBA14 002C8974 28 00 00 00 */ cmplwi r0, 0 /* 802CBA18 002C8978 41 82 00 1C */ beq lbl_802CBA34 /* 802CBA1C 002C897C 34 7E 00 BC */ addic. r3, r30, 0xbc /* 802CBA20 002C8980 41 82 00 14 */ beq lbl_802CBA34 /* 802CBA24 002C8984 28 03 00 00 */ cmplwi r3, 0 /* 802CBA28 002C8988 41 82 00 0C */ beq lbl_802CBA34 /* 802CBA2C 002C898C 38 80 00 00 */ li r4, 0 /* 802CBA30 002C8990 48 07 54 11 */ bl __dt__6CTokenFv lbl_802CBA34: /* 802CBA34 002C8994 38 00 00 00 */ li r0, 0 /* 802CBA38 002C8998 98 1E 00 C8 */ stb r0, 0xc8(r30) lbl_802CBA3C: /* 802CBA3C 002C899C 7F C3 F3 78 */ mr r3, r30 /* 802CBA40 002C89A0 38 80 00 00 */ li r4, 0 /* 802CBA44 002C89A4 4B FF F1 71 */ bl __dt__10CGuiWidgetFv /* 802CBA48 002C89A8 7F E0 07 35 */ extsh. r0, r31 /* 802CBA4C 002C89AC 40 81 00 0C */ ble lbl_802CBA58 /* 802CBA50 002C89B0 7F C3 F3 78 */ mr r3, r30 /* 802CBA54 002C89B4 48 04 9E DD */ bl Free__7CMemoryFPCv lbl_802CBA58: /* 802CBA58 002C89B8 80 01 00 14 */ lwz r0, 0x14(r1) /* 802CBA5C 002C89BC 7F C3 F3 78 */ mr r3, r30 /* 802CBA60 002C89C0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802CBA64 002C89C4 83 C1 00 08 */ lwz r30, 8(r1) /* 802CBA68 002C89C8 7C 08 03 A6 */ mtlr r0 /* 802CBA6C 002C89CC 38 21 00 10 */ addi r1, r1, 0x10 /* 802CBA70 002C89D0 4E 80 00 20 */ blr .global __ct__16CAuiEnergyBarT01FRCQ210CGuiWidget15CGuiWidgetParmsUi __ct__16CAuiEnergyBarT01FRCQ210CGuiWidget15CGuiWidgetParmsUi: /* 802CBA74 002C89D4 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802CBA78 002C89D8 7C 08 02 A6 */ mflr r0 /* 802CBA7C 002C89DC 90 01 00 44 */ stw r0, 0x44(r1) /* 802CBA80 002C89E0 93 E1 00 3C */ stw r31, 0x3c(r1) /* 802CBA84 002C89E4 7C 7F 1B 78 */ mr r31, r3 /* 802CBA88 002C89E8 93 C1 00 38 */ stw r30, 0x38(r1) /* 802CBA8C 002C89EC 7C DE 33 78 */ mr r30, r6 /* 802CBA90 002C89F0 93 A1 00 34 */ stw r29, 0x34(r1) /* 802CBA94 002C89F4 7C BD 2B 78 */ mr r29, r5 /* 802CBA98 002C89F8 4B FF F1 8D */ bl __ct__10CGuiWidgetFRCQ210CGuiWidget15CGuiWidgetParms /* 802CBA9C 002C89FC 3C 60 80 3F */ lis r3, lbl_803ECA50@ha /* 802CBAA0 002C8A00 38 00 00 00 */ li r0, 0 /* 802CBAA4 002C8A04 38 63 CA 50 */ addi r3, r3, lbl_803ECA50@l /* 802CBAA8 002C8A08 90 7F 00 00 */ stw r3, 0(r31) /* 802CBAAC 002C8A0C 93 DF 00 B8 */ stw r30, 0xb8(r31) /* 802CBAB0 002C8A10 98 1F 00 C8 */ stb r0, 0xc8(r31) /* 802CBAB4 002C8A14 48 07 E4 F9 */ bl White__6CColorFv /* 802CBAB8 002C8A18 80 03 00 00 */ lwz r0, 0(r3) /* 802CBABC 002C8A1C 90 1F 00 CC */ stw r0, 0xcc(r31) /* 802CBAC0 002C8A20 48 07 E4 ED */ bl White__6CColorFv /* 802CBAC4 002C8A24 80 03 00 00 */ lwz r0, 0(r3) /* 802CBAC8 002C8A28 90 1F 00 D0 */ stw r0, 0xd0(r31) /* 802CBACC 002C8A2C 48 07 E4 E1 */ bl White__6CColorFv /* 802CBAD0 002C8A30 80 63 00 00 */ lwz r3, 0(r3) /* 802CBAD4 002C8A34 38 00 00 00 */ li r0, 0 /* 802CBAD8 002C8A38 C0 42 C4 24 */ lfs f2, lbl_805AE144@sda21(r2) /* 802CBADC 002C8A3C 90 7F 00 D4 */ stw r3, 0xd4(r31) /* 802CBAE0 002C8A40 C0 22 C4 20 */ lfs f1, lbl_805AE140@sda21(r2) /* 802CBAE4 002C8A44 90 1F 00 D8 */ stw r0, 0xd8(r31) /* 802CBAE8 002C8A48 C0 02 C4 40 */ lfs f0, lbl_805AE160@sda21(r2) /* 802CBAEC 002C8A4C D0 5F 00 DC */ stfs f2, 0xdc(r31) /* 802CBAF0 002C8A50 D0 3F 00 E0 */ stfs f1, 0xe0(r31) /* 802CBAF4 002C8A54 D0 1F 00 E4 */ stfs f0, 0xe4(r31) /* 802CBAF8 002C8A58 D0 1F 00 E8 */ stfs f0, 0xe8(r31) /* 802CBAFC 002C8A5C D0 3F 00 EC */ stfs f1, 0xec(r31) /* 802CBB00 002C8A60 98 1F 00 F0 */ stb r0, 0xf0(r31) /* 802CBB04 002C8A64 98 1F 00 F1 */ stb r0, 0xf1(r31) /* 802CBB08 002C8A68 D0 3F 00 F4 */ stfs f1, 0xf4(r31) /* 802CBB0C 002C8A6C D0 3F 00 F8 */ stfs f1, 0xf8(r31) /* 802CBB10 002C8A70 D0 3F 00 FC */ stfs f1, 0xfc(r31) /* 802CBB14 002C8A74 D0 3F 01 00 */ stfs f1, 0x100(r31) /* 802CBB18 002C8A78 80 6D A6 40 */ lwz r3, lbl_805A9200@sda21(r13) /* 802CBB1C 002C8A7C 80 03 00 08 */ lwz r0, 8(r3) /* 802CBB20 002C8A80 2C 00 00 02 */ cmpwi r0, 2 /* 802CBB24 002C8A84 41 82 00 B4 */ beq lbl_802CBBD8 /* 802CBB28 002C8A88 80 DF 00 B8 */ lwz r6, 0xb8(r31) /* 802CBB2C 002C8A8C 3C 60 54 58 */ lis r3, 0x54585452@ha /* 802CBB30 002C8A90 38 03 54 52 */ addi r0, r3, 0x54585452@l /* 802CBB34 002C8A94 7F A4 EB 78 */ mr r4, r29 /* 802CBB38 002C8A98 90 01 00 10 */ stw r0, 0x10(r1) /* 802CBB3C 002C8A9C 38 61 00 08 */ addi r3, r1, 8 /* 802CBB40 002C8AA0 38 A1 00 10 */ addi r5, r1, 0x10 /* 802CBB44 002C8AA4 90 C1 00 14 */ stw r6, 0x14(r1) /* 802CBB48 002C8AA8 81 9D 00 00 */ lwz r12, 0(r29) /* 802CBB4C 002C8AAC 81 8C 00 0C */ lwz r12, 0xc(r12) /* 802CBB50 002C8AB0 7D 89 03 A6 */ mtctr r12 /* 802CBB54 002C8AB4 4E 80 04 21 */ bctrl /* 802CBB58 002C8AB8 38 61 00 18 */ addi r3, r1, 0x18 /* 802CBB5C 002C8ABC 38 81 00 08 */ addi r4, r1, 8 /* 802CBB60 002C8AC0 48 07 53 49 */ bl __ct__6CTokenFRC6CToken /* 802CBB64 002C8AC4 38 00 00 00 */ li r0, 0 /* 802CBB68 002C8AC8 90 01 00 20 */ stw r0, 0x20(r1) /* 802CBB6C 002C8ACC 88 1F 00 C8 */ lbz r0, 0xc8(r31) /* 802CBB70 002C8AD0 28 00 00 00 */ cmplwi r0, 0 /* 802CBB74 002C8AD4 40 82 00 2C */ bne lbl_802CBBA0 /* 802CBB78 002C8AD8 37 DF 00 BC */ addic. r30, r31, 0xbc /* 802CBB7C 002C8ADC 41 82 00 18 */ beq lbl_802CBB94 /* 802CBB80 002C8AE0 7F C3 F3 78 */ mr r3, r30 /* 802CBB84 002C8AE4 38 81 00 18 */ addi r4, r1, 0x18 /* 802CBB88 002C8AE8 48 07 53 21 */ bl __ct__6CTokenFRC6CToken /* 802CBB8C 002C8AEC 80 01 00 20 */ lwz r0, 0x20(r1) /* 802CBB90 002C8AF0 90 1E 00 08 */ stw r0, 8(r30) lbl_802CBB94: /* 802CBB94 002C8AF4 38 00 00 01 */ li r0, 1 /* 802CBB98 002C8AF8 98 1F 00 C8 */ stb r0, 0xc8(r31) /* 802CBB9C 002C8AFC 48 00 00 1C */ b lbl_802CBBB8 lbl_802CBBA0: /* 802CBBA0 002C8B00 3B DF 00 BC */ addi r30, r31, 0xbc /* 802CBBA4 002C8B04 38 81 00 18 */ addi r4, r1, 0x18 /* 802CBBA8 002C8B08 7F C3 F3 78 */ mr r3, r30 /* 802CBBAC 002C8B0C 48 07 51 19 */ bl __as__6CTokenFRC6CToken /* 802CBBB0 002C8B10 80 01 00 20 */ lwz r0, 0x20(r1) /* 802CBBB4 002C8B14 90 1E 00 08 */ stw r0, 8(r30) lbl_802CBBB8: /* 802CBBB8 002C8B18 38 61 00 18 */ addi r3, r1, 0x18 /* 802CBBBC 002C8B1C 38 80 00 00 */ li r4, 0 /* 802CBBC0 002C8B20 48 07 52 81 */ bl __dt__6CTokenFv /* 802CBBC4 002C8B24 38 61 00 08 */ addi r3, r1, 8 /* 802CBBC8 002C8B28 38 80 FF FF */ li r4, -1 /* 802CBBCC 002C8B2C 48 07 52 75 */ bl __dt__6CTokenFv /* 802CBBD0 002C8B30 38 7F 00 BC */ addi r3, r31, 0xbc /* 802CBBD4 002C8B34 48 07 51 B1 */ bl Lock__6CTokenFv lbl_802CBBD8: /* 802CBBD8 002C8B38 80 01 00 44 */ lwz r0, 0x44(r1) /* 802CBBDC 002C8B3C 7F E3 FB 78 */ mr r3, r31 /* 802CBBE0 002C8B40 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 802CBBE4 002C8B44 83 C1 00 38 */ lwz r30, 0x38(r1) /* 802CBBE8 002C8B48 83 A1 00 34 */ lwz r29, 0x34(r1) /* 802CBBEC 002C8B4C 7C 08 03 A6 */ mtlr r0 /* 802CBBF0 002C8B50 38 21 00 40 */ addi r1, r1, 0x40 /* 802CBBF4 002C8B54 4E 80 00 20 */ blr .global Create__16CAuiEnergyBarT01FP9CGuiFrameR12CInputStreamb Create__16CAuiEnergyBarT01FP9CGuiFrameR12CInputStreamb: /* 802CBBF8 002C8B58 94 21 FF B0 */ stwu r1, -0x50(r1) /* 802CBBFC 002C8B5C 7C 08 02 A6 */ mflr r0 /* 802CBC00 002C8B60 90 01 00 54 */ stw r0, 0x54(r1) /* 802CBC04 002C8B64 BF 61 00 3C */ stmw r27, 0x3c(r1) /* 802CBC08 002C8B68 7C 7D 1B 78 */ mr r29, r3 /* 802CBC0C 002C8B6C 7C 9E 23 78 */ mr r30, r4 /* 802CBC10 002C8B70 7C BF 2B 78 */ mr r31, r5 /* 802CBC14 002C8B74 38 61 00 08 */ addi r3, r1, 8 /* 802CBC18 002C8B78 7F A4 EB 78 */ mr r4, r29 /* 802CBC1C 002C8B7C 7F C5 F3 78 */ mr r5, r30 /* 802CBC20 002C8B80 4B FF F1 31 */ bl ReadWidgetHeader__10CGuiWidgetFP9CGuiFrameR12CInputStreamb /* 802CBC24 002C8B84 83 81 00 08 */ lwz r28, 8(r1) /* 802CBC28 002C8B88 7F C3 F3 78 */ mr r3, r30 /* 802CBC2C 002C8B8C 89 81 00 0C */ lbz r12, 0xc(r1) /* 802CBC30 002C8B90 A9 61 00 0E */ lha r11, 0xe(r1) /* 802CBC34 002C8B94 A9 41 00 10 */ lha r10, 0x10(r1) /* 802CBC38 002C8B98 89 21 00 12 */ lbz r9, 0x12(r1) /* 802CBC3C 002C8B9C 89 01 00 13 */ lbz r8, 0x13(r1) /* 802CBC40 002C8BA0 88 E1 00 14 */ lbz r7, 0x14(r1) /* 802CBC44 002C8BA4 88 C1 00 15 */ lbz r6, 0x15(r1) /* 802CBC48 002C8BA8 88 A1 00 16 */ lbz r5, 0x16(r1) /* 802CBC4C 002C8BAC 80 81 00 18 */ lwz r4, 0x18(r1) /* 802CBC50 002C8BB0 80 01 00 1C */ lwz r0, 0x1c(r1) /* 802CBC54 002C8BB4 93 81 00 20 */ stw r28, 0x20(r1) /* 802CBC58 002C8BB8 99 81 00 24 */ stb r12, 0x24(r1) /* 802CBC5C 002C8BBC B1 61 00 26 */ sth r11, 0x26(r1) /* 802CBC60 002C8BC0 B1 41 00 28 */ sth r10, 0x28(r1) /* 802CBC64 002C8BC4 99 21 00 2A */ stb r9, 0x2a(r1) /* 802CBC68 002C8BC8 99 01 00 2B */ stb r8, 0x2b(r1) /* 802CBC6C 002C8BCC 98 E1 00 2C */ stb r7, 0x2c(r1) /* 802CBC70 002C8BD0 98 C1 00 2D */ stb r6, 0x2d(r1) /* 802CBC74 002C8BD4 98 A1 00 2E */ stb r5, 0x2e(r1) /* 802CBC78 002C8BD8 90 81 00 30 */ stw r4, 0x30(r1) /* 802CBC7C 002C8BDC 90 01 00 34 */ stw r0, 0x34(r1) /* 802CBC80 002C8BE0 48 07 30 05 */ bl ReadLong__12CInputStreamFv /* 802CBC84 002C8BE4 3C 80 80 3D */ lis r4, lbl_803D69B0@ha /* 802CBC88 002C8BE8 7C 7C 1B 78 */ mr r28, r3 /* 802CBC8C 002C8BEC 38 84 69 B0 */ addi r4, r4, lbl_803D69B0@l /* 802CBC90 002C8BF0 38 60 01 04 */ li r3, 0x104 /* 802CBC94 002C8BF4 38 A0 00 00 */ li r5, 0 /* 802CBC98 002C8BF8 38 84 00 0A */ addi r4, r4, 0xa /* 802CBC9C 002C8BFC 48 04 9B D1 */ bl __nw__FUlPCcPCc /* 802CBCA0 002C8C00 7C 7B 1B 79 */ or. r27, r3, r3 /* 802CBCA4 002C8C04 41 82 00 18 */ beq lbl_802CBCBC /* 802CBCA8 002C8C08 7F E5 FB 78 */ mr r5, r31 /* 802CBCAC 002C8C0C 7F 86 E3 78 */ mr r6, r28 /* 802CBCB0 002C8C10 38 81 00 20 */ addi r4, r1, 0x20 /* 802CBCB4 002C8C14 4B FF FD C1 */ bl __ct__16CAuiEnergyBarT01FRCQ210CGuiWidget15CGuiWidgetParmsUi /* 802CBCB8 002C8C18 7C 7B 1B 78 */ mr r27, r3 lbl_802CBCBC: /* 802CBCBC 002C8C1C 7F 63 DB 78 */ mr r3, r27 /* 802CBCC0 002C8C20 7F A4 EB 78 */ mr r4, r29 /* 802CBCC4 002C8C24 7F C5 F3 78 */ mr r5, r30 /* 802CBCC8 002C8C28 38 C1 00 20 */ addi r6, r1, 0x20 /* 802CBCCC 002C8C2C 4B FF ED BD */ bl ParseBaseInfo__10CGuiWidgetFP9CGuiFrameR12CInputStreamRCQ210CGuiWidget15CGuiWidgetParms /* 802CBCD0 002C8C30 7F 63 DB 78 */ mr r3, r27 /* 802CBCD4 002C8C34 BB 61 00 3C */ lmw r27, 0x3c(r1) /* 802CBCD8 002C8C38 80 01 00 54 */ lwz r0, 0x54(r1) /* 802CBCDC 002C8C3C 7C 08 03 A6 */ mtlr r0 /* 802CBCE0 002C8C40 38 21 00 50 */ addi r1, r1, 0x50 /* 802CBCE4 002C8C44 4E 80 00 20 */ blr .section .sdata2, "a" .balign 8 .global lbl_805AE140 lbl_805AE140: # ROM: 0x3FA9E0 .4byte 0 .global lbl_805AE144 lbl_805AE144: # ROM: 0x3FA9E4 .float 1.0 .global lbl_805AE148 lbl_805AE148: # ROM: 0x3FA9E8 .4byte 0x43300000 .4byte 0 .global lbl_805AE150 lbl_805AE150: # ROM: 0x3FA9F0 .4byte 0x41480000 .global lbl_805AE154 lbl_805AE154: # ROM: 0x3FA9F4 .4byte 0x40C80000 .global lbl_805AE158 lbl_805AE158: # ROM: 0x3FA9F8 .4byte 0xBE4CCCCD .global lbl_805AE15C lbl_805AE15C: # ROM: 0x3FA9FC .float 0.2 .global lbl_805AE160 lbl_805AE160: # ROM: 0x3FAA00 .4byte 0x447A0000 .4byte 0 .section .rodata .balign 8 .global lbl_803D69B0 lbl_803D69B0: # ROM: 0x3D39B0 .asciz "TextureId" .byte 0x3F, 0x3F .asciz "(??)" .balign 4 .4byte 0