.include "macros.inc"

.section .rodata
.global lbl_803D86C0
lbl_803D86C0:
	.incbin "baserom.dol", 0x3D56C0, 0x28
	
.section .data, "wa"
# TODO: Move these where they actually belong
.global lbl_803F2778
lbl_803F2778:
	.incbin "baserom.dol", 0x3EF778, 0x140
.global lbl_803F28B8
lbl_803F28B8:
	.incbin "baserom.dol", 0x3EF8B8, 0x40
.global lbl_803F28F8
lbl_803F28F8:
	.incbin "baserom.dol", 0x3EF8F8, 0x128
.global lbl_803F2A20
lbl_803F2A20:
	.incbin "baserom.dol", 0x3EFA20, 0x100
.global lbl_803F2B20
lbl_803F2B20:
	.incbin "baserom.dol", 0x3EFB20, 0x100
.global lbl_803F2C20
lbl_803F2C20:
	.incbin "baserom.dol", 0x3EFC20, 0x100
.global lbl_803F2D20
lbl_803F2D20:
	.incbin "baserom.dol", 0x3EFD20, 0x38
.global lbl_803F2D58
lbl_803F2D58:
	.incbin "baserom.dol", 0x3EFD58, 0x84
.global lbl_803F2DDC
lbl_803F2DDC:
	.incbin "baserom.dol", 0x3EFDDC, 0x84
.global lbl_803F2E60
lbl_803F2E60:
	.incbin "baserom.dol", 0x3EFE60, 0xE0
.global lbl_803F2F40
lbl_803F2F40:
	.incbin "baserom.dol", 0x3EFF40, 0x48
	
.section .text, "ax"
.if 1
/* TODO: Move __stdio_atexit to its own file (misc_io), 
 * it's here to work around a bug with CW 
 */
.global __stdio_atexit
__stdio_atexit:
/* 8038DCCC 0038AC2C  3C 60 80 39 */	lis r3, __close_all@ha
/* 8038DCD0 0038AC30  38 03 B1 18 */	addi r0, r3, __close_all@l
/* 8038DCD4 0038AC34  90 0D AE 00 */	stw r0, lbl_805A99C0@sda21(r13)
/* 8038DCD8 0038AC38  4E 80 00 20 */	blr 
.endif

.global sprintf
sprintf:
/* 8038DCDC 0038AC3C  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 8038DCE0 0038AC40  7C 08 02 A6 */	mflr r0
/* 8038DCE4 0038AC44  90 01 00 A4 */	stw r0, 0xa4(r1)
/* 8038DCE8 0038AC48  BF 21 00 84 */	stmw r25, 0x84(r1)
/* 8038DCEC 0038AC4C  7C 79 1B 78 */	mr r25, r3
/* 8038DCF0 0038AC50  7C 9A 23 78 */	mr r26, r4
/* 8038DCF4 0038AC54  40 86 00 24 */	bne cr1, lbl_8038DD18
/* 8038DCF8 0038AC58  D8 21 00 28 */	stfd f1, 0x28(r1)
/* 8038DCFC 0038AC5C  D8 41 00 30 */	stfd f2, 0x30(r1)
/* 8038DD00 0038AC60  D8 61 00 38 */	stfd f3, 0x38(r1)
/* 8038DD04 0038AC64  D8 81 00 40 */	stfd f4, 0x40(r1)
/* 8038DD08 0038AC68  D8 A1 00 48 */	stfd f5, 0x48(r1)
/* 8038DD0C 0038AC6C  D8 C1 00 50 */	stfd f6, 0x50(r1)
/* 8038DD10 0038AC70  D8 E1 00 58 */	stfd f7, 0x58(r1)
/* 8038DD14 0038AC74  D9 01 00 60 */	stfd f8, 0x60(r1)
lbl_8038DD18:
/* 8038DD18 0038AC78  3B A1 00 A8 */	addi r29, r1, 0xa8
/* 8038DD1C 0038AC7C  3B C1 00 08 */	addi r30, r1, 8
/* 8038DD20 0038AC80  3F 80 02 00 */	lis r28, 0x200
/* 8038DD24 0038AC84  3B E0 FF FF */	li r31, -1
/* 8038DD28 0038AC88  39 80 00 00 */	li r12, 0
/* 8038DD2C 0038AC8C  3D 60 80 39 */	lis r11, __StringWrite@ha
/* 8038DD30 0038AC90  90 81 00 0C */	stw r4, 0xc(r1)
/* 8038DD34 0038AC94  3B 61 00 74 */	addi r27, r1, 0x74
/* 8038DD38 0038AC98  38 0B DF 7C */	addi r0, r11, __StringWrite@l
/* 8038DD3C 0038AC9C  38 81 00 68 */	addi r4, r1, 0x68
/* 8038DD40 0038ACA0  90 61 00 08 */	stw r3, 8(r1)
/* 8038DD44 0038ACA4  7C 03 03 78 */	mr r3, r0
/* 8038DD48 0038ACA8  90 A1 00 10 */	stw r5, 0x10(r1)
/* 8038DD4C 0038ACAC  7F 45 D3 78 */	mr r5, r26
/* 8038DD50 0038ACB0  90 C1 00 14 */	stw r6, 0x14(r1)
/* 8038DD54 0038ACB4  7F 66 DB 78 */	mr r6, r27
/* 8038DD58 0038ACB8  90 E1 00 18 */	stw r7, 0x18(r1)
/* 8038DD5C 0038ACBC  91 01 00 1C */	stw r8, 0x1c(r1)
/* 8038DD60 0038ACC0  91 21 00 20 */	stw r9, 0x20(r1)
/* 8038DD64 0038ACC4  91 41 00 24 */	stw r10, 0x24(r1)
/* 8038DD68 0038ACC8  93 81 00 74 */	stw r28, 0x74(r1)
/* 8038DD6C 0038ACCC  93 A1 00 78 */	stw r29, 0x78(r1)
/* 8038DD70 0038ACD0  93 C1 00 7C */	stw r30, 0x7c(r1)
/* 8038DD74 0038ACD4  93 21 00 68 */	stw r25, 0x68(r1)
/* 8038DD78 0038ACD8  93 E1 00 6C */	stw r31, 0x6c(r1)
/* 8038DD7C 0038ACDC  91 81 00 70 */	stw r12, 0x70(r1)
/* 8038DD80 0038ACE0  48 00 02 C1 */	bl __pformatter
/* 8038DD84 0038ACE4  28 19 00 00 */	cmplwi r25, 0
/* 8038DD88 0038ACE8  41 82 00 20 */	beq lbl_8038DDA8
/* 8038DD8C 0038ACEC  38 00 FF FF */	li r0, -1
/* 8038DD90 0038ACF0  38 80 FF FE */	li r4, -2
/* 8038DD94 0038ACF4  7C 03 00 40 */	cmplw r3, r0
/* 8038DD98 0038ACF8  40 80 00 08 */	bge lbl_8038DDA0
/* 8038DD9C 0038ACFC  7C 64 1B 78 */	mr r4, r3
lbl_8038DDA0:
/* 8038DDA0 0038AD00  38 00 00 00 */	li r0, 0
/* 8038DDA4 0038AD04  7C 19 21 AE */	stbx r0, r25, r4
lbl_8038DDA8:
/* 8038DDA8 0038AD08  BB 21 00 84 */	lmw r25, 0x84(r1)
/* 8038DDAC 0038AD0C  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 8038DDB0 0038AD10  7C 08 03 A6 */	mtlr r0
/* 8038DDB4 0038AD14  38 21 00 A0 */	addi r1, r1, 0xa0
/* 8038DDB8 0038AD18  4E 80 00 20 */	blr 

.global vsprintf
vsprintf:
/* 8038DDBC 0038AD1C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8038DDC0 0038AD20  7C 08 02 A6 */	mflr r0
/* 8038DDC4 0038AD24  7C A6 2B 78 */	mr r6, r5
/* 8038DDC8 0038AD28  7C 85 23 78 */	mr r5, r4
/* 8038DDCC 0038AD2C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8038DDD0 0038AD30  38 E0 FF FF */	li r7, -1
/* 8038DDD4 0038AD34  38 00 00 00 */	li r0, 0
/* 8038DDD8 0038AD38  38 81 00 08 */	addi r4, r1, 8
/* 8038DDDC 0038AD3C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8038DDE0 0038AD40  7C 7F 1B 78 */	mr r31, r3
/* 8038DDE4 0038AD44  3C 60 80 39 */	lis r3, __StringWrite@ha
/* 8038DDE8 0038AD48  93 E1 00 08 */	stw r31, 8(r1)
/* 8038DDEC 0038AD4C  38 63 DF 7C */	addi r3, r3, __StringWrite@l
/* 8038DDF0 0038AD50  90 E1 00 0C */	stw r7, 0xc(r1)
/* 8038DDF4 0038AD54  90 01 00 10 */	stw r0, 0x10(r1)
/* 8038DDF8 0038AD58  48 00 02 49 */	bl __pformatter
/* 8038DDFC 0038AD5C  28 1F 00 00 */	cmplwi r31, 0
/* 8038DE00 0038AD60  41 82 00 20 */	beq lbl_8038DE20
/* 8038DE04 0038AD64  38 00 FF FF */	li r0, -1
/* 8038DE08 0038AD68  38 80 FF FE */	li r4, -2
/* 8038DE0C 0038AD6C  7C 03 00 40 */	cmplw r3, r0
/* 8038DE10 0038AD70  40 80 00 08 */	bge lbl_8038DE18
/* 8038DE14 0038AD74  7C 64 1B 78 */	mr r4, r3
lbl_8038DE18:
/* 8038DE18 0038AD78  38 00 00 00 */	li r0, 0
/* 8038DE1C 0038AD7C  7C 1F 21 AE */	stbx r0, r31, r4
lbl_8038DE20:
/* 8038DE20 0038AD80  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8038DE24 0038AD84  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8038DE28 0038AD88  7C 08 03 A6 */	mtlr r0
/* 8038DE2C 0038AD8C  38 21 00 20 */	addi r1, r1, 0x20
/* 8038DE30 0038AD90  4E 80 00 20 */	blr 

.global vprintf
vprintf:
/* 8038DE34 0038AD94  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8038DE38 0038AD98  7C 08 02 A6 */	mflr r0
/* 8038DE3C 0038AD9C  3C A0 80 3F */	lis r5, lbl_803F2778@ha
/* 8038DE40 0038ADA0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8038DE44 0038ADA4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8038DE48 0038ADA8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8038DE4C 0038ADAC  7C 9E 23 78 */	mr r30, r4
/* 8038DE50 0038ADB0  38 85 27 78 */	addi r4, r5, lbl_803F2778@l
/* 8038DE54 0038ADB4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8038DE58 0038ADB8  3B E4 00 50 */	addi r31, r4, 0x50
/* 8038DE5C 0038ADBC  7C 7D 1B 78 */	mr r29, r3
/* 8038DE60 0038ADC0  38 80 FF FF */	li r4, -1
/* 8038DE64 0038ADC4  7F E3 FB 78 */	mr r3, r31
/* 8038DE68 0038ADC8  48 00 34 D9 */	bl fwide
/* 8038DE6C 0038ADCC  2C 03 00 00 */	cmpwi r3, 0
/* 8038DE70 0038ADD0  41 80 00 0C */	blt lbl_8038DE7C
/* 8038DE74 0038ADD4  38 60 FF FF */	li r3, -1
/* 8038DE78 0038ADD8  48 00 00 1C */	b lbl_8038DE94
lbl_8038DE7C:
/* 8038DE7C 0038ADDC  3C 60 80 39 */	lis r3, __FileWrite@ha
/* 8038DE80 0038ADE0  7F E4 FB 78 */	mr r4, r31
/* 8038DE84 0038ADE4  38 63 DF E8 */	addi r3, r3, __FileWrite@l
/* 8038DE88 0038ADE8  7F A5 EB 78 */	mr r5, r29
/* 8038DE8C 0038ADEC  7F C6 F3 78 */	mr r6, r30
/* 8038DE90 0038ADF0  48 00 01 B1 */	bl __pformatter
lbl_8038DE94:
/* 8038DE94 0038ADF4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8038DE98 0038ADF8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8038DE9C 0038ADFC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8038DEA0 0038AE00  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8038DEA4 0038AE04  7C 08 03 A6 */	mtlr r0
/* 8038DEA8 0038AE08  38 21 00 20 */	addi r1, r1, 0x20
/* 8038DEAC 0038AE0C  4E 80 00 20 */	blr 

.global printf
printf:
/* 8038DEB0 0038AE10  94 21 FF 80 */	stwu r1, -0x80(r1)
/* 8038DEB4 0038AE14  7C 08 02 A6 */	mflr r0
/* 8038DEB8 0038AE18  90 01 00 84 */	stw r0, 0x84(r1)
/* 8038DEBC 0038AE1C  93 E1 00 7C */	stw r31, 0x7c(r1)
/* 8038DEC0 0038AE20  93 C1 00 78 */	stw r30, 0x78(r1)
/* 8038DEC4 0038AE24  7C 7E 1B 78 */	mr r30, r3
/* 8038DEC8 0038AE28  40 86 00 24 */	bne cr1, lbl_8038DEEC
/* 8038DECC 0038AE2C  D8 21 00 28 */	stfd f1, 0x28(r1)
/* 8038DED0 0038AE30  D8 41 00 30 */	stfd f2, 0x30(r1)
/* 8038DED4 0038AE34  D8 61 00 38 */	stfd f3, 0x38(r1)
/* 8038DED8 0038AE38  D8 81 00 40 */	stfd f4, 0x40(r1)
/* 8038DEDC 0038AE3C  D8 A1 00 48 */	stfd f5, 0x48(r1)
/* 8038DEE0 0038AE40  D8 C1 00 50 */	stfd f6, 0x50(r1)
/* 8038DEE4 0038AE44  D8 E1 00 58 */	stfd f7, 0x58(r1)
/* 8038DEE8 0038AE48  D9 01 00 60 */	stfd f8, 0x60(r1)
lbl_8038DEEC:
/* 8038DEEC 0038AE4C  3D 60 80 3F */	lis r11, lbl_803F2778@ha
/* 8038DEF0 0038AE50  90 81 00 0C */	stw r4, 0xc(r1)
/* 8038DEF4 0038AE54  39 6B 27 78 */	addi r11, r11, lbl_803F2778@l
/* 8038DEF8 0038AE58  38 80 FF FF */	li r4, -1
/* 8038DEFC 0038AE5C  90 61 00 08 */	stw r3, 8(r1)
/* 8038DF00 0038AE60  3B EB 00 50 */	addi r31, r11, 0x50
/* 8038DF04 0038AE64  7F E3 FB 78 */	mr r3, r31
/* 8038DF08 0038AE68  90 A1 00 10 */	stw r5, 0x10(r1)
/* 8038DF0C 0038AE6C  90 C1 00 14 */	stw r6, 0x14(r1)
/* 8038DF10 0038AE70  90 E1 00 18 */	stw r7, 0x18(r1)
/* 8038DF14 0038AE74  91 01 00 1C */	stw r8, 0x1c(r1)
/* 8038DF18 0038AE78  91 21 00 20 */	stw r9, 0x20(r1)
/* 8038DF1C 0038AE7C  91 41 00 24 */	stw r10, 0x24(r1)
/* 8038DF20 0038AE80  48 00 34 21 */	bl fwide
/* 8038DF24 0038AE84  2C 03 00 00 */	cmpwi r3, 0
/* 8038DF28 0038AE88  41 80 00 0C */	blt lbl_8038DF34
/* 8038DF2C 0038AE8C  38 60 FF FF */	li r3, -1
/* 8038DF30 0038AE90  48 00 00 34 */	b lbl_8038DF64
lbl_8038DF34:
/* 8038DF34 0038AE94  38 A1 00 88 */	addi r5, r1, 0x88
/* 8038DF38 0038AE98  38 01 00 08 */	addi r0, r1, 8
/* 8038DF3C 0038AE9C  3C 80 01 00 */	lis r4, 0x100
/* 8038DF40 0038AEA0  3C 60 80 39 */	lis r3, __FileWrite@ha
/* 8038DF44 0038AEA4  90 81 00 68 */	stw r4, 0x68(r1)
/* 8038DF48 0038AEA8  38 C1 00 68 */	addi r6, r1, 0x68
/* 8038DF4C 0038AEAC  38 63 DF E8 */	addi r3, r3, __FileWrite@l
/* 8038DF50 0038AEB0  7F E4 FB 78 */	mr r4, r31
/* 8038DF54 0038AEB4  90 A1 00 6C */	stw r5, 0x6c(r1)
/* 8038DF58 0038AEB8  7F C5 F3 78 */	mr r5, r30
/* 8038DF5C 0038AEBC  90 01 00 70 */	stw r0, 0x70(r1)
/* 8038DF60 0038AEC0  48 00 00 E1 */	bl __pformatter
lbl_8038DF64:
/* 8038DF64 0038AEC4  80 01 00 84 */	lwz r0, 0x84(r1)
/* 8038DF68 0038AEC8  83 E1 00 7C */	lwz r31, 0x7c(r1)
/* 8038DF6C 0038AECC  83 C1 00 78 */	lwz r30, 0x78(r1)
/* 8038DF70 0038AED0  7C 08 03 A6 */	mtlr r0
/* 8038DF74 0038AED4  38 21 00 80 */	addi r1, r1, 0x80
/* 8038DF78 0038AED8  4E 80 00 20 */	blr 

.global __StringWrite
__StringWrite:
/* 8038DF7C 0038AEDC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038DF80 0038AEE0  7C 08 02 A6 */	mflr r0
/* 8038DF84 0038AEE4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038DF88 0038AEE8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038DF8C 0038AEEC  93 C1 00 08 */	stw r30, 8(r1)
/* 8038DF90 0038AEF0  7C 7E 1B 78 */	mr r30, r3
/* 8038DF94 0038AEF4  80 63 00 08 */	lwz r3, 8(r3)
/* 8038DF98 0038AEF8  80 DE 00 04 */	lwz r6, 4(r30)
/* 8038DF9C 0038AEFC  7C 03 2A 14 */	add r0, r3, r5
/* 8038DFA0 0038AF00  7C 00 30 40 */	cmplw r0, r6
/* 8038DFA4 0038AF04  7F E3 30 50 */	subf r31, r3, r6
/* 8038DFA8 0038AF08  41 81 00 08 */	bgt lbl_8038DFB0
/* 8038DFAC 0038AF0C  7C BF 2B 78 */	mr r31, r5
lbl_8038DFB0:
/* 8038DFB0 0038AF10  80 1E 00 00 */	lwz r0, 0(r30)
/* 8038DFB4 0038AF14  7F E5 FB 78 */	mr r5, r31
/* 8038DFB8 0038AF18  7C 60 1A 14 */	add r3, r0, r3
/* 8038DFBC 0038AF1C  4B C7 54 D5 */	bl memcpy
/* 8038DFC0 0038AF20  80 1E 00 08 */	lwz r0, 8(r30)
/* 8038DFC4 0038AF24  38 60 00 01 */	li r3, 1
/* 8038DFC8 0038AF28  7C 00 FA 14 */	add r0, r0, r31
/* 8038DFCC 0038AF2C  90 1E 00 08 */	stw r0, 8(r30)
/* 8038DFD0 0038AF30  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038DFD4 0038AF34  83 C1 00 08 */	lwz r30, 8(r1)
/* 8038DFD8 0038AF38  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038DFDC 0038AF3C  7C 08 03 A6 */	mtlr r0
/* 8038DFE0 0038AF40  38 21 00 10 */	addi r1, r1, 0x10
/* 8038DFE4 0038AF44  4E 80 00 20 */	blr 

.global __FileWrite
__FileWrite:
/* 8038DFE8 0038AF48  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8038DFEC 0038AF4C  7C 08 02 A6 */	mflr r0
/* 8038DFF0 0038AF50  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038DFF4 0038AF54  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8038DFF8 0038AF58  7C BF 2B 78 */	mr r31, r5
/* 8038DFFC 0038AF5C  93 C1 00 08 */	stw r30, 8(r1)
/* 8038E000 0038AF60  7C 7E 1B 78 */	mr r30, r3
/* 8038E004 0038AF64  7C 83 23 78 */	mr r3, r4
/* 8038E008 0038AF68  38 80 00 01 */	li r4, 1
/* 8038E00C 0038AF6C  7F C6 F3 78 */	mr r6, r30
/* 8038E010 0038AF70  4B FF F2 45 */	bl fwrite
/* 8038E014 0038AF74  7C 1F 18 40 */	cmplw r31, r3
/* 8038E018 0038AF78  40 82 00 0C */	bne lbl_8038E024
/* 8038E01C 0038AF7C  7F C3 F3 78 */	mr r3, r30
/* 8038E020 0038AF80  48 00 00 08 */	b lbl_8038E028
lbl_8038E024:
/* 8038E024 0038AF84  38 60 00 00 */	li r3, 0
lbl_8038E028:
/* 8038E028 0038AF88  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038E02C 0038AF8C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8038E030 0038AF90  83 C1 00 08 */	lwz r30, 8(r1)
/* 8038E034 0038AF94  7C 08 03 A6 */	mtlr r0
/* 8038E038 0038AF98  38 21 00 10 */	addi r1, r1, 0x10
/* 8038E03C 0038AF9C  4E 80 00 20 */	blr 

