diff options
Diffstat (limited to 'asm/libstdc++/scanf.s')
-rw-r--r-- | asm/libstdc++/scanf.s | 1571 |
1 files changed, 1571 insertions, 0 deletions
diff --git a/asm/libstdc++/scanf.s b/asm/libstdc++/scanf.s new file mode 100644 index 0000000..81a86e2 --- /dev/null +++ b/asm/libstdc++/scanf.s @@ -0,0 +1,1571 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+parse_format:
+/* 801CCD64 001C89C4 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 801CCD68 001C89C8 3C C0 80 40 */ lis r6, lbl_80400004@ha
+/* 801CCD6C 001C89CC 8C A3 00 01 */ lbzu r5, 1(r3)
+/* 801CCD70 001C89D0 93 E1 00 3C */ stw r31, 0x3c(r1)
+/* 801CCD74 001C89D4 7C A5 07 74 */ extsb r5, r5
+/* 801CCD78 001C89D8 93 C1 00 38 */ stw r30, 0x38(r1)
+/* 801CCD7C 001C89DC 2C 05 00 25 */ cmpwi r5, 0x25
+/* 801CCD80 001C89E0 84 06 CC F0 */ lwzu r0, -0x3310(r6)
+/* 801CCD84 001C89E4 83 C6 00 04 */ lwz r30, lbl_80400004@l(r6)
+/* 801CCD88 001C89E8 83 E6 00 08 */ lwz r31, 8(r6)
+/* 801CCD8C 001C89EC 81 86 00 0C */ lwz r12, 0xc(r6)
+/* 801CCD90 001C89F0 81 66 00 10 */ lwz r11, 0x10(r6)
+/* 801CCD94 001C89F4 81 46 00 14 */ lwz r10, 0x14(r6)
+/* 801CCD98 001C89F8 81 26 00 18 */ lwz r9, 0x18(r6)
+/* 801CCD9C 001C89FC 81 06 00 1C */ lwz r8, 0x1c(r6)
+/* 801CCDA0 001C8A00 80 E6 00 20 */ lwz r7, 0x20(r6)
+/* 801CCDA4 001C8A04 80 C6 00 24 */ lwz r6, 0x24(r6)
+/* 801CCDA8 001C8A08 90 01 00 08 */ stw r0, 8(r1)
+/* 801CCDAC 001C8A0C 93 C1 00 0C */ stw r30, 0xc(r1)
+/* 801CCDB0 001C8A10 93 E1 00 10 */ stw r31, 0x10(r1)
+/* 801CCDB4 001C8A14 91 81 00 14 */ stw r12, 0x14(r1)
+/* 801CCDB8 001C8A18 91 61 00 18 */ stw r11, 0x18(r1)
+/* 801CCDBC 001C8A1C 91 41 00 1C */ stw r10, 0x1c(r1)
+/* 801CCDC0 001C8A20 91 21 00 20 */ stw r9, 0x20(r1)
+/* 801CCDC4 001C8A24 91 01 00 24 */ stw r8, 0x24(r1)
+/* 801CCDC8 001C8A28 90 E1 00 28 */ stw r7, 0x28(r1)
+/* 801CCDCC 001C8A2C 90 C1 00 2C */ stw r6, 0x2c(r1)
+/* 801CCDD0 001C8A30 40 82 00 3C */ bne lbl_801CCE0C
+/* 801CCDD4 001C8A34 98 A1 00 0B */ stb r5, 0xb(r1)
+/* 801CCDD8 001C8A38 38 63 00 01 */ addi r3, r3, 1
+/* 801CCDDC 001C8A3C 80 01 00 08 */ lwz r0, 8(r1)
+/* 801CCDE0 001C8A40 90 04 00 00 */ stw r0, 0(r4)
+/* 801CCDE4 001C8A44 93 C4 00 04 */ stw r30, 4(r4)
+/* 801CCDE8 001C8A48 93 E4 00 08 */ stw r31, 8(r4)
+/* 801CCDEC 001C8A4C 91 84 00 0C */ stw r12, 0xc(r4)
+/* 801CCDF0 001C8A50 91 64 00 10 */ stw r11, 0x10(r4)
+/* 801CCDF4 001C8A54 91 44 00 14 */ stw r10, 0x14(r4)
+/* 801CCDF8 001C8A58 91 24 00 18 */ stw r9, 0x18(r4)
+/* 801CCDFC 001C8A5C 91 04 00 1C */ stw r8, 0x1c(r4)
+/* 801CCE00 001C8A60 90 E4 00 20 */ stw r7, 0x20(r4)
+/* 801CCE04 001C8A64 90 C4 00 24 */ stw r6, 0x24(r4)
+/* 801CCE08 001C8A68 48 00 06 00 */ b lbl_801CD408
+lbl_801CCE0C:
+/* 801CCE0C 001C8A6C 2C 05 00 2A */ cmpwi r5, 0x2a
+/* 801CCE10 001C8A70 40 82 00 14 */ bne lbl_801CCE24
+/* 801CCE14 001C8A74 8C A3 00 01 */ lbzu r5, 1(r3)
+/* 801CCE18 001C8A78 38 00 00 01 */ li r0, 1
+/* 801CCE1C 001C8A7C 98 01 00 08 */ stb r0, 8(r1)
+/* 801CCE20 001C8A80 7C A5 07 74 */ extsb r5, r5
+lbl_801CCE24:
+/* 801CCE24 001C8A84 2C 05 00 00 */ cmpwi r5, 0
+/* 801CCE28 001C8A88 38 00 00 00 */ li r0, 0
+/* 801CCE2C 001C8A8C 41 80 00 0C */ blt lbl_801CCE38
+/* 801CCE30 001C8A90 2C 05 01 00 */ cmpwi r5, 0x100
+/* 801CCE34 001C8A94 41 80 00 08 */ blt lbl_801CCE3C
+lbl_801CCE38:
+/* 801CCE38 001C8A98 38 00 00 01 */ li r0, 1
+lbl_801CCE3C:
+/* 801CCE3C 001C8A9C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CCE40 001C8AA0 41 82 00 0C */ beq lbl_801CCE4C
+/* 801CCE44 001C8AA4 38 00 00 00 */ li r0, 0
+/* 801CCE48 001C8AA8 48 00 00 20 */ b lbl_801CCE68
+lbl_801CCE4C:
+/* 801CCE4C 001C8AAC 3C C0 80 42 */ lis r6, lbl_80422D48@ha
+/* 801CCE50 001C8AB0 54 A0 08 3C */ slwi r0, r5, 1
+/* 801CCE54 001C8AB4 38 C6 2D 48 */ addi r6, r6, lbl_80422D48@l
+/* 801CCE58 001C8AB8 80 C6 00 38 */ lwz r6, 0x38(r6)
+/* 801CCE5C 001C8ABC 80 C6 00 08 */ lwz r6, 8(r6)
+/* 801CCE60 001C8AC0 7C 06 02 2E */ lhzx r0, r6, r0
+/* 801CCE64 001C8AC4 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c
+lbl_801CCE68:
+/* 801CCE68 001C8AC8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CCE6C 001C8ACC 41 82 00 E0 */ beq lbl_801CCF4C
+/* 801CCE70 001C8AD0 3C C0 80 42 */ lis r6, lbl_80422D48@ha
+/* 801CCE74 001C8AD4 38 00 00 00 */ li r0, 0
+/* 801CCE78 001C8AD8 38 C6 2D 48 */ addi r6, r6, lbl_80422D48@l
+/* 801CCE7C 001C8ADC 90 01 00 0C */ stw r0, 0xc(r1)
+/* 801CCE80 001C8AE0 80 E6 00 38 */ lwz r7, 0x38(r6)
+lbl_801CCE84:
+/* 801CCE84 001C8AE4 80 C1 00 0C */ lwz r6, 0xc(r1)
+/* 801CCE88 001C8AE8 38 00 00 00 */ li r0, 0
+/* 801CCE8C 001C8AEC 1C C6 00 0A */ mulli r6, r6, 0xa
+/* 801CCE90 001C8AF0 7C C5 32 14 */ add r6, r5, r6
+/* 801CCE94 001C8AF4 8C A3 00 01 */ lbzu r5, 1(r3)
+/* 801CCE98 001C8AF8 38 C6 FF D0 */ addi r6, r6, -48
+/* 801CCE9C 001C8AFC 7C A5 07 75 */ extsb. r5, r5
+/* 801CCEA0 001C8B00 90 C1 00 0C */ stw r6, 0xc(r1)
+/* 801CCEA4 001C8B04 41 80 00 0C */ blt lbl_801CCEB0
+/* 801CCEA8 001C8B08 2C 05 01 00 */ cmpwi r5, 0x100
+/* 801CCEAC 001C8B0C 41 80 00 08 */ blt lbl_801CCEB4
+lbl_801CCEB0:
+/* 801CCEB0 001C8B10 38 00 00 01 */ li r0, 1
+lbl_801CCEB4:
+/* 801CCEB4 001C8B14 2C 00 00 00 */ cmpwi r0, 0
+/* 801CCEB8 001C8B18 41 82 00 0C */ beq lbl_801CCEC4
+/* 801CCEBC 001C8B1C 38 00 00 00 */ li r0, 0
+/* 801CCEC0 001C8B20 48 00 00 14 */ b lbl_801CCED4
+lbl_801CCEC4:
+/* 801CCEC4 001C8B24 80 C7 00 08 */ lwz r6, 8(r7)
+/* 801CCEC8 001C8B28 54 A0 08 3C */ slwi r0, r5, 1
+/* 801CCECC 001C8B2C 7C 06 02 2E */ lhzx r0, r6, r0
+/* 801CCED0 001C8B30 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c
+lbl_801CCED4:
+/* 801CCED4 001C8B34 2C 00 00 00 */ cmpwi r0, 0
+/* 801CCED8 001C8B38 40 82 FF AC */ bne lbl_801CCE84
+/* 801CCEDC 001C8B3C 80 C1 00 0C */ lwz r6, 0xc(r1)
+/* 801CCEE0 001C8B40 2C 06 00 00 */ cmpwi r6, 0
+/* 801CCEE4 001C8B44 40 82 00 60 */ bne lbl_801CCF44
+/* 801CCEE8 001C8B48 38 00 00 FF */ li r0, 0xff
+/* 801CCEEC 001C8B4C 38 63 00 01 */ addi r3, r3, 1
+/* 801CCEF0 001C8B50 98 01 00 0B */ stb r0, 0xb(r1)
+/* 801CCEF4 001C8B54 80 01 00 08 */ lwz r0, 8(r1)
+/* 801CCEF8 001C8B58 90 04 00 00 */ stw r0, 0(r4)
+/* 801CCEFC 001C8B5C 90 C4 00 04 */ stw r6, 4(r4)
+/* 801CCF00 001C8B60 80 A1 00 10 */ lwz r5, 0x10(r1)
+/* 801CCF04 001C8B64 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CCF08 001C8B68 90 A4 00 08 */ stw r5, 8(r4)
+/* 801CCF0C 001C8B6C 90 04 00 0C */ stw r0, 0xc(r4)
+/* 801CCF10 001C8B70 80 A1 00 18 */ lwz r5, 0x18(r1)
+/* 801CCF14 001C8B74 80 01 00 1C */ lwz r0, 0x1c(r1)
+/* 801CCF18 001C8B78 90 A4 00 10 */ stw r5, 0x10(r4)
+/* 801CCF1C 001C8B7C 90 04 00 14 */ stw r0, 0x14(r4)
+/* 801CCF20 001C8B80 80 A1 00 20 */ lwz r5, 0x20(r1)
+/* 801CCF24 001C8B84 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 801CCF28 001C8B88 90 A4 00 18 */ stw r5, 0x18(r4)
+/* 801CCF2C 001C8B8C 90 04 00 1C */ stw r0, 0x1c(r4)
+/* 801CCF30 001C8B90 80 A1 00 28 */ lwz r5, 0x28(r1)
+/* 801CCF34 001C8B94 80 01 00 2C */ lwz r0, 0x2c(r1)
+/* 801CCF38 001C8B98 90 A4 00 20 */ stw r5, 0x20(r4)
+/* 801CCF3C 001C8B9C 90 04 00 24 */ stw r0, 0x24(r4)
+/* 801CCF40 001C8BA0 48 00 04 C8 */ b lbl_801CD408
+lbl_801CCF44:
+/* 801CCF44 001C8BA4 38 00 00 01 */ li r0, 1
+/* 801CCF48 001C8BA8 98 01 00 09 */ stb r0, 9(r1)
+lbl_801CCF4C:
+/* 801CCF4C 001C8BAC 2C 05 00 6B */ cmpwi r5, 0x6b
+/* 801CCF50 001C8BB0 38 E0 00 01 */ li r7, 1
+/* 801CCF54 001C8BB4 41 82 00 D8 */ beq lbl_801CD02C
+/* 801CCF58 001C8BB8 40 80 00 28 */ bge lbl_801CCF80
+/* 801CCF5C 001C8BBC 2C 05 00 68 */ cmpwi r5, 0x68
+/* 801CCF60 001C8BC0 41 82 00 44 */ beq lbl_801CCFA4
+/* 801CCF64 001C8BC4 40 80 00 10 */ bge lbl_801CCF74
+/* 801CCF68 001C8BC8 2C 05 00 4C */ cmpwi r5, 0x4c
+/* 801CCF6C 001C8BCC 41 82 00 90 */ beq lbl_801CCFFC
+/* 801CCF70 001C8BD0 48 00 00 BC */ b lbl_801CD02C
+lbl_801CCF74:
+/* 801CCF74 001C8BD4 2C 05 00 6A */ cmpwi r5, 0x6a
+/* 801CCF78 001C8BD8 40 80 00 90 */ bge lbl_801CD008
+/* 801CCF7C 001C8BDC 48 00 00 B0 */ b lbl_801CD02C
+lbl_801CCF80:
+/* 801CCF80 001C8BE0 2C 05 00 74 */ cmpwi r5, 0x74
+/* 801CCF84 001C8BE4 41 82 00 9C */ beq lbl_801CD020
+/* 801CCF88 001C8BE8 40 80 00 10 */ bge lbl_801CCF98
+/* 801CCF8C 001C8BEC 2C 05 00 6D */ cmpwi r5, 0x6d
+/* 801CCF90 001C8BF0 40 80 00 9C */ bge lbl_801CD02C
+/* 801CCF94 001C8BF4 48 00 00 3C */ b lbl_801CCFD0
+lbl_801CCF98:
+/* 801CCF98 001C8BF8 2C 05 00 7A */ cmpwi r5, 0x7a
+/* 801CCF9C 001C8BFC 41 82 00 78 */ beq lbl_801CD014
+/* 801CCFA0 001C8C00 48 00 00 8C */ b lbl_801CD02C
+lbl_801CCFA4:
+/* 801CCFA4 001C8C04 88 03 00 01 */ lbz r0, 1(r3)
+/* 801CCFA8 001C8C08 38 C0 00 02 */ li r6, 2
+/* 801CCFAC 001C8C0C 98 C1 00 0A */ stb r6, 0xa(r1)
+/* 801CCFB0 001C8C10 7C 06 07 74 */ extsb r6, r0
+/* 801CCFB4 001C8C14 2C 06 00 68 */ cmpwi r6, 0x68
+/* 801CCFB8 001C8C18 40 82 00 78 */ bne lbl_801CD030
+/* 801CCFBC 001C8C1C 38 00 00 01 */ li r0, 1
+/* 801CCFC0 001C8C20 7C C5 33 78 */ mr r5, r6
+/* 801CCFC4 001C8C24 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CCFC8 001C8C28 38 63 00 01 */ addi r3, r3, 1
+/* 801CCFCC 001C8C2C 48 00 00 64 */ b lbl_801CD030
+lbl_801CCFD0:
+/* 801CCFD0 001C8C30 88 03 00 01 */ lbz r0, 1(r3)
+/* 801CCFD4 001C8C34 38 C0 00 03 */ li r6, 3
+/* 801CCFD8 001C8C38 98 C1 00 0A */ stb r6, 0xa(r1)
+/* 801CCFDC 001C8C3C 7C 06 07 74 */ extsb r6, r0
+/* 801CCFE0 001C8C40 2C 06 00 6C */ cmpwi r6, 0x6c
+/* 801CCFE4 001C8C44 40 82 00 4C */ bne lbl_801CD030
+/* 801CCFE8 001C8C48 38 00 00 07 */ li r0, 7
+/* 801CCFEC 001C8C4C 7C C5 33 78 */ mr r5, r6
+/* 801CCFF0 001C8C50 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CCFF4 001C8C54 38 63 00 01 */ addi r3, r3, 1
+/* 801CCFF8 001C8C58 48 00 00 38 */ b lbl_801CD030
+lbl_801CCFFC:
+/* 801CCFFC 001C8C5C 38 00 00 09 */ li r0, 9
+/* 801CD000 001C8C60 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CD004 001C8C64 48 00 00 2C */ b lbl_801CD030
+lbl_801CD008:
+/* 801CD008 001C8C68 38 00 00 04 */ li r0, 4
+/* 801CD00C 001C8C6C 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CD010 001C8C70 48 00 00 20 */ b lbl_801CD030
+lbl_801CD014:
+/* 801CD014 001C8C74 38 00 00 05 */ li r0, 5
+/* 801CD018 001C8C78 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CD01C 001C8C7C 48 00 00 14 */ b lbl_801CD030
+lbl_801CD020:
+/* 801CD020 001C8C80 38 00 00 06 */ li r0, 6
+/* 801CD024 001C8C84 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CD028 001C8C88 48 00 00 08 */ b lbl_801CD030
+lbl_801CD02C:
+/* 801CD02C 001C8C8C 38 E0 00 00 */ li r7, 0
+lbl_801CD030:
+/* 801CD030 001C8C90 2C 07 00 00 */ cmpwi r7, 0
+/* 801CD034 001C8C94 41 82 00 0C */ beq lbl_801CD040
+/* 801CD038 001C8C98 8C A3 00 01 */ lbzu r5, 1(r3)
+/* 801CD03C 001C8C9C 7C A5 07 74 */ extsb r5, r5
+lbl_801CD040:
+/* 801CD040 001C8CA0 38 05 FF BF */ addi r0, r5, -65
+/* 801CD044 001C8CA4 98 A1 00 0B */ stb r5, 0xb(r1)
+/* 801CD048 001C8CA8 28 00 00 37 */ cmplwi r0, 0x37
+/* 801CD04C 001C8CAC 41 81 03 60 */ bgt lbl_801CD3AC
+/* 801CD050 001C8CB0 3C A0 80 42 */ lis r5, lbl_80422FE0@ha
+/* 801CD054 001C8CB4 54 00 10 3A */ slwi r0, r0, 2
+/* 801CD058 001C8CB8 38 A5 2F E0 */ addi r5, r5, lbl_80422FE0@l
+/* 801CD05C 001C8CBC 7C A5 00 2E */ lwzx r5, r5, r0
+/* 801CD060 001C8CC0 7C A9 03 A6 */ mtctr r5
+/* 801CD064 001C8CC4 4E 80 04 20 */ bctr
+/* 801CD068 001C8CC8 88 01 00 0A */ lbz r0, 0xa(r1)
+/* 801CD06C 001C8CCC 28 00 00 09 */ cmplwi r0, 9
+/* 801CD070 001C8CD0 40 82 03 44 */ bne lbl_801CD3B4
+/* 801CD074 001C8CD4 38 00 00 FF */ li r0, 0xff
+/* 801CD078 001C8CD8 98 01 00 0B */ stb r0, 0xb(r1)
+/* 801CD07C 001C8CDC 48 00 03 38 */ b lbl_801CD3B4
+/* 801CD080 001C8CE0 88 A1 00 0A */ lbz r5, 0xa(r1)
+/* 801CD084 001C8CE4 28 05 00 01 */ cmplwi r5, 1
+/* 801CD088 001C8CE8 41 82 00 1C */ beq lbl_801CD0A4
+/* 801CD08C 001C8CEC 28 05 00 02 */ cmplwi r5, 2
+/* 801CD090 001C8CF0 41 82 00 14 */ beq lbl_801CD0A4
+/* 801CD094 001C8CF4 38 05 00 FC */ addi r0, r5, 0xfc
+/* 801CD098 001C8CF8 54 00 06 3E */ clrlwi r0, r0, 0x18
+/* 801CD09C 001C8CFC 28 00 00 03 */ cmplwi r0, 3
+/* 801CD0A0 001C8D00 41 81 00 10 */ bgt lbl_801CD0B0
+lbl_801CD0A4:
+/* 801CD0A4 001C8D04 38 00 00 FF */ li r0, 0xff
+/* 801CD0A8 001C8D08 98 01 00 0B */ stb r0, 0xb(r1)
+/* 801CD0AC 001C8D0C 48 00 03 08 */ b lbl_801CD3B4
+lbl_801CD0B0:
+/* 801CD0B0 001C8D10 28 05 00 03 */ cmplwi r5, 3
+/* 801CD0B4 001C8D14 40 82 03 00 */ bne lbl_801CD3B4
+/* 801CD0B8 001C8D18 38 00 00 08 */ li r0, 8
+/* 801CD0BC 001C8D1C 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CD0C0 001C8D20 48 00 02 F4 */ b lbl_801CD3B4
+/* 801CD0C4 001C8D24 38 A0 00 03 */ li r5, 3
+/* 801CD0C8 001C8D28 38 00 00 78 */ li r0, 0x78
+/* 801CD0CC 001C8D2C 98 A1 00 0A */ stb r5, 0xa(r1)
+/* 801CD0D0 001C8D30 98 01 00 0B */ stb r0, 0xb(r1)
+/* 801CD0D4 001C8D34 48 00 02 E0 */ b lbl_801CD3B4
+/* 801CD0D8 001C8D38 88 01 00 0A */ lbz r0, 0xa(r1)
+/* 801CD0DC 001C8D3C 28 00 00 03 */ cmplwi r0, 3
+/* 801CD0E0 001C8D40 40 82 00 10 */ bne lbl_801CD0F0
+/* 801CD0E4 001C8D44 38 00 00 0A */ li r0, 0xa
+/* 801CD0E8 001C8D48 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CD0EC 001C8D4C 48 00 02 C8 */ b lbl_801CD3B4
+lbl_801CD0F0:
+/* 801CD0F0 001C8D50 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD0F4 001C8D54 41 82 02 C0 */ beq lbl_801CD3B4
+/* 801CD0F8 001C8D58 38 00 00 FF */ li r0, 0xff
+/* 801CD0FC 001C8D5C 98 01 00 0B */ stb r0, 0xb(r1)
+/* 801CD100 001C8D60 48 00 02 B4 */ b lbl_801CD3B4
+/* 801CD104 001C8D64 88 01 00 0A */ lbz r0, 0xa(r1)
+/* 801CD108 001C8D68 28 00 00 03 */ cmplwi r0, 3
+/* 801CD10C 001C8D6C 40 82 00 10 */ bne lbl_801CD11C
+/* 801CD110 001C8D70 38 00 00 0A */ li r0, 0xa
+/* 801CD114 001C8D74 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CD118 001C8D78 48 00 00 14 */ b lbl_801CD12C
+lbl_801CD11C:
+/* 801CD11C 001C8D7C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD120 001C8D80 41 82 00 0C */ beq lbl_801CD12C
+/* 801CD124 001C8D84 38 00 00 FF */ li r0, 0xff
+/* 801CD128 001C8D88 98 01 00 0B */ stb r0, 0xb(r1)
+lbl_801CD12C:
+/* 801CD12C 001C8D8C 38 C0 00 FF */ li r6, 0xff
+/* 801CD130 001C8D90 38 A0 00 C1 */ li r5, 0xc1
+/* 801CD134 001C8D94 38 00 00 FE */ li r0, 0xfe
+/* 801CD138 001C8D98 98 C1 00 10 */ stb r6, 0x10(r1)
+/* 801CD13C 001C8D9C 98 C1 00 12 */ stb r6, 0x12(r1)
+/* 801CD140 001C8DA0 98 C1 00 13 */ stb r6, 0x13(r1)
+/* 801CD144 001C8DA4 98 C1 00 15 */ stb r6, 0x15(r1)
+/* 801CD148 001C8DA8 98 C1 00 16 */ stb r6, 0x16(r1)
+/* 801CD14C 001C8DAC 98 C1 00 17 */ stb r6, 0x17(r1)
+/* 801CD150 001C8DB0 98 C1 00 18 */ stb r6, 0x18(r1)
+/* 801CD154 001C8DB4 98 C1 00 19 */ stb r6, 0x19(r1)
+/* 801CD158 001C8DB8 98 C1 00 1A */ stb r6, 0x1a(r1)
+/* 801CD15C 001C8DBC 98 C1 00 1B */ stb r6, 0x1b(r1)
+/* 801CD160 001C8DC0 98 C1 00 1C */ stb r6, 0x1c(r1)
+/* 801CD164 001C8DC4 98 C1 00 1D */ stb r6, 0x1d(r1)
+/* 801CD168 001C8DC8 98 C1 00 1E */ stb r6, 0x1e(r1)
+/* 801CD16C 001C8DCC 98 C1 00 1F */ stb r6, 0x1f(r1)
+/* 801CD170 001C8DD0 98 C1 00 20 */ stb r6, 0x20(r1)
+/* 801CD174 001C8DD4 98 C1 00 21 */ stb r6, 0x21(r1)
+/* 801CD178 001C8DD8 98 C1 00 22 */ stb r6, 0x22(r1)
+/* 801CD17C 001C8DDC 98 C1 00 23 */ stb r6, 0x23(r1)
+/* 801CD180 001C8DE0 98 C1 00 24 */ stb r6, 0x24(r1)
+/* 801CD184 001C8DE4 98 C1 00 25 */ stb r6, 0x25(r1)
+/* 801CD188 001C8DE8 98 C1 00 26 */ stb r6, 0x26(r1)
+/* 801CD18C 001C8DEC 98 C1 00 27 */ stb r6, 0x27(r1)
+/* 801CD190 001C8DF0 98 C1 00 28 */ stb r6, 0x28(r1)
+/* 801CD194 001C8DF4 98 C1 00 29 */ stb r6, 0x29(r1)
+/* 801CD198 001C8DF8 98 C1 00 2A */ stb r6, 0x2a(r1)
+/* 801CD19C 001C8DFC 98 C1 00 2B */ stb r6, 0x2b(r1)
+/* 801CD1A0 001C8E00 98 C1 00 2C */ stb r6, 0x2c(r1)
+/* 801CD1A4 001C8E04 98 C1 00 2D */ stb r6, 0x2d(r1)
+/* 801CD1A8 001C8E08 98 C1 00 2E */ stb r6, 0x2e(r1)
+/* 801CD1AC 001C8E0C 98 C1 00 2F */ stb r6, 0x2f(r1)
+/* 801CD1B0 001C8E10 98 A1 00 11 */ stb r5, 0x11(r1)
+/* 801CD1B4 001C8E14 98 01 00 14 */ stb r0, 0x14(r1)
+/* 801CD1B8 001C8E18 48 00 01 FC */ b lbl_801CD3B4
+/* 801CD1BC 001C8E1C 88 01 00 0A */ lbz r0, 0xa(r1)
+/* 801CD1C0 001C8E20 28 00 00 03 */ cmplwi r0, 3
+/* 801CD1C4 001C8E24 40 82 00 10 */ bne lbl_801CD1D4
+/* 801CD1C8 001C8E28 38 00 00 0A */ li r0, 0xa
+/* 801CD1CC 001C8E2C 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CD1D0 001C8E30 48 00 00 14 */ b lbl_801CD1E4
+lbl_801CD1D4:
+/* 801CD1D4 001C8E34 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD1D8 001C8E38 41 82 00 0C */ beq lbl_801CD1E4
+/* 801CD1DC 001C8E3C 38 00 00 FF */ li r0, 0xff
+/* 801CD1E0 001C8E40 98 01 00 0B */ stb r0, 0xb(r1)
+lbl_801CD1E4:
+/* 801CD1E4 001C8E44 8D 43 00 01 */ lbzu r10, 1(r3)
+/* 801CD1E8 001C8E48 39 60 00 00 */ li r11, 0
+/* 801CD1EC 001C8E4C 7D 4A 07 74 */ extsb r10, r10
+/* 801CD1F0 001C8E50 2C 0A 00 5E */ cmpwi r10, 0x5e
+/* 801CD1F4 001C8E54 40 82 00 10 */ bne lbl_801CD204
+/* 801CD1F8 001C8E58 8D 43 00 01 */ lbzu r10, 1(r3)
+/* 801CD1FC 001C8E5C 39 60 00 01 */ li r11, 1
+/* 801CD200 001C8E60 7D 4A 07 74 */ extsb r10, r10
+lbl_801CD204:
+/* 801CD204 001C8E64 2C 0A 00 5D */ cmpwi r10, 0x5d
+/* 801CD208 001C8E68 40 82 00 18 */ bne lbl_801CD220
+/* 801CD20C 001C8E6C 88 01 00 1B */ lbz r0, 0x1b(r1)
+/* 801CD210 001C8E70 8D 43 00 01 */ lbzu r10, 1(r3)
+/* 801CD214 001C8E74 60 00 00 20 */ ori r0, r0, 0x20
+/* 801CD218 001C8E78 98 01 00 1B */ stb r0, 0x1b(r1)
+/* 801CD21C 001C8E7C 7D 4A 07 74 */ extsb r10, r10
+lbl_801CD220:
+/* 801CD220 001C8E80 39 01 00 08 */ addi r8, r1, 8
+/* 801CD224 001C8E84 38 A0 00 01 */ li r5, 1
+/* 801CD228 001C8E88 48 00 00 80 */ b lbl_801CD2A8
+lbl_801CD22C:
+/* 801CD22C 001C8E8C 55 46 EE FE */ rlwinm r6, r10, 0x1d, 0x1b, 0x1f
+/* 801CD230 001C8E90 88 03 00 01 */ lbz r0, 1(r3)
+/* 801CD234 001C8E94 7D 28 32 14 */ add r9, r8, r6
+/* 801CD238 001C8E98 55 46 07 7E */ clrlwi r6, r10, 0x1d
+/* 801CD23C 001C8E9C 88 E9 00 08 */ lbz r7, 8(r9)
+/* 801CD240 001C8EA0 7C A6 30 30 */ slw r6, r5, r6
+/* 801CD244 001C8EA4 2C 00 00 2D */ cmpwi r0, 0x2d
+/* 801CD248 001C8EA8 7C E6 33 78 */ or r6, r7, r6
+/* 801CD24C 001C8EAC 98 C9 00 08 */ stb r6, 8(r9)
+/* 801CD250 001C8EB0 40 82 00 50 */ bne lbl_801CD2A0
+/* 801CD254 001C8EB4 89 23 00 02 */ lbz r9, 2(r3)
+/* 801CD258 001C8EB8 7D 29 07 75 */ extsb. r9, r9
+/* 801CD25C 001C8EBC 41 82 00 44 */ beq lbl_801CD2A0
+/* 801CD260 001C8EC0 2C 09 00 5D */ cmpwi r9, 0x5d
+/* 801CD264 001C8EC4 41 82 00 3C */ beq lbl_801CD2A0
+/* 801CD268 001C8EC8 48 00 00 20 */ b lbl_801CD288
+lbl_801CD26C:
+/* 801CD26C 001C8ECC 55 46 EE FE */ rlwinm r6, r10, 0x1d, 0x1b, 0x1f
+/* 801CD270 001C8ED0 55 40 07 7E */ clrlwi r0, r10, 0x1d
+/* 801CD274 001C8ED4 7C E8 32 14 */ add r7, r8, r6
+/* 801CD278 001C8ED8 88 C7 00 08 */ lbz r6, 8(r7)
+/* 801CD27C 001C8EDC 7C A0 00 30 */ slw r0, r5, r0
+/* 801CD280 001C8EE0 7C C0 03 78 */ or r0, r6, r0
+/* 801CD284 001C8EE4 98 07 00 08 */ stb r0, 8(r7)
+lbl_801CD288:
+/* 801CD288 001C8EE8 39 4A 00 01 */ addi r10, r10, 1
+/* 801CD28C 001C8EEC 7C 0A 48 00 */ cmpw r10, r9
+/* 801CD290 001C8EF0 40 81 FF DC */ ble lbl_801CD26C
+/* 801CD294 001C8EF4 8D 43 00 03 */ lbzu r10, 3(r3)
+/* 801CD298 001C8EF8 7D 4A 07 74 */ extsb r10, r10
+/* 801CD29C 001C8EFC 48 00 00 0C */ b lbl_801CD2A8
+lbl_801CD2A0:
+/* 801CD2A0 001C8F00 8D 43 00 01 */ lbzu r10, 1(r3)
+/* 801CD2A4 001C8F04 7D 4A 07 74 */ extsb r10, r10
+lbl_801CD2A8:
+/* 801CD2A8 001C8F08 2C 0A 00 00 */ cmpwi r10, 0
+/* 801CD2AC 001C8F0C 41 82 00 0C */ beq lbl_801CD2B8
+/* 801CD2B0 001C8F10 2C 0A 00 5D */ cmpwi r10, 0x5d
+/* 801CD2B4 001C8F14 40 82 FF 78 */ bne lbl_801CD22C
+lbl_801CD2B8:
+/* 801CD2B8 001C8F18 2C 0A 00 00 */ cmpwi r10, 0
+/* 801CD2BC 001C8F1C 40 82 00 10 */ bne lbl_801CD2CC
+/* 801CD2C0 001C8F20 38 00 00 FF */ li r0, 0xff
+/* 801CD2C4 001C8F24 98 01 00 0B */ stb r0, 0xb(r1)
+/* 801CD2C8 001C8F28 48 00 00 EC */ b lbl_801CD3B4
+lbl_801CD2CC:
+/* 801CD2CC 001C8F2C 2C 0B 00 00 */ cmpwi r11, 0
+/* 801CD2D0 001C8F30 41 82 00 E4 */ beq lbl_801CD3B4
+/* 801CD2D4 001C8F34 38 00 00 02 */ li r0, 2
+/* 801CD2D8 001C8F38 38 A1 00 10 */ addi r5, r1, 0x10
+/* 801CD2DC 001C8F3C 7C 09 03 A6 */ mtctr r0
+lbl_801CD2E0:
+/* 801CD2E0 001C8F40 88 05 00 00 */ lbz r0, 0(r5)
+/* 801CD2E4 001C8F44 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD2E8 001C8F48 98 05 00 00 */ stb r0, 0(r5)
+/* 801CD2EC 001C8F4C 88 05 00 01 */ lbz r0, 1(r5)
+/* 801CD2F0 001C8F50 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD2F4 001C8F54 98 05 00 01 */ stb r0, 1(r5)
+/* 801CD2F8 001C8F58 88 05 00 02 */ lbz r0, 2(r5)
+/* 801CD2FC 001C8F5C 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD300 001C8F60 98 05 00 02 */ stb r0, 2(r5)
+/* 801CD304 001C8F64 88 05 00 03 */ lbz r0, 3(r5)
+/* 801CD308 001C8F68 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD30C 001C8F6C 98 05 00 03 */ stb r0, 3(r5)
+/* 801CD310 001C8F70 88 05 00 04 */ lbz r0, 4(r5)
+/* 801CD314 001C8F74 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD318 001C8F78 98 05 00 04 */ stb r0, 4(r5)
+/* 801CD31C 001C8F7C 88 05 00 05 */ lbz r0, 5(r5)
+/* 801CD320 001C8F80 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD324 001C8F84 98 05 00 05 */ stb r0, 5(r5)
+/* 801CD328 001C8F88 88 05 00 06 */ lbz r0, 6(r5)
+/* 801CD32C 001C8F8C 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD330 001C8F90 98 05 00 06 */ stb r0, 6(r5)
+/* 801CD334 001C8F94 88 05 00 07 */ lbz r0, 7(r5)
+/* 801CD338 001C8F98 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD33C 001C8F9C 98 05 00 07 */ stb r0, 7(r5)
+/* 801CD340 001C8FA0 88 05 00 08 */ lbz r0, 8(r5)
+/* 801CD344 001C8FA4 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD348 001C8FA8 98 05 00 08 */ stb r0, 8(r5)
+/* 801CD34C 001C8FAC 88 05 00 09 */ lbz r0, 9(r5)
+/* 801CD350 001C8FB0 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD354 001C8FB4 98 05 00 09 */ stb r0, 9(r5)
+/* 801CD358 001C8FB8 88 05 00 0A */ lbz r0, 0xa(r5)
+/* 801CD35C 001C8FBC 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD360 001C8FC0 98 05 00 0A */ stb r0, 0xa(r5)
+/* 801CD364 001C8FC4 88 05 00 0B */ lbz r0, 0xb(r5)
+/* 801CD368 001C8FC8 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD36C 001C8FCC 98 05 00 0B */ stb r0, 0xb(r5)
+/* 801CD370 001C8FD0 88 05 00 0C */ lbz r0, 0xc(r5)
+/* 801CD374 001C8FD4 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD378 001C8FD8 98 05 00 0C */ stb r0, 0xc(r5)
+/* 801CD37C 001C8FDC 88 05 00 0D */ lbz r0, 0xd(r5)
+/* 801CD380 001C8FE0 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD384 001C8FE4 98 05 00 0D */ stb r0, 0xd(r5)
+/* 801CD388 001C8FE8 88 05 00 0E */ lbz r0, 0xe(r5)
+/* 801CD38C 001C8FEC 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD390 001C8FF0 98 05 00 0E */ stb r0, 0xe(r5)
+/* 801CD394 001C8FF4 88 05 00 0F */ lbz r0, 0xf(r5)
+/* 801CD398 001C8FF8 7C 00 00 F8 */ nor r0, r0, r0
+/* 801CD39C 001C8FFC 98 05 00 0F */ stb r0, 0xf(r5)
+/* 801CD3A0 001C9000 38 A5 00 10 */ addi r5, r5, 0x10
+/* 801CD3A4 001C9004 42 00 FF 3C */ bdnz lbl_801CD2E0
+/* 801CD3A8 001C9008 48 00 00 0C */ b lbl_801CD3B4
+lbl_801CD3AC:
+/* 801CD3AC 001C900C 38 00 00 FF */ li r0, 0xff
+/* 801CD3B0 001C9010 98 01 00 0B */ stb r0, 0xb(r1)
+lbl_801CD3B4:
+/* 801CD3B4 001C9014 80 A1 00 08 */ lwz r5, 8(r1)
+/* 801CD3B8 001C9018 38 63 00 01 */ addi r3, r3, 1
+/* 801CD3BC 001C901C 80 01 00 0C */ lwz r0, 0xc(r1)
+/* 801CD3C0 001C9020 90 A4 00 00 */ stw r5, 0(r4)
+/* 801CD3C4 001C9024 90 04 00 04 */ stw r0, 4(r4)
+/* 801CD3C8 001C9028 80 A1 00 10 */ lwz r5, 0x10(r1)
+/* 801CD3CC 001C902C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CD3D0 001C9030 90 A4 00 08 */ stw r5, 8(r4)
+/* 801CD3D4 001C9034 90 04 00 0C */ stw r0, 0xc(r4)
+/* 801CD3D8 001C9038 80 A1 00 18 */ lwz r5, 0x18(r1)
+/* 801CD3DC 001C903C 80 01 00 1C */ lwz r0, 0x1c(r1)
+/* 801CD3E0 001C9040 90 A4 00 10 */ stw r5, 0x10(r4)
+/* 801CD3E4 001C9044 90 04 00 14 */ stw r0, 0x14(r4)
+/* 801CD3E8 001C9048 80 A1 00 20 */ lwz r5, 0x20(r1)
+/* 801CD3EC 001C904C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 801CD3F0 001C9050 90 A4 00 18 */ stw r5, 0x18(r4)
+/* 801CD3F4 001C9054 90 04 00 1C */ stw r0, 0x1c(r4)
+/* 801CD3F8 001C9058 80 A1 00 28 */ lwz r5, 0x28(r1)
+/* 801CD3FC 001C905C 80 01 00 2C */ lwz r0, 0x2c(r1)
+/* 801CD400 001C9060 90 A4 00 20 */ stw r5, 0x20(r4)
+/* 801CD404 001C9064 90 04 00 24 */ stw r0, 0x24(r4)
+lbl_801CD408:
+/* 801CD408 001C9068 83 E1 00 3C */ lwz r31, 0x3c(r1)
+/* 801CD40C 001C906C 83 C1 00 38 */ lwz r30, 0x38(r1)
+/* 801CD410 001C9070 38 21 00 40 */ addi r1, r1, 0x40
+/* 801CD414 001C9074 4E 80 00 20 */ blr
+
+.global __sformatter
+__sformatter:
+/* 801CD418 001C9078 94 21 FF 50 */ stwu r1, -0xb0(r1)
+/* 801CD41C 001C907C 7C 08 02 A6 */ mflr r0
+/* 801CD420 001C9080 90 01 00 B4 */ stw r0, 0xb4(r1)
+/* 801CD424 001C9084 39 61 00 B0 */ addi r11, r1, 0xb0
+/* 801CD428 001C9088 4B FF 9C D1 */ bl _savegpr_15
+/* 801CD42C 001C908C 38 00 00 00 */ li r0, 0
+/* 801CD430 001C9090 3D 00 80 42 */ lis r8, lbl_80422D48@ha
+/* 801CD434 001C9094 90 01 00 5C */ stw r0, 0x5c(r1)
+/* 801CD438 001C9098 38 00 00 00 */ li r0, 0
+/* 801CD43C 001C909C 7C 7A 1B 78 */ mr r26, r3
+/* 801CD440 001C90A0 7C 9B 23 78 */ mr r27, r4
+/* 801CD444 001C90A4 90 C1 00 08 */ stw r6, 8(r1)
+/* 801CD448 001C90A8 7C B1 2B 78 */ mr r17, r5
+/* 801CD44C 001C90AC 7C FC 3B 78 */ mr r28, r7
+/* 801CD450 001C90B0 3B 21 00 20 */ addi r25, r1, 0x20
+/* 801CD454 001C90B4 90 01 00 58 */ stw r0, 0x58(r1)
+/* 801CD458 001C90B8 3A E8 2D 48 */ addi r23, r8, lbl_80422D48@l
+/* 801CD45C 001C90BC 3B A0 00 00 */ li r29, 0
+/* 801CD460 001C90C0 3A A0 00 00 */ li r21, 0
+/* 801CD464 001C90C4 3A 80 00 00 */ li r20, 0
+/* 801CD468 001C90C8 3A 60 00 00 */ li r19, 0
+/* 801CD46C 001C90CC 3B 00 00 01 */ li r24, 1
+/* 801CD470 001C90D0 48 00 0C B0 */ b lbl_801CE120
+lbl_801CD474:
+/* 801CD474 001C90D4 2C 16 00 00 */ cmpwi r22, 0
+/* 801CD478 001C90D8 38 00 00 00 */ li r0, 0
+/* 801CD47C 001C90DC 41 80 00 0C */ blt lbl_801CD488
+/* 801CD480 001C90E0 2C 16 01 00 */ cmpwi r22, 0x100
+/* 801CD484 001C90E4 41 80 00 08 */ blt lbl_801CD48C
+lbl_801CD488:
+/* 801CD488 001C90E8 38 00 00 01 */ li r0, 1
+lbl_801CD48C:
+/* 801CD48C 001C90EC 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD490 001C90F0 41 82 00 0C */ beq lbl_801CD49C
+/* 801CD494 001C90F4 38 00 00 00 */ li r0, 0
+/* 801CD498 001C90F8 48 00 00 18 */ b lbl_801CD4B0
+lbl_801CD49C:
+/* 801CD49C 001C90FC 80 77 00 38 */ lwz r3, 0x38(r23)
+/* 801CD4A0 001C9100 56 C0 08 3C */ slwi r0, r22, 1
+/* 801CD4A4 001C9104 80 63 00 08 */ lwz r3, 8(r3)
+/* 801CD4A8 001C9108 7C 03 02 2E */ lhzx r0, r3, r0
+/* 801CD4AC 001C910C 54 00 05 EE */ rlwinm r0, r0, 0, 0x17, 0x17
+lbl_801CD4B0:
+/* 801CD4B0 001C9110 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD4B4 001C9114 41 82 00 DC */ beq lbl_801CD590
+/* 801CD4B8 001C9118 80 97 00 38 */ lwz r4, 0x38(r23)
+lbl_801CD4BC:
+/* 801CD4BC 001C911C 8C 71 00 01 */ lbzu r3, 1(r17)
+/* 801CD4C0 001C9120 38 00 00 00 */ li r0, 0
+/* 801CD4C4 001C9124 7C 65 07 75 */ extsb. r5, r3
+/* 801CD4C8 001C9128 41 80 00 0C */ blt lbl_801CD4D4
+/* 801CD4CC 001C912C 2C 05 01 00 */ cmpwi r5, 0x100
+/* 801CD4D0 001C9130 41 80 00 08 */ blt lbl_801CD4D8
+lbl_801CD4D4:
+/* 801CD4D4 001C9134 38 00 00 01 */ li r0, 1
+lbl_801CD4D8:
+/* 801CD4D8 001C9138 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD4DC 001C913C 41 82 00 0C */ beq lbl_801CD4E8
+/* 801CD4E0 001C9140 38 00 00 00 */ li r0, 0
+/* 801CD4E4 001C9144 48 00 00 14 */ b lbl_801CD4F8
+lbl_801CD4E8:
+/* 801CD4E8 001C9148 80 64 00 08 */ lwz r3, 8(r4)
+/* 801CD4EC 001C914C 54 A0 08 3C */ slwi r0, r5, 1
+/* 801CD4F0 001C9150 7C 03 02 2E */ lhzx r0, r3, r0
+/* 801CD4F4 001C9154 54 00 05 EE */ rlwinm r0, r0, 0, 0x17, 0x17
+lbl_801CD4F8:
+/* 801CD4F8 001C9158 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD4FC 001C915C 40 82 FF C0 */ bne lbl_801CD4BC
+/* 801CD500 001C9160 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CD504 001C9164 40 82 0C 1C */ bne lbl_801CE120
+/* 801CD508 001C9168 48 00 00 08 */ b lbl_801CD510
+lbl_801CD50C:
+/* 801CD50C 001C916C 3A B5 00 01 */ addi r21, r21, 1
+lbl_801CD510:
+/* 801CD510 001C9170 7F 4C D3 78 */ mr r12, r26
+/* 801CD514 001C9174 7F 63 DB 78 */ mr r3, r27
+/* 801CD518 001C9178 38 80 00 00 */ li r4, 0
+/* 801CD51C 001C917C 38 A0 00 00 */ li r5, 0
+/* 801CD520 001C9180 7D 89 03 A6 */ mtctr r12
+/* 801CD524 001C9184 4E 80 04 21 */ bctrl
+/* 801CD528 001C9188 7C 65 07 75 */ extsb. r5, r3
+/* 801CD52C 001C918C 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CD530 001C9190 38 00 00 00 */ li r0, 0
+/* 801CD534 001C9194 41 80 00 0C */ blt lbl_801CD540
+/* 801CD538 001C9198 2C 05 01 00 */ cmpwi r5, 0x100
+/* 801CD53C 001C919C 41 80 00 08 */ blt lbl_801CD544
+lbl_801CD540:
+/* 801CD540 001C91A0 38 00 00 01 */ li r0, 1
+lbl_801CD544:
+/* 801CD544 001C91A4 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD548 001C91A8 41 82 00 0C */ beq lbl_801CD554
+/* 801CD54C 001C91AC 38 00 00 00 */ li r0, 0
+/* 801CD550 001C91B0 48 00 00 18 */ b lbl_801CD568
+lbl_801CD554:
+/* 801CD554 001C91B4 80 97 00 38 */ lwz r4, 0x38(r23)
+/* 801CD558 001C91B8 54 A0 08 3C */ slwi r0, r5, 1
+/* 801CD55C 001C91BC 80 84 00 08 */ lwz r4, 8(r4)
+/* 801CD560 001C91C0 7C 04 02 2E */ lhzx r0, r4, r0
+/* 801CD564 001C91C4 54 00 05 EE */ rlwinm r0, r0, 0, 0x17, 0x17
+lbl_801CD568:
+/* 801CD568 001C91C8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD56C 001C91CC 40 82 FF A0 */ bne lbl_801CD50C
+/* 801CD570 001C91D0 54 64 06 3E */ clrlwi r4, r3, 0x18
+/* 801CD574 001C91D4 7F 4C D3 78 */ mr r12, r26
+/* 801CD578 001C91D8 7F 63 DB 78 */ mr r3, r27
+/* 801CD57C 001C91DC 38 A0 00 01 */ li r5, 1
+/* 801CD580 001C91E0 7C 84 07 74 */ extsb r4, r4
+/* 801CD584 001C91E4 7D 89 03 A6 */ mtctr r12
+/* 801CD588 001C91E8 4E 80 04 21 */ bctrl
+/* 801CD58C 001C91EC 48 00 0B 94 */ b lbl_801CE120
+lbl_801CD590:
+/* 801CD590 001C91F0 2C 16 00 25 */ cmpwi r22, 0x25
+/* 801CD594 001C91F4 41 82 00 74 */ beq lbl_801CD608
+/* 801CD598 001C91F8 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CD59C 001C91FC 40 82 00 6C */ bne lbl_801CD608
+/* 801CD5A0 001C9200 7F 4C D3 78 */ mr r12, r26
+/* 801CD5A4 001C9204 7F 63 DB 78 */ mr r3, r27
+/* 801CD5A8 001C9208 38 80 00 00 */ li r4, 0
+/* 801CD5AC 001C920C 38 A0 00 00 */ li r5, 0
+/* 801CD5B0 001C9210 7D 89 03 A6 */ mtctr r12
+/* 801CD5B4 001C9214 4E 80 04 21 */ bctrl
+/* 801CD5B8 001C9218 7C 64 07 74 */ extsb r4, r3
+/* 801CD5BC 001C921C 56 C0 06 3E */ clrlwi r0, r22, 0x18
+/* 801CD5C0 001C9220 7C 00 20 00 */ cmpw r0, r4
+/* 801CD5C4 001C9224 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CD5C8 001C9228 41 82 00 34 */ beq lbl_801CD5FC
+/* 801CD5CC 001C922C 54 64 06 3E */ clrlwi r4, r3, 0x18
+/* 801CD5D0 001C9230 7F 4C D3 78 */ mr r12, r26
+/* 801CD5D4 001C9234 7F 63 DB 78 */ mr r3, r27
+/* 801CD5D8 001C9238 38 A0 00 01 */ li r5, 1
+/* 801CD5DC 001C923C 7C 84 07 74 */ extsb r4, r4
+/* 801CD5E0 001C9240 7D 89 03 A6 */ mtctr r12
+/* 801CD5E4 001C9244 4E 80 04 21 */ bctrl
+/* 801CD5E8 001C9248 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CD5EC 001C924C 41 82 0B 40 */ beq lbl_801CE12C
+/* 801CD5F0 001C9250 3B A0 00 01 */ li r29, 1
+/* 801CD5F4 001C9254 3A 31 00 01 */ addi r17, r17, 1
+/* 801CD5F8 001C9258 48 00 0B 28 */ b lbl_801CE120
+lbl_801CD5FC:
+/* 801CD5FC 001C925C 3A B5 00 01 */ addi r21, r21, 1
+/* 801CD600 001C9260 3A 31 00 01 */ addi r17, r17, 1
+/* 801CD604 001C9264 48 00 0B 1C */ b lbl_801CE120
+lbl_801CD608:
+/* 801CD608 001C9268 7E 23 8B 78 */ mr r3, r17
+/* 801CD60C 001C926C 38 81 00 20 */ addi r4, r1, 0x20
+/* 801CD610 001C9270 4B FF F7 55 */ bl parse_format
+/* 801CD614 001C9274 88 01 00 20 */ lbz r0, 0x20(r1)
+/* 801CD618 001C9278 7C 71 1B 78 */ mr r17, r3
+/* 801CD61C 001C927C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD620 001C9280 40 82 00 24 */ bne lbl_801CD644
+/* 801CD624 001C9284 88 01 00 23 */ lbz r0, 0x23(r1)
+/* 801CD628 001C9288 28 00 00 25 */ cmplwi r0, 0x25
+/* 801CD62C 001C928C 41 82 00 18 */ beq lbl_801CD644
+/* 801CD630 001C9290 80 61 00 08 */ lwz r3, 8(r1)
+/* 801CD634 001C9294 38 80 00 01 */ li r4, 1
+/* 801CD638 001C9298 4B FF 95 49 */ bl __va_arg
+/* 801CD63C 001C929C 82 C3 00 00 */ lwz r22, 0(r3)
+/* 801CD640 001C92A0 48 00 00 08 */ b lbl_801CD648
+lbl_801CD644:
+/* 801CD644 001C92A4 3A C0 00 00 */ li r22, 0
+lbl_801CD648:
+/* 801CD648 001C92A8 88 01 00 23 */ lbz r0, 0x23(r1)
+/* 801CD64C 001C92AC 28 00 00 6E */ cmplwi r0, 0x6e
+/* 801CD650 001C92B0 41 82 00 38 */ beq lbl_801CD688
+/* 801CD654 001C92B4 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CD658 001C92B8 40 82 00 30 */ bne lbl_801CD688
+/* 801CD65C 001C92BC 7F 4C D3 78 */ mr r12, r26
+/* 801CD660 001C92C0 7F 63 DB 78 */ mr r3, r27
+/* 801CD664 001C92C4 38 80 00 00 */ li r4, 0
+/* 801CD668 001C92C8 38 A0 00 02 */ li r5, 2
+/* 801CD66C 001C92CC 7D 89 03 A6 */ mtctr r12
+/* 801CD670 001C92D0 4E 80 04 21 */ bctrl
+/* 801CD674 001C92D4 2C 03 00 00 */ cmpwi r3, 0
+/* 801CD678 001C92D8 41 82 00 10 */ beq lbl_801CD688
+/* 801CD67C 001C92DC 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CD680 001C92E0 41 82 0A AC */ beq lbl_801CE12C
+/* 801CD684 001C92E4 3B A0 00 01 */ li r29, 1
+lbl_801CD688:
+/* 801CD688 001C92E8 88 01 00 23 */ lbz r0, 0x23(r1)
+/* 801CD68C 001C92EC 2C 00 00 64 */ cmpwi r0, 0x64
+/* 801CD690 001C92F0 41 82 00 C4 */ beq lbl_801CD754
+/* 801CD694 001C92F4 40 80 00 60 */ bge lbl_801CD6F4
+/* 801CD698 001C92F8 2C 00 00 58 */ cmpwi r0, 0x58
+/* 801CD69C 001C92FC 41 82 02 7C */ beq lbl_801CD918
+/* 801CD6A0 001C9300 40 80 00 30 */ bge lbl_801CD6D0
+/* 801CD6A4 001C9304 2C 00 00 41 */ cmpwi r0, 0x41
+/* 801CD6A8 001C9308 41 82 03 F8 */ beq lbl_801CDAA0
+/* 801CD6AC 001C930C 40 80 00 10 */ bge lbl_801CD6BC
+/* 801CD6B0 001C9310 2C 00 00 25 */ cmpwi r0, 0x25
+/* 801CD6B4 001C9314 41 82 06 48 */ beq lbl_801CDCFC
+/* 801CD6B8 001C9318 48 00 0A 74 */ b lbl_801CE12C
+lbl_801CD6BC:
+/* 801CD6BC 001C931C 2C 00 00 48 */ cmpwi r0, 0x48
+/* 801CD6C0 001C9320 40 80 0A 6C */ bge lbl_801CE12C
+/* 801CD6C4 001C9324 2C 00 00 45 */ cmpwi r0, 0x45
+/* 801CD6C8 001C9328 40 80 03 D8 */ bge lbl_801CDAA0
+/* 801CD6CC 001C932C 48 00 0A 60 */ b lbl_801CE12C
+lbl_801CD6D0:
+/* 801CD6D0 001C9330 2C 00 00 61 */ cmpwi r0, 0x61
+/* 801CD6D4 001C9334 41 82 03 CC */ beq lbl_801CDAA0
+/* 801CD6D8 001C9338 40 80 00 10 */ bge lbl_801CD6E8
+/* 801CD6DC 001C933C 2C 00 00 5B */ cmpwi r0, 0x5b
+/* 801CD6E0 001C9340 41 82 07 70 */ beq lbl_801CDE50
+/* 801CD6E4 001C9344 48 00 0A 48 */ b lbl_801CE12C
+lbl_801CD6E8:
+/* 801CD6E8 001C9348 2C 00 00 63 */ cmpwi r0, 0x63
+/* 801CD6EC 001C934C 40 80 04 64 */ bge lbl_801CDB50
+/* 801CD6F0 001C9350 48 00 0A 3C */ b lbl_801CE12C
+lbl_801CD6F4:
+/* 801CD6F4 001C9354 2C 00 00 73 */ cmpwi r0, 0x73
+/* 801CD6F8 001C9358 41 82 06 B0 */ beq lbl_801CDDA8
+/* 801CD6FC 001C935C 40 80 00 34 */ bge lbl_801CD730
+/* 801CD700 001C9360 2C 00 00 6E */ cmpwi r0, 0x6e
+/* 801CD704 001C9364 41 82 09 B4 */ beq lbl_801CE0B8
+/* 801CD708 001C9368 40 80 00 1C */ bge lbl_801CD724
+/* 801CD70C 001C936C 2C 00 00 69 */ cmpwi r0, 0x69
+/* 801CD710 001C9370 41 82 00 4C */ beq lbl_801CD75C
+/* 801CD714 001C9374 40 80 0A 18 */ bge lbl_801CE12C
+/* 801CD718 001C9378 2C 00 00 68 */ cmpwi r0, 0x68
+/* 801CD71C 001C937C 40 80 0A 10 */ bge lbl_801CE12C
+/* 801CD720 001C9380 48 00 03 80 */ b lbl_801CDAA0
+lbl_801CD724:
+/* 801CD724 001C9384 2C 00 00 70 */ cmpwi r0, 0x70
+/* 801CD728 001C9388 40 80 0A 04 */ bge lbl_801CE12C
+/* 801CD72C 001C938C 48 00 01 DC */ b lbl_801CD908
+lbl_801CD730:
+/* 801CD730 001C9390 2C 00 00 78 */ cmpwi r0, 0x78
+/* 801CD734 001C9394 41 82 01 E4 */ beq lbl_801CD918
+/* 801CD738 001C9398 40 80 00 10 */ bge lbl_801CD748
+/* 801CD73C 001C939C 2C 00 00 75 */ cmpwi r0, 0x75
+/* 801CD740 001C93A0 41 82 01 D0 */ beq lbl_801CD910
+/* 801CD744 001C93A4 48 00 09 E8 */ b lbl_801CE12C
+lbl_801CD748:
+/* 801CD748 001C93A8 2C 00 00 FF */ cmpwi r0, 0xff
+/* 801CD74C 001C93AC 41 82 09 E0 */ beq lbl_801CE12C
+/* 801CD750 001C93B0 48 00 09 DC */ b lbl_801CE12C
+lbl_801CD754:
+/* 801CD754 001C93B4 38 60 00 0A */ li r3, 0xa
+/* 801CD758 001C93B8 48 00 00 08 */ b lbl_801CD760
+lbl_801CD75C:
+/* 801CD75C 001C93BC 38 60 00 00 */ li r3, 0
+lbl_801CD760:
+/* 801CD760 001C93C0 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CD764 001C93C4 41 82 00 1C */ beq lbl_801CD780
+/* 801CD768 001C93C8 38 00 00 00 */ li r0, 0
+/* 801CD76C 001C93CC 3A 00 00 00 */ li r16, 0
+/* 801CD770 001C93D0 90 01 00 5C */ stw r0, 0x5c(r1)
+/* 801CD774 001C93D4 38 00 00 00 */ li r0, 0
+/* 801CD778 001C93D8 90 01 00 58 */ stw r0, 0x58(r1)
+/* 801CD77C 001C93DC 48 00 00 F8 */ b lbl_801CD874
+lbl_801CD780:
+/* 801CD780 001C93E0 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CD784 001C93E4 28 00 00 07 */ cmplwi r0, 7
+/* 801CD788 001C93E8 41 82 00 0C */ beq lbl_801CD794
+/* 801CD78C 001C93EC 28 00 00 04 */ cmplwi r0, 4
+/* 801CD790 001C93F0 40 82 00 2C */ bne lbl_801CD7BC
+lbl_801CD794:
+/* 801CD794 001C93F4 80 81 00 24 */ lwz r4, 0x24(r1)
+/* 801CD798 001C93F8 7F 45 D3 78 */ mr r5, r26
+/* 801CD79C 001C93FC 7F 66 DB 78 */ mr r6, r27
+/* 801CD7A0 001C9400 38 E1 00 18 */ addi r7, r1, 0x18
+/* 801CD7A4 001C9404 39 01 00 14 */ addi r8, r1, 0x14
+/* 801CD7A8 001C9408 39 21 00 10 */ addi r9, r1, 0x10
+/* 801CD7AC 001C940C 48 00 29 09 */ bl func_801D00B4
+/* 801CD7B0 001C9410 90 81 00 54 */ stw r4, 0x54(r1)
+/* 801CD7B4 001C9414 90 61 00 50 */ stw r3, 0x50(r1)
+/* 801CD7B8 001C9418 48 00 00 24 */ b lbl_801CD7DC
+lbl_801CD7BC:
+/* 801CD7BC 001C941C 80 81 00 24 */ lwz r4, 0x24(r1)
+/* 801CD7C0 001C9420 7F 45 D3 78 */ mr r5, r26
+/* 801CD7C4 001C9424 7F 66 DB 78 */ mr r6, r27
+/* 801CD7C8 001C9428 38 E1 00 18 */ addi r7, r1, 0x18
+/* 801CD7CC 001C942C 39 01 00 14 */ addi r8, r1, 0x14
+/* 801CD7D0 001C9430 39 21 00 10 */ addi r9, r1, 0x10
+/* 801CD7D4 001C9434 48 00 24 B1 */ bl func_801CFC84
+/* 801CD7D8 001C9438 7C 6F 1B 78 */ mr r15, r3
+lbl_801CD7DC:
+/* 801CD7DC 001C943C 80 61 00 18 */ lwz r3, 0x18(r1)
+/* 801CD7E0 001C9440 2C 03 00 00 */ cmpwi r3, 0
+/* 801CD7E4 001C9444 40 82 00 28 */ bne lbl_801CD80C
+/* 801CD7E8 001C9448 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CD7EC 001C944C 41 82 09 40 */ beq lbl_801CE12C
+/* 801CD7F0 001C9450 38 00 00 00 */ li r0, 0
+/* 801CD7F4 001C9454 3B A0 00 01 */ li r29, 1
+/* 801CD7F8 001C9458 90 01 00 5C */ stw r0, 0x5c(r1)
+/* 801CD7FC 001C945C 38 00 00 00 */ li r0, 0
+/* 801CD800 001C9460 3A 00 00 00 */ li r16, 0
+/* 801CD804 001C9464 90 01 00 58 */ stw r0, 0x58(r1)
+/* 801CD808 001C9468 48 00 00 6C */ b lbl_801CD874
+lbl_801CD80C:
+/* 801CD80C 001C946C 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CD810 001C9470 7E B5 1A 14 */ add r21, r21, r3
+/* 801CD814 001C9474 28 00 00 07 */ cmplwi r0, 7
+/* 801CD818 001C9478 41 82 00 0C */ beq lbl_801CD824
+/* 801CD81C 001C947C 28 00 00 04 */ cmplwi r0, 4
+/* 801CD820 001C9480 40 82 00 40 */ bne lbl_801CD860
+lbl_801CD824:
+/* 801CD824 001C9484 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CD828 001C9488 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD82C 001C948C 41 82 00 20 */ beq lbl_801CD84C
+/* 801CD830 001C9490 80 01 00 54 */ lwz r0, 0x54(r1)
+/* 801CD834 001C9494 20 00 00 00 */ subfic r0, r0, 0
+/* 801CD838 001C9498 90 01 00 5C */ stw r0, 0x5c(r1)
+/* 801CD83C 001C949C 80 01 00 50 */ lwz r0, 0x50(r1)
+/* 801CD840 001C94A0 7C 00 01 90 */ subfze r0, r0
+/* 801CD844 001C94A4 90 01 00 58 */ stw r0, 0x58(r1)
+/* 801CD848 001C94A8 48 00 00 2C */ b lbl_801CD874
+lbl_801CD84C:
+/* 801CD84C 001C94AC 80 01 00 54 */ lwz r0, 0x54(r1)
+/* 801CD850 001C94B0 90 01 00 5C */ stw r0, 0x5c(r1)
+/* 801CD854 001C94B4 80 01 00 50 */ lwz r0, 0x50(r1)
+/* 801CD858 001C94B8 90 01 00 58 */ stw r0, 0x58(r1)
+/* 801CD85C 001C94BC 48 00 00 18 */ b lbl_801CD874
+lbl_801CD860:
+/* 801CD860 001C94C0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CD864 001C94C4 7D F0 7B 78 */ mr r16, r15
+/* 801CD868 001C94C8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD86C 001C94CC 41 82 00 08 */ beq lbl_801CD874
+/* 801CD870 001C94D0 7E 0F 00 D0 */ neg r16, r15
+lbl_801CD874:
+/* 801CD874 001C94D4 2C 16 00 00 */ cmpwi r22, 0
+/* 801CD878 001C94D8 41 82 00 88 */ beq lbl_801CD900
+/* 801CD87C 001C94DC 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CD880 001C94E0 28 00 00 07 */ cmplwi r0, 7
+/* 801CD884 001C94E4 41 81 00 70 */ bgt lbl_801CD8F4
+/* 801CD888 001C94E8 3C 60 80 42 */ lis r3, lbl_804230E0@ha
+/* 801CD88C 001C94EC 54 00 10 3A */ slwi r0, r0, 2
+/* 801CD890 001C94F0 38 63 30 E0 */ addi r3, r3, lbl_804230E0@l
+/* 801CD894 001C94F4 7C 63 00 2E */ lwzx r3, r3, r0
+/* 801CD898 001C94F8 7C 69 03 A6 */ mtctr r3
+/* 801CD89C 001C94FC 4E 80 04 20 */ bctr
+/* 801CD8A0 001C9500 92 16 00 00 */ stw r16, 0(r22)
+/* 801CD8A4 001C9504 48 00 00 50 */ b lbl_801CD8F4
+/* 801CD8A8 001C9508 9A 16 00 00 */ stb r16, 0(r22)
+/* 801CD8AC 001C950C 48 00 00 48 */ b lbl_801CD8F4
+/* 801CD8B0 001C9510 B2 16 00 00 */ sth r16, 0(r22)
+/* 801CD8B4 001C9514 48 00 00 40 */ b lbl_801CD8F4
+/* 801CD8B8 001C9518 92 16 00 00 */ stw r16, 0(r22)
+/* 801CD8BC 001C951C 48 00 00 38 */ b lbl_801CD8F4
+/* 801CD8C0 001C9520 80 01 00 5C */ lwz r0, 0x5c(r1)
+/* 801CD8C4 001C9524 90 16 00 04 */ stw r0, 4(r22)
+/* 801CD8C8 001C9528 80 01 00 58 */ lwz r0, 0x58(r1)
+/* 801CD8CC 001C952C 90 16 00 00 */ stw r0, 0(r22)
+/* 801CD8D0 001C9530 48 00 00 24 */ b lbl_801CD8F4
+/* 801CD8D4 001C9534 92 16 00 00 */ stw r16, 0(r22)
+/* 801CD8D8 001C9538 48 00 00 1C */ b lbl_801CD8F4
+/* 801CD8DC 001C953C 92 16 00 00 */ stw r16, 0(r22)
+/* 801CD8E0 001C9540 48 00 00 14 */ b lbl_801CD8F4
+/* 801CD8E4 001C9544 80 01 00 5C */ lwz r0, 0x5c(r1)
+/* 801CD8E8 001C9548 90 16 00 04 */ stw r0, 4(r22)
+/* 801CD8EC 001C954C 80 01 00 58 */ lwz r0, 0x58(r1)
+/* 801CD8F0 001C9550 90 16 00 00 */ stw r0, 0(r22)
+lbl_801CD8F4:
+/* 801CD8F4 001C9554 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CD8F8 001C9558 40 82 00 08 */ bne lbl_801CD900
+/* 801CD8FC 001C955C 3A 94 00 01 */ addi r20, r20, 1
+lbl_801CD900:
+/* 801CD900 001C9560 3A 73 00 01 */ addi r19, r19, 1
+/* 801CD904 001C9564 48 00 08 1C */ b lbl_801CE120
+lbl_801CD908:
+/* 801CD908 001C9568 38 60 00 08 */ li r3, 8
+/* 801CD90C 001C956C 48 00 00 10 */ b lbl_801CD91C
+lbl_801CD910:
+/* 801CD910 001C9570 38 60 00 0A */ li r3, 0xa
+/* 801CD914 001C9574 48 00 00 08 */ b lbl_801CD91C
+lbl_801CD918:
+/* 801CD918 001C9578 38 60 00 10 */ li r3, 0x10
+lbl_801CD91C:
+/* 801CD91C 001C957C 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CD920 001C9580 41 82 00 1C */ beq lbl_801CD93C
+/* 801CD924 001C9584 38 00 00 00 */ li r0, 0
+/* 801CD928 001C9588 39 E0 00 00 */ li r15, 0
+/* 801CD92C 001C958C 90 01 00 54 */ stw r0, 0x54(r1)
+/* 801CD930 001C9590 38 00 00 00 */ li r0, 0
+/* 801CD934 001C9594 90 01 00 50 */ stw r0, 0x50(r1)
+/* 801CD938 001C9598 48 00 00 D4 */ b lbl_801CDA0C
+lbl_801CD93C:
+/* 801CD93C 001C959C 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CD940 001C95A0 28 00 00 07 */ cmplwi r0, 7
+/* 801CD944 001C95A4 41 82 00 0C */ beq lbl_801CD950
+/* 801CD948 001C95A8 28 00 00 04 */ cmplwi r0, 4
+/* 801CD94C 001C95AC 40 82 00 2C */ bne lbl_801CD978
+lbl_801CD950:
+/* 801CD950 001C95B0 80 81 00 24 */ lwz r4, 0x24(r1)
+/* 801CD954 001C95B4 7F 45 D3 78 */ mr r5, r26
+/* 801CD958 001C95B8 7F 66 DB 78 */ mr r6, r27
+/* 801CD95C 001C95BC 38 E1 00 18 */ addi r7, r1, 0x18
+/* 801CD960 001C95C0 39 01 00 14 */ addi r8, r1, 0x14
+/* 801CD964 001C95C4 39 21 00 10 */ addi r9, r1, 0x10
+/* 801CD968 001C95C8 48 00 27 4D */ bl func_801D00B4
+/* 801CD96C 001C95CC 90 81 00 54 */ stw r4, 0x54(r1)
+/* 801CD970 001C95D0 90 61 00 50 */ stw r3, 0x50(r1)
+/* 801CD974 001C95D4 48 00 00 24 */ b lbl_801CD998
+lbl_801CD978:
+/* 801CD978 001C95D8 80 81 00 24 */ lwz r4, 0x24(r1)
+/* 801CD97C 001C95DC 7F 45 D3 78 */ mr r5, r26
+/* 801CD980 001C95E0 7F 66 DB 78 */ mr r6, r27
+/* 801CD984 001C95E4 38 E1 00 18 */ addi r7, r1, 0x18
+/* 801CD988 001C95E8 39 01 00 14 */ addi r8, r1, 0x14
+/* 801CD98C 001C95EC 39 21 00 10 */ addi r9, r1, 0x10
+/* 801CD990 001C95F0 48 00 22 F5 */ bl func_801CFC84
+/* 801CD994 001C95F4 7C 6F 1B 78 */ mr r15, r3
+lbl_801CD998:
+/* 801CD998 001C95F8 80 61 00 18 */ lwz r3, 0x18(r1)
+/* 801CD99C 001C95FC 2C 03 00 00 */ cmpwi r3, 0
+/* 801CD9A0 001C9600 40 82 00 28 */ bne lbl_801CD9C8
+/* 801CD9A4 001C9604 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CD9A8 001C9608 41 82 07 84 */ beq lbl_801CE12C
+/* 801CD9AC 001C960C 38 00 00 00 */ li r0, 0
+/* 801CD9B0 001C9610 3B A0 00 01 */ li r29, 1
+/* 801CD9B4 001C9614 90 01 00 54 */ stw r0, 0x54(r1)
+/* 801CD9B8 001C9618 38 00 00 00 */ li r0, 0
+/* 801CD9BC 001C961C 39 E0 00 00 */ li r15, 0
+/* 801CD9C0 001C9620 90 01 00 50 */ stw r0, 0x50(r1)
+/* 801CD9C4 001C9624 48 00 00 48 */ b lbl_801CDA0C
+lbl_801CD9C8:
+/* 801CD9C8 001C9628 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CD9CC 001C962C 7E B5 1A 14 */ add r21, r21, r3
+/* 801CD9D0 001C9630 2C 00 00 00 */ cmpwi r0, 0
+/* 801CD9D4 001C9634 41 82 00 38 */ beq lbl_801CDA0C
+/* 801CD9D8 001C9638 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CD9DC 001C963C 28 00 00 07 */ cmplwi r0, 7
+/* 801CD9E0 001C9640 40 82 00 1C */ bne lbl_801CD9FC
+/* 801CD9E4 001C9644 80 01 00 54 */ lwz r0, 0x54(r1)
+/* 801CD9E8 001C9648 20 00 00 00 */ subfic r0, r0, 0
+/* 801CD9EC 001C964C 90 01 00 54 */ stw r0, 0x54(r1)
+/* 801CD9F0 001C9650 80 01 00 50 */ lwz r0, 0x50(r1)
+/* 801CD9F4 001C9654 7C 00 01 90 */ subfze r0, r0
+/* 801CD9F8 001C9658 90 01 00 50 */ stw r0, 0x50(r1)
+lbl_801CD9FC:
+/* 801CD9FC 001C965C 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CDA00 001C9660 28 00 00 07 */ cmplwi r0, 7
+/* 801CDA04 001C9664 41 82 00 08 */ beq lbl_801CDA0C
+/* 801CDA08 001C9668 7D EF 00 D0 */ neg r15, r15
+lbl_801CDA0C:
+/* 801CDA0C 001C966C 2C 16 00 00 */ cmpwi r22, 0
+/* 801CDA10 001C9670 41 82 00 88 */ beq lbl_801CDA98
+/* 801CDA14 001C9674 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CDA18 001C9678 28 00 00 07 */ cmplwi r0, 7
+/* 801CDA1C 001C967C 41 81 00 70 */ bgt lbl_801CDA8C
+/* 801CDA20 001C9680 3C 60 80 42 */ lis r3, lbl_804230C0@ha
+/* 801CDA24 001C9684 54 00 10 3A */ slwi r0, r0, 2
+/* 801CDA28 001C9688 38 63 30 C0 */ addi r3, r3, lbl_804230C0@l
+/* 801CDA2C 001C968C 7C 63 00 2E */ lwzx r3, r3, r0
+/* 801CDA30 001C9690 7C 69 03 A6 */ mtctr r3
+/* 801CDA34 001C9694 4E 80 04 20 */ bctr
+/* 801CDA38 001C9698 91 F6 00 00 */ stw r15, 0(r22)
+/* 801CDA3C 001C969C 48 00 00 50 */ b lbl_801CDA8C
+/* 801CDA40 001C96A0 99 F6 00 00 */ stb r15, 0(r22)
+/* 801CDA44 001C96A4 48 00 00 48 */ b lbl_801CDA8C
+/* 801CDA48 001C96A8 B1 F6 00 00 */ sth r15, 0(r22)
+/* 801CDA4C 001C96AC 48 00 00 40 */ b lbl_801CDA8C
+/* 801CDA50 001C96B0 91 F6 00 00 */ stw r15, 0(r22)
+/* 801CDA54 001C96B4 48 00 00 38 */ b lbl_801CDA8C
+/* 801CDA58 001C96B8 80 01 00 54 */ lwz r0, 0x54(r1)
+/* 801CDA5C 001C96BC 90 16 00 04 */ stw r0, 4(r22)
+/* 801CDA60 001C96C0 80 01 00 50 */ lwz r0, 0x50(r1)
+/* 801CDA64 001C96C4 90 16 00 00 */ stw r0, 0(r22)
+/* 801CDA68 001C96C8 48 00 00 24 */ b lbl_801CDA8C
+/* 801CDA6C 001C96CC 91 F6 00 00 */ stw r15, 0(r22)
+/* 801CDA70 001C96D0 48 00 00 1C */ b lbl_801CDA8C
+/* 801CDA74 001C96D4 91 F6 00 00 */ stw r15, 0(r22)
+/* 801CDA78 001C96D8 48 00 00 14 */ b lbl_801CDA8C
+/* 801CDA7C 001C96DC 80 01 00 54 */ lwz r0, 0x54(r1)
+/* 801CDA80 001C96E0 90 16 00 04 */ stw r0, 4(r22)
+/* 801CDA84 001C96E4 80 01 00 50 */ lwz r0, 0x50(r1)
+/* 801CDA88 001C96E8 90 16 00 00 */ stw r0, 0(r22)
+lbl_801CDA8C:
+/* 801CDA8C 001C96EC 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CDA90 001C96F0 40 82 00 08 */ bne lbl_801CDA98
+/* 801CDA94 001C96F4 3A 94 00 01 */ addi r20, r20, 1
+lbl_801CDA98:
+/* 801CDA98 001C96F8 3A 73 00 01 */ addi r19, r19, 1
+/* 801CDA9C 001C96FC 48 00 06 84 */ b lbl_801CE120
+lbl_801CDAA0:
+/* 801CDAA0 001C9700 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CDAA4 001C9704 41 82 00 10 */ beq lbl_801CDAB4
+/* 801CDAA8 001C9708 3C 60 80 64 */ lis r3, lbl_8063D6B8@ha
+/* 801CDAAC 001C970C C0 23 D6 B8 */ lfs f1, lbl_8063D6B8@l(r3)
+/* 801CDAB0 001C9710 48 00 00 44 */ b lbl_801CDAF4
+lbl_801CDAB4:
+/* 801CDAB4 001C9714 80 61 00 24 */ lwz r3, 0x24(r1)
+/* 801CDAB8 001C9718 7F 44 D3 78 */ mr r4, r26
+/* 801CDABC 001C971C 7F 65 DB 78 */ mr r5, r27
+/* 801CDAC0 001C9720 38 C1 00 18 */ addi r6, r1, 0x18
+/* 801CDAC4 001C9724 38 E1 00 10 */ addi r7, r1, 0x10
+/* 801CDAC8 001C9728 48 00 0D 45 */ bl func_801CE80C
+/* 801CDACC 001C972C 80 01 00 18 */ lwz r0, 0x18(r1)
+/* 801CDAD0 001C9730 2C 00 00 00 */ cmpwi r0, 0
+/* 801CDAD4 001C9734 40 82 00 1C */ bne lbl_801CDAF0
+/* 801CDAD8 001C9738 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDADC 001C973C 41 82 06 50 */ beq lbl_801CE12C
+/* 801CDAE0 001C9740 3C 60 80 64 */ lis r3, lbl_8063D6B8@ha
+/* 801CDAE4 001C9744 3B A0 00 01 */ li r29, 1
+/* 801CDAE8 001C9748 C0 23 D6 B8 */ lfs f1, lbl_8063D6B8@l(r3)
+/* 801CDAEC 001C974C 48 00 00 08 */ b lbl_801CDAF4
+lbl_801CDAF0:
+/* 801CDAF0 001C9750 7E B5 02 14 */ add r21, r21, r0
+lbl_801CDAF4:
+/* 801CDAF4 001C9754 2C 16 00 00 */ cmpwi r22, 0
+/* 801CDAF8 001C9758 41 82 00 50 */ beq lbl_801CDB48
+/* 801CDAFC 001C975C 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CDB00 001C9760 2C 00 00 08 */ cmpwi r0, 8
+/* 801CDB04 001C9764 41 82 00 2C */ beq lbl_801CDB30
+/* 801CDB08 001C9768 40 80 00 10 */ bge lbl_801CDB18
+/* 801CDB0C 001C976C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CDB10 001C9770 41 82 00 14 */ beq lbl_801CDB24
+/* 801CDB14 001C9774 48 00 00 28 */ b lbl_801CDB3C
+lbl_801CDB18:
+/* 801CDB18 001C9778 2C 00 00 0A */ cmpwi r0, 0xa
+/* 801CDB1C 001C977C 40 80 00 20 */ bge lbl_801CDB3C
+/* 801CDB20 001C9780 48 00 00 18 */ b lbl_801CDB38
+lbl_801CDB24:
+/* 801CDB24 001C9784 FC 00 08 18 */ frsp f0, f1
+/* 801CDB28 001C9788 D0 16 00 00 */ stfs f0, 0(r22)
+/* 801CDB2C 001C978C 48 00 00 10 */ b lbl_801CDB3C
+lbl_801CDB30:
+/* 801CDB30 001C9790 D8 36 00 00 */ stfd f1, 0(r22)
+/* 801CDB34 001C9794 48 00 00 08 */ b lbl_801CDB3C
+lbl_801CDB38:
+/* 801CDB38 001C9798 D8 36 00 00 */ stfd f1, 0(r22)
+lbl_801CDB3C:
+/* 801CDB3C 001C979C 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CDB40 001C97A0 40 82 00 08 */ bne lbl_801CDB48
+/* 801CDB44 001C97A4 3A 94 00 01 */ addi r20, r20, 1
+lbl_801CDB48:
+/* 801CDB48 001C97A8 3A 73 00 01 */ addi r19, r19, 1
+/* 801CDB4C 001C97AC 48 00 05 D4 */ b lbl_801CE120
+lbl_801CDB50:
+/* 801CDB50 001C97B0 88 01 00 21 */ lbz r0, 0x21(r1)
+/* 801CDB54 001C97B4 2C 00 00 00 */ cmpwi r0, 0
+/* 801CDB58 001C97B8 40 82 00 08 */ bne lbl_801CDB60
+/* 801CDB5C 001C97BC 93 01 00 24 */ stw r24, 0x24(r1)
+lbl_801CDB60:
+/* 801CDB60 001C97C0 2C 16 00 00 */ cmpwi r22, 0
+/* 801CDB64 001C97C4 41 82 01 2C */ beq lbl_801CDC90
+/* 801CDB68 001C97C8 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDB6C 001C97CC 41 82 00 18 */ beq lbl_801CDB84
+/* 801CDB70 001C97D0 80 61 00 08 */ lwz r3, 8(r1)
+/* 801CDB74 001C97D4 3B E0 00 01 */ li r31, 1
+/* 801CDB78 001C97D8 38 80 00 01 */ li r4, 1
+/* 801CDB7C 001C97DC 4B FF 90 05 */ bl __va_arg
+/* 801CDB80 001C97E0 83 C3 00 00 */ lwz r30, 0(r3)
+lbl_801CDB84:
+/* 801CDB84 001C97E4 38 00 00 00 */ li r0, 0
+/* 801CDB88 001C97E8 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CDB8C 001C97EC 90 01 00 18 */ stw r0, 0x18(r1)
+/* 801CDB90 001C97F0 41 82 00 18 */ beq lbl_801CDBA8
+/* 801CDB94 001C97F4 2C 1E 00 00 */ cmpwi r30, 0
+/* 801CDB98 001C97F8 41 82 05 88 */ beq lbl_801CE120
+/* 801CDB9C 001C97FC 38 00 00 00 */ li r0, 0
+/* 801CDBA0 001C9800 98 16 00 00 */ stb r0, 0(r22)
+/* 801CDBA4 001C9804 48 00 05 7C */ b lbl_801CE120
+lbl_801CDBA8:
+/* 801CDBA8 001C9808 92 C1 00 4C */ stw r22, 0x4c(r1)
+/* 801CDBAC 001C980C 48 00 00 40 */ b lbl_801CDBEC
+lbl_801CDBB0:
+/* 801CDBB0 001C9810 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CDBB4 001C9814 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CDBB8 001C9818 28 00 00 0A */ cmplwi r0, 0xa
+/* 801CDBBC 001C981C 40 82 00 1C */ bne lbl_801CDBD8
+/* 801CDBC0 001C9820 7E C3 B3 78 */ mr r3, r22
+/* 801CDBC4 001C9824 38 81 00 0C */ addi r4, r1, 0xc
+/* 801CDBC8 001C9828 38 A0 00 01 */ li r5, 1
+/* 801CDBCC 001C982C 4B FF C5 71 */ bl mbtowc
+/* 801CDBD0 001C9830 3A D6 00 01 */ addi r22, r22, 1
+/* 801CDBD4 001C9834 48 00 00 0C */ b lbl_801CDBE0
+lbl_801CDBD8:
+/* 801CDBD8 001C9838 98 76 00 00 */ stb r3, 0(r22)
+/* 801CDBDC 001C983C 3A D6 00 01 */ addi r22, r22, 1
+lbl_801CDBE0:
+/* 801CDBE0 001C9840 80 61 00 18 */ lwz r3, 0x18(r1)
+/* 801CDBE4 001C9844 38 03 00 01 */ addi r0, r3, 1
+/* 801CDBE8 001C9848 90 01 00 18 */ stw r0, 0x18(r1)
+lbl_801CDBEC:
+/* 801CDBEC 001C984C 80 81 00 24 */ lwz r4, 0x24(r1)
+/* 801CDBF0 001C9850 38 64 FF FF */ addi r3, r4, -1
+/* 801CDBF4 001C9854 2C 04 00 00 */ cmpwi r4, 0
+/* 801CDBF8 001C9858 90 61 00 24 */ stw r3, 0x24(r1)
+/* 801CDBFC 001C985C 41 82 00 44 */ beq lbl_801CDC40
+/* 801CDC00 001C9860 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDC04 001C9864 41 82 00 18 */ beq lbl_801CDC1C
+/* 801CDC08 001C9868 7F C0 02 78 */ xor r0, r30, r0
+/* 801CDC0C 001C986C 7C 00 00 34 */ cntlzw r0, r0
+/* 801CDC10 001C9870 7F C0 00 30 */ slw r0, r30, r0
+/* 801CDC14 001C9874 54 1F 0F FF */ rlwinm. r31, r0, 1, 0x1f, 0x1f
+/* 801CDC18 001C9878 41 82 00 28 */ beq lbl_801CDC40
+lbl_801CDC1C:
+/* 801CDC1C 001C987C 7F 4C D3 78 */ mr r12, r26
+/* 801CDC20 001C9880 7F 63 DB 78 */ mr r3, r27
+/* 801CDC24 001C9884 38 80 00 00 */ li r4, 0
+/* 801CDC28 001C9888 38 A0 00 00 */ li r5, 0
+/* 801CDC2C 001C988C 7D 89 03 A6 */ mtctr r12
+/* 801CDC30 001C9890 4E 80 04 21 */ bctrl
+/* 801CDC34 001C9894 2C 03 FF FF */ cmpwi r3, -1
+/* 801CDC38 001C9898 7C 72 1B 78 */ mr r18, r3
+/* 801CDC3C 001C989C 40 82 FF 74 */ bne lbl_801CDBB0
+lbl_801CDC40:
+/* 801CDC40 001C98A0 80 01 00 18 */ lwz r0, 0x18(r1)
+/* 801CDC44 001C98A4 9A 41 00 0C */ stb r18, 0xc(r1)
+/* 801CDC48 001C98A8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CDC4C 001C98AC 41 82 00 14 */ beq lbl_801CDC60
+/* 801CDC50 001C98B0 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDC54 001C98B4 41 82 00 30 */ beq lbl_801CDC84
+/* 801CDC58 001C98B8 2C 1F 00 00 */ cmpwi r31, 0
+/* 801CDC5C 001C98BC 40 82 00 28 */ bne lbl_801CDC84
+lbl_801CDC60:
+/* 801CDC60 001C98C0 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDC64 001C98C4 41 82 04 C8 */ beq lbl_801CE12C
+/* 801CDC68 001C98C8 2C 1E 00 00 */ cmpwi r30, 0
+/* 801CDC6C 001C98CC 3B A0 00 01 */ li r29, 1
+/* 801CDC70 001C98D0 41 82 04 B0 */ beq lbl_801CE120
+/* 801CDC74 001C98D4 80 61 00 4C */ lwz r3, 0x4c(r1)
+/* 801CDC78 001C98D8 38 00 00 00 */ li r0, 0
+/* 801CDC7C 001C98DC 98 03 00 00 */ stb r0, 0(r3)
+/* 801CDC80 001C98E0 48 00 04 A0 */ b lbl_801CE120
+lbl_801CDC84:
+/* 801CDC84 001C98E4 7E B5 02 14 */ add r21, r21, r0
+/* 801CDC88 001C98E8 3A 94 00 01 */ addi r20, r20, 1
+/* 801CDC8C 001C98EC 48 00 00 68 */ b lbl_801CDCF4
+lbl_801CDC90:
+/* 801CDC90 001C98F0 38 00 00 00 */ li r0, 0
+/* 801CDC94 001C98F4 90 01 00 18 */ stw r0, 0x18(r1)
+/* 801CDC98 001C98F8 48 00 00 14 */ b lbl_801CDCAC
+lbl_801CDC9C:
+/* 801CDC9C 001C98FC 80 81 00 18 */ lwz r4, 0x18(r1)
+/* 801CDCA0 001C9900 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CDCA4 001C9904 38 04 00 01 */ addi r0, r4, 1
+/* 801CDCA8 001C9908 90 01 00 18 */ stw r0, 0x18(r1)
+lbl_801CDCAC:
+/* 801CDCAC 001C990C 80 61 00 24 */ lwz r3, 0x24(r1)
+/* 801CDCB0 001C9910 38 03 FF FF */ addi r0, r3, -1
+/* 801CDCB4 001C9914 2C 03 00 00 */ cmpwi r3, 0
+/* 801CDCB8 001C9918 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801CDCBC 001C991C 41 82 00 28 */ beq lbl_801CDCE4
+/* 801CDCC0 001C9920 7F 4C D3 78 */ mr r12, r26
+/* 801CDCC4 001C9924 7F 63 DB 78 */ mr r3, r27
+/* 801CDCC8 001C9928 38 80 00 00 */ li r4, 0
+/* 801CDCCC 001C992C 38 A0 00 00 */ li r5, 0
+/* 801CDCD0 001C9930 7D 89 03 A6 */ mtctr r12
+/* 801CDCD4 001C9934 4E 80 04 21 */ bctrl
+/* 801CDCD8 001C9938 2C 03 FF FF */ cmpwi r3, -1
+/* 801CDCDC 001C993C 7C 72 1B 78 */ mr r18, r3
+/* 801CDCE0 001C9940 40 82 FF BC */ bne lbl_801CDC9C
+lbl_801CDCE4:
+/* 801CDCE4 001C9944 80 01 00 18 */ lwz r0, 0x18(r1)
+/* 801CDCE8 001C9948 9A 41 00 0C */ stb r18, 0xc(r1)
+/* 801CDCEC 001C994C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CDCF0 001C9950 41 82 04 3C */ beq lbl_801CE12C
+lbl_801CDCF4:
+/* 801CDCF4 001C9954 3A 73 00 01 */ addi r19, r19, 1
+/* 801CDCF8 001C9958 48 00 04 28 */ b lbl_801CE120
+lbl_801CDCFC:
+/* 801CDCFC 001C995C 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CDD00 001C9960 40 82 04 20 */ bne lbl_801CE120
+/* 801CDD04 001C9964 48 00 00 08 */ b lbl_801CDD0C
+lbl_801CDD08:
+/* 801CDD08 001C9968 3A B5 00 01 */ addi r21, r21, 1
+lbl_801CDD0C:
+/* 801CDD0C 001C996C 7F 4C D3 78 */ mr r12, r26
+/* 801CDD10 001C9970 7F 63 DB 78 */ mr r3, r27
+/* 801CDD14 001C9974 38 80 00 00 */ li r4, 0
+/* 801CDD18 001C9978 38 A0 00 00 */ li r5, 0
+/* 801CDD1C 001C997C 7D 89 03 A6 */ mtctr r12
+/* 801CDD20 001C9980 4E 80 04 21 */ bctrl
+/* 801CDD24 001C9984 7C 65 07 75 */ extsb. r5, r3
+/* 801CDD28 001C9988 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CDD2C 001C998C 38 00 00 00 */ li r0, 0
+/* 801CDD30 001C9990 41 80 00 0C */ blt lbl_801CDD3C
+/* 801CDD34 001C9994 2C 05 01 00 */ cmpwi r5, 0x100
+/* 801CDD38 001C9998 41 80 00 08 */ blt lbl_801CDD40
+lbl_801CDD3C:
+/* 801CDD3C 001C999C 38 00 00 01 */ li r0, 1
+lbl_801CDD40:
+/* 801CDD40 001C99A0 2C 00 00 00 */ cmpwi r0, 0
+/* 801CDD44 001C99A4 41 82 00 0C */ beq lbl_801CDD50
+/* 801CDD48 001C99A8 38 00 00 00 */ li r0, 0
+/* 801CDD4C 001C99AC 48 00 00 18 */ b lbl_801CDD64
+lbl_801CDD50:
+/* 801CDD50 001C99B0 80 97 00 38 */ lwz r4, 0x38(r23)
+/* 801CDD54 001C99B4 54 A0 08 3C */ slwi r0, r5, 1
+/* 801CDD58 001C99B8 80 84 00 08 */ lwz r4, 8(r4)
+/* 801CDD5C 001C99BC 7C 04 02 2E */ lhzx r0, r4, r0
+/* 801CDD60 001C99C0 54 00 05 EE */ rlwinm r0, r0, 0, 0x17, 0x17
+lbl_801CDD64:
+/* 801CDD64 001C99C4 2C 00 00 00 */ cmpwi r0, 0
+/* 801CDD68 001C99C8 40 82 FF A0 */ bne lbl_801CDD08
+/* 801CDD6C 001C99CC 54 60 06 3E */ clrlwi r0, r3, 0x18
+/* 801CDD70 001C99D0 7C 04 07 74 */ extsb r4, r0
+/* 801CDD74 001C99D4 2C 04 00 25 */ cmpwi r4, 0x25
+/* 801CDD78 001C99D8 41 82 00 28 */ beq lbl_801CDDA0
+/* 801CDD7C 001C99DC 7F 4C D3 78 */ mr r12, r26
+/* 801CDD80 001C99E0 7F 63 DB 78 */ mr r3, r27
+/* 801CDD84 001C99E4 38 A0 00 01 */ li r5, 1
+/* 801CDD88 001C99E8 7D 89 03 A6 */ mtctr r12
+/* 801CDD8C 001C99EC 4E 80 04 21 */ bctrl
+/* 801CDD90 001C99F0 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDD94 001C99F4 41 82 03 98 */ beq lbl_801CE12C
+/* 801CDD98 001C99F8 3B A0 00 01 */ li r29, 1
+/* 801CDD9C 001C99FC 48 00 03 84 */ b lbl_801CE120
+lbl_801CDDA0:
+/* 801CDDA0 001C9A00 3A B5 00 01 */ addi r21, r21, 1
+/* 801CDDA4 001C9A04 48 00 03 7C */ b lbl_801CE120
+lbl_801CDDA8:
+/* 801CDDA8 001C9A08 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CDDAC 001C9A0C 40 82 00 A4 */ bne lbl_801CDE50
+/* 801CDDB0 001C9A10 7F 4C D3 78 */ mr r12, r26
+/* 801CDDB4 001C9A14 7F 63 DB 78 */ mr r3, r27
+/* 801CDDB8 001C9A18 38 80 00 00 */ li r4, 0
+/* 801CDDBC 001C9A1C 38 A0 00 00 */ li r5, 0
+/* 801CDDC0 001C9A20 7D 89 03 A6 */ mtctr r12
+/* 801CDDC4 001C9A24 4E 80 04 21 */ bctrl
+/* 801CDDC8 001C9A28 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CDDCC 001C9A2C 48 00 00 24 */ b lbl_801CDDF0
+lbl_801CDDD0:
+/* 801CDDD0 001C9A30 7F 4C D3 78 */ mr r12, r26
+/* 801CDDD4 001C9A34 7F 63 DB 78 */ mr r3, r27
+/* 801CDDD8 001C9A38 38 80 00 00 */ li r4, 0
+/* 801CDDDC 001C9A3C 38 A0 00 00 */ li r5, 0
+/* 801CDDE0 001C9A40 7D 89 03 A6 */ mtctr r12
+/* 801CDDE4 001C9A44 3A B5 00 01 */ addi r21, r21, 1
+/* 801CDDE8 001C9A48 4E 80 04 21 */ bctrl
+/* 801CDDEC 001C9A4C 98 61 00 0C */ stb r3, 0xc(r1)
+lbl_801CDDF0:
+/* 801CDDF0 001C9A50 54 65 06 3E */ clrlwi r5, r3, 0x18
+/* 801CDDF4 001C9A54 38 00 00 00 */ li r0, 0
+/* 801CDDF8 001C9A58 7C A4 07 75 */ extsb. r4, r5
+/* 801CDDFC 001C9A5C 41 80 00 0C */ blt lbl_801CDE08
+/* 801CDE00 001C9A60 2C 04 01 00 */ cmpwi r4, 0x100
+/* 801CDE04 001C9A64 41 80 00 08 */ blt lbl_801CDE0C
+lbl_801CDE08:
+/* 801CDE08 001C9A68 38 00 00 01 */ li r0, 1
+lbl_801CDE0C:
+/* 801CDE0C 001C9A6C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CDE10 001C9A70 41 82 00 0C */ beq lbl_801CDE1C
+/* 801CDE14 001C9A74 38 00 00 00 */ li r0, 0
+/* 801CDE18 001C9A78 48 00 00 18 */ b lbl_801CDE30
+lbl_801CDE1C:
+/* 801CDE1C 001C9A7C 80 77 00 38 */ lwz r3, 0x38(r23)
+/* 801CDE20 001C9A80 54 80 08 3C */ slwi r0, r4, 1
+/* 801CDE24 001C9A84 80 63 00 08 */ lwz r3, 8(r3)
+/* 801CDE28 001C9A88 7C 03 02 2E */ lhzx r0, r3, r0
+/* 801CDE2C 001C9A8C 54 00 05 EE */ rlwinm r0, r0, 0, 0x17, 0x17
+lbl_801CDE30:
+/* 801CDE30 001C9A90 2C 00 00 00 */ cmpwi r0, 0
+/* 801CDE34 001C9A94 40 82 FF 9C */ bne lbl_801CDDD0
+/* 801CDE38 001C9A98 7F 4C D3 78 */ mr r12, r26
+/* 801CDE3C 001C9A9C 7C A4 07 74 */ extsb r4, r5
+/* 801CDE40 001C9AA0 7F 63 DB 78 */ mr r3, r27
+/* 801CDE44 001C9AA4 38 A0 00 01 */ li r5, 1
+/* 801CDE48 001C9AA8 7D 89 03 A6 */ mtctr r12
+/* 801CDE4C 001C9AAC 4E 80 04 21 */ bctrl
+lbl_801CDE50:
+/* 801CDE50 001C9AB0 2C 16 00 00 */ cmpwi r22, 0
+/* 801CDE54 001C9AB4 41 82 01 90 */ beq lbl_801CDFE4
+/* 801CDE58 001C9AB8 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDE5C 001C9ABC 41 82 00 1C */ beq lbl_801CDE78
+/* 801CDE60 001C9AC0 80 61 00 08 */ lwz r3, 8(r1)
+/* 801CDE64 001C9AC4 3B E0 00 01 */ li r31, 1
+/* 801CDE68 001C9AC8 38 80 00 01 */ li r4, 1
+/* 801CDE6C 001C9ACC 4B FF 8D 15 */ bl __va_arg
+/* 801CDE70 001C9AD0 80 63 00 00 */ lwz r3, 0(r3)
+/* 801CDE74 001C9AD4 3B C3 FF FF */ addi r30, r3, -1
+lbl_801CDE78:
+/* 801CDE78 001C9AD8 38 00 00 00 */ li r0, 0
+/* 801CDE7C 001C9ADC 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CDE80 001C9AE0 90 01 00 18 */ stw r0, 0x18(r1)
+/* 801CDE84 001C9AE4 41 82 00 18 */ beq lbl_801CDE9C
+/* 801CDE88 001C9AE8 2C 1E 00 00 */ cmpwi r30, 0
+/* 801CDE8C 001C9AEC 41 82 02 94 */ beq lbl_801CE120
+/* 801CDE90 001C9AF0 38 00 00 00 */ li r0, 0
+/* 801CDE94 001C9AF4 98 16 00 00 */ stb r0, 0(r22)
+/* 801CDE98 001C9AF8 48 00 02 88 */ b lbl_801CE120
+lbl_801CDE9C:
+/* 801CDE9C 001C9AFC 92 C1 00 48 */ stw r22, 0x48(r1)
+/* 801CDEA0 001C9B00 48 00 00 60 */ b lbl_801CDF00
+lbl_801CDEA4:
+/* 801CDEA4 001C9B04 54 60 EE FE */ rlwinm r0, r3, 0x1d, 0x1b, 0x1f
+/* 801CDEA8 001C9B08 54 65 07 7E */ clrlwi r5, r3, 0x1d
+/* 801CDEAC 001C9B0C 7C 99 02 14 */ add r4, r25, r0
+/* 801CDEB0 001C9B10 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CDEB4 001C9B14 88 04 00 08 */ lbz r0, 8(r4)
+/* 801CDEB8 001C9B18 7F 04 28 30 */ slw r4, r24, r5
+/* 801CDEBC 001C9B1C 54 63 06 3E */ clrlwi r3, r3, 0x18
+/* 801CDEC0 001C9B20 7C 80 00 39 */ and. r0, r4, r0
+/* 801CDEC4 001C9B24 41 82 00 94 */ beq lbl_801CDF58
+/* 801CDEC8 001C9B28 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CDECC 001C9B2C 28 00 00 0A */ cmplwi r0, 0xa
+/* 801CDED0 001C9B30 40 82 00 1C */ bne lbl_801CDEEC
+/* 801CDED4 001C9B34 7E C3 B3 78 */ mr r3, r22
+/* 801CDED8 001C9B38 38 81 00 0C */ addi r4, r1, 0xc
+/* 801CDEDC 001C9B3C 38 A0 00 01 */ li r5, 1
+/* 801CDEE0 001C9B40 4B FF C2 5D */ bl mbtowc
+/* 801CDEE4 001C9B44 3A D6 00 02 */ addi r22, r22, 2
+/* 801CDEE8 001C9B48 48 00 00 0C */ b lbl_801CDEF4
+lbl_801CDEEC:
+/* 801CDEEC 001C9B4C 98 76 00 00 */ stb r3, 0(r22)
+/* 801CDEF0 001C9B50 3A D6 00 01 */ addi r22, r22, 1
+lbl_801CDEF4:
+/* 801CDEF4 001C9B54 80 61 00 18 */ lwz r3, 0x18(r1)
+/* 801CDEF8 001C9B58 38 03 00 01 */ addi r0, r3, 1
+/* 801CDEFC 001C9B5C 90 01 00 18 */ stw r0, 0x18(r1)
+lbl_801CDF00:
+/* 801CDF00 001C9B60 80 81 00 24 */ lwz r4, 0x24(r1)
+/* 801CDF04 001C9B64 38 64 FF FF */ addi r3, r4, -1
+/* 801CDF08 001C9B68 2C 04 00 00 */ cmpwi r4, 0
+/* 801CDF0C 001C9B6C 90 61 00 24 */ stw r3, 0x24(r1)
+/* 801CDF10 001C9B70 41 82 00 48 */ beq lbl_801CDF58
+/* 801CDF14 001C9B74 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDF18 001C9B78 41 82 00 1C */ beq lbl_801CDF34
+/* 801CDF1C 001C9B7C 7C 80 F0 50 */ subf r4, r0, r30
+/* 801CDF20 001C9B80 7F C3 03 38 */ orc r3, r30, r0
+/* 801CDF24 001C9B84 54 80 F8 7E */ srwi r0, r4, 1
+/* 801CDF28 001C9B88 7C 00 18 50 */ subf r0, r0, r3
+/* 801CDF2C 001C9B8C 54 1F 0F FF */ rlwinm. r31, r0, 1, 0x1f, 0x1f
+/* 801CDF30 001C9B90 41 82 00 28 */ beq lbl_801CDF58
+lbl_801CDF34:
+/* 801CDF34 001C9B94 7F 4C D3 78 */ mr r12, r26
+/* 801CDF38 001C9B98 7F 63 DB 78 */ mr r3, r27
+/* 801CDF3C 001C9B9C 38 80 00 00 */ li r4, 0
+/* 801CDF40 001C9BA0 38 A0 00 00 */ li r5, 0
+/* 801CDF44 001C9BA4 7D 89 03 A6 */ mtctr r12
+/* 801CDF48 001C9BA8 4E 80 04 21 */ bctrl
+/* 801CDF4C 001C9BAC 2C 03 FF FF */ cmpwi r3, -1
+/* 801CDF50 001C9BB0 7C 72 1B 78 */ mr r18, r3
+/* 801CDF54 001C9BB4 40 82 FF 50 */ bne lbl_801CDEA4
+lbl_801CDF58:
+/* 801CDF58 001C9BB8 80 61 00 18 */ lwz r3, 0x18(r1)
+/* 801CDF5C 001C9BBC 9A 41 00 0C */ stb r18, 0xc(r1)
+/* 801CDF60 001C9BC0 2C 03 00 00 */ cmpwi r3, 0
+/* 801CDF64 001C9BC4 41 82 00 14 */ beq lbl_801CDF78
+/* 801CDF68 001C9BC8 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDF6C 001C9BCC 41 82 00 4C */ beq lbl_801CDFB8
+/* 801CDF70 001C9BD0 2C 1F 00 00 */ cmpwi r31, 0
+/* 801CDF74 001C9BD4 40 82 00 44 */ bne lbl_801CDFB8
+lbl_801CDF78:
+/* 801CDF78 001C9BD8 56 44 06 3E */ clrlwi r4, r18, 0x18
+/* 801CDF7C 001C9BDC 7F 4C D3 78 */ mr r12, r26
+/* 801CDF80 001C9BE0 7F 63 DB 78 */ mr r3, r27
+/* 801CDF84 001C9BE4 38 A0 00 01 */ li r5, 1
+/* 801CDF88 001C9BE8 7C 84 07 74 */ extsb r4, r4
+/* 801CDF8C 001C9BEC 7D 89 03 A6 */ mtctr r12
+/* 801CDF90 001C9BF0 4E 80 04 21 */ bctrl
+/* 801CDF94 001C9BF4 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CDF98 001C9BF8 41 82 01 94 */ beq lbl_801CE12C
+/* 801CDF9C 001C9BFC 2C 1E 00 00 */ cmpwi r30, 0
+/* 801CDFA0 001C9C00 3B A0 00 01 */ li r29, 1
+/* 801CDFA4 001C9C04 41 82 01 7C */ beq lbl_801CE120
+/* 801CDFA8 001C9C08 80 61 00 48 */ lwz r3, 0x48(r1)
+/* 801CDFAC 001C9C0C 38 00 00 00 */ li r0, 0
+/* 801CDFB0 001C9C10 98 03 00 00 */ stb r0, 0(r3)
+/* 801CDFB4 001C9C14 48 00 01 6C */ b lbl_801CE120
+lbl_801CDFB8:
+/* 801CDFB8 001C9C18 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CDFBC 001C9C1C 7E B5 1A 14 */ add r21, r21, r3
+/* 801CDFC0 001C9C20 28 00 00 0A */ cmplwi r0, 0xa
+/* 801CDFC4 001C9C24 40 82 00 10 */ bne lbl_801CDFD4
+/* 801CDFC8 001C9C28 38 00 00 00 */ li r0, 0
+/* 801CDFCC 001C9C2C B0 16 00 00 */ sth r0, 0(r22)
+/* 801CDFD0 001C9C30 48 00 00 0C */ b lbl_801CDFDC
+lbl_801CDFD4:
+/* 801CDFD4 001C9C34 38 00 00 00 */ li r0, 0
+/* 801CDFD8 001C9C38 98 16 00 00 */ stb r0, 0(r22)
+lbl_801CDFDC:
+/* 801CDFDC 001C9C3C 3A 94 00 01 */ addi r20, r20, 1
+/* 801CDFE0 001C9C40 48 00 00 A8 */ b lbl_801CE088
+lbl_801CDFE4:
+/* 801CDFE4 001C9C44 38 00 00 00 */ li r0, 0
+/* 801CDFE8 001C9C48 90 01 00 18 */ stw r0, 0x18(r1)
+/* 801CDFEC 001C9C4C 48 00 00 30 */ b lbl_801CE01C
+lbl_801CDFF0:
+/* 801CDFF0 001C9C50 54 60 EE FE */ rlwinm r0, r3, 0x1d, 0x1b, 0x1f
+/* 801CDFF4 001C9C54 54 65 07 7E */ clrlwi r5, r3, 0x1d
+/* 801CDFF8 001C9C58 7C 99 02 14 */ add r4, r25, r0
+/* 801CDFFC 001C9C5C 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CE000 001C9C60 88 04 00 08 */ lbz r0, 8(r4)
+/* 801CE004 001C9C64 7F 03 28 30 */ slw r3, r24, r5
+/* 801CE008 001C9C68 7C 60 00 39 */ and. r0, r3, r0
+/* 801CE00C 001C9C6C 41 82 00 48 */ beq lbl_801CE054
+/* 801CE010 001C9C70 80 61 00 18 */ lwz r3, 0x18(r1)
+/* 801CE014 001C9C74 38 03 00 01 */ addi r0, r3, 1
+/* 801CE018 001C9C78 90 01 00 18 */ stw r0, 0x18(r1)
+lbl_801CE01C:
+/* 801CE01C 001C9C7C 80 61 00 24 */ lwz r3, 0x24(r1)
+/* 801CE020 001C9C80 38 03 FF FF */ addi r0, r3, -1
+/* 801CE024 001C9C84 2C 03 00 00 */ cmpwi r3, 0
+/* 801CE028 001C9C88 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801CE02C 001C9C8C 41 82 00 28 */ beq lbl_801CE054
+/* 801CE030 001C9C90 7F 4C D3 78 */ mr r12, r26
+/* 801CE034 001C9C94 7F 63 DB 78 */ mr r3, r27
+/* 801CE038 001C9C98 38 80 00 00 */ li r4, 0
+/* 801CE03C 001C9C9C 38 A0 00 00 */ li r5, 0
+/* 801CE040 001C9CA0 7D 89 03 A6 */ mtctr r12
+/* 801CE044 001C9CA4 4E 80 04 21 */ bctrl
+/* 801CE048 001C9CA8 2C 03 FF FF */ cmpwi r3, -1
+/* 801CE04C 001C9CAC 7C 72 1B 78 */ mr r18, r3
+/* 801CE050 001C9CB0 40 82 FF A0 */ bne lbl_801CDFF0
+lbl_801CE054:
+/* 801CE054 001C9CB4 80 01 00 18 */ lwz r0, 0x18(r1)
+/* 801CE058 001C9CB8 9A 41 00 0C */ stb r18, 0xc(r1)
+/* 801CE05C 001C9CBC 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE060 001C9CC0 40 82 00 24 */ bne lbl_801CE084
+/* 801CE064 001C9CC4 56 44 06 3E */ clrlwi r4, r18, 0x18
+/* 801CE068 001C9CC8 7F 4C D3 78 */ mr r12, r26
+/* 801CE06C 001C9CCC 7F 63 DB 78 */ mr r3, r27
+/* 801CE070 001C9CD0 38 A0 00 01 */ li r5, 1
+/* 801CE074 001C9CD4 7C 84 07 74 */ extsb r4, r4
+/* 801CE078 001C9CD8 7D 89 03 A6 */ mtctr r12
+/* 801CE07C 001C9CDC 4E 80 04 21 */ bctrl
+/* 801CE080 001C9CE0 48 00 00 A0 */ b lbl_801CE120
+lbl_801CE084:
+/* 801CE084 001C9CE4 7E B5 02 14 */ add r21, r21, r0
+lbl_801CE088:
+/* 801CE088 001C9CE8 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 801CE08C 001C9CEC 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE090 001C9CF0 41 80 00 20 */ blt lbl_801CE0B0
+/* 801CE094 001C9CF4 88 81 00 0C */ lbz r4, 0xc(r1)
+/* 801CE098 001C9CF8 7F 4C D3 78 */ mr r12, r26
+/* 801CE09C 001C9CFC 7F 63 DB 78 */ mr r3, r27
+/* 801CE0A0 001C9D00 38 A0 00 01 */ li r5, 1
+/* 801CE0A4 001C9D04 7C 84 07 74 */ extsb r4, r4
+/* 801CE0A8 001C9D08 7D 89 03 A6 */ mtctr r12
+/* 801CE0AC 001C9D0C 4E 80 04 21 */ bctrl
+lbl_801CE0B0:
+/* 801CE0B0 001C9D10 3A 73 00 01 */ addi r19, r19, 1
+/* 801CE0B4 001C9D14 48 00 00 6C */ b lbl_801CE120
+lbl_801CE0B8:
+/* 801CE0B8 001C9D18 2C 16 00 00 */ cmpwi r22, 0
+/* 801CE0BC 001C9D1C 41 82 00 64 */ beq lbl_801CE120
+/* 801CE0C0 001C9D20 88 01 00 22 */ lbz r0, 0x22(r1)
+/* 801CE0C4 001C9D24 2C 00 00 03 */ cmpwi r0, 3
+/* 801CE0C8 001C9D28 41 82 00 3C */ beq lbl_801CE104
+/* 801CE0CC 001C9D2C 40 80 00 1C */ bge lbl_801CE0E8
+/* 801CE0D0 001C9D30 2C 00 00 01 */ cmpwi r0, 1
+/* 801CE0D4 001C9D34 41 82 00 38 */ beq lbl_801CE10C
+/* 801CE0D8 001C9D38 40 80 00 24 */ bge lbl_801CE0FC
+/* 801CE0DC 001C9D3C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE0E0 001C9D40 40 80 00 14 */ bge lbl_801CE0F4
+/* 801CE0E4 001C9D44 48 00 00 3C */ b lbl_801CE120
+lbl_801CE0E8:
+/* 801CE0E8 001C9D48 2C 00 00 07 */ cmpwi r0, 7
+/* 801CE0EC 001C9D4C 41 82 00 28 */ beq lbl_801CE114
+/* 801CE0F0 001C9D50 48 00 00 30 */ b lbl_801CE120
+lbl_801CE0F4:
+/* 801CE0F4 001C9D54 92 B6 00 00 */ stw r21, 0(r22)
+/* 801CE0F8 001C9D58 48 00 00 28 */ b lbl_801CE120
+lbl_801CE0FC:
+/* 801CE0FC 001C9D5C B2 B6 00 00 */ sth r21, 0(r22)
+/* 801CE100 001C9D60 48 00 00 20 */ b lbl_801CE120
+lbl_801CE104:
+/* 801CE104 001C9D64 92 B6 00 00 */ stw r21, 0(r22)
+/* 801CE108 001C9D68 48 00 00 18 */ b lbl_801CE120
+lbl_801CE10C:
+/* 801CE10C 001C9D6C 9A B6 00 00 */ stb r21, 0(r22)
+/* 801CE110 001C9D70 48 00 00 10 */ b lbl_801CE120
+lbl_801CE114:
+/* 801CE114 001C9D74 92 B6 00 04 */ stw r21, 4(r22)
+/* 801CE118 001C9D78 7E A0 FE 70 */ srawi r0, r21, 0x1f
+/* 801CE11C 001C9D7C 90 16 00 00 */ stw r0, 0(r22)
+lbl_801CE120:
+/* 801CE120 001C9D80 88 11 00 00 */ lbz r0, 0(r17)
+/* 801CE124 001C9D84 7C 16 07 75 */ extsb. r22, r0
+/* 801CE128 001C9D88 40 82 F3 4C */ bne lbl_801CD474
+lbl_801CE12C:
+/* 801CE12C 001C9D8C 7F 4C D3 78 */ mr r12, r26
+/* 801CE130 001C9D90 7F 63 DB 78 */ mr r3, r27
+/* 801CE134 001C9D94 38 80 00 00 */ li r4, 0
+/* 801CE138 001C9D98 38 A0 00 02 */ li r5, 2
+/* 801CE13C 001C9D9C 7D 89 03 A6 */ mtctr r12
+/* 801CE140 001C9DA0 4E 80 04 21 */ bctrl
+/* 801CE144 001C9DA4 2C 03 00 00 */ cmpwi r3, 0
+/* 801CE148 001C9DA8 41 82 00 14 */ beq lbl_801CE15C
+/* 801CE14C 001C9DAC 2C 13 00 00 */ cmpwi r19, 0
+/* 801CE150 001C9DB0 40 82 00 0C */ bne lbl_801CE15C
+/* 801CE154 001C9DB4 38 60 FF FF */ li r3, -1
+/* 801CE158 001C9DB8 48 00 00 08 */ b lbl_801CE160
+lbl_801CE15C:
+/* 801CE15C 001C9DBC 7E 83 A3 78 */ mr r3, r20
+lbl_801CE160:
+/* 801CE160 001C9DC0 39 61 00 B0 */ addi r11, r1, 0xb0
+/* 801CE164 001C9DC4 4B FF 8F E1 */ bl _restgpr_15
+/* 801CE168 001C9DC8 80 01 00 B4 */ lwz r0, 0xb4(r1)
+/* 801CE16C 001C9DCC 7C 08 03 A6 */ mtlr r0
+/* 801CE170 001C9DD0 38 21 00 B0 */ addi r1, r1, 0xb0
+/* 801CE174 001C9DD4 4E 80 00 20 */ blr
+
+.global __StringRead
+__StringRead:
+/* 801CE178 001C9DD8 2C 05 00 01 */ cmpwi r5, 1
+/* 801CE17C 001C9DDC 41 82 00 50 */ beq lbl_801CE1CC
+/* 801CE180 001C9DE0 40 80 00 10 */ bge lbl_801CE190
+/* 801CE184 001C9DE4 2C 05 00 00 */ cmpwi r5, 0
+/* 801CE188 001C9DE8 40 80 00 14 */ bge lbl_801CE19C
+/* 801CE18C 001C9DEC 48 00 00 74 */ b lbl_801CE200
+lbl_801CE190:
+/* 801CE190 001C9DF0 2C 05 00 03 */ cmpwi r5, 3
+/* 801CE194 001C9DF4 40 80 00 6C */ bge lbl_801CE200
+/* 801CE198 001C9DF8 48 00 00 60 */ b lbl_801CE1F8
+lbl_801CE19C:
+/* 801CE19C 001C9DFC 80 83 00 00 */ lwz r4, 0(r3)
+/* 801CE1A0 001C9E00 88 A4 00 00 */ lbz r5, 0(r4)
+/* 801CE1A4 001C9E04 7C A0 07 75 */ extsb. r0, r5
+/* 801CE1A8 001C9E08 40 82 00 14 */ bne lbl_801CE1BC
+/* 801CE1AC 001C9E0C 38 00 00 01 */ li r0, 1
+/* 801CE1B0 001C9E10 90 03 00 04 */ stw r0, 4(r3)
+/* 801CE1B4 001C9E14 38 60 FF FF */ li r3, -1
+/* 801CE1B8 001C9E18 4E 80 00 20 */ blr
+lbl_801CE1BC:
+/* 801CE1BC 001C9E1C 38 04 00 01 */ addi r0, r4, 1
+/* 801CE1C0 001C9E20 90 03 00 00 */ stw r0, 0(r3)
+/* 801CE1C4 001C9E24 7C A3 2B 78 */ mr r3, r5
+/* 801CE1C8 001C9E28 4E 80 00 20 */ blr
+lbl_801CE1CC:
+/* 801CE1CC 001C9E2C 80 03 00 04 */ lwz r0, 4(r3)
+/* 801CE1D0 001C9E30 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE1D4 001C9E34 40 82 00 14 */ bne lbl_801CE1E8
+/* 801CE1D8 001C9E38 80 A3 00 00 */ lwz r5, 0(r3)
+/* 801CE1DC 001C9E3C 38 05 FF FF */ addi r0, r5, -1
+/* 801CE1E0 001C9E40 90 03 00 00 */ stw r0, 0(r3)
+/* 801CE1E4 001C9E44 48 00 00 0C */ b lbl_801CE1F0
+lbl_801CE1E8:
+/* 801CE1E8 001C9E48 38 00 00 00 */ li r0, 0
+/* 801CE1EC 001C9E4C 90 03 00 04 */ stw r0, 4(r3)
+lbl_801CE1F0:
+/* 801CE1F0 001C9E50 7C 83 23 78 */ mr r3, r4
+/* 801CE1F4 001C9E54 4E 80 00 20 */ blr
+lbl_801CE1F8:
+/* 801CE1F8 001C9E58 80 63 00 04 */ lwz r3, 4(r3)
+/* 801CE1FC 001C9E5C 4E 80 00 20 */ blr
+lbl_801CE200:
+/* 801CE200 001C9E60 38 60 00 00 */ li r3, 0
+/* 801CE204 001C9E64 4E 80 00 20 */ blr
+
+.global sscanf
+sscanf:
+/* 801CE208 001C9E68 94 21 FF 70 */ stwu r1, -0x90(r1)
+/* 801CE20C 001C9E6C 7C 08 02 A6 */ mflr r0
+/* 801CE210 001C9E70 90 01 00 94 */ stw r0, 0x94(r1)
+/* 801CE214 001C9E74 93 E1 00 8C */ stw r31, 0x8c(r1)
+/* 801CE218 001C9E78 40 86 00 24 */ bne cr1, lbl_801CE23C
+/* 801CE21C 001C9E7C D8 21 00 28 */ stfd f1, 0x28(r1)
+/* 801CE220 001C9E80 D8 41 00 30 */ stfd f2, 0x30(r1)
+/* 801CE224 001C9E84 D8 61 00 38 */ stfd f3, 0x38(r1)
+/* 801CE228 001C9E88 D8 81 00 40 */ stfd f4, 0x40(r1)
+/* 801CE22C 001C9E8C D8 A1 00 48 */ stfd f5, 0x48(r1)
+/* 801CE230 001C9E90 D8 C1 00 50 */ stfd f6, 0x50(r1)
+/* 801CE234 001C9E94 D8 E1 00 58 */ stfd f7, 0x58(r1)
+/* 801CE238 001C9E98 D9 01 00 60 */ stfd f8, 0x60(r1)
+lbl_801CE23C:
+/* 801CE23C 001C9E9C 39 61 00 98 */ addi r11, r1, 0x98
+/* 801CE240 001C9EA0 38 01 00 08 */ addi r0, r1, 8
+/* 801CE244 001C9EA4 3D 80 02 00 */ lis r12, 0x200
+/* 801CE248 001C9EA8 2C 03 00 00 */ cmpwi r3, 0
+/* 801CE24C 001C9EAC 90 61 00 08 */ stw r3, 8(r1)
+/* 801CE250 001C9EB0 3B E1 00 70 */ addi r31, r1, 0x70
+/* 801CE254 001C9EB4 90 81 00 0C */ stw r4, 0xc(r1)
+/* 801CE258 001C9EB8 90 A1 00 10 */ stw r5, 0x10(r1)
+/* 801CE25C 001C9EBC 90 C1 00 14 */ stw r6, 0x14(r1)
+/* 801CE260 001C9EC0 90 E1 00 18 */ stw r7, 0x18(r1)
+/* 801CE264 001C9EC4 91 01 00 1C */ stw r8, 0x1c(r1)
+/* 801CE268 001C9EC8 91 21 00 20 */ stw r9, 0x20(r1)
+/* 801CE26C 001C9ECC 91 41 00 24 */ stw r10, 0x24(r1)
+/* 801CE270 001C9ED0 91 81 00 70 */ stw r12, 0x70(r1)
+/* 801CE274 001C9ED4 91 61 00 74 */ stw r11, 0x74(r1)
+/* 801CE278 001C9ED8 90 01 00 78 */ stw r0, 0x78(r1)
+/* 801CE27C 001C9EDC 90 61 00 68 */ stw r3, 0x68(r1)
+/* 801CE280 001C9EE0 41 82 00 10 */ beq lbl_801CE290
+/* 801CE284 001C9EE4 88 03 00 00 */ lbz r0, 0(r3)
+/* 801CE288 001C9EE8 7C 00 07 75 */ extsb. r0, r0
+/* 801CE28C 001C9EEC 40 82 00 0C */ bne lbl_801CE298
+lbl_801CE290:
+/* 801CE290 001C9EF0 38 60 FF FF */ li r3, -1
+/* 801CE294 001C9EF4 48 00 00 28 */ b lbl_801CE2BC
+lbl_801CE298:
+/* 801CE298 001C9EF8 38 00 00 00 */ li r0, 0
+/* 801CE29C 001C9EFC 3C 60 80 1D */ lis r3, __StringRead@ha
+/* 801CE2A0 001C9F00 90 01 00 6C */ stw r0, 0x6c(r1)
+/* 801CE2A4 001C9F04 7C 85 23 78 */ mr r5, r4
+/* 801CE2A8 001C9F08 7F E6 FB 78 */ mr r6, r31
+/* 801CE2AC 001C9F0C 38 63 E1 78 */ addi r3, r3, __StringRead@l
+/* 801CE2B0 001C9F10 38 81 00 68 */ addi r4, r1, 0x68
+/* 801CE2B4 001C9F14 38 E0 00 00 */ li r7, 0
+/* 801CE2B8 001C9F18 4B FF F1 61 */ bl __sformatter
+lbl_801CE2BC:
+/* 801CE2BC 001C9F1C 80 01 00 94 */ lwz r0, 0x94(r1)
+/* 801CE2C0 001C9F20 83 E1 00 8C */ lwz r31, 0x8c(r1)
+/* 801CE2C4 001C9F24 7C 08 03 A6 */ mtlr r0
+/* 801CE2C8 001C9F28 38 21 00 90 */ addi r1, r1, 0x90
+/* 801CE2CC 001C9F2C 4E 80 00 20 */ blr
|