prime/asm/Runtime/printf.s

2961 lines
119 KiB
ArmAsm
Raw Normal View History

2022-04-02 09:50:35 +00:00
.include "macros.inc"
2022-04-06 10:04:03 +00:00
.section .rodata
.balign 8
2022-04-06 10:04:03 +00:00
.global lbl_803D86C0
lbl_803D86C0:
2022-07-14 05:48:03 +00:00
# ROM: 0x3D56C0
.4byte 0x002D494E
.4byte 0x46002D69
.4byte 0x6E660049
.4byte 0x4E460069
.4byte 0x6E66002D
.4byte 0x4E414E00
.asciz "-nan"
.byte 0x4E, 0x41, 0x4E
.4byte 0x006E616E
.4byte 0
2022-04-04 10:14:22 +00:00
.section .data, "wa"
.balign 8
2022-04-04 10:14:22 +00:00
# TODO: Move these where they actually belong
.global lbl_803F2778
lbl_803F2778:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EF778
.4byte 0
.4byte 0x0A800000
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0x805424D0
.4byte 0x00000100
.4byte 0x805424D0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0x80003648 ;# ptr
.4byte 0x8039127C
.4byte 0x80391274
.4byte 0
.4byte 0x803F27C8
.4byte 0x00000001
.4byte 0x12800000
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0x805423D0
.4byte 0x00000100
.4byte 0x805423D0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0x80003648 ;# ptr
.4byte 0x8039127C
.4byte 0x80391274
.4byte 0
.4byte 0x803F2818
.4byte 0x00000002
.4byte 0x10800000
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0x805422D0
.4byte 0x00000100
.4byte 0x805422D0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0x80003648 ;# ptr
.4byte 0x8039127C
.4byte 0x80391274
.4byte 0
.4byte 0x803F2868
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
2022-04-04 10:14:22 +00:00
.global lbl_803F28B8
lbl_803F28B8:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EF8B8
.4byte 0x40240000
.4byte 0
.4byte 0x40590000
.4byte 0
.4byte 0x408F4000
.4byte 0
.4byte 0x40C38800
.4byte 0
.4byte 0x40F86A00
.4byte 0
.4byte 0x412E8480
.4byte 0
.4byte 0x416312D0
.4byte 0
.4byte 0x4197D784
.4byte 0
2022-04-04 10:14:22 +00:00
.global lbl_803F28F8
lbl_803F28F8:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EF8F8
.4byte 0x8038C62C
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C644
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C65C
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C674
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C824
.4byte 0x8038C68C
.4byte 0x8038C6A4
.4byte 0x8038C6BC
.4byte 0x8038C6D4
.4byte 0x8038C6EC
.4byte 0x8038C704
.4byte 0x8038C71C
.4byte 0x8038C734
.4byte 0x8038C74C
.4byte 0x8038C764
.4byte 0x8038C77C
.4byte 0x8038C794
.4byte 0x8038C7AC
.4byte 0x8038C7C4
.4byte 0x8038C7DC
.4byte 0x8038C7F4
.4byte 0x8038C80C
.4byte 0
2022-04-04 10:14:22 +00:00
.global lbl_803F2A20
lbl_803F2A20:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EFA20
.4byte 0x01010101
.4byte 0x01010101
.4byte 0x01020202
.4byte 0x02020101
.4byte 0x01010101
.4byte 0x01010101
.4byte 0x01010101
.4byte 0x01010101
.4byte 0x04080808
.4byte 0x08080808
.4byte 0x08080808
.4byte 0x08080808
.4byte 0x30303030
.4byte 0x30303030
.4byte 0x30300808
.4byte 0x08080808
.4byte 0x08A0A0A0
.4byte 0xA0A0A080
.4byte 0x80808080
.4byte 0x80808080
.4byte 0x80808080
.4byte 0x80808080
.4byte 0x80808008
.4byte 0x08080808
.4byte 0x08606060
.4byte 0x60606040
.4byte 0x40404040
.4byte 0x40404040
.4byte 0x40404040
.4byte 0x40404040
.4byte 0x40404008
.4byte 0x08080801
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
.4byte 0
2022-04-04 10:14:22 +00:00
.global lbl_803F2B20
lbl_803F2B20:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EFB20
.4byte 0x00010203
.4byte 0x04050607
.4byte 0x08090A0B
.4byte 0x0C0D0E0F
.4byte 0x10111213
.4byte 0x14151617
.4byte 0x18191A1B
.4byte 0x1C1D1E1F
.4byte 0x20212223
.4byte 0x24252627
.4byte 0x28292A2B
.4byte 0x2C2D2E2F
.4byte 0x30313233
.4byte 0x34353637
.4byte 0x38393A3B
.4byte 0x3C3D3E3F
.4byte 0x40616263
.4byte 0x64656667
.4byte 0x68696A6B
.4byte 0x6C6D6E6F
.4byte 0x70717273
.4byte 0x74757677
.4byte 0x78797A5B
.4byte 0x5C5D5E5F
.4byte 0x60616263
.4byte 0x64656667
.4byte 0x68696A6B
.4byte 0x6C6D6E6F
.4byte 0x70717273
.4byte 0x74757677
.4byte 0x78797A7B
.4byte 0x7C7D7E7F
.4byte 0x80818283
.4byte 0x84858687
.4byte 0x88898A8B
.4byte 0x8C8D8E8F
.4byte 0x90919293
.4byte 0x94959697
.4byte 0x98999A9B
.4byte 0x9C9D9E9F
.4byte 0xA0A1A2A3
.4byte 0xA4A5A6A7
.4byte 0xA8A9AAAB
.4byte 0xACADAEAF
.4byte 0xB0B1B2B3
.4byte 0xB4B5B6B7
.4byte 0xB8B9BABB
.4byte 0xBCBDBEBF
.4byte 0xC0C1C2C3
.4byte 0xC4C5C6C7
.4byte 0xC8C9CACB
.4byte 0xCCCDCECF
.4byte 0xD0D1D2D3
.4byte 0xD4D5D6D7
.4byte 0xD8D9DADB
.4byte 0xDCDDDEDF
.4byte 0xE0E1E2E3
.4byte 0xE4E5E6E7
.4byte 0xE8E9EAEB
.4byte 0xECEDEEEF
.4byte 0xF0F1F2F3
.4byte 0xF4F5F6F7
.4byte 0xF8F9FAFB
.4byte 0xFCFDFEFF
2022-04-04 10:14:22 +00:00
.global lbl_803F2C20
lbl_803F2C20:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EFC20
.4byte 0x00010203
.4byte 0x04050607
.4byte 0x08090A0B
.4byte 0x0C0D0E0F
.4byte 0x10111213
.4byte 0x14151617
.4byte 0x18191A1B
.4byte 0x1C1D1E1F
.4byte 0x20212223
.4byte 0x24252627
.4byte 0x28292A2B
.4byte 0x2C2D2E2F
.4byte 0x30313233
.4byte 0x34353637
.4byte 0x38393A3B
.4byte 0x3C3D3E3F
.4byte 0x40414243
.4byte 0x44454647
.4byte 0x48494A4B
.4byte 0x4C4D4E4F
.4byte 0x50515253
.4byte 0x54555657
.4byte 0x58595A5B
.4byte 0x5C5D5E5F
.4byte 0x60414243
.4byte 0x44454647
.4byte 0x48494A4B
.4byte 0x4C4D4E4F
.4byte 0x50515253
.4byte 0x54555657
.4byte 0x58595A7B
.4byte 0x7C7D7E7F
.4byte 0x80818283
.4byte 0x84858687
.4byte 0x88898A8B
.4byte 0x8C8D8E8F
.4byte 0x90919293
.4byte 0x94959697
.4byte 0x98999A9B
.4byte 0x9C9D9E9F
.4byte 0xA0A1A2A3
.4byte 0xA4A5A6A7
.4byte 0xA8A9AAAB
.4byte 0xACADAEAF
.4byte 0xB0B1B2B3
.4byte 0xB4B5B6B7
.4byte 0xB8B9BABB
.4byte 0xBCBDBEBF
.4byte 0xC0C1C2C3
.4byte 0xC4C5C6C7
.4byte 0xC8C9CACB
.4byte 0xCCCDCECF
.4byte 0xD0D1D2D3
.4byte 0xD4D5D6D7
.4byte 0xD8D9DADB
.4byte 0xDCDDDEDF
.4byte 0xE0E1E2E3
.4byte 0xE4E5E6E7
.4byte 0xE8E9EAEB
.4byte 0xECEDEEEF
.4byte 0xF0F1F2F3
.4byte 0xF4F5F6F7
.4byte 0xF8F9FAFB
.4byte 0xFCFDFEFF
2022-04-04 10:14:22 +00:00
.global lbl_803F2D20
lbl_803F2D20:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EFD20
.4byte 0x803D86B8
.4byte 0x803D86BA
.4byte 0x803D86BA
.4byte 0x803D86BA
.4byte 0x803D86BA
.4byte 0x803D86BA
.4byte 0x803D86BA
.4byte 0x803D86BA
.4byte 0x803D86BA
.4byte 0x7F7F7F7F
.4byte 0x7F7F7F00
.4byte 0x803D86BA
.4byte 0x7F7F7F7F
.4byte 0x7F7F7F00
2022-04-04 10:14:22 +00:00
.global lbl_803F2D58
lbl_803F2D58:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EFD58
.4byte 0x8038F3FC
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F39C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F39C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F3D4
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F3E8
.4byte 0x8038F40C
.4byte 0x8038F40C
.4byte 0x8038F3FC
2022-04-04 10:14:22 +00:00
.global lbl_803F2DDC
lbl_803F2DDC:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EFDDC
.4byte 0x8038F688
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F650
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F650
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F668
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F678
.4byte 0x8038F694
.4byte 0x8038F694
.4byte 0x8038F688
2022-04-04 10:14:22 +00:00
.global lbl_803F2E60
lbl_803F2E60:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EFE60
.4byte 0x8038FB8C
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FBDC
.4byte 0x8038FB54
.4byte 0x8038FBC8
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FB0C
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FB8C
.4byte 0x8038FCBC
.4byte 0x8038FC40
.4byte 0x8038FB0C
.4byte 0x8038FBDC
.4byte 0x8038FB54
.4byte 0x8038FBC8
.4byte 0x8038FCBC
.4byte 0x8038FB0C
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FCA4
.4byte 0x8038FB0C
.4byte 0x8038FC1C
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FC78
.4byte 0x8038FCBC
.4byte 0x8038FB0C
.4byte 0x8038FCBC
.4byte 0x8038FCBC
.4byte 0x8038FB0C
2022-04-04 10:14:22 +00:00
.global lbl_803F2F40
lbl_803F2F40:
2022-07-14 05:48:03 +00:00
# ROM: 0x3EFF40
.4byte 0x8038F8BC
.4byte 0x8038F8F8
.4byte 0x8038F8F8
.4byte 0x8038F8D4
.4byte 0x8038F8F8
.4byte 0x8038F8F8
.4byte 0x8038F8F8
.4byte 0x8038F8F8
.4byte 0x8038F8F8
.4byte 0x8038F8F8
.4byte 0x8038F8F8
.4byte 0x8038F8B0
.4byte 0x8038F8F8
.4byte 0x8038F8A4
.4byte 0x8038F8F8
.4byte 0x8038F8F8
.4byte 0x8038F8E0
.4byte 0
2022-04-02 09:50:35 +00:00
.section .text, "ax"
.if 1
2022-07-14 05:48:03 +00:00
/* TODO: Move __stdio_atexit to its own file (misc_io),
* it's here to work around a bug with CW
2022-04-02 09:50:35 +00:00
*/
.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)
2022-07-14 05:48:03 +00:00
/* 8038DCD8 0038AC38 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038DDB8 0038AD18 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038DE30 0038AD90 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038DEAC 0038AE0C 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038DF78 0038AED8 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038DFE4 0038AF44 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038E03C 0038AF9C 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038E0B0 0038B010 4E 80 04 21 */ bctrl
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038E0E0 0038B040 4E 80 04 21 */ bctrl
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038E634 0038B594 4E 80 04 21 */ bctrl
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038E6B4 0038B614 4E 80 04 21 */ bctrl
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038E6E8 0038B648 4E 80 04 21 */ bctrl
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038E728 0038B688 4E 80 04 21 */ bctrl
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038E768 0038B6C8 4E 80 04 21 */ bctrl
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038E7B0 0038B710 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038EE9C 0038BDFC 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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)
2022-07-14 05:48:03 +00:00
/* 8038EEC0 0038BE20 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
lbl_8038EEC4:
/* 8038EEC4 0038BE24 88 E3 00 04 */ lbz r7, 4(r3)
/* 8038EEC8 0038BE28 7C 04 38 00 */ cmpw r4, r7
2022-07-14 05:48:03 +00:00
/* 8038EECC 0038BE2C 4C 80 00 20 */ bgelr
2022-04-02 09:50:35 +00:00
/* 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)
2022-07-14 05:48:03 +00:00
/* 8038EFB8 0038BF18 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
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)
2022-07-14 05:48:03 +00:00
/* 8038EFC8 0038BF28 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038F300 0038C260 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038F398 0038C2F8 4E 80 04 20 */ bctr
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038F5DC 0038C53C 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038F624 0038C584 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
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
2022-07-14 05:48:03 +00:00
/* 8038F64C 0038C5AC 4E 80 04 20 */ bctr
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038F778 0038C6D8 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
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
2022-07-14 05:48:03 +00:00
/* 8038F7FC 0038C75C 4E 80 00 20 */ blr
2022-04-02 09:50:35 +00:00
.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
2022-07-14 05:48:03 +00:00
/* 8038F8A0 0038C800 4E 80 04 20 */ bctr
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038FB08 0038CA68 4E 80 04 20 */ bctr
2022-04-02 09:50:35 +00:00
/* 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
2022-07-14 05:48:03 +00:00
/* 8038FD00 0038CC60 4E 80 00 20 */ blr
2022-07-18 05:20:04 +00:00
.section .sdata2, "a"
.balign 8
2022-07-18 05:20:04 +00:00
.global lbl_805AEC98
lbl_805AEC98:
# ROM: 0x3FB538
.4byte 0
.4byte 0