.global __pformatter
__pformatter:
/* 8038E040 0038AFA0  94 21 FD 40 */	stwu r1, -0x2c0(r1)
/* 8038E044 0038AFA4  7C 08 02 A6 */	mflr r0
/* 8038E048 0038AFA8  90 01 02 C4 */	stw r0, 0x2c4(r1)
/* 8038E04C 0038AFAC  38 00 00 20 */	li r0, 0x20
/* 8038E050 0038AFB0  BE 61 02 8C */	stmw r19, 0x28c(r1)
/* 8038E054 0038AFB4  7C 7F 1B 78 */	mr r31, r3
/* 8038E058 0038AFB8  7C 9E 23 78 */	mr r30, r4
/* 8038E05C 0038AFBC  7C DD 33 78 */	mr r29, r6
/* 8038E060 0038AFC0  7C BA 2B 78 */	mr r26, r5
/* 8038E064 0038AFC4  3B 01 02 7C */	addi r24, r1, 0x27c
/* 8038E068 0038AFC8  3A A1 02 7B */	addi r21, r1, 0x27b
/* 8038E06C 0038AFCC  3B 60 00 00 */	li r27, 0
/* 8038E070 0038AFD0  98 01 00 09 */	stb r0, 9(r1)
/* 8038E074 0038AFD4  48 00 07 1C */	b lbl_8038E790
lbl_8038E078:
/* 8038E078 0038AFD8  7F 43 D3 78 */	mr r3, r26
/* 8038E07C 0038AFDC  38 80 00 25 */	li r4, 0x25
/* 8038E080 0038AFE0  48 00 1E AD */	bl strchr
/* 8038E084 0038AFE4  7C 79 1B 79 */	or. r25, r3, r3
/* 8038E088 0038AFE8  40 82 00 3C */	bne lbl_8038E0C4
/* 8038E08C 0038AFEC  7F 43 D3 78 */	mr r3, r26
/* 8038E090 0038AFF0  48 00 21 31 */	bl strlen
/* 8038E094 0038AFF4  7C 65 1B 79 */	or. r5, r3, r3
/* 8038E098 0038AFF8  7F 7B 2A 14 */	add r27, r27, r5
/* 8038E09C 0038AFFC  41 82 07 00 */	beq lbl_8038E79C
/* 8038E0A0 0038B000  7F EC FB 78 */	mr r12, r31
/* 8038E0A4 0038B004  7F C3 F3 78 */	mr r3, r30
/* 8038E0A8 0038B008  7F 44 D3 78 */	mr r4, r26
/* 8038E0AC 0038B00C  7D 89 03 A6 */	mtctr r12
/* 8038E0B0 0038B010  4E 80 04 21 */	bctrl 
/* 8038E0B4 0038B014  28 03 00 00 */	cmplwi r3, 0
/* 8038E0B8 0038B018  40 82 06 E4 */	bne lbl_8038E79C
/* 8038E0BC 0038B01C  38 60 FF FF */	li r3, -1
/* 8038E0C0 0038B020  48 00 06 E0 */	b lbl_8038E7A0
lbl_8038E0C4:
/* 8038E0C4 0038B024  7C BA C8 51 */	subf. r5, r26, r25
/* 8038E0C8 0038B028  7F 7B 2A 14 */	add r27, r27, r5
/* 8038E0CC 0038B02C  41 82 00 28 */	beq lbl_8038E0F4
/* 8038E0D0 0038B030  7F EC FB 78 */	mr r12, r31
/* 8038E0D4 0038B034  7F C3 F3 78 */	mr r3, r30
/* 8038E0D8 0038B038  7F 44 D3 78 */	mr r4, r26
/* 8038E0DC 0038B03C  7D 89 03 A6 */	mtctr r12
/* 8038E0E0 0038B040  4E 80 04 21 */	bctrl 
/* 8038E0E4 0038B044  28 03 00 00 */	cmplwi r3, 0
/* 8038E0E8 0038B048  40 82 00 0C */	bne lbl_8038E0F4
/* 8038E0EC 0038B04C  38 60 FF FF */	li r3, -1
/* 8038E0F0 0038B050  48 00 06 B0 */	b lbl_8038E7A0
lbl_8038E0F4:
/* 8038E0F4 0038B054  7F 23 CB 78 */	mr r3, r25
/* 8038E0F8 0038B058  7F A4 EB 78 */	mr r4, r29
/* 8038E0FC 0038B05C  38 A1 00 6C */	addi r5, r1, 0x6c
/* 8038E100 0038B060  48 00 17 01 */	bl parse_format
/* 8038E104 0038B064  88 01 00 71 */	lbz r0, 0x71(r1)
/* 8038E108 0038B068  7C 7A 1B 78 */	mr r26, r3
/* 8038E10C 0038B06C  2C 00 00 68 */	cmpwi r0, 0x68
/* 8038E110 0038B070  41 82 05 00 */	beq lbl_8038E610
/* 8038E114 0038B074  40 80 00 60 */	bge lbl_8038E174
/* 8038E118 0038B078  2C 00 00 58 */	cmpwi r0, 0x58
/* 8038E11C 0038B07C  41 82 01 B0 */	beq lbl_8038E2CC
/* 8038E120 0038B080  40 80 00 30 */	bge lbl_8038E150
/* 8038E124 0038B084  2C 00 00 41 */	cmpwi r0, 0x41
/* 8038E128 0038B088  41 82 03 0C */	beq lbl_8038E434
/* 8038E12C 0038B08C  40 80 00 10 */	bge lbl_8038E13C
/* 8038E130 0038B090  2C 00 00 25 */	cmpwi r0, 0x25
/* 8038E134 0038B094  41 82 04 C8 */	beq lbl_8038E5FC
/* 8038E138 0038B098  48 00 04 D8 */	b lbl_8038E610
lbl_8038E13C:
/* 8038E13C 0038B09C  2C 00 00 48 */	cmpwi r0, 0x48
/* 8038E140 0038B0A0  40 80 04 D0 */	bge lbl_8038E610
/* 8038E144 0038B0A4  2C 00 00 45 */	cmpwi r0, 0x45
/* 8038E148 0038B0A8  40 80 02 80 */	bge lbl_8038E3C8
/* 8038E14C 0038B0AC  48 00 04 C4 */	b lbl_8038E610
lbl_8038E150:
/* 8038E150 0038B0B0  2C 00 00 63 */	cmpwi r0, 0x63
/* 8038E154 0038B0B4  41 82 04 88 */	beq lbl_8038E5DC
/* 8038E158 0038B0B8  40 80 00 10 */	bge lbl_8038E168
/* 8038E15C 0038B0BC  2C 00 00 61 */	cmpwi r0, 0x61
/* 8038E160 0038B0C0  41 82 02 D4 */	beq lbl_8038E434
/* 8038E164 0038B0C4  48 00 04 AC */	b lbl_8038E610
lbl_8038E168:
/* 8038E168 0038B0C8  2C 00 00 65 */	cmpwi r0, 0x65
/* 8038E16C 0038B0CC  40 80 02 5C */	bge lbl_8038E3C8
/* 8038E170 0038B0D0  48 00 00 60 */	b lbl_8038E1D0
lbl_8038E174:
/* 8038E174 0038B0D4  2C 00 00 74 */	cmpwi r0, 0x74
/* 8038E178 0038B0D8  41 82 04 98 */	beq lbl_8038E610
/* 8038E17C 0038B0DC  40 80 00 30 */	bge lbl_8038E1AC
/* 8038E180 0038B0E0  2C 00 00 6F */	cmpwi r0, 0x6f
/* 8038E184 0038B0E4  41 82 01 48 */	beq lbl_8038E2CC
/* 8038E188 0038B0E8  40 80 00 18 */	bge lbl_8038E1A0
/* 8038E18C 0038B0EC  2C 00 00 6E */	cmpwi r0, 0x6e
/* 8038E190 0038B0F0  40 80 03 E8 */	bge lbl_8038E578
/* 8038E194 0038B0F4  2C 00 00 6A */	cmpwi r0, 0x6a
/* 8038E198 0038B0F8  40 80 04 78 */	bge lbl_8038E610
/* 8038E19C 0038B0FC  48 00 00 34 */	b lbl_8038E1D0
lbl_8038E1A0:
/* 8038E1A0 0038B100  2C 00 00 73 */	cmpwi r0, 0x73
/* 8038E1A4 0038B104  40 80 02 FC */	bge lbl_8038E4A0
/* 8038E1A8 0038B108  48 00 04 68 */	b lbl_8038E610
lbl_8038E1AC:
/* 8038E1AC 0038B10C  2C 00 00 78 */	cmpwi r0, 0x78
/* 8038E1B0 0038B110  41 82 01 1C */	beq lbl_8038E2CC
/* 8038E1B4 0038B114  40 80 00 10 */	bge lbl_8038E1C4
/* 8038E1B8 0038B118  2C 00 00 76 */	cmpwi r0, 0x76
/* 8038E1BC 0038B11C  40 80 04 54 */	bge lbl_8038E610
/* 8038E1C0 0038B120  48 00 01 0C */	b lbl_8038E2CC
lbl_8038E1C4:
/* 8038E1C4 0038B124  2C 00 00 FF */	cmpwi r0, 0xff
/* 8038E1C8 0038B128  41 82 04 48 */	beq lbl_8038E610
/* 8038E1CC 0038B12C  48 00 04 44 */	b lbl_8038E610
lbl_8038E1D0:
/* 8038E1D0 0038B130  88 01 00 70 */	lbz r0, 0x70(r1)
/* 8038E1D4 0038B134  28 00 00 03 */	cmplwi r0, 3
/* 8038E1D8 0038B138  40 82 00 18 */	bne lbl_8038E1F0
/* 8038E1DC 0038B13C  7F A3 EB 78 */	mr r3, r29
/* 8038E1E0 0038B140  38 80 00 01 */	li r4, 1
/* 8038E1E4 0038B144  4B FF B3 99 */	bl __va_arg
/* 8038E1E8 0038B148  83 83 00 00 */	lwz r28, 0(r3)
/* 8038E1EC 0038B14C  48 00 00 34 */	b lbl_8038E220
lbl_8038E1F0:
/* 8038E1F0 0038B150  28 00 00 04 */	cmplwi r0, 4
/* 8038E1F4 0038B154  40 82 00 1C */	bne lbl_8038E210
/* 8038E1F8 0038B158  7F A3 EB 78 */	mr r3, r29
/* 8038E1FC 0038B15C  38 80 00 02 */	li r4, 2
/* 8038E200 0038B160  4B FF B3 7D */	bl __va_arg
/* 8038E204 0038B164  82 C3 00 00 */	lwz r22, 0(r3)
/* 8038E208 0038B168  82 E3 00 04 */	lwz r23, 4(r3)
/* 8038E20C 0038B16C  48 00 00 14 */	b lbl_8038E220
lbl_8038E210:
/* 8038E210 0038B170  7F A3 EB 78 */	mr r3, r29
/* 8038E214 0038B174  38 80 00 01 */	li r4, 1
/* 8038E218 0038B178  4B FF B3 65 */	bl __va_arg
/* 8038E21C 0038B17C  83 83 00 00 */	lwz r28, 0(r3)
lbl_8038E220:
/* 8038E220 0038B180  88 61 00 70 */	lbz r3, 0x70(r1)
/* 8038E224 0038B184  28 03 00 02 */	cmplwi r3, 2
/* 8038E228 0038B188  40 82 00 0C */	bne lbl_8038E234
/* 8038E22C 0038B18C  7F 80 07 34 */	extsh r0, r28
/* 8038E230 0038B190  7C 1C 03 78 */	mr r28, r0
lbl_8038E234:
/* 8038E234 0038B194  28 03 00 01 */	cmplwi r3, 1
/* 8038E238 0038B198  40 82 00 0C */	bne lbl_8038E244
/* 8038E23C 0038B19C  7F 80 07 74 */	extsb r0, r28
/* 8038E240 0038B1A0  7C 1C 03 78 */	mr r28, r0
lbl_8038E244:
/* 8038E244 0038B1A4  28 03 00 04 */	cmplwi r3, 4
/* 8038E248 0038B1A8  40 82 00 44 */	bne lbl_8038E28C
/* 8038E24C 0038B1AC  81 21 00 6C */	lwz r9, 0x6c(r1)
/* 8038E250 0038B1B0  7E E4 BB 78 */	mr r4, r23
/* 8038E254 0038B1B4  81 01 00 70 */	lwz r8, 0x70(r1)
/* 8038E258 0038B1B8  7E C3 B3 78 */	mr r3, r22
/* 8038E25C 0038B1BC  80 E1 00 74 */	lwz r7, 0x74(r1)
/* 8038E260 0038B1C0  7F 05 C3 78 */	mr r5, r24
/* 8038E264 0038B1C4  80 01 00 78 */	lwz r0, 0x78(r1)
/* 8038E268 0038B1C8  38 C1 00 5C */	addi r6, r1, 0x5c
/* 8038E26C 0038B1CC  91 21 00 5C */	stw r9, 0x5c(r1)
/* 8038E270 0038B1D0  91 01 00 60 */	stw r8, 0x60(r1)
/* 8038E274 0038B1D4  90 E1 00 64 */	stw r7, 0x64(r1)
/* 8038E278 0038B1D8  90 01 00 68 */	stw r0, 0x68(r1)
/* 8038E27C 0038B1DC  48 00 10 89 */	bl longlong2str
/* 8038E280 0038B1E0  7C 74 1B 79 */	or. r20, r3, r3
/* 8038E284 0038B1E4  41 82 03 8C */	beq lbl_8038E610
/* 8038E288 0038B1E8  48 00 00 3C */	b lbl_8038E2C4
lbl_8038E28C:
/* 8038E28C 0038B1EC  81 01 00 6C */	lwz r8, 0x6c(r1)
/* 8038E290 0038B1F0  7F 83 E3 78 */	mr r3, r28
/* 8038E294 0038B1F4  80 E1 00 70 */	lwz r7, 0x70(r1)
/* 8038E298 0038B1F8  7F 04 C3 78 */	mr r4, r24
/* 8038E29C 0038B1FC  80 C1 00 74 */	lwz r6, 0x74(r1)
/* 8038E2A0 0038B200  38 A1 00 4C */	addi r5, r1, 0x4c
/* 8038E2A4 0038B204  80 01 00 78 */	lwz r0, 0x78(r1)
/* 8038E2A8 0038B208  91 01 00 4C */	stw r8, 0x4c(r1)
/* 8038E2AC 0038B20C  90 E1 00 50 */	stw r7, 0x50(r1)
/* 8038E2B0 0038B210  90 C1 00 54 */	stw r6, 0x54(r1)
/* 8038E2B4 0038B214  90 01 00 58 */	stw r0, 0x58(r1)
/* 8038E2B8 0038B218  48 00 13 29 */	bl long2str
/* 8038E2BC 0038B21C  7C 74 1B 79 */	or. r20, r3, r3
/* 8038E2C0 0038B220  41 82 03 50 */	beq lbl_8038E610
lbl_8038E2C4:
/* 8038E2C4 0038B224  7F 34 A8 50 */	subf r25, r20, r21
/* 8038E2C8 0038B228  48 00 03 88 */	b lbl_8038E650
lbl_8038E2CC:
/* 8038E2CC 0038B22C  88 01 00 70 */	lbz r0, 0x70(r1)
/* 8038E2D0 0038B230  28 00 00 03 */	cmplwi r0, 3
/* 8038E2D4 0038B234  40 82 00 18 */	bne lbl_8038E2EC
/* 8038E2D8 0038B238  7F A3 EB 78 */	mr r3, r29
/* 8038E2DC 0038B23C  38 80 00 01 */	li r4, 1
/* 8038E2E0 0038B240  4B FF B2 9D */	bl __va_arg
/* 8038E2E4 0038B244  83 83 00 00 */	lwz r28, 0(r3)
/* 8038E2E8 0038B248  48 00 00 34 */	b lbl_8038E31C
lbl_8038E2EC:
/* 8038E2EC 0038B24C  28 00 00 04 */	cmplwi r0, 4
/* 8038E2F0 0038B250  40 82 00 1C */	bne lbl_8038E30C
/* 8038E2F4 0038B254  7F A3 EB 78 */	mr r3, r29
/* 8038E2F8 0038B258  38 80 00 02 */	li r4, 2
/* 8038E2FC 0038B25C  4B FF B2 81 */	bl __va_arg
/* 8038E300 0038B260  82 C3 00 00 */	lwz r22, 0(r3)
/* 8038E304 0038B264  82 E3 00 04 */	lwz r23, 4(r3)
/* 8038E308 0038B268  48 00 00 14 */	b lbl_8038E31C
lbl_8038E30C:
/* 8038E30C 0038B26C  7F A3 EB 78 */	mr r3, r29
/* 8038E310 0038B270  38 80 00 01 */	li r4, 1
/* 8038E314 0038B274  4B FF B2 69 */	bl __va_arg
/* 8038E318 0038B278  83 83 00 00 */	lwz r28, 0(r3)
lbl_8038E31C:
/* 8038E31C 0038B27C  88 61 00 70 */	lbz r3, 0x70(r1)
/* 8038E320 0038B280  28 03 00 02 */	cmplwi r3, 2
/* 8038E324 0038B284  40 82 00 0C */	bne lbl_8038E330
/* 8038E328 0038B288  57 80 04 3E */	clrlwi r0, r28, 0x10
/* 8038E32C 0038B28C  7C 1C 03 78 */	mr r28, r0
lbl_8038E330:
/* 8038E330 0038B290  28 03 00 01 */	cmplwi r3, 1
/* 8038E334 0038B294  40 82 00 0C */	bne lbl_8038E340
/* 8038E338 0038B298  57 80 06 3E */	clrlwi r0, r28, 0x18
/* 8038E33C 0038B29C  7C 1C 03 78 */	mr r28, r0
lbl_8038E340:
/* 8038E340 0038B2A0  28 03 00 04 */	cmplwi r3, 4
/* 8038E344 0038B2A4  40 82 00 44 */	bne lbl_8038E388
/* 8038E348 0038B2A8  81 21 00 6C */	lwz r9, 0x6c(r1)
/* 8038E34C 0038B2AC  7E E4 BB 78 */	mr r4, r23
/* 8038E350 0038B2B0  81 01 00 70 */	lwz r8, 0x70(r1)
/* 8038E354 0038B2B4  7E C3 B3 78 */	mr r3, r22
/* 8038E358 0038B2B8  80 E1 00 74 */	lwz r7, 0x74(r1)
/* 8038E35C 0038B2BC  7F 05 C3 78 */	mr r5, r24
/* 8038E360 0038B2C0  80 01 00 78 */	lwz r0, 0x78(r1)
/* 8038E364 0038B2C4  38 C1 00 3C */	addi r6, r1, 0x3c
/* 8038E368 0038B2C8  91 21 00 3C */	stw r9, 0x3c(r1)
/* 8038E36C 0038B2CC  91 01 00 40 */	stw r8, 0x40(r1)
/* 8038E370 0038B2D0  90 E1 00 44 */	stw r7, 0x44(r1)
/* 8038E374 0038B2D4  90 01 00 48 */	stw r0, 0x48(r1)
/* 8038E378 0038B2D8  48 00 0F 8D */	bl longlong2str
/* 8038E37C 0038B2DC  7C 74 1B 79 */	or. r20, r3, r3
/* 8038E380 0038B2E0  41 82 02 90 */	beq lbl_8038E610
/* 8038E384 0038B2E4  48 00 00 3C */	b lbl_8038E3C0
lbl_8038E388:
/* 8038E388 0038B2E8  81 01 00 6C */	lwz r8, 0x6c(r1)
/* 8038E38C 0038B2EC  7F 83 E3 78 */	mr r3, r28
/* 8038E390 0038B2F0  80 E1 00 70 */	lwz r7, 0x70(r1)
/* 8038E394 0038B2F4  7F 04 C3 78 */	mr r4, r24
/* 8038E398 0038B2F8  80 C1 00 74 */	lwz r6, 0x74(r1)
/* 8038E39C 0038B2FC  38 A1 00 2C */	addi r5, r1, 0x2c
/* 8038E3A0 0038B300  80 01 00 78 */	lwz r0, 0x78(r1)
/* 8038E3A4 0038B304  91 01 00 2C */	stw r8, 0x2c(r1)
/* 8038E3A8 0038B308  90 E1 00 30 */	stw r7, 0x30(r1)
/* 8038E3AC 0038B30C  90 C1 00 34 */	stw r6, 0x34(r1)
/* 8038E3B0 0038B310  90 01 00 38 */	stw r0, 0x38(r1)
/* 8038E3B4 0038B314  48 00 12 2D */	bl long2str
/* 8038E3B8 0038B318  7C 74 1B 79 */	or. r20, r3, r3
/* 8038E3BC 0038B31C  41 82 02 54 */	beq lbl_8038E610
lbl_8038E3C0:
/* 8038E3C0 0038B320  7F 34 A8 50 */	subf r25, r20, r21
/* 8038E3C4 0038B324  48 00 02 8C */	b lbl_8038E650
lbl_8038E3C8:
/* 8038E3C8 0038B328  88 01 00 70 */	lbz r0, 0x70(r1)
/* 8038E3CC 0038B32C  28 00 00 05 */	cmplwi r0, 5
/* 8038E3D0 0038B330  40 82 00 18 */	bne lbl_8038E3E8
/* 8038E3D4 0038B334  7F A3 EB 78 */	mr r3, r29
/* 8038E3D8 0038B338  38 80 00 03 */	li r4, 3
/* 8038E3DC 0038B33C  4B FF B1 A1 */	bl __va_arg
/* 8038E3E0 0038B340  C8 23 00 00 */	lfd f1, 0(r3)
/* 8038E3E4 0038B344  48 00 00 14 */	b lbl_8038E3F8
lbl_8038E3E8:
/* 8038E3E8 0038B348  7F A3 EB 78 */	mr r3, r29
/* 8038E3EC 0038B34C  38 80 00 03 */	li r4, 3
/* 8038E3F0 0038B350  4B FF B1 8D */	bl __va_arg
/* 8038E3F4 0038B354  C8 23 00 00 */	lfd f1, 0(r3)
lbl_8038E3F8:
/* 8038E3F8 0038B358  80 E1 00 6C */	lwz r7, 0x6c(r1)
/* 8038E3FC 0038B35C  7F 03 C3 78 */	mr r3, r24
/* 8038E400 0038B360  80 C1 00 70 */	lwz r6, 0x70(r1)
/* 8038E404 0038B364  38 81 00 1C */	addi r4, r1, 0x1c
/* 8038E408 0038B368  80 A1 00 74 */	lwz r5, 0x74(r1)
/* 8038E40C 0038B36C  80 01 00 78 */	lwz r0, 0x78(r1)
/* 8038E410 0038B370  90 E1 00 1C */	stw r7, 0x1c(r1)
/* 8038E414 0038B374  90 C1 00 20 */	stw r6, 0x20(r1)
/* 8038E418 0038B378  90 A1 00 24 */	stw r5, 0x24(r1)
/* 8038E41C 0038B37C  90 01 00 28 */	stw r0, 0x28(r1)
/* 8038E420 0038B380  48 00 03 95 */	bl float2str
/* 8038E424 0038B384  7C 74 1B 79 */	or. r20, r3, r3
/* 8038E428 0038B388  41 82 01 E8 */	beq lbl_8038E610
/* 8038E42C 0038B38C  7F 34 A8 50 */	subf r25, r20, r21
/* 8038E430 0038B390  48 00 02 20 */	b lbl_8038E650
lbl_8038E434:
/* 8038E434 0038B394  88 01 00 70 */	lbz r0, 0x70(r1)
/* 8038E438 0038B398  28 00 00 05 */	cmplwi r0, 5
/* 8038E43C 0038B39C  40 82 00 18 */	bne lbl_8038E454
/* 8038E440 0038B3A0  7F A3 EB 78 */	mr r3, r29
/* 8038E444 0038B3A4  38 80 00 03 */	li r4, 3
/* 8038E448 0038B3A8  4B FF B1 35 */	bl __va_arg
/* 8038E44C 0038B3AC  C8 23 00 00 */	lfd f1, 0(r3)
/* 8038E450 0038B3B0  48 00 00 14 */	b lbl_8038E464
lbl_8038E454:
/* 8038E454 0038B3B4  7F A3 EB 78 */	mr r3, r29
/* 8038E458 0038B3B8  38 80 00 03 */	li r4, 3
/* 8038E45C 0038B3BC  4B FF B1 21 */	bl __va_arg
/* 8038E460 0038B3C0  C8 23 00 00 */	lfd f1, 0(r3)
lbl_8038E464:
/* 8038E464 0038B3C4  80 E1 00 6C */	lwz r7, 0x6c(r1)
/* 8038E468 0038B3C8  7F 03 C3 78 */	mr r3, r24
/* 8038E46C 0038B3CC  80 C1 00 70 */	lwz r6, 0x70(r1)
/* 8038E470 0038B3D0  38 81 00 0C */	addi r4, r1, 0xc
/* 8038E474 0038B3D4  80 A1 00 74 */	lwz r5, 0x74(r1)
/* 8038E478 0038B3D8  80 01 00 78 */	lwz r0, 0x78(r1)
/* 8038E47C 0038B3DC  90 E1 00 0C */	stw r7, 0xc(r1)
/* 8038E480 0038B3E0  90 C1 00 10 */	stw r6, 0x10(r1)
/* 8038E484 0038B3E4  90 A1 00 14 */	stw r5, 0x14(r1)
/* 8038E488 0038B3E8  90 01 00 18 */	stw r0, 0x18(r1)
/* 8038E48C 0038B3EC  48 00 0B 41 */	bl double2hex
/* 8038E490 0038B3F0  7C 74 1B 79 */	or. r20, r3, r3
/* 8038E494 0038B3F4  41 82 01 7C */	beq lbl_8038E610
/* 8038E498 0038B3F8  7F 34 A8 50 */	subf r25, r20, r21
/* 8038E49C 0038B3FC  48 00 01 B4 */	b lbl_8038E650
lbl_8038E4A0:
/* 8038E4A0 0038B400  88 01 00 70 */	lbz r0, 0x70(r1)
/* 8038E4A4 0038B404  28 00 00 06 */	cmplwi r0, 6
/* 8038E4A8 0038B408  40 82 00 3C */	bne lbl_8038E4E4
/* 8038E4AC 0038B40C  7F A3 EB 78 */	mr r3, r29
/* 8038E4B0 0038B410  38 80 00 01 */	li r4, 1
/* 8038E4B4 0038B414  4B FF B0 C9 */	bl __va_arg
/* 8038E4B8 0038B418  80 83 00 00 */	lwz r4, 0(r3)
/* 8038E4BC 0038B41C  28 04 00 00 */	cmplwi r4, 0
/* 8038E4C0 0038B420  40 82 00 08 */	bne lbl_8038E4C8
/* 8038E4C4 0038B424  38 8D 9F D0 */	addi r4, r13, lbl_805A8B90@sda21
lbl_8038E4C8:
/* 8038E4C8 0038B428  38 61 00 7C */	addi r3, r1, 0x7c
/* 8038E4CC 0038B42C  38 A0 02 00 */	li r5, 0x200
/* 8038E4D0 0038B430  4B FF F2 69 */	bl wcstombs
/* 8038E4D4 0038B434  2C 03 00 00 */	cmpwi r3, 0
/* 8038E4D8 0038B438  41 80 01 38 */	blt lbl_8038E610
/* 8038E4DC 0038B43C  3A 81 00 7C */	addi r20, r1, 0x7c
/* 8038E4E0 0038B440  48 00 00 14 */	b lbl_8038E4F4
lbl_8038E4E4:
/* 8038E4E4 0038B444  7F A3 EB 78 */	mr r3, r29
/* 8038E4E8 0038B448  38 80 00 01 */	li r4, 1
/* 8038E4EC 0038B44C  4B FF B0 91 */	bl __va_arg
/* 8038E4F0 0038B450  82 83 00 00 */	lwz r20, 0(r3)
lbl_8038E4F4:
/* 8038E4F4 0038B454  28 14 00 00 */	cmplwi r20, 0
/* 8038E4F8 0038B458  40 82 00 0C */	bne lbl_8038E504
/* 8038E4FC 0038B45C  3C 60 80 3E */	lis r3, lbl_803D86C0@ha
/* 8038E500 0038B460  3A 83 86 C0 */	addi r20, r3, lbl_803D86C0@l
lbl_8038E504:
/* 8038E504 0038B464  88 01 00 6F */	lbz r0, 0x6f(r1)
/* 8038E508 0038B468  28 00 00 00 */	cmplwi r0, 0
/* 8038E50C 0038B46C  41 82 00 2C */	beq lbl_8038E538
/* 8038E510 0038B470  88 01 00 6E */	lbz r0, 0x6e(r1)
/* 8038E514 0038B474  8B 34 00 00 */	lbz r25, 0(r20)
/* 8038E518 0038B478  3A 94 00 01 */	addi r20, r20, 1
/* 8038E51C 0038B47C  28 00 00 00 */	cmplwi r0, 0
/* 8038E520 0038B480  41 82 01 30 */	beq lbl_8038E650
/* 8038E524 0038B484  80 01 00 78 */	lwz r0, 0x78(r1)
/* 8038E528 0038B488  7C 19 00 00 */	cmpw r25, r0
/* 8038E52C 0038B48C  40 81 01 24 */	ble lbl_8038E650
/* 8038E530 0038B490  7C 19 03 78 */	mr r25, r0
/* 8038E534 0038B494  48 00 01 1C */	b lbl_8038E650
lbl_8038E538:
/* 8038E538 0038B498  88 01 00 6E */	lbz r0, 0x6e(r1)
/* 8038E53C 0038B49C  28 00 00 00 */	cmplwi r0, 0
/* 8038E540 0038B4A0  41 82 00 28 */	beq lbl_8038E568
/* 8038E544 0038B4A4  83 21 00 78 */	lwz r25, 0x78(r1)
/* 8038E548 0038B4A8  7E 83 A3 78 */	mr r3, r20
/* 8038E54C 0038B4AC  38 80 00 00 */	li r4, 0
/* 8038E550 0038B4B0  7F 25 CB 78 */	mr r5, r25
/* 8038E554 0038B4B4  4B FF F3 A1 */	bl memchr
/* 8038E558 0038B4B8  28 03 00 00 */	cmplwi r3, 0
/* 8038E55C 0038B4BC  41 82 00 F4 */	beq lbl_8038E650
/* 8038E560 0038B4C0  7F 34 18 50 */	subf r25, r20, r3
/* 8038E564 0038B4C4  48 00 00 EC */	b lbl_8038E650
lbl_8038E568:
/* 8038E568 0038B4C8  7E 83 A3 78 */	mr r3, r20
/* 8038E56C 0038B4CC  48 00 1C 55 */	bl strlen
/* 8038E570 0038B4D0  7C 79 1B 78 */	mr r25, r3
/* 8038E574 0038B4D4  48 00 00 DC */	b lbl_8038E650
lbl_8038E578:
/* 8038E578 0038B4D8  7F A3 EB 78 */	mr r3, r29
/* 8038E57C 0038B4DC  38 80 00 01 */	li r4, 1
/* 8038E580 0038B4E0  4B FF AF FD */	bl __va_arg
/* 8038E584 0038B4E4  88 01 00 70 */	lbz r0, 0x70(r1)
/* 8038E588 0038B4E8  80 63 00 00 */	lwz r3, 0(r3)
/* 8038E58C 0038B4EC  2C 00 00 02 */	cmpwi r0, 2
/* 8038E590 0038B4F0  41 82 00 2C */	beq lbl_8038E5BC
/* 8038E594 0038B4F4  40 80 00 10 */	bge lbl_8038E5A4
/* 8038E598 0038B4F8  2C 00 00 00 */	cmpwi r0, 0
/* 8038E59C 0038B4FC  41 82 00 18 */	beq lbl_8038E5B4
/* 8038E5A0 0038B500  48 00 01 F0 */	b lbl_8038E790
lbl_8038E5A4:
/* 8038E5A4 0038B504  2C 00 00 04 */	cmpwi r0, 4
/* 8038E5A8 0038B508  41 82 00 24 */	beq lbl_8038E5CC
/* 8038E5AC 0038B50C  40 80 01 E4 */	bge lbl_8038E790
/* 8038E5B0 0038B510  48 00 00 14 */	b lbl_8038E5C4
lbl_8038E5B4:
/* 8038E5B4 0038B514  93 63 00 00 */	stw r27, 0(r3)
/* 8038E5B8 0038B518  48 00 01 D8 */	b lbl_8038E790
lbl_8038E5BC:
/* 8038E5BC 0038B51C  B3 63 00 00 */	sth r27, 0(r3)
/* 8038E5C0 0038B520  48 00 01 D0 */	b lbl_8038E790
lbl_8038E5C4:
/* 8038E5C4 0038B524  93 63 00 00 */	stw r27, 0(r3)
/* 8038E5C8 0038B528  48 00 01 C8 */	b lbl_8038E790
lbl_8038E5CC:
/* 8038E5CC 0038B52C  93 63 00 04 */	stw r27, 4(r3)
/* 8038E5D0 0038B530  7F 60 FE 70 */	srawi r0, r27, 0x1f
/* 8038E5D4 0038B534  90 03 00 00 */	stw r0, 0(r3)
/* 8038E5D8 0038B538  48 00 01 B8 */	b lbl_8038E790
lbl_8038E5DC:
/* 8038E5DC 0038B53C  7F A3 EB 78 */	mr r3, r29
/* 8038E5E0 0038B540  3A 81 00 7C */	addi r20, r1, 0x7c
/* 8038E5E4 0038B544  38 80 00 01 */	li r4, 1
/* 8038E5E8 0038B548  4B FF AF 95 */	bl __va_arg
/* 8038E5EC 0038B54C  80 03 00 00 */	lwz r0, 0(r3)
/* 8038E5F0 0038B550  3B 20 00 01 */	li r25, 1
/* 8038E5F4 0038B554  98 01 00 7C */	stb r0, 0x7c(r1)
/* 8038E5F8 0038B558  48 00 00 58 */	b lbl_8038E650
lbl_8038E5FC:
/* 8038E5FC 0038B55C  38 00 00 25 */	li r0, 0x25
/* 8038E600 0038B560  3A 81 00 7C */	addi r20, r1, 0x7c
/* 8038E604 0038B564  98 01 00 7C */	stb r0, 0x7c(r1)
/* 8038E608 0038B568  3B 20 00 01 */	li r25, 1
/* 8038E60C 0038B56C  48 00 00 44 */	b lbl_8038E650
lbl_8038E610:
/* 8038E610 0038B570  7F 23 CB 78 */	mr r3, r25
/* 8038E614 0038B574  48 00 1B AD */	bl strlen
/* 8038E618 0038B578  7C 65 1B 79 */	or. r5, r3, r3
/* 8038E61C 0038B57C  7F 7B 2A 14 */	add r27, r27, r5
/* 8038E620 0038B580  41 82 00 28 */	beq lbl_8038E648
/* 8038E624 0038B584  7F EC FB 78 */	mr r12, r31
/* 8038E628 0038B588  7F C3 F3 78 */	mr r3, r30
/* 8038E62C 0038B58C  7F 24 CB 78 */	mr r4, r25
/* 8038E630 0038B590  7D 89 03 A6 */	mtctr r12
/* 8038E634 0038B594  4E 80 04 21 */	bctrl 
/* 8038E638 0038B598  28 03 00 00 */	cmplwi r3, 0
/* 8038E63C 0038B59C  40 82 00 0C */	bne lbl_8038E648
/* 8038E640 0038B5A0  38 60 FF FF */	li r3, -1
/* 8038E644 0038B5A4  48 00 01 5C */	b lbl_8038E7A0
lbl_8038E648:
/* 8038E648 0038B5A8  7F 63 DB 78 */	mr r3, r27
/* 8038E64C 0038B5AC  48 00 01 54 */	b lbl_8038E7A0
lbl_8038E650:
/* 8038E650 0038B5B0  88 01 00 6C */	lbz r0, 0x6c(r1)
/* 8038E654 0038B5B4  7F 33 CB 78 */	mr r19, r25
/* 8038E658 0038B5B8  28 00 00 00 */	cmplwi r0, 0
/* 8038E65C 0038B5BC  41 82 00 B0 */	beq lbl_8038E70C
/* 8038E660 0038B5C0  28 00 00 02 */	cmplwi r0, 2
/* 8038E664 0038B5C4  38 00 00 20 */	li r0, 0x20
/* 8038E668 0038B5C8  40 82 00 08 */	bne lbl_8038E670
/* 8038E66C 0038B5CC  38 00 00 30 */	li r0, 0x30
lbl_8038E670:
/* 8038E670 0038B5D0  98 01 00 09 */	stb r0, 9(r1)
/* 8038E674 0038B5D4  88 14 00 00 */	lbz r0, 0(r20)
/* 8038E678 0038B5D8  7C 00 07 74 */	extsb r0, r0
/* 8038E67C 0038B5DC  2C 00 00 2B */	cmpwi r0, 0x2b
/* 8038E680 0038B5E0  41 82 00 14 */	beq lbl_8038E694
/* 8038E684 0038B5E4  2C 00 00 2D */	cmpwi r0, 0x2d
/* 8038E688 0038B5E8  41 82 00 0C */	beq lbl_8038E694
/* 8038E68C 0038B5EC  2C 00 00 20 */	cmpwi r0, 0x20
/* 8038E690 0038B5F0  40 82 00 70 */	bne lbl_8038E700
lbl_8038E694:
/* 8038E694 0038B5F4  88 01 00 09 */	lbz r0, 9(r1)
/* 8038E698 0038B5F8  2C 00 00 30 */	cmpwi r0, 0x30
/* 8038E69C 0038B5FC  40 82 00 64 */	bne lbl_8038E700
/* 8038E6A0 0038B600  7F EC FB 78 */	mr r12, r31
/* 8038E6A4 0038B604  7F C3 F3 78 */	mr r3, r30
/* 8038E6A8 0038B608  7E 84 A3 78 */	mr r4, r20
/* 8038E6AC 0038B60C  38 A0 00 01 */	li r5, 1
/* 8038E6B0 0038B610  7D 89 03 A6 */	mtctr r12
/* 8038E6B4 0038B614  4E 80 04 21 */	bctrl 
/* 8038E6B8 0038B618  28 03 00 00 */	cmplwi r3, 0
/* 8038E6BC 0038B61C  40 82 00 0C */	bne lbl_8038E6C8
/* 8038E6C0 0038B620  38 60 FF FF */	li r3, -1
/* 8038E6C4 0038B624  48 00 00 DC */	b lbl_8038E7A0
lbl_8038E6C8:
/* 8038E6C8 0038B628  3A 94 00 01 */	addi r20, r20, 1
/* 8038E6CC 0038B62C  3B 39 FF FF */	addi r25, r25, -1
/* 8038E6D0 0038B630  48 00 00 30 */	b lbl_8038E700
lbl_8038E6D4:
/* 8038E6D4 0038B634  7F EC FB 78 */	mr r12, r31
/* 8038E6D8 0038B638  7F C3 F3 78 */	mr r3, r30
/* 8038E6DC 0038B63C  38 81 00 09 */	addi r4, r1, 9
/* 8038E6E0 0038B640  38 A0 00 01 */	li r5, 1
/* 8038E6E4 0038B644  7D 89 03 A6 */	mtctr r12
/* 8038E6E8 0038B648  4E 80 04 21 */	bctrl 
/* 8038E6EC 0038B64C  28 03 00 00 */	cmplwi r3, 0
/* 8038E6F0 0038B650  40 82 00 0C */	bne lbl_8038E6FC
/* 8038E6F4 0038B654  38 60 FF FF */	li r3, -1
/* 8038E6F8 0038B658  48 00 00 A8 */	b lbl_8038E7A0
lbl_8038E6FC:
/* 8038E6FC 0038B65C  3A 73 00 01 */	addi r19, r19, 1
lbl_8038E700:
/* 8038E700 0038B660  80 01 00 74 */	lwz r0, 0x74(r1)
/* 8038E704 0038B664  7C 13 00 00 */	cmpw r19, r0
/* 8038E708 0038B668  41 80 FF CC */	blt lbl_8038E6D4
lbl_8038E70C:
/* 8038E70C 0038B66C  2C 19 00 00 */	cmpwi r25, 0
/* 8038E710 0038B670  41 82 00 2C */	beq lbl_8038E73C
/* 8038E714 0038B674  7F EC FB 78 */	mr r12, r31
/* 8038E718 0038B678  7F C3 F3 78 */	mr r3, r30
/* 8038E71C 0038B67C  7E 84 A3 78 */	mr r4, r20
/* 8038E720 0038B680  7F 25 CB 78 */	mr r5, r25
/* 8038E724 0038B684  7D 89 03 A6 */	mtctr r12
/* 8038E728 0038B688  4E 80 04 21 */	bctrl 
/* 8038E72C 0038B68C  28 03 00 00 */	cmplwi r3, 0
/* 8038E730 0038B690  40 82 00 0C */	bne lbl_8038E73C
/* 8038E734 0038B694  38 60 FF FF */	li r3, -1
/* 8038E738 0038B698  48 00 00 68 */	b lbl_8038E7A0
lbl_8038E73C:
/* 8038E73C 0038B69C  88 01 00 6C */	lbz r0, 0x6c(r1)
/* 8038E740 0038B6A0  28 00 00 00 */	cmplwi r0, 0
/* 8038E744 0038B6A4  40 82 00 48 */	bne lbl_8038E78C
/* 8038E748 0038B6A8  3A 80 00 20 */	li r20, 0x20
/* 8038E74C 0038B6AC  48 00 00 34 */	b lbl_8038E780
lbl_8038E750:
/* 8038E750 0038B6B0  7F EC FB 78 */	mr r12, r31
/* 8038E754 0038B6B4  7F C3 F3 78 */	mr r3, r30
/* 8038E758 0038B6B8  9A 81 00 08 */	stb r20, 8(r1)
/* 8038E75C 0038B6BC  38 81 00 08 */	addi r4, r1, 8
/* 8038E760 0038B6C0  38 A0 00 01 */	li r5, 1
/* 8038E764 0038B6C4  7D 89 03 A6 */	mtctr r12
/* 8038E768 0038B6C8  4E 80 04 21 */	bctrl 
/* 8038E76C 0038B6CC  28 03 00 00 */	cmplwi r3, 0
/* 8038E770 0038B6D0  40 82 00 0C */	bne lbl_8038E77C
/* 8038E774 0038B6D4  38 60 FF FF */	li r3, -1
/* 8038E778 0038B6D8  48 00 00 28 */	b lbl_8038E7A0
lbl_8038E77C:
/* 8038E77C 0038B6DC  3A 73 00 01 */	addi r19, r19, 1
lbl_8038E780:
/* 8038E780 0038B6E0  80 01 00 74 */	lwz r0, 0x74(r1)
/* 8038E784 0038B6E4  7C 13 00 00 */	cmpw r19, r0
/* 8038E788 0038B6E8  41 80 FF C8 */	blt lbl_8038E750
lbl_8038E78C:
/* 8038E78C 0038B6EC  7F 7B 9A 14 */	add r27, r27, r19
lbl_8038E790:
/* 8038E790 0038B6F0  88 1A 00 00 */	lbz r0, 0(r26)
/* 8038E794 0038B6F4  7C 00 07 75 */	extsb. r0, r0
/* 8038E798 0038B6F8  40 82 F8 E0 */	bne lbl_8038E078
lbl_8038E79C:
/* 8038E79C 0038B6FC  7F 63 DB 78 */	mr r3, r27
lbl_8038E7A0:
/* 8038E7A0 0038B700  BA 61 02 8C */	lmw r19, 0x28c(r1)
/* 8038E7A4 0038B704  80 01 02 C4 */	lwz r0, 0x2c4(r1)
/* 8038E7A8 0038B708  7C 08 03 A6 */	mtlr r0
/* 8038E7AC 0038B70C  38 21 02 C0 */	addi r1, r1, 0x2c0
/* 8038E7B0 0038B710  4E 80 00 20 */	blr 

.global float2str
float2str:
/* 8038E7B4 0038B714  94 21 FF B0 */	stwu r1, -0x50(r1)
/* 8038E7B8 0038B718  7C 08 02 A6 */	mflr r0
/* 8038E7BC 0038B71C  90 01 00 54 */	stw r0, 0x54(r1)
/* 8038E7C0 0038B720  DB E1 00 48 */	stfd f31, 0x48(r1)
/* 8038E7C4 0038B724  FF E0 08 90 */	fmr f31, f1
/* 8038E7C8 0038B728  93 E1 00 44 */	stw r31, 0x44(r1)
/* 8038E7CC 0038B72C  93 C1 00 40 */	stw r30, 0x40(r1)
/* 8038E7D0 0038B730  93 A1 00 3C */	stw r29, 0x3c(r1)
/* 8038E7D4 0038B734  7C 9D 23 78 */	mr r29, r4
/* 8038E7D8 0038B738  93 81 00 38 */	stw r28, 0x38(r1)
/* 8038E7DC 0038B73C  7C 7C 1B 78 */	mr r28, r3
/* 8038E7E0 0038B740  80 04 00 0C */	lwz r0, 0xc(r4)
/* 8038E7E4 0038B744  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 8038E7E8 0038B748  40 81 00 0C */	ble lbl_8038E7F4
/* 8038E7EC 0038B74C  38 60 00 00 */	li r3, 0
/* 8038E7F0 0038B750  48 00 06 8C */	b lbl_8038EE7C
lbl_8038E7F4:
/* 8038E7F4 0038B754  38 60 00 00 */	li r3, 0
/* 8038E7F8 0038B758  38 00 00 20 */	li r0, 0x20
/* 8038E7FC 0038B75C  98 61 00 08 */	stb r3, 8(r1)
/* 8038E800 0038B760  38 61 00 08 */	addi r3, r1, 8
/* 8038E804 0038B764  38 81 00 0C */	addi r4, r1, 0xc
/* 8038E808 0038B768  B0 01 00 0A */	sth r0, 0xa(r1)
/* 8038E80C 0038B76C  4B FF D2 F9 */	bl __num2dec
/* 8038E810 0038B770  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8038E814 0038B774  3B E1 00 11 */	addi r31, r1, 0x11
/* 8038E818 0038B778  7C BF 02 14 */	add r5, r31, r0
/* 8038E81C 0038B77C  48 00 00 1C */	b lbl_8038E838
lbl_8038E820:
/* 8038E820 0038B780  88 81 00 10 */	lbz r4, 0x10(r1)
/* 8038E824 0038B784  A8 61 00 0E */	lha r3, 0xe(r1)
/* 8038E828 0038B788  38 84 FF FF */	addi r4, r4, -1
/* 8038E82C 0038B78C  38 03 00 01 */	addi r0, r3, 1
/* 8038E830 0038B790  98 81 00 10 */	stb r4, 0x10(r1)
/* 8038E834 0038B794  B0 01 00 0E */	sth r0, 0xe(r1)
lbl_8038E838:
/* 8038E838 0038B798  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8038E83C 0038B79C  28 00 00 01 */	cmplwi r0, 1
/* 8038E840 0038B7A0  40 81 00 10 */	ble lbl_8038E850
/* 8038E844 0038B7A4  8C 05 FF FF */	lbzu r0, -1(r5)
/* 8038E848 0038B7A8  2C 00 00 30 */	cmpwi r0, 0x30
/* 8038E84C 0038B7AC  41 82 FF D4 */	beq lbl_8038E820
lbl_8038E850:
/* 8038E850 0038B7B0  88 01 00 11 */	lbz r0, 0x11(r1)
/* 8038E854 0038B7B4  2C 00 00 49 */	cmpwi r0, 0x49
/* 8038E858 0038B7B8  41 82 00 2C */	beq lbl_8038E884
/* 8038E85C 0038B7BC  40 80 00 10 */	bge lbl_8038E86C
/* 8038E860 0038B7C0  2C 00 00 30 */	cmpwi r0, 0x30
/* 8038E864 0038B7C4  41 82 00 14 */	beq lbl_8038E878
/* 8038E868 0038B7C8  48 00 01 6C */	b lbl_8038E9D4
lbl_8038E86C:
/* 8038E86C 0038B7CC  2C 00 00 4E */	cmpwi r0, 0x4e
/* 8038E870 0038B7D0  41 82 00 BC */	beq lbl_8038E92C
/* 8038E874 0038B7D4  48 00 01 60 */	b lbl_8038E9D4
lbl_8038E878:
/* 8038E878 0038B7D8  38 00 00 00 */	li r0, 0
/* 8038E87C 0038B7DC  B0 01 00 0E */	sth r0, 0xe(r1)
/* 8038E880 0038B7E0  48 00 01 54 */	b lbl_8038E9D4
lbl_8038E884:
/* 8038E884 0038B7E4  C8 02 CF 78 */	lfd f0, lbl_805AEC98@sda21(r2)
/* 8038E888 0038B7E8  FC 1F 00 40 */	fcmpo cr0, f31, f0
/* 8038E88C 0038B7EC  40 80 00 50 */	bge lbl_8038E8DC
/* 8038E890 0038B7F0  3C 60 80 3F */	lis r3, lbl_803F2A20@ha
/* 8038E894 0038B7F4  88 1D 00 05 */	lbz r0, 5(r29)
/* 8038E898 0038B7F8  38 63 2A 20 */	addi r3, r3, lbl_803F2A20@l
/* 8038E89C 0038B7FC  3B 9C FF FB */	addi r28, r28, -5
/* 8038E8A0 0038B800  7C 03 00 AE */	lbzx r0, r3, r0
/* 8038E8A4 0038B804  54 00 06 31 */	rlwinm. r0, r0, 0, 0x18, 0x18
/* 8038E8A8 0038B808  41 82 00 1C */	beq lbl_8038E8C4
/* 8038E8AC 0038B80C  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038E8B0 0038B810  7F 83 E3 78 */	mr r3, r28
/* 8038E8B4 0038B814  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038E8B8 0038B818  38 84 00 01 */	addi r4, r4, 1
/* 8038E8BC 0038B81C  48 00 18 4D */	bl strcpy
/* 8038E8C0 0038B820  48 00 00 64 */	b lbl_8038E924
lbl_8038E8C4:
/* 8038E8C4 0038B824  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038E8C8 0038B828  7F 83 E3 78 */	mr r3, r28
/* 8038E8CC 0038B82C  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038E8D0 0038B830  38 84 00 06 */	addi r4, r4, 6
/* 8038E8D4 0038B834  48 00 18 35 */	bl strcpy
/* 8038E8D8 0038B838  48 00 00 4C */	b lbl_8038E924
lbl_8038E8DC:
/* 8038E8DC 0038B83C  3C 60 80 3F */	lis r3, lbl_803F2A20@ha
/* 8038E8E0 0038B840  88 1D 00 05 */	lbz r0, 5(r29)
/* 8038E8E4 0038B844  38 63 2A 20 */	addi r3, r3, lbl_803F2A20@l
/* 8038E8E8 0038B848  3B 9C FF FC */	addi r28, r28, -4
/* 8038E8EC 0038B84C  7C 03 00 AE */	lbzx r0, r3, r0
/* 8038E8F0 0038B850  54 00 06 31 */	rlwinm. r0, r0, 0, 0x18, 0x18
/* 8038E8F4 0038B854  41 82 00 1C */	beq lbl_8038E910
/* 8038E8F8 0038B858  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038E8FC 0038B85C  7F 83 E3 78 */	mr r3, r28
/* 8038E900 0038B860  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038E904 0038B864  38 84 00 0B */	addi r4, r4, 0xb
/* 8038E908 0038B868  48 00 18 01 */	bl strcpy
/* 8038E90C 0038B86C  48 00 00 18 */	b lbl_8038E924
lbl_8038E910:
/* 8038E910 0038B870  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038E914 0038B874  7F 83 E3 78 */	mr r3, r28
/* 8038E918 0038B878  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038E91C 0038B87C  38 84 00 0F */	addi r4, r4, 0xf
/* 8038E920 0038B880  48 00 17 E9 */	bl strcpy
lbl_8038E924:
/* 8038E924 0038B884  7F 83 E3 78 */	mr r3, r28
/* 8038E928 0038B888  48 00 05 54 */	b lbl_8038EE7C
lbl_8038E92C:
/* 8038E92C 0038B88C  88 01 00 0C */	lbz r0, 0xc(r1)
/* 8038E930 0038B890  7C 00 07 75 */	extsb. r0, r0
/* 8038E934 0038B894  41 82 00 50 */	beq lbl_8038E984
/* 8038E938 0038B898  3C 60 80 3F */	lis r3, lbl_803F2A20@ha
/* 8038E93C 0038B89C  88 1D 00 05 */	lbz r0, 5(r29)
/* 8038E940 0038B8A0  38 63 2A 20 */	addi r3, r3, lbl_803F2A20@l
/* 8038E944 0038B8A4  3B 9C FF FB */	addi r28, r28, -5
/* 8038E948 0038B8A8  7C 03 00 AE */	lbzx r0, r3, r0
/* 8038E94C 0038B8AC  54 00 06 31 */	rlwinm. r0, r0, 0, 0x18, 0x18
/* 8038E950 0038B8B0  41 82 00 1C */	beq lbl_8038E96C
/* 8038E954 0038B8B4  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038E958 0038B8B8  7F 83 E3 78 */	mr r3, r28
/* 8038E95C 0038B8BC  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038E960 0038B8C0  38 84 00 13 */	addi r4, r4, 0x13
/* 8038E964 0038B8C4  48 00 17 A5 */	bl strcpy
/* 8038E968 0038B8C8  48 00 00 64 */	b lbl_8038E9CC
lbl_8038E96C:
/* 8038E96C 0038B8CC  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038E970 0038B8D0  7F 83 E3 78 */	mr r3, r28
/* 8038E974 0038B8D4  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038E978 0038B8D8  38 84 00 18 */	addi r4, r4, 0x18
/* 8038E97C 0038B8DC  48 00 17 8D */	bl strcpy
/* 8038E980 0038B8E0  48 00 00 4C */	b lbl_8038E9CC
lbl_8038E984:
/* 8038E984 0038B8E4  3C 60 80 3F */	lis r3, lbl_803F2A20@ha
/* 8038E988 0038B8E8  88 1D 00 05 */	lbz r0, 5(r29)
/* 8038E98C 0038B8EC  38 63 2A 20 */	addi r3, r3, lbl_803F2A20@l
/* 8038E990 0038B8F0  3B 9C FF FC */	addi r28, r28, -4
/* 8038E994 0038B8F4  7C 03 00 AE */	lbzx r0, r3, r0
/* 8038E998 0038B8F8  54 00 06 31 */	rlwinm. r0, r0, 0, 0x18, 0x18
/* 8038E99C 0038B8FC  41 82 00 1C */	beq lbl_8038E9B8
/* 8038E9A0 0038B900  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038E9A4 0038B904  7F 83 E3 78 */	mr r3, r28
/* 8038E9A8 0038B908  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038E9AC 0038B90C  38 84 00 1D */	addi r4, r4, 0x1d
/* 8038E9B0 0038B910  48 00 17 59 */	bl strcpy
/* 8038E9B4 0038B914  48 00 00 18 */	b lbl_8038E9CC
lbl_8038E9B8:
/* 8038E9B8 0038B918  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038E9BC 0038B91C  7F 83 E3 78 */	mr r3, r28
/* 8038E9C0 0038B920  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038E9C4 0038B924  38 84 00 21 */	addi r4, r4, 0x21
/* 8038E9C8 0038B928  48 00 17 41 */	bl strcpy
lbl_8038E9CC:
/* 8038E9CC 0038B92C  7F 83 E3 78 */	mr r3, r28
/* 8038E9D0 0038B930  48 00 04 AC */	b lbl_8038EE7C
lbl_8038E9D4:
/* 8038E9D4 0038B934  A8 81 00 0E */	lha r4, 0xe(r1)
/* 8038E9D8 0038B938  38 00 00 00 */	li r0, 0
/* 8038E9DC 0038B93C  88 61 00 10 */	lbz r3, 0x10(r1)
/* 8038E9E0 0038B940  3B DC FF FF */	addi r30, r28, -1
/* 8038E9E4 0038B944  7C 63 22 14 */	add r3, r3, r4
/* 8038E9E8 0038B948  38 63 FF FF */	addi r3, r3, -1
/* 8038E9EC 0038B94C  B0 61 00 0E */	sth r3, 0xe(r1)
/* 8038E9F0 0038B950  98 1C FF FF */	stb r0, -1(r28)
/* 8038E9F4 0038B954  88 1D 00 05 */	lbz r0, 5(r29)
/* 8038E9F8 0038B958  2C 00 00 65 */	cmpwi r0, 0x65
/* 8038E9FC 0038B95C  41 82 00 F4 */	beq lbl_8038EAF0
/* 8038EA00 0038B960  40 80 00 28 */	bge lbl_8038EA28
/* 8038EA04 0038B964  2C 00 00 46 */	cmpwi r0, 0x46
/* 8038EA08 0038B968  41 82 02 4C */	beq lbl_8038EC54
/* 8038EA0C 0038B96C  40 80 00 10 */	bge lbl_8038EA1C
/* 8038EA10 0038B970  2C 00 00 45 */	cmpwi r0, 0x45
/* 8038EA14 0038B974  40 80 00 DC */	bge lbl_8038EAF0
/* 8038EA18 0038B978  48 00 04 60 */	b lbl_8038EE78
lbl_8038EA1C:
/* 8038EA1C 0038B97C  2C 00 00 48 */	cmpwi r0, 0x48
/* 8038EA20 0038B980  40 80 04 58 */	bge lbl_8038EE78
/* 8038EA24 0038B984  48 00 00 14 */	b lbl_8038EA38
lbl_8038EA28:
/* 8038EA28 0038B988  2C 00 00 67 */	cmpwi r0, 0x67
/* 8038EA2C 0038B98C  41 82 00 0C */	beq lbl_8038EA38
/* 8038EA30 0038B990  40 80 04 48 */	bge lbl_8038EE78
/* 8038EA34 0038B994  48 00 02 20 */	b lbl_8038EC54
lbl_8038EA38:
/* 8038EA38 0038B998  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8038EA3C 0038B99C  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 8038EA40 0038B9A0  7C 00 20 00 */	cmpw r0, r4
/* 8038EA44 0038B9A4  40 81 00 0C */	ble lbl_8038EA50
/* 8038EA48 0038B9A8  38 61 00 0C */	addi r3, r1, 0xc
/* 8038EA4C 0038B9AC  48 00 04 55 */	bl round_decimal
lbl_8038EA50:
/* 8038EA50 0038B9B0  A8 81 00 0E */	lha r4, 0xe(r1)
/* 8038EA54 0038B9B4  2C 04 FF FC */	cmpwi r4, -4
/* 8038EA58 0038B9B8  41 80 00 10 */	blt lbl_8038EA68
/* 8038EA5C 0038B9BC  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8038EA60 0038B9C0  7C 04 18 00 */	cmpw r4, r3
/* 8038EA64 0038B9C4  41 80 00 50 */	blt lbl_8038EAB4
lbl_8038EA68:
/* 8038EA68 0038B9C8  88 1D 00 03 */	lbz r0, 3(r29)
/* 8038EA6C 0038B9CC  28 00 00 00 */	cmplwi r0, 0
/* 8038EA70 0038B9D0  41 82 00 14 */	beq lbl_8038EA84
/* 8038EA74 0038B9D4  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8038EA78 0038B9D8  38 03 FF FF */	addi r0, r3, -1
/* 8038EA7C 0038B9DC  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8038EA80 0038B9E0  48 00 00 10 */	b lbl_8038EA90
lbl_8038EA84:
/* 8038EA84 0038B9E4  88 61 00 10 */	lbz r3, 0x10(r1)
/* 8038EA88 0038B9E8  38 03 FF FF */	addi r0, r3, -1
/* 8038EA8C 0038B9EC  90 1D 00 0C */	stw r0, 0xc(r29)
lbl_8038EA90:
/* 8038EA90 0038B9F0  88 1D 00 05 */	lbz r0, 5(r29)
/* 8038EA94 0038B9F4  28 00 00 67 */	cmplwi r0, 0x67
/* 8038EA98 0038B9F8  40 82 00 10 */	bne lbl_8038EAA8
/* 8038EA9C 0038B9FC  38 00 00 65 */	li r0, 0x65
/* 8038EAA0 0038BA00  98 1D 00 05 */	stb r0, 5(r29)
/* 8038EAA4 0038BA04  48 00 00 4C */	b lbl_8038EAF0
lbl_8038EAA8:
/* 8038EAA8 0038BA08  38 00 00 45 */	li r0, 0x45
/* 8038EAAC 0038BA0C  98 1D 00 05 */	stb r0, 5(r29)
/* 8038EAB0 0038BA10  48 00 00 40 */	b lbl_8038EAF0
lbl_8038EAB4:
/* 8038EAB4 0038BA14  88 1D 00 03 */	lbz r0, 3(r29)
/* 8038EAB8 0038BA18  28 00 00 00 */	cmplwi r0, 0
/* 8038EABC 0038BA1C  41 82 00 14 */	beq lbl_8038EAD0
/* 8038EAC0 0038BA20  38 04 00 01 */	addi r0, r4, 1
/* 8038EAC4 0038BA24  7C 00 18 50 */	subf r0, r0, r3
/* 8038EAC8 0038BA28  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8038EACC 0038BA2C  48 00 01 88 */	b lbl_8038EC54
lbl_8038EAD0:
/* 8038EAD0 0038BA30  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8038EAD4 0038BA34  38 64 00 01 */	addi r3, r4, 1
/* 8038EAD8 0038BA38  7C 03 00 51 */	subf. r0, r3, r0
/* 8038EADC 0038BA3C  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8038EAE0 0038BA40  40 80 01 74 */	bge lbl_8038EC54
/* 8038EAE4 0038BA44  38 00 00 00 */	li r0, 0
/* 8038EAE8 0038BA48  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8038EAEC 0038BA4C  48 00 01 68 */	b lbl_8038EC54
lbl_8038EAF0:
/* 8038EAF0 0038BA50  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8038EAF4 0038BA54  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8038EAF8 0038BA58  38 83 00 01 */	addi r4, r3, 1
/* 8038EAFC 0038BA5C  7C 00 20 00 */	cmpw r0, r4
/* 8038EB00 0038BA60  40 81 00 0C */	ble lbl_8038EB0C
/* 8038EB04 0038BA64  38 61 00 0C */	addi r3, r1, 0xc
/* 8038EB08 0038BA68  48 00 03 99 */	bl round_decimal
lbl_8038EB0C:
/* 8038EB0C 0038BA6C  A8 C1 00 0E */	lha r6, 0xe(r1)
/* 8038EB10 0038BA70  39 00 00 2B */	li r8, 0x2b
/* 8038EB14 0038BA74  2C 06 00 00 */	cmpwi r6, 0
/* 8038EB18 0038BA78  40 80 00 0C */	bge lbl_8038EB24
/* 8038EB1C 0038BA7C  7C C6 00 D0 */	neg r6, r6
/* 8038EB20 0038BA80  39 00 00 2D */	li r8, 0x2d
lbl_8038EB24:
/* 8038EB24 0038BA84  3C 60 66 66 */	lis r3, 0x66666667@ha
/* 8038EB28 0038BA88  38 E0 00 00 */	li r7, 0
/* 8038EB2C 0038BA8C  38 A3 66 67 */	addi r5, r3, 0x66666667@l
/* 8038EB30 0038BA90  48 00 00 38 */	b lbl_8038EB68
lbl_8038EB34:
/* 8038EB34 0038BA94  7C 05 30 96 */	mulhw r0, r5, r6
/* 8038EB38 0038BA98  38 E7 00 01 */	addi r7, r7, 1
/* 8038EB3C 0038BA9C  7C 03 16 70 */	srawi r3, r0, 2
/* 8038EB40 0038BAA0  54 64 0F FE */	srwi r4, r3, 0x1f
/* 8038EB44 0038BAA4  7C 00 16 70 */	srawi r0, r0, 2
/* 8038EB48 0038BAA8  7C 63 22 14 */	add r3, r3, r4
/* 8038EB4C 0038BAAC  1C 83 00 0A */	mulli r4, r3, 0xa
/* 8038EB50 0038BAB0  54 03 0F FE */	srwi r3, r0, 0x1f
/* 8038EB54 0038BAB4  7C 84 30 50 */	subf r4, r4, r6
/* 8038EB58 0038BAB8  7C C0 1A 14 */	add r6, r0, r3
/* 8038EB5C 0038BABC  38 04 00 30 */	addi r0, r4, 0x30
/* 8038EB60 0038BAC0  98 1E FF FF */	stb r0, -1(r30)
/* 8038EB64 0038BAC4  3B DE FF FF */	addi r30, r30, -1
lbl_8038EB68:
/* 8038EB68 0038BAC8  2C 06 00 00 */	cmpwi r6, 0
/* 8038EB6C 0038BACC  40 82 FF C8 */	bne lbl_8038EB34
/* 8038EB70 0038BAD0  2C 07 00 02 */	cmpwi r7, 2
/* 8038EB74 0038BAD4  41 80 FF C0 */	blt lbl_8038EB34
/* 8038EB78 0038BAD8  99 1E FF FF */	stb r8, -1(r30)
/* 8038EB7C 0038BADC  88 1D 00 05 */	lbz r0, 5(r29)
/* 8038EB80 0038BAE0  9C 1E FF FE */	stbu r0, -2(r30)
/* 8038EB84 0038BAE4  80 7D 00 0C */	lwz r3, 0xc(r29)
/* 8038EB88 0038BAE8  7C 1E E0 50 */	subf r0, r30, r28
/* 8038EB8C 0038BAEC  7C 03 02 14 */	add r0, r3, r0
/* 8038EB90 0038BAF0  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 8038EB94 0038BAF4  40 81 00 0C */	ble lbl_8038EBA0
/* 8038EB98 0038BAF8  38 60 00 00 */	li r3, 0
/* 8038EB9C 0038BAFC  48 00 02 E0 */	b lbl_8038EE7C
lbl_8038EBA0:
/* 8038EBA0 0038BB00  88 81 00 10 */	lbz r4, 0x10(r1)
/* 8038EBA4 0038BB04  38 03 00 01 */	addi r0, r3, 1
/* 8038EBA8 0038BB08  7C 04 00 00 */	cmpw r4, r0
/* 8038EBAC 0038BB0C  40 80 00 20 */	bge lbl_8038EBCC
/* 8038EBB0 0038BB10  38 63 00 02 */	addi r3, r3, 2
/* 8038EBB4 0038BB14  38 00 00 30 */	li r0, 0x30
/* 8038EBB8 0038BB18  7C 64 18 50 */	subf r3, r4, r3
/* 8038EBBC 0038BB1C  48 00 00 08 */	b lbl_8038EBC4
lbl_8038EBC0:
/* 8038EBC0 0038BB20  9C 1E FF FF */	stbu r0, -1(r30)
lbl_8038EBC4:
/* 8038EBC4 0038BB24  34 63 FF FF */	addic. r3, r3, -1
/* 8038EBC8 0038BB28  40 82 FF F8 */	bne lbl_8038EBC0
lbl_8038EBCC:
/* 8038EBCC 0038BB2C  88 61 00 10 */	lbz r3, 0x10(r1)
/* 8038EBD0 0038BB30  7C 9F 1A 14 */	add r4, r31, r3
/* 8038EBD4 0038BB34  48 00 00 0C */	b lbl_8038EBE0
lbl_8038EBD8:
/* 8038EBD8 0038BB38  8C 04 FF FF */	lbzu r0, -1(r4)
/* 8038EBDC 0038BB3C  9C 1E FF FF */	stbu r0, -1(r30)
lbl_8038EBE0:
/* 8038EBE0 0038BB40  34 63 FF FF */	addic. r3, r3, -1
/* 8038EBE4 0038BB44  40 82 FF F4 */	bne lbl_8038EBD8
/* 8038EBE8 0038BB48  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8038EBEC 0038BB4C  2C 00 00 00 */	cmpwi r0, 0
/* 8038EBF0 0038BB50  40 82 00 10 */	bne lbl_8038EC00
/* 8038EBF4 0038BB54  88 1D 00 03 */	lbz r0, 3(r29)
/* 8038EBF8 0038BB58  28 00 00 00 */	cmplwi r0, 0
/* 8038EBFC 0038BB5C  41 82 00 0C */	beq lbl_8038EC08
lbl_8038EC00:
/* 8038EC00 0038BB60  38 00 00 2E */	li r0, 0x2e
/* 8038EC04 0038BB64  9C 1E FF FF */	stbu r0, -1(r30)
lbl_8038EC08:
/* 8038EC08 0038BB68  88 01 00 11 */	lbz r0, 0x11(r1)
/* 8038EC0C 0038BB6C  9C 1E FF FF */	stbu r0, -1(r30)
/* 8038EC10 0038BB70  88 01 00 0C */	lbz r0, 0xc(r1)
/* 8038EC14 0038BB74  7C 00 07 75 */	extsb. r0, r0
/* 8038EC18 0038BB78  41 82 00 10 */	beq lbl_8038EC28
/* 8038EC1C 0038BB7C  38 00 00 2D */	li r0, 0x2d
/* 8038EC20 0038BB80  9C 1E FF FF */	stbu r0, -1(r30)
/* 8038EC24 0038BB84  48 00 02 54 */	b lbl_8038EE78
lbl_8038EC28:
/* 8038EC28 0038BB88  88 1D 00 01 */	lbz r0, 1(r29)
/* 8038EC2C 0038BB8C  28 00 00 01 */	cmplwi r0, 1
/* 8038EC30 0038BB90  40 82 00 10 */	bne lbl_8038EC40
/* 8038EC34 0038BB94  38 00 00 2B */	li r0, 0x2b
/* 8038EC38 0038BB98  9C 1E FF FF */	stbu r0, -1(r30)
/* 8038EC3C 0038BB9C  48 00 02 3C */	b lbl_8038EE78
lbl_8038EC40:
/* 8038EC40 0038BBA0  28 00 00 02 */	cmplwi r0, 2
/* 8038EC44 0038BBA4  40 82 02 34 */	bne lbl_8038EE78
/* 8038EC48 0038BBA8  38 00 00 20 */	li r0, 0x20
/* 8038EC4C 0038BBAC  9C 1E FF FF */	stbu r0, -1(r30)
/* 8038EC50 0038BBB0  48 00 02 28 */	b lbl_8038EE78
lbl_8038EC54:
/* 8038EC54 0038BBB4  A8 01 00 0E */	lha r0, 0xe(r1)
/* 8038EC58 0038BBB8  88 81 00 10 */	lbz r4, 0x10(r1)
/* 8038EC5C 0038BBBC  7C 60 20 50 */	subf r3, r0, r4
/* 8038EC60 0038BBC0  34 E3 FF FF */	addic. r7, r3, -1
/* 8038EC64 0038BBC4  40 80 00 08 */	bge lbl_8038EC6C
/* 8038EC68 0038BBC8  38 E0 00 00 */	li r7, 0
lbl_8038EC6C:
/* 8038EC6C 0038BBCC  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8038EC70 0038BBD0  7C 07 00 00 */	cmpw r7, r0
/* 8038EC74 0038BBD4  40 81 00 2C */	ble lbl_8038ECA0
/* 8038EC78 0038BBD8  7C 00 38 50 */	subf r0, r0, r7
/* 8038EC7C 0038BBDC  38 61 00 0C */	addi r3, r1, 0xc
/* 8038EC80 0038BBE0  7C 80 20 50 */	subf r4, r0, r4
/* 8038EC84 0038BBE4  48 00 02 1D */	bl round_decimal
/* 8038EC88 0038BBE8  A8 61 00 0E */	lha r3, 0xe(r1)
/* 8038EC8C 0038BBEC  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8038EC90 0038BBF0  7C 63 00 50 */	subf r3, r3, r0
/* 8038EC94 0038BBF4  34 E3 FF FF */	addic. r7, r3, -1
/* 8038EC98 0038BBF8  40 80 00 08 */	bge lbl_8038ECA0
/* 8038EC9C 0038BBFC  38 E0 00 00 */	li r7, 0
lbl_8038ECA0:
/* 8038ECA0 0038BC00  A8 61 00 0E */	lha r3, 0xe(r1)
/* 8038ECA4 0038BC04  34 C3 00 01 */	addic. r6, r3, 1
/* 8038ECA8 0038BC08  40 80 00 08 */	bge lbl_8038ECB0
/* 8038ECAC 0038BC0C  38 C0 00 00 */	li r6, 0
lbl_8038ECB0:
/* 8038ECB0 0038BC10  7C 06 3A 14 */	add r0, r6, r7
/* 8038ECB4 0038BC14  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 8038ECB8 0038BC18  40 81 00 0C */	ble lbl_8038ECC4
/* 8038ECBC 0038BC1C  38 60 00 00 */	li r3, 0
/* 8038ECC0 0038BC20  48 00 01 BC */	b lbl_8038EE7C
lbl_8038ECC4:
/* 8038ECC4 0038BC24  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8038ECC8 0038BC28  38 80 00 00 */	li r4, 0
/* 8038ECCC 0038BC2C  38 60 00 30 */	li r3, 0x30
/* 8038ECD0 0038BC30  7C BF 02 14 */	add r5, r31, r0
/* 8038ECD4 0038BC34  48 00 00 0C */	b lbl_8038ECE0
lbl_8038ECD8:
/* 8038ECD8 0038BC38  9C 7E FF FF */	stbu r3, -1(r30)
/* 8038ECDC 0038BC3C  38 84 00 01 */	addi r4, r4, 1
lbl_8038ECE0:
/* 8038ECE0 0038BC40  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8038ECE4 0038BC44  7C 07 00 50 */	subf r0, r7, r0
/* 8038ECE8 0038BC48  7C 04 00 00 */	cmpw r4, r0
/* 8038ECEC 0038BC4C  41 80 FF EC */	blt lbl_8038ECD8
/* 8038ECF0 0038BC50  38 60 00 00 */	li r3, 0
/* 8038ECF4 0038BC54  48 00 00 10 */	b lbl_8038ED04
lbl_8038ECF8:
/* 8038ECF8 0038BC58  8C 05 FF FF */	lbzu r0, -1(r5)
/* 8038ECFC 0038BC5C  38 63 00 01 */	addi r3, r3, 1
/* 8038ED00 0038BC60  9C 1E FF FF */	stbu r0, -1(r30)
lbl_8038ED04:
/* 8038ED04 0038BC64  7C 03 38 00 */	cmpw r3, r7
/* 8038ED08 0038BC68  40 80 00 10 */	bge lbl_8038ED18
/* 8038ED0C 0038BC6C  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8038ED10 0038BC70  7C 03 00 00 */	cmpw r3, r0
/* 8038ED14 0038BC74  41 80 FF E4 */	blt lbl_8038ECF8
lbl_8038ED18:
/* 8038ED18 0038BC78  7C 03 38 00 */	cmpw r3, r7
/* 8038ED1C 0038BC7C  7C 63 38 50 */	subf r3, r3, r7
/* 8038ED20 0038BC80  38 80 00 30 */	li r4, 0x30
/* 8038ED24 0038BC84  40 80 00 48 */	bge lbl_8038ED6C
/* 8038ED28 0038BC88  54 60 E8 FF */	rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 8038ED2C 0038BC8C  7C 09 03 A6 */	mtctr r0
/* 8038ED30 0038BC90  41 82 00 30 */	beq lbl_8038ED60
lbl_8038ED34:
/* 8038ED34 0038BC94  98 9E FF FF */	stb r4, -1(r30)
/* 8038ED38 0038BC98  98 9E FF FE */	stb r4, -2(r30)
/* 8038ED3C 0038BC9C  98 9E FF FD */	stb r4, -3(r30)
/* 8038ED40 0038BCA0  98 9E FF FC */	stb r4, -4(r30)
/* 8038ED44 0038BCA4  98 9E FF FB */	stb r4, -5(r30)
/* 8038ED48 0038BCA8  98 9E FF FA */	stb r4, -6(r30)
/* 8038ED4C 0038BCAC  98 9E FF F9 */	stb r4, -7(r30)
/* 8038ED50 0038BCB0  9C 9E FF F8 */	stbu r4, -8(r30)
/* 8038ED54 0038BCB4  42 00 FF E0 */	bdnz lbl_8038ED34
/* 8038ED58 0038BCB8  70 63 00 07 */	andi. r3, r3, 7
/* 8038ED5C 0038BCBC  41 82 00 10 */	beq lbl_8038ED6C
lbl_8038ED60:
/* 8038ED60 0038BCC0  7C 69 03 A6 */	mtctr r3
lbl_8038ED64:
/* 8038ED64 0038BCC4  9C 9E FF FF */	stbu r4, -1(r30)
/* 8038ED68 0038BCC8  42 00 FF FC */	bdnz lbl_8038ED64
lbl_8038ED6C:
/* 8038ED6C 0038BCCC  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8038ED70 0038BCD0  2C 00 00 00 */	cmpwi r0, 0
/* 8038ED74 0038BCD4  40 82 00 10 */	bne lbl_8038ED84
/* 8038ED78 0038BCD8  88 1D 00 03 */	lbz r0, 3(r29)
/* 8038ED7C 0038BCDC  28 00 00 00 */	cmplwi r0, 0
/* 8038ED80 0038BCE0  41 82 00 0C */	beq lbl_8038ED8C
lbl_8038ED84:
/* 8038ED84 0038BCE4  38 00 00 2E */	li r0, 0x2e
/* 8038ED88 0038BCE8  9C 1E FF FF */	stbu r0, -1(r30)
lbl_8038ED8C:
/* 8038ED8C 0038BCEC  2C 06 00 00 */	cmpwi r6, 0
/* 8038ED90 0038BCF0  41 82 00 A0 */	beq lbl_8038EE30
/* 8038ED94 0038BCF4  38 80 00 00 */	li r4, 0
/* 8038ED98 0038BCF8  38 60 00 30 */	li r3, 0x30
/* 8038ED9C 0038BCFC  48 00 00 0C */	b lbl_8038EDA8
lbl_8038EDA0:
/* 8038EDA0 0038BD00  9C 7E FF FF */	stbu r3, -1(r30)
/* 8038EDA4 0038BD04  38 84 00 01 */	addi r4, r4, 1
lbl_8038EDA8:
/* 8038EDA8 0038BD08  88 01 00 10 */	lbz r0, 0x10(r1)
/* 8038EDAC 0038BD0C  7C 00 30 50 */	subf r0, r0, r6
/* 8038EDB0 0038BD10  7C 04 00 00 */	cmpw r4, r0
/* 8038EDB4 0038BD14  41 80 FF EC */	blt lbl_8038EDA0
/* 8038EDB8 0038BD18  7C 04 30 00 */	cmpw r4, r6
/* 8038EDBC 0038BD1C  7C 64 30 50 */	subf r3, r4, r6
/* 8038EDC0 0038BD20  40 80 00 78 */	bge lbl_8038EE38
/* 8038EDC4 0038BD24  54 60 E8 FF */	rlwinm. r0, r3, 0x1d, 3, 0x1f
/* 8038EDC8 0038BD28  7C 09 03 A6 */	mtctr r0
/* 8038EDCC 0038BD2C  41 82 00 50 */	beq lbl_8038EE1C
lbl_8038EDD0:
/* 8038EDD0 0038BD30  88 05 FF FF */	lbz r0, -1(r5)
/* 8038EDD4 0038BD34  98 1E FF FF */	stb r0, -1(r30)
/* 8038EDD8 0038BD38  88 05 FF FE */	lbz r0, -2(r5)
/* 8038EDDC 0038BD3C  98 1E FF FE */	stb r0, -2(r30)
/* 8038EDE0 0038BD40  88 05 FF FD */	lbz r0, -3(r5)
/* 8038EDE4 0038BD44  98 1E FF FD */	stb r0, -3(r30)
/* 8038EDE8 0038BD48  88 05 FF FC */	lbz r0, -4(r5)
/* 8038EDEC 0038BD4C  98 1E FF FC */	stb r0, -4(r30)
/* 8038EDF0 0038BD50  88 05 FF FB */	lbz r0, -5(r5)
/* 8038EDF4 0038BD54  98 1E FF FB */	stb r0, -5(r30)
/* 8038EDF8 0038BD58  88 05 FF FA */	lbz r0, -6(r5)
/* 8038EDFC 0038BD5C  98 1E FF FA */	stb r0, -6(r30)
/* 8038EE00 0038BD60  88 05 FF F9 */	lbz r0, -7(r5)
/* 8038EE04 0038BD64  98 1E FF F9 */	stb r0, -7(r30)
/* 8038EE08 0038BD68  8C 05 FF F8 */	lbzu r0, -8(r5)
/* 8038EE0C 0038BD6C  9C 1E FF F8 */	stbu r0, -8(r30)
/* 8038EE10 0038BD70  42 00 FF C0 */	bdnz lbl_8038EDD0
/* 8038EE14 0038BD74  70 63 00 07 */	andi. r3, r3, 7
/* 8038EE18 0038BD78  41 82 00 20 */	beq lbl_8038EE38
lbl_8038EE1C:
/* 8038EE1C 0038BD7C  7C 69 03 A6 */	mtctr r3
lbl_8038EE20:
/* 8038EE20 0038BD80  8C 05 FF FF */	lbzu r0, -1(r5)
/* 8038EE24 0038BD84  9C 1E FF FF */	stbu r0, -1(r30)
/* 8038EE28 0038BD88  42 00 FF F8 */	bdnz lbl_8038EE20
/* 8038EE2C 0038BD8C  48 00 00 0C */	b lbl_8038EE38
lbl_8038EE30:
/* 8038EE30 0038BD90  38 00 00 30 */	li r0, 0x30
/* 8038EE34 0038BD94  9C 1E FF FF */	stbu r0, -1(r30)
lbl_8038EE38:
/* 8038EE38 0038BD98  88 01 00 0C */	lbz r0, 0xc(r1)
/* 8038EE3C 0038BD9C  7C 00 07 75 */	extsb. r0, r0
/* 8038EE40 0038BDA0  41 82 00 10 */	beq lbl_8038EE50
/* 8038EE44 0038BDA4  38 00 00 2D */	li r0, 0x2d
/* 8038EE48 0038BDA8  9C 1E FF FF */	stbu r0, -1(r30)
/* 8038EE4C 0038BDAC  48 00 00 2C */	b lbl_8038EE78
lbl_8038EE50:
/* 8038EE50 0038BDB0  88 1D 00 01 */	lbz r0, 1(r29)
/* 8038EE54 0038BDB4  28 00 00 01 */	cmplwi r0, 1
/* 8038EE58 0038BDB8  40 82 00 10 */	bne lbl_8038EE68
/* 8038EE5C 0038BDBC  38 00 00 2B */	li r0, 0x2b
/* 8038EE60 0038BDC0  9C 1E FF FF */	stbu r0, -1(r30)
/* 8038EE64 0038BDC4  48 00 00 14 */	b lbl_8038EE78
lbl_8038EE68:
/* 8038EE68 0038BDC8  28 00 00 02 */	cmplwi r0, 2
/* 8038EE6C 0038BDCC  40 82 00 0C */	bne lbl_8038EE78
/* 8038EE70 0038BDD0  38 00 00 20 */	li r0, 0x20
/* 8038EE74 0038BDD4  9C 1E FF FF */	stbu r0, -1(r30)
lbl_8038EE78:
/* 8038EE78 0038BDD8  7F C3 F3 78 */	mr r3, r30
lbl_8038EE7C:
/* 8038EE7C 0038BDDC  80 01 00 54 */	lwz r0, 0x54(r1)
/* 8038EE80 0038BDE0  CB E1 00 48 */	lfd f31, 0x48(r1)
/* 8038EE84 0038BDE4  83 E1 00 44 */	lwz r31, 0x44(r1)
/* 8038EE88 0038BDE8  83 C1 00 40 */	lwz r30, 0x40(r1)
/* 8038EE8C 0038BDEC  83 A1 00 3C */	lwz r29, 0x3c(r1)
/* 8038EE90 0038BDF0  83 81 00 38 */	lwz r28, 0x38(r1)
/* 8038EE94 0038BDF4  7C 08 03 A6 */	mtlr r0
/* 8038EE98 0038BDF8  38 21 00 50 */	addi r1, r1, 0x50
/* 8038EE9C 0038BDFC  4E 80 00 20 */	blr 

.global round_decimal
round_decimal:
/* 8038EEA0 0038BE00  2C 04 00 00 */	cmpwi r4, 0
/* 8038EEA4 0038BE04  40 80 00 20 */	bge lbl_8038EEC4
lbl_8038EEA8:
/* 8038EEA8 0038BE08  38 00 00 00 */	li r0, 0
/* 8038EEAC 0038BE0C  38 80 00 01 */	li r4, 1
/* 8038EEB0 0038BE10  B0 03 00 02 */	sth r0, 2(r3)
/* 8038EEB4 0038BE14  38 00 00 30 */	li r0, 0x30
/* 8038EEB8 0038BE18  98 83 00 04 */	stb r4, 4(r3)
/* 8038EEBC 0038BE1C  98 03 00 05 */	stb r0, 5(r3)
/* 8038EEC0 0038BE20  4E 80 00 20 */	blr 
lbl_8038EEC4:
/* 8038EEC4 0038BE24  88 E3 00 04 */	lbz r7, 4(r3)
/* 8038EEC8 0038BE28  7C 04 38 00 */	cmpw r4, r7
/* 8038EECC 0038BE2C  4C 80 00 20 */	bgelr 
/* 8038EED0 0038BE30  7C C3 22 14 */	add r6, r3, r4
/* 8038EED4 0038BE34  88 A6 00 05 */	lbz r5, 5(r6)
/* 8038EED8 0038BE38  39 06 00 05 */	addi r8, r6, 5
/* 8038EEDC 0038BE3C  38 05 FF D0 */	addi r0, r5, -48
/* 8038EEE0 0038BE40  7C 06 07 74 */	extsb r6, r0
/* 8038EEE4 0038BE44  2C 06 00 05 */	cmpwi r6, 5
/* 8038EEE8 0038BE48  40 82 00 40 */	bne lbl_8038EF28
/* 8038EEEC 0038BE4C  7C A3 3A 14 */	add r5, r3, r7
/* 8038EEF0 0038BE50  38 A5 00 05 */	addi r5, r5, 5
lbl_8038EEF4:
/* 8038EEF4 0038BE54  38 A5 FF FF */	addi r5, r5, -1
/* 8038EEF8 0038BE58  7C 05 40 40 */	cmplw r5, r8
/* 8038EEFC 0038BE5C  40 81 00 10 */	ble lbl_8038EF0C
/* 8038EF00 0038BE60  88 05 00 00 */	lbz r0, 0(r5)
/* 8038EF04 0038BE64  2C 00 00 30 */	cmpwi r0, 0x30
/* 8038EF08 0038BE68  41 82 FF EC */	beq lbl_8038EEF4
lbl_8038EF0C:
/* 8038EF0C 0038BE6C  7C 05 40 40 */	cmplw r5, r8
/* 8038EF10 0038BE70  40 82 00 10 */	bne lbl_8038EF20
/* 8038EF14 0038BE74  88 08 FF FF */	lbz r0, -1(r8)
/* 8038EF18 0038BE78  54 05 07 FE */	clrlwi r5, r0, 0x1f
/* 8038EF1C 0038BE7C  48 00 00 6C */	b lbl_8038EF88
lbl_8038EF20:
/* 8038EF20 0038BE80  38 A0 00 01 */	li r5, 1
/* 8038EF24 0038BE84  48 00 00 64 */	b lbl_8038EF88
lbl_8038EF28:
/* 8038EF28 0038BE88  38 00 00 05 */	li r0, 5
/* 8038EF2C 0038BE8C  7C C0 02 78 */	xor r0, r6, r0
/* 8038EF30 0038BE90  7C 05 0E 70 */	srawi r5, r0, 1
/* 8038EF34 0038BE94  7C 00 30 38 */	and r0, r0, r6
/* 8038EF38 0038BE98  7C 00 28 50 */	subf r0, r0, r5
/* 8038EF3C 0038BE9C  54 05 0F FE */	srwi r5, r0, 0x1f
/* 8038EF40 0038BEA0  48 00 00 48 */	b lbl_8038EF88
lbl_8038EF44:
/* 8038EF44 0038BEA4  8C 08 FF FF */	lbzu r0, -1(r8)
/* 8038EF48 0038BEA8  7C A0 2A 14 */	add r5, r0, r5
/* 8038EF4C 0038BEAC  38 05 FF D0 */	addi r0, r5, -48
/* 8038EF50 0038BEB0  7C 07 07 74 */	extsb r7, r0
/* 8038EF54 0038BEB4  7C E0 32 78 */	xor r0, r7, r6
/* 8038EF58 0038BEB8  7C 05 0E 70 */	srawi r5, r0, 1
/* 8038EF5C 0038BEBC  7C 00 38 38 */	and r0, r0, r7
/* 8038EF60 0038BEC0  7C 00 28 50 */	subf r0, r0, r5
/* 8038EF64 0038BEC4  54 05 0F FF */	rlwinm. r5, r0, 1, 0x1f, 0x1f
/* 8038EF68 0038BEC8  40 82 00 0C */	bne lbl_8038EF74
/* 8038EF6C 0038BECC  7C E0 07 75 */	extsb. r0, r7
/* 8038EF70 0038BED0  40 82 00 0C */	bne lbl_8038EF7C
lbl_8038EF74:
/* 8038EF74 0038BED4  38 84 FF FF */	addi r4, r4, -1
/* 8038EF78 0038BED8  48 00 00 14 */	b lbl_8038EF8C
lbl_8038EF7C:
/* 8038EF7C 0038BEDC  38 07 00 30 */	addi r0, r7, 0x30
/* 8038EF80 0038BEE0  98 08 00 00 */	stb r0, 0(r8)
/* 8038EF84 0038BEE4  48 00 00 10 */	b lbl_8038EF94
lbl_8038EF88:
/* 8038EF88 0038BEE8  38 C0 00 09 */	li r6, 9
lbl_8038EF8C:
/* 8038EF8C 0038BEEC  2C 04 00 00 */	cmpwi r4, 0
/* 8038EF90 0038BEF0  40 82 FF B4 */	bne lbl_8038EF44
lbl_8038EF94:
/* 8038EF94 0038BEF4  2C 05 00 00 */	cmpwi r5, 0
/* 8038EF98 0038BEF8  41 82 00 24 */	beq lbl_8038EFBC
/* 8038EF9C 0038BEFC  A8 A3 00 02 */	lha r5, 2(r3)
/* 8038EFA0 0038BF00  38 80 00 01 */	li r4, 1
/* 8038EFA4 0038BF04  38 00 00 31 */	li r0, 0x31
/* 8038EFA8 0038BF08  38 A5 00 01 */	addi r5, r5, 1
/* 8038EFAC 0038BF0C  B0 A3 00 02 */	sth r5, 2(r3)
/* 8038EFB0 0038BF10  98 83 00 04 */	stb r4, 4(r3)
/* 8038EFB4 0038BF14  98 03 00 05 */	stb r0, 5(r3)
/* 8038EFB8 0038BF18  4E 80 00 20 */	blr 
lbl_8038EFBC:
/* 8038EFBC 0038BF1C  2C 04 00 00 */	cmpwi r4, 0
/* 8038EFC0 0038BF20  41 82 FE E8 */	beq lbl_8038EEA8
/* 8038EFC4 0038BF24  98 83 00 04 */	stb r4, 4(r3)
/* 8038EFC8 0038BF28  4E 80 00 20 */	blr 

.global double2hex
double2hex:
/* 8038EFCC 0038BF2C  94 21 FF 80 */	stwu r1, -0x80(r1)
/* 8038EFD0 0038BF30  7C 08 02 A6 */	mflr r0
/* 8038EFD4 0038BF34  90 01 00 84 */	stw r0, 0x84(r1)
/* 8038EFD8 0038BF38  93 E1 00 7C */	stw r31, 0x7c(r1)
/* 8038EFDC 0038BF3C  7C 9F 23 78 */	mr r31, r4
/* 8038EFE0 0038BF40  93 C1 00 78 */	stw r30, 0x78(r1)
/* 8038EFE4 0038BF44  7C 7E 1B 78 */	mr r30, r3
/* 8038EFE8 0038BF48  80 04 00 0C */	lwz r0, 0xc(r4)
/* 8038EFEC 0038BF4C  D8 21 00 08 */	stfd f1, 8(r1)
/* 8038EFF0 0038BF50  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 8038EFF4 0038BF54  D8 21 00 18 */	stfd f1, 0x18(r1)
/* 8038EFF8 0038BF58  40 81 00 0C */	ble lbl_8038F004
/* 8038EFFC 0038BF5C  38 60 00 00 */	li r3, 0
/* 8038F000 0038BF60  48 00 02 EC */	b lbl_8038F2EC
lbl_8038F004:
/* 8038F004 0038BF64  38 60 00 00 */	li r3, 0
/* 8038F008 0038BF68  38 00 00 20 */	li r0, 0x20
/* 8038F00C 0038BF6C  98 61 00 10 */	stb r3, 0x10(r1)
/* 8038F010 0038BF70  38 61 00 10 */	addi r3, r1, 0x10
/* 8038F014 0038BF74  38 81 00 40 */	addi r4, r1, 0x40
/* 8038F018 0038BF78  B0 01 00 12 */	sth r0, 0x12(r1)
/* 8038F01C 0038BF7C  4B FF CA E9 */	bl __num2dec
/* 8038F020 0038BF80  88 01 00 45 */	lbz r0, 0x45(r1)
/* 8038F024 0038BF84  28 00 00 49 */	cmplwi r0, 0x49
/* 8038F028 0038BF88  40 82 00 94 */	bne lbl_8038F0BC
/* 8038F02C 0038BF8C  A8 01 00 18 */	lha r0, 0x18(r1)
/* 8038F030 0038BF90  54 00 04 21 */	rlwinm. r0, r0, 0, 0x10, 0x10
/* 8038F034 0038BF94  41 82 00 44 */	beq lbl_8038F078
/* 8038F038 0038BF98  88 1F 00 05 */	lbz r0, 5(r31)
/* 8038F03C 0038BF9C  3B DE FF FB */	addi r30, r30, -5
/* 8038F040 0038BFA0  28 00 00 41 */	cmplwi r0, 0x41
/* 8038F044 0038BFA4  40 82 00 1C */	bne lbl_8038F060
/* 8038F048 0038BFA8  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038F04C 0038BFAC  7F C3 F3 78 */	mr r3, r30
/* 8038F050 0038BFB0  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038F054 0038BFB4  38 84 00 01 */	addi r4, r4, 1
/* 8038F058 0038BFB8  48 00 10 B1 */	bl strcpy
/* 8038F05C 0038BFBC  48 00 00 58 */	b lbl_8038F0B4
lbl_8038F060:
/* 8038F060 0038BFC0  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038F064 0038BFC4  7F C3 F3 78 */	mr r3, r30
/* 8038F068 0038BFC8  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038F06C 0038BFCC  38 84 00 06 */	addi r4, r4, 6
/* 8038F070 0038BFD0  48 00 10 99 */	bl strcpy
/* 8038F074 0038BFD4  48 00 00 40 */	b lbl_8038F0B4
lbl_8038F078:
/* 8038F078 0038BFD8  88 1F 00 05 */	lbz r0, 5(r31)
/* 8038F07C 0038BFDC  3B DE FF FC */	addi r30, r30, -4
/* 8038F080 0038BFE0  28 00 00 41 */	cmplwi r0, 0x41
/* 8038F084 0038BFE4  40 82 00 1C */	bne lbl_8038F0A0
/* 8038F088 0038BFE8  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038F08C 0038BFEC  7F C3 F3 78 */	mr r3, r30
/* 8038F090 0038BFF0  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038F094 0038BFF4  38 84 00 0B */	addi r4, r4, 0xb
/* 8038F098 0038BFF8  48 00 10 71 */	bl strcpy
/* 8038F09C 0038BFFC  48 00 00 18 */	b lbl_8038F0B4
lbl_8038F0A0:
/* 8038F0A0 0038C000  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038F0A4 0038C004  7F C3 F3 78 */	mr r3, r30
/* 8038F0A8 0038C008  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038F0AC 0038C00C  38 84 00 0F */	addi r4, r4, 0xf
/* 8038F0B0 0038C010  48 00 10 59 */	bl strcpy
lbl_8038F0B4:
/* 8038F0B4 0038C014  7F C3 F3 78 */	mr r3, r30
/* 8038F0B8 0038C018  48 00 02 34 */	b lbl_8038F2EC
lbl_8038F0BC:
/* 8038F0BC 0038C01C  28 00 00 4E */	cmplwi r0, 0x4e
/* 8038F0C0 0038C020  40 82 00 94 */	bne lbl_8038F154
/* 8038F0C4 0038C024  88 01 00 08 */	lbz r0, 8(r1)
/* 8038F0C8 0038C028  54 00 06 31 */	rlwinm. r0, r0, 0, 0x18, 0x18
/* 8038F0CC 0038C02C  41 82 00 44 */	beq lbl_8038F110
/* 8038F0D0 0038C030  88 1F 00 05 */	lbz r0, 5(r31)
/* 8038F0D4 0038C034  3B DE FF FB */	addi r30, r30, -5
/* 8038F0D8 0038C038  28 00 00 41 */	cmplwi r0, 0x41
/* 8038F0DC 0038C03C  40 82 00 1C */	bne lbl_8038F0F8
/* 8038F0E0 0038C040  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038F0E4 0038C044  7F C3 F3 78 */	mr r3, r30
/* 8038F0E8 0038C048  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038F0EC 0038C04C  38 84 00 13 */	addi r4, r4, 0x13
/* 8038F0F0 0038C050  48 00 10 19 */	bl strcpy
/* 8038F0F4 0038C054  48 00 00 58 */	b lbl_8038F14C
lbl_8038F0F8:
/* 8038F0F8 0038C058  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038F0FC 0038C05C  7F C3 F3 78 */	mr r3, r30
/* 8038F100 0038C060  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038F104 0038C064  38 84 00 18 */	addi r4, r4, 0x18
/* 8038F108 0038C068  48 00 10 01 */	bl strcpy
/* 8038F10C 0038C06C  48 00 00 40 */	b lbl_8038F14C
lbl_8038F110:
/* 8038F110 0038C070  88 1F 00 05 */	lbz r0, 5(r31)
/* 8038F114 0038C074  3B DE FF FC */	addi r30, r30, -4
/* 8038F118 0038C078  28 00 00 41 */	cmplwi r0, 0x41
/* 8038F11C 0038C07C  40 82 00 1C */	bne lbl_8038F138
/* 8038F120 0038C080  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038F124 0038C084  7F C3 F3 78 */	mr r3, r30
/* 8038F128 0038C088  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038F12C 0038C08C  38 84 00 1D */	addi r4, r4, 0x1d
/* 8038F130 0038C090  48 00 0F D9 */	bl strcpy
/* 8038F134 0038C094  48 00 00 18 */	b lbl_8038F14C
lbl_8038F138:
/* 8038F138 0038C098  3C 80 80 3E */	lis r4, lbl_803D86C0@ha
/* 8038F13C 0038C09C  7F C3 F3 78 */	mr r3, r30
/* 8038F140 0038C0A0  38 84 86 C0 */	addi r4, r4, lbl_803D86C0@l
/* 8038F144 0038C0A4  38 84 00 21 */	addi r4, r4, 0x21
/* 8038F148 0038C0A8  48 00 0F C1 */	bl strcpy
lbl_8038F14C:
/* 8038F14C 0038C0AC  7F C3 F3 78 */	mr r3, r30
/* 8038F150 0038C0B0  48 00 01 9C */	b lbl_8038F2EC
lbl_8038F154:
/* 8038F154 0038C0B4  39 00 00 00 */	li r8, 0
/* 8038F158 0038C0B8  39 20 00 01 */	li r9, 1
/* 8038F15C 0038C0BC  A8 01 00 18 */	lha r0, 0x18(r1)
/* 8038F160 0038C0C0  38 E0 00 64 */	li r7, 0x64
/* 8038F164 0038C0C4  99 21 00 30 */	stb r9, 0x30(r1)
/* 8038F168 0038C0C8  7F C4 F3 78 */	mr r4, r30
/* 8038F16C 0038C0CC  54 00 E5 7E */	rlwinm r0, r0, 0x1c, 0x15, 0x1f
/* 8038F170 0038C0D0  38 A1 00 20 */	addi r5, r1, 0x20
/* 8038F174 0038C0D4  7C 03 07 34 */	extsh r3, r0
/* 8038F178 0038C0D8  99 21 00 31 */	stb r9, 0x31(r1)
/* 8038F17C 0038C0DC  38 63 FC 01 */	addi r3, r3, -1023
/* 8038F180 0038C0E0  99 01 00 32 */	stb r8, 0x32(r1)
/* 8038F184 0038C0E4  99 01 00 33 */	stb r8, 0x33(r1)
/* 8038F188 0038C0E8  80 C1 00 30 */	lwz r6, 0x30(r1)
/* 8038F18C 0038C0EC  99 01 00 34 */	stb r8, 0x34(r1)
/* 8038F190 0038C0F0  98 E1 00 35 */	stb r7, 0x35(r1)
/* 8038F194 0038C0F4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8038F198 0038C0F8  91 01 00 38 */	stw r8, 0x38(r1)
/* 8038F19C 0038C0FC  91 21 00 3C */	stw r9, 0x3c(r1)
/* 8038F1A0 0038C100  90 C1 00 20 */	stw r6, 0x20(r1)
/* 8038F1A4 0038C104  90 01 00 24 */	stw r0, 0x24(r1)
/* 8038F1A8 0038C108  91 01 00 28 */	stw r8, 0x28(r1)
/* 8038F1AC 0038C10C  91 21 00 2C */	stw r9, 0x2c(r1)
/* 8038F1B0 0038C110  48 00 04 31 */	bl long2str
/* 8038F1B4 0038C114  88 1F 00 05 */	lbz r0, 5(r31)
/* 8038F1B8 0038C118  28 00 00 61 */	cmplwi r0, 0x61
/* 8038F1BC 0038C11C  40 82 00 14 */	bne lbl_8038F1D0
/* 8038F1C0 0038C120  38 00 00 70 */	li r0, 0x70
/* 8038F1C4 0038C124  38 83 FF FF */	addi r4, r3, -1
/* 8038F1C8 0038C128  98 03 FF FF */	stb r0, -1(r3)
/* 8038F1CC 0038C12C  48 00 00 10 */	b lbl_8038F1DC
lbl_8038F1D0:
/* 8038F1D0 0038C130  38 00 00 50 */	li r0, 0x50
/* 8038F1D4 0038C134  38 83 FF FF */	addi r4, r3, -1
/* 8038F1D8 0038C138  98 03 FF FF */	stb r0, -1(r3)
lbl_8038F1DC:
/* 8038F1DC 0038C13C  81 1F 00 0C */	lwz r8, 0xc(r31)
/* 8038F1E0 0038C140  38 C1 00 08 */	addi r6, r1, 8
/* 8038F1E4 0038C144  7D 09 03 A6 */	mtctr r8
/* 8038F1E8 0038C148  2C 08 00 01 */	cmpwi r8, 1
/* 8038F1EC 0038C14C  41 80 00 6C */	blt lbl_8038F258
lbl_8038F1F0:
/* 8038F1F0 0038C150  55 05 0F FE */	srwi r5, r8, 0x1f
/* 8038F1F4 0038C154  55 00 07 FE */	clrlwi r0, r8, 0x1f
/* 8038F1F8 0038C158  7C 65 42 14 */	add r3, r5, r8
/* 8038F1FC 0038C15C  7C 63 0E 70 */	srawi r3, r3, 1
/* 8038F200 0038C160  7C 00 2A 78 */	xor r0, r0, r5
/* 8038F204 0038C164  38 63 00 01 */	addi r3, r3, 1
/* 8038F208 0038C168  7C E6 18 AE */	lbzx r7, r6, r3
/* 8038F20C 0038C16C  7C 05 00 51 */	subf. r0, r5, r0
/* 8038F210 0038C170  54 E0 E7 3E */	rlwinm r0, r7, 0x1c, 0x1c, 0x1f
/* 8038F214 0038C174  7C 03 07 74 */	extsb r3, r0
/* 8038F218 0038C178  41 82 00 08 */	beq lbl_8038F220
/* 8038F21C 0038C17C  54 E3 07 3E */	clrlwi r3, r7, 0x1c
lbl_8038F220:
/* 8038F220 0038C180  7C 60 07 74 */	extsb r0, r3
/* 8038F224 0038C184  2C 00 00 0A */	cmpwi r0, 0xa
/* 8038F228 0038C188  40 80 00 0C */	bge lbl_8038F234
/* 8038F22C 0038C18C  38 03 00 30 */	addi r0, r3, 0x30
/* 8038F230 0038C190  48 00 00 1C */	b lbl_8038F24C
lbl_8038F234:
/* 8038F234 0038C194  88 1F 00 05 */	lbz r0, 5(r31)
/* 8038F238 0038C198  28 00 00 61 */	cmplwi r0, 0x61
/* 8038F23C 0038C19C  40 82 00 0C */	bne lbl_8038F248
/* 8038F240 0038C1A0  38 03 00 57 */	addi r0, r3, 0x57
/* 8038F244 0038C1A4  48 00 00 08 */	b lbl_8038F24C
lbl_8038F248:
/* 8038F248 0038C1A8  38 03 00 37 */	addi r0, r3, 0x37
lbl_8038F24C:
/* 8038F24C 0038C1AC  9C 04 FF FF */	stbu r0, -1(r4)
/* 8038F250 0038C1B0  39 08 FF FF */	addi r8, r8, -1
/* 8038F254 0038C1B4  42 00 FF 9C */	bdnz lbl_8038F1F0
lbl_8038F258:
/* 8038F258 0038C1B8  80 1F 00 0C */	lwz r0, 0xc(r31)
/* 8038F25C 0038C1BC  2C 00 00 00 */	cmpwi r0, 0
/* 8038F260 0038C1C0  40 82 00 10 */	bne lbl_8038F270
/* 8038F264 0038C1C4  88 1F 00 03 */	lbz r0, 3(r31)
/* 8038F268 0038C1C8  28 00 00 00 */	cmplwi r0, 0
/* 8038F26C 0038C1CC  41 82 00 0C */	beq lbl_8038F278
lbl_8038F270:
/* 8038F270 0038C1D0  38 00 00 2E */	li r0, 0x2e
/* 8038F274 0038C1D4  9C 04 FF FF */	stbu r0, -1(r4)
lbl_8038F278:
/* 8038F278 0038C1D8  38 00 00 31 */	li r0, 0x31
/* 8038F27C 0038C1DC  98 04 FF FF */	stb r0, -1(r4)
/* 8038F280 0038C1E0  88 1F 00 05 */	lbz r0, 5(r31)
/* 8038F284 0038C1E4  28 00 00 61 */	cmplwi r0, 0x61
/* 8038F288 0038C1E8  40 82 00 10 */	bne lbl_8038F298
/* 8038F28C 0038C1EC  38 00 00 78 */	li r0, 0x78
/* 8038F290 0038C1F0  9C 04 FF FE */	stbu r0, -2(r4)
/* 8038F294 0038C1F4  48 00 00 0C */	b lbl_8038F2A0
lbl_8038F298:
/* 8038F298 0038C1F8  38 00 00 58 */	li r0, 0x58
/* 8038F29C 0038C1FC  9C 04 FF FE */	stbu r0, -2(r4)
lbl_8038F2A0:
/* 8038F2A0 0038C200  A8 01 00 18 */	lha r0, 0x18(r1)
/* 8038F2A4 0038C204  38 60 00 30 */	li r3, 0x30
/* 8038F2A8 0038C208  9C 64 FF FF */	stbu r3, -1(r4)
/* 8038F2AC 0038C20C  54 00 04 21 */	rlwinm. r0, r0, 0, 0x10, 0x10
/* 8038F2B0 0038C210  41 82 00 10 */	beq lbl_8038F2C0
/* 8038F2B4 0038C214  38 00 00 2D */	li r0, 0x2d
/* 8038F2B8 0038C218  9C 04 FF FF */	stbu r0, -1(r4)
/* 8038F2BC 0038C21C  48 00 00 2C */	b lbl_8038F2E8
lbl_8038F2C0:
/* 8038F2C0 0038C220  88 1F 00 01 */	lbz r0, 1(r31)
/* 8038F2C4 0038C224  28 00 00 01 */	cmplwi r0, 1
/* 8038F2C8 0038C228  40 82 00 10 */	bne lbl_8038F2D8
/* 8038F2CC 0038C22C  38 00 00 2B */	li r0, 0x2b
/* 8038F2D0 0038C230  9C 04 FF FF */	stbu r0, -1(r4)
/* 8038F2D4 0038C234  48 00 00 14 */	b lbl_8038F2E8
lbl_8038F2D8:
/* 8038F2D8 0038C238  28 00 00 02 */	cmplwi r0, 2
/* 8038F2DC 0038C23C  40 82 00 0C */	bne lbl_8038F2E8
/* 8038F2E0 0038C240  38 00 00 20 */	li r0, 0x20
/* 8038F2E4 0038C244  9C 04 FF FF */	stbu r0, -1(r4)
lbl_8038F2E8:
/* 8038F2E8 0038C248  7C 83 23 78 */	mr r3, r4
lbl_8038F2EC:
/* 8038F2EC 0038C24C  80 01 00 84 */	lwz r0, 0x84(r1)
/* 8038F2F0 0038C250  83 E1 00 7C */	lwz r31, 0x7c(r1)
/* 8038F2F4 0038C254  83 C1 00 78 */	lwz r30, 0x78(r1)
/* 8038F2F8 0038C258  7C 08 03 A6 */	mtlr r0
/* 8038F2FC 0038C25C  38 21 00 80 */	addi r1, r1, 0x80
/* 8038F300 0038C260  4E 80 00 20 */	blr 

.global longlong2str
longlong2str:
/* 8038F304 0038C264  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8038F308 0038C268  7C 08 02 A6 */	mflr r0
/* 8038F30C 0038C26C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8038F310 0038C270  38 00 00 00 */	li r0, 0
/* 8038F314 0038C274  BE C1 00 08 */	stmw r22, 8(r1)
/* 8038F318 0038C278  7C B7 2B 78 */	mr r23, r5
/* 8038F31C 0038C27C  7C 85 02 78 */	xor r5, r4, r0
/* 8038F320 0038C280  7C D8 33 78 */	mr r24, r6
/* 8038F324 0038C284  7C 9E 23 78 */	mr r30, r4
/* 8038F328 0038C288  7C 7F 1B 78 */	mr r31, r3
/* 8038F32C 0038C28C  3B 77 FF FF */	addi r27, r23, -1
/* 8038F330 0038C290  3B 20 00 00 */	li r25, 0
/* 8038F334 0038C294  3B 40 00 00 */	li r26, 0
/* 8038F338 0038C298  98 17 FF FF */	stb r0, -1(r23)
/* 8038F33C 0038C29C  7C 60 02 78 */	xor r0, r3, r0
/* 8038F340 0038C2A0  7C A0 03 79 */	or. r0, r5, r0
/* 8038F344 0038C2A4  40 82 00 30 */	bne lbl_8038F374
/* 8038F348 0038C2A8  80 18 00 0C */	lwz r0, 0xc(r24)
/* 8038F34C 0038C2AC  2C 00 00 00 */	cmpwi r0, 0
/* 8038F350 0038C2B0  40 82 00 24 */	bne lbl_8038F374
/* 8038F354 0038C2B4  88 18 00 03 */	lbz r0, 3(r24)
/* 8038F358 0038C2B8  28 00 00 00 */	cmplwi r0, 0
/* 8038F35C 0038C2BC  41 82 00 10 */	beq lbl_8038F36C
/* 8038F360 0038C2C0  88 18 00 05 */	lbz r0, 5(r24)
/* 8038F364 0038C2C4  28 00 00 6F */	cmplwi r0, 0x6f
/* 8038F368 0038C2C8  41 82 00 0C */	beq lbl_8038F374
lbl_8038F36C:
/* 8038F36C 0038C2CC  7F 63 DB 78 */	mr r3, r27
/* 8038F370 0038C2D0  48 00 02 5C */	b lbl_8038F5CC
lbl_8038F374:
/* 8038F374 0038C2D4  88 B8 00 05 */	lbz r5, 5(r24)
/* 8038F378 0038C2D8  38 05 FF A8 */	addi r0, r5, -88
/* 8038F37C 0038C2DC  28 00 00 20 */	cmplwi r0, 0x20
/* 8038F380 0038C2E0  41 81 00 8C */	bgt lbl_8038F40C
/* 8038F384 0038C2E4  3C A0 80 3F */	lis r5, lbl_803F2D58@ha
/* 8038F388 0038C2E8  54 00 10 3A */	slwi r0, r0, 2
/* 8038F38C 0038C2EC  38 A5 2D 58 */	addi r5, r5, lbl_803F2D58@l
/* 8038F390 0038C2F0  7C 05 00 2E */	lwzx r0, r5, r0
/* 8038F394 0038C2F4  7C 09 03 A6 */	mtctr r0
/* 8038F398 0038C2F8  4E 80 04 20 */	bctr 
/* 8038F39C 0038C2FC  38 00 00 00 */	li r0, 0
/* 8038F3A0 0038C300  6C 65 80 00 */	xoris r5, r3, 0x8000
/* 8038F3A4 0038C304  6C 03 80 00 */	xoris r3, r0, 0x8000
/* 8038F3A8 0038C308  3B 80 00 0A */	li r28, 0xa
/* 8038F3AC 0038C30C  7C 00 20 10 */	subfc r0, r0, r4
/* 8038F3B0 0038C310  3B A0 00 00 */	li r29, 0
/* 8038F3B4 0038C314  7C 63 29 10 */	subfe r3, r3, r5
/* 8038F3B8 0038C318  7C 65 29 10 */	subfe r3, r5, r5
/* 8038F3BC 0038C31C  7C 63 00 D1 */	neg. r3, r3
/* 8038F3C0 0038C320  41 82 00 4C */	beq lbl_8038F40C
/* 8038F3C4 0038C324  23 DE 00 00 */	subfic r30, r30, 0
/* 8038F3C8 0038C328  3B 20 00 01 */	li r25, 1
/* 8038F3CC 0038C32C  7F FF 01 90 */	subfze r31, r31
/* 8038F3D0 0038C330  48 00 00 3C */	b lbl_8038F40C
/* 8038F3D4 0038C334  38 00 00 00 */	li r0, 0
/* 8038F3D8 0038C338  3B 80 00 08 */	li r28, 8
/* 8038F3DC 0038C33C  98 18 00 01 */	stb r0, 1(r24)
/* 8038F3E0 0038C340  3B A0 00 00 */	li r29, 0
/* 8038F3E4 0038C344  48 00 00 28 */	b lbl_8038F40C
/* 8038F3E8 0038C348  38 00 00 00 */	li r0, 0
/* 8038F3EC 0038C34C  3B 80 00 0A */	li r28, 0xa
/* 8038F3F0 0038C350  98 18 00 01 */	stb r0, 1(r24)
/* 8038F3F4 0038C354  3B A0 00 00 */	li r29, 0
/* 8038F3F8 0038C358  48 00 00 14 */	b lbl_8038F40C
/* 8038F3FC 0038C35C  38 00 00 00 */	li r0, 0
/* 8038F400 0038C360  3B 80 00 10 */	li r28, 0x10
/* 8038F404 0038C364  98 18 00 01 */	stb r0, 1(r24)
/* 8038F408 0038C368  3B A0 00 00 */	li r29, 0
lbl_8038F40C:
/* 8038F40C 0038C36C  7F E3 FB 78 */	mr r3, r31
/* 8038F410 0038C370  7F C4 F3 78 */	mr r4, r30
/* 8038F414 0038C374  7F A5 EB 78 */	mr r5, r29
/* 8038F418 0038C378  7F 86 E3 78 */	mr r6, r28
/* 8038F41C 0038C37C  4B FF A8 E9 */	bl __mod2u
/* 8038F420 0038C380  7C 96 23 78 */	mr r22, r4
/* 8038F424 0038C384  7F E3 FB 78 */	mr r3, r31
/* 8038F428 0038C388  7F C4 F3 78 */	mr r4, r30
/* 8038F42C 0038C38C  7F A5 EB 78 */	mr r5, r29
/* 8038F430 0038C390  7F 86 E3 78 */	mr r6, r28
/* 8038F434 0038C394  4B FF A6 AD */	bl __div2u
/* 8038F438 0038C398  2C 16 00 0A */	cmpwi r22, 0xa
/* 8038F43C 0038C39C  7C 9E 23 78 */	mr r30, r4
/* 8038F440 0038C3A0  7C 7F 1B 78 */	mr r31, r3
/* 8038F444 0038C3A4  40 80 00 0C */	bge lbl_8038F450
/* 8038F448 0038C3A8  38 16 00 30 */	addi r0, r22, 0x30
/* 8038F44C 0038C3AC  48 00 00 1C */	b lbl_8038F468
lbl_8038F450:
/* 8038F450 0038C3B0  88 18 00 05 */	lbz r0, 5(r24)
/* 8038F454 0038C3B4  28 00 00 78 */	cmplwi r0, 0x78
/* 8038F458 0038C3B8  40 82 00 0C */	bne lbl_8038F464
/* 8038F45C 0038C3BC  38 16 00 57 */	addi r0, r22, 0x57
/* 8038F460 0038C3C0  48 00 00 08 */	b lbl_8038F468
lbl_8038F464:
/* 8038F464 0038C3C4  38 16 00 37 */	addi r0, r22, 0x37
lbl_8038F468:
/* 8038F468 0038C3C8  38 80 00 00 */	li r4, 0
/* 8038F46C 0038C3CC  9C 1B FF FF */	stbu r0, -1(r27)
/* 8038F470 0038C3D0  7F C3 22 78 */	xor r3, r30, r4
/* 8038F474 0038C3D4  3B 5A 00 01 */	addi r26, r26, 1
/* 8038F478 0038C3D8  7F E0 22 78 */	xor r0, r31, r4
/* 8038F47C 0038C3DC  7C 60 03 79 */	or. r0, r3, r0
/* 8038F480 0038C3E0  40 82 FF 8C */	bne lbl_8038F40C
/* 8038F484 0038C3E4  38 60 00 08 */	li r3, 8
/* 8038F488 0038C3E8  7F A0 22 78 */	xor r0, r29, r4
/* 8038F48C 0038C3EC  7F 83 1A 78 */	xor r3, r28, r3
/* 8038F490 0038C3F0  7C 60 03 79 */	or. r0, r3, r0
/* 8038F494 0038C3F4  40 82 00 28 */	bne lbl_8038F4BC
/* 8038F498 0038C3F8  88 18 00 03 */	lbz r0, 3(r24)
/* 8038F49C 0038C3FC  28 00 00 00 */	cmplwi r0, 0
/* 8038F4A0 0038C400  41 82 00 1C */	beq lbl_8038F4BC
/* 8038F4A4 0038C404  88 1B 00 00 */	lbz r0, 0(r27)
/* 8038F4A8 0038C408  2C 00 00 30 */	cmpwi r0, 0x30
/* 8038F4AC 0038C40C  41 82 00 10 */	beq lbl_8038F4BC
/* 8038F4B0 0038C410  38 00 00 30 */	li r0, 0x30
/* 8038F4B4 0038C414  3B 5A 00 01 */	addi r26, r26, 1
/* 8038F4B8 0038C418  9C 1B FF FF */	stbu r0, -1(r27)
lbl_8038F4BC:
/* 8038F4BC 0038C41C  88 18 00 00 */	lbz r0, 0(r24)
/* 8038F4C0 0038C420  28 00 00 02 */	cmplwi r0, 2
/* 8038F4C4 0038C424  40 82 00 5C */	bne lbl_8038F520
/* 8038F4C8 0038C428  80 18 00 08 */	lwz r0, 8(r24)
/* 8038F4CC 0038C42C  2C 19 00 00 */	cmpwi r25, 0
/* 8038F4D0 0038C430  90 18 00 0C */	stw r0, 0xc(r24)
/* 8038F4D4 0038C434  40 82 00 10 */	bne lbl_8038F4E4
/* 8038F4D8 0038C438  88 18 00 01 */	lbz r0, 1(r24)
/* 8038F4DC 0038C43C  28 00 00 00 */	cmplwi r0, 0
/* 8038F4E0 0038C440  41 82 00 10 */	beq lbl_8038F4F0
lbl_8038F4E4:
/* 8038F4E4 0038C444  80 78 00 0C */	lwz r3, 0xc(r24)
/* 8038F4E8 0038C448  38 03 FF FF */	addi r0, r3, -1
/* 8038F4EC 0038C44C  90 18 00 0C */	stw r0, 0xc(r24)
lbl_8038F4F0:
/* 8038F4F0 0038C450  38 60 00 10 */	li r3, 0x10
/* 8038F4F4 0038C454  38 00 00 00 */	li r0, 0
/* 8038F4F8 0038C458  7F 83 1A 78 */	xor r3, r28, r3
/* 8038F4FC 0038C45C  7F A0 02 78 */	xor r0, r29, r0
/* 8038F500 0038C460  7C 60 03 79 */	or. r0, r3, r0
/* 8038F504 0038C464  40 82 00 1C */	bne lbl_8038F520
/* 8038F508 0038C468  88 18 00 03 */	lbz r0, 3(r24)
/* 8038F50C 0038C46C  28 00 00 00 */	cmplwi r0, 0
/* 8038F510 0038C470  41 82 00 10 */	beq lbl_8038F520
/* 8038F514 0038C474  80 78 00 0C */	lwz r3, 0xc(r24)
/* 8038F518 0038C478  38 03 FF FE */	addi r0, r3, -2
/* 8038F51C 0038C47C  90 18 00 0C */	stw r0, 0xc(r24)
lbl_8038F520:
/* 8038F520 0038C480  80 78 00 0C */	lwz r3, 0xc(r24)
/* 8038F524 0038C484  7C 1B B8 50 */	subf r0, r27, r23
/* 8038F528 0038C488  7C 03 02 14 */	add r0, r3, r0
/* 8038F52C 0038C48C  2C 00 01 FD */	cmpwi r0, 0x1fd
/* 8038F530 0038C490  40 81 00 0C */	ble lbl_8038F53C
/* 8038F534 0038C494  38 60 00 00 */	li r3, 0
/* 8038F538 0038C498  48 00 00 94 */	b lbl_8038F5CC
lbl_8038F53C:
/* 8038F53C 0038C49C  38 60 00 30 */	li r3, 0x30
/* 8038F540 0038C4A0  48 00 00 0C */	b lbl_8038F54C
lbl_8038F544:
/* 8038F544 0038C4A4  9C 7B FF FF */	stbu r3, -1(r27)
/* 8038F548 0038C4A8  3B 5A 00 01 */	addi r26, r26, 1
lbl_8038F54C:
/* 8038F54C 0038C4AC  80 18 00 0C */	lwz r0, 0xc(r24)
/* 8038F550 0038C4B0  7C 1A 00 00 */	cmpw r26, r0
/* 8038F554 0038C4B4  41 80 FF F0 */	blt lbl_8038F544
/* 8038F558 0038C4B8  38 60 00 10 */	li r3, 0x10
/* 8038F55C 0038C4BC  38 00 00 00 */	li r0, 0
/* 8038F560 0038C4C0  7F 83 1A 78 */	xor r3, r28, r3
/* 8038F564 0038C4C4  7F A0 02 78 */	xor r0, r29, r0
/* 8038F568 0038C4C8  7C 60 03 79 */	or. r0, r3, r0
/* 8038F56C 0038C4CC  40 82 00 20 */	bne lbl_8038F58C
/* 8038F570 0038C4D0  88 18 00 03 */	lbz r0, 3(r24)
/* 8038F574 0038C4D4  28 00 00 00 */	cmplwi r0, 0
/* 8038F578 0038C4D8  41 82 00 14 */	beq lbl_8038F58C
/* 8038F57C 0038C4DC  88 78 00 05 */	lbz r3, 5(r24)
/* 8038F580 0038C4E0  38 00 00 30 */	li r0, 0x30
/* 8038F584 0038C4E4  98 7B FF FF */	stb r3, -1(r27)
/* 8038F588 0038C4E8  9C 1B FF FE */	stbu r0, -2(r27)
lbl_8038F58C:
/* 8038F58C 0038C4EC  2C 19 00 00 */	cmpwi r25, 0
/* 8038F590 0038C4F0  41 82 00 10 */	beq lbl_8038F5A0
/* 8038F594 0038C4F4  38 00 00 2D */	li r0, 0x2d
/* 8038F598 0038C4F8  9C 1B FF FF */	stbu r0, -1(r27)
/* 8038F59C 0038C4FC  48 00 00 2C */	b lbl_8038F5C8
lbl_8038F5A0:
/* 8038F5A0 0038C500  88 18 00 01 */	lbz r0, 1(r24)
/* 8038F5A4 0038C504  28 00 00 01 */	cmplwi r0, 1
/* 8038F5A8 0038C508  40 82 00 10 */	bne lbl_8038F5B8
/* 8038F5AC 0038C50C  38 00 00 2B */	li r0, 0x2b
/* 8038F5B0 0038C510  9C 1B FF FF */	stbu r0, -1(r27)
/* 8038F5B4 0038C514  48 00 00 14 */	b lbl_8038F5C8
lbl_8038F5B8:
/* 8038F5B8 0038C518  28 00 00 02 */	cmplwi r0, 2
/* 8038F5BC 0038C51C  40 82 00 0C */	bne lbl_8038F5C8
/* 8038F5C0 0038C520  38 00 00 20 */	li r0, 0x20
/* 8038F5C4 0038C524  9C 1B FF FF */	stbu r0, -1(r27)
lbl_8038F5C8:
/* 8038F5C8 0038C528  7F 63 DB 78 */	mr r3, r27
lbl_8038F5CC:
/* 8038F5CC 0038C52C  BA C1 00 08 */	lmw r22, 8(r1)
/* 8038F5D0 0038C530  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8038F5D4 0038C534  7C 08 03 A6 */	mtlr r0
/* 8038F5D8 0038C538  38 21 00 30 */	addi r1, r1, 0x30
/* 8038F5DC 0038C53C  4E 80 00 20 */	blr 

.global long2str
long2str:
/* 8038F5E0 0038C540  38 C0 00 00 */	li r6, 0
/* 8038F5E4 0038C544  2C 03 00 00 */	cmpwi r3, 0
/* 8038F5E8 0038C548  98 C4 FF FF */	stb r6, -1(r4)
/* 8038F5EC 0038C54C  38 C4 FF FF */	addi r6, r4, -1
/* 8038F5F0 0038C550  39 00 00 00 */	li r8, 0
/* 8038F5F4 0038C554  38 E0 00 00 */	li r7, 0
/* 8038F5F8 0038C558  40 82 00 30 */	bne lbl_8038F628
/* 8038F5FC 0038C55C  81 25 00 0C */	lwz r9, 0xc(r5)
/* 8038F600 0038C560  2C 09 00 00 */	cmpwi r9, 0
/* 8038F604 0038C564  40 82 00 24 */	bne lbl_8038F628
/* 8038F608 0038C568  89 25 00 03 */	lbz r9, 3(r5)
/* 8038F60C 0038C56C  28 09 00 00 */	cmplwi r9, 0
/* 8038F610 0038C570  41 82 00 10 */	beq lbl_8038F620
/* 8038F614 0038C574  89 25 00 05 */	lbz r9, 5(r5)
/* 8038F618 0038C578  28 09 00 6F */	cmplwi r9, 0x6f
/* 8038F61C 0038C57C  41 82 00 0C */	beq lbl_8038F628
lbl_8038F620:
/* 8038F620 0038C580  7C C3 33 78 */	mr r3, r6
/* 8038F624 0038C584  4E 80 00 20 */	blr 
lbl_8038F628:
/* 8038F628 0038C588  89 25 00 05 */	lbz r9, 5(r5)
/* 8038F62C 0038C58C  39 49 FF A8 */	addi r10, r9, -88
/* 8038F630 0038C590  28 0A 00 20 */	cmplwi r10, 0x20
/* 8038F634 0038C594  41 81 00 60 */	bgt lbl_8038F694
/* 8038F638 0038C598  3D 20 80 3F */	lis r9, lbl_803F2DDC@ha
/* 8038F63C 0038C59C  55 4A 10 3A */	slwi r10, r10, 2
/* 8038F640 0038C5A0  39 29 2D DC */	addi r9, r9, lbl_803F2DDC@l
/* 8038F644 0038C5A4  7D 29 50 2E */	lwzx r9, r9, r10
/* 8038F648 0038C5A8  7D 29 03 A6 */	mtctr r9
/* 8038F64C 0038C5AC  4E 80 04 20 */	bctr 
/* 8038F650 0038C5B0  2C 03 00 00 */	cmpwi r3, 0
/* 8038F654 0038C5B4  38 00 00 0A */	li r0, 0xa
/* 8038F658 0038C5B8  40 80 00 3C */	bge lbl_8038F694
/* 8038F65C 0038C5BC  7C 63 00 D0 */	neg r3, r3
/* 8038F660 0038C5C0  39 00 00 01 */	li r8, 1
/* 8038F664 0038C5C4  48 00 00 30 */	b lbl_8038F694
/* 8038F668 0038C5C8  39 20 00 00 */	li r9, 0
/* 8038F66C 0038C5CC  38 00 00 08 */	li r0, 8
/* 8038F670 0038C5D0  99 25 00 01 */	stb r9, 1(r5)
/* 8038F674 0038C5D4  48 00 00 20 */	b lbl_8038F694
/* 8038F678 0038C5D8  39 20 00 00 */	li r9, 0
/* 8038F67C 0038C5DC  38 00 00 0A */	li r0, 0xa
/* 8038F680 0038C5E0  99 25 00 01 */	stb r9, 1(r5)
/* 8038F684 0038C5E4  48 00 00 10 */	b lbl_8038F694
/* 8038F688 0038C5E8  39 20 00 00 */	li r9, 0
/* 8038F68C 0038C5EC  38 00 00 10 */	li r0, 0x10
/* 8038F690 0038C5F0  99 25 00 01 */	stb r9, 1(r5)
lbl_8038F694:
/* 8038F694 0038C5F4  7D 23 03 96 */	divwu r9, r3, r0
/* 8038F698 0038C5F8  7D 29 01 D6 */	mullw r9, r9, r0
/* 8038F69C 0038C5FC  7D 49 18 50 */	subf r10, r9, r3
/* 8038F6A0 0038C600  7C 63 03 96 */	divwu r3, r3, r0
/* 8038F6A4 0038C604  2C 0A 00 0A */	cmpwi r10, 0xa
/* 8038F6A8 0038C608  40 80 00 0C */	bge lbl_8038F6B4
/* 8038F6AC 0038C60C  39 4A 00 30 */	addi r10, r10, 0x30
/* 8038F6B0 0038C610  48 00 00 1C */	b lbl_8038F6CC
lbl_8038F6B4:
/* 8038F6B4 0038C614  89 25 00 05 */	lbz r9, 5(r5)
/* 8038F6B8 0038C618  28 09 00 78 */	cmplwi r9, 0x78
/* 8038F6BC 0038C61C  40 82 00 0C */	bne lbl_8038F6C8
/* 8038F6C0 0038C620  39 4A 00 57 */	addi r10, r10, 0x57
/* 8038F6C4 0038C624  48 00 00 08 */	b lbl_8038F6CC
lbl_8038F6C8:
/* 8038F6C8 0038C628  39 4A 00 37 */	addi r10, r10, 0x37
lbl_8038F6CC:
/* 8038F6CC 0038C62C  28 03 00 00 */	cmplwi r3, 0
/* 8038F6D0 0038C630  99 46 FF FF */	stb r10, -1(r6)
/* 8038F6D4 0038C634  38 C6 FF FF */	addi r6, r6, -1
/* 8038F6D8 0038C638  38 E7 00 01 */	addi r7, r7, 1
/* 8038F6DC 0038C63C  40 82 FF B8 */	bne lbl_8038F694
/* 8038F6E0 0038C640  28 00 00 08 */	cmplwi r0, 8
/* 8038F6E4 0038C644  40 82 00 28 */	bne lbl_8038F70C
/* 8038F6E8 0038C648  88 65 00 03 */	lbz r3, 3(r5)
/* 8038F6EC 0038C64C  28 03 00 00 */	cmplwi r3, 0
/* 8038F6F0 0038C650  41 82 00 1C */	beq lbl_8038F70C
/* 8038F6F4 0038C654  88 66 00 00 */	lbz r3, 0(r6)
/* 8038F6F8 0038C658  2C 03 00 30 */	cmpwi r3, 0x30
/* 8038F6FC 0038C65C  41 82 00 10 */	beq lbl_8038F70C
/* 8038F700 0038C660  38 60 00 30 */	li r3, 0x30
/* 8038F704 0038C664  38 E7 00 01 */	addi r7, r7, 1
/* 8038F708 0038C668  9C 66 FF FF */	stbu r3, -1(r6)
lbl_8038F70C:
/* 8038F70C 0038C66C  88 65 00 00 */	lbz r3, 0(r5)
/* 8038F710 0038C670  28 03 00 02 */	cmplwi r3, 2
/* 8038F714 0038C674  40 82 00 4C */	bne lbl_8038F760
/* 8038F718 0038C678  80 65 00 08 */	lwz r3, 8(r5)
/* 8038F71C 0038C67C  2C 08 00 00 */	cmpwi r8, 0
/* 8038F720 0038C680  90 65 00 0C */	stw r3, 0xc(r5)
/* 8038F724 0038C684  40 82 00 10 */	bne lbl_8038F734
/* 8038F728 0038C688  88 65 00 01 */	lbz r3, 1(r5)
/* 8038F72C 0038C68C  28 03 00 00 */	cmplwi r3, 0
/* 8038F730 0038C690  41 82 00 10 */	beq lbl_8038F740
lbl_8038F734:
/* 8038F734 0038C694  80 65 00 0C */	lwz r3, 0xc(r5)
/* 8038F738 0038C698  38 63 FF FF */	addi r3, r3, -1
/* 8038F73C 0038C69C  90 65 00 0C */	stw r3, 0xc(r5)
lbl_8038F740:
/* 8038F740 0038C6A0  28 00 00 10 */	cmplwi r0, 0x10
/* 8038F744 0038C6A4  40 82 00 1C */	bne lbl_8038F760
/* 8038F748 0038C6A8  88 65 00 03 */	lbz r3, 3(r5)
/* 8038F74C 0038C6AC  28 03 00 00 */	cmplwi r3, 0
/* 8038F750 0038C6B0  41 82 00 10 */	beq lbl_8038F760
/* 8038F754 0038C6B4  80 65 00 0C */	lwz r3, 0xc(r5)
/* 8038F758 0038C6B8  38 63 FF FE */	addi r3, r3, -2
/* 8038F75C 0038C6BC  90 65 00 0C */	stw r3, 0xc(r5)
lbl_8038F760:
/* 8038F760 0038C6C0  81 25 00 0C */	lwz r9, 0xc(r5)
/* 8038F764 0038C6C4  7C 66 20 50 */	subf r3, r6, r4
/* 8038F768 0038C6C8  7C 69 1A 14 */	add r3, r9, r3
/* 8038F76C 0038C6CC  2C 03 01 FD */	cmpwi r3, 0x1fd
/* 8038F770 0038C6D0  40 81 00 0C */	ble lbl_8038F77C
/* 8038F774 0038C6D4  38 60 00 00 */	li r3, 0
/* 8038F778 0038C6D8  4E 80 00 20 */	blr 
lbl_8038F77C:
/* 8038F77C 0038C6DC  38 80 00 30 */	li r4, 0x30
/* 8038F780 0038C6E0  48 00 00 0C */	b lbl_8038F78C
lbl_8038F784:
/* 8038F784 0038C6E4  9C 86 FF FF */	stbu r4, -1(r6)
/* 8038F788 0038C6E8  38 E7 00 01 */	addi r7, r7, 1
lbl_8038F78C:
/* 8038F78C 0038C6EC  80 65 00 0C */	lwz r3, 0xc(r5)
/* 8038F790 0038C6F0  7C 07 18 00 */	cmpw r7, r3
/* 8038F794 0038C6F4  41 80 FF F0 */	blt lbl_8038F784
/* 8038F798 0038C6F8  28 00 00 10 */	cmplwi r0, 0x10
/* 8038F79C 0038C6FC  40 82 00 20 */	bne lbl_8038F7BC
/* 8038F7A0 0038C700  88 05 00 03 */	lbz r0, 3(r5)
/* 8038F7A4 0038C704  28 00 00 00 */	cmplwi r0, 0
/* 8038F7A8 0038C708  41 82 00 14 */	beq lbl_8038F7BC
/* 8038F7AC 0038C70C  88 65 00 05 */	lbz r3, 5(r5)
/* 8038F7B0 0038C710  38 00 00 30 */	li r0, 0x30
/* 8038F7B4 0038C714  98 66 FF FF */	stb r3, -1(r6)
/* 8038F7B8 0038C718  9C 06 FF FE */	stbu r0, -2(r6)
lbl_8038F7BC:
/* 8038F7BC 0038C71C  2C 08 00 00 */	cmpwi r8, 0
/* 8038F7C0 0038C720  41 82 00 10 */	beq lbl_8038F7D0
/* 8038F7C4 0038C724  38 00 00 2D */	li r0, 0x2d
/* 8038F7C8 0038C728  9C 06 FF FF */	stbu r0, -1(r6)
/* 8038F7CC 0038C72C  48 00 00 2C */	b lbl_8038F7F8
lbl_8038F7D0:
/* 8038F7D0 0038C730  88 05 00 01 */	lbz r0, 1(r5)
/* 8038F7D4 0038C734  28 00 00 01 */	cmplwi r0, 1
/* 8038F7D8 0038C738  40 82 00 10 */	bne lbl_8038F7E8
/* 8038F7DC 0038C73C  38 00 00 2B */	li r0, 0x2b
/* 8038F7E0 0038C740  9C 06 FF FF */	stbu r0, -1(r6)
/* 8038F7E4 0038C744  48 00 00 14 */	b lbl_8038F7F8
lbl_8038F7E8:
/* 8038F7E8 0038C748  28 00 00 02 */	cmplwi r0, 2
/* 8038F7EC 0038C74C  40 82 00 0C */	bne lbl_8038F7F8
/* 8038F7F0 0038C750  38 00 00 20 */	li r0, 0x20
/* 8038F7F4 0038C754  9C 06 FF FF */	stbu r0, -1(r6)
lbl_8038F7F8:
/* 8038F7F8 0038C758  7C C3 33 78 */	mr r3, r6
/* 8038F7FC 0038C75C  4E 80 00 20 */	blr 

.global parse_format
parse_format:
/* 8038F800 0038C760  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8038F804 0038C764  7C 08 02 A6 */	mflr r0
/* 8038F808 0038C768  38 E0 00 00 */	li r7, 0
/* 8038F80C 0038C76C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8038F810 0038C770  38 00 00 01 */	li r0, 1
/* 8038F814 0038C774  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8038F818 0038C778  3B E3 00 01 */	addi r31, r3, 1
/* 8038F81C 0038C77C  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8038F820 0038C780  7C BE 2B 78 */	mr r30, r5
/* 8038F824 0038C784  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8038F828 0038C788  7C 9D 23 78 */	mr r29, r4
/* 8038F82C 0038C78C  88 C3 00 01 */	lbz r6, 1(r3)
/* 8038F830 0038C790  98 E1 00 09 */	stb r7, 9(r1)
/* 8038F834 0038C794  7C C6 07 74 */	extsb r6, r6
/* 8038F838 0038C798  2C 06 00 25 */	cmpwi r6, 0x25
/* 8038F83C 0038C79C  98 01 00 08 */	stb r0, 8(r1)
/* 8038F840 0038C7A0  98 E1 00 0A */	stb r7, 0xa(r1)
/* 8038F844 0038C7A4  98 E1 00 0B */	stb r7, 0xb(r1)
/* 8038F848 0038C7A8  98 E1 00 0C */	stb r7, 0xc(r1)
/* 8038F84C 0038C7AC  90 E1 00 10 */	stw r7, 0x10(r1)
/* 8038F850 0038C7B0  90 E1 00 14 */	stw r7, 0x14(r1)
/* 8038F854 0038C7B4  40 82 00 28 */	bne lbl_8038F87C
/* 8038F858 0038C7B8  98 C1 00 0D */	stb r6, 0xd(r1)
/* 8038F85C 0038C7BC  38 7F 00 01 */	addi r3, r31, 1
/* 8038F860 0038C7C0  80 81 00 08 */	lwz r4, 8(r1)
/* 8038F864 0038C7C4  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8038F868 0038C7C8  90 9E 00 00 */	stw r4, 0(r30)
/* 8038F86C 0038C7CC  90 1E 00 04 */	stw r0, 4(r30)
/* 8038F870 0038C7D0  90 FE 00 08 */	stw r7, 8(r30)
/* 8038F874 0038C7D4  90 FE 00 0C */	stw r7, 0xc(r30)
/* 8038F878 0038C7D8  48 00 04 70 */	b lbl_8038FCE8
lbl_8038F87C:
/* 8038F87C 0038C7DC  38 06 FF E0 */	addi r0, r6, -32
/* 8038F880 0038C7E0  38 80 00 01 */	li r4, 1
/* 8038F884 0038C7E4  28 00 00 10 */	cmplwi r0, 0x10
/* 8038F888 0038C7E8  41 81 00 70 */	bgt lbl_8038F8F8
/* 8038F88C 0038C7EC  3C 60 80 3F */	lis r3, lbl_803F2F40@ha
/* 8038F890 0038C7F0  54 00 10 3A */	slwi r0, r0, 2
/* 8038F894 0038C7F4  38 63 2F 40 */	addi r3, r3, lbl_803F2F40@l
/* 8038F898 0038C7F8  7C 03 00 2E */	lwzx r0, r3, r0
/* 8038F89C 0038C7FC  7C 09 03 A6 */	mtctr r0
/* 8038F8A0 0038C800  4E 80 04 20 */	bctr 
/* 8038F8A4 0038C804  38 00 00 00 */	li r0, 0
/* 8038F8A8 0038C808  98 01 00 08 */	stb r0, 8(r1)
/* 8038F8AC 0038C80C  48 00 00 50 */	b lbl_8038F8FC
/* 8038F8B0 0038C810  38 00 00 01 */	li r0, 1
/* 8038F8B4 0038C814  98 01 00 09 */	stb r0, 9(r1)
/* 8038F8B8 0038C818  48 00 00 44 */	b lbl_8038F8FC
/* 8038F8BC 0038C81C  88 01 00 09 */	lbz r0, 9(r1)
/* 8038F8C0 0038C820  28 00 00 01 */	cmplwi r0, 1
/* 8038F8C4 0038C824  41 82 00 38 */	beq lbl_8038F8FC
/* 8038F8C8 0038C828  38 00 00 02 */	li r0, 2
/* 8038F8CC 0038C82C  98 01 00 09 */	stb r0, 9(r1)
/* 8038F8D0 0038C830  48 00 00 2C */	b lbl_8038F8FC
/* 8038F8D4 0038C834  38 00 00 01 */	li r0, 1
/* 8038F8D8 0038C838  98 01 00 0B */	stb r0, 0xb(r1)
/* 8038F8DC 0038C83C  48 00 00 20 */	b lbl_8038F8FC
/* 8038F8E0 0038C840  88 01 00 08 */	lbz r0, 8(r1)
/* 8038F8E4 0038C844  28 00 00 00 */	cmplwi r0, 0
/* 8038F8E8 0038C848  41 82 00 14 */	beq lbl_8038F8FC
/* 8038F8EC 0038C84C  38 00 00 02 */	li r0, 2
/* 8038F8F0 0038C850  98 01 00 08 */	stb r0, 8(r1)
/* 8038F8F4 0038C854  48 00 00 08 */	b lbl_8038F8FC
lbl_8038F8F8:
/* 8038F8F8 0038C858  38 80 00 00 */	li r4, 0
lbl_8038F8FC:
/* 8038F8FC 0038C85C  2C 04 00 00 */	cmpwi r4, 0
/* 8038F900 0038C860  41 82 00 10 */	beq lbl_8038F910
/* 8038F904 0038C864  8C DF 00 01 */	lbzu r6, 1(r31)
/* 8038F908 0038C868  7C C6 07 74 */	extsb r6, r6
/* 8038F90C 0038C86C  4B FF FF 70 */	b lbl_8038F87C
lbl_8038F910:
/* 8038F910 0038C870  2C 06 00 2A */	cmpwi r6, 0x2a
/* 8038F914 0038C874  40 82 00 3C */	bne lbl_8038F950
/* 8038F918 0038C878  7F A3 EB 78 */	mr r3, r29
/* 8038F91C 0038C87C  38 80 00 01 */	li r4, 1
/* 8038F920 0038C880  4B FF 9C 5D */	bl __va_arg
/* 8038F924 0038C884  80 03 00 00 */	lwz r0, 0(r3)
/* 8038F928 0038C888  2C 00 00 00 */	cmpwi r0, 0
/* 8038F92C 0038C88C  90 01 00 10 */	stw r0, 0x10(r1)
/* 8038F930 0038C890  40 80 00 14 */	bge lbl_8038F944
/* 8038F934 0038C894  7C 00 00 D0 */	neg r0, r0
/* 8038F938 0038C898  38 60 00 00 */	li r3, 0
/* 8038F93C 0038C89C  98 61 00 08 */	stb r3, 8(r1)
/* 8038F940 0038C8A0  90 01 00 10 */	stw r0, 0x10(r1)
lbl_8038F944:
/* 8038F944 0038C8A4  8C DF 00 01 */	lbzu r6, 1(r31)
/* 8038F948 0038C8A8  7C C6 07 74 */	extsb r6, r6
/* 8038F94C 0038C8AC  48 00 00 3C */	b lbl_8038F988
lbl_8038F950:
/* 8038F950 0038C8B0  3C 60 80 3F */	lis r3, lbl_803F2A20@ha
/* 8038F954 0038C8B4  38 63 2A 20 */	addi r3, r3, lbl_803F2A20@l
/* 8038F958 0038C8B8  48 00 00 20 */	b lbl_8038F978
lbl_8038F95C:
/* 8038F95C 0038C8BC  80 01 00 10 */	lwz r0, 0x10(r1)
/* 8038F960 0038C8C0  1C 00 00 0A */	mulli r0, r0, 0xa
/* 8038F964 0038C8C4  7C 86 02 14 */	add r4, r6, r0
/* 8038F968 0038C8C8  8C DF 00 01 */	lbzu r6, 1(r31)
/* 8038F96C 0038C8CC  38 04 FF D0 */	addi r0, r4, -48
/* 8038F970 0038C8D0  90 01 00 10 */	stw r0, 0x10(r1)
/* 8038F974 0038C8D4  7C C6 07 74 */	extsb r6, r6
lbl_8038F978:
/* 8038F978 0038C8D8  54 C0 06 3E */	clrlwi r0, r6, 0x18
/* 8038F97C 0038C8DC  7C 03 00 AE */	lbzx r0, r3, r0
/* 8038F980 0038C8E0  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8038F984 0038C8E4  40 82 FF D8 */	bne lbl_8038F95C
lbl_8038F988:
/* 8038F988 0038C8E8  80 A1 00 10 */	lwz r5, 0x10(r1)
/* 8038F98C 0038C8EC  2C 05 01 FD */	cmpwi r5, 0x1fd
/* 8038F990 0038C8F0  40 81 00 30 */	ble lbl_8038F9C0
/* 8038F994 0038C8F4  38 00 00 FF */	li r0, 0xff
/* 8038F998 0038C8F8  80 81 00 08 */	lwz r4, 8(r1)
/* 8038F99C 0038C8FC  98 01 00 0D */	stb r0, 0xd(r1)
/* 8038F9A0 0038C900  38 7F 00 01 */	addi r3, r31, 1
/* 8038F9A4 0038C904  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038F9A8 0038C908  90 9E 00 00 */	stw r4, 0(r30)
/* 8038F9AC 0038C90C  80 81 00 0C */	lwz r4, 0xc(r1)
/* 8038F9B0 0038C910  90 9E 00 04 */	stw r4, 4(r30)
/* 8038F9B4 0038C914  90 BE 00 08 */	stw r5, 8(r30)
/* 8038F9B8 0038C918  90 1E 00 0C */	stw r0, 0xc(r30)
/* 8038F9BC 0038C91C  48 00 03 2C */	b lbl_8038FCE8
lbl_8038F9C0:
/* 8038F9C0 0038C920  2C 06 00 2E */	cmpwi r6, 0x2e
/* 8038F9C4 0038C924  40 82 00 84 */	bne lbl_8038FA48
/* 8038F9C8 0038C928  8C DF 00 01 */	lbzu r6, 1(r31)
/* 8038F9CC 0038C92C  38 00 00 01 */	li r0, 1
/* 8038F9D0 0038C930  98 01 00 0A */	stb r0, 0xa(r1)
/* 8038F9D4 0038C934  7C C6 07 74 */	extsb r6, r6
/* 8038F9D8 0038C938  2C 06 00 2A */	cmpwi r6, 0x2a
/* 8038F9DC 0038C93C  40 82 00 34 */	bne lbl_8038FA10
/* 8038F9E0 0038C940  7F A3 EB 78 */	mr r3, r29
/* 8038F9E4 0038C944  38 80 00 01 */	li r4, 1
/* 8038F9E8 0038C948  4B FF 9B 95 */	bl __va_arg
/* 8038F9EC 0038C94C  80 03 00 00 */	lwz r0, 0(r3)
/* 8038F9F0 0038C950  2C 00 00 00 */	cmpwi r0, 0
/* 8038F9F4 0038C954  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038F9F8 0038C958  40 80 00 0C */	bge lbl_8038FA04
/* 8038F9FC 0038C95C  38 00 00 00 */	li r0, 0
/* 8038FA00 0038C960  98 01 00 0A */	stb r0, 0xa(r1)
lbl_8038FA04:
/* 8038FA04 0038C964  8C DF 00 01 */	lbzu r6, 1(r31)
/* 8038FA08 0038C968  7C C6 07 74 */	extsb r6, r6
/* 8038FA0C 0038C96C  48 00 00 3C */	b lbl_8038FA48
lbl_8038FA10:
/* 8038FA10 0038C970  3C 60 80 3F */	lis r3, lbl_803F2A20@ha
/* 8038FA14 0038C974  38 63 2A 20 */	addi r3, r3, lbl_803F2A20@l
/* 8038FA18 0038C978  48 00 00 20 */	b lbl_8038FA38
lbl_8038FA1C:
/* 8038FA1C 0038C97C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FA20 0038C980  1C 00 00 0A */	mulli r0, r0, 0xa
/* 8038FA24 0038C984  7C 86 02 14 */	add r4, r6, r0
/* 8038FA28 0038C988  8C DF 00 01 */	lbzu r6, 1(r31)
/* 8038FA2C 0038C98C  38 04 FF D0 */	addi r0, r4, -48
/* 8038FA30 0038C990  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FA34 0038C994  7C C6 07 74 */	extsb r6, r6
lbl_8038FA38:
/* 8038FA38 0038C998  54 C0 06 3E */	clrlwi r0, r6, 0x18
/* 8038FA3C 0038C99C  7C 03 00 AE */	lbzx r0, r3, r0
/* 8038FA40 0038C9A0  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8038FA44 0038C9A4  40 82 FF D8 */	bne lbl_8038FA1C
lbl_8038FA48:
/* 8038FA48 0038C9A8  2C 06 00 68 */	cmpwi r6, 0x68
/* 8038FA4C 0038C9AC  38 80 00 01 */	li r4, 1
/* 8038FA50 0038C9B0  41 82 00 20 */	beq lbl_8038FA70
/* 8038FA54 0038C9B4  40 80 00 10 */	bge lbl_8038FA64
/* 8038FA58 0038C9B8  2C 06 00 4C */	cmpwi r6, 0x4c
/* 8038FA5C 0038C9BC  41 82 00 68 */	beq lbl_8038FAC4
/* 8038FA60 0038C9C0  48 00 00 70 */	b lbl_8038FAD0
lbl_8038FA64:
/* 8038FA64 0038C9C4  2C 06 00 6C */	cmpwi r6, 0x6c
/* 8038FA68 0038C9C8  41 82 00 30 */	beq lbl_8038FA98
/* 8038FA6C 0038C9CC  48 00 00 64 */	b lbl_8038FAD0
lbl_8038FA70:
/* 8038FA70 0038C9D0  88 1F 00 01 */	lbz r0, 1(r31)
/* 8038FA74 0038C9D4  38 60 00 02 */	li r3, 2
/* 8038FA78 0038C9D8  98 61 00 0C */	stb r3, 0xc(r1)
/* 8038FA7C 0038C9DC  7C 00 07 74 */	extsb r0, r0
/* 8038FA80 0038C9E0  2C 00 00 68 */	cmpwi r0, 0x68
/* 8038FA84 0038C9E4  40 82 00 50 */	bne lbl_8038FAD4
/* 8038FA88 0038C9E8  98 81 00 0C */	stb r4, 0xc(r1)
/* 8038FA8C 0038C9EC  7C 06 03 78 */	mr r6, r0
/* 8038FA90 0038C9F0  3B FF 00 01 */	addi r31, r31, 1
/* 8038FA94 0038C9F4  48 00 00 40 */	b lbl_8038FAD4
lbl_8038FA98:
/* 8038FA98 0038C9F8  88 1F 00 01 */	lbz r0, 1(r31)
/* 8038FA9C 0038C9FC  38 60 00 03 */	li r3, 3
/* 8038FAA0 0038CA00  98 61 00 0C */	stb r3, 0xc(r1)
/* 8038FAA4 0038CA04  7C 03 07 74 */	extsb r3, r0
/* 8038FAA8 0038CA08  2C 03 00 6C */	cmpwi r3, 0x6c
/* 8038FAAC 0038CA0C  40 82 00 28 */	bne lbl_8038FAD4
/* 8038FAB0 0038CA10  38 00 00 04 */	li r0, 4
/* 8038FAB4 0038CA14  7C 66 1B 78 */	mr r6, r3
/* 8038FAB8 0038CA18  98 01 00 0C */	stb r0, 0xc(r1)
/* 8038FABC 0038CA1C  3B FF 00 01 */	addi r31, r31, 1
/* 8038FAC0 0038CA20  48 00 00 14 */	b lbl_8038FAD4
lbl_8038FAC4:
/* 8038FAC4 0038CA24  38 00 00 05 */	li r0, 5
/* 8038FAC8 0038CA28  98 01 00 0C */	stb r0, 0xc(r1)
/* 8038FACC 0038CA2C  48 00 00 08 */	b lbl_8038FAD4
lbl_8038FAD0:
/* 8038FAD0 0038CA30  38 80 00 00 */	li r4, 0
lbl_8038FAD4:
/* 8038FAD4 0038CA34  2C 04 00 00 */	cmpwi r4, 0
/* 8038FAD8 0038CA38  41 82 00 0C */	beq lbl_8038FAE4
/* 8038FADC 0038CA3C  8C DF 00 01 */	lbzu r6, 1(r31)
/* 8038FAE0 0038CA40  7C C6 07 74 */	extsb r6, r6
lbl_8038FAE4:
/* 8038FAE4 0038CA44  38 06 FF BF */	addi r0, r6, -65
/* 8038FAE8 0038CA48  98 C1 00 0D */	stb r6, 0xd(r1)
/* 8038FAEC 0038CA4C  28 00 00 37 */	cmplwi r0, 0x37
/* 8038FAF0 0038CA50  41 81 01 CC */	bgt lbl_8038FCBC
/* 8038FAF4 0038CA54  3C 60 80 3F */	lis r3, lbl_803F2E60@ha
/* 8038FAF8 0038CA58  54 00 10 3A */	slwi r0, r0, 2
/* 8038FAFC 0038CA5C  38 63 2E 60 */	addi r3, r3, lbl_803F2E60@l
/* 8038FB00 0038CA60  7C 03 00 2E */	lwzx r0, r3, r0
/* 8038FB04 0038CA64  7C 09 03 A6 */	mtctr r0
/* 8038FB08 0038CA68  4E 80 04 20 */	bctr 
/* 8038FB0C 0038CA6C  88 01 00 0C */	lbz r0, 0xc(r1)
/* 8038FB10 0038CA70  28 00 00 05 */	cmplwi r0, 5
/* 8038FB14 0038CA74  40 82 00 10 */	bne lbl_8038FB24
/* 8038FB18 0038CA78  38 00 00 FF */	li r0, 0xff
/* 8038FB1C 0038CA7C  98 01 00 0D */	stb r0, 0xd(r1)
/* 8038FB20 0038CA80  48 00 01 A4 */	b lbl_8038FCC4
lbl_8038FB24:
/* 8038FB24 0038CA84  88 01 00 0A */	lbz r0, 0xa(r1)
/* 8038FB28 0038CA88  28 00 00 00 */	cmplwi r0, 0
/* 8038FB2C 0038CA8C  40 82 00 10 */	bne lbl_8038FB3C
/* 8038FB30 0038CA90  38 00 00 01 */	li r0, 1
/* 8038FB34 0038CA94  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FB38 0038CA98  48 00 01 8C */	b lbl_8038FCC4
lbl_8038FB3C:
/* 8038FB3C 0038CA9C  88 01 00 08 */	lbz r0, 8(r1)
/* 8038FB40 0038CAA0  28 00 00 02 */	cmplwi r0, 2
/* 8038FB44 0038CAA4  40 82 01 80 */	bne lbl_8038FCC4
/* 8038FB48 0038CAA8  38 00 00 01 */	li r0, 1
/* 8038FB4C 0038CAAC  98 01 00 08 */	stb r0, 8(r1)
/* 8038FB50 0038CAB0  48 00 01 74 */	b lbl_8038FCC4
/* 8038FB54 0038CAB4  88 01 00 0C */	lbz r0, 0xc(r1)
/* 8038FB58 0038CAB8  28 00 00 02 */	cmplwi r0, 2
/* 8038FB5C 0038CABC  41 82 00 0C */	beq lbl_8038FB68
/* 8038FB60 0038CAC0  28 00 00 04 */	cmplwi r0, 4
/* 8038FB64 0038CAC4  40 82 00 10 */	bne lbl_8038FB74
lbl_8038FB68:
/* 8038FB68 0038CAC8  38 00 00 FF */	li r0, 0xff
/* 8038FB6C 0038CACC  98 01 00 0D */	stb r0, 0xd(r1)
/* 8038FB70 0038CAD0  48 00 01 54 */	b lbl_8038FCC4
lbl_8038FB74:
/* 8038FB74 0038CAD4  88 01 00 0A */	lbz r0, 0xa(r1)
/* 8038FB78 0038CAD8  28 00 00 00 */	cmplwi r0, 0
/* 8038FB7C 0038CADC  40 82 01 48 */	bne lbl_8038FCC4
/* 8038FB80 0038CAE0  38 00 00 06 */	li r0, 6
/* 8038FB84 0038CAE4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FB88 0038CAE8  48 00 01 3C */	b lbl_8038FCC4
/* 8038FB8C 0038CAEC  88 01 00 0A */	lbz r0, 0xa(r1)
/* 8038FB90 0038CAF0  28 00 00 00 */	cmplwi r0, 0
/* 8038FB94 0038CAF4  40 82 00 0C */	bne lbl_8038FBA0
/* 8038FB98 0038CAF8  38 00 00 0D */	li r0, 0xd
/* 8038FB9C 0038CAFC  90 01 00 14 */	stw r0, 0x14(r1)
lbl_8038FBA0:
/* 8038FBA0 0038CB00  88 01 00 0C */	lbz r0, 0xc(r1)
/* 8038FBA4 0038CB04  28 00 00 02 */	cmplwi r0, 2
/* 8038FBA8 0038CB08  41 82 00 14 */	beq lbl_8038FBBC
/* 8038FBAC 0038CB0C  28 00 00 04 */	cmplwi r0, 4
/* 8038FBB0 0038CB10  41 82 00 0C */	beq lbl_8038FBBC
/* 8038FBB4 0038CB14  28 00 00 01 */	cmplwi r0, 1
/* 8038FBB8 0038CB18  40 82 01 0C */	bne lbl_8038FCC4
lbl_8038FBBC:
/* 8038FBBC 0038CB1C  38 00 00 FF */	li r0, 0xff
/* 8038FBC0 0038CB20  98 01 00 0D */	stb r0, 0xd(r1)
/* 8038FBC4 0038CB24  48 00 01 00 */	b lbl_8038FCC4
/* 8038FBC8 0038CB28  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FBCC 0038CB2C  2C 00 00 00 */	cmpwi r0, 0
/* 8038FBD0 0038CB30  40 82 00 0C */	bne lbl_8038FBDC
/* 8038FBD4 0038CB34  38 00 00 01 */	li r0, 1
/* 8038FBD8 0038CB38  90 01 00 14 */	stw r0, 0x14(r1)
lbl_8038FBDC:
/* 8038FBDC 0038CB3C  88 01 00 0C */	lbz r0, 0xc(r1)
/* 8038FBE0 0038CB40  28 00 00 02 */	cmplwi r0, 2
/* 8038FBE4 0038CB44  41 82 00 14 */	beq lbl_8038FBF8
/* 8038FBE8 0038CB48  28 00 00 04 */	cmplwi r0, 4
/* 8038FBEC 0038CB4C  41 82 00 0C */	beq lbl_8038FBF8
/* 8038FBF0 0038CB50  28 00 00 01 */	cmplwi r0, 1
/* 8038FBF4 0038CB54  40 82 00 10 */	bne lbl_8038FC04
lbl_8038FBF8:
/* 8038FBF8 0038CB58  38 00 00 FF */	li r0, 0xff
/* 8038FBFC 0038CB5C  98 01 00 0D */	stb r0, 0xd(r1)
/* 8038FC00 0038CB60  48 00 00 C4 */	b lbl_8038FCC4
lbl_8038FC04:
/* 8038FC04 0038CB64  88 01 00 0A */	lbz r0, 0xa(r1)
/* 8038FC08 0038CB68  28 00 00 00 */	cmplwi r0, 0
/* 8038FC0C 0038CB6C  40 82 00 B8 */	bne lbl_8038FCC4
/* 8038FC10 0038CB70  38 00 00 06 */	li r0, 6
/* 8038FC14 0038CB74  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FC18 0038CB78  48 00 00 AC */	b lbl_8038FCC4
/* 8038FC1C 0038CB7C  38 A0 00 78 */	li r5, 0x78
/* 8038FC20 0038CB80  38 80 00 01 */	li r4, 1
/* 8038FC24 0038CB84  38 60 00 03 */	li r3, 3
/* 8038FC28 0038CB88  38 00 00 08 */	li r0, 8
/* 8038FC2C 0038CB8C  98 A1 00 0D */	stb r5, 0xd(r1)
/* 8038FC30 0038CB90  98 81 00 0B */	stb r4, 0xb(r1)
/* 8038FC34 0038CB94  98 61 00 0C */	stb r3, 0xc(r1)
/* 8038FC38 0038CB98  90 01 00 14 */	stw r0, 0x14(r1)
/* 8038FC3C 0038CB9C  48 00 00 88 */	b lbl_8038FCC4
/* 8038FC40 0038CBA0  88 61 00 0C */	lbz r3, 0xc(r1)
/* 8038FC44 0038CBA4  28 03 00 03 */	cmplwi r3, 3
/* 8038FC48 0038CBA8  40 82 00 10 */	bne lbl_8038FC58
/* 8038FC4C 0038CBAC  38 00 00 06 */	li r0, 6
/* 8038FC50 0038CBB0  98 01 00 0C */	stb r0, 0xc(r1)
/* 8038FC54 0038CBB4  48 00 00 70 */	b lbl_8038FCC4
lbl_8038FC58:
/* 8038FC58 0038CBB8  88 01 00 0A */	lbz r0, 0xa(r1)
/* 8038FC5C 0038CBBC  28 00 00 00 */	cmplwi r0, 0
/* 8038FC60 0038CBC0  40 82 00 0C */	bne lbl_8038FC6C
/* 8038FC64 0038CBC4  28 03 00 00 */	cmplwi r3, 0
/* 8038FC68 0038CBC8  41 82 00 5C */	beq lbl_8038FCC4
lbl_8038FC6C:
/* 8038FC6C 0038CBCC  38 00 00 FF */	li r0, 0xff
/* 8038FC70 0038CBD0  98 01 00 0D */	stb r0, 0xd(r1)
/* 8038FC74 0038CBD4  48 00 00 50 */	b lbl_8038FCC4
/* 8038FC78 0038CBD8  88 01 00 0C */	lbz r0, 0xc(r1)
/* 8038FC7C 0038CBDC  28 00 00 03 */	cmplwi r0, 3
/* 8038FC80 0038CBE0  40 82 00 10 */	bne lbl_8038FC90
/* 8038FC84 0038CBE4  38 00 00 06 */	li r0, 6
/* 8038FC88 0038CBE8  98 01 00 0C */	stb r0, 0xc(r1)
/* 8038FC8C 0038CBEC  48 00 00 38 */	b lbl_8038FCC4
lbl_8038FC90:
/* 8038FC90 0038CBF0  28 00 00 00 */	cmplwi r0, 0
/* 8038FC94 0038CBF4  41 82 00 30 */	beq lbl_8038FCC4
/* 8038FC98 0038CBF8  38 00 00 FF */	li r0, 0xff
/* 8038FC9C 0038CBFC  98 01 00 0D */	stb r0, 0xd(r1)
/* 8038FCA0 0038CC00  48 00 00 24 */	b lbl_8038FCC4
/* 8038FCA4 0038CC04  88 01 00 0C */	lbz r0, 0xc(r1)
/* 8038FCA8 0038CC08  28 00 00 05 */	cmplwi r0, 5
/* 8038FCAC 0038CC0C  40 82 00 18 */	bne lbl_8038FCC4
/* 8038FCB0 0038CC10  38 00 00 FF */	li r0, 0xff
/* 8038FCB4 0038CC14  98 01 00 0D */	stb r0, 0xd(r1)
/* 8038FCB8 0038CC18  48 00 00 0C */	b lbl_8038FCC4
lbl_8038FCBC:
/* 8038FCBC 0038CC1C  38 00 00 FF */	li r0, 0xff
/* 8038FCC0 0038CC20  98 01 00 0D */	stb r0, 0xd(r1)
lbl_8038FCC4:
/* 8038FCC4 0038CC24  80 81 00 08 */	lwz r4, 8(r1)
/* 8038FCC8 0038CC28  38 7F 00 01 */	addi r3, r31, 1
/* 8038FCCC 0038CC2C  80 01 00 0C */	lwz r0, 0xc(r1)
/* 8038FCD0 0038CC30  90 9E 00 00 */	stw r4, 0(r30)
/* 8038FCD4 0038CC34  80 81 00 10 */	lwz r4, 0x10(r1)
/* 8038FCD8 0038CC38  90 1E 00 04 */	stw r0, 4(r30)
/* 8038FCDC 0038CC3C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8038FCE0 0038CC40  90 9E 00 08 */	stw r4, 8(r30)
/* 8038FCE4 0038CC44  90 1E 00 0C */	stw r0, 0xc(r30)
lbl_8038FCE8:
/* 8038FCE8 0038CC48  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8038FCEC 0038CC4C  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8038FCF0 0038CC50  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8038FCF4 0038CC54  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8038FCF8 0038CC58  7C 08 03 A6 */	mtlr r0
/* 8038FCFC 0038CC5C  38 21 00 30 */	addi r1, r1, 0x30
/* 8038FD00 0038CC60  4E 80 00 20 */	blr