diff options
author | Revo <projectrevotpp@hotmail.com> | 2020-09-29 12:50:12 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-09-29 12:50:12 -0400 |
commit | bb28572125c45ec20f5fbf85120cd71fb2486bac (patch) | |
tree | 7847f3008d5208a45460af5805087f21b7613a4f | |
parent | 1cc68edd6a6967c661579858ec0c1cf1d6d644d5 (diff) | |
parent | c285b7af502dfe463479cecfbb26313be3e5f5f4 (diff) |
Merge pull request #106 from mparisi20/master
Finish splitting nw4r::lyt and split more standard library modules
86 files changed, 11436 insertions, 11301 deletions
@@ -30,10 +30,10 @@ BUILD_DIR := build/$(TARGET) SRC_DIRS := src src/SDK/OS src/libstdc++ src/MetroTRK src/GameSpy \ src/nw4r/ut src/nw4r/snd src/nw4r/ut/detail src/nw4r/snd/detail \ - src/nw4r/math src/nw4r/lyt + src/nw4r/math src/nw4r/lyt src/nw4r/lyt/detail ASM_DIRS := asm asm/SDK/OS asm/libstdc++ asm/MetroTRK asm/GameSpy \ asm/nw4r/ut asm/nw4r/snd asm/nw4r/ut/detail asm/nw4r/snd/detail \ - asm/nw4r/math asm/nw4r/lyt + asm/nw4r/math asm/nw4r/lyt asm/nw4r/lyt/detail # Inputs S_FILES := $(wildcard asm/*.s) diff --git a/asm/GameSpy/NATify.s b/asm/GameSpy/NATify.s index 01d692b..8c880ea 100644 --- a/asm/GameSpy/NATify.s +++ b/asm/GameSpy/NATify.s @@ -35,7 +35,7 @@ lbl_8035A490: /* 8035A4B4 00356114 7F C6 F3 78 */ mr r6, r30
/* 8035A4B8 00356118 38 8D 94 98 */ addi r4, r13, lbl_8063E758-_SDA_BASE_
/* 8035A4BC 0035611C 4C C6 31 82 */ crclr 6
-/* 8035A4C0 00356120 4B E7 26 3D */ bl func_801CCAFC
+/* 8035A4C0 00356120 4B E7 26 3D */ bl sprintf
/* 8035A4C4 00356124 48 00 00 50 */ b lbl_8035A514
lbl_8035A4C8:
/* 8035A4C8 00356128 90 61 00 08 */ stw r3, 8(r1)
@@ -45,7 +45,7 @@ lbl_8035A4C8: /* 8035A4D8 00356138 7F E3 FB 78 */ mr r3, r31
/* 8035A4DC 0035613C 38 8D 94 A0 */ addi r4, r13, lbl_8063E760-_SDA_BASE_
/* 8035A4E0 00356140 4C C6 31 82 */ crclr 6
-/* 8035A4E4 00356144 4B E7 26 19 */ bl func_801CCAFC
+/* 8035A4E4 00356144 4B E7 26 19 */ bl sprintf
/* 8035A4E8 00356148 48 00 00 2C */ b lbl_8035A514
lbl_8035A4EC:
/* 8035A4EC 0035614C 2C 04 00 00 */ cmpwi r4, 0
@@ -54,7 +54,7 @@ lbl_8035A4EC: /* 8035A4F8 00356158 7F C5 F3 78 */ mr r5, r30
/* 8035A4FC 0035615C 38 8D 94 A4 */ addi r4, r13, lbl_8063E764-_SDA_BASE_
/* 8035A500 00356160 4C C6 31 82 */ crclr 6
-/* 8035A504 00356164 4B E7 25 F9 */ bl func_801CCAFC
+/* 8035A504 00356164 4B E7 25 F9 */ bl sprintf
/* 8035A508 00356168 48 00 00 0C */ b lbl_8035A514
lbl_8035A50C:
/* 8035A50C 0035616C 38 00 00 00 */ li r0, 0
@@ -180,7 +180,7 @@ lbl_8035A6B0: /* 8035A6B0 00356310 38 7A 12 18 */ addi r3, r26, 0x1218
/* 8035A6B4 00356314 38 9B E7 68 */ addi r4, r27, -6296
/* 8035A6B8 00356318 38 A0 00 06 */ li r5, 6
-/* 8035A6BC 0035631C 4B E6 FC DD */ bl func_801CA398
+/* 8035A6BC 0035631C 4B E6 FC DD */ bl memcmp
/* 8035A6C0 00356320 2C 03 00 00 */ cmpwi r3, 0
/* 8035A6C4 00356324 41 82 00 0C */ beq lbl_8035A6D0
/* 8035A6C8 00356328 38 60 00 01 */ li r3, 1
diff --git a/asm/GameSpy/gbucket.s b/asm/GameSpy/gbucket.s index 2449fac..139df19 100644 --- a/asm/GameSpy/gbucket.s +++ b/asm/GameSpy/gbucket.s @@ -404,10 +404,10 @@ lbl_803576C8: /* 803576E4 00353344 4B FE 1C 31 */ bl gsimalloc
/* 803576E8 00353348 7C 7F 1B 78 */ mr r31, r3
/* 803576EC 0035334C 7F A4 EB 78 */ mr r4, r29
-/* 803576F0 00353350 4B E7 6B E1 */ bl func_801CE2D0
+/* 803576F0 00353350 4B E7 6B E1 */ bl strcpy
/* 803576F4 00353354 7F E3 FB 78 */ mr r3, r31
/* 803576F8 00353358 7F 84 E3 78 */ mr r4, r28
-/* 803576FC 0035335C 4B E7 6C D9 */ bl func_801CE3D4
+/* 803576FC 0035335C 4B E7 6C D9 */ bl strcat
/* 80357700 00353360 80 1E 00 04 */ lwz r0, 4(r30)
/* 80357704 00353364 2C 00 00 00 */ cmpwi r0, 0
/* 80357708 00353368 40 82 00 10 */ bne lbl_80357718
@@ -1099,10 +1099,10 @@ lbl_80357F8C: /* 80357FA8 00353C08 4B FE 13 6D */ bl gsimalloc
/* 80357FAC 00353C0C 7C 7F 1B 78 */ mr r31, r3
/* 80357FB0 00353C10 7F A4 EB 78 */ mr r4, r29
-/* 80357FB4 00353C14 4B E7 63 1D */ bl func_801CE2D0
+/* 80357FB4 00353C14 4B E7 63 1D */ bl strcpy
/* 80357FB8 00353C18 7F E3 FB 78 */ mr r3, r31
/* 80357FBC 00353C1C 7F 84 E3 78 */ mr r4, r28
-/* 80357FC0 00353C20 4B E7 64 15 */ bl func_801CE3D4
+/* 80357FC0 00353C20 4B E7 64 15 */ bl strcat
/* 80357FC4 00353C24 80 1E 00 04 */ lwz r0, 4(r30)
/* 80357FC8 00353C28 2C 00 00 00 */ cmpwi r0, 0
/* 80357FCC 00353C2C 40 82 00 10 */ bne lbl_80357FDC
diff --git a/asm/GameSpy/ghttpBuffer.s b/asm/GameSpy/ghttpBuffer.s index 3dff221..ed19e2d 100644 --- a/asm/GameSpy/ghttpBuffer.s +++ b/asm/GameSpy/ghttpBuffer.s @@ -617,7 +617,7 @@ ghiAppendIntToBuffer: /* 80350FFC 0034CC5C 7C 7F 1B 78 */ mr r31, r3
/* 80351000 0034CC60 38 61 00 08 */ addi r3, r1, 8
/* 80351004 0034CC64 4C C6 31 82 */ crclr 6
-/* 80351008 0034CC68 4B E7 BA F5 */ bl func_801CCAFC
+/* 80351008 0034CC68 4B E7 BA F5 */ bl sprintf
/* 8035100C 0034CC6C 7F E3 FB 78 */ mr r3, r31
/* 80351010 0034CC70 38 81 00 08 */ addi r4, r1, 8
/* 80351014 0034CC74 38 A0 00 00 */ li r5, 0
diff --git a/asm/GameSpy/ghttpConnection.s b/asm/GameSpy/ghttpConnection.s index 0e042c5..9c2685c 100644 --- a/asm/GameSpy/ghttpConnection.s +++ b/asm/GameSpy/ghttpConnection.s @@ -458,7 +458,7 @@ lbl_80351D88: /* 80351D94 0034D9F4 38 63 BF 70 */ addi r3, r3, lbl_8044BF70@l
/* 80351D98 0034D9F8 80 9E 00 14 */ lwz r4, 0x14(r30)
/* 80351D9C 0034D9FC 38 A0 00 08 */ li r5, 8
-/* 80351DA0 0034DA00 4B E7 C7 C9 */ bl func_801CE568
+/* 80351DA0 0034DA00 4B E7 C7 C9 */ bl strncmp
/* 80351DA4 0034DA04 2C 03 00 00 */ cmpwi r3, 0
/* 80351DA8 0034DA08 41 82 00 0C */ beq lbl_80351DB4
/* 80351DAC 0034DA0C 93 FE 01 94 */ stw r31, 0x194(r30)
diff --git a/asm/GameSpy/ghttpEncryption.s b/asm/GameSpy/ghttpEncryption.s index 75d9a00..bcf4787 100644 --- a/asm/GameSpy/ghttpEncryption.s +++ b/asm/GameSpy/ghttpEncryption.s @@ -36,7 +36,7 @@ lbl_80351EFC: /* 80351F08 0034DB68 80 63 00 14 */ lwz r3, 0x14(r3)
/* 80351F0C 0034DB6C 38 84 BF 80 */ addi r4, r4, lbl_8044BF80@l
/* 80351F10 0034DB70 38 A0 00 08 */ li r5, 8
-/* 80351F14 0034DB74 4B E7 C6 55 */ bl func_801CE568
+/* 80351F14 0034DB74 4B E7 C6 55 */ bl strncmp
/* 80351F18 0034DB78 2C 03 00 00 */ cmpwi r3, 0
/* 80351F1C 0034DB7C 40 82 00 0C */ bne lbl_80351F28
/* 80351F20 0034DB80 38 60 00 00 */ li r3, 0
@@ -1333,7 +1333,7 @@ lbl_8035317C: /* 8035317C 0034EDDC 7C 65 1A 14 */ add r3, r5, r3
/* 80353180 0034EDE0 38 95 25 70 */ addi r4, r21, 0x2570
/* 80353184 0034EDE4 38 A0 00 09 */ li r5, 9
-/* 80353188 0034EDE8 4B E7 72 11 */ bl func_801CA398
+/* 80353188 0034EDE8 4B E7 72 11 */ bl memcmp
/* 8035318C 0034EDEC 2C 03 00 00 */ cmpwi r3, 0
/* 80353190 0034EDF0 41 82 00 0C */ beq lbl_8035319C
/* 80353194 0034EDF4 38 60 00 03 */ li r3, 3
diff --git a/asm/GameSpy/ghttpPost.s b/asm/GameSpy/ghttpPost.s index ef10c8d..3015156 100644 --- a/asm/GameSpy/ghttpPost.s +++ b/asm/GameSpy/ghttpPost.s @@ -379,14 +379,14 @@ ghiPostStateInit: lbl_80354768:
/* 80354768 003503C8 38 80 00 00 */ li r4, 0
/* 8035476C 003503CC 38 A0 00 02 */ li r5, 2
-/* 80354770 003503D0 4B E7 59 81 */ bl func_801CA0F0
+/* 80354770 003503D0 4B E7 59 81 */ bl fseek
/* 80354774 003503D4 2C 03 00 00 */ cmpwi r3, 0
/* 80354778 003503D8 41 82 00 0C */ beq lbl_80354784
/* 8035477C 003503DC 38 60 00 00 */ li r3, 0
/* 80354780 003503E0 48 00 00 48 */ b lbl_803547C8
lbl_80354784:
/* 80354784 003503E4 80 7F 00 08 */ lwz r3, 8(r31)
-/* 80354788 003503E8 4B E7 57 A1 */ bl func_801C9F28
+/* 80354788 003503E8 4B E7 57 A1 */ bl ftell
/* 8035478C 003503EC 2C 03 FF FF */ cmpwi r3, -1
/* 80354790 003503F0 90 7F 00 0C */ stw r3, 0xc(r31)
/* 80354794 003503F4 40 82 00 0C */ bne lbl_803547A0
@@ -394,7 +394,7 @@ lbl_80354784: /* 8035479C 003503FC 48 00 00 2C */ b lbl_803547C8
lbl_803547A0:
/* 803547A0 00350400 80 7F 00 08 */ lwz r3, 8(r31)
-/* 803547A4 00350404 4B E7 59 51 */ bl func_801CA0F4
+/* 803547A4 00350404 4B E7 59 51 */ bl rewind
/* 803547A8 00350408 48 00 00 1C */ b lbl_803547C4
lbl_803547AC:
/* 803547AC 0035040C 2C 04 00 02 */ cmpwi r4, 2
@@ -484,7 +484,7 @@ lbl_803548B0: /* 803548D8 00350538 80 63 00 08 */ lwz r3, 8(r3)
/* 803548DC 0035053C 2C 03 00 00 */ cmpwi r3, 0
/* 803548E0 00350540 41 82 00 08 */ beq lbl_803548E8
-/* 803548E4 00350544 4B E7 52 ED */ bl func_801C9BD0
+/* 803548E4 00350544 4B E7 52 ED */ bl fclose
lbl_803548E8:
/* 803548E8 00350548 93 FE 00 08 */ stw r31, 8(r30)
lbl_803548EC:
@@ -567,7 +567,7 @@ lbl_803549C8: /* 803549F0 00350650 80 63 00 08 */ lwz r3, 8(r3)
/* 803549F4 00350654 2C 03 00 00 */ cmpwi r3, 0
/* 803549F8 00350658 41 82 00 08 */ beq lbl_80354A00
-/* 803549FC 0035065C 4B E7 51 D5 */ bl func_801C9BD0
+/* 803549FC 0035065C 4B E7 51 D5 */ bl fclose
lbl_80354A00:
/* 80354A00 00350660 93 FE 00 08 */ stw r31, 8(r30)
lbl_80354A04:
@@ -649,7 +649,7 @@ lbl_80354AFC: lbl_80354B0C:
/* 80354B0C 0035076C 7F 64 DB 78 */ mr r4, r27
/* 80354B10 00350770 38 7C BF F8 */ addi r3, r28, -16392
-/* 80354B14 00350774 4B E7 9A 95 */ bl func_801CE5A8
+/* 80354B14 00350774 4B E7 9A 95 */ bl strchr
/* 80354B18 00350778 2C 03 00 00 */ cmpwi r3, 0
/* 80354B1C 0035077C 41 82 00 14 */ beq lbl_80354B30
/* 80354B20 00350780 7F 43 D3 78 */ mr r3, r26
@@ -850,7 +850,7 @@ lbl_80354DC4: /* 80354DC8 00350A28 38 61 00 10 */ addi r3, r1, 0x10
/* 80354DCC 00350A2C 38 80 00 01 */ li r4, 1
/* 80354DD0 00350A30 38 A0 10 00 */ li r5, 0x1000
-/* 80354DD4 00350A34 4B E7 47 B1 */ bl func_801C9584
+/* 80354DD4 00350A34 4B E7 47 B1 */ bl fread
/* 80354DD8 00350A38 2C 03 00 00 */ cmpwi r3, 0
/* 80354DDC 00350A3C 7C 65 1B 78 */ mr r5, r3
/* 80354DE0 00350A40 41 81 00 1C */ bgt lbl_80354DFC
@@ -1097,7 +1097,7 @@ ghiPostStateDoPosting: /* 80355148 00350DA8 38 8D 93 C8 */ addi r4, r13, lbl_8063E688-_SDA_BASE_
/* 8035514C 00350DAC 80 A5 00 04 */ lwz r5, 4(r5)
/* 80355150 00350DB0 4C C6 31 82 */ crclr 6
-/* 80355154 00350DB4 4B E7 79 A9 */ bl func_801CCAFC
+/* 80355154 00350DB4 4B E7 79 A9 */ bl sprintf
/* 80355158 00350DB8 48 00 04 5C */ b lbl_803555B4
lbl_8035515C:
/* 8035515C 00350DBC 80 BB 00 00 */ lwz r5, 0(r27)
@@ -1105,7 +1105,7 @@ lbl_8035515C: /* 80355164 00350DC4 38 8D 93 CC */ addi r4, r13, lbl_8063E68C-_SDA_BASE_
/* 80355168 00350DC8 80 A5 00 04 */ lwz r5, 4(r5)
/* 8035516C 00350DCC 4C C6 31 82 */ crclr 6
-/* 80355170 00350DD0 4B E7 79 8D */ bl func_801CCAFC
+/* 80355170 00350DD0 4B E7 79 8D */ bl sprintf
/* 80355174 00350DD4 48 00 04 40 */ b lbl_803555B4
lbl_80355178:
/* 80355178 00350DD8 81 03 00 00 */ lwz r8, 0(r3)
@@ -1121,7 +1121,7 @@ lbl_80355178: lbl_803551A0:
/* 803551A0 00350E00 80 C8 00 04 */ lwz r6, 4(r8)
/* 803551A4 00350E04 4C C6 31 82 */ crclr 6
-/* 803551A8 00350E08 4B E7 79 55 */ bl func_801CCAFC
+/* 803551A8 00350E08 4B E7 79 55 */ bl sprintf
/* 803551AC 00350E0C 48 00 04 08 */ b lbl_803555B4
lbl_803551B0:
/* 803551B0 00350E10 2C 07 00 03 */ cmpwi r7, 3
@@ -1167,7 +1167,7 @@ lbl_803551F0: /* 80355248 00350EA8 4B CA ED B9 */ bl memcpy
/* 8035524C 00350EAC 38 61 00 2C */ addi r3, r1, 0x2c
/* 80355250 00350EB0 38 8D 93 C0 */ addi r4, r13, lbl_8063E680-_SDA_BASE_
-/* 80355254 00350EB4 4B E7 90 7D */ bl func_801CE2D0
+/* 80355254 00350EB4 4B E7 90 7D */ bl strcpy
/* 80355258 00350EB8 38 6D 93 C0 */ addi r3, r13, lbl_8063E680-_SDA_BASE_
/* 8035525C 00350EBC 4B E7 19 09 */ bl strlen
/* 80355260 00350EC0 3B A3 00 0C */ addi r29, r3, 0xc
@@ -1209,7 +1209,7 @@ lbl_803552E0: /* 803552E0 00350F40 38 61 00 20 */ addi r3, r1, 0x20
/* 803552E4 00350F44 38 9F 00 F4 */ addi r4, r31, 0xf4
/* 803552E8 00350F48 7C 63 EA 14 */ add r3, r3, r29
-/* 803552EC 00350F4C 4B E7 8F E5 */ bl func_801CE2D0
+/* 803552EC 00350F4C 4B E7 8F E5 */ bl strcpy
/* 803552F0 00350F50 38 7F 00 F4 */ addi r3, r31, 0xf4
/* 803552F4 00350F54 4B E7 18 71 */ bl strlen
/* 803552F8 00350F58 7F BD 1A 14 */ add r29, r29, r3
@@ -1309,7 +1309,7 @@ lbl_803553F4: /* 8035544C 003510AC 80 9B 00 00 */ lwz r4, 0(r27)
/* 80355450 003510B0 38 61 00 2C */ addi r3, r1, 0x2c
/* 80355454 003510B4 80 84 00 04 */ lwz r4, 4(r4)
-/* 80355458 003510B8 4B E7 8E 79 */ bl func_801CE2D0
+/* 80355458 003510B8 4B E7 8E 79 */ bl strcpy
/* 8035545C 003510BC 80 7B 00 00 */ lwz r3, 0(r27)
/* 80355460 003510C0 83 43 00 04 */ lwz r26, 4(r3)
/* 80355464 003510C4 7F 43 D3 78 */ mr r3, r26
@@ -1353,7 +1353,7 @@ lbl_803554EC: /* 803554EC 0035114C 38 61 00 20 */ addi r3, r1, 0x20
/* 803554F0 00351150 7F C4 F3 78 */ mr r4, r30
/* 803554F4 00351154 7C 63 EA 14 */ add r3, r3, r29
-/* 803554F8 00351158 4B E7 8D D9 */ bl func_801CE2D0
+/* 803554F8 00351158 4B E7 8D D9 */ bl strcpy
/* 803554FC 0035115C 7F C3 F3 78 */ mr r3, r30
/* 80355500 00351160 4B E7 16 65 */ bl strlen
/* 80355504 00351164 7F BD 1A 14 */ add r29, r29, r3
@@ -1404,7 +1404,7 @@ lbl_803555A4: /* 803555A4 00351204 80 C8 00 04 */ lwz r6, 4(r8)
/* 803555A8 00351208 7F C8 F3 78 */ mr r8, r30
/* 803555AC 0035120C 4C C6 31 82 */ crclr 6
-/* 803555B0 00351210 4B E7 75 4D */ bl func_801CCAFC
+/* 803555B0 00351210 4B E7 75 4D */ bl sprintf
lbl_803555B4:
/* 803555B4 00351214 80 1C 01 94 */ lwz r0, 0x194(r28)
/* 803555B8 00351218 2C 00 00 00 */ cmpwi r0, 0
diff --git a/asm/GameSpy/ghttpProcess.s b/asm/GameSpy/ghttpProcess.s index 1e83148..1535947 100644 --- a/asm/GameSpy/ghttpProcess.s +++ b/asm/GameSpy/ghttpProcess.s @@ -26,7 +26,7 @@ lbl_80355980: /* 80355980 003515E0 7F C3 F3 78 */ mr r3, r30
/* 80355984 003515E4 38 8D 93 D8 */ addi r4, r13, lbl_8063E698-_SDA_BASE_
/* 80355988 003515E8 38 A0 00 07 */ li r5, 7
-/* 8035598C 003515EC 4B E7 8B DD */ bl func_801CE568
+/* 8035598C 003515EC 4B E7 8B DD */ bl strncmp
/* 80355990 003515F0 2C 03 00 00 */ cmpwi r3, 0
/* 80355994 003515F4 40 82 00 14 */ bne lbl_803559A8
/* 80355998 003515F8 38 00 00 00 */ li r0, 0
@@ -38,7 +38,7 @@ lbl_803559A8: /* 803559AC 0035160C 7F C3 F3 78 */ mr r3, r30
/* 803559B0 00351610 38 84 C2 38 */ addi r4, r4, lbl_8044C238@l
/* 803559B4 00351614 38 A0 00 08 */ li r5, 8
-/* 803559B8 00351618 4B E7 8B B1 */ bl func_801CE568
+/* 803559B8 00351618 4B E7 8B B1 */ bl strncmp
/* 803559BC 0035161C 2C 03 00 00 */ cmpwi r3, 0
/* 803559C0 00351620 40 82 00 14 */ bne lbl_803559D4
/* 803559C4 00351624 38 00 00 01 */ li r0, 1
@@ -51,7 +51,7 @@ lbl_803559D4: lbl_803559DC:
/* 803559DC 0035163C 7F A3 EB 78 */ mr r3, r29
/* 803559E0 00351640 38 8D 93 E0 */ addi r4, r13, lbl_8063E6A0-_SDA_BASE_
-/* 803559E4 00351644 4B E7 8B F5 */ bl func_801CE5D8
+/* 803559E4 00351644 4B E7 8B F5 */ bl strcspn
/* 803559E8 00351648 7F 9D 18 AE */ lbzx r28, r29, r3
/* 803559EC 0035164C 38 00 00 00 */ li r0, 0
/* 803559F0 00351650 7C 7E 1B 78 */ mr r30, r3
@@ -110,7 +110,7 @@ lbl_80355AA4: /* 80355AA4 00351704 83 BF 00 24 */ lwz r29, 0x24(r31)
/* 80355AA8 00351708 38 80 00 20 */ li r4, 0x20
/* 80355AAC 0035170C 7F A3 EB 78 */ mr r3, r29
-/* 80355AB0 00351710 4B E7 8A F9 */ bl func_801CE5A8
+/* 80355AB0 00351710 4B E7 8A F9 */ bl strchr
/* 80355AB4 00351714 2C 03 00 00 */ cmpwi r3, 0
/* 80355AB8 00351718 40 82 FF E8 */ bne lbl_80355AA0
/* 80355ABC 0035171C 7C 1D 00 D0 */ neg r0, r29
@@ -629,7 +629,7 @@ lbl_803561CC: /* 803561D0 00351E30 2C 03 00 00 */ cmpwi r3, 0
/* 803561D4 00351E34 41 82 00 14 */ beq lbl_803561E8
/* 803561D8 00351E38 38 9E 00 18 */ addi r4, r30, 0x18
-/* 803561DC 00351E3C 4B E7 85 C5 */ bl func_801CE7A0
+/* 803561DC 00351E3C 4B E7 85 C5 */ bl strstr
/* 803561E0 00351E40 2C 03 00 00 */ cmpwi r3, 0
/* 803561E4 00351E44 40 82 00 14 */ bne lbl_803561F8
lbl_803561E8:
@@ -662,7 +662,7 @@ lbl_80356228: /* 80356244 00351EA4 38 61 00 08 */ addi r3, r1, 8
/* 80356248 00351EA8 38 8D 94 1C */ addi r4, r13, lbl_8063E6DC-_SDA_BASE_
/* 8035624C 00351EAC 4C C6 31 82 */ crclr 6
-/* 80356250 00351EB0 4B E7 68 AD */ bl func_801CCAFC
+/* 80356250 00351EB0 4B E7 68 AD */ bl sprintf
/* 80356254 00351EB4 7F A3 EB 78 */ mr r3, r29
/* 80356258 00351EB8 38 9E 00 50 */ addi r4, r30, 0x50
/* 8035625C 00351EBC 38 A1 00 08 */ addi r5, r1, 8
@@ -876,7 +876,7 @@ ghiParseStatus: /* 8035653C 0035219C 39 01 00 08 */ addi r8, r1, 8
/* 80356540 003521A0 80 63 00 A0 */ lwz r3, 0xa0(r3)
/* 80356544 003521A4 4C C6 31 82 */ crclr 6
-/* 80356548 003521A8 4B E7 7C C1 */ bl func_801CE208
+/* 80356548 003521A8 4B E7 7C C1 */ bl sscanf
/* 8035654C 003521AC 2C 03 00 03 */ cmpwi r3, 3
/* 80356550 003521B0 40 82 00 24 */ bne lbl_80356574
/* 80356554 003521B4 80 C1 00 14 */ lwz r6, 0x14(r1)
@@ -993,7 +993,7 @@ lbl_803566C0: lbl_803566D8:
/* 803566D8 00352338 80 7D 00 A0 */ lwz r3, 0xa0(r29)
/* 803566DC 0035233C 38 8D 94 10 */ addi r4, r13, lbl_8063E6D0-_SDA_BASE_
-/* 803566E0 00352340 4B E7 80 C1 */ bl func_801CE7A0
+/* 803566E0 00352340 4B E7 80 C1 */ bl strstr
/* 803566E4 00352344 2C 03 00 00 */ cmpwi r3, 0
/* 803566E8 00352348 41 82 00 88 */ beq lbl_80356770
/* 803566EC 0035234C 3B E0 00 00 */ li r31, 0
@@ -1141,7 +1141,7 @@ lbl_803568D4: /* 803568DC 0035253C 40 82 01 34 */ bne lbl_80356A10
/* 803568E0 00352540 7F C3 F3 78 */ mr r3, r30
/* 803568E4 00352544 38 80 00 0A */ li r4, 0xa
-/* 803568E8 00352548 4B E7 7C C1 */ bl func_801CE5A8
+/* 803568E8 00352548 4B E7 7C C1 */ bl strchr
/* 803568EC 0035254C 2C 03 00 00 */ cmpwi r3, 0
/* 803568F0 00352550 7C 7B 1B 78 */ mr r27, r3
/* 803568F4 00352554 41 82 00 C4 */ beq lbl_803569B8
@@ -1174,7 +1174,7 @@ lbl_80356944: /* 80356958 003525B8 38 8D 94 20 */ addi r4, r13, lbl_8063E6E0-_SDA_BASE_
/* 8035695C 003525BC 7F E0 F8 50 */ subf r31, r0, r31
/* 80356960 003525C0 4C C6 31 82 */ crclr 6
-/* 80356964 003525C4 4B E7 78 A5 */ bl func_801CE208
+/* 80356964 003525C4 4B E7 78 A5 */ bl sscanf
/* 80356968 003525C8 2C 03 00 01 */ cmpwi r3, 1
/* 8035696C 003525CC 41 82 00 0C */ beq lbl_80356978
/* 80356970 003525D0 38 00 FF FF */ li r0, -1
@@ -1255,7 +1255,7 @@ lbl_80356A6C: /* 80356A70 003526D0 40 82 00 44 */ bne lbl_80356AB4
/* 80356A74 003526D4 7F C3 F3 78 */ mr r3, r30
/* 80356A78 003526D8 38 80 00 0A */ li r4, 0xa
-/* 80356A7C 003526DC 4B E7 7B 2D */ bl func_801CE5A8
+/* 80356A7C 003526DC 4B E7 7B 2D */ bl strchr
/* 80356A80 003526E0 2C 03 00 00 */ cmpwi r3, 0
/* 80356A84 003526E4 40 82 00 0C */ bne lbl_80356A90
/* 80356A88 003526E8 38 60 00 01 */ li r3, 1
@@ -1359,13 +1359,13 @@ lbl_80356BB4: /* 80356BE4 00352844 7F A3 EB 78 */ mr r3, r29
/* 80356BE8 00352848 38 8D 94 10 */ addi r4, r13, lbl_8063E6D0-_SDA_BASE_
/* 80356BEC 0035284C 38 A0 00 02 */ li r5, 2
-/* 80356BF0 00352850 4B E7 79 79 */ bl func_801CE568
+/* 80356BF0 00352850 4B E7 79 79 */ bl strncmp
/* 80356BF4 00352854 2C 03 00 00 */ cmpwi r3, 0
/* 80356BF8 00352858 41 82 00 1C */ beq lbl_80356C14
/* 80356BFC 0035285C 7F A3 EB 78 */ mr r3, r29
/* 80356C00 00352860 38 8D 94 24 */ addi r4, r13, lbl_8063E6E4-_SDA_BASE_
/* 80356C04 00352864 38 A0 00 02 */ li r5, 2
-/* 80356C08 00352868 4B E7 79 61 */ bl func_801CE568
+/* 80356C08 00352868 4B E7 79 61 */ bl strncmp
/* 80356C0C 0035286C 2C 03 00 00 */ cmpwi r3, 0
/* 80356C10 00352870 40 82 00 10 */ bne lbl_80356C20
lbl_80356C14:
@@ -1375,13 +1375,13 @@ lbl_80356C14: lbl_80356C20:
/* 80356C20 00352880 7F A3 EB 78 */ mr r3, r29
/* 80356C24 00352884 38 8D 94 28 */ addi r4, r13, lbl_8063E6E8-_SDA_BASE_
-/* 80356C28 00352888 4B E7 7B 79 */ bl func_801CE7A0
+/* 80356C28 00352888 4B E7 7B 79 */ bl strstr
lbl_80356C2C:
/* 80356C2C 0035288C 2C 03 00 00 */ cmpwi r3, 0
/* 80356C30 00352890 40 82 00 10 */ bne lbl_80356C40
/* 80356C34 00352894 7F A3 EB 78 */ mr r3, r29
/* 80356C38 00352898 38 8D 94 24 */ addi r4, r13, lbl_8063E6E4-_SDA_BASE_
-/* 80356C3C 0035289C 4B E7 7B 65 */ bl func_801CE7A0
+/* 80356C3C 0035289C 4B E7 7B 65 */ bl strstr
lbl_80356C40:
/* 80356C40 003528A0 2C 03 00 00 */ cmpwi r3, 0
/* 80356C44 003528A4 41 82 03 F4 */ beq lbl_80357038
@@ -1454,7 +1454,7 @@ lbl_80356D14: lbl_80356D3C:
/* 80356D3C 0035299C 7F A3 EB 78 */ mr r3, r29
/* 80356D40 003529A0 38 9E 00 80 */ addi r4, r30, 0x80
-/* 80356D44 003529A4 4B E7 7A 5D */ bl func_801CE7A0
+/* 80356D44 003529A4 4B E7 7A 5D */ bl strstr
/* 80356D48 003529A8 2C 03 00 00 */ cmpwi r3, 0
/* 80356D4C 003529AC 41 82 01 44 */ beq lbl_80356E90
/* 80356D50 003529B0 3C 80 80 42 */ lis r4, lbl_80422D48@ha
@@ -1540,7 +1540,7 @@ lbl_80356E4C: /* 80356E58 00352AB8 38 9E 00 8C */ addi r4, r30, 0x8c
/* 80356E5C 00352ABC A0 D8 00 20 */ lhz r6, 0x20(r24)
/* 80356E60 00352AC0 4C C6 31 82 */ crclr 6
-/* 80356E64 00352AC4 4B E7 5C 99 */ bl func_801CCAFC
+/* 80356E64 00352AC4 4B E7 5C 99 */ bl sprintf
/* 80356E68 00352AC8 48 00 01 F4 */ b lbl_8035705C
lbl_80356E6C:
/* 80356E6C 00352ACC 7F 63 DB 78 */ mr r3, r27
@@ -1555,7 +1555,7 @@ lbl_80356E6C: lbl_80356E90:
/* 80356E90 00352AF0 7F A3 EB 78 */ mr r3, r29
/* 80356E94 00352AF4 38 9E 00 A0 */ addi r4, r30, 0xa0
-/* 80356E98 00352AF8 4B E7 79 09 */ bl func_801CE7A0
+/* 80356E98 00352AF8 4B E7 79 09 */ bl strstr
/* 80356E9C 00352AFC 2C 03 00 00 */ cmpwi r3, 0
/* 80356EA0 00352B00 7C 7F 1B 78 */ mr r31, r3
/* 80356EA4 00352B04 41 82 01 00 */ beq lbl_80356FA4
@@ -1615,7 +1615,7 @@ lbl_80356F68: /* 80356F6C 00352BCC 40 82 00 2C */ bne lbl_80356F98
/* 80356F70 00352BD0 7F 43 D3 78 */ mr r3, r26
/* 80356F74 00352BD4 38 81 00 0C */ addi r4, r1, 0xc
-/* 80356F78 00352BD8 4B E7 75 F1 */ bl func_801CE568
+/* 80356F78 00352BD8 4B E7 75 F1 */ bl strncmp
/* 80356F7C 00352BDC 2C 03 00 00 */ cmpwi r3, 0
/* 80356F80 00352BE0 41 80 00 18 */ blt lbl_80356F98
/* 80356F84 00352BE4 38 60 00 01 */ li r3, 1
@@ -1630,7 +1630,7 @@ lbl_80356F98: lbl_80356FA4:
/* 80356FA4 00352C04 7F A3 EB 78 */ mr r3, r29
/* 80356FA8 00352C08 38 9E 00 B0 */ addi r4, r30, 0xb0
-/* 80356FAC 00352C0C 4B E7 77 F5 */ bl func_801CE7A0
+/* 80356FAC 00352C0C 4B E7 77 F5 */ bl strstr
/* 80356FB0 00352C10 7C 03 00 D0 */ neg r0, r3
/* 80356FB4 00352C14 7C 00 1B 78 */ or r0, r0, r3
/* 80356FB8 00352C18 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f
diff --git a/asm/GameSpy/gp.s b/asm/GameSpy/gp.s index 24ca89c..2ef9eee 100644 --- a/asm/GameSpy/gp.s +++ b/asm/GameSpy/gp.s @@ -916,12 +916,12 @@ lbl_8033D9A4: /* 8033D9B8 00339618 40 82 00 34 */ bne lbl_8033D9EC
/* 8033D9BC 0033961C 38 61 01 08 */ addi r3, r1, 0x108
/* 8033D9C0 00339620 38 9C 02 34 */ addi r4, r28, 0x234
-/* 8033D9C4 00339624 4B E9 0A 89 */ bl func_801CE44C
+/* 8033D9C4 00339624 4B E9 0A 89 */ bl strcmp
/* 8033D9C8 00339628 2C 03 00 00 */ cmpwi r3, 0
/* 8033D9CC 0033962C 40 82 00 20 */ bne lbl_8033D9EC
/* 8033D9D0 00339630 38 61 00 08 */ addi r3, r1, 8
/* 8033D9D4 00339634 38 9C 03 34 */ addi r4, r28, 0x334
-/* 8033D9D8 00339638 4B E9 0A 75 */ bl func_801CE44C
+/* 8033D9D8 00339638 4B E9 0A 75 */ bl strcmp
/* 8033D9DC 0033963C 2C 03 00 00 */ cmpwi r3, 0
/* 8033D9E0 00339640 40 82 00 0C */ bne lbl_8033D9EC
/* 8033D9E4 00339644 38 60 00 00 */ li r3, 0
@@ -1134,7 +1134,7 @@ lbl_8033DC14: lbl_8033DCE8:
/* 8033DCE8 00339948 4B FF B2 E9 */ bl SocketStartUp
/* 8033DCEC 0033994C 4B FF B2 ED */ bl current_time
-/* 8033DCF0 00339950 4B E8 F0 6D */ bl func_801CCD5C
+/* 8033DCF0 00339950 4B E8 F0 6D */ bl srand
/* 8033DCF4 00339954 80 01 00 08 */ lwz r0, 8(r1)
/* 8033DCF8 00339958 38 60 00 00 */ li r3, 0
/* 8033DCFC 0033995C 90 1E 00 00 */ stw r0, 0(r30)
diff --git a/asm/GameSpy/gpi.s b/asm/GameSpy/gpi.s index 53e82bc..5fababc 100644 --- a/asm/GameSpy/gpi.s +++ b/asm/GameSpy/gpi.s @@ -194,7 +194,7 @@ lbl_8033DFE8: /* 8033E020 00339C80 83 7D 02 08 */ lwz r27, 0x208(r29)
/* 8033E024 00339C84 38 8D 8F 54 */ addi r4, r13, lbl_8063E214-_SDA_BASE_
/* 8033E028 00339C88 7F 63 DB 78 */ mr r3, r27
-/* 8033E02C 00339C8C 4B E9 07 75 */ bl func_801CE7A0
+/* 8033E02C 00339C8C 4B E9 07 75 */ bl strstr
/* 8033E030 00339C90 2C 03 00 00 */ cmpwi r3, 0
/* 8033E034 00339C94 41 82 00 40 */ beq lbl_8033E074
/* 8033E038 00339C98 38 63 00 04 */ addi r3, r3, 4
@@ -226,7 +226,7 @@ lbl_8033E094: /* 8033E098 00339CF8 38 8D 8F 5C */ addi r4, r13, lbl_8063E21C-_SDA_BASE_
/* 8033E09C 00339CFC 38 A0 00 04 */ li r5, 4
/* 8033E0A0 00339D00 7F 63 DB 78 */ mr r3, r27
-/* 8033E0A4 00339D04 4B E9 04 C5 */ bl func_801CE568
+/* 8033E0A4 00339D04 4B E9 04 C5 */ bl strncmp
/* 8033E0A8 00339D08 2C 03 00 00 */ cmpwi r3, 0
/* 8033E0AC 00339D0C 40 82 00 1C */ bne lbl_8033E0C8
/* 8033E0B0 00339D10 7F 83 E3 78 */ mr r3, r28
@@ -239,13 +239,13 @@ lbl_8033E0C8: /* 8033E0C8 00339D28 7F 63 DB 78 */ mr r3, r27
/* 8033E0CC 00339D2C 38 8D 8F 64 */ addi r4, r13, lbl_8063E224-_SDA_BASE_
/* 8033E0D0 00339D30 38 A0 00 04 */ li r5, 4
-/* 8033E0D4 00339D34 4B E9 04 95 */ bl func_801CE568
+/* 8033E0D4 00339D34 4B E9 04 95 */ bl strncmp
/* 8033E0D8 00339D38 2C 03 00 00 */ cmpwi r3, 0
/* 8033E0DC 00339D3C 41 82 00 30 */ beq lbl_8033E10C
/* 8033E0E0 00339D40 7F 63 DB 78 */ mr r3, r27
/* 8033E0E4 00339D44 38 8D 8F 6C */ addi r4, r13, lbl_8063E22C-_SDA_BASE_
/* 8033E0E8 00339D48 38 A0 00 04 */ li r5, 4
-/* 8033E0EC 00339D4C 4B E9 04 7D */ bl func_801CE568
+/* 8033E0EC 00339D4C 4B E9 04 7D */ bl strncmp
/* 8033E0F0 00339D50 2C 03 00 00 */ cmpwi r3, 0
/* 8033E0F4 00339D54 40 82 00 18 */ bne lbl_8033E10C
/* 8033E0F8 00339D58 7F 63 DB 78 */ mr r3, r27
@@ -256,7 +256,7 @@ lbl_8033E0C8: lbl_8033E10C:
/* 8033E10C 00339D6C 80 7D 01 F8 */ lwz r3, 0x1f8(r29)
/* 8033E110 00339D70 38 8D 8F 78 */ addi r4, r13, lbl_8063E238-_SDA_BASE_
-/* 8033E114 00339D74 4B E9 06 8D */ bl func_801CE7A0
+/* 8033E114 00339D74 4B E9 06 8D */ bl strstr
/* 8033E118 00339D78 2C 03 00 00 */ cmpwi r3, 0
/* 8033E11C 00339D7C 7C 7B 1B 78 */ mr r27, r3
/* 8033E120 00339D80 40 82 FE 64 */ bne lbl_8033DF84
diff --git a/asm/GameSpy/gpiBuddy.s b/asm/GameSpy/gpiBuddy.s index ec20349..d294cc3 100644 --- a/asm/GameSpy/gpiBuddy.s +++ b/asm/GameSpy/gpiBuddy.s @@ -147,7 +147,7 @@ lbl_8033E52C: /* 8033E558 0033A1B8 48 00 08 6C */ b lbl_8033EDC4
lbl_8033E55C:
/* 8033E55C 0033A1BC 38 81 01 88 */ addi r4, r1, 0x188
-/* 8033E560 0033A1C0 4B E8 FD 71 */ bl func_801CE2D0
+/* 8033E560 0033A1C0 4B E8 FD 71 */ bl strcpy
/* 8033E564 0033A1C4 93 B8 00 00 */ stw r29, 0(r24)
/* 8033E568 0033A1C8 7F 43 D3 78 */ mr r3, r26
/* 8033E56C 0033A1CC 80 E1 00 70 */ lwz r7, 0x70(r1)
@@ -213,7 +213,7 @@ lbl_8033E624: /* 8033E650 0033A2B0 48 00 07 74 */ b lbl_8033EDC4
lbl_8033E654:
/* 8033E654 0033A2B4 38 81 01 88 */ addi r4, r1, 0x188
-/* 8033E658 0033A2B8 4B E8 FC 79 */ bl func_801CE2D0
+/* 8033E658 0033A2B8 4B E8 FC 79 */ bl strcpy
/* 8033E65C 0033A2BC 93 B8 00 00 */ stw r29, 0(r24)
/* 8033E660 0033A2C0 7F 43 D3 78 */ mr r3, r26
/* 8033E664 0033A2C4 80 E1 00 08 */ lwz r7, 8(r1)
@@ -262,7 +262,7 @@ lbl_8033E6C4: lbl_8033E708:
/* 8033E708 0033A368 38 61 01 88 */ addi r3, r1, 0x188
/* 8033E70C 0033A36C 38 9E 00 40 */ addi r4, r30, 0x40
-/* 8033E710 0033A370 4B E9 00 91 */ bl func_801CE7A0
+/* 8033E710 0033A370 4B E9 00 91 */ bl strstr
/* 8033E714 0033A374 2C 03 00 00 */ cmpwi r3, 0
/* 8033E718 0033A378 7C 7B 1B 78 */ mr r27, r3
/* 8033E71C 0033A37C 40 82 00 2C */ bne lbl_8033E748
@@ -615,7 +615,7 @@ lbl_8033EBE8: lbl_8033EC2C:
/* 8033EC2C 0033A88C 38 61 01 88 */ addi r3, r1, 0x188
/* 8033EC30 0033A890 38 8D 8F B8 */ addi r4, r13, lbl_8063E278-_SDA_BASE_
-/* 8033EC34 0033A894 4B E8 FB 6D */ bl func_801CE7A0
+/* 8033EC34 0033A894 4B E8 FB 6D */ bl strstr
/* 8033EC38 0033A898 2C 03 00 00 */ cmpwi r3, 0
/* 8033EC3C 0033A89C 40 82 00 2C */ bne lbl_8033EC68
/* 8033EC40 0033A8A0 7F 43 D3 78 */ mr r3, r26
@@ -648,7 +648,7 @@ lbl_8033EC9C: /* 8033ECA4 0033A904 7C 7B 1B 78 */ mr r27, r3
/* 8033ECA8 0033A908 38 61 01 88 */ addi r3, r1, 0x188
/* 8033ECAC 0033A90C 38 8D 8F BC */ addi r4, r13, lbl_8063E27C-_SDA_BASE_
-/* 8033ECB0 0033A910 4B E8 FA F1 */ bl func_801CE7A0
+/* 8033ECB0 0033A910 4B E8 FA F1 */ bl strstr
/* 8033ECB4 0033A914 2C 03 00 00 */ cmpwi r3, 0
/* 8033ECB8 0033A918 7C 64 1B 78 */ mr r4, r3
/* 8033ECBC 0033A91C 41 82 00 18 */ beq lbl_8033ECD4
@@ -682,7 +682,7 @@ lbl_8033ED1C: /* 8033ED20 0033A980 38 81 00 88 */ addi r4, r1, 0x88
/* 8033ED24 0033A984 93 63 00 04 */ stw r27, 4(r3)
/* 8033ED28 0033A988 38 63 00 08 */ addi r3, r3, 8
-/* 8033ED2C 0033A98C 4B E8 F5 A5 */ bl func_801CE2D0
+/* 8033ED2C 0033A98C 4B E8 F5 A5 */ bl strcpy
/* 8033ED30 0033A990 80 81 00 30 */ lwz r4, 0x30(r1)
/* 8033ED34 0033A994 7F 43 D3 78 */ mr r3, r26
/* 8033ED38 0033A998 80 01 00 34 */ lwz r0, 0x34(r1)
diff --git a/asm/GameSpy/gpiBuffer.s b/asm/GameSpy/gpiBuffer.s index c4fe7e7..40208bd 100644 --- a/asm/GameSpy/gpiBuffer.s +++ b/asm/GameSpy/gpiBuffer.s @@ -149,7 +149,7 @@ gpiAppendIntToBuffer: /* 8033F518 0033B178 7C 7E 1B 78 */ mr r30, r3
/* 8033F51C 0033B17C 38 61 00 08 */ addi r3, r1, 8
/* 8033F520 0033B180 4C C6 31 82 */ crclr 6
-/* 8033F524 0033B184 4B E8 D5 D9 */ bl func_801CCAFC
+/* 8033F524 0033B184 4B E8 D5 D9 */ bl sprintf
/* 8033F528 0033B188 38 61 00 08 */ addi r3, r1, 8
/* 8033F52C 0033B18C 4B E8 76 39 */ bl strlen
/* 8033F530 0033B190 7C 66 1B 78 */ mr r6, r3
@@ -568,14 +568,14 @@ gpiReadMessageFromBuffer: lbl_8033FAD4:
/* 8033FAD4 0033B734 80 64 00 00 */ lwz r3, 0(r4)
/* 8033FAD8 0033B738 38 80 00 0A */ li r4, 0xa
-/* 8033FADC 0033B73C 4B E8 EA CD */ bl func_801CE5A8
+/* 8033FADC 0033B73C 4B E8 EA CD */ bl strchr
/* 8033FAE0 0033B740 2C 03 00 00 */ cmpwi r3, 0
/* 8033FAE4 0033B744 7C 7E 1B 78 */ mr r30, r3
/* 8033FAE8 0033B748 41 82 00 E4 */ beq lbl_8033FBCC
/* 8033FAEC 0033B74C 38 8D 8F E0 */ addi r4, r13, lbl_8063E2A0-_SDA_BASE_
/* 8033FAF0 0033B750 38 A0 00 05 */ li r5, 5
/* 8033FAF4 0033B754 38 63 FF FB */ addi r3, r3, -5
-/* 8033FAF8 0033B758 4B E8 EA 71 */ bl func_801CE568
+/* 8033FAF8 0033B758 4B E8 EA 71 */ bl strncmp
/* 8033FAFC 0033B75C 2C 03 00 00 */ cmpwi r3, 0
/* 8033FB00 0033B760 41 82 00 0C */ beq lbl_8033FB0C
/* 8033FB04 0033B764 38 60 00 03 */ li r3, 3
diff --git a/asm/GameSpy/gpiConnect.s b/asm/GameSpy/gpiConnect.s index 2272676..3ed395c 100644 --- a/asm/GameSpy/gpiConnect.s +++ b/asm/GameSpy/gpiConnect.s @@ -412,7 +412,7 @@ gpiSendLogin: /* 803406F0 0033C350 3B 7F 01 B8 */ addi r27, r31, 0x1b8
/* 803406F4 0033C354 3B 20 00 00 */ li r25, 0
lbl_803406F8:
-/* 803406F8 0033C358 4B E8 C6 45 */ bl func_801CCD3C
+/* 803406F8 0033C358 4B E8 C6 45 */ bl rand
/* 803406FC 0033C35C 7C BA 18 16 */ mulhwu r5, r26, r3
/* 80340700 0033C360 7C 9D CA 14 */ add r4, r29, r25
/* 80340704 0033C364 3B 39 00 01 */ addi r25, r25, 1
@@ -449,12 +449,12 @@ lbl_80340754: /* 80340778 0033C3D8 38 61 00 0C */ addi r3, r1, 0xc
/* 8034077C 0033C3DC 38 8D 8F F8 */ addi r4, r13, lbl_8063E2B8-_SDA_BASE_
/* 80340780 0033C3E0 4C C6 31 82 */ crclr 6
-/* 80340784 0033C3E4 4B E8 C3 79 */ bl func_801CCAFC
+/* 80340784 0033C3E4 4B E8 C3 79 */ bl sprintf
/* 80340788 0033C3E8 48 00 00 10 */ b lbl_80340798
lbl_8034078C:
/* 8034078C 0033C3EC 38 61 00 0C */ addi r3, r1, 0xc
/* 80340790 0033C3F0 38 8D 8F FC */ addi r4, r13, lbl_8063E2BC-_SDA_BASE_
-/* 80340794 0033C3F4 4B E8 DB 3D */ bl func_801CE2D0
+/* 80340794 0033C3F4 4B E8 DB 3D */ bl strcpy
lbl_80340798:
/* 80340798 0033C3F8 88 1D 00 C2 */ lbz r0, 0xc2(r29)
/* 8034079C 0033C3FC 7C 00 07 75 */ extsb. r0, r0
@@ -470,7 +470,7 @@ lbl_803407AC: /* 803407C0 0033C420 38 DE 01 2F */ addi r6, r30, 0x12f
/* 803407C4 0033C424 38 8D 90 00 */ addi r4, r13, lbl_8063E2C0-_SDA_BASE_
/* 803407C8 0033C428 4C C6 31 82 */ crclr 6
-/* 803407CC 0033C42C 4B E8 C3 31 */ bl func_801CCAFC
+/* 803407CC 0033C42C 4B E8 C3 31 */ bl sprintf
/* 803407D0 0033C430 38 E1 00 3C */ addi r7, r1, 0x3c
/* 803407D4 0033C434 48 00 00 24 */ b lbl_803407F8
lbl_803407D8:
@@ -480,7 +480,7 @@ lbl_803407D8: /* 803407E4 0033C444 38 FE 01 44 */ addi r7, r30, 0x144
/* 803407E8 0033C448 38 8D 90 08 */ addi r4, r13, lbl_8063E2C8-_SDA_BASE_
/* 803407EC 0033C44C 4C C6 31 82 */ crclr 6
-/* 803407F0 0033C450 4B E8 C3 0D */ bl func_801CCAFC
+/* 803407F0 0033C450 4B E8 C3 0D */ bl sprintf
/* 803407F4 0033C454 38 E1 00 3C */ addi r7, r1, 0x3c
lbl_803407F8:
/* 803407F8 0033C458 38 BD 00 A1 */ addi r5, r29, 0xa1
@@ -491,7 +491,7 @@ lbl_803407F8: /* 8034080C 0033C46C 38 DF 02 08 */ addi r6, r31, 0x208
/* 80340810 0033C470 39 1D 00 80 */ addi r8, r29, 0x80
/* 80340814 0033C474 4C C6 31 82 */ crclr 6
-/* 80340818 0033C478 4B E8 C2 E5 */ bl func_801CCAFC
+/* 80340818 0033C478 4B E8 C2 E5 */ bl sprintf
/* 8034081C 0033C47C 38 61 00 90 */ addi r3, r1, 0x90
/* 80340820 0033C480 4B E8 63 45 */ bl strlen
/* 80340824 0033C484 7C 64 1B 78 */ mr r4, r3
@@ -891,7 +891,7 @@ lbl_80340DF8: /* 80340DF8 0033CA58 7F 43 D3 78 */ mr r3, r26
/* 80340DFC 0033CA5C 38 8D 90 58 */ addi r4, r13, lbl_8063E318-_SDA_BASE_
/* 80340E00 0033CA60 38 A0 00 05 */ li r5, 5
-/* 80340E04 0033CA64 4B E8 D7 65 */ bl func_801CE568
+/* 80340E04 0033CA64 4B E8 D7 65 */ bl strncmp
/* 80340E08 0033CA68 2C 03 00 00 */ cmpwi r3, 0
/* 80340E0C 0033CA6C 41 82 00 2C */ beq lbl_80340E38
/* 80340E10 0033CA70 7F A3 EB 78 */ mr r3, r29
@@ -951,7 +951,7 @@ lbl_80340ED0: /* 80340ED0 0033CB30 7F 43 D3 78 */ mr r3, r26
/* 80340ED4 0033CB34 38 8D 90 60 */ addi r4, r13, lbl_8063E320-_SDA_BASE_
/* 80340ED8 0033CB38 38 A0 00 05 */ li r5, 5
-/* 80340EDC 0033CB3C 4B E8 D6 8D */ bl func_801CE568
+/* 80340EDC 0033CB3C 4B E8 D6 8D */ bl strncmp
/* 80340EE0 0033CB40 2C 03 00 00 */ cmpwi r3, 0
/* 80340EE4 0033CB44 41 82 00 2C */ beq lbl_80340F10
/* 80340EE8 0033CB48 7F A3 EB 78 */ mr r3, r29
@@ -1021,7 +1021,7 @@ lbl_80340FD4: /* 80340FD4 0033CC34 7F 43 D3 78 */ mr r3, r26
/* 80340FD8 0033CC38 38 8D 90 68 */ addi r4, r13, lbl_8063E328-_SDA_BASE_
/* 80340FDC 0033CC3C 38 A0 00 05 */ li r5, 5
-/* 80340FE0 0033CC40 4B E8 D5 89 */ bl func_801CE568
+/* 80340FE0 0033CC40 4B E8 D5 89 */ bl strncmp
/* 80340FE4 0033CC44 2C 03 00 00 */ cmpwi r3, 0
/* 80340FE8 0033CC48 41 82 00 2C */ beq lbl_80341014
/* 80340FEC 0033CC4C 7F A3 EB 78 */ mr r3, r29
@@ -1124,12 +1124,12 @@ lbl_8034114C: /* 80341158 0033CDB8 38 61 00 18 */ addi r3, r1, 0x18
/* 8034115C 0033CDBC 38 8D 8F F8 */ addi r4, r13, lbl_8063E2B8-_SDA_BASE_
/* 80341160 0033CDC0 4C C6 31 82 */ crclr 6
-/* 80341164 0033CDC4 4B E8 B9 99 */ bl func_801CCAFC
+/* 80341164 0033CDC4 4B E8 B9 99 */ bl sprintf
/* 80341168 0033CDC8 48 00 00 10 */ b lbl_80341178
lbl_8034116C:
/* 8034116C 0033CDCC 38 61 00 18 */ addi r3, r1, 0x18
/* 80341170 0033CDD0 38 8D 8F FC */ addi r4, r13, lbl_8063E2BC-_SDA_BASE_
-/* 80341174 0033CDD4 4B E8 D1 5D */ bl func_801CE2D0
+/* 80341174 0033CDD4 4B E8 D1 5D */ bl strcpy
lbl_80341178:
/* 80341178 0033CDD8 88 1B 00 C2 */ lbz r0, 0xc2(r27)
/* 8034117C 0033CDDC 7C 00 07 75 */ extsb. r0, r0
@@ -1145,7 +1145,7 @@ lbl_8034118C: /* 803411A0 0033CE00 38 DF 01 2F */ addi r6, r31, 0x12f
/* 803411A4 0033CE04 38 8D 90 00 */ addi r4, r13, lbl_8063E2C0-_SDA_BASE_
/* 803411A8 0033CE08 4C C6 31 82 */ crclr 6
-/* 803411AC 0033CE0C 4B E8 B9 51 */ bl func_801CCAFC
+/* 803411AC 0033CE0C 4B E8 B9 51 */ bl sprintf
/* 803411B0 0033CE10 38 E1 00 60 */ addi r7, r1, 0x60
/* 803411B4 0033CE14 48 00 00 24 */ b lbl_803411D8
lbl_803411B8:
@@ -1155,7 +1155,7 @@ lbl_803411B8: /* 803411C4 0033CE24 38 FF 01 44 */ addi r7, r31, 0x144
/* 803411C8 0033CE28 38 8D 90 08 */ addi r4, r13, lbl_8063E2C8-_SDA_BASE_
/* 803411CC 0033CE2C 4C C6 31 82 */ crclr 6
-/* 803411D0 0033CE30 4B E8 B9 2D */ bl func_801CCAFC
+/* 803411D0 0033CE30 4B E8 B9 2D */ bl sprintf
/* 803411D4 0033CE34 38 E1 00 60 */ addi r7, r1, 0x60
lbl_803411D8:
/* 803411D8 0033CE38 38 BB 00 A1 */ addi r5, r27, 0xa1
@@ -1166,7 +1166,7 @@ lbl_803411D8: /* 803411EC 0033CE4C 38 DC 02 08 */ addi r6, r28, 0x208
/* 803411F0 0033CE50 39 3B 00 80 */ addi r9, r27, 0x80
/* 803411F4 0033CE54 4C C6 31 82 */ crclr 6
-/* 803411F8 0033CE58 4B E8 B9 05 */ bl func_801CCAFC
+/* 803411F8 0033CE58 4B E8 B9 05 */ bl sprintf
/* 803411FC 0033CE5C 38 61 00 B8 */ addi r3, r1, 0xb8
/* 80341200 0033CE60 4B E8 59 65 */ bl strlen
/* 80341204 0033CE64 7C 64 1B 78 */ mr r4, r3
@@ -1194,7 +1194,7 @@ lbl_80341258: /* 80341258 0033CEB8 38 61 00 3C */ addi r3, r1, 0x3c
/* 8034125C 0033CEBC 38 81 00 B8 */ addi r4, r1, 0xb8
/* 80341260 0033CEC0 38 A0 00 20 */ li r5, 0x20
-/* 80341264 0033CEC4 4B E8 91 35 */ bl func_801CA398
+/* 80341264 0033CEC4 4B E8 91 35 */ bl memcmp
/* 80341268 0033CEC8 2C 03 00 00 */ cmpwi r3, 0
/* 8034126C 0033CECC 41 82 00 2C */ beq lbl_80341298
/* 80341270 0033CED0 7F A3 EB 78 */ mr r3, r29
diff --git a/asm/GameSpy/gpiInfo.s b/asm/GameSpy/gpiInfo.s index ed72932..692d595 100644 --- a/asm/GameSpy/gpiInfo.s +++ b/asm/GameSpy/gpiInfo.s @@ -292,7 +292,7 @@ lbl_80341AB4: /* 80341AB4 0033D714 7F 83 E3 78 */ mr r3, r28
/* 80341AB8 0033D718 38 8D 90 88 */ addi r4, r13, lbl_8063E348-_SDA_BASE_
/* 80341ABC 0033D71C 38 A0 00 04 */ li r5, 4
-/* 80341AC0 0033D720 4B E8 CA A9 */ bl func_801CE568
+/* 80341AC0 0033D720 4B E8 CA A9 */ bl strncmp
/* 80341AC4 0033D724 2C 03 00 00 */ cmpwi r3, 0
/* 80341AC8 0033D728 41 82 00 2C */ beq lbl_80341AF4
/* 80341ACC 0033D72C 7F 43 D3 78 */ mr r3, r26
@@ -994,7 +994,7 @@ lbl_803424A0: /* 803424A0 0033E100 38 61 00 08 */ addi r3, r1, 8
/* 803424A4 0033E104 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 803424A8 0033E108 4C C6 31 82 */ crclr 6
-/* 803424AC 0033E10C 4B E8 A6 51 */ bl func_801CCAFC
+/* 803424AC 0033E10C 4B E8 A6 51 */ bl sprintf
/* 803424B0 0033E110 83 BF 00 00 */ lwz r29, 0(r31)
/* 803424B4 0033E114 7F E3 FB 78 */ mr r3, r31
/* 803424B8 0033E118 38 BE 00 B0 */ addi r5, r30, 0xb0
@@ -1109,7 +1109,7 @@ lbl_80342614: /* 80342628 0033E288 38 61 00 08 */ addi r3, r1, 8
/* 8034262C 0033E28C 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342630 0033E290 4C C6 31 82 */ crclr 6
-/* 80342634 0033E294 4B E8 A4 C9 */ bl func_801CCAFC
+/* 80342634 0033E294 4B E8 A4 C9 */ bl sprintf
/* 80342638 0033E298 83 BF 00 00 */ lwz r29, 0(r31)
/* 8034263C 0033E29C 7F E3 FB 78 */ mr r3, r31
/* 80342640 0033E2A0 38 BE 00 98 */ addi r5, r30, 0x98
@@ -1136,7 +1136,7 @@ lbl_8034267C: /* 80342688 0033E2E8 38 61 00 08 */ addi r3, r1, 8
/* 8034268C 0033E2EC 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342690 0033E2F0 4C C6 31 82 */ crclr 6
-/* 80342694 0033E2F4 4B E8 A4 69 */ bl func_801CCAFC
+/* 80342694 0033E2F4 4B E8 A4 69 */ bl sprintf
/* 80342698 0033E2F8 83 BF 00 00 */ lwz r29, 0(r31)
/* 8034269C 0033E2FC 7F E3 FB 78 */ mr r3, r31
/* 803426A0 0033E300 38 BE 01 54 */ addi r5, r30, 0x154
@@ -1163,7 +1163,7 @@ lbl_803426DC: /* 803426E8 0033E348 38 61 00 08 */ addi r3, r1, 8
/* 803426EC 0033E34C 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 803426F0 0033E350 4C C6 31 82 */ crclr 6
-/* 803426F4 0033E354 4B E8 A4 09 */ bl func_801CCAFC
+/* 803426F4 0033E354 4B E8 A4 09 */ bl sprintf
/* 803426F8 0033E358 83 BF 00 00 */ lwz r29, 0(r31)
/* 803426FC 0033E35C 7F E3 FB 78 */ mr r3, r31
/* 80342700 0033E360 38 BE 01 64 */ addi r5, r30, 0x164
@@ -1192,7 +1192,7 @@ lbl_8034273C: /* 80342750 0033E3B0 7C A0 01 94 */ addze r5, r0
/* 80342754 0033E3B4 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342758 0033E3B8 4C C6 31 82 */ crclr 6
-/* 8034275C 0033E3BC 4B E8 A3 A1 */ bl func_801CCAFC
+/* 8034275C 0033E3BC 4B E8 A3 A1 */ bl sprintf
/* 80342760 0033E3C0 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342764 0033E3C4 7F E3 FB 78 */ mr r3, r31
/* 80342768 0033E3C8 38 BE 01 70 */ addi r5, r30, 0x170
@@ -1221,7 +1221,7 @@ lbl_803427A4: /* 803427B8 0033E418 7C A0 01 94 */ addze r5, r0
/* 803427BC 0033E41C 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 803427C0 0033E420 4C C6 31 82 */ crclr 6
-/* 803427C4 0033E424 4B E8 A3 39 */ bl func_801CCAFC
+/* 803427C4 0033E424 4B E8 A3 39 */ bl sprintf
/* 803427C8 0033E428 83 BF 00 00 */ lwz r29, 0(r31)
/* 803427CC 0033E42C 7F E3 FB 78 */ mr r3, r31
/* 803427D0 0033E430 38 BE 01 80 */ addi r5, r30, 0x180
@@ -1250,7 +1250,7 @@ lbl_8034280C: /* 80342820 0033E480 7C A0 01 94 */ addze r5, r0
/* 80342824 0033E484 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342828 0033E488 4C C6 31 82 */ crclr 6
-/* 8034282C 0033E48C 4B E8 A2 D1 */ bl func_801CCAFC
+/* 8034282C 0033E48C 4B E8 A2 D1 */ bl sprintf
/* 80342830 0033E490 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342834 0033E494 7F E3 FB 78 */ mr r3, r31
/* 80342838 0033E498 38 BE 01 90 */ addi r5, r30, 0x190
@@ -1277,7 +1277,7 @@ lbl_80342874: /* 80342880 0033E4E0 38 61 00 08 */ addi r3, r1, 8
/* 80342884 0033E4E4 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342888 0033E4E8 4C C6 31 82 */ crclr 6
-/* 8034288C 0033E4EC 4B E8 A2 71 */ bl func_801CCAFC
+/* 8034288C 0033E4EC 4B E8 A2 71 */ bl sprintf
/* 80342890 0033E4F0 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342894 0033E4F4 7F E3 FB 78 */ mr r3, r31
/* 80342898 0033E4F8 38 BE 01 A0 */ addi r5, r30, 0x1a0
@@ -1304,7 +1304,7 @@ lbl_803428D4: /* 803428E0 0033E540 38 61 00 08 */ addi r3, r1, 8
/* 803428E4 0033E544 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 803428E8 0033E548 4C C6 31 82 */ crclr 6
-/* 803428EC 0033E54C 4B E8 A2 11 */ bl func_801CCAFC
+/* 803428EC 0033E54C 4B E8 A2 11 */ bl sprintf
/* 803428F0 0033E550 83 BF 00 00 */ lwz r29, 0(r31)
/* 803428F4 0033E554 7F E3 FB 78 */ mr r3, r31
/* 803428F8 0033E558 38 BE 01 B0 */ addi r5, r30, 0x1b0
@@ -1335,7 +1335,7 @@ lbl_8034294C: /* 8034294C 0033E5AC 38 61 00 08 */ addi r3, r1, 8
/* 80342950 0033E5B0 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342954 0033E5B4 4C C6 31 82 */ crclr 6
-/* 80342958 0033E5B8 4B E8 A1 A5 */ bl func_801CCAFC
+/* 80342958 0033E5B8 4B E8 A1 A5 */ bl sprintf
/* 8034295C 0033E5BC 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342960 0033E5C0 7F E3 FB 78 */ mr r3, r31
/* 80342964 0033E5C4 38 BE 01 C4 */ addi r5, r30, 0x1c4
@@ -1362,7 +1362,7 @@ lbl_803429A0: /* 803429AC 0033E60C 38 61 00 08 */ addi r3, r1, 8
/* 803429B0 0033E610 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 803429B4 0033E614 4C C6 31 82 */ crclr 6
-/* 803429B8 0033E618 4B E8 A1 45 */ bl func_801CCAFC
+/* 803429B8 0033E618 4B E8 A1 45 */ bl sprintf
/* 803429BC 0033E61C 83 BF 00 00 */ lwz r29, 0(r31)
/* 803429C0 0033E620 7F E3 FB 78 */ mr r3, r31
/* 803429C4 0033E624 38 AD 90 D0 */ addi r5, r13, lbl_8063E390-_SDA_BASE_
@@ -1389,7 +1389,7 @@ lbl_80342A00: /* 80342A0C 0033E66C 38 61 00 08 */ addi r3, r1, 8
/* 80342A10 0033E670 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342A14 0033E674 4C C6 31 82 */ crclr 6
-/* 80342A18 0033E678 4B E8 A0 E5 */ bl func_801CCAFC
+/* 80342A18 0033E678 4B E8 A0 E5 */ bl sprintf
/* 80342A1C 0033E67C 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342A20 0033E680 7F E3 FB 78 */ mr r3, r31
/* 80342A24 0033E684 38 AD 90 D8 */ addi r5, r13, lbl_8063E398-_SDA_BASE_
@@ -1416,7 +1416,7 @@ lbl_80342A60: /* 80342A6C 0033E6CC 38 61 00 08 */ addi r3, r1, 8
/* 80342A70 0033E6D0 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342A74 0033E6D4 4C C6 31 82 */ crclr 6
-/* 80342A78 0033E6D8 4B E8 A0 85 */ bl func_801CCAFC
+/* 80342A78 0033E6D8 4B E8 A0 85 */ bl sprintf
/* 80342A7C 0033E6DC 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342A80 0033E6E0 7F E3 FB 78 */ mr r3, r31
/* 80342A84 0033E6E4 38 AD 90 E0 */ addi r5, r13, lbl_8063E3A0-_SDA_BASE_
@@ -1443,7 +1443,7 @@ lbl_80342AC0: /* 80342ACC 0033E72C 38 61 00 08 */ addi r3, r1, 8
/* 80342AD0 0033E730 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342AD4 0033E734 4C C6 31 82 */ crclr 6
-/* 80342AD8 0033E738 4B E8 A0 25 */ bl func_801CCAFC
+/* 80342AD8 0033E738 4B E8 A0 25 */ bl sprintf
/* 80342ADC 0033E73C 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342AE0 0033E740 7F E3 FB 78 */ mr r3, r31
/* 80342AE4 0033E744 38 AD 90 E8 */ addi r5, r13, lbl_8063E3A8-_SDA_BASE_
@@ -1470,7 +1470,7 @@ lbl_80342B20: /* 80342B2C 0033E78C 38 61 00 08 */ addi r3, r1, 8
/* 80342B30 0033E790 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342B34 0033E794 4C C6 31 82 */ crclr 6
-/* 80342B38 0033E798 4B E8 9F C5 */ bl func_801CCAFC
+/* 80342B38 0033E798 4B E8 9F C5 */ bl sprintf
/* 80342B3C 0033E79C 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342B40 0033E7A0 7F E3 FB 78 */ mr r3, r31
/* 80342B44 0033E7A4 38 AD 90 F0 */ addi r5, r13, lbl_8063E3B0-_SDA_BASE_
@@ -1497,7 +1497,7 @@ lbl_80342B80: /* 80342B8C 0033E7EC 38 61 00 08 */ addi r3, r1, 8
/* 80342B90 0033E7F0 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342B94 0033E7F4 4C C6 31 82 */ crclr 6
-/* 80342B98 0033E7F8 4B E8 9F 65 */ bl func_801CCAFC
+/* 80342B98 0033E7F8 4B E8 9F 65 */ bl sprintf
/* 80342B9C 0033E7FC 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342BA0 0033E800 7F E3 FB 78 */ mr r3, r31
/* 80342BA4 0033E804 38 AD 90 F8 */ addi r5, r13, lbl_8063E3B8-_SDA_BASE_
@@ -1524,7 +1524,7 @@ lbl_80342BE0: /* 80342BEC 0033E84C 38 61 00 08 */ addi r3, r1, 8
/* 80342BF0 0033E850 38 8D 91 28 */ addi r4, r13, lbl_8063E3E8-_SDA_BASE_
/* 80342BF4 0033E854 4C C6 31 82 */ crclr 6
-/* 80342BF8 0033E858 4B E8 9F 05 */ bl func_801CCAFC
+/* 80342BF8 0033E858 4B E8 9F 05 */ bl sprintf
/* 80342BFC 0033E85C 83 BF 00 00 */ lwz r29, 0(r31)
/* 80342C00 0033E860 7F E3 FB 78 */ mr r3, r31
/* 80342C04 0033E864 38 AD 91 00 */ addi r5, r13, lbl_8063E3C0-_SDA_BASE_
@@ -1925,19 +1925,19 @@ lbl_80343170: /* 80343178 0033EDD8 40 82 00 14 */ bne lbl_8034318C
/* 8034317C 0033EDDC 38 61 00 38 */ addi r3, r1, 0x38
/* 80343180 0033EDE0 38 8D 91 2C */ addi r4, r13, lbl_8063E3EC-_SDA_BASE_
-/* 80343184 0033EDE4 4B E8 B1 4D */ bl func_801CE2D0
+/* 80343184 0033EDE4 4B E8 B1 4D */ bl strcpy
/* 80343188 0033EDE8 48 00 00 28 */ b lbl_803431B0
lbl_8034318C:
/* 8034318C 0033EDEC 2C 00 00 46 */ cmpwi r0, 0x46
/* 80343190 0033EDF0 40 82 00 14 */ bne lbl_803431A4
/* 80343194 0033EDF4 38 61 00 38 */ addi r3, r1, 0x38
/* 80343198 0033EDF8 38 8D 91 30 */ addi r4, r13, lbl_8063E3F0-_SDA_BASE_
-/* 8034319C 0033EDFC 4B E8 B1 35 */ bl func_801CE2D0
+/* 8034319C 0033EDFC 4B E8 B1 35 */ bl strcpy
/* 803431A0 0033EE00 48 00 00 10 */ b lbl_803431B0
lbl_803431A4:
/* 803431A4 0033EE04 38 61 00 38 */ addi r3, r1, 0x38
/* 803431A8 0033EE08 38 8D 91 34 */ addi r4, r13, lbl_8063E3F4-_SDA_BASE_
-/* 803431AC 0033EE0C 4B E8 B1 25 */ bl func_801CE2D0
+/* 803431AC 0033EE0C 4B E8 B1 25 */ bl strcpy
lbl_803431B0:
/* 803431B0 0033EE10 83 BF 00 00 */ lwz r29, 0(r31)
/* 803431B4 0033EE14 7F E3 FB 78 */ mr r3, r31
diff --git a/asm/GameSpy/gpiPeer.s b/asm/GameSpy/gpiPeer.s index cf8caee..483daf5 100644 --- a/asm/GameSpy/gpiPeer.s +++ b/asm/GameSpy/gpiPeer.s @@ -146,7 +146,7 @@ lbl_803443C0: lbl_803443E4:
/* 803443E4 00340044 80 7F 00 1C */ lwz r3, 0x1c(r31)
/* 803443E8 00340048 38 8D 91 60 */ addi r4, r13, lbl_8063E420-_SDA_BASE_
-/* 803443EC 0034004C 4B E8 A3 B5 */ bl func_801CE7A0
+/* 803443EC 0034004C 4B E8 A3 B5 */ bl strstr
/* 803443F0 00340050 2C 03 00 00 */ cmpwi r3, 0
/* 803443F4 00340054 41 82 00 F0 */ beq lbl_803444E4
/* 803443F8 00340058 38 00 00 00 */ li r0, 0
@@ -155,7 +155,7 @@ lbl_803443E4: /* 80344404 00340064 38 A0 00 07 */ li r5, 7
/* 80344408 00340068 83 9F 00 1C */ lwz r28, 0x1c(r31)
/* 8034440C 0034006C 7F 83 E3 78 */ mr r3, r28
-/* 80344410 00340070 4B E8 A1 59 */ bl func_801CE568
+/* 80344410 00340070 4B E8 A1 59 */ bl strncmp
/* 80344414 00340074 2C 03 00 00 */ cmpwi r3, 0
/* 80344418 00340078 40 82 00 90 */ bne lbl_803444A8
/* 8034441C 0034007C 80 7F 00 18 */ lwz r3, 0x18(r31)
@@ -201,7 +201,7 @@ lbl_803444A8: /* 803444A8 00340108 7F 83 E3 78 */ mr r3, r28
/* 803444AC 0034010C 38 8D 91 78 */ addi r4, r13, lbl_8063E438-_SDA_BASE_
/* 803444B0 00340110 38 A0 00 06 */ li r5, 6
-/* 803444B4 00340114 4B E8 A0 B5 */ bl func_801CE568
+/* 803444B4 00340114 4B E8 A0 B5 */ bl strncmp
/* 803444B8 00340118 2C 03 00 00 */ cmpwi r3, 0
/* 803444BC 0034011C 41 82 00 18 */ beq lbl_803444D4
/* 803444C0 00340120 7F C3 F3 78 */ mr r3, r30
@@ -273,7 +273,7 @@ lbl_80344588: lbl_803445A4:
/* 803445A4 00340204 80 7C 00 1C */ lwz r3, 0x1c(r28)
/* 803445A8 00340208 38 8D 91 60 */ addi r4, r13, lbl_8063E420-_SDA_BASE_
-/* 803445AC 0034020C 4B E8 A1 F5 */ bl func_801CE7A0
+/* 803445AC 0034020C 4B E8 A1 F5 */ bl strstr
/* 803445B0 00340210 2C 03 00 00 */ cmpwi r3, 0
/* 803445B4 00340214 41 82 01 74 */ beq lbl_80344728
/* 803445B8 00340218 3B E0 00 00 */ li r31, 0
@@ -282,7 +282,7 @@ lbl_803445A4: /* 803445C4 00340224 38 A0 00 06 */ li r5, 6
/* 803445C8 00340228 83 DC 00 1C */ lwz r30, 0x1c(r28)
/* 803445CC 0034022C 7F C3 F3 78 */ mr r3, r30
-/* 803445D0 00340230 4B E8 9F 99 */ bl func_801CE568
+/* 803445D0 00340230 4B E8 9F 99 */ bl strncmp
/* 803445D4 00340234 2C 03 00 00 */ cmpwi r3, 0
/* 803445D8 00340238 40 82 01 3C */ bne lbl_80344714
/* 803445DC 0034023C 7F C3 F3 78 */ mr r3, r30
@@ -330,7 +330,7 @@ lbl_8034466C: /* 80344678 003402D8 38 BD 01 77 */ addi r5, r29, 0x177
/* 8034467C 003402DC 38 8D 91 80 */ addi r4, r13, lbl_8063E440-_SDA_BASE_
/* 80344680 003402E0 4C C6 31 82 */ crclr 6
-/* 80344684 003402E4 4B E8 84 79 */ bl func_801CCAFC
+/* 80344684 003402E4 4B E8 84 79 */ bl sprintf
/* 80344688 003402E8 38 61 00 88 */ addi r3, r1, 0x88
/* 8034468C 003402EC 4B E8 24 D9 */ bl strlen
/* 80344690 003402F0 7C 64 1B 78 */ mr r4, r3
@@ -339,7 +339,7 @@ lbl_8034466C: /* 8034469C 003402FC 4B FF 33 71 */ bl MD5Digest
/* 803446A0 00340300 38 61 00 64 */ addi r3, r1, 0x64
/* 803446A4 00340304 38 81 00 40 */ addi r4, r1, 0x40
-/* 803446A8 00340308 4B E8 9D A5 */ bl func_801CE44C
+/* 803446A8 00340308 4B E8 9D A5 */ bl strcmp
/* 803446AC 0034030C 2C 03 00 00 */ cmpwi r3, 0
/* 803446B0 00340310 41 82 00 34 */ beq lbl_803446E4
/* 803446B4 00340314 7F 63 DB 78 */ mr r3, r27
@@ -1305,7 +1305,7 @@ gpiPeerStartTransferMessage: /* 8034541C 0034107C 7C 7E 1B 78 */ mr r30, r3
/* 80345420 00341080 38 61 00 08 */ addi r3, r1, 8
/* 80345424 00341084 4C C6 31 82 */ crclr 6
-/* 80345428 00341088 4B E8 76 D5 */ bl func_801CCAFC
+/* 80345428 00341088 4B E8 76 D5 */ bl sprintf
/* 8034542C 0034108C 7F C3 F3 78 */ mr r3, r30
/* 80345430 00341090 7F E4 FB 78 */ mr r4, r31
/* 80345434 00341094 38 A1 00 08 */ addi r5, r1, 8
@@ -1345,7 +1345,7 @@ lbl_803454A0: /* 803454A8 00341108 38 61 00 08 */ addi r3, r1, 8
/* 803454AC 0034110C 38 84 B0 5C */ addi r4, r4, lbl_8044B05C@l
/* 803454B0 00341110 4C C6 31 82 */ crclr 6
-/* 803454B4 00341114 4B E8 76 49 */ bl func_801CCAFC
+/* 803454B4 00341114 4B E8 76 49 */ bl sprintf
/* 803454B8 00341118 7F 83 E3 78 */ mr r3, r28
/* 803454BC 0034111C 7F A4 EB 78 */ mr r4, r29
/* 803454C0 00341120 38 A1 00 08 */ addi r5, r1, 8
diff --git a/asm/GameSpy/gpiProfile.s b/asm/GameSpy/gpiProfile.s index 50169e2..38c737c 100644 --- a/asm/GameSpy/gpiProfile.s +++ b/asm/GameSpy/gpiProfile.s @@ -112,7 +112,7 @@ lbl_803456C0: /* 803456C0 00341320 7F E3 FB 78 */ mr r3, r31
/* 803456C4 00341324 38 8D 91 A8 */ addi r4, r13, lbl_8063E468-_SDA_BASE_
/* 803456C8 00341328 38 A0 00 05 */ li r5, 5
-/* 803456CC 0034132C 4B E8 8E 9D */ bl func_801CE568
+/* 803456CC 0034132C 4B E8 8E 9D */ bl strncmp
/* 803456D0 00341330 2C 03 00 00 */ cmpwi r3, 0
/* 803456D4 00341334 41 82 00 2C */ beq lbl_80345700
/* 803456D8 00341338 7F 83 E3 78 */ mr r3, r28
@@ -303,7 +303,7 @@ lbl_8034596C: /* 8034596C 003415CC 7F C3 F3 78 */ mr r3, r30
/* 80345970 003415D0 38 8D 91 B0 */ addi r4, r13, lbl_8063E470-_SDA_BASE_
/* 80345974 003415D4 38 A0 00 05 */ li r5, 5
-/* 80345978 003415D8 4B E8 8B F1 */ bl func_801CE568
+/* 80345978 003415D8 4B E8 8B F1 */ bl strncmp
/* 8034597C 003415DC 2C 03 00 00 */ cmpwi r3, 0
/* 80345980 003415E0 41 82 00 30 */ beq lbl_803459B0
/* 80345984 003415E4 3C A0 80 45 */ lis r5, lbl_8044B174@ha
@@ -411,12 +411,12 @@ gpiCheckProfileForUser: /* 80345AE4 00341744 41 82 00 44 */ beq lbl_80345B28
/* 80345AE8 00341748 80 65 00 00 */ lwz r3, 0(r5)
/* 80345AEC 0034174C 80 9F 00 00 */ lwz r4, 0(r31)
-/* 80345AF0 00341750 4B E8 89 5D */ bl func_801CE44C
+/* 80345AF0 00341750 4B E8 89 5D */ bl strcmp
/* 80345AF4 00341754 2C 03 00 00 */ cmpwi r3, 0
/* 80345AF8 00341758 40 82 00 30 */ bne lbl_80345B28
/* 80345AFC 0034175C 80 7E 00 04 */ lwz r3, 4(r30)
/* 80345B00 00341760 80 9F 00 08 */ lwz r4, 8(r31)
-/* 80345B04 00341764 4B E8 89 49 */ bl func_801CE44C
+/* 80345B04 00341764 4B E8 89 49 */ bl strcmp
/* 80345B08 00341768 2C 03 00 00 */ cmpwi r3, 0
/* 80345B0C 0034176C 40 82 00 1C */ bne lbl_80345B28
/* 80345B10 00341770 80 9E 00 08 */ lwz r4, 8(r30)
diff --git a/asm/GameSpy/gpiSearch.s b/asm/GameSpy/gpiSearch.s index 3710786..16c3f99 100644 --- a/asm/GameSpy/gpiSearch.s +++ b/asm/GameSpy/gpiSearch.s @@ -929,7 +929,7 @@ lbl_80346A2C: lbl_80346A7C:
/* 80346A7C 003426DC 80 72 00 08 */ lwz r3, 8(r18)
/* 80346A80 003426E0 38 8D 91 F8 */ addi r4, r13, lbl_8063E4B8-_SDA_BASE_
-/* 80346A84 003426E4 4B E8 7D 1D */ bl func_801CE7A0
+/* 80346A84 003426E4 4B E8 7D 1D */ bl strstr
/* 80346A88 003426E8 2C 03 00 00 */ cmpwi r3, 0
/* 80346A8C 003426EC 41 82 11 2C */ beq lbl_80347BB8
/* 80346A90 003426F0 93 21 00 20 */ stw r25, 0x20(r1)
@@ -966,7 +966,7 @@ lbl_80346AE0: lbl_80346B04:
/* 80346B04 00342764 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346B08 00342768 38 8D 92 00 */ addi r4, r13, lbl_8063E4C0-_SDA_BASE_
-/* 80346B0C 0034276C 4B E8 79 41 */ bl func_801CE44C
+/* 80346B0C 0034276C 4B E8 79 41 */ bl strcmp
/* 80346B10 00342770 2C 03 00 00 */ cmpwi r3, 0
/* 80346B14 00342774 40 82 00 5C */ bne lbl_80346B70
/* 80346B18 00342778 80 92 00 08 */ lwz r4, 8(r18)
@@ -981,12 +981,12 @@ lbl_80346B04: lbl_80346B3C:
/* 80346B3C 0034279C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346B40 003427A0 38 8D 92 08 */ addi r4, r13, lbl_8063E4C8-_SDA_BASE_
-/* 80346B44 003427A4 4B E8 79 09 */ bl func_801CE44C
+/* 80346B44 003427A4 4B E8 79 09 */ bl strcmp
/* 80346B48 003427A8 2C 03 00 00 */ cmpwi r3, 0
/* 80346B4C 003427AC 40 82 00 1C */ bne lbl_80346B68
/* 80346B50 003427B0 38 61 00 E0 */ addi r3, r1, 0xe0
/* 80346B54 003427B4 38 8D 92 10 */ addi r4, r13, lbl_8063E4D0-_SDA_BASE_
-/* 80346B58 003427B8 4B E8 78 F5 */ bl func_801CE44C
+/* 80346B58 003427B8 4B E8 78 F5 */ bl strcmp
/* 80346B5C 003427BC 2C 03 00 00 */ cmpwi r3, 0
/* 80346B60 003427C0 41 82 00 08 */ beq lbl_80346B68
/* 80346B64 003427C4 93 61 00 A8 */ stw r27, 0xa8(r1)
@@ -996,7 +996,7 @@ lbl_80346B68: lbl_80346B70:
/* 80346B70 003427D0 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346B74 003427D4 38 8D 92 14 */ addi r4, r13, lbl_8063E4D4-_SDA_BASE_
-/* 80346B78 003427D8 4B E8 78 D5 */ bl func_801CE44C
+/* 80346B78 003427D8 4B E8 78 D5 */ bl strcmp
/* 80346B7C 003427DC 2C 03 00 00 */ cmpwi r3, 0
/* 80346B80 003427E0 40 82 01 98 */ bne lbl_80346D18
/* 80346B84 003427E4 80 81 00 A4 */ lwz r4, 0xa4(r1)
@@ -1040,7 +1040,7 @@ lbl_80346BEC: lbl_80346C14:
/* 80346C14 00342874 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346C18 00342878 38 8D 92 18 */ addi r4, r13, lbl_8063E4D8-_SDA_BASE_
-/* 80346C1C 0034287C 4B E8 78 31 */ bl func_801CE44C
+/* 80346C1C 0034287C 4B E8 78 31 */ bl strcmp
/* 80346C20 00342880 2C 03 00 00 */ cmpwi r3, 0
/* 80346C24 00342884 40 82 00 18 */ bne lbl_80346C3C
/* 80346C28 00342888 38 71 00 04 */ addi r3, r17, 4
@@ -1051,7 +1051,7 @@ lbl_80346C14: lbl_80346C3C:
/* 80346C3C 0034289C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346C40 003428A0 38 95 02 A0 */ addi r4, r21, 0x2a0
-/* 80346C44 003428A4 4B E8 78 09 */ bl func_801CE44C
+/* 80346C44 003428A4 4B E8 78 09 */ bl strcmp
/* 80346C48 003428A8 2C 03 00 00 */ cmpwi r3, 0
/* 80346C4C 003428AC 40 82 00 18 */ bne lbl_80346C64
/* 80346C50 003428B0 38 71 00 23 */ addi r3, r17, 0x23
@@ -1062,7 +1062,7 @@ lbl_80346C3C: lbl_80346C64:
/* 80346C64 003428C4 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346C68 003428C8 38 95 02 AC */ addi r4, r21, 0x2ac
-/* 80346C6C 003428CC 4B E8 77 E1 */ bl func_801CE44C
+/* 80346C6C 003428CC 4B E8 77 E1 */ bl strcmp
/* 80346C70 003428D0 2C 03 00 00 */ cmpwi r3, 0
/* 80346C74 003428D4 40 82 00 18 */ bne lbl_80346C8C
/* 80346C78 003428D8 38 71 00 38 */ addi r3, r17, 0x38
@@ -1073,7 +1073,7 @@ lbl_80346C64: lbl_80346C8C:
/* 80346C8C 003428EC 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346C90 003428F0 38 95 02 B8 */ addi r4, r21, 0x2b8
-/* 80346C94 003428F4 4B E8 77 B9 */ bl func_801CE44C
+/* 80346C94 003428F4 4B E8 77 B9 */ bl strcmp
/* 80346C98 003428F8 2C 03 00 00 */ cmpwi r3, 0
/* 80346C9C 003428FC 40 82 00 18 */ bne lbl_80346CB4
/* 80346CA0 00342900 38 71 00 57 */ addi r3, r17, 0x57
@@ -1084,7 +1084,7 @@ lbl_80346C8C: lbl_80346CB4:
/* 80346CB4 00342914 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346CB8 00342918 38 8D 92 20 */ addi r4, r13, lbl_8063E4E0-_SDA_BASE_
-/* 80346CBC 0034291C 4B E8 77 91 */ bl func_801CE44C
+/* 80346CBC 0034291C 4B E8 77 91 */ bl strcmp
/* 80346CC0 00342920 2C 03 00 00 */ cmpwi r3, 0
/* 80346CC4 00342924 40 82 00 18 */ bne lbl_80346CDC
/* 80346CC8 00342928 38 71 00 76 */ addi r3, r17, 0x76
@@ -1095,12 +1095,12 @@ lbl_80346CB4: lbl_80346CDC:
/* 80346CDC 0034293C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346CE0 00342940 38 8D 92 14 */ addi r4, r13, lbl_8063E4D4-_SDA_BASE_
-/* 80346CE4 00342944 4B E8 77 69 */ bl func_801CE44C
+/* 80346CE4 00342944 4B E8 77 69 */ bl strcmp
/* 80346CE8 00342948 2C 03 00 00 */ cmpwi r3, 0
/* 80346CEC 0034294C 41 82 00 18 */ beq lbl_80346D04
/* 80346CF0 00342950 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346CF4 00342954 38 8D 92 00 */ addi r4, r13, lbl_8063E4C0-_SDA_BASE_
-/* 80346CF8 00342958 4B E8 77 55 */ bl func_801CE44C
+/* 80346CF8 00342958 4B E8 77 55 */ bl strcmp
/* 80346CFC 0034295C 2C 03 00 00 */ cmpwi r3, 0
/* 80346D00 00342960 40 82 00 0C */ bne lbl_80346D0C
lbl_80346D04:
@@ -1187,7 +1187,7 @@ lbl_80346DE8: lbl_80346E2C:
/* 80346E2C 00342A8C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346E30 00342A90 38 8D 92 28 */ addi r4, r13, lbl_8063E4E8-_SDA_BASE_
-/* 80346E34 00342A94 4B E8 76 19 */ bl func_801CE44C
+/* 80346E34 00342A94 4B E8 76 19 */ bl strcmp
/* 80346E38 00342A98 2C 03 00 00 */ cmpwi r3, 0
/* 80346E3C 00342A9C 41 82 00 2C */ beq lbl_80346E68
/* 80346E40 00342AA0 7F A3 EB 78 */ mr r3, r29
@@ -1261,7 +1261,7 @@ lbl_80346F38: /* 80346F38 00342B98 93 23 00 00 */ stw r25, 0(r3)
/* 80346F3C 00342B9C 38 63 00 04 */ addi r3, r3, 4
/* 80346F40 00342BA0 38 92 00 5C */ addi r4, r18, 0x5c
-/* 80346F44 00342BA4 4B E8 73 8D */ bl func_801CE2D0
+/* 80346F44 00342BA4 4B E8 73 8D */ bl strcpy
/* 80346F48 00342BA8 93 34 00 38 */ stw r25, 0x38(r20)
/* 80346F4C 00342BAC 7F A3 EB 78 */ mr r3, r29
/* 80346F50 00342BB0 38 A1 00 20 */ addi r5, r1, 0x20
@@ -1277,7 +1277,7 @@ lbl_80346F38: lbl_80346F78:
/* 80346F78 00342BD8 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346F7C 00342BDC 38 8D 92 2C */ addi r4, r13, lbl_8063E4EC-_SDA_BASE_
-/* 80346F80 00342BE0 4B E8 74 CD */ bl func_801CE44C
+/* 80346F80 00342BE0 4B E8 74 CD */ bl strcmp
/* 80346F84 00342BE4 2C 03 00 00 */ cmpwi r3, 0
/* 80346F88 00342BE8 41 82 00 2C */ beq lbl_80346FB4
/* 80346F8C 00342BEC 7F A3 EB 78 */ mr r3, r29
@@ -1305,7 +1305,7 @@ lbl_80346FB8: lbl_80346FDC:
/* 80346FDC 00342C3C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80346FE0 00342C40 38 8D 92 18 */ addi r4, r13, lbl_8063E4D8-_SDA_BASE_
-/* 80346FE4 00342C44 4B E8 74 69 */ bl func_801CE44C
+/* 80346FE4 00342C44 4B E8 74 69 */ bl strcmp
/* 80346FE8 00342C48 2C 03 00 00 */ cmpwi r3, 0
/* 80346FEC 00342C4C 40 82 00 98 */ bne lbl_80347084
/* 80346FF0 00342C50 80 94 00 38 */ lwz r4, 0x38(r20)
@@ -1350,7 +1350,7 @@ lbl_80347048: lbl_80347084:
/* 80347084 00342CE4 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347088 00342CE8 38 95 02 A0 */ addi r4, r21, 0x2a0
-/* 8034708C 00342CEC 4B E8 73 C1 */ bl func_801CE44C
+/* 8034708C 00342CEC 4B E8 73 C1 */ bl strcmp
/* 80347090 00342CF0 2C 03 00 00 */ cmpwi r3, 0
/* 80347094 00342CF4 40 82 00 98 */ bne lbl_8034712C
/* 80347098 00342CF8 80 14 00 38 */ lwz r0, 0x38(r20)
@@ -1395,7 +1395,7 @@ lbl_803470F4: lbl_8034712C:
/* 8034712C 00342D8C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347130 00342D90 38 8D 92 30 */ addi r4, r13, lbl_8063E4F0-_SDA_BASE_
-/* 80347134 00342D94 4B E8 73 19 */ bl func_801CE44C
+/* 80347134 00342D94 4B E8 73 19 */ bl strcmp
/* 80347138 00342D98 2C 03 00 00 */ cmpwi r3, 0
/* 8034713C 00342D9C 40 82 00 0C */ bne lbl_80347148
/* 80347140 00342DA0 3A 60 00 01 */ li r19, 1
@@ -1466,7 +1466,7 @@ lbl_8034720C: lbl_80347230:
/* 80347230 00342E90 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347234 00342E94 38 8D 92 38 */ addi r4, r13, lbl_8063E4F8-_SDA_BASE_
-/* 80347238 00342E98 4B E8 72 15 */ bl func_801CE44C
+/* 80347238 00342E98 4B E8 72 15 */ bl strcmp
/* 8034723C 00342E9C 2C 03 00 00 */ cmpwi r3, 0
/* 80347240 00342EA0 40 82 00 0C */ bne lbl_8034724C
/* 80347244 00342EA4 3A 60 00 01 */ li r19, 1
@@ -1474,7 +1474,7 @@ lbl_80347230: lbl_8034724C:
/* 8034724C 00342EAC 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347250 00342EB0 38 8D 92 40 */ addi r4, r13, lbl_8063E500-_SDA_BASE_
-/* 80347254 00342EB4 4B E8 71 F9 */ bl func_801CE44C
+/* 80347254 00342EB4 4B E8 71 F9 */ bl strcmp
/* 80347258 00342EB8 2C 03 00 00 */ cmpwi r3, 0
/* 8034725C 00342EBC 40 82 01 44 */ bne lbl_803473A0
/* 80347260 00342EC0 80 74 00 08 */ lwz r3, 8(r20)
@@ -1519,7 +1519,7 @@ lbl_803472CC: lbl_803472F4:
/* 803472F4 00342F54 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 803472F8 00342F58 38 8D 92 44 */ addi r4, r13, lbl_8063E504-_SDA_BASE_
-/* 803472FC 00342F5C 4B E8 71 51 */ bl func_801CE44C
+/* 803472FC 00342F5C 4B E8 71 51 */ bl strcmp
/* 80347300 00342F60 2C 03 00 00 */ cmpwi r3, 0
/* 80347304 00342F64 40 82 00 18 */ bne lbl_8034731C
/* 80347308 00342F68 38 71 00 28 */ addi r3, r17, 0x28
@@ -1530,7 +1530,7 @@ lbl_803472F4: lbl_8034731C:
/* 8034731C 00342F7C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347320 00342F80 38 8D 92 18 */ addi r4, r13, lbl_8063E4D8-_SDA_BASE_
-/* 80347324 00342F84 4B E8 71 29 */ bl func_801CE44C
+/* 80347324 00342F84 4B E8 71 29 */ bl strcmp
/* 80347328 00342F88 2C 03 00 00 */ cmpwi r3, 0
/* 8034732C 00342F8C 40 82 00 14 */ bne lbl_80347340
/* 80347330 00342F90 38 71 00 04 */ addi r3, r17, 4
@@ -1540,7 +1540,7 @@ lbl_8034731C: lbl_80347340:
/* 80347340 00342FA0 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347344 00342FA4 38 95 02 EC */ addi r4, r21, 0x2ec
-/* 80347348 00342FA8 4B E8 71 05 */ bl func_801CE44C
+/* 80347348 00342FA8 4B E8 71 05 */ bl strcmp
/* 8034734C 00342FAC 2C 03 00 00 */ cmpwi r3, 0
/* 80347350 00342FB0 40 82 00 14 */ bne lbl_80347364
/* 80347354 00342FB4 38 61 00 E0 */ addi r3, r1, 0xe0
@@ -1550,12 +1550,12 @@ lbl_80347340: lbl_80347364:
/* 80347364 00342FC4 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347368 00342FC8 38 8D 92 40 */ addi r4, r13, lbl_8063E500-_SDA_BASE_
-/* 8034736C 00342FCC 4B E8 70 E1 */ bl func_801CE44C
+/* 8034736C 00342FCC 4B E8 70 E1 */ bl strcmp
/* 80347370 00342FD0 2C 03 00 00 */ cmpwi r3, 0
/* 80347374 00342FD4 41 82 00 18 */ beq lbl_8034738C
/* 80347378 00342FD8 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 8034737C 00342FDC 38 8D 92 38 */ addi r4, r13, lbl_8063E4F8-_SDA_BASE_
-/* 80347380 00342FE0 4B E8 70 CD */ bl func_801CE44C
+/* 80347380 00342FE0 4B E8 70 CD */ bl strcmp
/* 80347384 00342FE4 2C 03 00 00 */ cmpwi r3, 0
/* 80347388 00342FE8 40 82 00 0C */ bne lbl_80347394
lbl_8034738C:
@@ -1613,7 +1613,7 @@ lbl_80347404: lbl_80347448:
/* 80347448 003430A8 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 8034744C 003430AC 38 8D 92 4C */ addi r4, r13, lbl_8063E50C-_SDA_BASE_
-/* 80347450 003430B0 4B E8 6F FD */ bl func_801CE44C
+/* 80347450 003430B0 4B E8 6F FD */ bl strcmp
/* 80347454 003430B4 2C 03 00 00 */ cmpwi r3, 0
/* 80347458 003430B8 41 82 00 2C */ beq lbl_80347484
/* 8034745C 003430BC 7F A3 EB 78 */ mr r3, r29
@@ -1704,7 +1704,7 @@ lbl_80347554: lbl_80347598:
/* 80347598 003431F8 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 8034759C 003431FC 38 8D 92 58 */ addi r4, r13, lbl_8063E518-_SDA_BASE_
-/* 803475A0 00343200 4B E8 6E AD */ bl func_801CE44C
+/* 803475A0 00343200 4B E8 6E AD */ bl strcmp
/* 803475A4 00343204 2C 03 00 00 */ cmpwi r3, 0
/* 803475A8 00343208 41 82 00 2C */ beq lbl_803475D4
/* 803475AC 0034320C 7F A3 EB 78 */ mr r3, r29
@@ -1812,7 +1812,7 @@ lbl_803476F4: lbl_80347724:
/* 80347724 00343384 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347728 00343388 38 8D 92 5C */ addi r4, r13, lbl_8063E51C-_SDA_BASE_
-/* 8034772C 0034338C 4B E8 6D 21 */ bl func_801CE44C
+/* 8034772C 0034338C 4B E8 6D 21 */ bl strcmp
/* 80347730 00343390 2C 03 00 00 */ cmpwi r3, 0
/* 80347734 00343394 41 82 00 2C */ beq lbl_80347760
/* 80347738 00343398 7F A3 EB 78 */ mr r3, r29
@@ -1840,7 +1840,7 @@ lbl_80347764: lbl_80347788:
/* 80347788 003433E8 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 8034778C 003433EC 38 8D 92 64 */ addi r4, r13, lbl_8063E524-_SDA_BASE_
-/* 80347790 003433F0 4B E8 6C BD */ bl func_801CE44C
+/* 80347790 003433F0 4B E8 6C BD */ bl strcmp
/* 80347794 003433F4 2C 03 00 00 */ cmpwi r3, 0
/* 80347798 003433F8 40 82 00 0C */ bne lbl_803477A4
/* 8034779C 003433FC 3A 60 00 01 */ li r19, 1
@@ -1848,7 +1848,7 @@ lbl_80347788: lbl_803477A4:
/* 803477A4 00343404 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 803477A8 00343408 38 8D 92 6C */ addi r4, r13, lbl_8063E52C-_SDA_BASE_
-/* 803477AC 0034340C 4B E8 6C A1 */ bl func_801CE44C
+/* 803477AC 0034340C 4B E8 6C A1 */ bl strcmp
/* 803477B0 00343410 2C 03 00 00 */ cmpwi r3, 0
/* 803477B4 00343414 40 82 01 9C */ bne lbl_80347950
/* 803477B8 00343418 80 94 00 04 */ lwz r4, 4(r20)
@@ -1893,7 +1893,7 @@ lbl_80347824: lbl_8034784C:
/* 8034784C 003434AC 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347850 003434B0 38 8D 92 18 */ addi r4, r13, lbl_8063E4D8-_SDA_BASE_
-/* 80347854 003434B4 4B E8 6B F9 */ bl func_801CE44C
+/* 80347854 003434B4 4B E8 6B F9 */ bl strcmp
/* 80347858 003434B8 2C 03 00 00 */ cmpwi r3, 0
/* 8034785C 003434BC 40 82 00 18 */ bne lbl_80347874
/* 80347860 003434C0 38 70 00 04 */ addi r3, r16, 4
@@ -1904,7 +1904,7 @@ lbl_8034784C: lbl_80347874:
/* 80347874 003434D4 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347878 003434D8 38 95 02 A0 */ addi r4, r21, 0x2a0
-/* 8034787C 003434DC 4B E8 6B D1 */ bl func_801CE44C
+/* 8034787C 003434DC 4B E8 6B D1 */ bl strcmp
/* 80347880 003434E0 2C 03 00 00 */ cmpwi r3, 0
/* 80347884 003434E4 40 82 00 18 */ bne lbl_8034789C
/* 80347888 003434E8 38 70 00 23 */ addi r3, r16, 0x23
@@ -1915,7 +1915,7 @@ lbl_80347874: lbl_8034789C:
/* 8034789C 003434FC 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 803478A0 00343500 38 8D 92 70 */ addi r4, r13, lbl_8063E530-_SDA_BASE_
-/* 803478A4 00343504 4B E8 6B A9 */ bl func_801CE44C
+/* 803478A4 00343504 4B E8 6B A9 */ bl strcmp
/* 803478A8 00343508 2C 03 00 00 */ cmpwi r3, 0
/* 803478AC 0034350C 40 82 00 18 */ bne lbl_803478C4
/* 803478B0 00343510 38 70 00 38 */ addi r3, r16, 0x38
@@ -1926,7 +1926,7 @@ lbl_8034789C: lbl_803478C4:
/* 803478C4 00343524 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 803478C8 00343528 38 8D 92 78 */ addi r4, r13, lbl_8063E538-_SDA_BASE_
-/* 803478CC 0034352C 4B E8 6B 81 */ bl func_801CE44C
+/* 803478CC 0034352C 4B E8 6B 81 */ bl strcmp
/* 803478D0 00343530 2C 03 00 00 */ cmpwi r3, 0
/* 803478D4 00343534 40 82 00 18 */ bne lbl_803478EC
/* 803478D8 00343538 38 70 00 57 */ addi r3, r16, 0x57
@@ -1937,7 +1937,7 @@ lbl_803478C4: lbl_803478EC:
/* 803478EC 0034354C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 803478F0 00343550 38 8D 92 20 */ addi r4, r13, lbl_8063E4E0-_SDA_BASE_
-/* 803478F4 00343554 4B E8 6B 59 */ bl func_801CE44C
+/* 803478F4 00343554 4B E8 6B 59 */ bl strcmp
/* 803478F8 00343558 2C 03 00 00 */ cmpwi r3, 0
/* 803478FC 0034355C 40 82 00 18 */ bne lbl_80347914
/* 80347900 00343560 38 70 00 76 */ addi r3, r16, 0x76
@@ -1948,12 +1948,12 @@ lbl_803478EC: lbl_80347914:
/* 80347914 00343574 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347918 00343578 38 8D 92 6C */ addi r4, r13, lbl_8063E52C-_SDA_BASE_
-/* 8034791C 0034357C 4B E8 6B 31 */ bl func_801CE44C
+/* 8034791C 0034357C 4B E8 6B 31 */ bl strcmp
/* 80347920 00343580 2C 03 00 00 */ cmpwi r3, 0
/* 80347924 00343584 41 82 00 18 */ beq lbl_8034793C
/* 80347928 00343588 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 8034792C 0034358C 38 8D 92 64 */ addi r4, r13, lbl_8063E524-_SDA_BASE_
-/* 80347930 00343590 4B E8 6B 1D */ bl func_801CE44C
+/* 80347930 00343590 4B E8 6B 1D */ bl strcmp
/* 80347934 00343594 2C 03 00 00 */ cmpwi r3, 0
/* 80347938 00343598 40 82 00 0C */ bne lbl_80347944
lbl_8034793C:
@@ -2026,7 +2026,7 @@ lbl_80347A00: lbl_80347A30:
/* 80347A30 00343690 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347A34 00343694 38 8D 92 80 */ addi r4, r13, lbl_8063E540-_SDA_BASE_
-/* 80347A38 00343698 4B E8 6A 15 */ bl func_801CE44C
+/* 80347A38 00343698 4B E8 6A 15 */ bl strcmp
/* 80347A3C 0034369C 2C 03 00 00 */ cmpwi r3, 0
/* 80347A40 003436A0 41 82 00 2C */ beq lbl_80347A6C
/* 80347A44 003436A4 7F A3 EB 78 */ mr r3, r29
@@ -2069,7 +2069,7 @@ lbl_80347AA8: lbl_80347ACC:
/* 80347ACC 0034372C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347AD0 00343730 38 8D 92 18 */ addi r4, r13, lbl_8063E4D8-_SDA_BASE_
-/* 80347AD4 00343734 4B E8 69 79 */ bl func_801CE44C
+/* 80347AD4 00343734 4B E8 69 79 */ bl strcmp
/* 80347AD8 00343738 2C 03 00 00 */ cmpwi r3, 0
/* 80347ADC 0034373C 40 82 00 50 */ bne lbl_80347B2C
/* 80347AE0 00343740 38 60 00 15 */ li r3, 0x15
@@ -2095,7 +2095,7 @@ lbl_80347B14: lbl_80347B2C:
/* 80347B2C 0034378C 38 61 02 E0 */ addi r3, r1, 0x2e0
/* 80347B30 00343790 38 8D 92 84 */ addi r4, r13, lbl_8063E544-_SDA_BASE_
-/* 80347B34 00343794 4B E8 69 19 */ bl func_801CE44C
+/* 80347B34 00343794 4B E8 69 19 */ bl strcmp
/* 80347B38 00343798 2C 03 00 00 */ cmpwi r3, 0
/* 80347B3C 0034379C 40 82 00 10 */ bne lbl_80347B4C
/* 80347B40 003437A0 92 30 00 04 */ stw r17, 4(r16)
diff --git a/asm/GameSpy/gpiTransfer.s b/asm/GameSpy/gpiTransfer.s index 8219725..a74da80 100644 --- a/asm/GameSpy/gpiTransfer.s +++ b/asm/GameSpy/gpiTransfer.s @@ -26,7 +26,7 @@ gpiHandleTransferMessage: /* 80347D88 003439E8 38 C1 00 0C */ addi r6, r1, 0xc
/* 80347D8C 003439EC 38 E1 00 10 */ addi r7, r1, 0x10
/* 80347D90 003439F0 4C C6 31 82 */ crclr 6
-/* 80347D94 003439F4 4B E8 64 75 */ bl func_801CE208
+/* 80347D94 003439F4 4B E8 64 75 */ bl sscanf
/* 80347D98 003439F8 2C 03 00 03 */ cmpwi r3, 3
/* 80347D9C 003439FC 40 82 00 6C */ bne lbl_80347E08
/* 80347DA0 00343A00 7F A3 EB 78 */ mr r3, r29
@@ -43,7 +43,7 @@ gpiHandleTransferMessage: /* 80347DCC 00343A2C 38 A0 00 01 */ li r5, 1
/* 80347DD0 00343A30 38 C0 00 02 */ li r6, 2
/* 80347DD4 00343A34 4C C6 31 82 */ crclr 6
-/* 80347DD8 00343A38 4B E8 4D 25 */ bl func_801CCAFC
+/* 80347DD8 00343A38 4B E8 4D 25 */ bl sprintf
/* 80347DDC 00343A3C 7F A3 EB 78 */ mr r3, r29
/* 80347DE0 00343A40 7F C4 F3 78 */ mr r4, r30
/* 80347DE4 00343A44 38 A1 00 18 */ addi r5, r1, 0x18
diff --git a/asm/GameSpy/gpiUnique.s b/asm/GameSpy/gpiUnique.s index 00a887e..7ced259 100644 --- a/asm/GameSpy/gpiUnique.s +++ b/asm/GameSpy/gpiUnique.s @@ -24,7 +24,7 @@ lbl_80347E64: /* 80347E64 00343AC4 7F E3 FB 78 */ mr r3, r31
/* 80347E68 00343AC8 38 8D 92 A0 */ addi r4, r13, lbl_8063E560-_SDA_BASE_
/* 80347E6C 00343ACC 38 A0 00 04 */ li r5, 4
-/* 80347E70 00343AD0 4B E8 66 F9 */ bl func_801CE568
+/* 80347E70 00343AD0 4B E8 66 F9 */ bl strncmp
/* 80347E74 00343AD4 2C 03 00 00 */ cmpwi r3, 0
/* 80347E78 00343AD8 41 82 00 30 */ beq lbl_80347EA8
/* 80347E7C 00343ADC 3C A0 80 45 */ lis r5, lbl_8044B548@ha
diff --git a/asm/GameSpy/gpiUtility.s b/asm/GameSpy/gpiUtility.s index 3b6f171..3081510 100644 --- a/asm/GameSpy/gpiUtility.s +++ b/asm/GameSpy/gpiUtility.s @@ -11,7 +11,7 @@ strzcpy: /* 80347F60 00343BC0 7C BF 2B 78 */ mr r31, r5
/* 80347F64 00343BC4 93 C1 00 08 */ stw r30, 8(r1)
/* 80347F68 00343BC8 7C 7E 1B 78 */ mr r30, r3
-/* 80347F6C 00343BCC 4B E8 64 25 */ bl func_801CE390
+/* 80347F6C 00343BCC 4B E8 64 25 */ bl strncpy
/* 80347F70 00343BD0 7C 7E FA 14 */ add r3, r30, r31
/* 80347F74 00343BD4 38 00 00 00 */ li r0, 0
/* 80347F78 00343BD8 98 03 FF FF */ stb r0, -1(r3)
@@ -38,7 +38,7 @@ gpiCheckForError: /* 80347FC0 00343C20 7C 7C 1B 78 */ mr r28, r3
/* 80347FC4 00343C24 83 E3 00 00 */ lwz r31, 0(r3)
/* 80347FC8 00343C28 7F A3 EB 78 */ mr r3, r29
-/* 80347FCC 00343C2C 4B E8 65 9D */ bl func_801CE568
+/* 80347FCC 00343C2C 4B E8 65 9D */ bl strncmp
/* 80347FD0 00343C30 2C 03 00 00 */ cmpwi r3, 0
/* 80347FD4 00343C34 40 82 00 94 */ bne lbl_80348068
/* 80347FD8 00343C38 7F A3 EB 78 */ mr r3, r29
@@ -67,7 +67,7 @@ lbl_80348028: /* 8034802C 00343C8C 41 82 00 34 */ beq lbl_80348060
/* 80348030 00343C90 7F A3 EB 78 */ mr r3, r29
/* 80348034 00343C94 38 8D 92 B8 */ addi r4, r13, lbl_8063E578-_SDA_BASE_
-/* 80348038 00343C98 4B E8 67 69 */ bl func_801CE7A0
+/* 80348038 00343C98 4B E8 67 69 */ bl strstr
/* 8034803C 00343C9C 7C 03 00 D0 */ neg r0, r3
/* 80348040 00343CA0 38 80 00 04 */ li r4, 4
/* 80348044 00343CA4 7C 00 1B 78 */ or r0, r0, r3
@@ -104,7 +104,7 @@ gpiValueForKey: /* 803480A8 00343D08 7C BC 2B 78 */ mr r28, r5
/* 803480AC 00343D0C 7C DD 33 78 */ mr r29, r6
/* 803480B0 00343D10 7C 1E 07 74 */ extsb r30, r0
-/* 803480B4 00343D14 4B E8 66 ED */ bl func_801CE7A0
+/* 803480B4 00343D14 4B E8 66 ED */ bl strstr
/* 803480B8 00343D18 2C 03 00 00 */ cmpwi r3, 0
/* 803480BC 00343D1C 7C 7F 1B 78 */ mr r31, r3
/* 803480C0 00343D20 40 82 00 0C */ bne lbl_803480CC
@@ -168,7 +168,7 @@ gpiCheckSocketConnect: /* 80348188 00343DE8 38 84 B5 98 */ addi r4, r4, lbl_8044B598@l
/* 8034818C 00343DEC 38 A0 01 00 */ li r5, 0x100
/* 80348190 00343DF0 7F C3 F3 78 */ mr r3, r30
-/* 80348194 00343DF4 4B E8 61 FD */ bl func_801CE390
+/* 80348194 00343DF4 4B E8 61 FD */ bl strncpy
/* 80348198 00343DF8 9B FE 00 FF */ stb r31, 0xff(r30)
/* 8034819C 00343DFC 38 00 00 05 */ li r0, 5
/* 803481A0 00343E00 7F A3 EB 78 */ mr r3, r29
@@ -229,7 +229,7 @@ gpiReadKeyAndValue: /* 80348260 00343EC0 38 84 B5 D0 */ addi r4, r4, lbl_8044B5D0@l
/* 80348264 00343EC4 38 A0 01 00 */ li r5, 0x100
/* 80348268 00343EC8 7F C3 F3 78 */ mr r3, r30
-/* 8034826C 00343ECC 4B E8 61 25 */ bl func_801CE390
+/* 8034826C 00343ECC 4B E8 61 25 */ bl strncpy
/* 80348270 00343ED0 38 60 00 00 */ li r3, 0
/* 80348274 00343ED4 38 00 00 01 */ li r0, 1
/* 80348278 00343ED8 98 7E 00 FF */ stb r3, 0xff(r30)
@@ -251,7 +251,7 @@ lbl_803482A0: /* 803482B0 00343F10 38 84 B5 D0 */ addi r4, r4, lbl_8044B5D0@l
/* 803482B4 00343F14 38 A0 01 00 */ li r5, 0x100
/* 803482B8 00343F18 7F C3 F3 78 */ mr r3, r30
-/* 803482BC 00343F1C 4B E8 60 D5 */ bl func_801CE390
+/* 803482BC 00343F1C 4B E8 60 D5 */ bl strncpy
/* 803482C0 00343F20 38 60 00 00 */ li r3, 0
/* 803482C4 00343F24 38 00 00 01 */ li r0, 1
/* 803482C8 00343F28 98 7E 00 FF */ stb r3, 0xff(r30)
@@ -270,7 +270,7 @@ lbl_803482E8: /* 803482F8 00343F58 38 84 B5 D0 */ addi r4, r4, lbl_8044B5D0@l
/* 803482FC 00343F5C 38 A0 01 00 */ li r5, 0x100
/* 80348300 00343F60 7F C3 F3 78 */ mr r3, r30
-/* 80348304 00343F64 4B E8 60 8D */ bl func_801CE390
+/* 80348304 00343F64 4B E8 60 8D */ bl strncpy
/* 80348308 00343F68 38 60 00 00 */ li r3, 0
/* 8034830C 00343F6C 38 00 00 01 */ li r0, 1
/* 80348310 00343F70 98 7E 00 FF */ stb r3, 0xff(r30)
@@ -303,7 +303,7 @@ lbl_80348360: /* 80348370 00343FD0 38 84 B5 D0 */ addi r4, r4, lbl_8044B5D0@l
/* 80348374 00343FD4 38 A0 01 00 */ li r5, 0x100
/* 80348378 00343FD8 7F C3 F3 78 */ mr r3, r30
-/* 8034837C 00343FDC 4B E8 60 15 */ bl func_801CE390
+/* 8034837C 00343FDC 4B E8 60 15 */ bl strncpy
/* 80348380 00343FE0 38 60 00 00 */ li r3, 0
/* 80348384 00343FE4 38 00 00 01 */ li r0, 1
/* 80348388 00343FE8 98 7E 00 FF */ stb r3, 0xff(r30)
@@ -355,7 +355,7 @@ gpiSetError: /* 80348424 00344084 38 A0 01 00 */ li r5, 0x100
/* 80348428 00344088 83 E3 00 00 */ lwz r31, 0(r3)
/* 8034842C 0034408C 7F E3 FB 78 */ mr r3, r31
-/* 80348430 00344090 4B E8 5F 61 */ bl func_801CE390
+/* 80348430 00344090 4B E8 5F 61 */ bl strncpy
/* 80348434 00344094 38 00 00 00 */ li r0, 0
/* 80348438 00344098 98 1F 00 FF */ stb r0, 0xff(r31)
/* 8034843C 0034409C 93 DF 04 34 */ stw r30, 0x434(r31)
@@ -375,7 +375,7 @@ gpiSetErrorString: /* 80348468 003440C8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8034846C 003440CC 83 E3 00 00 */ lwz r31, 0(r3)
/* 80348470 003440D0 7F E3 FB 78 */ mr r3, r31
-/* 80348474 003440D4 4B E8 5F 1D */ bl func_801CE390
+/* 80348474 003440D4 4B E8 5F 1D */ bl strncpy
/* 80348478 003440D8 38 00 00 00 */ li r0, 0
/* 8034847C 003440DC 98 1F 00 FF */ stb r0, 0xff(r31)
/* 80348480 003440E0 83 E1 00 0C */ lwz r31, 0xc(r1)
diff --git a/asm/GameSpy/gsAvailable.s b/asm/GameSpy/gsAvailable.s index a459f25..513ab58 100644 --- a/asm/GameSpy/gsAvailable.s +++ b/asm/GameSpy/gsAvailable.s @@ -16,7 +16,7 @@ GSIStartAvailableCheckA: /* 8033937C 00334FDC 7C 7C 1B 78 */ mr r28, r3
/* 80339380 00334FE0 7F 84 E3 78 */ mr r4, r28
/* 80339384 00334FE4 38 7D 00 00 */ addi r3, r29, 0
-/* 80339388 00334FE8 4B E9 4F 49 */ bl func_801CE2D0
+/* 80339388 00334FE8 4B E9 4F 49 */ bl strcpy
/* 8033938C 00334FEC 38 00 FF FF */ li r0, -1
/* 80339390 00334FF0 90 1D 00 80 */ stw r0, 0x80(r29)
/* 80339394 00334FF4 4B FF FC 3D */ bl SocketStartUp
@@ -28,7 +28,7 @@ GSIStartAvailableCheckA: /* 803393AC 0033500C 38 61 00 08 */ addi r3, r1, 8
/* 803393B0 00335010 38 84 A4 30 */ addi r4, r4, lbl_8044A430@l
/* 803393B4 00335014 4C C6 31 82 */ crclr 6
-/* 803393B8 00335018 4B E9 37 45 */ bl func_801CCAFC
+/* 803393B8 00335018 4B E9 37 45 */ bl sprintf
lbl_803393BC:
/* 803393BC 0033501C 3B DD 00 80 */ addi r30, r29, 0x80
/* 803393C0 00335020 38 00 00 02 */ li r0, 2
@@ -143,7 +143,7 @@ lbl_80339544: /* 80339548 003351A8 38 61 00 14 */ addi r3, r1, 0x14
/* 8033954C 003351AC 38 9F 00 08 */ addi r4, r31, 8
/* 80339550 003351B0 38 A0 00 04 */ li r5, 4
-/* 80339554 003351B4 4B E9 0E 45 */ bl func_801CA398
+/* 80339554 003351B4 4B E9 0E 45 */ bl memcmp
/* 80339558 003351B8 2C 03 00 00 */ cmpwi r3, 0
/* 8033955C 003351BC 41 82 00 0C */ beq lbl_80339568
/* 80339560 003351C0 38 A0 00 01 */ li r5, 1
@@ -159,7 +159,7 @@ lbl_80339580: /* 80339580 003351E0 38 61 00 18 */ addi r3, r1, 0x18
/* 80339584 003351E4 38 8D 8F 38 */ addi r4, r13, lbl_8063E1F8-_SDA_BASE_
/* 80339588 003351E8 38 A0 00 03 */ li r5, 3
-/* 8033958C 003351EC 4B E9 0E 0D */ bl func_801CA398
+/* 8033958C 003351EC 4B E9 0E 0D */ bl memcmp
/* 80339590 003351F0 2C 03 00 00 */ cmpwi r3, 0
/* 80339594 003351F4 41 82 00 0C */ beq lbl_803395A0
/* 80339598 003351F8 38 A0 00 01 */ li r5, 1
diff --git a/asm/GameSpy/gstats.s b/asm/GameSpy/gstats.s index df7385a..28ffc5c 100644 --- a/asm/GameSpy/gstats.s +++ b/asm/GameSpy/gstats.s @@ -524,13 +524,13 @@ lbl_80358A8C: /* 80358AA4 00354704 38 61 04 08 */ addi r3, r1, 0x408
/* 80358AA8 00354708 68 00 00 01 */ xori r0, r0, 1
/* 80358AAC 0035470C 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80358AB0 00354710 4B E7 59 25 */ bl func_801CE3D4
+/* 80358AB0 00354710 4B E7 59 25 */ bl strcat
/* 80358AB4 00354714 38 61 04 08 */ addi r3, r1, 0x408
/* 80358AB8 00354718 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80358ABC 0035471C 4B E7 59 19 */ bl func_801CE3D4
+/* 80358ABC 0035471C 4B E7 59 19 */ bl strcat
/* 80358AC0 00354720 7F 23 CB 78 */ mr r3, r25
/* 80358AC4 00354724 38 81 04 08 */ addi r4, r1, 0x408
-/* 80358AC8 00354728 4B E7 5C D9 */ bl func_801CE7A0
+/* 80358AC8 00354728 4B E7 5C D9 */ bl strstr
/* 80358ACC 0035472C 2C 03 00 00 */ cmpwi r3, 0
/* 80358AD0 00354730 7C 7A 1B 78 */ mr r26, r3
/* 80358AD4 00354734 40 82 00 0C */ bne lbl_80358AE0
@@ -587,13 +587,13 @@ lbl_80358B68: /* 80358B80 003547E0 38 61 03 08 */ addi r3, r1, 0x308
/* 80358B84 003547E4 68 00 00 01 */ xori r0, r0, 1
/* 80358B88 003547E8 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80358B8C 003547EC 4B E7 58 49 */ bl func_801CE3D4
+/* 80358B8C 003547EC 4B E7 58 49 */ bl strcat
/* 80358B90 003547F0 38 61 03 08 */ addi r3, r1, 0x308
/* 80358B94 003547F4 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80358B98 003547F8 4B E7 58 3D */ bl func_801CE3D4
+/* 80358B98 003547F8 4B E7 58 3D */ bl strcat
/* 80358B9C 003547FC 7F 23 CB 78 */ mr r3, r25
/* 80358BA0 00354800 38 81 03 08 */ addi r4, r1, 0x308
-/* 80358BA4 00354804 4B E7 5B FD */ bl func_801CE7A0
+/* 80358BA4 00354804 4B E7 5B FD */ bl strstr
/* 80358BA8 00354808 2C 03 00 00 */ cmpwi r3, 0
/* 80358BAC 0035480C 7C 7A 1B 78 */ mr r26, r3
/* 80358BB0 00354810 40 82 00 0C */ bne lbl_80358BBC
@@ -650,13 +650,13 @@ lbl_80358C44: /* 80358C5C 003548BC 38 61 02 08 */ addi r3, r1, 0x208
/* 80358C60 003548C0 68 00 00 01 */ xori r0, r0, 1
/* 80358C64 003548C4 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80358C68 003548C8 4B E7 57 6D */ bl func_801CE3D4
+/* 80358C68 003548C8 4B E7 57 6D */ bl strcat
/* 80358C6C 003548CC 38 61 02 08 */ addi r3, r1, 0x208
/* 80358C70 003548D0 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80358C74 003548D4 4B E7 57 61 */ bl func_801CE3D4
+/* 80358C74 003548D4 4B E7 57 61 */ bl strcat
/* 80358C78 003548D8 7F 23 CB 78 */ mr r3, r25
/* 80358C7C 003548DC 38 81 02 08 */ addi r4, r1, 0x208
-/* 80358C80 003548E0 4B E7 5B 21 */ bl func_801CE7A0
+/* 80358C80 003548E0 4B E7 5B 21 */ bl strstr
/* 80358C84 003548E4 2C 03 00 00 */ cmpwi r3, 0
/* 80358C88 003548E8 7C 7A 1B 78 */ mr r26, r3
/* 80358C8C 003548EC 40 82 00 0C */ bne lbl_80358C98
@@ -713,13 +713,13 @@ lbl_80358D20: /* 80358D38 00354998 38 61 01 08 */ addi r3, r1, 0x108
/* 80358D3C 0035499C 68 00 00 01 */ xori r0, r0, 1
/* 80358D40 003549A0 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80358D44 003549A4 4B E7 56 91 */ bl func_801CE3D4
+/* 80358D44 003549A4 4B E7 56 91 */ bl strcat
/* 80358D48 003549A8 38 61 01 08 */ addi r3, r1, 0x108
/* 80358D4C 003549AC 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80358D50 003549B0 4B E7 56 85 */ bl func_801CE3D4
+/* 80358D50 003549B0 4B E7 56 85 */ bl strcat
/* 80358D54 003549B4 7F 23 CB 78 */ mr r3, r25
/* 80358D58 003549B8 38 81 01 08 */ addi r4, r1, 0x108
-/* 80358D5C 003549BC 4B E7 5A 45 */ bl func_801CE7A0
+/* 80358D5C 003549BC 4B E7 5A 45 */ bl strstr
/* 80358D60 003549C0 2C 03 00 00 */ cmpwi r3, 0
/* 80358D64 003549C4 7C 7A 1B 78 */ mr r26, r3
/* 80358D68 003549C8 40 82 00 0C */ bne lbl_80358D74
@@ -810,13 +810,13 @@ lbl_80358E70: /* 80358E88 00354AE8 38 61 00 08 */ addi r3, r1, 8
/* 80358E8C 00354AEC 68 00 00 01 */ xori r0, r0, 1
/* 80358E90 00354AF0 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80358E94 00354AF4 4B E7 55 41 */ bl func_801CE3D4
+/* 80358E94 00354AF4 4B E7 55 41 */ bl strcat
/* 80358E98 00354AF8 38 61 00 08 */ addi r3, r1, 8
/* 80358E9C 00354AFC 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80358EA0 00354B00 4B E7 55 35 */ bl func_801CE3D4
+/* 80358EA0 00354B00 4B E7 55 35 */ bl strcat
/* 80358EA4 00354B04 7F 23 CB 78 */ mr r3, r25
/* 80358EA8 00354B08 38 81 00 08 */ addi r4, r1, 8
-/* 80358EAC 00354B0C 4B E7 58 F5 */ bl func_801CE7A0
+/* 80358EAC 00354B0C 4B E7 58 F5 */ bl strstr
/* 80358EB0 00354B10 2C 03 00 00 */ cmpwi r3, 0
/* 80358EB4 00354B14 7C 7E 1B 78 */ mr r30, r3
/* 80358EB8 00354B18 40 82 00 0C */ bne lbl_80358EC4
@@ -858,7 +858,7 @@ lbl_80358F28: /* 80358F2C 00354B8C 7C 7E 1B 78 */ mr r30, r3
/* 80358F30 00354B90 7F 23 CB 78 */ mr r3, r25
/* 80358F34 00354B94 38 8D 94 5C */ addi r4, r13, lbl_8063E71C-_SDA_BASE_
-/* 80358F38 00354B98 4B E7 58 69 */ bl func_801CE7A0
+/* 80358F38 00354B98 4B E7 58 69 */ bl strstr
/* 80358F3C 00354B9C 2C 03 00 00 */ cmpwi r3, 0
/* 80358F40 00354BA0 40 82 00 10 */ bne lbl_80358F50
/* 80358F44 00354BA4 3B C0 00 00 */ li r30, 0
@@ -896,7 +896,7 @@ ProcessStatement: /* 80358FAC 00354C0C 7C 7B 1B 78 */ mr r27, r3
/* 80358FB0 00354C10 38 9D 02 18 */ addi r4, r29, 0x218
/* 80358FB4 00354C14 38 A0 00 08 */ li r5, 8
-/* 80358FB8 00354C18 4B E7 55 B1 */ bl func_801CE568
+/* 80358FB8 00354C18 4B E7 55 B1 */ bl strncmp
/* 80358FBC 00354C1C 2C 03 00 00 */ cmpwi r3, 0
/* 80358FC0 00354C20 40 82 03 2C */ bne lbl_803592EC
/* 80358FC4 00354C24 38 7D 01 08 */ addi r3, r29, 0x108
@@ -915,13 +915,13 @@ lbl_80358FDC: /* 80358FF4 00354C54 38 61 08 08 */ addi r3, r1, 0x808
/* 80358FF8 00354C58 68 00 00 01 */ xori r0, r0, 1
/* 80358FFC 00354C5C 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80359000 00354C60 4B E7 53 D5 */ bl func_801CE3D4
+/* 80359000 00354C60 4B E7 53 D5 */ bl strcat
/* 80359004 00354C64 38 61 08 08 */ addi r3, r1, 0x808
/* 80359008 00354C68 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 8035900C 00354C6C 4B E7 53 C9 */ bl func_801CE3D4
+/* 8035900C 00354C6C 4B E7 53 C9 */ bl strcat
/* 80359010 00354C70 7F 63 DB 78 */ mr r3, r27
/* 80359014 00354C74 38 81 08 08 */ addi r4, r1, 0x808
-/* 80359018 00354C78 4B E7 57 89 */ bl func_801CE7A0
+/* 80359018 00354C78 4B E7 57 89 */ bl strstr
/* 8035901C 00354C7C 2C 03 00 00 */ cmpwi r3, 0
/* 80359020 00354C80 7C 7C 1B 78 */ mr r28, r3
/* 80359024 00354C84 40 82 00 0C */ bne lbl_80359030
@@ -977,13 +977,13 @@ lbl_803590B4: /* 803590CC 00354D2C 38 61 09 08 */ addi r3, r1, 0x908
/* 803590D0 00354D30 68 00 00 01 */ xori r0, r0, 1
/* 803590D4 00354D34 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 803590D8 00354D38 4B E7 52 FD */ bl func_801CE3D4
+/* 803590D8 00354D38 4B E7 52 FD */ bl strcat
/* 803590DC 00354D3C 38 61 09 08 */ addi r3, r1, 0x908
/* 803590E0 00354D40 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 803590E4 00354D44 4B E7 52 F1 */ bl func_801CE3D4
+/* 803590E4 00354D44 4B E7 52 F1 */ bl strcat
/* 803590E8 00354D48 7F 63 DB 78 */ mr r3, r27
/* 803590EC 00354D4C 38 81 09 08 */ addi r4, r1, 0x908
-/* 803590F0 00354D50 4B E7 56 B1 */ bl func_801CE7A0
+/* 803590F0 00354D50 4B E7 56 B1 */ bl strstr
/* 803590F4 00354D54 2C 03 00 00 */ cmpwi r3, 0
/* 803590F8 00354D58 7C 7C 1B 78 */ mr r28, r3
/* 803590FC 00354D5C 40 82 00 0C */ bne lbl_80359108
@@ -1039,13 +1039,13 @@ lbl_8035918C: /* 803591A4 00354E04 38 61 0A 08 */ addi r3, r1, 0xa08
/* 803591A8 00354E08 68 00 00 01 */ xori r0, r0, 1
/* 803591AC 00354E0C 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 803591B0 00354E10 4B E7 52 25 */ bl func_801CE3D4
+/* 803591B0 00354E10 4B E7 52 25 */ bl strcat
/* 803591B4 00354E14 38 61 0A 08 */ addi r3, r1, 0xa08
/* 803591B8 00354E18 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 803591BC 00354E1C 4B E7 52 19 */ bl func_801CE3D4
+/* 803591BC 00354E1C 4B E7 52 19 */ bl strcat
/* 803591C0 00354E20 7F 63 DB 78 */ mr r3, r27
/* 803591C4 00354E24 38 81 0A 08 */ addi r4, r1, 0xa08
-/* 803591C8 00354E28 4B E7 55 D9 */ bl func_801CE7A0
+/* 803591C8 00354E28 4B E7 55 D9 */ bl strstr
/* 803591CC 00354E2C 2C 03 00 00 */ cmpwi r3, 0
/* 803591D0 00354E30 7C 7B 1B 78 */ mr r27, r3
/* 803591D4 00354E34 40 82 00 0C */ bne lbl_803591E0
@@ -1134,7 +1134,7 @@ lbl_803592EC: /* 803592EC 00354F4C 7F 63 DB 78 */ mr r3, r27
/* 803592F0 00354F50 38 9D 02 24 */ addi r4, r29, 0x224
/* 803592F4 00354F54 38 A0 00 09 */ li r5, 9
-/* 803592F8 00354F58 4B E7 52 71 */ bl func_801CE568
+/* 803592F8 00354F58 4B E7 52 71 */ bl strncmp
/* 803592FC 00354F5C 2C 03 00 00 */ cmpwi r3, 0
/* 80359300 00354F60 40 82 02 5C */ bne lbl_8035955C
/* 80359304 00354F64 38 7D 01 08 */ addi r3, r29, 0x108
@@ -1153,13 +1153,13 @@ lbl_8035931C: /* 80359334 00354F94 38 61 06 08 */ addi r3, r1, 0x608
/* 80359338 00354F98 68 00 00 01 */ xori r0, r0, 1
/* 8035933C 00354F9C 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80359340 00354FA0 4B E7 50 95 */ bl func_801CE3D4
+/* 80359340 00354FA0 4B E7 50 95 */ bl strcat
/* 80359344 00354FA4 38 61 06 08 */ addi r3, r1, 0x608
/* 80359348 00354FA8 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 8035934C 00354FAC 4B E7 50 89 */ bl func_801CE3D4
+/* 8035934C 00354FAC 4B E7 50 89 */ bl strcat
/* 80359350 00354FB0 7F 63 DB 78 */ mr r3, r27
/* 80359354 00354FB4 38 81 06 08 */ addi r4, r1, 0x608
-/* 80359358 00354FB8 4B E7 54 49 */ bl func_801CE7A0
+/* 80359358 00354FB8 4B E7 54 49 */ bl strstr
/* 8035935C 00354FBC 2C 03 00 00 */ cmpwi r3, 0
/* 80359360 00354FC0 7C 7C 1B 78 */ mr r28, r3
/* 80359364 00354FC4 40 82 00 0C */ bne lbl_80359370
@@ -1215,13 +1215,13 @@ lbl_803593F4: /* 8035940C 0035506C 38 61 07 08 */ addi r3, r1, 0x708
/* 80359410 00355070 68 00 00 01 */ xori r0, r0, 1
/* 80359414 00355074 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80359418 00355078 4B E7 4F BD */ bl func_801CE3D4
+/* 80359418 00355078 4B E7 4F BD */ bl strcat
/* 8035941C 0035507C 38 61 07 08 */ addi r3, r1, 0x708
/* 80359420 00355080 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80359424 00355084 4B E7 4F B1 */ bl func_801CE3D4
+/* 80359424 00355084 4B E7 4F B1 */ bl strcat
/* 80359428 00355088 7F 63 DB 78 */ mr r3, r27
/* 8035942C 0035508C 38 81 07 08 */ addi r4, r1, 0x708
-/* 80359430 00355090 4B E7 53 71 */ bl func_801CE7A0
+/* 80359430 00355090 4B E7 53 71 */ bl strstr
/* 80359434 00355094 2C 03 00 00 */ cmpwi r3, 0
/* 80359438 00355098 7C 7B 1B 78 */ mr r27, r3
/* 8035943C 0035509C 40 82 00 0C */ bne lbl_80359448
@@ -1312,7 +1312,7 @@ lbl_8035955C: /* 8035955C 003551BC 7F 63 DB 78 */ mr r3, r27
/* 80359560 003551C0 38 9D 02 24 */ addi r4, r29, 0x224
/* 80359564 003551C4 38 A0 00 09 */ li r5, 9
-/* 80359568 003551C8 4B E7 50 01 */ bl func_801CE568
+/* 80359568 003551C8 4B E7 50 01 */ bl strncmp
/* 8035956C 003551CC 2C 03 00 00 */ cmpwi r3, 0
/* 80359570 003551D0 40 82 02 5C */ bne lbl_803597CC
/* 80359574 003551D4 38 7D 01 08 */ addi r3, r29, 0x108
@@ -1331,13 +1331,13 @@ lbl_8035958C: /* 803595A4 00355204 38 61 04 08 */ addi r3, r1, 0x408
/* 803595A8 00355208 68 00 00 01 */ xori r0, r0, 1
/* 803595AC 0035520C 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 803595B0 00355210 4B E7 4E 25 */ bl func_801CE3D4
+/* 803595B0 00355210 4B E7 4E 25 */ bl strcat
/* 803595B4 00355214 38 61 04 08 */ addi r3, r1, 0x408
/* 803595B8 00355218 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 803595BC 0035521C 4B E7 4E 19 */ bl func_801CE3D4
+/* 803595BC 0035521C 4B E7 4E 19 */ bl strcat
/* 803595C0 00355220 7F 63 DB 78 */ mr r3, r27
/* 803595C4 00355224 38 81 04 08 */ addi r4, r1, 0x408
-/* 803595C8 00355228 4B E7 51 D9 */ bl func_801CE7A0
+/* 803595C8 00355228 4B E7 51 D9 */ bl strstr
/* 803595CC 0035522C 2C 03 00 00 */ cmpwi r3, 0
/* 803595D0 00355230 7C 7C 1B 78 */ mr r28, r3
/* 803595D4 00355234 40 82 00 0C */ bne lbl_803595E0
@@ -1393,13 +1393,13 @@ lbl_80359664: /* 8035967C 003552DC 38 61 05 08 */ addi r3, r1, 0x508
/* 80359680 003552E0 68 00 00 01 */ xori r0, r0, 1
/* 80359684 003552E4 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80359688 003552E8 4B E7 4D 4D */ bl func_801CE3D4
+/* 80359688 003552E8 4B E7 4D 4D */ bl strcat
/* 8035968C 003552EC 38 61 05 08 */ addi r3, r1, 0x508
/* 80359690 003552F0 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80359694 003552F4 4B E7 4D 41 */ bl func_801CE3D4
+/* 80359694 003552F4 4B E7 4D 41 */ bl strcat
/* 80359698 003552F8 7F 63 DB 78 */ mr r3, r27
/* 8035969C 003552FC 38 81 05 08 */ addi r4, r1, 0x508
-/* 803596A0 00355300 4B E7 51 01 */ bl func_801CE7A0
+/* 803596A0 00355300 4B E7 51 01 */ bl strstr
/* 803596A4 00355304 2C 03 00 00 */ cmpwi r3, 0
/* 803596A8 00355308 7C 7B 1B 78 */ mr r27, r3
/* 803596AC 0035530C 40 82 00 0C */ bne lbl_803596B8
@@ -1490,7 +1490,7 @@ lbl_803597CC: /* 803597CC 0035542C 7F 63 DB 78 */ mr r3, r27
/* 803597D0 00355430 38 9D 02 30 */ addi r4, r29, 0x230
/* 803597D4 00355434 38 A0 00 08 */ li r5, 8
-/* 803597D8 00355438 4B E7 4D 91 */ bl func_801CE568
+/* 803597D8 00355438 4B E7 4D 91 */ bl strncmp
/* 803597DC 0035543C 2C 03 00 00 */ cmpwi r3, 0
/* 803597E0 00355440 40 82 00 14 */ bne lbl_803597F4
/* 803597E4 00355444 7F 63 DB 78 */ mr r3, r27
@@ -1501,7 +1501,7 @@ lbl_803597F4: /* 803597F4 00355454 7F 63 DB 78 */ mr r3, r27
/* 803597F8 00355458 38 9D 02 3C */ addi r4, r29, 0x23c
/* 803597FC 0035545C 38 A0 00 08 */ li r5, 8
-/* 80359800 00355460 4B E7 4D 69 */ bl func_801CE568
+/* 80359800 00355460 4B E7 4D 69 */ bl strncmp
/* 80359804 00355464 2C 03 00 00 */ cmpwi r3, 0
/* 80359808 00355468 40 82 03 F0 */ bne lbl_80359BF8
/* 8035980C 0035546C 38 7D 01 08 */ addi r3, r29, 0x108
@@ -1520,13 +1520,13 @@ lbl_80359824: /* 8035983C 0035549C 38 61 00 08 */ addi r3, r1, 8
/* 80359840 003554A0 68 00 00 01 */ xori r0, r0, 1
/* 80359844 003554A4 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80359848 003554A8 4B E7 4B 8D */ bl func_801CE3D4
+/* 80359848 003554A8 4B E7 4B 8D */ bl strcat
/* 8035984C 003554AC 38 61 00 08 */ addi r3, r1, 8
/* 80359850 003554B0 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80359854 003554B4 4B E7 4B 81 */ bl func_801CE3D4
+/* 80359854 003554B4 4B E7 4B 81 */ bl strcat
/* 80359858 003554B8 7F 63 DB 78 */ mr r3, r27
/* 8035985C 003554BC 38 81 00 08 */ addi r4, r1, 8
-/* 80359860 003554C0 4B E7 4F 41 */ bl func_801CE7A0
+/* 80359860 003554C0 4B E7 4F 41 */ bl strstr
/* 80359864 003554C4 2C 03 00 00 */ cmpwi r3, 0
/* 80359868 003554C8 7C 7C 1B 78 */ mr r28, r3
/* 8035986C 003554CC 40 82 00 0C */ bne lbl_80359878
@@ -1582,13 +1582,13 @@ lbl_803598FC: /* 80359914 00355574 38 61 01 08 */ addi r3, r1, 0x108
/* 80359918 00355578 68 00 00 01 */ xori r0, r0, 1
/* 8035991C 0035557C 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80359920 00355580 4B E7 4A B5 */ bl func_801CE3D4
+/* 80359920 00355580 4B E7 4A B5 */ bl strcat
/* 80359924 00355584 38 61 01 08 */ addi r3, r1, 0x108
/* 80359928 00355588 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 8035992C 0035558C 4B E7 4A A9 */ bl func_801CE3D4
+/* 8035992C 0035558C 4B E7 4A A9 */ bl strcat
/* 80359930 00355590 7F 63 DB 78 */ mr r3, r27
/* 80359934 00355594 38 81 01 08 */ addi r4, r1, 0x108
-/* 80359938 00355598 4B E7 4E 69 */ bl func_801CE7A0
+/* 80359938 00355598 4B E7 4E 69 */ bl strstr
/* 8035993C 0035559C 2C 03 00 00 */ cmpwi r3, 0
/* 80359940 003555A0 7C 7E 1B 78 */ mr r30, r3
/* 80359944 003555A4 40 82 00 0C */ bne lbl_80359950
@@ -1644,13 +1644,13 @@ lbl_803599D4: /* 803599EC 0035564C 38 61 02 08 */ addi r3, r1, 0x208
/* 803599F0 00355650 68 00 00 01 */ xori r0, r0, 1
/* 803599F4 00355654 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 803599F8 00355658 4B E7 49 DD */ bl func_801CE3D4
+/* 803599F8 00355658 4B E7 49 DD */ bl strcat
/* 803599FC 0035565C 38 61 02 08 */ addi r3, r1, 0x208
/* 80359A00 00355660 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80359A04 00355664 4B E7 49 D1 */ bl func_801CE3D4
+/* 80359A04 00355664 4B E7 49 D1 */ bl strcat
/* 80359A08 00355668 7F 63 DB 78 */ mr r3, r27
/* 80359A0C 0035566C 38 81 02 08 */ addi r4, r1, 0x208
-/* 80359A10 00355670 4B E7 4D 91 */ bl func_801CE7A0
+/* 80359A10 00355670 4B E7 4D 91 */ bl strstr
/* 80359A14 00355674 2C 03 00 00 */ cmpwi r3, 0
/* 80359A18 00355678 7C 7F 1B 78 */ mr r31, r3
/* 80359A1C 0035567C 40 82 00 0C */ bne lbl_80359A28
@@ -1706,13 +1706,13 @@ lbl_80359AAC: /* 80359AC4 00355724 38 61 03 08 */ addi r3, r1, 0x308
/* 80359AC8 00355728 68 00 00 01 */ xori r0, r0, 1
/* 80359ACC 0035572C 90 0D B1 28 */ stw r0, lbl_806403E8-_SDA_BASE_(r13)
-/* 80359AD0 00355730 4B E7 49 05 */ bl func_801CE3D4
+/* 80359AD0 00355730 4B E7 49 05 */ bl strcat
/* 80359AD4 00355734 38 61 03 08 */ addi r3, r1, 0x308
/* 80359AD8 00355738 38 8D 94 38 */ addi r4, r13, lbl_8063E6F8-_SDA_BASE_
-/* 80359ADC 0035573C 4B E7 48 F9 */ bl func_801CE3D4
+/* 80359ADC 0035573C 4B E7 48 F9 */ bl strcat
/* 80359AE0 00355740 7F 63 DB 78 */ mr r3, r27
/* 80359AE4 00355744 38 81 03 08 */ addi r4, r1, 0x308
-/* 80359AE8 00355748 4B E7 4C B9 */ bl func_801CE7A0
+/* 80359AE8 00355748 4B E7 4C B9 */ bl strstr
/* 80359AEC 0035574C 2C 03 00 00 */ cmpwi r3, 0
/* 80359AF0 00355750 7C 7B 1B 78 */ mr r27, r3
/* 80359AF4 00355754 40 82 00 0C */ bne lbl_80359B00
@@ -2051,7 +2051,7 @@ lbl_80359F60: /* 80359F68 00355BC8 38 61 00 10 */ addi r3, r1, 0x10
/* 80359F6C 00355BCC 38 8D 94 88 */ addi r4, r13, lbl_8063E748-_SDA_BASE_
/* 80359F70 00355BD0 4C C6 31 82 */ crclr 6
-/* 80359F74 00355BD4 4B E7 2B 89 */ bl func_801CCAFC
+/* 80359F74 00355BD4 4B E7 2B 89 */ bl sprintf
/* 80359F78 00355BD8 2C 1C 00 00 */ cmpwi r28, 0
/* 80359F7C 00355BDC 93 E1 00 08 */ stw r31, 8(r1)
/* 80359F80 00355BE0 40 82 00 08 */ bne lbl_80359F88
@@ -2116,7 +2116,7 @@ lbl_8035A044: /* 8035A048 00355CA8 38 61 00 10 */ addi r3, r1, 0x10
/* 8035A04C 00355CAC 38 8D 94 88 */ addi r4, r13, lbl_8063E748-_SDA_BASE_
/* 8035A050 00355CB0 4C C6 31 82 */ crclr 6
-/* 8035A054 00355CB4 4B E7 2A A9 */ bl func_801CCAFC
+/* 8035A054 00355CB4 4B E7 2A A9 */ bl sprintf
/* 8035A058 00355CB8 2C 1D 00 00 */ cmpwi r29, 0
/* 8035A05C 00355CBC DB E1 00 08 */ stfd f31, 8(r1)
/* 8035A060 00355CC0 40 82 00 08 */ bne lbl_8035A068
@@ -2182,7 +2182,7 @@ lbl_8035A124: /* 8035A12C 00355D8C 38 61 00 08 */ addi r3, r1, 8
/* 8035A130 00355D90 38 8D 94 88 */ addi r4, r13, lbl_8063E748-_SDA_BASE_
/* 8035A134 00355D94 4C C6 31 82 */ crclr 6
-/* 8035A138 00355D98 4B E7 29 C5 */ bl func_801CCAFC
+/* 8035A138 00355D98 4B E7 29 C5 */ bl sprintf
/* 8035A13C 00355D9C 2C 1C 00 00 */ cmpwi r28, 0
/* 8035A140 00355DA0 40 82 00 08 */ bne lbl_8035A148
/* 8035A144 00355DA4 83 8D B1 10 */ lwz r28, lbl_806403D0-_SDA_BASE_(r13)
@@ -2246,7 +2246,7 @@ lbl_8035A200: /* 8035A208 00355E68 38 61 00 10 */ addi r3, r1, 0x10
/* 8035A20C 00355E6C 38 8D 94 90 */ addi r4, r13, lbl_8063E750-_SDA_BASE_
/* 8035A210 00355E70 4C C6 31 82 */ crclr 6
-/* 8035A214 00355E74 4B E7 28 E9 */ bl func_801CCAFC
+/* 8035A214 00355E74 4B E7 28 E9 */ bl sprintf
/* 8035A218 00355E78 2C 1C 00 00 */ cmpwi r28, 0
/* 8035A21C 00355E7C 93 E1 00 08 */ stw r31, 8(r1)
/* 8035A220 00355E80 40 82 00 08 */ bne lbl_8035A228
@@ -2311,7 +2311,7 @@ lbl_8035A2E4: /* 8035A2E8 00355F48 38 61 00 10 */ addi r3, r1, 0x10
/* 8035A2EC 00355F4C 38 8D 94 90 */ addi r4, r13, lbl_8063E750-_SDA_BASE_
/* 8035A2F0 00355F50 4C C6 31 82 */ crclr 6
-/* 8035A2F4 00355F54 4B E7 28 09 */ bl func_801CCAFC
+/* 8035A2F4 00355F54 4B E7 28 09 */ bl sprintf
/* 8035A2F8 00355F58 2C 1D 00 00 */ cmpwi r29, 0
/* 8035A2FC 00355F5C DB E1 00 08 */ stfd f31, 8(r1)
/* 8035A300 00355F60 40 82 00 08 */ bne lbl_8035A308
@@ -2377,7 +2377,7 @@ lbl_8035A3C4: /* 8035A3CC 0035602C 38 61 00 08 */ addi r3, r1, 8
/* 8035A3D0 00356030 38 8D 94 90 */ addi r4, r13, lbl_8063E750-_SDA_BASE_
/* 8035A3D4 00356034 4C C6 31 82 */ crclr 6
-/* 8035A3D8 00356038 4B E7 27 25 */ bl func_801CCAFC
+/* 8035A3D8 00356038 4B E7 27 25 */ bl sprintf
/* 8035A3DC 0035603C 2C 1C 00 00 */ cmpwi r28, 0
/* 8035A3E0 00356040 40 82 00 08 */ bne lbl_8035A3E8
/* 8035A3E4 00356044 83 8D B1 10 */ lwz r28, lbl_806403D0-_SDA_BASE_(r13)
diff --git a/asm/GameSpy/gt2Auth.s b/asm/GameSpy/gt2Auth.s index f8adaff..1fa1d3c 100644 --- a/asm/GameSpy/gt2Auth.s +++ b/asm/GameSpy/gt2Auth.s @@ -11,8 +11,8 @@ gti2GetChallenge: /* 80348544 003441A4 4B E7 EB E5 */ bl _savegpr_27
/* 80348548 003441A8 7C 7B 1B 78 */ mr r27, r3
/* 8034854C 003441AC 4B FF 0A 8D */ bl current_time
-/* 80348550 003441B0 4B E8 48 0D */ bl func_801CCD5C
-/* 80348554 003441B4 4B E8 47 E9 */ bl func_801CCD3C
+/* 80348550 003441B0 4B E8 48 0D */ bl srand
+/* 80348554 003441B4 4B E8 47 E9 */ bl rand
/* 80348558 003441B8 3C 80 2C 0B */ lis r4, 0x2C0B02C1@ha
/* 8034855C 003441BC 3B 80 00 00 */ li r28, 0
/* 80348560 003441C0 3B E4 02 C1 */ addi r31, r4, 0x2C0B02C1@l
@@ -40,7 +40,7 @@ lbl_80348588: /* 803485B4 00344214 7C 83 1A 78 */ xor r3, r4, r3
/* 803485B8 00344218 7C 60 02 78 */ xor r0, r3, r0
/* 803485BC 0034421C 7C 1C 2A 78 */ xor r28, r0, r5
-/* 803485C0 00344220 4B E8 47 7D */ bl func_801CCD3C
+/* 803485C0 00344220 4B E8 47 7D */ bl rand
/* 803485C4 00344224 7C 1F 18 96 */ mulhw r0, r31, r3
/* 803485C8 00344228 2C 1C 00 00 */ cmpwi r28, 0
/* 803485CC 0034422C 7C 00 26 70 */ srawi r0, r0, 4
@@ -142,7 +142,7 @@ lbl_8034870C: /* 8034871C 0034437C 2C 1B 00 0D */ cmpwi r27, 0xd
/* 80348720 00344380 40 82 00 30 */ bne lbl_80348750
lbl_80348724:
-/* 80348724 00344384 4B E8 46 19 */ bl func_801CCD3C
+/* 80348724 00344384 4B E8 46 19 */ bl rand
/* 80348728 00344388 38 17 02 C1 */ addi r0, r23, 0x2c1
/* 8034872C 0034438C 7C 00 18 96 */ mulhw r0, r0, r3
/* 80348730 00344390 7C 00 26 70 */ srawi r0, r0, 4
diff --git a/asm/GameSpy/gt2Message.s b/asm/GameSpy/gt2Message.s index 8d95694..ca271fa 100644 --- a/asm/GameSpy/gt2Message.s +++ b/asm/GameSpy/gt2Message.s @@ -1803,7 +1803,7 @@ lbl_8034B6AC: /* 8034B6AC 0034730C 7F C3 F3 78 */ mr r3, r30
/* 8034B6B0 00347310 38 8D 92 C4 */ addi r4, r13, lbl_8063E584-_SDA_BASE_
/* 8034B6B4 00347314 38 A0 00 04 */ li r5, 4
-/* 8034B6B8 00347318 4B E7 EC E1 */ bl func_801CA398
+/* 8034B6B8 00347318 4B E7 EC E1 */ bl memcmp
/* 8034B6BC 0034731C 2C 03 00 00 */ cmpwi r3, 0
/* 8034B6C0 00347320 41 82 00 0C */ beq lbl_8034B6CC
/* 8034B6C4 00347324 38 00 00 01 */ li r0, 1
@@ -1936,7 +1936,7 @@ lbl_8034B874: /* 8034B880 003474E0 7F E3 FB 78 */ mr r3, r31
/* 8034B884 003474E4 38 8D 92 C0 */ addi r4, r13, lbl_8063E580-_SDA_BASE_
/* 8034B888 003474E8 38 A0 00 02 */ li r5, 2
-/* 8034B88C 003474EC 4B E7 EB 0D */ bl func_801CA398
+/* 8034B88C 003474EC 4B E7 EB 0D */ bl memcmp
/* 8034B890 003474F0 2C 03 00 00 */ cmpwi r3, 0
/* 8034B894 003474F4 40 82 00 08 */ bne lbl_8034B89C
/* 8034B898 003474F8 3B 20 00 01 */ li r25, 1
@@ -2118,7 +2118,7 @@ lbl_8034BB08: /* 8034BB18 00347778 38 7F 00 02 */ addi r3, r31, 2
/* 8034BB1C 0034777C 38 8D 92 C0 */ addi r4, r13, lbl_8063E580-_SDA_BASE_
/* 8034BB20 00347780 38 A0 00 02 */ li r5, 2
-/* 8034BB24 00347784 4B E7 E8 75 */ bl func_801CA398
+/* 8034BB24 00347784 4B E7 E8 75 */ bl memcmp
/* 8034BB28 00347788 2C 03 00 00 */ cmpwi r3, 0
/* 8034BB2C 0034778C 40 82 00 28 */ bne lbl_8034BB54
/* 8034BB30 00347790 88 7B 00 01 */ lbz r3, 1(r27)
@@ -3181,7 +3181,7 @@ gti2SendAppUnreliable: /* 8034C9B8 00348618 80 03 00 44 */ lwz r0, 0x44(r3)
/* 8034C9BC 0034861C 7C 64 02 14 */ add r3, r4, r0
/* 8034C9C0 00348620 38 8D 92 C0 */ addi r4, r13, lbl_8063E580-_SDA_BASE_
-/* 8034C9C4 00348624 4B E7 D9 D5 */ bl func_801CA398
+/* 8034C9C4 00348624 4B E7 D9 D5 */ bl memcmp
/* 8034C9C8 00348628 2C 03 00 00 */ cmpwi r3, 0
/* 8034C9CC 0034862C 41 82 00 2C */ beq lbl_8034C9F8
lbl_8034C9D0:
diff --git a/asm/GameSpy/gt2Utility.s b/asm/GameSpy/gt2Utility.s index 6ac72d9..221911c 100644 --- a/asm/GameSpy/gt2Utility.s +++ b/asm/GameSpy/gt2Utility.s @@ -35,7 +35,7 @@ lbl_8034DB90: /* 8034DBB4 00349814 7F C6 F3 78 */ mr r6, r30
/* 8034DBB8 00349818 38 8D 92 D0 */ addi r4, r13, lbl_8063E590-_SDA_BASE_
/* 8034DBBC 0034981C 4C C6 31 82 */ crclr 6
-/* 8034DBC0 00349820 4B E7 EF 3D */ bl func_801CCAFC
+/* 8034DBC0 00349820 4B E7 EF 3D */ bl sprintf
/* 8034DBC4 00349824 48 00 00 50 */ b lbl_8034DC14
lbl_8034DBC8:
/* 8034DBC8 00349828 90 61 00 08 */ stw r3, 8(r1)
@@ -45,7 +45,7 @@ lbl_8034DBC8: /* 8034DBD8 00349838 7F E3 FB 78 */ mr r3, r31
/* 8034DBDC 0034983C 38 8D 92 D8 */ addi r4, r13, lbl_8063E598-_SDA_BASE_
/* 8034DBE0 00349840 4C C6 31 82 */ crclr 6
-/* 8034DBE4 00349844 4B E7 EF 19 */ bl func_801CCAFC
+/* 8034DBE4 00349844 4B E7 EF 19 */ bl sprintf
/* 8034DBE8 00349848 48 00 00 2C */ b lbl_8034DC14
lbl_8034DBEC:
/* 8034DBEC 0034984C 2C 04 00 00 */ cmpwi r4, 0
@@ -54,7 +54,7 @@ lbl_8034DBEC: /* 8034DBF8 00349858 7F C5 F3 78 */ mr r5, r30
/* 8034DBFC 0034985C 38 8D 92 DC */ addi r4, r13, lbl_8063E59C-_SDA_BASE_
/* 8034DC00 00349860 4C C6 31 82 */ crclr 6
-/* 8034DC04 00349864 4B E7 EE F9 */ bl func_801CCAFC
+/* 8034DC04 00349864 4B E7 EE F9 */ bl sprintf
/* 8034DC08 00349868 48 00 00 0C */ b lbl_8034DC14
lbl_8034DC0C:
/* 8034DC0C 0034986C 38 00 00 00 */ li r0, 0
@@ -90,7 +90,7 @@ lbl_8034DC68: /* 8034DC70 003498D0 48 00 01 30 */ b lbl_8034DDA0
lbl_8034DC74:
/* 8034DC74 003498D4 38 80 00 3A */ li r4, 0x3a
-/* 8034DC78 003498D8 4B E8 09 31 */ bl func_801CE5A8
+/* 8034DC78 003498D8 4B E8 09 31 */ bl strchr
/* 8034DC7C 003498DC 2C 03 00 00 */ cmpwi r3, 0
/* 8034DC80 003498E0 7C 7B 1B 78 */ mr r27, r3
/* 8034DC84 003498E4 40 82 00 0C */ bne lbl_8034DC90
diff --git a/asm/GameSpy/md5c.s b/asm/GameSpy/md5c.s index 8424c1b..ea906fe 100644 --- a/asm/GameSpy/md5c.s +++ b/asm/GameSpy/md5c.s @@ -981,7 +981,7 @@ lbl_80337B84: /* 80337B88 003337E8 7C 7F EA 14 */ add r3, r31, r29
/* 80337B8C 003337EC 38 8D 8F 20 */ addi r4, r13, lbl_8063E1E0-_SDA_BASE_
/* 80337B90 003337F0 4C C6 31 82 */ crclr 6
-/* 80337B94 003337F4 4B E9 4F 69 */ bl func_801CCAFC
+/* 80337B94 003337F4 4B E9 4F 69 */ bl sprintf
/* 80337B98 003337F8 3B 7B 00 01 */ addi r27, r27, 1
/* 80337B9C 003337FC 3B BD 00 02 */ addi r29, r29, 2
/* 80337BA0 00333800 28 1B 00 10 */ cmplwi r27, 0x10
diff --git a/asm/GameSpy/natneg.s b/asm/GameSpy/natneg.s index 929e91c..aa0dba1 100644 --- a/asm/GameSpy/natneg.s +++ b/asm/GameSpy/natneg.s @@ -246,7 +246,7 @@ SendInitPackets: /* 8035AF0C 00356B6C 98 01 00 59 */ stb r0, 0x59(r1)
/* 8035AF10 00356B70 9B 61 00 5B */ stb r27, 0x5b(r1)
/* 8035AF14 00356B74 9B 61 00 5C */ stb r27, 0x5c(r1)
-/* 8035AF18 00356B78 4B E7 33 B9 */ bl func_801CE2D0
+/* 8035AF18 00356B78 4B E7 33 B9 */ bl strcpy
/* 8035AF1C 00356B7C 38 7C 0A F8 */ addi r3, r28, 0xaf8
/* 8035AF20 00356B80 4B E6 BC 45 */ bl strlen
/* 8035AF24 00356B84 88 01 00 56 */ lbz r0, 0x56(r1)
@@ -495,7 +495,7 @@ lbl_8035B274: /* 8035B29C 00356EFC 38 AD 94 BC */ addi r5, r13, lbl_8063E77C-_SDA_BASE_
/* 8035B2A0 00356F00 38 C6 0A F8 */ addi r6, r6, lbl_80610AF8@l
/* 8035B2A4 00356F04 4C C6 31 82 */ crclr 6
-/* 8035B2A8 00356F08 4B E7 17 7D */ bl func_801CCA24
+/* 8035B2A8 00356F08 4B E7 17 7D */ bl snprintf
/* 8035B2AC 00356F0C 3B 01 00 08 */ addi r24, r1, 8
lbl_8035B2B0:
/* 8035B2B0 00356F10 7F 03 C3 78 */ mr r3, r24
@@ -529,7 +529,7 @@ lbl_8035B2EC: /* 8035B314 00356F74 38 AD 94 BC */ addi r5, r13, lbl_8063E77C-_SDA_BASE_
/* 8035B318 00356F78 38 C6 0A F8 */ addi r6, r6, lbl_80610AF8@l
/* 8035B31C 00356F7C 4C C6 31 82 */ crclr 6
-/* 8035B320 00356F80 4B E7 17 05 */ bl func_801CCA24
+/* 8035B320 00356F80 4B E7 17 05 */ bl snprintf
/* 8035B324 00356F84 3B 01 00 48 */ addi r24, r1, 0x48
lbl_8035B328:
/* 8035B328 00356F88 7F 03 C3 78 */ mr r3, r24
@@ -563,7 +563,7 @@ lbl_8035B364: /* 8035B38C 00356FEC 38 AD 94 BC */ addi r5, r13, lbl_8063E77C-_SDA_BASE_
/* 8035B390 00356FF0 38 C6 0A F8 */ addi r6, r6, lbl_80610AF8@l
/* 8035B394 00356FF4 4C C6 31 82 */ crclr 6
-/* 8035B398 00356FF8 4B E7 16 8D */ bl func_801CCA24
+/* 8035B398 00356FF8 4B E7 16 8D */ bl snprintf
/* 8035B39C 00356FFC 3B 01 00 88 */ addi r24, r1, 0x88
lbl_8035B3A0:
/* 8035B3A0 00357000 7F 03 C3 78 */ mr r3, r24
@@ -1682,7 +1682,7 @@ NNProcessData: /* 8035C360 00357FC0 93 81 00 60 */ stw r28, 0x60(r1)
/* 8035C364 00357FC4 7C BC 2B 78 */ mr r28, r5
/* 8035C368 00357FC8 38 A0 00 06 */ li r5, 6
-/* 8035C36C 00357FCC 4B E6 E0 2D */ bl func_801CA398
+/* 8035C36C 00357FCC 4B E6 E0 2D */ bl memcmp
/* 8035C370 00357FD0 7C 60 00 34 */ cntlzw r0, r3
/* 8035C374 00357FD4 54 00 D9 7F */ rlwinm. r0, r0, 0x1b, 5, 0x1f
/* 8035C378 00357FD8 41 82 01 5C */ beq lbl_8035C4D4
diff --git a/asm/GameSpy/nonport.s b/asm/GameSpy/nonport.s index c76e184..213a077 100644 --- a/asm/GameSpy/nonport.s +++ b/asm/GameSpy/nonport.s @@ -421,7 +421,7 @@ gethostbyname: /* 803380F8 00333D58 7C 65 1B 78 */ mr r5, r3
/* 803380FC 00333D5C 7F 64 DB 78 */ mr r4, r27
/* 80338100 00333D60 38 6D 8F 28 */ addi r3, r13, lbl_8063E1E8-_SDA_BASE_
-/* 80338104 00333D64 4B E9 64 65 */ bl func_801CE568
+/* 80338104 00333D64 4B E9 64 65 */ bl strncmp
/* 80338108 00333D68 2C 03 00 00 */ cmpwi r3, 0
/* 8033810C 00333D6C 40 82 01 28 */ bne lbl_80338234
/* 80338110 00333D70 80 0D B0 98 */ lwz r0, lbl_80640358-_SDA_BASE_(r13)
@@ -629,7 +629,7 @@ lbl_803383C4: /* 803383F4 00334054 41 82 00 20 */ beq lbl_80338414
/* 803383F8 00334058 80 77 00 10 */ lwz r3, 0x10(r23)
/* 803383FC 0033405C 7F 64 DB 78 */ mr r4, r27
-/* 80338400 00334060 4B E9 60 4D */ bl func_801CE44C
+/* 80338400 00334060 4B E9 60 4D */ bl strcmp
/* 80338404 00334064 2C 03 00 00 */ cmpwi r3, 0
/* 80338408 00334068 40 82 00 0C */ bne lbl_80338414
/* 8033840C 0033406C 7E E3 BB 78 */ mr r3, r23
@@ -781,7 +781,7 @@ lbl_803385D8: /* 80338628 00334288 90 65 00 10 */ stw r3, 0x10(r5)
/* 8033862C 0033428C 7C 66 F0 2E */ lwzx r3, r6, r30
/* 80338630 00334290 80 63 00 10 */ lwz r3, 0x10(r3)
-/* 80338634 00334294 4B E9 5C 9D */ bl func_801CE2D0
+/* 80338634 00334294 4B E9 5C 9D */ bl strcpy
/* 80338638 00334298 7F A3 EB 78 */ mr r3, r29
lbl_8033863C:
/* 8033863C 0033429C 39 61 00 30 */ addi r11, r1, 0x30
@@ -1261,7 +1261,7 @@ lbl_80338C70: /* 80338C8C 003348EC 7C 7F 1B 78 */ mr r31, r3
/* 80338C90 003348F0 41 82 00 0C */ beq lbl_80338C9C
/* 80338C94 003348F4 7F 84 E3 78 */ mr r4, r28
-/* 80338C98 003348F8 4B E9 56 39 */ bl func_801CE2D0
+/* 80338C98 003348F8 4B E9 56 39 */ bl strcpy
lbl_80338C9C:
/* 80338C9C 003348FC 2C 1F 00 00 */ cmpwi r31, 0
/* 80338CA0 00334900 93 FE 00 00 */ stw r31, 0(r30)
@@ -1463,7 +1463,7 @@ lbl_80338F2C: /* 80338F48 00334BA8 7C 7F 1B 78 */ mr r31, r3
/* 80338F4C 00334BAC 41 82 00 0C */ beq lbl_80338F58
/* 80338F50 00334BB0 7F C4 F3 78 */ mr r4, r30
-/* 80338F54 00334BB4 4B E9 53 7D */ bl func_801CE2D0
+/* 80338F54 00334BB4 4B E9 53 7D */ bl strcpy
lbl_80338F58:
/* 80338F58 00334BB8 7F E3 FB 78 */ mr r3, r31
lbl_80338F5C:
diff --git a/asm/GameSpy/qr2.s b/asm/GameSpy/qr2.s index cc75867..a9ed610 100644 --- a/asm/GameSpy/qr2.s +++ b/asm/GameSpy/qr2.s @@ -35,13 +35,13 @@ lbl_8034DE98: /* 8034DEA4 00349B04 90 71 00 00 */ stw r3, 0(r17)
lbl_8034DEA8:
/* 8034DEA8 00349B08 4B FE B1 31 */ bl current_time
-/* 8034DEAC 00349B0C 4B E7 EE B1 */ bl func_801CCD5C
+/* 8034DEAC 00349B0C 4B E7 EE B1 */ bl srand
/* 8034DEB0 00349B10 7F A4 EB 78 */ mr r4, r29
/* 8034DEB4 00349B14 38 7F 00 04 */ addi r3, r31, 4
-/* 8034DEB8 00349B18 4B E8 04 19 */ bl func_801CE2D0
+/* 8034DEB8 00349B18 4B E8 04 19 */ bl strcpy
/* 8034DEBC 00349B1C 7F 44 D3 78 */ mr r4, r26
/* 8034DEC0 00349B20 38 7F 00 44 */ addi r3, r31, 0x44
-/* 8034DEC4 00349B24 4B E8 04 0D */ bl func_801CE2D0
+/* 8034DEC4 00349B24 4B E8 04 0D */ bl strcpy
/* 8034DEC8 00349B28 93 7F 00 C0 */ stw r27, 0xc0(r31)
/* 8034DECC 00349B2C 38 80 00 00 */ li r4, 0
/* 8034DED0 00349B30 3C 60 80 81 */ lis r3, 0x80808081@ha
@@ -71,7 +71,7 @@ lbl_8034DEA8: /* 8034DF30 00349B90 90 9F 00 B4 */ stw r4, 0xb4(r31)
/* 8034DF34 00349B94 98 9F 01 10 */ stb r4, 0x110(r31)
lbl_8034DF38:
-/* 8034DF38 00349B98 4B E7 EE 05 */ bl func_801CCD3C
+/* 8034DF38 00349B98 4B E7 EE 05 */ bl rand
/* 8034DF3C 00349B9C 7C 1A 18 96 */ mulhw r0, r26, r3
/* 8034DF40 00349BA0 7C 9F DA 14 */ add r4, r31, r27
/* 8034DF44 00349BA4 3B 7B 00 01 */ addi r27, r27, 1
@@ -137,7 +137,7 @@ lbl_8034E008: /* 8034E028 00349C88 38 61 00 10 */ addi r3, r1, 0x10
/* 8034E02C 00349C8C 38 84 B9 9C */ addi r4, r4, lbl_8044B99C@l
/* 8034E030 00349C90 4C C6 31 82 */ crclr 6
-/* 8034E034 00349C94 4B E7 EA C9 */ bl func_801CCAFC
+/* 8034E034 00349C94 4B E7 EA C9 */ bl sprintf
lbl_8034E038:
/* 8034E038 00349C98 2C 1A 00 00 */ cmpwi r26, 0
/* 8034E03C 00349C9C 38 61 00 10 */ addi r3, r1, 0x10
@@ -672,7 +672,7 @@ qr2_buffer_add_int: /* 8034E730 0034A390 7C 7E 1B 78 */ mr r30, r3
/* 8034E734 0034A394 38 61 00 08 */ addi r3, r1, 8
/* 8034E738 0034A398 4C C6 31 82 */ crclr 6
-/* 8034E73C 0034A39C 4B E7 E3 C1 */ bl func_801CCAFC
+/* 8034E73C 0034A39C 4B E7 E3 C1 */ bl sprintf
/* 8034E740 0034A3A0 38 61 00 08 */ addi r3, r1, 8
/* 8034E744 0034A3A4 4B E7 84 21 */ bl strlen
/* 8034E748 0034A3A8 80 1E 05 78 */ lwz r0, 0x578(r30)
@@ -785,7 +785,7 @@ lbl_8034E8AC: /* 8034E8BC 0034A51C 3C 80 80 45 */ lis r4, lbl_8044B9F8@ha
/* 8034E8C0 0034A520 7F 83 E3 78 */ mr r3, r28
/* 8034E8C4 0034A524 38 84 B9 F8 */ addi r4, r4, lbl_8044B9F8@l
-/* 8034E8C8 0034A528 4B E7 FB 85 */ bl func_801CE44C
+/* 8034E8C8 0034A528 4B E7 FB 85 */ bl strcmp
/* 8034E8CC 0034A52C 2C 03 00 00 */ cmpwi r3, 0
/* 8034E8D0 0034A530 41 82 00 30 */ beq lbl_8034E900
/* 8034E8D4 0034A534 7F 83 E3 78 */ mr r3, r28
@@ -1949,7 +1949,7 @@ lbl_8034F8B4: /* 8034F920 0034B580 38 8D 92 EC */ addi r4, r13, lbl_8063E5AC-_SDA_BASE_
/* 8034F924 0034B584 38 A0 00 00 */ li r5, 0
/* 8034F928 0034B588 4C C6 31 82 */ crclr 6
-/* 8034F92C 0034B58C 4B E7 D1 D1 */ bl func_801CCAFC
+/* 8034F92C 0034B58C 4B E7 D1 D1 */ bl sprintf
/* 8034F930 0034B590 38 61 00 1C */ addi r3, r1, 0x1c
/* 8034F934 0034B594 4B E7 72 31 */ bl strlen
/* 8034F938 0034B598 80 01 06 00 */ lwz r0, 0x600(r1)
@@ -1990,9 +1990,9 @@ lbl_8034F99C: /* 8034F9B4 0034B614 7F DB D2 14 */ add r30, r27, r26
/* 8034F9B8 0034B618 90 7E 01 14 */ stw r3, 0x114(r30)
/* 8034F9BC 0034B61C 90 1E 01 18 */ stw r0, 0x118(r30)
-/* 8034F9C0 0034B620 4B E7 D3 7D */ bl func_801CCD3C
+/* 8034F9C0 0034B620 4B E7 D3 7D */ bl rand
/* 8034F9C4 0034B624 7C 7C 1B 78 */ mr r28, r3
-/* 8034F9C8 0034B628 4B E7 D3 75 */ bl func_801CCD3C
+/* 8034F9C8 0034B628 4B E7 D3 75 */ bl rand
/* 8034F9CC 0034B62C 54 60 80 1E */ slwi r0, r3, 0x10
/* 8034F9D0 0034B630 7C 03 E3 78 */ or r3, r0, r28
/* 8034F9D4 0034B634 4B FA 73 A5 */ bl func_802F6D78
@@ -2002,7 +2002,7 @@ lbl_8034F99C: /* 8034F9E4 0034B644 93 FE 01 20 */ stw r31, 0x120(r30)
/* 8034F9E8 0034B648 80 BE 01 1C */ lwz r5, 0x11c(r30)
/* 8034F9EC 0034B64C 4C C6 31 82 */ crclr 6
-/* 8034F9F0 0034B650 4B E7 D1 0D */ bl func_801CCAFC
+/* 8034F9F0 0034B650 4B E7 D1 0D */ bl sprintf
/* 8034F9F4 0034B654 38 61 00 30 */ addi r3, r1, 0x30
/* 8034F9F8 0034B658 4B E7 71 6D */ bl strlen
/* 8034F9FC 0034B65C 80 01 06 00 */ lwz r0, 0x600(r1)
@@ -2134,7 +2134,7 @@ lbl_8034FB1C: /* 8034FBD0 0034B830 38 7A FF F1 */ addi r3, r26, -15
/* 8034FBD4 0034B834 38 8D 92 FC */ addi r4, r13, lbl_8063E5BC-_SDA_BASE_
/* 8034FBD8 0034B838 4C C6 31 82 */ crclr 6
-/* 8034FBDC 0034B83C 4B E7 E6 2D */ bl func_801CE208
+/* 8034FBDC 0034B83C 4B E7 E6 2D */ bl sscanf
/* 8034FBE0 0034B840 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8034FBE4 0034B844 98 1B 01 10 */ stb r0, 0x110(r27)
/* 8034FBE8 0034B848 80 1B 00 A8 */ lwz r0, 0xa8(r27)
@@ -2146,7 +2146,7 @@ lbl_8034FB1C: /* 8034FC00 0034B860 38 A1 00 08 */ addi r5, r1, 8
/* 8034FC04 0034B864 38 C1 00 0C */ addi r6, r1, 0xc
/* 8034FC08 0034B868 4C C6 31 82 */ crclr 6
-/* 8034FC0C 0034B86C 4B E7 E5 FD */ bl func_801CE208
+/* 8034FC0C 0034B86C 4B E7 E5 FD */ bl sscanf
/* 8034FC10 0034B870 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8034FC14 0034B874 80 61 00 08 */ lwz r3, 8(r1)
/* 8034FC18 0034B878 54 1F 04 3E */ clrlwi r31, r0, 0x10
@@ -2182,7 +2182,7 @@ lbl_8034FC6C: /* 8034FC88 0034B8E8 40 82 03 5C */ bne lbl_8034FFE4
/* 8034FC8C 0034B8EC 7F C4 F3 78 */ mr r4, r30
/* 8034FC90 0034B8F0 38 61 00 44 */ addi r3, r1, 0x44
-/* 8034FC94 0034B8F4 4B E7 E6 3D */ bl func_801CE2D0
+/* 8034FC94 0034B8F4 4B E7 E6 3D */ bl strcpy
/* 8034FC98 0034B8F8 38 7B 00 44 */ addi r3, r27, 0x44
/* 8034FC9C 0034B8FC 4B E7 6E C9 */ bl strlen
/* 8034FCA0 0034B900 7C 64 1B 78 */ mr r4, r3
@@ -2485,7 +2485,7 @@ lbl_803500EC: /* 803500F0 0034BD50 38 61 00 5C */ addi r3, r1, 0x5c
/* 803500F4 0034BD54 38 9F 04 40 */ addi r4, r31, 0x440
/* 803500F8 0034BD58 4C C6 31 82 */ crclr 6
-/* 803500FC 0034BD5C 4B E7 CA 01 */ bl func_801CCAFC
+/* 803500FC 0034BD5C 4B E7 CA 01 */ bl sprintf
/* 80350100 0034BD60 38 61 00 5C */ addi r3, r1, 0x5c
/* 80350104 0034BD64 4B E7 6A 61 */ bl strlen
/* 80350108 0034BD68 80 01 0B 64 */ lwz r0, 0xb64(r1)
@@ -2569,7 +2569,7 @@ lbl_80350220: /* 80350224 0034BE84 38 61 00 48 */ addi r3, r1, 0x48
/* 80350228 0034BE88 38 8D 92 EC */ addi r4, r13, lbl_8063E5AC-_SDA_BASE_
/* 8035022C 0034BE8C 4C C6 31 82 */ crclr 6
-/* 80350230 0034BE90 4B E7 C8 CD */ bl func_801CCAFC
+/* 80350230 0034BE90 4B E7 C8 CD */ bl sprintf
/* 80350234 0034BE94 38 61 00 48 */ addi r3, r1, 0x48
/* 80350238 0034BE98 4B E7 69 2D */ bl strlen
/* 8035023C 0034BE9C 80 01 0B 64 */ lwz r0, 0xb64(r1)
@@ -2680,7 +2680,7 @@ lbl_803503B8: /* 803503BC 0034C01C 38 61 00 34 */ addi r3, r1, 0x34
/* 803503C0 0034C020 38 8D 92 EC */ addi r4, r13, lbl_8063E5AC-_SDA_BASE_
/* 803503C4 0034C024 4C C6 31 82 */ crclr 6
-/* 803503C8 0034C028 4B E7 C7 35 */ bl func_801CCAFC
+/* 803503C8 0034C028 4B E7 C7 35 */ bl sprintf
/* 803503CC 0034C02C 38 61 00 34 */ addi r3, r1, 0x34
/* 803503D0 0034C030 4B E7 67 95 */ bl strlen
/* 803503D4 0034C034 80 01 0B 64 */ lwz r0, 0xb64(r1)
@@ -2786,7 +2786,7 @@ lbl_80350540: /* 80350544 0034C1A4 38 61 00 20 */ addi r3, r1, 0x20
/* 80350548 0034C1A8 38 8D 92 EC */ addi r4, r13, lbl_8063E5AC-_SDA_BASE_
/* 8035054C 0034C1AC 4C C6 31 82 */ crclr 6
-/* 80350550 0034C1B0 4B E7 C5 AD */ bl func_801CCAFC
+/* 80350550 0034C1B0 4B E7 C5 AD */ bl sprintf
/* 80350554 0034C1B4 38 61 00 20 */ addi r3, r1, 0x20
/* 80350558 0034C1B8 4B E7 66 0D */ bl strlen
/* 8035055C 0034C1BC 80 01 0B 64 */ lwz r0, 0xb64(r1)
@@ -2840,7 +2840,7 @@ lbl_80350608: /* 8035060C 0034C26C 38 61 00 0C */ addi r3, r1, 0xc
/* 80350610 0034C270 38 8D 92 EC */ addi r4, r13, lbl_8063E5AC-_SDA_BASE_
/* 80350614 0034C274 4C C6 31 82 */ crclr 6
-/* 80350618 0034C278 4B E7 C4 E5 */ bl func_801CCAFC
+/* 80350618 0034C278 4B E7 C4 E5 */ bl sprintf
/* 8035061C 0034C27C 38 61 00 0C */ addi r3, r1, 0xc
/* 80350620 0034C280 4B E7 65 45 */ bl strlen
/* 80350624 0034C284 80 01 0B 64 */ lwz r0, 0xb64(r1)
diff --git a/asm/GameSpy/sb_queryengine.s b/asm/GameSpy/sb_queryengine.s index bc0b293..7bf2a2e 100644 --- a/asm/GameSpy/sb_queryengine.s +++ b/asm/GameSpy/sb_queryengine.s @@ -460,7 +460,7 @@ lbl_8035CF40: /* 8035CF50 00358BB0 7F 24 CB 78 */ mr r4, r25
/* 8035CF54 00358BB4 38 63 C5 D4 */ addi r3, r3, lbl_8044C5D4@l
/* 8035CF58 00358BB8 38 A0 00 08 */ li r5, 8
-/* 8035CF5C 00358BBC 4B E7 16 0D */ bl func_801CE568
+/* 8035CF5C 00358BBC 4B E7 16 0D */ bl strncmp
/* 8035CF60 00358BC0 2C 03 00 00 */ cmpwi r3, 0
/* 8035CF64 00358BC4 40 82 00 30 */ bne lbl_8035CF94
/* 8035CF68 00358BC8 7F E3 FB 78 */ mr r3, r31
@@ -588,7 +588,7 @@ lbl_8035D0F8: lbl_8035D120:
/* 8035D120 00358D80 38 61 00 18 */ addi r3, r1, 0x18
/* 8035D124 00358D84 38 8D 94 C8 */ addi r4, r13, lbl_8063E788-_SDA_BASE_
-/* 8035D128 00358D88 4B E7 16 79 */ bl func_801CE7A0
+/* 8035D128 00358D88 4B E7 16 79 */ bl strstr
/* 8035D12C 00358D8C 7C 03 00 D0 */ neg r0, r3
/* 8035D130 00358D90 38 81 00 18 */ addi r4, r1, 0x18
/* 8035D134 00358D94 7C 00 1B 78 */ or r0, r0, r3
diff --git a/asm/GameSpy/sb_server.s b/asm/GameSpy/sb_server.s index 9bfe225..5d539f9 100644 --- a/asm/GameSpy/sb_server.s +++ b/asm/GameSpy/sb_server.s @@ -155,7 +155,7 @@ SBServerAddIntKeyValue: /* 8035D5B0 00359210 7C 7E 1B 78 */ mr r30, r3
/* 8035D5B4 00359214 38 61 00 10 */ addi r3, r1, 0x10
/* 8035D5B8 00359218 4C C6 31 82 */ crclr 6
-/* 8035D5BC 0035921C 4B E6 F5 41 */ bl func_801CCAFC
+/* 8035D5BC 0035921C 4B E6 F5 41 */ bl sprintf
/* 8035D5C0 00359220 7F E4 FB 78 */ mr r4, r31
/* 8035D5C4 00359224 38 60 00 00 */ li r3, 0
/* 8035D5C8 00359228 48 00 1B 65 */ bl SBRefStr
@@ -221,7 +221,7 @@ SBServerGetIntValueA: lbl_8035D694:
/* 8035D694 003592F4 7F C3 F3 78 */ mr r3, r30
/* 8035D698 003592F8 38 8D 94 D4 */ addi r4, r13, lbl_8063E794-_SDA_BASE_
-/* 8035D69C 003592FC 4B E7 0D B1 */ bl func_801CE44C
+/* 8035D69C 003592FC 4B E7 0D B1 */ bl strcmp
/* 8035D6A0 00359300 2C 03 00 00 */ cmpwi r3, 0
/* 8035D6A4 00359304 40 82 00 0C */ bne lbl_8035D6B0
/* 8035D6A8 00359308 80 7D 00 1C */ lwz r3, 0x1c(r29)
@@ -476,7 +476,7 @@ lbl_8035D968: lbl_8035D980:
/* 8035D980 003595E0 80 9B 00 00 */ lwz r4, 0(r27)
/* 8035D984 003595E4 7F E3 FB 78 */ mr r3, r31
-/* 8035D988 003595E8 4B E7 0A C5 */ bl func_801CE44C
+/* 8035D988 003595E8 4B E7 0A C5 */ bl strcmp
/* 8035D98C 003595EC 2C 03 00 00 */ cmpwi r3, 0
/* 8035D990 003595F0 40 82 00 0C */ bne lbl_8035D99C
/* 8035D994 003595F4 38 00 00 00 */ li r0, 0
@@ -631,7 +631,7 @@ lbl_8035DB80: /* 8035DBA0 00359800 38 61 00 20 */ addi r3, r1, 0x20
/* 8035DBA4 00359804 38 8D 94 F4 */ addi r4, r13, lbl_8063E7B4-_SDA_BASE_
/* 8035DBA8 00359808 4C C6 31 82 */ crclr 6
-/* 8035DBAC 0035980C 4B E6 EF 51 */ bl func_801CCAFC
+/* 8035DBAC 0035980C 4B E6 EF 51 */ bl sprintf
/* 8035DBB0 00359810 38 81 00 20 */ addi r4, r1, 0x20
/* 8035DBB4 00359814 38 60 00 00 */ li r3, 0
/* 8035DBB8 00359818 48 00 15 75 */ bl SBRefStr
@@ -796,7 +796,7 @@ lbl_8035DDD8: /* 8035DE00 00359A60 38 61 00 18 */ addi r3, r1, 0x18
/* 8035DE04 00359A64 38 8D 94 F4 */ addi r4, r13, lbl_8063E7B4-_SDA_BASE_
/* 8035DE08 00359A68 4C C6 31 82 */ crclr 6
-/* 8035DE0C 00359A6C 4B E6 EC F1 */ bl func_801CCAFC
+/* 8035DE0C 00359A6C 4B E6 EC F1 */ bl sprintf
/* 8035DE10 00359A70 38 81 00 18 */ addi r4, r1, 0x18
/* 8035DE14 00359A74 38 60 00 00 */ li r3, 0
/* 8035DE18 00359A78 48 00 13 15 */ bl SBRefStr
diff --git a/asm/GameSpy/sb_serverbrowsing.s b/asm/GameSpy/sb_serverbrowsing.s index a0c15da..2569ed4 100644 --- a/asm/GameSpy/sb_serverbrowsing.s +++ b/asm/GameSpy/sb_serverbrowsing.s @@ -358,7 +358,7 @@ lbl_8035E544: /* 8035E570 0035A1D0 7C 63 B2 14 */ add r3, r3, r22
/* 8035E574 0035A1D4 38 8D 95 00 */ addi r4, r13, lbl_8063E7C0-_SDA_BASE_
/* 8035E578 0035A1D8 4C C6 31 82 */ crclr 6
-/* 8035E57C 0035A1DC 4B E6 E5 81 */ bl func_801CCAFC
+/* 8035E57C 0035A1DC 4B E6 E5 81 */ bl sprintf
/* 8035E580 0035A1E0 88 99 00 00 */ lbz r4, 0(r25)
/* 8035E584 0035A1E4 7E D6 1A 14 */ add r22, r22, r3
/* 8035E588 0035A1E8 7F 43 D3 78 */ mr r3, r26
@@ -623,7 +623,7 @@ ServerBrowserSortA: /* 8035E8DC 0035A53C 7C 7E 1B 78 */ mr r30, r3
/* 8035E8E0 0035A540 38 61 01 0C */ addi r3, r1, 0x10c
/* 8035E8E4 0035A544 90 C1 02 0C */ stw r6, 0x20c(r1)
-/* 8035E8E8 0035A548 4B E6 F9 E9 */ bl func_801CE2D0
+/* 8035E8E8 0035A548 4B E6 F9 E9 */ bl strcpy
/* 8035E8EC 0035A54C 38 00 00 20 */ li r0, 0x20
/* 8035E8F0 0035A550 38 C1 00 04 */ addi r6, r1, 4
/* 8035E8F4 0035A554 38 81 01 08 */ addi r4, r1, 0x108
diff --git a/asm/GameSpy/sb_serverlist.s b/asm/GameSpy/sb_serverlist.s index f28e324..b978bfc 100644 --- a/asm/GameSpy/sb_serverlist.s +++ b/asm/GameSpy/sb_serverlist.s @@ -79,7 +79,7 @@ lbl_8035EA34: /* 8035EA50 0035A6B0 38 AD 95 08 */ addi r5, r13, lbl_8063E7C8-_SDA_BASE_
/* 8035EA54 0035A6B4 4B FF EB B1 */ bl SBServerGetStringValueA
/* 8035EA58 0035A6B8 7F E4 FB 78 */ mr r4, r31
-/* 8035EA5C 0035A6BC 4B E6 F9 F1 */ bl func_801CE44C
+/* 8035EA5C 0035A6BC 4B E6 F9 F1 */ bl strcmp
/* 8035EA60 0035A6C0 48 00 00 3C */ b lbl_8035EA9C
lbl_8035EA64:
/* 8035EA64 0035A6C4 7F A3 EB 78 */ mr r3, r29
@@ -243,7 +243,7 @@ StrCaseKeyCompare: /* 8035EC94 0035A8F4 38 AD 95 08 */ addi r5, r13, lbl_8063E7C8-_SDA_BASE_
/* 8035EC98 0035A8F8 4B FF E9 6D */ bl SBServerGetStringValueA
/* 8035EC9C 0035A8FC 7F E4 FB 78 */ mr r4, r31
-/* 8035ECA0 0035A900 4B E6 F7 AD */ bl func_801CE44C
+/* 8035ECA0 0035A900 4B E6 F7 AD */ bl strcmp
/* 8035ECA4 0035A904 2C 03 00 00 */ cmpwi r3, 0
/* 8035ECA8 0035A908 40 82 00 14 */ bne lbl_8035ECBC
/* 8035ECAC 0035A90C 7F C3 F3 78 */ mr r3, r30
@@ -376,7 +376,7 @@ lbl_8035EE40: lbl_8035EE60:
/* 8035EE60 0035AAC0 7F C3 F3 78 */ mr r3, r30
/* 8035EE64 0035AAC4 38 9C 04 98 */ addi r4, r28, 0x498
-/* 8035EE68 0035AAC8 4B E6 F5 E5 */ bl func_801CE44C
+/* 8035EE68 0035AAC8 4B E6 F5 E5 */ bl strcmp
/* 8035EE6C 0035AACC 2C 03 00 00 */ cmpwi r3, 0
/* 8035EE70 0035AAD0 41 82 00 30 */ beq lbl_8035EEA0
/* 8035EE74 0035AAD4 38 00 00 20 */ li r0, 0x20
@@ -705,13 +705,13 @@ lbl_8035F290: /* 8035F2B8 0035AF18 4B FF E1 A5 */ bl SBRefStrHash
/* 8035F2BC 0035AF1C 7F 24 CB 78 */ mr r4, r25
/* 8035F2C0 0035AF20 38 78 00 0C */ addi r3, r24, 0xc
-/* 8035F2C4 0035AF24 4B E6 F0 0D */ bl func_801CE2D0
+/* 8035F2C4 0035AF24 4B E6 F0 0D */ bl strcpy
/* 8035F2C8 0035AF28 7F 44 D3 78 */ mr r4, r26
/* 8035F2CC 0035AF2C 38 78 00 30 */ addi r3, r24, 0x30
-/* 8035F2D0 0035AF30 4B E6 F0 01 */ bl func_801CE2D0
+/* 8035F2D0 0035AF30 4B E6 F0 01 */ bl strcpy
/* 8035F2D4 0035AF34 7F 64 DB 78 */ mr r4, r27
/* 8035F2D8 0035AF38 38 78 00 54 */ addi r3, r24, 0x54
-/* 8035F2DC 0035AF3C 4B E6 EF F5 */ bl func_801CE2D0
+/* 8035F2DC 0035AF3C 4B E6 EF F5 */ bl strcpy
/* 8035F2E0 0035AF40 38 00 FF FF */ li r0, -1
/* 8035F2E4 0035AF44 93 B8 04 88 */ stw r29, 0x488(r24)
/* 8035F2E8 0035AF48 38 78 04 98 */ addi r3, r24, 0x498
@@ -727,17 +727,17 @@ lbl_8035F290: /* 8035F310 0035AF70 93 F8 04 80 */ stw r31, 0x480(r24)
/* 8035F314 0035AF74 93 F8 06 A8 */ stw r31, 0x6a8(r24)
/* 8035F318 0035AF78 93 98 06 BC */ stw r28, 0x6bc(r24)
-/* 8035F31C 0035AF7C 4B E6 EF B5 */ bl func_801CE2D0
+/* 8035F31C 0035AF7C 4B E6 EF B5 */ bl strcpy
/* 8035F320 0035AF80 38 78 05 9C */ addi r3, r24, 0x59c
/* 8035F324 0035AF84 38 8D 95 08 */ addi r4, r13, lbl_8063E7C8-_SDA_BASE_
-/* 8035F328 0035AF88 4B E6 EF A9 */ bl func_801CE2D0
+/* 8035F328 0035AF88 4B E6 EF A9 */ bl strcpy
/* 8035F32C 0035AF8C 38 6D 95 08 */ addi r3, r13, lbl_8063E7C8-_SDA_BASE_
/* 8035F330 0035AF90 38 00 00 80 */ li r0, 0x80
/* 8035F334 0035AF94 90 78 06 B0 */ stw r3, 0x6b0(r24)
/* 8035F338 0035AF98 93 F8 07 D4 */ stw r31, 0x7d4(r24)
/* 8035F33C 0035AF9C B0 18 07 D0 */ sth r0, 0x7d0(r24)
/* 8035F340 0035AFA0 4B FD 9C 99 */ bl current_time
-/* 8035F344 0035AFA4 4B E6 DA 19 */ bl func_801CCD5C
+/* 8035F344 0035AFA4 4B E6 DA 19 */ bl srand
/* 8035F348 0035AFA8 4B FD 9C 89 */ bl SocketStartUp
lbl_8035F34C:
/* 8035F34C 0035AFAC 39 61 00 30 */ addi r11, r1, 0x30
@@ -795,7 +795,7 @@ lbl_8035F3D0: /* 8035F3F8 0035B058 7C C0 40 50 */ subf r6, r0, r8
/* 8035F3FC 0035B05C 41 82 00 10 */ beq lbl_8035F40C
/* 8035F400 0035B060 38 61 00 10 */ addi r3, r1, 0x10
-/* 8035F404 0035B064 4B E6 EE CD */ bl func_801CE2D0
+/* 8035F404 0035B064 4B E6 EE CD */ bl strcpy
/* 8035F408 0035B068 48 00 00 1C */ b lbl_8035F424
lbl_8035F40C:
/* 8035F40C 0035B06C 3C 80 80 45 */ lis r4, lbl_8044C620@ha
@@ -803,7 +803,7 @@ lbl_8035F40C: /* 8035F414 0035B074 38 BF 00 0C */ addi r5, r31, 0xc
/* 8035F418 0035B078 38 84 C6 20 */ addi r4, r4, lbl_8044C620@l
/* 8035F41C 0035B07C 4C C6 31 82 */ crclr 6
-/* 8035F420 0035B080 4B E6 D6 DD */ bl func_801CCAFC
+/* 8035F420 0035B080 4B E6 D6 DD */ bl sprintf
lbl_8035F424:
/* 8035F424 0035B084 38 00 00 02 */ li r0, 2
/* 8035F428 0035B088 38 60 70 EE */ li r3, 0x70ee
@@ -991,7 +991,7 @@ lbl_8035F654: /* 8035F6B8 0035B318 7C 65 1B 78 */ mr r5, r3
/* 8035F6BC 0035B31C 7E C3 B3 78 */ mr r3, r22
/* 8035F6C0 0035B320 7F 04 C3 78 */ mr r4, r24
-/* 8035F6C4 0035B324 4B E6 EE A5 */ bl func_801CE568
+/* 8035F6C4 0035B324 4B E6 EE A5 */ bl strncmp
/* 8035F6C8 0035B328 2C 03 00 00 */ cmpwi r3, 0
/* 8035F6CC 0035B32C 40 82 00 30 */ bne lbl_8035F6FC
/* 8035F6D0 0035B330 7E E3 BB 78 */ mr r3, r23
@@ -1157,7 +1157,7 @@ lbl_8035F8F0: /* 8035F900 0035B560 48 00 04 68 */ b lbl_8035FD68
lbl_8035F904:
/* 8035F904 0035B564 93 57 07 C8 */ stw r26, 0x7c8(r23)
-/* 8035F908 0035B568 4B E6 D4 35 */ bl func_801CCD3C
+/* 8035F908 0035B568 4B E6 D4 35 */ bl rand
/* 8035F90C 0035B56C 3C 80 2C 0B */ lis r4, 0x2C0B02C1@ha
/* 8035F910 0035B570 3B C0 00 00 */ li r30, 0
/* 8035F914 0035B574 3B E4 02 C1 */ addi r31, r4, 0x2C0B02C1@l
@@ -1193,7 +1193,7 @@ lbl_8035F93C: /* 8035F988 0035B5E8 54 C4 0F FE */ srwi r4, r6, 0x1f
/* 8035F98C 0035B5EC 7C 60 02 78 */ xor r0, r3, r0
/* 8035F990 0035B5F0 7C 1E 22 78 */ xor r30, r0, r4
-/* 8035F994 0035B5F4 4B E6 D3 A9 */ bl func_801CCD3C
+/* 8035F994 0035B5F4 4B E6 D3 A9 */ bl rand
/* 8035F998 0035B5F8 7C 1F 18 96 */ mulhw r0, r31, r3
/* 8035F99C 0035B5FC 2C 1E 00 00 */ cmpwi r30, 0
/* 8035F9A0 0035B600 7C 00 26 70 */ srawi r0, r0, 4
@@ -2363,7 +2363,7 @@ lbl_80360984: /* 80360984 0035C5E4 38 7C 00 01 */ addi r3, r28, 1
/* 80360988 0035C5E8 38 8D 95 10 */ addi r4, r13, lbl_8063E7D0-_SDA_BASE_
/* 8036098C 0035C5EC 38 A0 00 04 */ li r5, 4
-/* 80360990 0035C5F0 4B E6 9A 09 */ bl func_801CA398
+/* 80360990 0035C5F0 4B E6 9A 09 */ bl memcmp
/* 80360994 0035C5F4 2C 03 00 00 */ cmpwi r3, 0
/* 80360998 0035C5F8 40 82 00 0C */ bne lbl_803609A4
/* 8036099C 0035C5FC 38 60 FF FF */ li r3, -1
@@ -3786,7 +3786,7 @@ lbl_80361D28: /* 80361D60 0035D9C0 7C 65 1B 78 */ mr r5, r3
/* 80361D64 0035D9C4 7F 43 D3 78 */ mr r3, r26
/* 80361D68 0035D9C8 7F 84 E3 78 */ mr r4, r28
-/* 80361D6C 0035D9CC 4B E6 C7 FD */ bl func_801CE568
+/* 80361D6C 0035D9CC 4B E6 C7 FD */ bl strncmp
/* 80361D70 0035D9D0 2C 03 00 00 */ cmpwi r3, 0
/* 80361D74 0035D9D4 40 82 00 30 */ bne lbl_80361DA4
/* 80361D78 0035D9D8 7F 63 DB 78 */ mr r3, r27
@@ -3945,7 +3945,7 @@ lbl_80361F44: /* 80361F9C 0035DBFC 7C 65 1B 78 */ mr r5, r3
/* 80361FA0 0035DC00 7F A3 EB 78 */ mr r3, r29
/* 80361FA4 0035DC04 7F 84 E3 78 */ mr r4, r28
-/* 80361FA8 0035DC08 4B E6 C5 C1 */ bl func_801CE568
+/* 80361FA8 0035DC08 4B E6 C5 C1 */ bl strncmp
/* 80361FAC 0035DC0C 2C 03 00 00 */ cmpwi r3, 0
/* 80361FB0 0035DC10 40 82 00 30 */ bne lbl_80361FE0
/* 80361FB4 0035DC14 7F C3 F3 78 */ mr r3, r30
diff --git a/asm/SDK/OS/OSError.s b/asm/SDK/OS/OSError.s index 77045d2..f6d1b5e 100644 --- a/asm/SDK/OS/OSError.s +++ b/asm/SDK/OS/OSError.s @@ -43,7 +43,7 @@ lbl_8026B4E8: /* 8026B528 00267188 90 61 00 68 */ stw r3, 0x68(r1) /* 8026B52C 0026718C 7F A3 EB 78 */ mr r3, r29 /* 8026B530 00267190 90 01 00 70 */ stw r0, 0x70(r1) -/* 8026B534 00267194 4B F6 13 F9 */ bl func_801CC92C +/* 8026B534 00267194 4B F6 13 F9 */ bl vprintf /* 8026B538 00267198 7F 84 E3 78 */ mr r4, r28 /* 8026B53C 0026719C 7F C5 F3 78 */ mr r5, r30 /* 8026B540 002671A0 38 7F 00 00 */ addi r3, r31, 0 diff --git a/asm/SDK/OS/OSExec.s b/asm/SDK/OS/OSExec.s index 99800ff..35e59dd 100644 --- a/asm/SDK/OS/OSExec.s +++ b/asm/SDK/OS/OSExec.s @@ -34,7 +34,7 @@ lbl_8026BB94: /* 8026BBA4 00267804 7F 64 DB 78 */ mr r4, r27 /* 8026BBA8 00267808 7F 40 D0 50 */ subf r26, r0, r26 /* 8026BBAC 0026780C 7F 43 D3 78 */ mr r3, r26 -/* 8026BBB0 00267810 4B F6 27 21 */ bl func_801CE2D0 +/* 8026BBB0 00267810 4B F6 27 21 */ bl strcpy /* 8026BBB4 00267814 7C 1E D0 50 */ subf r0, r30, r26 /* 8026BBB8 00267818 90 1C 00 00 */ stw r0, 0(r28) lbl_8026BBBC: @@ -880,7 +880,7 @@ lbl_8026C740: /* 8026C768 002683C8 7F E3 FB 78 */ mr r3, r31 /* 8026C76C 002683CC 38 84 71 BC */ addi r4, r4, lbl_804271BC@l /* 8026C770 002683D0 38 A0 00 0A */ li r5, 0xa -/* 8026C774 002683D4 4B F6 1D F5 */ bl func_801CE568 +/* 8026C774 002683D4 4B F6 1D F5 */ bl strncmp /* 8026C778 002683D8 7C 03 00 D0 */ neg r0, r3 /* 8026C77C 002683DC 7C 00 18 78 */ andc r0, r0, r3 /* 8026C780 002683E0 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f @@ -1141,7 +1141,7 @@ __OSBootDol: /* 8026CB14 00268774 38 61 00 10 */ addi r3, r1, 0x10 /* 8026CB18 00268778 38 8D 87 C8 */ addi r4, r13, lbl_8063DA88-_SDA_BASE_ /* 8026CB1C 0026877C 4C C6 31 82 */ crclr 6 -/* 8026CB20 00268780 4B F5 FF DD */ bl func_801CCAFC +/* 8026CB20 00268780 4B F5 FF DD */ bl sprintf /* 8026CB24 00268784 2C 1E 00 00 */ cmpwi r30, 0 /* 8026CB28 00268788 3B E0 00 00 */ li r31, 0 /* 8026CB2C 0026878C 41 82 00 20 */ beq lbl_8026CB4C diff --git a/asm/libstdc++/FILE_POS.s b/asm/libstdc++/FILE_POS.s new file mode 100644 index 0000000..0aa63a2 --- /dev/null +++ b/asm/libstdc++/FILE_POS.s @@ -0,0 +1,211 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global _ftell
+_ftell:
+/* 801C9E80 001C5AE0 80 03 00 04 */ lwz r0, 4(r3)
+/* 801C9E84 001C5AE4 38 C0 00 00 */ li r6, 0
+/* 801C9E88 001C5AE8 54 04 57 7E */ rlwinm r4, r0, 0xa, 0x1d, 0x1f
+/* 801C9E8C 001C5AEC 38 04 00 FF */ addi r0, r4, 0xff
+/* 801C9E90 001C5AF0 54 00 06 3E */ clrlwi r0, r0, 0x18
+/* 801C9E94 001C5AF4 28 00 00 01 */ cmplwi r0, 1
+/* 801C9E98 001C5AF8 41 81 00 10 */ bgt lbl_801C9EA8
+/* 801C9E9C 001C5AFC 88 03 00 0A */ lbz r0, 0xa(r3)
+/* 801C9EA0 001C5B00 2C 00 00 00 */ cmpwi r0, 0
+/* 801C9EA4 001C5B04 41 82 00 14 */ beq lbl_801C9EB8
+lbl_801C9EA8:
+/* 801C9EA8 001C5B08 38 00 00 28 */ li r0, 0x28
+/* 801C9EAC 001C5B0C 38 60 FF FF */ li r3, -1
+/* 801C9EB0 001C5B10 90 0D 9F C8 */ stw r0, lbl_8063F288-_SDA_BASE_(r13)
+/* 801C9EB4 001C5B14 4E 80 00 20 */ blr
+lbl_801C9EB8:
+/* 801C9EB8 001C5B18 80 03 00 08 */ lwz r0, 8(r3)
+/* 801C9EBC 001C5B1C 54 05 1F 7F */ rlwinm. r5, r0, 3, 0x1d, 0x1f
+/* 801C9EC0 001C5B20 40 82 00 0C */ bne lbl_801C9ECC
+/* 801C9EC4 001C5B24 80 63 00 18 */ lwz r3, 0x18(r3)
+/* 801C9EC8 001C5B28 4E 80 00 20 */ blr
+lbl_801C9ECC:
+/* 801C9ECC 001C5B2C 81 03 00 1C */ lwz r8, 0x1c(r3)
+/* 801C9ED0 001C5B30 28 05 00 03 */ cmplwi r5, 3
+/* 801C9ED4 001C5B34 80 83 00 24 */ lwz r4, 0x24(r3)
+/* 801C9ED8 001C5B38 80 03 00 34 */ lwz r0, 0x34(r3)
+/* 801C9EDC 001C5B3C 7C 88 20 50 */ subf r4, r8, r4
+/* 801C9EE0 001C5B40 7C E0 22 14 */ add r7, r0, r4
+/* 801C9EE4 001C5B44 41 80 00 0C */ blt lbl_801C9EF0
+/* 801C9EE8 001C5B48 38 C5 FF FE */ addi r6, r5, -2
+/* 801C9EEC 001C5B4C 7C E6 38 50 */ subf r7, r6, r7
+lbl_801C9EF0:
+/* 801C9EF0 001C5B50 80 03 00 04 */ lwz r0, 4(r3)
+/* 801C9EF4 001C5B54 54 00 6F FF */ rlwinm. r0, r0, 0xd, 0x1f, 0x1f
+/* 801C9EF8 001C5B58 40 82 00 28 */ bne lbl_801C9F20
+/* 801C9EFC 001C5B5C 7C 06 20 51 */ subf. r0, r6, r4
+/* 801C9F00 001C5B60 7C 09 03 A6 */ mtctr r0
+/* 801C9F04 001C5B64 41 82 00 1C */ beq lbl_801C9F20
+lbl_801C9F08:
+/* 801C9F08 001C5B68 88 08 00 00 */ lbz r0, 0(r8)
+/* 801C9F0C 001C5B6C 39 08 00 01 */ addi r8, r8, 1
+/* 801C9F10 001C5B70 28 00 00 0A */ cmplwi r0, 0xa
+/* 801C9F14 001C5B74 40 82 00 08 */ bne lbl_801C9F1C
+/* 801C9F18 001C5B78 38 E7 00 01 */ addi r7, r7, 1
+lbl_801C9F1C:
+/* 801C9F1C 001C5B7C 42 00 FF EC */ bdnz lbl_801C9F08
+lbl_801C9F20:
+/* 801C9F20 001C5B80 7C E3 3B 78 */ mr r3, r7
+/* 801C9F24 001C5B84 4E 80 00 20 */ blr
+
+.global ftell
+ftell:
+/* 801C9F28 001C5B88 4B FF FF 58 */ b _ftell
+
+.global _fseek
+_fseek:
+/* 801C9F2C 001C5B8C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 801C9F30 001C5B90 7C 08 02 A6 */ mflr r0
+/* 801C9F34 001C5B94 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801C9F38 001C5B98 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 801C9F3C 001C5B9C 7C BF 2B 78 */ mr r31, r5
+/* 801C9F40 001C5BA0 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 801C9F44 001C5BA4 7C 7E 1B 78 */ mr r30, r3
+/* 801C9F48 001C5BA8 90 81 00 08 */ stw r4, 8(r1)
+/* 801C9F4C 001C5BAC 80 03 00 04 */ lwz r0, 4(r3)
+/* 801C9F50 001C5BB0 54 00 57 7E */ rlwinm r0, r0, 0xa, 0x1d, 0x1f
+/* 801C9F54 001C5BB4 28 00 00 01 */ cmplwi r0, 1
+/* 801C9F58 001C5BB8 40 82 00 10 */ bne lbl_801C9F68
+/* 801C9F5C 001C5BBC 88 03 00 0A */ lbz r0, 0xa(r3)
+/* 801C9F60 001C5BC0 2C 00 00 00 */ cmpwi r0, 0
+/* 801C9F64 001C5BC4 41 82 00 14 */ beq lbl_801C9F78
+lbl_801C9F68:
+/* 801C9F68 001C5BC8 38 00 00 28 */ li r0, 0x28
+/* 801C9F6C 001C5BCC 38 60 FF FF */ li r3, -1
+/* 801C9F70 001C5BD0 90 0D 9F C8 */ stw r0, lbl_8063F288-_SDA_BASE_(r13)
+/* 801C9F74 001C5BD4 48 00 01 64 */ b lbl_801CA0D8
+lbl_801C9F78:
+/* 801C9F78 001C5BD8 80 03 00 08 */ lwz r0, 8(r3)
+/* 801C9F7C 001C5BDC 54 00 1F 7E */ srwi r0, r0, 0x1d
+/* 801C9F80 001C5BE0 28 00 00 01 */ cmplwi r0, 1
+/* 801C9F84 001C5BE4 40 82 00 34 */ bne lbl_801C9FB8
+/* 801C9F88 001C5BE8 38 80 00 00 */ li r4, 0
+/* 801C9F8C 001C5BEC 4B FF F5 41 */ bl __flush_buffer
+/* 801C9F90 001C5BF0 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9F94 001C5BF4 41 82 00 24 */ beq lbl_801C9FB8
+/* 801C9F98 001C5BF8 38 00 00 01 */ li r0, 1
+/* 801C9F9C 001C5BFC 38 80 00 00 */ li r4, 0
+/* 801C9FA0 001C5C00 98 1E 00 0A */ stb r0, 0xa(r30)
+/* 801C9FA4 001C5C04 38 00 00 28 */ li r0, 0x28
+/* 801C9FA8 001C5C08 38 60 FF FF */ li r3, -1
+/* 801C9FAC 001C5C0C 90 9E 00 28 */ stw r4, 0x28(r30)
+/* 801C9FB0 001C5C10 90 0D 9F C8 */ stw r0, lbl_8063F288-_SDA_BASE_(r13)
+/* 801C9FB4 001C5C14 48 00 01 24 */ b lbl_801CA0D8
+lbl_801C9FB8:
+/* 801C9FB8 001C5C18 2C 1F 00 01 */ cmpwi r31, 1
+/* 801C9FBC 001C5C1C 40 82 00 1C */ bne lbl_801C9FD8
+/* 801C9FC0 001C5C20 7F C3 F3 78 */ mr r3, r30
+/* 801C9FC4 001C5C24 3B E0 00 00 */ li r31, 0
+/* 801C9FC8 001C5C28 4B FF FE B9 */ bl _ftell
+/* 801C9FCC 001C5C2C 80 01 00 08 */ lwz r0, 8(r1)
+/* 801C9FD0 001C5C30 7C 00 1A 14 */ add r0, r0, r3
+/* 801C9FD4 001C5C34 90 01 00 08 */ stw r0, 8(r1)
+lbl_801C9FD8:
+/* 801C9FD8 001C5C38 2C 1F 00 02 */ cmpwi r31, 2
+/* 801C9FDC 001C5C3C 41 82 00 80 */ beq lbl_801CA05C
+/* 801C9FE0 001C5C40 80 1E 00 04 */ lwz r0, 4(r30)
+/* 801C9FE4 001C5C44 54 00 2F 7E */ rlwinm r0, r0, 5, 0x1d, 0x1f
+/* 801C9FE8 001C5C48 28 00 00 03 */ cmplwi r0, 3
+/* 801C9FEC 001C5C4C 41 82 00 70 */ beq lbl_801CA05C
+/* 801C9FF0 001C5C50 80 DE 00 08 */ lwz r6, 8(r30)
+/* 801C9FF4 001C5C54 54 C3 1F 7E */ srwi r3, r6, 0x1d
+/* 801C9FF8 001C5C58 38 03 FF FE */ addi r0, r3, -2
+/* 801C9FFC 001C5C5C 28 00 00 01 */ cmplwi r0, 1
+/* 801CA000 001C5C60 41 81 00 5C */ bgt lbl_801CA05C
+/* 801CA004 001C5C64 80 61 00 08 */ lwz r3, 8(r1)
+/* 801CA008 001C5C68 80 BE 00 18 */ lwz r5, 0x18(r30)
+/* 801CA00C 001C5C6C 7C 03 28 40 */ cmplw r3, r5
+/* 801CA010 001C5C70 40 80 00 10 */ bge lbl_801CA020
+/* 801CA014 001C5C74 80 1E 00 34 */ lwz r0, 0x34(r30)
+/* 801CA018 001C5C78 7C 03 00 40 */ cmplw r3, r0
+/* 801CA01C 001C5C7C 40 80 00 14 */ bge lbl_801CA030
+lbl_801CA020:
+/* 801CA020 001C5C80 80 1E 00 08 */ lwz r0, 8(r30)
+/* 801CA024 001C5C84 54 00 00 FE */ clrlwi r0, r0, 3
+/* 801CA028 001C5C88 90 1E 00 08 */ stw r0, 8(r30)
+/* 801CA02C 001C5C8C 48 00 00 3C */ b lbl_801CA068
+lbl_801CA030:
+/* 801CA030 001C5C90 80 9E 00 1C */ lwz r4, 0x1c(r30)
+/* 801CA034 001C5C94 7C 60 18 50 */ subf r3, r0, r3
+/* 801CA038 001C5C98 38 00 00 02 */ li r0, 2
+/* 801CA03C 001C5C9C 7C 64 1A 14 */ add r3, r4, r3
+/* 801CA040 001C5CA0 90 7E 00 24 */ stw r3, 0x24(r30)
+/* 801CA044 001C5CA4 50 06 E8 04 */ rlwimi r6, r0, 0x1d, 0, 2
+/* 801CA048 001C5CA8 80 01 00 08 */ lwz r0, 8(r1)
+/* 801CA04C 001C5CAC 7C 00 28 50 */ subf r0, r0, r5
+/* 801CA050 001C5CB0 90 DE 00 08 */ stw r6, 8(r30)
+/* 801CA054 001C5CB4 90 1E 00 28 */ stw r0, 0x28(r30)
+/* 801CA058 001C5CB8 48 00 00 10 */ b lbl_801CA068
+lbl_801CA05C:
+/* 801CA05C 001C5CBC 80 1E 00 08 */ lwz r0, 8(r30)
+/* 801CA060 001C5CC0 54 00 00 FE */ clrlwi r0, r0, 3
+/* 801CA064 001C5CC4 90 1E 00 08 */ stw r0, 8(r30)
+lbl_801CA068:
+/* 801CA068 001C5CC8 80 1E 00 08 */ lwz r0, 8(r30)
+/* 801CA06C 001C5CCC 54 00 1F 7F */ rlwinm. r0, r0, 3, 0x1d, 0x1f
+/* 801CA070 001C5CD0 40 82 00 64 */ bne lbl_801CA0D4
+/* 801CA074 001C5CD4 81 9E 00 38 */ lwz r12, 0x38(r30)
+/* 801CA078 001C5CD8 2C 0C 00 00 */ cmpwi r12, 0
+/* 801CA07C 001C5CDC 41 82 00 44 */ beq lbl_801CA0C0
+/* 801CA080 001C5CE0 7F E5 FB 78 */ mr r5, r31
+/* 801CA084 001C5CE4 38 81 00 08 */ addi r4, r1, 8
+/* 801CA088 001C5CE8 80 7E 00 00 */ lwz r3, 0(r30)
+/* 801CA08C 001C5CEC 80 DE 00 48 */ lwz r6, 0x48(r30)
+/* 801CA090 001C5CF0 7D 89 03 A6 */ mtctr r12
+/* 801CA094 001C5CF4 4E 80 04 21 */ bctrl
+/* 801CA098 001C5CF8 2C 03 00 00 */ cmpwi r3, 0
+/* 801CA09C 001C5CFC 41 82 00 24 */ beq lbl_801CA0C0
+/* 801CA0A0 001C5D00 38 00 00 01 */ li r0, 1
+/* 801CA0A4 001C5D04 38 80 00 00 */ li r4, 0
+/* 801CA0A8 001C5D08 98 1E 00 0A */ stb r0, 0xa(r30)
+/* 801CA0AC 001C5D0C 38 00 00 28 */ li r0, 0x28
+/* 801CA0B0 001C5D10 38 60 FF FF */ li r3, -1
+/* 801CA0B4 001C5D14 90 9E 00 28 */ stw r4, 0x28(r30)
+/* 801CA0B8 001C5D18 90 0D 9F C8 */ stw r0, lbl_8063F288-_SDA_BASE_(r13)
+/* 801CA0BC 001C5D1C 48 00 00 1C */ b lbl_801CA0D8
+lbl_801CA0C0:
+/* 801CA0C0 001C5D20 38 60 00 00 */ li r3, 0
+/* 801CA0C4 001C5D24 98 7E 00 09 */ stb r3, 9(r30)
+/* 801CA0C8 001C5D28 80 01 00 08 */ lwz r0, 8(r1)
+/* 801CA0CC 001C5D2C 90 1E 00 18 */ stw r0, 0x18(r30)
+/* 801CA0D0 001C5D30 90 7E 00 28 */ stw r3, 0x28(r30)
+lbl_801CA0D4:
+/* 801CA0D4 001C5D34 38 60 00 00 */ li r3, 0
+lbl_801CA0D8:
+/* 801CA0D8 001C5D38 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 801CA0DC 001C5D3C 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 801CA0E0 001C5D40 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 801CA0E4 001C5D44 7C 08 03 A6 */ mtlr r0
+/* 801CA0E8 001C5D48 38 21 00 20 */ addi r1, r1, 0x20
+/* 801CA0EC 001C5D4C 4E 80 00 20 */ blr
+
+.global fseek
+fseek:
+/* 801CA0F0 001C5D50 4B FF FE 3C */ b _fseek
+
+.global rewind
+rewind:
+/* 801CA0F4 001C5D54 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801CA0F8 001C5D58 7C 08 02 A6 */ mflr r0
+/* 801CA0FC 001C5D5C 38 80 00 00 */ li r4, 0
+/* 801CA100 001C5D60 38 A0 00 00 */ li r5, 0
+/* 801CA104 001C5D64 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CA108 001C5D68 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801CA10C 001C5D6C 3B E0 00 00 */ li r31, 0
+/* 801CA110 001C5D70 93 C1 00 08 */ stw r30, 8(r1)
+/* 801CA114 001C5D74 7C 7E 1B 78 */ mr r30, r3
+/* 801CA118 001C5D78 9B E3 00 0A */ stb r31, 0xa(r3)
+/* 801CA11C 001C5D7C 4B FF FE 11 */ bl _fseek
+/* 801CA120 001C5D80 9B FE 00 0A */ stb r31, 0xa(r30)
+/* 801CA124 001C5D84 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801CA128 001C5D88 83 C1 00 08 */ lwz r30, 8(r1)
+/* 801CA12C 001C5D8C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CA130 001C5D90 7C 08 03 A6 */ mtlr r0
+/* 801CA134 001C5D94 38 21 00 10 */ addi r1, r1, 0x10
+/* 801CA138 001C5D98 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/Gecko_ExceptionPPC.s b/asm/libstdc++/Gecko_ExceptionPPC.s new file mode 100644 index 0000000..0291da9 --- /dev/null +++ b/asm/libstdc++/Gecko_ExceptionPPC.s @@ -0,0 +1,35 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __register_fragment
+__register_fragment:
+/* 801C7830 001C3490 3C A0 80 49 */ lis r5, lbl_8048EAE0@ha
+/* 801C7834 001C3494 38 A5 EA E0 */ addi r5, r5, lbl_8048EAE0@l
+/* 801C7838 001C3498 80 05 00 08 */ lwz r0, 8(r5)
+/* 801C783C 001C349C 2C 00 00 00 */ cmpwi r0, 0
+/* 801C7840 001C34A0 40 82 00 1C */ bne lbl_801C785C
+/* 801C7844 001C34A4 90 65 00 00 */ stw r3, 0(r5)
+/* 801C7848 001C34A8 38 00 00 01 */ li r0, 1
+/* 801C784C 001C34AC 38 60 00 00 */ li r3, 0
+/* 801C7850 001C34B0 90 85 00 04 */ stw r4, 4(r5)
+/* 801C7854 001C34B4 90 05 00 08 */ stw r0, 8(r5)
+/* 801C7858 001C34B8 4E 80 00 20 */ blr
+lbl_801C785C:
+/* 801C785C 001C34BC 38 60 FF FF */ li r3, -1
+/* 801C7860 001C34C0 4E 80 00 20 */ blr
+
+.global __unregister_fragment
+__unregister_fragment:
+/* 801C7864 001C34C4 2C 03 00 00 */ cmpwi r3, 0
+/* 801C7868 001C34C8 4D 80 00 20 */ bltlr
+/* 801C786C 001C34CC 2C 03 00 01 */ cmpwi r3, 1
+/* 801C7870 001C34D0 4C 80 00 20 */ bgelr
+/* 801C7874 001C34D4 1C 83 00 0C */ mulli r4, r3, 0xc
+/* 801C7878 001C34D8 3C 60 80 49 */ lis r3, lbl_8048EAE0@ha
+/* 801C787C 001C34DC 38 00 00 00 */ li r0, 0
+/* 801C7880 001C34E0 38 63 EA E0 */ addi r3, r3, lbl_8048EAE0@l
+/* 801C7884 001C34E4 7C 03 21 6E */ stwux r0, r3, r4
+/* 801C7888 001C34E8 90 03 00 04 */ stw r0, 4(r3)
+/* 801C788C 001C34EC 90 03 00 08 */ stw r0, 8(r3)
+/* 801C7890 001C34F0 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/__init_cpp_exceptions.s b/asm/libstdc++/__init_cpp_exceptions.s index aa1fa2a..7e12b85 100644 --- a/asm/libstdc++/__init_cpp_exceptions.s +++ b/asm/libstdc++/__init_cpp_exceptions.s @@ -35,7 +35,7 @@ __fini_cpp_exceptions_tmp: #__fini_cpp_exceptions /* 801C7808 001C3468 80 6D 83 D8 */ lwz r3, lbl_8063D698-_SDA_BASE_(r13) /* 801C780C 001C346C 2C 03 FF FE */ cmpwi r3, -2 /* 801C7810 001C3470 41 82 00 10 */ beq lbl_801C7820 -/* 801C7814 001C3474 48 00 00 51 */ bl func_801C7864 +/* 801C7814 001C3474 48 00 00 51 */ bl __unregister_fragment /* 801C7818 001C3478 38 00 FF FE */ li r0, -2 /* 801C781C 001C347C 90 0D 83 D8 */ stw r0, lbl_8063D698-_SDA_BASE_(r13) lbl_801C7820: diff --git a/asm/libstdc++/ansi_files.s b/asm/libstdc++/ansi_files.s new file mode 100644 index 0000000..52c4156 --- /dev/null +++ b/asm/libstdc++/ansi_files.s @@ -0,0 +1,123 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __close_all
+__close_all:
+/* 801C7894 001C34F4 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 801C7898 001C34F8 7C 08 02 A6 */ mflr r0
+/* 801C789C 001C34FC 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801C78A0 001C3500 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 801C78A4 001C3504 3B E0 00 00 */ li r31, 0
+/* 801C78A8 001C3508 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 801C78AC 001C350C 3B C0 00 03 */ li r30, 3
+/* 801C78B0 001C3510 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 801C78B4 001C3514 3F A0 80 42 */ lis r29, lbl_804228F0@ha
+/* 801C78B8 001C3518 3B BD 28 F0 */ addi r29, r29, lbl_804228F0@l
+/* 801C78BC 001C351C 48 00 00 58 */ b lbl_801C7914
+lbl_801C78C0:
+/* 801C78C0 001C3520 80 1D 00 04 */ lwz r0, 4(r29)
+/* 801C78C4 001C3524 54 00 57 7F */ rlwinm. r0, r0, 0xa, 0x1d, 0x1f
+/* 801C78C8 001C3528 41 82 00 0C */ beq lbl_801C78D4
+/* 801C78CC 001C352C 7F A3 EB 78 */ mr r3, r29
+/* 801C78D0 001C3530 48 00 23 01 */ bl fclose
+lbl_801C78D4:
+/* 801C78D4 001C3534 7F A3 EB 78 */ mr r3, r29
+/* 801C78D8 001C3538 83 BD 00 4C */ lwz r29, 0x4c(r29)
+/* 801C78DC 001C353C 88 03 00 0C */ lbz r0, 0xc(r3)
+/* 801C78E0 001C3540 2C 00 00 00 */ cmpwi r0, 0
+/* 801C78E4 001C3544 41 82 00 0C */ beq lbl_801C78F0
+/* 801C78E8 001C3548 4B E4 2E DD */ bl func_8000A7C4
+/* 801C78EC 001C354C 48 00 00 28 */ b lbl_801C7914
+lbl_801C78F0:
+/* 801C78F0 001C3550 80 03 00 04 */ lwz r0, 4(r3)
+/* 801C78F4 001C3554 53 C0 B1 D2 */ rlwimi r0, r30, 0x16, 7, 9
+/* 801C78F8 001C3558 2C 1D 00 00 */ cmpwi r29, 0
+/* 801C78FC 001C355C 90 03 00 04 */ stw r0, 4(r3)
+/* 801C7900 001C3560 41 82 00 14 */ beq lbl_801C7914
+/* 801C7904 001C3564 88 1D 00 0C */ lbz r0, 0xc(r29)
+/* 801C7908 001C3568 2C 00 00 00 */ cmpwi r0, 0
+/* 801C790C 001C356C 41 82 00 08 */ beq lbl_801C7914
+/* 801C7910 001C3570 93 E3 00 4C */ stw r31, 0x4c(r3)
+lbl_801C7914:
+/* 801C7914 001C3574 2C 1D 00 00 */ cmpwi r29, 0
+/* 801C7918 001C3578 40 82 FF A8 */ bne lbl_801C78C0
+/* 801C791C 001C357C 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 801C7920 001C3580 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 801C7924 001C3584 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 801C7928 001C3588 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 801C792C 001C358C 7C 08 03 A6 */ mtlr r0
+/* 801C7930 001C3590 38 21 00 20 */ addi r1, r1, 0x20
+/* 801C7934 001C3594 4E 80 00 20 */ blr
+
+.global __flush_line_buffered_output_files
+__flush_line_buffered_output_files:
+/* 801C7938 001C3598 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801C793C 001C359C 7C 08 02 A6 */ mflr r0
+/* 801C7940 001C35A0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801C7944 001C35A4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801C7948 001C35A8 3B E0 00 00 */ li r31, 0
+/* 801C794C 001C35AC 93 C1 00 08 */ stw r30, 8(r1)
+/* 801C7950 001C35B0 3F C0 80 42 */ lis r30, lbl_804228F0@ha
+/* 801C7954 001C35B4 3B DE 28 F0 */ addi r30, r30, lbl_804228F0@l
+/* 801C7958 001C35B8 48 00 00 40 */ b lbl_801C7998
+lbl_801C795C:
+/* 801C795C 001C35BC 80 7E 00 04 */ lwz r3, 4(r30)
+/* 801C7960 001C35C0 54 60 57 7F */ rlwinm. r0, r3, 0xa, 0x1d, 0x1f
+/* 801C7964 001C35C4 41 82 00 30 */ beq lbl_801C7994
+/* 801C7968 001C35C8 54 60 3F FF */ rlwinm. r0, r3, 7, 0x1f, 0x1f
+/* 801C796C 001C35CC 41 82 00 28 */ beq lbl_801C7994
+/* 801C7970 001C35D0 80 1E 00 08 */ lwz r0, 8(r30)
+/* 801C7974 001C35D4 54 00 1F 7E */ srwi r0, r0, 0x1d
+/* 801C7978 001C35D8 28 00 00 01 */ cmplwi r0, 1
+/* 801C797C 001C35DC 40 82 00 18 */ bne lbl_801C7994
+/* 801C7980 001C35E0 7F C3 F3 78 */ mr r3, r30
+/* 801C7984 001C35E4 48 00 23 09 */ bl fflush
+/* 801C7988 001C35E8 2C 03 00 00 */ cmpwi r3, 0
+/* 801C798C 001C35EC 41 82 00 08 */ beq lbl_801C7994
+/* 801C7990 001C35F0 3B E0 FF FF */ li r31, -1
+lbl_801C7994:
+/* 801C7994 001C35F4 83 DE 00 4C */ lwz r30, 0x4c(r30)
+lbl_801C7998:
+/* 801C7998 001C35F8 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C799C 001C35FC 40 82 FF C0 */ bne lbl_801C795C
+/* 801C79A0 001C3600 7F E3 FB 78 */ mr r3, r31
+/* 801C79A4 001C3604 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801C79A8 001C3608 83 C1 00 08 */ lwz r30, 8(r1)
+/* 801C79AC 001C360C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801C79B0 001C3610 7C 08 03 A6 */ mtlr r0
+/* 801C79B4 001C3614 38 21 00 10 */ addi r1, r1, 0x10
+/* 801C79B8 001C3618 4E 80 00 20 */ blr
+
+.global __flush_all
+__flush_all:
+/* 801C79BC 001C361C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801C79C0 001C3620 7C 08 02 A6 */ mflr r0
+/* 801C79C4 001C3624 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801C79C8 001C3628 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801C79CC 001C362C 3B E0 00 00 */ li r31, 0
+/* 801C79D0 001C3630 93 C1 00 08 */ stw r30, 8(r1)
+/* 801C79D4 001C3634 3F C0 80 42 */ lis r30, lbl_804228F0@ha
+/* 801C79D8 001C3638 3B DE 28 F0 */ addi r30, r30, lbl_804228F0@l
+/* 801C79DC 001C363C 48 00 00 28 */ b lbl_801C7A04
+lbl_801C79E0:
+/* 801C79E0 001C3640 80 1E 00 04 */ lwz r0, 4(r30)
+/* 801C79E4 001C3644 54 00 57 7F */ rlwinm. r0, r0, 0xa, 0x1d, 0x1f
+/* 801C79E8 001C3648 41 82 00 18 */ beq lbl_801C7A00
+/* 801C79EC 001C364C 7F C3 F3 78 */ mr r3, r30
+/* 801C79F0 001C3650 48 00 22 9D */ bl fflush
+/* 801C79F4 001C3654 2C 03 00 00 */ cmpwi r3, 0
+/* 801C79F8 001C3658 41 82 00 08 */ beq lbl_801C7A00
+/* 801C79FC 001C365C 3B E0 FF FF */ li r31, -1
+lbl_801C7A00:
+/* 801C7A00 001C3660 83 DE 00 4C */ lwz r30, 0x4c(r30)
+lbl_801C7A04:
+/* 801C7A04 001C3664 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C7A08 001C3668 40 82 FF D8 */ bne lbl_801C79E0
+/* 801C7A0C 001C366C 7F E3 FB 78 */ mr r3, r31
+/* 801C7A10 001C3670 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801C7A14 001C3674 83 C1 00 08 */ lwz r30, 8(r1)
+/* 801C7A18 001C3678 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801C7A1C 001C367C 7C 08 03 A6 */ mtlr r0
+/* 801C7A20 001C3680 38 21 00 10 */ addi r1, r1, 0x10
+/* 801C7A24 001C3684 4E 80 00 20 */ blr
diff --git a/asm/text_5_2.s b/asm/libstdc++/ansi_fp.s index 06e2e4e..5dfc596 100644 --- a/asm/text_5_2.s +++ b/asm/libstdc++/ansi_fp.s @@ -1,3511 +1,1820 @@ -.include "macros.inc" - -.section .text, "ax" # 0x80006980 - 0x803E1E60 - -.global __register_fragment -__register_fragment: -/* 801C7830 001C3490 3C A0 80 49 */ lis r5, lbl_8048EAE0@ha -/* 801C7834 001C3494 38 A5 EA E0 */ addi r5, r5, lbl_8048EAE0@l -/* 801C7838 001C3498 80 05 00 08 */ lwz r0, 8(r5) -/* 801C783C 001C349C 2C 00 00 00 */ cmpwi r0, 0 -/* 801C7840 001C34A0 40 82 00 1C */ bne lbl_801C785C -/* 801C7844 001C34A4 90 65 00 00 */ stw r3, 0(r5) -/* 801C7848 001C34A8 38 00 00 01 */ li r0, 1 -/* 801C784C 001C34AC 38 60 00 00 */ li r3, 0 -/* 801C7850 001C34B0 90 85 00 04 */ stw r4, 4(r5) -/* 801C7854 001C34B4 90 05 00 08 */ stw r0, 8(r5) -/* 801C7858 001C34B8 4E 80 00 20 */ blr -lbl_801C785C: -/* 801C785C 001C34BC 38 60 FF FF */ li r3, -1 -/* 801C7860 001C34C0 4E 80 00 20 */ blr - -.global func_801C7864 -func_801C7864: -/* 801C7864 001C34C4 2C 03 00 00 */ cmpwi r3, 0 -/* 801C7868 001C34C8 4D 80 00 20 */ bltlr -/* 801C786C 001C34CC 2C 03 00 01 */ cmpwi r3, 1 -/* 801C7870 001C34D0 4C 80 00 20 */ bgelr -/* 801C7874 001C34D4 1C 83 00 0C */ mulli r4, r3, 0xc -/* 801C7878 001C34D8 3C 60 80 49 */ lis r3, lbl_8048EAE0@ha -/* 801C787C 001C34DC 38 00 00 00 */ li r0, 0 -/* 801C7880 001C34E0 38 63 EA E0 */ addi r3, r3, lbl_8048EAE0@l -/* 801C7884 001C34E4 7C 03 21 6E */ stwux r0, r3, r4 -/* 801C7888 001C34E8 90 03 00 04 */ stw r0, 4(r3) -/* 801C788C 001C34EC 90 03 00 08 */ stw r0, 8(r3) -/* 801C7890 001C34F0 4E 80 00 20 */ blr - -.global func_801C7894 -func_801C7894: -/* 801C7894 001C34F4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801C7898 001C34F8 7C 08 02 A6 */ mflr r0 -/* 801C789C 001C34FC 90 01 00 24 */ stw r0, 0x24(r1) -/* 801C78A0 001C3500 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801C78A4 001C3504 3B E0 00 00 */ li r31, 0 -/* 801C78A8 001C3508 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801C78AC 001C350C 3B C0 00 03 */ li r30, 3 -/* 801C78B0 001C3510 93 A1 00 14 */ stw r29, 0x14(r1) -/* 801C78B4 001C3514 3F A0 80 42 */ lis r29, lbl_804228F0@ha -/* 801C78B8 001C3518 3B BD 28 F0 */ addi r29, r29, lbl_804228F0@l -/* 801C78BC 001C351C 48 00 00 58 */ b lbl_801C7914 -lbl_801C78C0: -/* 801C78C0 001C3520 80 1D 00 04 */ lwz r0, 4(r29) -/* 801C78C4 001C3524 54 00 57 7F */ rlwinm. r0, r0, 0xa, 0x1d, 0x1f -/* 801C78C8 001C3528 41 82 00 0C */ beq lbl_801C78D4 -/* 801C78CC 001C352C 7F A3 EB 78 */ mr r3, r29 -/* 801C78D0 001C3530 48 00 23 01 */ bl func_801C9BD0 -lbl_801C78D4: -/* 801C78D4 001C3534 7F A3 EB 78 */ mr r3, r29 -/* 801C78D8 001C3538 83 BD 00 4C */ lwz r29, 0x4c(r29) -/* 801C78DC 001C353C 88 03 00 0C */ lbz r0, 0xc(r3) -/* 801C78E0 001C3540 2C 00 00 00 */ cmpwi r0, 0 -/* 801C78E4 001C3544 41 82 00 0C */ beq lbl_801C78F0 -/* 801C78E8 001C3548 4B E4 2E DD */ bl func_8000A7C4 -/* 801C78EC 001C354C 48 00 00 28 */ b lbl_801C7914 -lbl_801C78F0: -/* 801C78F0 001C3550 80 03 00 04 */ lwz r0, 4(r3) -/* 801C78F4 001C3554 53 C0 B1 D2 */ rlwimi r0, r30, 0x16, 7, 9 -/* 801C78F8 001C3558 2C 1D 00 00 */ cmpwi r29, 0 -/* 801C78FC 001C355C 90 03 00 04 */ stw r0, 4(r3) -/* 801C7900 001C3560 41 82 00 14 */ beq lbl_801C7914 -/* 801C7904 001C3564 88 1D 00 0C */ lbz r0, 0xc(r29) -/* 801C7908 001C3568 2C 00 00 00 */ cmpwi r0, 0 -/* 801C790C 001C356C 41 82 00 08 */ beq lbl_801C7914 -/* 801C7910 001C3570 93 E3 00 4C */ stw r31, 0x4c(r3) -lbl_801C7914: -/* 801C7914 001C3574 2C 1D 00 00 */ cmpwi r29, 0 -/* 801C7918 001C3578 40 82 FF A8 */ bne lbl_801C78C0 -/* 801C791C 001C357C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801C7920 001C3580 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801C7924 001C3584 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 801C7928 001C3588 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 801C792C 001C358C 7C 08 03 A6 */ mtlr r0 -/* 801C7930 001C3590 38 21 00 20 */ addi r1, r1, 0x20 -/* 801C7934 001C3594 4E 80 00 20 */ blr - -.global func_801C7938 -func_801C7938: -/* 801C7938 001C3598 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801C793C 001C359C 7C 08 02 A6 */ mflr r0 -/* 801C7940 001C35A0 90 01 00 14 */ stw r0, 0x14(r1) -/* 801C7944 001C35A4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801C7948 001C35A8 3B E0 00 00 */ li r31, 0 -/* 801C794C 001C35AC 93 C1 00 08 */ stw r30, 8(r1) -/* 801C7950 001C35B0 3F C0 80 42 */ lis r30, lbl_804228F0@ha -/* 801C7954 001C35B4 3B DE 28 F0 */ addi r30, r30, lbl_804228F0@l -/* 801C7958 001C35B8 48 00 00 40 */ b lbl_801C7998 -lbl_801C795C: -/* 801C795C 001C35BC 80 7E 00 04 */ lwz r3, 4(r30) -/* 801C7960 001C35C0 54 60 57 7F */ rlwinm. r0, r3, 0xa, 0x1d, 0x1f -/* 801C7964 001C35C4 41 82 00 30 */ beq lbl_801C7994 -/* 801C7968 001C35C8 54 60 3F FF */ rlwinm. r0, r3, 7, 0x1f, 0x1f -/* 801C796C 001C35CC 41 82 00 28 */ beq lbl_801C7994 -/* 801C7970 001C35D0 80 1E 00 08 */ lwz r0, 8(r30) -/* 801C7974 001C35D4 54 00 1F 7E */ srwi r0, r0, 0x1d -/* 801C7978 001C35D8 28 00 00 01 */ cmplwi r0, 1 -/* 801C797C 001C35DC 40 82 00 18 */ bne lbl_801C7994 -/* 801C7980 001C35E0 7F C3 F3 78 */ mr r3, r30 -/* 801C7984 001C35E4 48 00 23 09 */ bl func_801C9C8C -/* 801C7988 001C35E8 2C 03 00 00 */ cmpwi r3, 0 -/* 801C798C 001C35EC 41 82 00 08 */ beq lbl_801C7994 -/* 801C7990 001C35F0 3B E0 FF FF */ li r31, -1 -lbl_801C7994: -/* 801C7994 001C35F4 83 DE 00 4C */ lwz r30, 0x4c(r30) -lbl_801C7998: -/* 801C7998 001C35F8 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C799C 001C35FC 40 82 FF C0 */ bne lbl_801C795C -/* 801C79A0 001C3600 7F E3 FB 78 */ mr r3, r31 -/* 801C79A4 001C3604 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801C79A8 001C3608 83 C1 00 08 */ lwz r30, 8(r1) -/* 801C79AC 001C360C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801C79B0 001C3610 7C 08 03 A6 */ mtlr r0 -/* 801C79B4 001C3614 38 21 00 10 */ addi r1, r1, 0x10 -/* 801C79B8 001C3618 4E 80 00 20 */ blr - -.global func_801C79BC -func_801C79BC: -/* 801C79BC 001C361C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801C79C0 001C3620 7C 08 02 A6 */ mflr r0 -/* 801C79C4 001C3624 90 01 00 14 */ stw r0, 0x14(r1) -/* 801C79C8 001C3628 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801C79CC 001C362C 3B E0 00 00 */ li r31, 0 -/* 801C79D0 001C3630 93 C1 00 08 */ stw r30, 8(r1) -/* 801C79D4 001C3634 3F C0 80 42 */ lis r30, lbl_804228F0@ha -/* 801C79D8 001C3638 3B DE 28 F0 */ addi r30, r30, lbl_804228F0@l -/* 801C79DC 001C363C 48 00 00 28 */ b lbl_801C7A04 -lbl_801C79E0: -/* 801C79E0 001C3640 80 1E 00 04 */ lwz r0, 4(r30) -/* 801C79E4 001C3644 54 00 57 7F */ rlwinm. r0, r0, 0xa, 0x1d, 0x1f -/* 801C79E8 001C3648 41 82 00 18 */ beq lbl_801C7A00 -/* 801C79EC 001C364C 7F C3 F3 78 */ mr r3, r30 -/* 801C79F0 001C3650 48 00 22 9D */ bl func_801C9C8C -/* 801C79F4 001C3654 2C 03 00 00 */ cmpwi r3, 0 -/* 801C79F8 001C3658 41 82 00 08 */ beq lbl_801C7A00 -/* 801C79FC 001C365C 3B E0 FF FF */ li r31, -1 -lbl_801C7A00: -/* 801C7A00 001C3660 83 DE 00 4C */ lwz r30, 0x4c(r30) -lbl_801C7A04: -/* 801C7A04 001C3664 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C7A08 001C3668 40 82 FF D8 */ bne lbl_801C79E0 -/* 801C7A0C 001C366C 7F E3 FB 78 */ mr r3, r31 -/* 801C7A10 001C3670 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801C7A14 001C3674 83 C1 00 08 */ lwz r30, 8(r1) -/* 801C7A18 001C3678 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801C7A1C 001C367C 7C 08 03 A6 */ mtlr r0 -/* 801C7A20 001C3680 38 21 00 10 */ addi r1, r1, 0x10 -/* 801C7A24 001C3684 4E 80 00 20 */ blr - -.global func_801C7A28 -func_801C7A28: -/* 801C7A28 001C3688 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801C7A2C 001C368C 7C 08 02 A6 */ mflr r0 -/* 801C7A30 001C3690 90 01 00 24 */ stw r0, 0x24(r1) -/* 801C7A34 001C3694 38 00 00 00 */ li r0, 0 -/* 801C7A38 001C3698 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801C7A3C 001C369C 7C BF 2B 78 */ mr r31, r5 -/* 801C7A40 001C36A0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801C7A44 001C36A4 7C DE 33 78 */ mr r30, r6 -/* 801C7A48 001C36A8 93 A1 00 14 */ stw r29, 0x14(r1) -/* 801C7A4C 001C36AC 7C 7D 1B 78 */ mr r29, r3 -/* 801C7A50 001C36B0 98 03 00 00 */ stb r0, 0(r3) -/* 801C7A54 001C36B4 98 03 00 04 */ stb r0, 4(r3) -/* 801C7A58 001C36B8 48 00 00 48 */ b lbl_801C7AA0 -lbl_801C7A5C: -/* 801C7A5C 001C36BC 7F E3 FB 78 */ mr r3, r31 -/* 801C7A60 001C36C0 7F C4 F3 78 */ mr r4, r30 -/* 801C7A64 001C36C4 38 C0 00 0A */ li r6, 0xa -/* 801C7A68 001C36C8 38 A0 00 00 */ li r5, 0 -/* 801C7A6C 001C36CC 4B FF F9 45 */ bl __mod2u -/* 801C7A70 001C36D0 89 1D 00 04 */ lbz r8, 4(r29) -/* 801C7A74 001C36D4 7F E3 FB 78 */ mr r3, r31 -/* 801C7A78 001C36D8 38 C0 00 0A */ li r6, 0xa -/* 801C7A7C 001C36DC 38 A0 00 00 */ li r5, 0 -/* 801C7A80 001C36E0 7C FD 42 14 */ add r7, r29, r8 -/* 801C7A84 001C36E4 38 08 00 01 */ addi r0, r8, 1 -/* 801C7A88 001C36E8 98 87 00 05 */ stb r4, 5(r7) -/* 801C7A8C 001C36EC 7F C4 F3 78 */ mr r4, r30 -/* 801C7A90 001C36F0 98 1D 00 04 */ stb r0, 4(r29) -/* 801C7A94 001C36F4 4B FF F6 F9 */ bl __div2u -/* 801C7A98 001C36F8 7C 9E 23 78 */ mr r30, r4 -/* 801C7A9C 001C36FC 7C 7F 1B 78 */ mr r31, r3 -lbl_801C7AA0: -/* 801C7AA0 001C3700 7F C0 FB 79 */ or. r0, r30, r31 -/* 801C7AA4 001C3704 40 82 FF B8 */ bne lbl_801C7A5C -/* 801C7AA8 001C3708 88 1D 00 04 */ lbz r0, 4(r29) -/* 801C7AAC 001C370C 38 9D 00 05 */ addi r4, r29, 5 -/* 801C7AB0 001C3710 7C 7D 02 14 */ add r3, r29, r0 -/* 801C7AB4 001C3714 38 63 00 05 */ addi r3, r3, 5 -/* 801C7AB8 001C3718 48 00 00 18 */ b lbl_801C7AD0 -lbl_801C7ABC: -/* 801C7ABC 001C371C 88 A4 00 00 */ lbz r5, 0(r4) -/* 801C7AC0 001C3720 88 03 00 00 */ lbz r0, 0(r3) -/* 801C7AC4 001C3724 98 04 00 00 */ stb r0, 0(r4) -/* 801C7AC8 001C3728 38 84 00 01 */ addi r4, r4, 1 -/* 801C7ACC 001C372C 98 A3 00 00 */ stb r5, 0(r3) -lbl_801C7AD0: -/* 801C7AD0 001C3730 38 63 FF FF */ addi r3, r3, -1 -/* 801C7AD4 001C3734 7C 04 18 40 */ cmplw r4, r3 -/* 801C7AD8 001C3738 41 80 FF E4 */ blt lbl_801C7ABC -/* 801C7ADC 001C373C 88 7D 00 04 */ lbz r3, 4(r29) -/* 801C7AE0 001C3740 38 03 FF FF */ addi r0, r3, -1 -/* 801C7AE4 001C3744 B0 1D 00 02 */ sth r0, 2(r29) -/* 801C7AE8 001C3748 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801C7AEC 001C374C 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 801C7AF0 001C3750 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 801C7AF4 001C3754 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801C7AF8 001C3758 7C 08 03 A6 */ mtlr r0 -/* 801C7AFC 001C375C 38 21 00 20 */ addi r1, r1, 0x20 -/* 801C7B00 001C3760 4E 80 00 20 */ blr - -.global func_801C7B04 -func_801C7B04: -/* 801C7B04 001C3764 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 801C7B08 001C3768 3C C0 CC CD */ lis r6, 0xCCCCCCCD@ha -/* 801C7B0C 001C376C 89 04 00 04 */ lbz r8, 4(r4) -/* 801C7B10 001C3770 39 60 00 00 */ li r11, 0 -/* 801C7B14 001C3774 93 E1 00 5C */ stw r31, 0x5c(r1) -/* 801C7B18 001C3778 38 01 00 08 */ addi r0, r1, 8 -/* 801C7B1C 001C377C 88 E5 00 04 */ lbz r7, 4(r5) -/* 801C7B20 001C3780 39 26 CC CD */ addi r9, r6, 0xCCCCCCCD@l -/* 801C7B24 001C3784 93 C1 00 58 */ stw r30, 0x58(r1) -/* 801C7B28 001C3788 7D 88 3A 14 */ add r12, r8, r7 -/* 801C7B2C 001C378C 93 A1 00 54 */ stw r29, 0x54(r1) -/* 801C7B30 001C3790 39 8C FF FF */ addi r12, r12, -1 -/* 801C7B34 001C3794 7C C0 62 14 */ add r6, r0, r12 -/* 801C7B38 001C3798 38 C6 00 01 */ addi r6, r6, 1 -/* 801C7B3C 001C379C 99 63 00 00 */ stb r11, 0(r3) -/* 801C7B40 001C37A0 7C C0 33 78 */ mr r0, r6 -/* 801C7B44 001C37A4 48 00 01 30 */ b lbl_801C7C74 -lbl_801C7B48: -/* 801C7B48 001C37A8 88 E5 00 04 */ lbz r7, 4(r5) -/* 801C7B4C 001C37AC 3B E7 FF FF */ addi r31, r7, -1 -/* 801C7B50 001C37B0 7C FF 60 50 */ subf r7, r31, r12 -/* 801C7B54 001C37B4 37 C7 FF FF */ addic. r30, r7, -1 -/* 801C7B58 001C37B8 40 80 00 0C */ bge lbl_801C7B64 -/* 801C7B5C 001C37BC 3B C0 00 00 */ li r30, 0 -/* 801C7B60 001C37C0 3B EC FF FF */ addi r31, r12, -1 -lbl_801C7B64: -/* 801C7B64 001C37C4 88 E4 00 04 */ lbz r7, 4(r4) -/* 801C7B68 001C37C8 7D 05 FA 14 */ add r8, r5, r31 -/* 801C7B6C 001C37CC 3B FF 00 01 */ addi r31, r31, 1 -/* 801C7B70 001C37D0 7D 44 F2 14 */ add r10, r4, r30 -/* 801C7B74 001C37D4 7C FE 38 50 */ subf r7, r30, r7 -/* 801C7B78 001C37D8 3B A8 00 05 */ addi r29, r8, 5 -/* 801C7B7C 001C37DC 7C 1F 38 00 */ cmpw r31, r7 -/* 801C7B80 001C37E0 3B CA 00 05 */ addi r30, r10, 5 -/* 801C7B84 001C37E4 40 81 00 08 */ ble lbl_801C7B8C -/* 801C7B88 001C37E8 7C FF 3B 78 */ mr r31, r7 -lbl_801C7B8C: -/* 801C7B8C 001C37EC 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C7B90 001C37F0 40 81 00 C4 */ ble lbl_801C7C54 -/* 801C7B94 001C37F4 57 E7 E8 FF */ rlwinm. r7, r31, 0x1d, 3, 0x1f -/* 801C7B98 001C37F8 7C E9 03 A6 */ mtctr r7 -/* 801C7B9C 001C37FC 41 82 00 98 */ beq lbl_801C7C34 -lbl_801C7BA0: -/* 801C7BA0 001C3800 89 5E 00 00 */ lbz r10, 0(r30) -/* 801C7BA4 001C3804 89 1D 00 00 */ lbz r8, 0(r29) -/* 801C7BA8 001C3808 7C EA 41 D6 */ mullw r7, r10, r8 -/* 801C7BAC 001C380C 89 5E 00 01 */ lbz r10, 1(r30) -/* 801C7BB0 001C3810 89 1D FF FF */ lbz r8, -1(r29) -/* 801C7BB4 001C3814 7D 6B 3A 14 */ add r11, r11, r7 -/* 801C7BB8 001C3818 7C EA 41 D6 */ mullw r7, r10, r8 -/* 801C7BBC 001C381C 89 5E 00 02 */ lbz r10, 2(r30) -/* 801C7BC0 001C3820 89 1D FF FE */ lbz r8, -2(r29) -/* 801C7BC4 001C3824 7D 6B 3A 14 */ add r11, r11, r7 -/* 801C7BC8 001C3828 7C EA 41 D6 */ mullw r7, r10, r8 -/* 801C7BCC 001C382C 89 5E 00 03 */ lbz r10, 3(r30) -/* 801C7BD0 001C3830 89 1D FF FD */ lbz r8, -3(r29) -/* 801C7BD4 001C3834 7D 6B 3A 14 */ add r11, r11, r7 -/* 801C7BD8 001C3838 7C EA 41 D6 */ mullw r7, r10, r8 -/* 801C7BDC 001C383C 89 5E 00 04 */ lbz r10, 4(r30) -/* 801C7BE0 001C3840 89 1D FF FC */ lbz r8, -4(r29) -/* 801C7BE4 001C3844 7D 6B 3A 14 */ add r11, r11, r7 -/* 801C7BE8 001C3848 7C EA 41 D6 */ mullw r7, r10, r8 -/* 801C7BEC 001C384C 89 5E 00 05 */ lbz r10, 5(r30) -/* 801C7BF0 001C3850 89 1D FF FB */ lbz r8, -5(r29) -/* 801C7BF4 001C3854 7D 6B 3A 14 */ add r11, r11, r7 -/* 801C7BF8 001C3858 7C EA 41 D6 */ mullw r7, r10, r8 -/* 801C7BFC 001C385C 89 5E 00 06 */ lbz r10, 6(r30) -/* 801C7C00 001C3860 89 1D FF FA */ lbz r8, -6(r29) -/* 801C7C04 001C3864 7D 6B 3A 14 */ add r11, r11, r7 -/* 801C7C08 001C3868 7C EA 41 D6 */ mullw r7, r10, r8 -/* 801C7C0C 001C386C 89 5E 00 07 */ lbz r10, 7(r30) -/* 801C7C10 001C3870 89 1D FF F9 */ lbz r8, -7(r29) -/* 801C7C14 001C3874 3B DE 00 08 */ addi r30, r30, 8 -/* 801C7C18 001C3878 3B BD FF F8 */ addi r29, r29, -8 -/* 801C7C1C 001C387C 7D 6B 3A 14 */ add r11, r11, r7 -/* 801C7C20 001C3880 7C EA 41 D6 */ mullw r7, r10, r8 -/* 801C7C24 001C3884 7D 6B 3A 14 */ add r11, r11, r7 -/* 801C7C28 001C3888 42 00 FF 78 */ bdnz lbl_801C7BA0 -/* 801C7C2C 001C388C 73 FF 00 07 */ andi. r31, r31, 7 -/* 801C7C30 001C3890 41 82 00 24 */ beq lbl_801C7C54 -lbl_801C7C34: -/* 801C7C34 001C3894 7F E9 03 A6 */ mtctr r31 -lbl_801C7C38: -/* 801C7C38 001C3898 89 5E 00 00 */ lbz r10, 0(r30) -/* 801C7C3C 001C389C 3B DE 00 01 */ addi r30, r30, 1 -/* 801C7C40 001C38A0 89 1D 00 00 */ lbz r8, 0(r29) -/* 801C7C44 001C38A4 3B BD FF FF */ addi r29, r29, -1 -/* 801C7C48 001C38A8 7C EA 41 D6 */ mullw r7, r10, r8 -/* 801C7C4C 001C38AC 7D 6B 3A 14 */ add r11, r11, r7 -/* 801C7C50 001C38B0 42 00 FF E8 */ bdnz lbl_801C7C38 -lbl_801C7C54: -/* 801C7C54 001C38B4 7D 09 58 16 */ mulhwu r8, r9, r11 -/* 801C7C58 001C38B8 39 8C FF FF */ addi r12, r12, -1 -/* 801C7C5C 001C38BC 7D 07 43 78 */ mr r7, r8 -/* 801C7C60 001C38C0 55 08 E8 FE */ srwi r8, r8, 3 -/* 801C7C64 001C38C4 1D 08 00 0A */ mulli r8, r8, 0xa -/* 801C7C68 001C38C8 7D 08 58 50 */ subf r8, r8, r11 -/* 801C7C6C 001C38CC 54 EB E8 FE */ srwi r11, r7, 3 -/* 801C7C70 001C38D0 9D 06 FF FF */ stbu r8, -1(r6) -lbl_801C7C74: -/* 801C7C74 001C38D4 2C 0C 00 00 */ cmpwi r12, 0 -/* 801C7C78 001C38D8 41 81 FE D0 */ bgt lbl_801C7B48 -/* 801C7C7C 001C38DC A8 E4 00 02 */ lha r7, 2(r4) -/* 801C7C80 001C38E0 2C 0B 00 00 */ cmpwi r11, 0 -/* 801C7C84 001C38E4 A8 85 00 02 */ lha r4, 2(r5) -/* 801C7C88 001C38E8 7C 87 22 14 */ add r4, r7, r4 -/* 801C7C8C 001C38EC B0 83 00 02 */ sth r4, 2(r3) -/* 801C7C90 001C38F0 41 82 00 14 */ beq lbl_801C7CA4 -/* 801C7C94 001C38F4 9D 66 FF FF */ stbu r11, -1(r6) -/* 801C7C98 001C38F8 A8 83 00 02 */ lha r4, 2(r3) -/* 801C7C9C 001C38FC 38 84 00 01 */ addi r4, r4, 1 -/* 801C7CA0 001C3900 B0 83 00 02 */ sth r4, 2(r3) -lbl_801C7CA4: -/* 801C7CA4 001C3904 38 E0 00 00 */ li r7, 0 -/* 801C7CA8 001C3908 48 00 00 18 */ b lbl_801C7CC0 -lbl_801C7CAC: -/* 801C7CAC 001C390C 88 A6 00 00 */ lbz r5, 0(r6) -/* 801C7CB0 001C3910 7C 83 3A 14 */ add r4, r3, r7 -/* 801C7CB4 001C3914 38 E7 00 01 */ addi r7, r7, 1 -/* 801C7CB8 001C3918 38 C6 00 01 */ addi r6, r6, 1 -/* 801C7CBC 001C391C 98 A4 00 05 */ stb r5, 5(r4) -lbl_801C7CC0: -/* 801C7CC0 001C3920 2C 07 00 24 */ cmpwi r7, 0x24 -/* 801C7CC4 001C3924 40 80 00 0C */ bge lbl_801C7CD0 -/* 801C7CC8 001C3928 7C 06 00 40 */ cmplw r6, r0 -/* 801C7CCC 001C392C 41 80 FF E0 */ blt lbl_801C7CAC -lbl_801C7CD0: -/* 801C7CD0 001C3930 7C 06 00 40 */ cmplw r6, r0 -/* 801C7CD4 001C3934 98 E3 00 04 */ stb r7, 4(r3) -/* 801C7CD8 001C3938 40 80 00 A0 */ bge lbl_801C7D78 -/* 801C7CDC 001C393C 88 86 00 00 */ lbz r4, 0(r6) -/* 801C7CE0 001C3940 28 04 00 05 */ cmplwi r4, 5 -/* 801C7CE4 001C3944 41 80 00 94 */ blt lbl_801C7D78 -/* 801C7CE8 001C3948 40 82 00 38 */ bne lbl_801C7D20 -/* 801C7CEC 001C394C 38 A6 00 01 */ addi r5, r6, 1 -/* 801C7CF0 001C3950 7C 85 00 50 */ subf r4, r5, r0 -/* 801C7CF4 001C3954 7C 89 03 A6 */ mtctr r4 -/* 801C7CF8 001C3958 7C 05 00 40 */ cmplw r5, r0 -/* 801C7CFC 001C395C 40 80 00 18 */ bge lbl_801C7D14 -lbl_801C7D00: -/* 801C7D00 001C3960 88 05 00 00 */ lbz r0, 0(r5) -/* 801C7D04 001C3964 2C 00 00 00 */ cmpwi r0, 0 -/* 801C7D08 001C3968 40 82 00 18 */ bne lbl_801C7D20 -/* 801C7D0C 001C396C 38 A5 00 01 */ addi r5, r5, 1 -/* 801C7D10 001C3970 42 00 FF F0 */ bdnz lbl_801C7D00 -lbl_801C7D14: -/* 801C7D14 001C3974 88 06 FF FF */ lbz r0, -1(r6) -/* 801C7D18 001C3978 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 801C7D1C 001C397C 41 82 00 5C */ beq lbl_801C7D78 -lbl_801C7D20: -/* 801C7D20 001C3980 88 83 00 04 */ lbz r4, 4(r3) -/* 801C7D24 001C3984 38 C3 00 05 */ addi r6, r3, 5 -/* 801C7D28 001C3988 38 00 00 00 */ li r0, 0 -/* 801C7D2C 001C398C 7C A6 22 14 */ add r5, r6, r4 -/* 801C7D30 001C3990 38 A5 FF FF */ addi r5, r5, -1 -lbl_801C7D34: -/* 801C7D34 001C3994 88 85 00 00 */ lbz r4, 0(r5) -/* 801C7D38 001C3998 28 04 00 09 */ cmplwi r4, 9 -/* 801C7D3C 001C399C 40 80 00 10 */ bge lbl_801C7D4C -/* 801C7D40 001C39A0 38 04 00 01 */ addi r0, r4, 1 -/* 801C7D44 001C39A4 98 05 00 00 */ stb r0, 0(r5) -/* 801C7D48 001C39A8 48 00 00 30 */ b lbl_801C7D78 -lbl_801C7D4C: -/* 801C7D4C 001C39AC 7C 05 30 40 */ cmplw r5, r6 -/* 801C7D50 001C39B0 40 82 00 1C */ bne lbl_801C7D6C -/* 801C7D54 001C39B4 38 00 00 01 */ li r0, 1 -/* 801C7D58 001C39B8 98 05 00 00 */ stb r0, 0(r5) -/* 801C7D5C 001C39BC A8 83 00 02 */ lha r4, 2(r3) -/* 801C7D60 001C39C0 38 04 00 01 */ addi r0, r4, 1 -/* 801C7D64 001C39C4 B0 03 00 02 */ sth r0, 2(r3) -/* 801C7D68 001C39C8 48 00 00 10 */ b lbl_801C7D78 -lbl_801C7D6C: -/* 801C7D6C 001C39CC 98 05 00 00 */ stb r0, 0(r5) -/* 801C7D70 001C39D0 38 A5 FF FF */ addi r5, r5, -1 -/* 801C7D74 001C39D4 4B FF FF C0 */ b lbl_801C7D34 -lbl_801C7D78: -/* 801C7D78 001C39D8 83 E1 00 5C */ lwz r31, 0x5c(r1) -/* 801C7D7C 001C39DC 83 C1 00 58 */ lwz r30, 0x58(r1) -/* 801C7D80 001C39E0 83 A1 00 54 */ lwz r29, 0x54(r1) -/* 801C7D84 001C39E4 38 21 00 60 */ addi r1, r1, 0x60 -/* 801C7D88 001C39E8 4E 80 00 20 */ blr - -.global func_801C7D8C -func_801C7D8C: -/* 801C7D8C 001C39EC 38 00 00 00 */ li r0, 0 -/* 801C7D90 001C39F0 B0 A3 00 02 */ sth r5, 2(r3) -/* 801C7D94 001C39F4 38 E0 00 00 */ li r7, 0 -/* 801C7D98 001C39F8 98 03 00 00 */ stb r0, 0(r3) -/* 801C7D9C 001C39FC 48 00 00 1C */ b lbl_801C7DB8 -lbl_801C7DA0: -/* 801C7DA0 001C3A00 88 C4 00 00 */ lbz r6, 0(r4) -/* 801C7DA4 001C3A04 7C A3 3A 14 */ add r5, r3, r7 -/* 801C7DA8 001C3A08 38 84 00 01 */ addi r4, r4, 1 -/* 801C7DAC 001C3A0C 38 E7 00 01 */ addi r7, r7, 1 -/* 801C7DB0 001C3A10 38 06 FF D0 */ addi r0, r6, -48 -/* 801C7DB4 001C3A14 98 05 00 05 */ stb r0, 5(r5) -lbl_801C7DB8: -/* 801C7DB8 001C3A18 2C 07 00 24 */ cmpwi r7, 0x24 -/* 801C7DBC 001C3A1C 40 80 00 10 */ bge lbl_801C7DCC -/* 801C7DC0 001C3A20 88 04 00 00 */ lbz r0, 0(r4) -/* 801C7DC4 001C3A24 7C 00 07 75 */ extsb. r0, r0 -/* 801C7DC8 001C3A28 40 82 FF D8 */ bne lbl_801C7DA0 -lbl_801C7DCC: -/* 801C7DCC 001C3A2C 88 04 00 00 */ lbz r0, 0(r4) -/* 801C7DD0 001C3A30 98 E3 00 04 */ stb r7, 4(r3) -/* 801C7DD4 001C3A34 7C 00 07 75 */ extsb. r0, r0 -/* 801C7DD8 001C3A38 4D 82 00 20 */ beqlr -/* 801C7DDC 001C3A3C 2C 00 00 05 */ cmpwi r0, 5 -/* 801C7DE0 001C3A40 4D 80 00 20 */ bltlr -/* 801C7DE4 001C3A44 41 81 00 38 */ bgt lbl_801C7E1C -/* 801C7DE8 001C3A48 38 A4 00 01 */ addi r5, r4, 1 -/* 801C7DEC 001C3A4C 48 00 00 14 */ b lbl_801C7E00 -lbl_801C7DF0: -/* 801C7DF0 001C3A50 7C 80 07 74 */ extsb r0, r4 -/* 801C7DF4 001C3A54 2C 00 00 30 */ cmpwi r0, 0x30 -/* 801C7DF8 001C3A58 40 82 00 24 */ bne lbl_801C7E1C -/* 801C7DFC 001C3A5C 38 A5 00 01 */ addi r5, r5, 1 -lbl_801C7E00: -/* 801C7E00 001C3A60 88 85 00 00 */ lbz r4, 0(r5) -/* 801C7E04 001C3A64 7C 80 07 75 */ extsb. r0, r4 -/* 801C7E08 001C3A68 40 82 FF E8 */ bne lbl_801C7DF0 -/* 801C7E0C 001C3A6C 7C 87 1A 14 */ add r4, r7, r3 -/* 801C7E10 001C3A70 88 04 00 04 */ lbz r0, 4(r4) -/* 801C7E14 001C3A74 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 801C7E18 001C3A78 4D 82 00 20 */ beqlr -lbl_801C7E1C: -/* 801C7E1C 001C3A7C 88 83 00 04 */ lbz r4, 4(r3) -/* 801C7E20 001C3A80 38 C3 00 05 */ addi r6, r3, 5 -/* 801C7E24 001C3A84 38 00 00 00 */ li r0, 0 -/* 801C7E28 001C3A88 7C A6 22 14 */ add r5, r6, r4 -/* 801C7E2C 001C3A8C 38 A5 FF FF */ addi r5, r5, -1 -lbl_801C7E30: -/* 801C7E30 001C3A90 88 85 00 00 */ lbz r4, 0(r5) -/* 801C7E34 001C3A94 28 04 00 09 */ cmplwi r4, 9 -/* 801C7E38 001C3A98 40 80 00 10 */ bge lbl_801C7E48 -/* 801C7E3C 001C3A9C 38 04 00 01 */ addi r0, r4, 1 -/* 801C7E40 001C3AA0 98 05 00 00 */ stb r0, 0(r5) -/* 801C7E44 001C3AA4 4E 80 00 20 */ blr -lbl_801C7E48: -/* 801C7E48 001C3AA8 7C 05 30 40 */ cmplw r5, r6 -/* 801C7E4C 001C3AAC 40 82 00 1C */ bne lbl_801C7E68 -/* 801C7E50 001C3AB0 38 00 00 01 */ li r0, 1 -/* 801C7E54 001C3AB4 98 05 00 00 */ stb r0, 0(r5) -/* 801C7E58 001C3AB8 A8 83 00 02 */ lha r4, 2(r3) -/* 801C7E5C 001C3ABC 38 04 00 01 */ addi r0, r4, 1 -/* 801C7E60 001C3AC0 B0 03 00 02 */ sth r0, 2(r3) -/* 801C7E64 001C3AC4 4E 80 00 20 */ blr -lbl_801C7E68: -/* 801C7E68 001C3AC8 98 05 00 00 */ stb r0, 0(r5) -/* 801C7E6C 001C3ACC 38 A5 FF FF */ addi r5, r5, -1 -/* 801C7E70 001C3AD0 4B FF FF C0 */ b lbl_801C7E30 -/* 801C7E74 001C3AD4 4E 80 00 20 */ blr - -.global func_801C7E78 -func_801C7E78: -/* 801C7E78 001C3AD8 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 801C7E7C 001C3ADC 7C 08 02 A6 */ mflr r0 -/* 801C7E80 001C3AE0 90 01 00 74 */ stw r0, 0x74(r1) -/* 801C7E84 001C3AE4 38 04 00 40 */ addi r0, r4, 0x40 -/* 801C7E88 001C3AE8 28 00 00 48 */ cmplwi r0, 0x48 -/* 801C7E8C 001C3AEC 93 E1 00 6C */ stw r31, 0x6c(r1) -/* 801C7E90 001C3AF0 7C 7F 1B 78 */ mr r31, r3 -/* 801C7E94 001C3AF4 93 C1 00 68 */ stw r30, 0x68(r1) -/* 801C7E98 001C3AF8 7C 9E 23 78 */ mr r30, r4 -/* 801C7E9C 001C3AFC 41 81 02 10 */ bgt lbl_801C80AC -/* 801C7EA0 001C3B00 3C A0 80 42 */ lis r5, lbl_80422A30@ha -/* 801C7EA4 001C3B04 54 00 10 3A */ slwi r0, r0, 2 -/* 801C7EA8 001C3B08 38 A5 2A 30 */ addi r5, r5, lbl_80422A30@l -/* 801C7EAC 001C3B0C 7C A5 00 2E */ lwzx r5, r5, r0 -/* 801C7EB0 001C3B10 7C A9 03 A6 */ mtctr r5 -/* 801C7EB4 001C3B14 4E 80 04 20 */ bctr -/* 801C7EB8 001C3B18 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7EBC 001C3B1C 38 A0 FF EC */ li r5, -20 -/* 801C7EC0 001C3B20 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7EC4 001C3B24 4B FF FE C9 */ bl func_801C7D8C -/* 801C7EC8 001C3B28 48 00 03 04 */ b lbl_801C81CC -/* 801C7ECC 001C3B2C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7ED0 001C3B30 38 A0 FF F0 */ li r5, -16 -/* 801C7ED4 001C3B34 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7ED8 001C3B38 38 84 00 2E */ addi r4, r4, 0x2e -/* 801C7EDC 001C3B3C 4B FF FE B1 */ bl func_801C7D8C -/* 801C7EE0 001C3B40 48 00 02 EC */ b lbl_801C81CC -/* 801C7EE4 001C3B44 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7EE8 001C3B48 38 A0 FF F6 */ li r5, -10 -/* 801C7EEC 001C3B4C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7EF0 001C3B50 38 84 00 55 */ addi r4, r4, 0x55 -/* 801C7EF4 001C3B54 4B FF FE 99 */ bl func_801C7D8C -/* 801C7EF8 001C3B58 48 00 02 D4 */ b lbl_801C81CC -/* 801C7EFC 001C3B5C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7F00 001C3B60 38 A0 FF FB */ li r5, -5 -/* 801C7F04 001C3B64 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7F08 001C3B68 38 84 00 6D */ addi r4, r4, 0x6d -/* 801C7F0C 001C3B6C 4B FF FE 81 */ bl func_801C7D8C -/* 801C7F10 001C3B70 48 00 02 BC */ b lbl_801C81CC -/* 801C7F14 001C3B74 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7F18 001C3B78 38 A0 FF FD */ li r5, -3 -/* 801C7F1C 001C3B7C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7F20 001C3B80 38 84 00 7A */ addi r4, r4, 0x7a -/* 801C7F24 001C3B84 4B FF FE 69 */ bl func_801C7D8C -/* 801C7F28 001C3B88 48 00 02 A4 */ b lbl_801C81CC -/* 801C7F2C 001C3B8C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7F30 001C3B90 38 A0 FF FD */ li r5, -3 -/* 801C7F34 001C3B94 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7F38 001C3B98 38 84 00 81 */ addi r4, r4, 0x81 -/* 801C7F3C 001C3B9C 4B FF FE 51 */ bl func_801C7D8C -/* 801C7F40 001C3BA0 48 00 02 8C */ b lbl_801C81CC -/* 801C7F44 001C3BA4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7F48 001C3BA8 38 A0 FF FE */ li r5, -2 -/* 801C7F4C 001C3BAC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7F50 001C3BB0 38 84 00 87 */ addi r4, r4, 0x87 -/* 801C7F54 001C3BB4 4B FF FE 39 */ bl func_801C7D8C -/* 801C7F58 001C3BB8 48 00 02 74 */ b lbl_801C81CC -/* 801C7F5C 001C3BBC 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7F60 001C3BC0 38 A0 FF FE */ li r5, -2 -/* 801C7F64 001C3BC4 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7F68 001C3BC8 38 84 00 8D */ addi r4, r4, 0x8d -/* 801C7F6C 001C3BCC 4B FF FE 21 */ bl func_801C7D8C -/* 801C7F70 001C3BD0 48 00 02 5C */ b lbl_801C81CC -/* 801C7F74 001C3BD4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7F78 001C3BD8 38 A0 FF FE */ li r5, -2 -/* 801C7F7C 001C3BDC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7F80 001C3BE0 38 84 00 92 */ addi r4, r4, 0x92 -/* 801C7F84 001C3BE4 4B FF FE 09 */ bl func_801C7D8C -/* 801C7F88 001C3BE8 48 00 02 44 */ b lbl_801C81CC -/* 801C7F8C 001C3BEC 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7F90 001C3BF0 38 A0 FF FF */ li r5, -1 -/* 801C7F94 001C3BF4 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7F98 001C3BF8 38 84 00 96 */ addi r4, r4, 0x96 -/* 801C7F9C 001C3BFC 4B FF FD F1 */ bl func_801C7D8C -/* 801C7FA0 001C3C00 48 00 02 2C */ b lbl_801C81CC -/* 801C7FA4 001C3C04 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7FA8 001C3C08 38 A0 FF FF */ li r5, -1 -/* 801C7FAC 001C3C0C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7FB0 001C3C10 38 84 00 9A */ addi r4, r4, 0x9a -/* 801C7FB4 001C3C14 4B FF FD D9 */ bl func_801C7D8C -/* 801C7FB8 001C3C18 48 00 02 14 */ b lbl_801C81CC -/* 801C7FBC 001C3C1C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7FC0 001C3C20 38 A0 FF FF */ li r5, -1 -/* 801C7FC4 001C3C24 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7FC8 001C3C28 38 84 00 9D */ addi r4, r4, 0x9d -/* 801C7FCC 001C3C2C 4B FF FD C1 */ bl func_801C7D8C -/* 801C7FD0 001C3C30 48 00 01 FC */ b lbl_801C81CC -/* 801C7FD4 001C3C34 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7FD8 001C3C38 38 A0 00 00 */ li r5, 0 -/* 801C7FDC 001C3C3C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7FE0 001C3C40 38 84 00 9F */ addi r4, r4, 0x9f -/* 801C7FE4 001C3C44 4B FF FD A9 */ bl func_801C7D8C -/* 801C7FE8 001C3C48 48 00 01 E4 */ b lbl_801C81CC -/* 801C7FEC 001C3C4C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C7FF0 001C3C50 38 A0 00 00 */ li r5, 0 -/* 801C7FF4 001C3C54 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C7FF8 001C3C58 38 84 00 A1 */ addi r4, r4, 0xa1 -/* 801C7FFC 001C3C5C 4B FF FD 91 */ bl func_801C7D8C -/* 801C8000 001C3C60 48 00 01 CC */ b lbl_801C81CC -/* 801C8004 001C3C64 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C8008 001C3C68 38 A0 00 00 */ li r5, 0 -/* 801C800C 001C3C6C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C8010 001C3C70 38 84 00 A3 */ addi r4, r4, 0xa3 -/* 801C8014 001C3C74 4B FF FD 79 */ bl func_801C7D8C -/* 801C8018 001C3C78 48 00 01 B4 */ b lbl_801C81CC -/* 801C801C 001C3C7C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C8020 001C3C80 38 A0 00 00 */ li r5, 0 -/* 801C8024 001C3C84 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C8028 001C3C88 38 84 00 A5 */ addi r4, r4, 0xa5 -/* 801C802C 001C3C8C 4B FF FD 61 */ bl func_801C7D8C -/* 801C8030 001C3C90 48 00 01 9C */ b lbl_801C81CC -/* 801C8034 001C3C94 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C8038 001C3C98 38 A0 00 01 */ li r5, 1 -/* 801C803C 001C3C9C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C8040 001C3CA0 38 84 00 A7 */ addi r4, r4, 0xa7 -/* 801C8044 001C3CA4 4B FF FD 49 */ bl func_801C7D8C -/* 801C8048 001C3CA8 48 00 01 84 */ b lbl_801C81CC -/* 801C804C 001C3CAC 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C8050 001C3CB0 38 A0 00 01 */ li r5, 1 -/* 801C8054 001C3CB4 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C8058 001C3CB8 38 84 00 AA */ addi r4, r4, 0xaa -/* 801C805C 001C3CBC 4B FF FD 31 */ bl func_801C7D8C -/* 801C8060 001C3CC0 48 00 01 6C */ b lbl_801C81CC -/* 801C8064 001C3CC4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C8068 001C3CC8 38 A0 00 01 */ li r5, 1 -/* 801C806C 001C3CCC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C8070 001C3CD0 38 84 00 AD */ addi r4, r4, 0xad -/* 801C8074 001C3CD4 4B FF FD 19 */ bl func_801C7D8C -/* 801C8078 001C3CD8 48 00 01 54 */ b lbl_801C81CC -/* 801C807C 001C3CDC 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C8080 001C3CE0 38 A0 00 02 */ li r5, 2 -/* 801C8084 001C3CE4 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C8088 001C3CE8 38 84 00 B0 */ addi r4, r4, 0xb0 -/* 801C808C 001C3CEC 4B FF FD 01 */ bl func_801C7D8C -/* 801C8090 001C3CF0 48 00 01 3C */ b lbl_801C81CC -/* 801C8094 001C3CF4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C8098 001C3CF8 38 A0 00 02 */ li r5, 2 -/* 801C809C 001C3CFC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C80A0 001C3D00 38 84 00 B4 */ addi r4, r4, 0xb4 -/* 801C80A4 001C3D04 4B FF FC E9 */ bl func_801C7D8C -/* 801C80A8 001C3D08 48 00 01 24 */ b lbl_801C81CC -lbl_801C80AC: -/* 801C80AC 001C3D0C 54 80 0F FE */ srwi r0, r4, 0x1f -/* 801C80B0 001C3D10 38 61 00 34 */ addi r3, r1, 0x34 -/* 801C80B4 001C3D14 7C 00 22 14 */ add r0, r0, r4 -/* 801C80B8 001C3D18 7C 04 0E 70 */ srawi r4, r0, 1 -/* 801C80BC 001C3D1C 4B FF FD BD */ bl func_801C7E78 -/* 801C80C0 001C3D20 38 81 00 34 */ addi r4, r1, 0x34 -/* 801C80C4 001C3D24 7F E3 FB 78 */ mr r3, r31 -/* 801C80C8 001C3D28 7C 85 23 78 */ mr r5, r4 -/* 801C80CC 001C3D2C 4B FF FA 39 */ bl func_801C7B04 -/* 801C80D0 001C3D30 57 C0 07 FF */ clrlwi. r0, r30, 0x1f -/* 801C80D4 001C3D34 41 82 00 F8 */ beq lbl_801C81CC -/* 801C80D8 001C3D38 A0 7F 00 00 */ lhz r3, 0(r31) -/* 801C80DC 001C3D3C 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C80E0 001C3D40 A0 1F 00 02 */ lhz r0, 2(r31) -/* 801C80E4 001C3D44 B0 61 00 08 */ sth r3, 8(r1) -/* 801C80E8 001C3D48 B0 01 00 0A */ sth r0, 0xa(r1) -/* 801C80EC 001C3D4C A0 7F 00 04 */ lhz r3, 4(r31) -/* 801C80F0 001C3D50 A0 1F 00 06 */ lhz r0, 6(r31) -/* 801C80F4 001C3D54 B0 61 00 0C */ sth r3, 0xc(r1) -/* 801C80F8 001C3D58 B0 01 00 0E */ sth r0, 0xe(r1) -/* 801C80FC 001C3D5C A0 7F 00 08 */ lhz r3, 8(r31) -/* 801C8100 001C3D60 A0 1F 00 0A */ lhz r0, 0xa(r31) -/* 801C8104 001C3D64 B0 61 00 10 */ sth r3, 0x10(r1) -/* 801C8108 001C3D68 B0 01 00 12 */ sth r0, 0x12(r1) -/* 801C810C 001C3D6C A0 7F 00 0C */ lhz r3, 0xc(r31) -/* 801C8110 001C3D70 A0 1F 00 0E */ lhz r0, 0xe(r31) -/* 801C8114 001C3D74 B0 61 00 14 */ sth r3, 0x14(r1) -/* 801C8118 001C3D78 B0 01 00 16 */ sth r0, 0x16(r1) -/* 801C811C 001C3D7C A0 7F 00 10 */ lhz r3, 0x10(r31) -/* 801C8120 001C3D80 A0 1F 00 12 */ lhz r0, 0x12(r31) -/* 801C8124 001C3D84 B0 61 00 18 */ sth r3, 0x18(r1) -/* 801C8128 001C3D88 B0 01 00 1A */ sth r0, 0x1a(r1) -/* 801C812C 001C3D8C A0 7F 00 14 */ lhz r3, 0x14(r31) -/* 801C8130 001C3D90 A0 1F 00 16 */ lhz r0, 0x16(r31) -/* 801C8134 001C3D94 B0 61 00 1C */ sth r3, 0x1c(r1) -/* 801C8138 001C3D98 B0 01 00 1E */ sth r0, 0x1e(r1) -/* 801C813C 001C3D9C A0 7F 00 18 */ lhz r3, 0x18(r31) -/* 801C8140 001C3DA0 A0 1F 00 1A */ lhz r0, 0x1a(r31) -/* 801C8144 001C3DA4 B0 61 00 20 */ sth r3, 0x20(r1) -/* 801C8148 001C3DA8 B0 01 00 22 */ sth r0, 0x22(r1) -/* 801C814C 001C3DAC A0 7F 00 1C */ lhz r3, 0x1c(r31) -/* 801C8150 001C3DB0 A0 1F 00 1E */ lhz r0, 0x1e(r31) -/* 801C8154 001C3DB4 B0 61 00 24 */ sth r3, 0x24(r1) -/* 801C8158 001C3DB8 B0 01 00 26 */ sth r0, 0x26(r1) -/* 801C815C 001C3DBC A0 7F 00 20 */ lhz r3, 0x20(r31) -/* 801C8160 001C3DC0 A0 1F 00 22 */ lhz r0, 0x22(r31) -/* 801C8164 001C3DC4 B0 61 00 28 */ sth r3, 0x28(r1) -/* 801C8168 001C3DC8 B0 01 00 2A */ sth r0, 0x2a(r1) -/* 801C816C 001C3DCC A0 7F 00 24 */ lhz r3, 0x24(r31) -/* 801C8170 001C3DD0 A0 1F 00 26 */ lhz r0, 0x26(r31) -/* 801C8174 001C3DD4 B0 61 00 2C */ sth r3, 0x2c(r1) -/* 801C8178 001C3DD8 B0 01 00 2E */ sth r0, 0x2e(r1) -/* 801C817C 001C3DDC A0 1F 00 28 */ lhz r0, 0x28(r31) -/* 801C8180 001C3DE0 B0 01 00 30 */ sth r0, 0x30(r1) -/* 801C8184 001C3DE4 40 81 00 20 */ ble lbl_801C81A4 -/* 801C8188 001C3DE8 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C818C 001C3DEC 38 61 00 34 */ addi r3, r1, 0x34 -/* 801C8190 001C3DF0 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C8194 001C3DF4 38 A0 00 00 */ li r5, 0 -/* 801C8198 001C3DF8 38 84 00 A1 */ addi r4, r4, 0xa1 -/* 801C819C 001C3DFC 4B FF FB F1 */ bl func_801C7D8C -/* 801C81A0 001C3E00 48 00 00 1C */ b lbl_801C81BC -lbl_801C81A4: -/* 801C81A4 001C3E04 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C81A8 001C3E08 38 61 00 34 */ addi r3, r1, 0x34 -/* 801C81AC 001C3E0C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C81B0 001C3E10 38 A0 FF FF */ li r5, -1 -/* 801C81B4 001C3E14 38 84 00 9D */ addi r4, r4, 0x9d -/* 801C81B8 001C3E18 4B FF FB D5 */ bl func_801C7D8C -lbl_801C81BC: -/* 801C81BC 001C3E1C 7F E3 FB 78 */ mr r3, r31 -/* 801C81C0 001C3E20 38 81 00 08 */ addi r4, r1, 8 -/* 801C81C4 001C3E24 38 A1 00 34 */ addi r5, r1, 0x34 -/* 801C81C8 001C3E28 4B FF F9 3D */ bl func_801C7B04 -lbl_801C81CC: -/* 801C81CC 001C3E2C 80 01 00 74 */ lwz r0, 0x74(r1) -/* 801C81D0 001C3E30 83 E1 00 6C */ lwz r31, 0x6c(r1) -/* 801C81D4 001C3E34 83 C1 00 68 */ lwz r30, 0x68(r1) -/* 801C81D8 001C3E38 7C 08 03 A6 */ mtlr r0 -/* 801C81DC 001C3E3C 38 21 00 70 */ addi r1, r1, 0x70 -/* 801C81E0 001C3E40 4E 80 00 20 */ blr - -.global func_801C81E4 -func_801C81E4: -/* 801C81E4 001C3E44 88 A3 00 05 */ lbz r5, 5(r3) -/* 801C81E8 001C3E48 2C 05 00 00 */ cmpwi r5, 0 -/* 801C81EC 001C3E4C 40 82 00 14 */ bne lbl_801C8200 -/* 801C81F0 001C3E50 88 04 00 05 */ lbz r0, 5(r4) -/* 801C81F4 001C3E54 7C 00 00 34 */ cntlzw r0, r0 -/* 801C81F8 001C3E58 54 03 D9 7E */ srwi r3, r0, 5 -/* 801C81FC 001C3E5C 4E 80 00 20 */ blr -lbl_801C8200: -/* 801C8200 001C3E60 88 04 00 05 */ lbz r0, 5(r4) -/* 801C8204 001C3E64 2C 00 00 00 */ cmpwi r0, 0 -/* 801C8208 001C3E68 40 82 00 10 */ bne lbl_801C8218 -/* 801C820C 001C3E6C 7C A0 00 34 */ cntlzw r0, r5 -/* 801C8210 001C3E70 54 03 D9 7E */ srwi r3, r0, 5 -/* 801C8214 001C3E74 4E 80 00 20 */ blr -lbl_801C8218: -/* 801C8218 001C3E78 A8 A3 00 02 */ lha r5, 2(r3) -/* 801C821C 001C3E7C A8 04 00 02 */ lha r0, 2(r4) -/* 801C8220 001C3E80 7C 05 00 00 */ cmpw r5, r0 -/* 801C8224 001C3E84 40 82 00 9C */ bne lbl_801C82C0 -/* 801C8228 001C3E88 88 E3 00 04 */ lbz r7, 4(r3) -/* 801C822C 001C3E8C 88 04 00 04 */ lbz r0, 4(r4) -/* 801C8230 001C3E90 7C E9 3B 78 */ mr r9, r7 -/* 801C8234 001C3E94 7C 07 00 00 */ cmpw r7, r0 -/* 801C8238 001C3E98 40 81 00 08 */ ble lbl_801C8240 -/* 801C823C 001C3E9C 7C 09 03 78 */ mr r9, r0 -lbl_801C8240: -/* 801C8240 001C3EA0 39 00 00 00 */ li r8, 0 -/* 801C8244 001C3EA4 7D 29 03 A6 */ mtctr r9 -/* 801C8248 001C3EA8 2C 09 00 00 */ cmpwi r9, 0 -/* 801C824C 001C3EAC 40 81 00 2C */ ble lbl_801C8278 -lbl_801C8250: -/* 801C8250 001C3EB0 7C C3 42 14 */ add r6, r3, r8 -/* 801C8254 001C3EB4 7C A4 42 14 */ add r5, r4, r8 -/* 801C8258 001C3EB8 88 C6 00 05 */ lbz r6, 5(r6) -/* 801C825C 001C3EBC 88 05 00 05 */ lbz r0, 5(r5) -/* 801C8260 001C3EC0 7C 06 00 40 */ cmplw r6, r0 -/* 801C8264 001C3EC4 41 82 00 0C */ beq lbl_801C8270 -/* 801C8268 001C3EC8 38 60 00 00 */ li r3, 0 -/* 801C826C 001C3ECC 4E 80 00 20 */ blr -lbl_801C8270: -/* 801C8270 001C3ED0 39 08 00 01 */ addi r8, r8, 1 -/* 801C8274 001C3ED4 42 00 FF DC */ bdnz lbl_801C8250 -lbl_801C8278: -/* 801C8278 001C3ED8 7C 09 38 00 */ cmpw r9, r7 -/* 801C827C 001C3EDC 40 82 00 08 */ bne lbl_801C8284 -/* 801C8280 001C3EE0 7C 83 23 78 */ mr r3, r4 -lbl_801C8284: -/* 801C8284 001C3EE4 88 83 00 04 */ lbz r4, 4(r3) -/* 801C8288 001C3EE8 7C 08 20 50 */ subf r0, r8, r4 -/* 801C828C 001C3EEC 7C 09 03 A6 */ mtctr r0 -/* 801C8290 001C3EF0 7C 08 20 00 */ cmpw r8, r4 -/* 801C8294 001C3EF4 40 80 00 24 */ bge lbl_801C82B8 -lbl_801C8298: -/* 801C8298 001C3EF8 7C 83 42 14 */ add r4, r3, r8 -/* 801C829C 001C3EFC 88 04 00 05 */ lbz r0, 5(r4) -/* 801C82A0 001C3F00 2C 00 00 00 */ cmpwi r0, 0 -/* 801C82A4 001C3F04 41 82 00 0C */ beq lbl_801C82B0 -/* 801C82A8 001C3F08 38 60 00 00 */ li r3, 0 -/* 801C82AC 001C3F0C 4E 80 00 20 */ blr -lbl_801C82B0: -/* 801C82B0 001C3F10 39 08 00 01 */ addi r8, r8, 1 -/* 801C82B4 001C3F14 42 00 FF E4 */ bdnz lbl_801C8298 -lbl_801C82B8: -/* 801C82B8 001C3F18 38 60 00 01 */ li r3, 1 -/* 801C82BC 001C3F1C 4E 80 00 20 */ blr -lbl_801C82C0: -/* 801C82C0 001C3F20 38 60 00 00 */ li r3, 0 -/* 801C82C4 001C3F24 4E 80 00 20 */ blr - -.global func_801C82C8 -func_801C82C8: -/* 801C82C8 001C3F28 88 03 00 05 */ lbz r0, 5(r3) -/* 801C82CC 001C3F2C 2C 00 00 00 */ cmpwi r0, 0 -/* 801C82D0 001C3F30 40 82 00 18 */ bne lbl_801C82E8 -/* 801C82D4 001C3F34 88 64 00 05 */ lbz r3, 5(r4) -/* 801C82D8 001C3F38 7C 03 00 D0 */ neg r0, r3 -/* 801C82DC 001C3F3C 7C 00 1B 78 */ or r0, r0, r3 -/* 801C82E0 001C3F40 54 03 0F FE */ srwi r3, r0, 0x1f -/* 801C82E4 001C3F44 4E 80 00 20 */ blr -lbl_801C82E8: -/* 801C82E8 001C3F48 88 04 00 05 */ lbz r0, 5(r4) -/* 801C82EC 001C3F4C 2C 00 00 00 */ cmpwi r0, 0 -/* 801C82F0 001C3F50 40 82 00 0C */ bne lbl_801C82FC -/* 801C82F4 001C3F54 38 60 00 00 */ li r3, 0 -/* 801C82F8 001C3F58 4E 80 00 20 */ blr -lbl_801C82FC: -/* 801C82FC 001C3F5C A8 A4 00 02 */ lha r5, 2(r4) -/* 801C8300 001C3F60 A8 03 00 02 */ lha r0, 2(r3) -/* 801C8304 001C3F64 7C 00 28 00 */ cmpw r0, r5 -/* 801C8308 001C3F68 40 82 00 A8 */ bne lbl_801C83B0 -/* 801C830C 001C3F6C 88 E3 00 04 */ lbz r7, 4(r3) -/* 801C8310 001C3F70 88 04 00 04 */ lbz r0, 4(r4) -/* 801C8314 001C3F74 7C E9 3B 78 */ mr r9, r7 -/* 801C8318 001C3F78 7C 07 00 00 */ cmpw r7, r0 -/* 801C831C 001C3F7C 40 81 00 08 */ ble lbl_801C8324 -/* 801C8320 001C3F80 7C 09 03 78 */ mr r9, r0 -lbl_801C8324: -/* 801C8324 001C3F84 39 00 00 00 */ li r8, 0 -/* 801C8328 001C3F88 7D 29 03 A6 */ mtctr r9 -/* 801C832C 001C3F8C 2C 09 00 00 */ cmpwi r9, 0 -/* 801C8330 001C3F90 40 81 00 3C */ ble lbl_801C836C -lbl_801C8334: -/* 801C8334 001C3F94 7C C4 42 14 */ add r6, r4, r8 -/* 801C8338 001C3F98 7C A3 42 14 */ add r5, r3, r8 -/* 801C833C 001C3F9C 88 C6 00 05 */ lbz r6, 5(r6) -/* 801C8340 001C3FA0 88 05 00 05 */ lbz r0, 5(r5) -/* 801C8344 001C3FA4 7C 00 30 40 */ cmplw r0, r6 -/* 801C8348 001C3FA8 40 80 00 0C */ bge lbl_801C8354 -/* 801C834C 001C3FAC 38 60 00 01 */ li r3, 1 -/* 801C8350 001C3FB0 4E 80 00 20 */ blr -lbl_801C8354: -/* 801C8354 001C3FB4 7C 06 00 40 */ cmplw r6, r0 -/* 801C8358 001C3FB8 40 80 00 0C */ bge lbl_801C8364 -/* 801C835C 001C3FBC 38 60 00 00 */ li r3, 0 -/* 801C8360 001C3FC0 4E 80 00 20 */ blr -lbl_801C8364: -/* 801C8364 001C3FC4 39 08 00 01 */ addi r8, r8, 1 -/* 801C8368 001C3FC8 42 00 FF CC */ bdnz lbl_801C8334 -lbl_801C836C: -/* 801C836C 001C3FCC 7C 09 38 00 */ cmpw r9, r7 -/* 801C8370 001C3FD0 40 82 00 38 */ bne lbl_801C83A8 -/* 801C8374 001C3FD4 88 64 00 04 */ lbz r3, 4(r4) -/* 801C8378 001C3FD8 7C 08 18 50 */ subf r0, r8, r3 -/* 801C837C 001C3FDC 7C 09 03 A6 */ mtctr r0 -/* 801C8380 001C3FE0 7C 08 18 00 */ cmpw r8, r3 -/* 801C8384 001C3FE4 40 80 00 24 */ bge lbl_801C83A8 -lbl_801C8388: -/* 801C8388 001C3FE8 7C 64 42 14 */ add r3, r4, r8 -/* 801C838C 001C3FEC 88 03 00 05 */ lbz r0, 5(r3) -/* 801C8390 001C3FF0 2C 00 00 00 */ cmpwi r0, 0 -/* 801C8394 001C3FF4 41 82 00 0C */ beq lbl_801C83A0 -/* 801C8398 001C3FF8 38 60 00 01 */ li r3, 1 -/* 801C839C 001C3FFC 4E 80 00 20 */ blr -lbl_801C83A0: -/* 801C83A0 001C4000 39 08 00 01 */ addi r8, r8, 1 -/* 801C83A4 001C4004 42 00 FF E4 */ bdnz lbl_801C8388 -lbl_801C83A8: -/* 801C83A8 001C4008 38 60 00 00 */ li r3, 0 -/* 801C83AC 001C400C 4E 80 00 20 */ blr -lbl_801C83B0: -/* 801C83B0 001C4010 7C A0 02 78 */ xor r0, r5, r0 -/* 801C83B4 001C4014 7C 03 0E 70 */ srawi r3, r0, 1 -/* 801C83B8 001C4018 7C 00 28 38 */ and r0, r0, r5 -/* 801C83BC 001C401C 7C 00 18 50 */ subf r0, r0, r3 -/* 801C83C0 001C4020 54 03 0F FE */ srwi r3, r0, 0x1f -/* 801C83C4 001C4024 4E 80 00 20 */ blr - -.global func_801C83C8 -func_801C83C8: -/* 801C83C8 001C4028 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 801C83CC 001C402C A1 84 00 1A */ lhz r12, 0x1a(r4) -/* 801C83D0 001C4030 BE 61 00 0C */ stmw r19, 0xc(r1) -/* 801C83D4 001C4034 A2 64 00 00 */ lhz r19, 0(r4) -/* 801C83D8 001C4038 A2 84 00 02 */ lhz r20, 2(r4) -/* 801C83DC 001C403C A2 A4 00 04 */ lhz r21, 4(r4) -/* 801C83E0 001C4040 A2 C4 00 06 */ lhz r22, 6(r4) -/* 801C83E4 001C4044 A2 E4 00 08 */ lhz r23, 8(r4) -/* 801C83E8 001C4048 A3 04 00 0A */ lhz r24, 0xa(r4) -/* 801C83EC 001C404C A3 24 00 0C */ lhz r25, 0xc(r4) -/* 801C83F0 001C4050 A3 44 00 0E */ lhz r26, 0xe(r4) -/* 801C83F4 001C4054 A3 64 00 10 */ lhz r27, 0x10(r4) -/* 801C83F8 001C4058 A3 84 00 12 */ lhz r28, 0x12(r4) -/* 801C83FC 001C405C A3 A4 00 14 */ lhz r29, 0x14(r4) -/* 801C8400 001C4060 A3 C4 00 16 */ lhz r30, 0x16(r4) -/* 801C8404 001C4064 A3 E4 00 18 */ lhz r31, 0x18(r4) -/* 801C8408 001C4068 A1 64 00 1C */ lhz r11, 0x1c(r4) -/* 801C840C 001C406C A1 44 00 1E */ lhz r10, 0x1e(r4) -/* 801C8410 001C4070 A1 24 00 20 */ lhz r9, 0x20(r4) -/* 801C8414 001C4074 A1 04 00 22 */ lhz r8, 0x22(r4) -/* 801C8418 001C4078 A0 E4 00 24 */ lhz r7, 0x24(r4) -/* 801C841C 001C407C A0 C4 00 26 */ lhz r6, 0x26(r4) -/* 801C8420 001C4080 A0 04 00 28 */ lhz r0, 0x28(r4) -/* 801C8424 001C4084 B2 63 00 00 */ sth r19, 0(r3) -/* 801C8428 001C4088 B2 83 00 02 */ sth r20, 2(r3) -/* 801C842C 001C408C B2 A3 00 04 */ sth r21, 4(r3) -/* 801C8430 001C4090 B2 C3 00 06 */ sth r22, 6(r3) -/* 801C8434 001C4094 B2 E3 00 08 */ sth r23, 8(r3) -/* 801C8438 001C4098 B3 03 00 0A */ sth r24, 0xa(r3) -/* 801C843C 001C409C B3 23 00 0C */ sth r25, 0xc(r3) -/* 801C8440 001C40A0 B3 43 00 0E */ sth r26, 0xe(r3) -/* 801C8444 001C40A4 B3 63 00 10 */ sth r27, 0x10(r3) -/* 801C8448 001C40A8 B3 83 00 12 */ sth r28, 0x12(r3) -/* 801C844C 001C40AC B3 A3 00 14 */ sth r29, 0x14(r3) -/* 801C8450 001C40B0 B3 C3 00 16 */ sth r30, 0x16(r3) -/* 801C8454 001C40B4 B3 E3 00 18 */ sth r31, 0x18(r3) -/* 801C8458 001C40B8 B1 83 00 1A */ sth r12, 0x1a(r3) -/* 801C845C 001C40BC B1 63 00 1C */ sth r11, 0x1c(r3) -/* 801C8460 001C40C0 B1 43 00 1E */ sth r10, 0x1e(r3) -/* 801C8464 001C40C4 B1 23 00 20 */ sth r9, 0x20(r3) -/* 801C8468 001C40C8 B1 03 00 22 */ sth r8, 0x22(r3) -/* 801C846C 001C40CC B0 E3 00 24 */ sth r7, 0x24(r3) -/* 801C8470 001C40D0 B0 C3 00 26 */ sth r6, 0x26(r3) -/* 801C8474 001C40D4 B0 03 00 28 */ sth r0, 0x28(r3) -/* 801C8478 001C40D8 88 05 00 05 */ lbz r0, 5(r5) -/* 801C847C 001C40DC 2C 00 00 00 */ cmpwi r0, 0 -/* 801C8480 001C40E0 41 82 04 58 */ beq lbl_801C88D8 -/* 801C8484 001C40E4 89 03 00 04 */ lbz r8, 4(r3) -/* 801C8488 001C40E8 88 05 00 04 */ lbz r0, 4(r5) -/* 801C848C 001C40EC 7C 08 00 00 */ cmpw r8, r0 -/* 801C8490 001C40F0 40 80 00 08 */ bge lbl_801C8498 -/* 801C8494 001C40F4 7C 08 03 78 */ mr r8, r0 -lbl_801C8498: -/* 801C8498 001C40F8 A8 85 00 02 */ lha r4, 2(r5) -/* 801C849C 001C40FC A8 03 00 02 */ lha r0, 2(r3) -/* 801C84A0 001C4100 7C 04 00 50 */ subf r0, r4, r0 -/* 801C84A4 001C4104 7D 08 02 14 */ add r8, r8, r0 -/* 801C84A8 001C4108 2C 08 00 24 */ cmpwi r8, 0x24 -/* 801C84AC 001C410C 40 81 00 08 */ ble lbl_801C84B4 -/* 801C84B0 001C4110 39 00 00 24 */ li r8, 0x24 -lbl_801C84B4: -/* 801C84B4 001C4114 38 E0 00 00 */ li r7, 0 -/* 801C84B8 001C4118 48 00 00 18 */ b lbl_801C84D0 -lbl_801C84BC: -/* 801C84BC 001C411C 88 C3 00 04 */ lbz r6, 4(r3) -/* 801C84C0 001C4120 7C 83 32 14 */ add r4, r3, r6 -/* 801C84C4 001C4124 38 C6 00 01 */ addi r6, r6, 1 -/* 801C84C8 001C4128 98 E4 00 05 */ stb r7, 5(r4) -/* 801C84CC 001C412C 98 C3 00 04 */ stb r6, 4(r3) -lbl_801C84D0: -/* 801C84D0 001C4130 88 83 00 04 */ lbz r4, 4(r3) -/* 801C84D4 001C4134 7C 04 40 00 */ cmpw r4, r8 -/* 801C84D8 001C4138 41 80 FF E4 */ blt lbl_801C84BC -/* 801C84DC 001C413C 88 E5 00 04 */ lbz r7, 4(r5) -/* 801C84E0 001C4140 38 83 00 05 */ addi r4, r3, 5 -/* 801C84E4 001C4144 7C C4 42 14 */ add r6, r4, r8 -/* 801C84E8 001C4148 7C E7 02 14 */ add r7, r7, r0 -/* 801C84EC 001C414C 7C 07 40 00 */ cmpw r7, r8 -/* 801C84F0 001C4150 40 80 00 08 */ bge lbl_801C84F8 -/* 801C84F4 001C4154 7C C4 3A 14 */ add r6, r4, r7 -lbl_801C84F8: -/* 801C84F8 001C4158 7C E4 30 50 */ subf r7, r4, r6 -/* 801C84FC 001C415C 39 25 00 05 */ addi r9, r5, 5 -/* 801C8500 001C4160 7C E0 38 50 */ subf r7, r0, r7 -/* 801C8504 001C4164 7D 49 3A 14 */ add r10, r9, r7 -/* 801C8508 001C4168 7D 4B 53 78 */ mr r11, r10 -/* 801C850C 001C416C 48 00 01 24 */ b lbl_801C8630 -lbl_801C8510: -/* 801C8510 001C4170 8D 06 FF FF */ lbzu r8, -1(r6) -/* 801C8514 001C4174 8C EA FF FF */ lbzu r7, -1(r10) -/* 801C8518 001C4178 7C 08 38 40 */ cmplw r8, r7 -/* 801C851C 001C417C 40 80 01 04 */ bge lbl_801C8620 -/* 801C8520 001C4180 39 86 FF FF */ addi r12, r6, -1 -/* 801C8524 001C4184 48 00 00 08 */ b lbl_801C852C -lbl_801C8528: -/* 801C8528 001C4188 39 8C FF FF */ addi r12, r12, -1 -lbl_801C852C: -/* 801C852C 001C418C 88 EC 00 00 */ lbz r7, 0(r12) -/* 801C8530 001C4190 2C 07 00 00 */ cmpwi r7, 0 -/* 801C8534 001C4194 41 82 FF F4 */ beq lbl_801C8528 -/* 801C8538 001C4198 7C 0C 30 40 */ cmplw r12, r6 -/* 801C853C 001C419C 7D 0C 30 50 */ subf r8, r12, r6 -/* 801C8540 001C41A0 41 82 00 E0 */ beq lbl_801C8620 -/* 801C8544 001C41A4 55 07 E8 FF */ rlwinm. r7, r8, 0x1d, 3, 0x1f -/* 801C8548 001C41A8 7C E9 03 A6 */ mtctr r7 -/* 801C854C 001C41AC 41 82 00 B4 */ beq lbl_801C8600 -lbl_801C8550: -/* 801C8550 001C41B0 88 EC 00 00 */ lbz r7, 0(r12) -/* 801C8554 001C41B4 38 E7 FF FF */ addi r7, r7, -1 -/* 801C8558 001C41B8 98 EC 00 00 */ stb r7, 0(r12) -/* 801C855C 001C41BC 88 EC 00 01 */ lbz r7, 1(r12) -/* 801C8560 001C41C0 38 E7 00 0A */ addi r7, r7, 0xa -/* 801C8564 001C41C4 54 E7 06 3E */ clrlwi r7, r7, 0x18 -/* 801C8568 001C41C8 38 E7 FF FF */ addi r7, r7, -1 -/* 801C856C 001C41CC 98 EC 00 01 */ stb r7, 1(r12) -/* 801C8570 001C41D0 88 EC 00 02 */ lbz r7, 2(r12) -/* 801C8574 001C41D4 38 E7 00 0A */ addi r7, r7, 0xa -/* 801C8578 001C41D8 54 E7 06 3E */ clrlwi r7, r7, 0x18 -/* 801C857C 001C41DC 38 E7 FF FF */ addi r7, r7, -1 -/* 801C8580 001C41E0 98 EC 00 02 */ stb r7, 2(r12) -/* 801C8584 001C41E4 88 EC 00 03 */ lbz r7, 3(r12) -/* 801C8588 001C41E8 38 E7 00 0A */ addi r7, r7, 0xa -/* 801C858C 001C41EC 54 E7 06 3E */ clrlwi r7, r7, 0x18 -/* 801C8590 001C41F0 38 E7 FF FF */ addi r7, r7, -1 -/* 801C8594 001C41F4 98 EC 00 03 */ stb r7, 3(r12) -/* 801C8598 001C41F8 88 EC 00 04 */ lbz r7, 4(r12) -/* 801C859C 001C41FC 38 E7 00 0A */ addi r7, r7, 0xa -/* 801C85A0 001C4200 54 E7 06 3E */ clrlwi r7, r7, 0x18 -/* 801C85A4 001C4204 38 E7 FF FF */ addi r7, r7, -1 -/* 801C85A8 001C4208 98 EC 00 04 */ stb r7, 4(r12) -/* 801C85AC 001C420C 88 EC 00 05 */ lbz r7, 5(r12) -/* 801C85B0 001C4210 38 E7 00 0A */ addi r7, r7, 0xa -/* 801C85B4 001C4214 54 E7 06 3E */ clrlwi r7, r7, 0x18 -/* 801C85B8 001C4218 38 E7 FF FF */ addi r7, r7, -1 -/* 801C85BC 001C421C 98 EC 00 05 */ stb r7, 5(r12) -/* 801C85C0 001C4220 88 EC 00 06 */ lbz r7, 6(r12) -/* 801C85C4 001C4224 38 E7 00 0A */ addi r7, r7, 0xa -/* 801C85C8 001C4228 54 E7 06 3E */ clrlwi r7, r7, 0x18 -/* 801C85CC 001C422C 38 E7 FF FF */ addi r7, r7, -1 -/* 801C85D0 001C4230 98 EC 00 06 */ stb r7, 6(r12) -/* 801C85D4 001C4234 88 EC 00 07 */ lbz r7, 7(r12) -/* 801C85D8 001C4238 38 E7 00 0A */ addi r7, r7, 0xa -/* 801C85DC 001C423C 54 E7 06 3E */ clrlwi r7, r7, 0x18 -/* 801C85E0 001C4240 38 E7 FF FF */ addi r7, r7, -1 -/* 801C85E4 001C4244 98 EC 00 07 */ stb r7, 7(r12) -/* 801C85E8 001C4248 88 EC 00 08 */ lbz r7, 8(r12) -/* 801C85EC 001C424C 38 E7 00 0A */ addi r7, r7, 0xa -/* 801C85F0 001C4250 9C EC 00 08 */ stbu r7, 8(r12) -/* 801C85F4 001C4254 42 00 FF 5C */ bdnz lbl_801C8550 -/* 801C85F8 001C4258 71 08 00 07 */ andi. r8, r8, 7 -/* 801C85FC 001C425C 41 82 00 24 */ beq lbl_801C8620 -lbl_801C8600: -/* 801C8600 001C4260 7D 09 03 A6 */ mtctr r8 -lbl_801C8604: -/* 801C8604 001C4264 88 EC 00 00 */ lbz r7, 0(r12) -/* 801C8608 001C4268 38 E7 FF FF */ addi r7, r7, -1 -/* 801C860C 001C426C 98 EC 00 00 */ stb r7, 0(r12) -/* 801C8610 001C4270 88 EC 00 01 */ lbz r7, 1(r12) -/* 801C8614 001C4274 38 E7 00 0A */ addi r7, r7, 0xa -/* 801C8618 001C4278 9C EC 00 01 */ stbu r7, 1(r12) -/* 801C861C 001C427C 42 00 FF E8 */ bdnz lbl_801C8604 -lbl_801C8620: -/* 801C8620 001C4280 89 0A 00 00 */ lbz r8, 0(r10) -/* 801C8624 001C4284 88 E6 00 00 */ lbz r7, 0(r6) -/* 801C8628 001C4288 7C E8 38 50 */ subf r7, r8, r7 -/* 801C862C 001C428C 98 E6 00 00 */ stb r7, 0(r6) -lbl_801C8630: -/* 801C8630 001C4290 7C 06 20 40 */ cmplw r6, r4 -/* 801C8634 001C4294 40 81 00 0C */ ble lbl_801C8640 -/* 801C8638 001C4298 7C 0A 48 40 */ cmplw r10, r9 -/* 801C863C 001C429C 41 81 FE D4 */ bgt lbl_801C8510 -lbl_801C8640: -/* 801C8640 001C42A0 89 05 00 04 */ lbz r8, 4(r5) -/* 801C8644 001C42A4 7D 29 58 50 */ subf r9, r9, r11 -/* 801C8648 001C42A8 7C 09 40 00 */ cmpw r9, r8 -/* 801C864C 001C42AC 40 80 01 88 */ bge lbl_801C87D4 -/* 801C8650 001C42B0 88 EB 00 00 */ lbz r7, 0(r11) -/* 801C8654 001C42B4 39 40 00 00 */ li r10, 0 -/* 801C8658 001C42B8 28 07 00 05 */ cmplwi r7, 5 -/* 801C865C 001C42BC 40 80 00 0C */ bge lbl_801C8668 -/* 801C8660 001C42C0 39 40 00 01 */ li r10, 1 -/* 801C8664 001C42C4 48 00 00 50 */ b lbl_801C86B4 -lbl_801C8668: -/* 801C8668 001C42C8 40 82 00 4C */ bne lbl_801C86B4 -/* 801C866C 001C42CC 7C A5 42 14 */ add r5, r5, r8 -/* 801C8670 001C42D0 38 CB 00 01 */ addi r6, r11, 1 -/* 801C8674 001C42D4 38 E5 00 05 */ addi r7, r5, 5 -/* 801C8678 001C42D8 7C A6 38 50 */ subf r5, r6, r7 -/* 801C867C 001C42DC 7C A9 03 A6 */ mtctr r5 -/* 801C8680 001C42E0 7C 06 38 40 */ cmplw r6, r7 -/* 801C8684 001C42E4 40 80 00 18 */ bge lbl_801C869C -lbl_801C8688: -/* 801C8688 001C42E8 88 A6 00 00 */ lbz r5, 0(r6) -/* 801C868C 001C42EC 2C 05 00 00 */ cmpwi r5, 0 -/* 801C8690 001C42F0 40 82 01 44 */ bne lbl_801C87D4 -/* 801C8694 001C42F4 38 C6 00 01 */ addi r6, r6, 1 -/* 801C8698 001C42F8 42 00 FF F0 */ bdnz lbl_801C8688 -lbl_801C869C: -/* 801C869C 001C42FC 7C A4 4A 14 */ add r5, r4, r9 -/* 801C86A0 001C4300 7C C0 2A 14 */ add r6, r0, r5 -/* 801C86A4 001C4304 8C 06 FF FF */ lbzu r0, -1(r6) -/* 801C86A8 001C4308 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 801C86AC 001C430C 41 82 00 08 */ beq lbl_801C86B4 -/* 801C86B0 001C4310 39 40 00 01 */ li r10, 1 -lbl_801C86B4: -/* 801C86B4 001C4314 2C 0A 00 00 */ cmpwi r10, 0 -/* 801C86B8 001C4318 41 82 01 1C */ beq lbl_801C87D4 -/* 801C86BC 001C431C 88 06 00 00 */ lbz r0, 0(r6) -/* 801C86C0 001C4320 28 00 00 01 */ cmplwi r0, 1 -/* 801C86C4 001C4324 40 80 01 04 */ bge lbl_801C87C8 -/* 801C86C8 001C4328 39 06 FF FF */ addi r8, r6, -1 -/* 801C86CC 001C432C 48 00 00 08 */ b lbl_801C86D4 -lbl_801C86D0: -/* 801C86D0 001C4330 39 08 FF FF */ addi r8, r8, -1 -lbl_801C86D4: -/* 801C86D4 001C4334 88 08 00 00 */ lbz r0, 0(r8) -/* 801C86D8 001C4338 2C 00 00 00 */ cmpwi r0, 0 -/* 801C86DC 001C433C 41 82 FF F4 */ beq lbl_801C86D0 -/* 801C86E0 001C4340 7C 08 30 40 */ cmplw r8, r6 -/* 801C86E4 001C4344 7C A8 30 50 */ subf r5, r8, r6 -/* 801C86E8 001C4348 41 82 00 E0 */ beq lbl_801C87C8 -/* 801C86EC 001C434C 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f -/* 801C86F0 001C4350 7C 09 03 A6 */ mtctr r0 -/* 801C86F4 001C4354 41 82 00 B4 */ beq lbl_801C87A8 -lbl_801C86F8: -/* 801C86F8 001C4358 88 E8 00 00 */ lbz r7, 0(r8) -/* 801C86FC 001C435C 38 07 FF FF */ addi r0, r7, -1 -/* 801C8700 001C4360 98 08 00 00 */ stb r0, 0(r8) -/* 801C8704 001C4364 88 E8 00 01 */ lbz r7, 1(r8) -/* 801C8708 001C4368 38 07 00 0A */ addi r0, r7, 0xa -/* 801C870C 001C436C 54 07 06 3E */ clrlwi r7, r0, 0x18 -/* 801C8710 001C4370 38 07 FF FF */ addi r0, r7, -1 -/* 801C8714 001C4374 98 08 00 01 */ stb r0, 1(r8) -/* 801C8718 001C4378 88 E8 00 02 */ lbz r7, 2(r8) -/* 801C871C 001C437C 38 07 00 0A */ addi r0, r7, 0xa -/* 801C8720 001C4380 54 07 06 3E */ clrlwi r7, r0, 0x18 -/* 801C8724 001C4384 38 07 FF FF */ addi r0, r7, -1 -/* 801C8728 001C4388 98 08 00 02 */ stb r0, 2(r8) -/* 801C872C 001C438C 88 E8 00 03 */ lbz r7, 3(r8) -/* 801C8730 001C4390 38 07 00 0A */ addi r0, r7, 0xa -/* 801C8734 001C4394 54 07 06 3E */ clrlwi r7, r0, 0x18 -/* 801C8738 001C4398 38 07 FF FF */ addi r0, r7, -1 -/* 801C873C 001C439C 98 08 00 03 */ stb r0, 3(r8) -/* 801C8740 001C43A0 88 E8 00 04 */ lbz r7, 4(r8) -/* 801C8744 001C43A4 38 07 00 0A */ addi r0, r7, 0xa -/* 801C8748 001C43A8 54 07 06 3E */ clrlwi r7, r0, 0x18 -/* 801C874C 001C43AC 38 07 FF FF */ addi r0, r7, -1 -/* 801C8750 001C43B0 98 08 00 04 */ stb r0, 4(r8) -/* 801C8754 001C43B4 88 E8 00 05 */ lbz r7, 5(r8) -/* 801C8758 001C43B8 38 07 00 0A */ addi r0, r7, 0xa -/* 801C875C 001C43BC 54 07 06 3E */ clrlwi r7, r0, 0x18 -/* 801C8760 001C43C0 38 07 FF FF */ addi r0, r7, -1 -/* 801C8764 001C43C4 98 08 00 05 */ stb r0, 5(r8) -/* 801C8768 001C43C8 88 E8 00 06 */ lbz r7, 6(r8) -/* 801C876C 001C43CC 38 07 00 0A */ addi r0, r7, 0xa -/* 801C8770 001C43D0 54 07 06 3E */ clrlwi r7, r0, 0x18 -/* 801C8774 001C43D4 38 07 FF FF */ addi r0, r7, -1 -/* 801C8778 001C43D8 98 08 00 06 */ stb r0, 6(r8) -/* 801C877C 001C43DC 88 E8 00 07 */ lbz r7, 7(r8) -/* 801C8780 001C43E0 38 07 00 0A */ addi r0, r7, 0xa -/* 801C8784 001C43E4 54 07 06 3E */ clrlwi r7, r0, 0x18 -/* 801C8788 001C43E8 38 07 FF FF */ addi r0, r7, -1 -/* 801C878C 001C43EC 98 08 00 07 */ stb r0, 7(r8) -/* 801C8790 001C43F0 88 E8 00 08 */ lbz r7, 8(r8) -/* 801C8794 001C43F4 38 07 00 0A */ addi r0, r7, 0xa -/* 801C8798 001C43F8 9C 08 00 08 */ stbu r0, 8(r8) -/* 801C879C 001C43FC 42 00 FF 5C */ bdnz lbl_801C86F8 -/* 801C87A0 001C4400 70 A5 00 07 */ andi. r5, r5, 7 -/* 801C87A4 001C4404 41 82 00 24 */ beq lbl_801C87C8 -lbl_801C87A8: -/* 801C87A8 001C4408 7C A9 03 A6 */ mtctr r5 -lbl_801C87AC: -/* 801C87AC 001C440C 88 E8 00 00 */ lbz r7, 0(r8) -/* 801C87B0 001C4410 38 07 FF FF */ addi r0, r7, -1 -/* 801C87B4 001C4414 98 08 00 00 */ stb r0, 0(r8) -/* 801C87B8 001C4418 88 E8 00 01 */ lbz r7, 1(r8) -/* 801C87BC 001C441C 38 07 00 0A */ addi r0, r7, 0xa -/* 801C87C0 001C4420 9C 08 00 01 */ stbu r0, 1(r8) -/* 801C87C4 001C4424 42 00 FF E8 */ bdnz lbl_801C87AC -lbl_801C87C8: -/* 801C87C8 001C4428 88 A6 00 00 */ lbz r5, 0(r6) -/* 801C87CC 001C442C 38 05 FF FF */ addi r0, r5, -1 -/* 801C87D0 001C4430 98 06 00 00 */ stb r0, 0(r6) -lbl_801C87D4: -/* 801C87D4 001C4434 7C 87 23 78 */ mr r7, r4 -/* 801C87D8 001C4438 48 00 00 08 */ b lbl_801C87E0 -lbl_801C87DC: -/* 801C87DC 001C443C 38 E7 00 01 */ addi r7, r7, 1 -lbl_801C87E0: -/* 801C87E0 001C4440 88 07 00 00 */ lbz r0, 0(r7) -/* 801C87E4 001C4444 2C 00 00 00 */ cmpwi r0, 0 -/* 801C87E8 001C4448 41 82 FF F4 */ beq lbl_801C87DC -/* 801C87EC 001C444C 7C 07 20 40 */ cmplw r7, r4 -/* 801C87F0 001C4450 40 81 00 B0 */ ble lbl_801C88A0 -/* 801C87F4 001C4454 88 03 00 04 */ lbz r0, 4(r3) -/* 801C87F8 001C4458 7C C4 38 50 */ subf r6, r4, r7 -/* 801C87FC 001C445C A8 A3 00 02 */ lha r5, 2(r3) -/* 801C8800 001C4460 54 C8 06 3E */ clrlwi r8, r6, 0x18 -/* 801C8804 001C4464 7C C4 02 14 */ add r6, r4, r0 -/* 801C8808 001C4468 7C 08 28 50 */ subf r0, r8, r5 -/* 801C880C 001C446C 7C 07 30 40 */ cmplw r7, r6 -/* 801C8810 001C4470 B0 03 00 02 */ sth r0, 2(r3) -/* 801C8814 001C4474 7C A7 30 50 */ subf r5, r7, r6 -/* 801C8818 001C4478 40 80 00 7C */ bge lbl_801C8894 -/* 801C881C 001C447C 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f -/* 801C8820 001C4480 7C 09 03 A6 */ mtctr r0 -/* 801C8824 001C4484 41 82 00 58 */ beq lbl_801C887C -lbl_801C8828: -/* 801C8828 001C4488 88 07 00 00 */ lbz r0, 0(r7) -/* 801C882C 001C448C 98 04 00 00 */ stb r0, 0(r4) -/* 801C8830 001C4490 88 07 00 01 */ lbz r0, 1(r7) -/* 801C8834 001C4494 98 04 00 01 */ stb r0, 1(r4) -/* 801C8838 001C4498 88 07 00 02 */ lbz r0, 2(r7) -/* 801C883C 001C449C 98 04 00 02 */ stb r0, 2(r4) -/* 801C8840 001C44A0 88 07 00 03 */ lbz r0, 3(r7) -/* 801C8844 001C44A4 98 04 00 03 */ stb r0, 3(r4) -/* 801C8848 001C44A8 88 07 00 04 */ lbz r0, 4(r7) -/* 801C884C 001C44AC 98 04 00 04 */ stb r0, 4(r4) -/* 801C8850 001C44B0 88 07 00 05 */ lbz r0, 5(r7) -/* 801C8854 001C44B4 98 04 00 05 */ stb r0, 5(r4) -/* 801C8858 001C44B8 88 07 00 06 */ lbz r0, 6(r7) -/* 801C885C 001C44BC 98 04 00 06 */ stb r0, 6(r4) -/* 801C8860 001C44C0 88 07 00 07 */ lbz r0, 7(r7) -/* 801C8864 001C44C4 38 E7 00 08 */ addi r7, r7, 8 -/* 801C8868 001C44C8 98 04 00 07 */ stb r0, 7(r4) -/* 801C886C 001C44CC 38 84 00 08 */ addi r4, r4, 8 -/* 801C8870 001C44D0 42 00 FF B8 */ bdnz lbl_801C8828 -/* 801C8874 001C44D4 70 A5 00 07 */ andi. r5, r5, 7 -/* 801C8878 001C44D8 41 82 00 1C */ beq lbl_801C8894 -lbl_801C887C: -/* 801C887C 001C44DC 7C A9 03 A6 */ mtctr r5 -lbl_801C8880: -/* 801C8880 001C44E0 88 07 00 00 */ lbz r0, 0(r7) -/* 801C8884 001C44E4 38 E7 00 01 */ addi r7, r7, 1 -/* 801C8888 001C44E8 98 04 00 00 */ stb r0, 0(r4) -/* 801C888C 001C44EC 38 84 00 01 */ addi r4, r4, 1 -/* 801C8890 001C44F0 42 00 FF F0 */ bdnz lbl_801C8880 -lbl_801C8894: -/* 801C8894 001C44F4 88 03 00 04 */ lbz r0, 4(r3) -/* 801C8898 001C44F8 7C 08 00 50 */ subf r0, r8, r0 -/* 801C889C 001C44FC 98 03 00 04 */ stb r0, 4(r3) -lbl_801C88A0: -/* 801C88A0 001C4500 88 03 00 04 */ lbz r0, 4(r3) -/* 801C88A4 001C4504 38 83 00 05 */ addi r4, r3, 5 -/* 801C88A8 001C4508 7C A4 02 14 */ add r5, r4, r0 -/* 801C88AC 001C450C 7C 04 28 50 */ subf r0, r4, r5 -/* 801C88B0 001C4510 7C 09 03 A6 */ mtctr r0 -/* 801C88B4 001C4514 7C 05 20 40 */ cmplw r5, r4 -/* 801C88B8 001C4518 40 81 00 14 */ ble lbl_801C88CC -lbl_801C88BC: -/* 801C88BC 001C451C 8C 05 FF FF */ lbzu r0, -1(r5) -/* 801C88C0 001C4520 2C 00 00 00 */ cmpwi r0, 0 -/* 801C88C4 001C4524 40 82 00 08 */ bne lbl_801C88CC -/* 801C88C8 001C4528 42 00 FF F4 */ bdnz lbl_801C88BC -lbl_801C88CC: -/* 801C88CC 001C452C 7C 84 28 50 */ subf r4, r4, r5 -/* 801C88D0 001C4530 38 04 00 01 */ addi r0, r4, 1 -/* 801C88D4 001C4534 98 03 00 04 */ stb r0, 4(r3) -lbl_801C88D8: -/* 801C88D8 001C4538 BA 61 00 0C */ lmw r19, 0xc(r1) -/* 801C88DC 001C453C 38 21 00 40 */ addi r1, r1, 0x40 -/* 801C88E0 001C4540 4E 80 00 20 */ blr - -.global func_801C88E4 -func_801C88E4: -/* 801C88E4 001C4544 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 801C88E8 001C4548 7C 08 02 A6 */ mflr r0 -/* 801C88EC 001C454C 90 01 00 94 */ stw r0, 0x94(r1) -/* 801C88F0 001C4550 DB E1 00 88 */ stfd f31, 0x88(r1) -/* 801C88F4 001C4554 FF E0 08 90 */ fmr f31, f1 -/* 801C88F8 001C4558 93 E1 00 84 */ stw r31, 0x84(r1) -/* 801C88FC 001C455C 93 C1 00 80 */ stw r30, 0x80(r1) -/* 801C8900 001C4560 7C 7E 1B 78 */ mr r30, r3 -/* 801C8904 001C4564 93 A1 00 7C */ stw r29, 0x7c(r1) -/* 801C8908 001C4568 48 00 1E 11 */ bl func_801CA718 -/* 801C890C 001C456C C8 02 90 F8 */ lfd f0, lbl_806416F8-_SDA2_BASE_(r2) -/* 801C8910 001C4570 7C 03 00 D0 */ neg r0, r3 -/* 801C8914 001C4574 7C 00 1B 78 */ or r0, r0, r3 -/* 801C8918 001C4578 FC 00 F8 00 */ fcmpu cr0, f0, f31 -/* 801C891C 001C457C 54 00 0F FE */ srwi r0, r0, 0x1f -/* 801C8920 001C4580 7C 1F 07 74 */ extsb r31, r0 -/* 801C8924 001C4584 40 82 00 20 */ bne lbl_801C8944 -/* 801C8928 001C4588 38 60 00 00 */ li r3, 0 -/* 801C892C 001C458C 38 00 00 01 */ li r0, 1 -/* 801C8930 001C4590 9B FE 00 00 */ stb r31, 0(r30) -/* 801C8934 001C4594 B0 7E 00 02 */ sth r3, 2(r30) -/* 801C8938 001C4598 98 1E 00 04 */ stb r0, 4(r30) -/* 801C893C 001C459C 98 7E 00 05 */ stb r3, 5(r30) -/* 801C8940 001C45A0 48 00 00 E8 */ b lbl_801C8A28 -lbl_801C8944: -/* 801C8944 001C45A4 FC 20 F8 90 */ fmr f1, f31 -/* 801C8948 001C45A8 48 00 1D E9 */ bl func_801CA730 -/* 801C894C 001C45AC 2C 03 00 02 */ cmpwi r3, 2 -/* 801C8950 001C45B0 41 81 00 38 */ bgt lbl_801C8988 -/* 801C8954 001C45B4 38 60 00 00 */ li r3, 0 -/* 801C8958 001C45B8 38 00 00 01 */ li r0, 1 -/* 801C895C 001C45BC FC 20 F8 90 */ fmr f1, f31 -/* 801C8960 001C45C0 9B FE 00 00 */ stb r31, 0(r30) -/* 801C8964 001C45C4 B0 7E 00 02 */ sth r3, 2(r30) -/* 801C8968 001C45C8 98 1E 00 04 */ stb r0, 4(r30) -/* 801C896C 001C45CC 48 00 1D C5 */ bl func_801CA730 -/* 801C8970 001C45D0 2C 03 00 01 */ cmpwi r3, 1 -/* 801C8974 001C45D4 38 00 00 49 */ li r0, 0x49 -/* 801C8978 001C45D8 40 82 00 08 */ bne lbl_801C8980 -/* 801C897C 001C45DC 38 00 00 4E */ li r0, 0x4e -lbl_801C8980: -/* 801C8980 001C45E0 98 1E 00 05 */ stb r0, 5(r30) -/* 801C8984 001C45E4 48 00 00 A4 */ b lbl_801C8A28 -lbl_801C8988: -/* 801C8988 001C45E8 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C898C 001C45EC 41 82 00 08 */ beq lbl_801C8994 -/* 801C8990 001C45F0 FF E0 F8 50 */ fneg f31, f31 -lbl_801C8994: -/* 801C8994 001C45F4 FC 20 F8 90 */ fmr f1, f31 -/* 801C8998 001C45F8 38 61 00 08 */ addi r3, r1, 8 -/* 801C899C 001C45FC 48 00 B8 F5 */ bl func_801D4290 -/* 801C89A0 001C4600 D8 21 00 10 */ stfd f1, 0x10(r1) -/* 801C89A4 001C4604 FF E0 08 90 */ fmr f31, f1 -/* 801C89A8 001C4608 80 81 00 14 */ lwz r4, 0x14(r1) -/* 801C89AC 001C460C 80 61 00 10 */ lwz r3, 0x10(r1) -/* 801C89B0 001C4610 38 04 FF FF */ addi r0, r4, -1 -/* 801C89B4 001C4614 2C 04 00 00 */ cmpwi r4, 0 -/* 801C89B8 001C4618 7C 00 20 78 */ andc r0, r0, r4 -/* 801C89BC 001C461C 64 63 00 10 */ oris r3, r3, 0x10 -/* 801C89C0 001C4620 7C 00 00 34 */ cntlzw r0, r0 -/* 801C89C4 001C4624 20 80 00 20 */ subfic r4, r0, 0x20 -/* 801C89C8 001C4628 40 82 00 18 */ bne lbl_801C89E0 -/* 801C89CC 001C462C 38 03 FF FF */ addi r0, r3, -1 -/* 801C89D0 001C4630 7C 00 18 78 */ andc r0, r0, r3 -/* 801C89D4 001C4634 7C 00 00 34 */ cntlzw r0, r0 -/* 801C89D8 001C4638 20 60 00 20 */ subfic r3, r0, 0x20 -/* 801C89DC 001C463C 38 83 00 20 */ addi r4, r3, 0x20 -lbl_801C89E0: -/* 801C89E0 001C4640 80 01 00 08 */ lwz r0, 8(r1) -/* 801C89E4 001C4644 23 A4 00 35 */ subfic r29, r4, 0x35 -/* 801C89E8 001C4648 38 61 00 18 */ addi r3, r1, 0x18 -/* 801C89EC 001C464C 7C 9D 00 50 */ subf r4, r29, r0 -/* 801C89F0 001C4650 4B FF F4 89 */ bl func_801C7E78 -/* 801C89F4 001C4654 FC 20 F8 90 */ fmr f1, f31 -/* 801C89F8 001C4658 7F A3 EB 78 */ mr r3, r29 -/* 801C89FC 001C465C 48 00 B9 1D */ bl func_801D4318 -/* 801C8A00 001C4660 4B FF ED 19 */ bl __cvt_dbl_ull -/* 801C8A04 001C4664 7C 65 1B 78 */ mr r5, r3 -/* 801C8A08 001C4668 7C 86 23 78 */ mr r6, r4 -/* 801C8A0C 001C466C 38 61 00 44 */ addi r3, r1, 0x44 -/* 801C8A10 001C4670 4B FF F0 19 */ bl func_801C7A28 -/* 801C8A14 001C4674 7F C3 F3 78 */ mr r3, r30 -/* 801C8A18 001C4678 38 81 00 44 */ addi r4, r1, 0x44 -/* 801C8A1C 001C467C 38 A1 00 18 */ addi r5, r1, 0x18 -/* 801C8A20 001C4680 4B FF F0 E5 */ bl func_801C7B04 -/* 801C8A24 001C4684 9B FE 00 00 */ stb r31, 0(r30) -lbl_801C8A28: -/* 801C8A28 001C4688 80 01 00 94 */ lwz r0, 0x94(r1) -/* 801C8A2C 001C468C CB E1 00 88 */ lfd f31, 0x88(r1) -/* 801C8A30 001C4690 83 E1 00 84 */ lwz r31, 0x84(r1) -/* 801C8A34 001C4694 83 C1 00 80 */ lwz r30, 0x80(r1) -/* 801C8A38 001C4698 83 A1 00 7C */ lwz r29, 0x7c(r1) -/* 801C8A3C 001C469C 7C 08 03 A6 */ mtlr r0 -/* 801C8A40 001C46A0 38 21 00 90 */ addi r1, r1, 0x90 -/* 801C8A44 001C46A4 4E 80 00 20 */ blr - -.global func_801C8A48 -func_801C8A48: -/* 801C8A48 001C46A8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801C8A4C 001C46AC 7C 08 02 A6 */ mflr r0 -/* 801C8A50 001C46B0 90 01 00 14 */ stw r0, 0x14(r1) -/* 801C8A54 001C46B4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801C8A58 001C46B8 AB E3 00 02 */ lha r31, 2(r3) -/* 801C8A5C 001C46BC 93 C1 00 08 */ stw r30, 8(r1) -/* 801C8A60 001C46C0 7C 9E 23 78 */ mr r30, r4 -/* 801C8A64 001C46C4 7F C3 F3 78 */ mr r3, r30 -/* 801C8A68 001C46C8 4B FF FE 7D */ bl func_801C88E4 -/* 801C8A6C 001C46CC 88 1E 00 05 */ lbz r0, 5(r30) -/* 801C8A70 001C46D0 28 00 00 09 */ cmplwi r0, 9 -/* 801C8A74 001C46D4 41 81 01 5C */ bgt lbl_801C8BD0 -/* 801C8A78 001C46D8 2C 1F 00 24 */ cmpwi r31, 0x24 -/* 801C8A7C 001C46DC 40 81 00 08 */ ble lbl_801C8A84 -/* 801C8A80 001C46E0 3B E0 00 24 */ li r31, 0x24 -lbl_801C8A84: -/* 801C8A84 001C46E4 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C8A88 001C46E8 40 81 00 E8 */ ble lbl_801C8B70 -/* 801C8A8C 001C46EC 88 1E 00 04 */ lbz r0, 4(r30) -/* 801C8A90 001C46F0 7C 1F 00 00 */ cmpw r31, r0 -/* 801C8A94 001C46F4 40 80 00 DC */ bge lbl_801C8B70 -/* 801C8A98 001C46F8 38 9E 00 05 */ addi r4, r30, 5 -/* 801C8A9C 001C46FC 7C 04 F8 AE */ lbzx r0, r4, r31 -/* 801C8AA0 001C4700 7C 64 FA 14 */ add r3, r4, r31 -/* 801C8AA4 001C4704 28 00 00 05 */ cmplwi r0, 5 -/* 801C8AA8 001C4708 40 81 00 0C */ ble lbl_801C8AB4 -/* 801C8AAC 001C470C 38 80 00 01 */ li r4, 1 -/* 801C8AB0 001C4710 48 00 00 60 */ b lbl_801C8B10 -lbl_801C8AB4: -/* 801C8AB4 001C4714 40 80 00 0C */ bge lbl_801C8AC0 -/* 801C8AB8 001C4718 38 80 FF FF */ li r4, -1 -/* 801C8ABC 001C471C 48 00 00 54 */ b lbl_801C8B10 -lbl_801C8AC0: -/* 801C8AC0 001C4720 88 1E 00 04 */ lbz r0, 4(r30) -/* 801C8AC4 001C4724 38 63 00 01 */ addi r3, r3, 1 -/* 801C8AC8 001C4728 7C 84 02 14 */ add r4, r4, r0 -/* 801C8ACC 001C472C 7C 03 20 50 */ subf r0, r3, r4 -/* 801C8AD0 001C4730 7C 09 03 A6 */ mtctr r0 -/* 801C8AD4 001C4734 7C 03 20 40 */ cmplw r3, r4 -/* 801C8AD8 001C4738 40 80 00 20 */ bge lbl_801C8AF8 -lbl_801C8ADC: -/* 801C8ADC 001C473C 88 03 00 00 */ lbz r0, 0(r3) -/* 801C8AE0 001C4740 2C 00 00 00 */ cmpwi r0, 0 -/* 801C8AE4 001C4744 41 82 00 0C */ beq lbl_801C8AF0 -/* 801C8AE8 001C4748 38 80 00 01 */ li r4, 1 -/* 801C8AEC 001C474C 48 00 00 24 */ b lbl_801C8B10 -lbl_801C8AF0: -/* 801C8AF0 001C4750 38 63 00 01 */ addi r3, r3, 1 -/* 801C8AF4 001C4754 42 00 FF E8 */ bdnz lbl_801C8ADC -lbl_801C8AF8: -/* 801C8AF8 001C4758 7C 7F F2 14 */ add r3, r31, r30 -/* 801C8AFC 001C475C 38 80 FF FF */ li r4, -1 -/* 801C8B00 001C4760 88 03 00 04 */ lbz r0, 4(r3) -/* 801C8B04 001C4764 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 801C8B08 001C4768 41 82 00 08 */ beq lbl_801C8B10 -/* 801C8B0C 001C476C 38 80 00 01 */ li r4, 1 -lbl_801C8B10: -/* 801C8B10 001C4770 2C 04 00 00 */ cmpwi r4, 0 -/* 801C8B14 001C4774 9B FE 00 04 */ stb r31, 4(r30) -/* 801C8B18 001C4778 41 80 00 58 */ blt lbl_801C8B70 -/* 801C8B1C 001C477C 38 9E 00 05 */ addi r4, r30, 5 -/* 801C8B20 001C4780 38 00 00 00 */ li r0, 0 -/* 801C8B24 001C4784 7C A4 FA 14 */ add r5, r4, r31 -/* 801C8B28 001C4788 38 A5 FF FF */ addi r5, r5, -1 -lbl_801C8B2C: -/* 801C8B2C 001C478C 88 65 00 00 */ lbz r3, 0(r5) -/* 801C8B30 001C4790 28 03 00 09 */ cmplwi r3, 9 -/* 801C8B34 001C4794 40 80 00 10 */ bge lbl_801C8B44 -/* 801C8B38 001C4798 38 03 00 01 */ addi r0, r3, 1 -/* 801C8B3C 001C479C 98 05 00 00 */ stb r0, 0(r5) -/* 801C8B40 001C47A0 48 00 00 30 */ b lbl_801C8B70 -lbl_801C8B44: -/* 801C8B44 001C47A4 7C 05 20 40 */ cmplw r5, r4 -/* 801C8B48 001C47A8 40 82 00 1C */ bne lbl_801C8B64 -/* 801C8B4C 001C47AC 38 00 00 01 */ li r0, 1 -/* 801C8B50 001C47B0 98 05 00 00 */ stb r0, 0(r5) -/* 801C8B54 001C47B4 A8 7E 00 02 */ lha r3, 2(r30) -/* 801C8B58 001C47B8 38 03 00 01 */ addi r0, r3, 1 -/* 801C8B5C 001C47BC B0 1E 00 02 */ sth r0, 2(r30) -/* 801C8B60 001C47C0 48 00 00 10 */ b lbl_801C8B70 -lbl_801C8B64: -/* 801C8B64 001C47C4 98 05 00 00 */ stb r0, 0(r5) -/* 801C8B68 001C47C8 38 A5 FF FF */ addi r5, r5, -1 -/* 801C8B6C 001C47CC 4B FF FF C0 */ b lbl_801C8B2C -lbl_801C8B70: -/* 801C8B70 001C47D0 38 A0 00 00 */ li r5, 0 -/* 801C8B74 001C47D4 48 00 00 18 */ b lbl_801C8B8C -lbl_801C8B78: -/* 801C8B78 001C47D8 88 9E 00 04 */ lbz r4, 4(r30) -/* 801C8B7C 001C47DC 7C 7E 22 14 */ add r3, r30, r4 -/* 801C8B80 001C47E0 38 04 00 01 */ addi r0, r4, 1 -/* 801C8B84 001C47E4 98 A3 00 05 */ stb r5, 5(r3) -/* 801C8B88 001C47E8 98 1E 00 04 */ stb r0, 4(r30) -lbl_801C8B8C: -/* 801C8B8C 001C47EC 88 7E 00 04 */ lbz r3, 4(r30) -/* 801C8B90 001C47F0 7C 03 F8 00 */ cmpw r3, r31 -/* 801C8B94 001C47F4 41 80 FF E4 */ blt lbl_801C8B78 -/* 801C8B98 001C47F8 A8 1E 00 02 */ lha r0, 2(r30) -/* 801C8B9C 001C47FC 38 63 FF FF */ addi r3, r3, -1 -/* 801C8BA0 001C4800 38 A0 00 00 */ li r5, 0 -/* 801C8BA4 001C4804 7C 03 00 50 */ subf r0, r3, r0 -/* 801C8BA8 001C4808 B0 1E 00 02 */ sth r0, 2(r30) -/* 801C8BAC 001C480C 48 00 00 18 */ b lbl_801C8BC4 -lbl_801C8BB0: -/* 801C8BB0 001C4810 7C 9E 2A 14 */ add r4, r30, r5 -/* 801C8BB4 001C4814 38 A5 00 01 */ addi r5, r5, 1 -/* 801C8BB8 001C4818 88 64 00 05 */ lbz r3, 5(r4) -/* 801C8BBC 001C481C 38 03 00 30 */ addi r0, r3, 0x30 -/* 801C8BC0 001C4820 98 04 00 05 */ stb r0, 5(r4) -lbl_801C8BC4: -/* 801C8BC4 001C4824 88 1E 00 04 */ lbz r0, 4(r30) -/* 801C8BC8 001C4828 7C 05 00 00 */ cmpw r5, r0 -/* 801C8BCC 001C482C 41 80 FF E4 */ blt lbl_801C8BB0 -lbl_801C8BD0: -/* 801C8BD0 001C4830 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801C8BD4 001C4834 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801C8BD8 001C4838 83 C1 00 08 */ lwz r30, 8(r1) -/* 801C8BDC 001C483C 7C 08 03 A6 */ mtlr r0 -/* 801C8BE0 001C4840 38 21 00 10 */ addi r1, r1, 0x10 -/* 801C8BE4 001C4844 4E 80 00 20 */ blr - -.global func_801C8BE8 -func_801C8BE8: -/* 801C8BE8 001C4848 94 21 FE 80 */ stwu r1, -0x180(r1) -/* 801C8BEC 001C484C 7C 08 02 A6 */ mflr r0 -/* 801C8BF0 001C4850 90 01 01 84 */ stw r0, 0x184(r1) -/* 801C8BF4 001C4854 DB E1 01 70 */ stfd f31, 0x170(r1) -/* 801C8BF8 001C4858 F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0 -/* 801C8BFC 001C485C 39 61 01 70 */ addi r11, r1, 0x170 -/* 801C8C00 001C4860 4B FF E5 09 */ bl _savegpr_19 -/* 801C8C04 001C4864 88 03 00 04 */ lbz r0, 4(r3) -/* 801C8C08 001C4868 3C 80 43 30 */ lis r4, 0x4330 -/* 801C8C0C 001C486C 90 81 01 28 */ stw r4, 0x128(r1) -/* 801C8C10 001C4870 7C 7B 1B 78 */ mr r27, r3 -/* 801C8C14 001C4874 2C 00 00 00 */ cmpwi r0, 0 -/* 801C8C18 001C4878 90 81 01 30 */ stw r4, 0x130(r1) -/* 801C8C1C 001C487C 40 82 00 28 */ bne lbl_801C8C44 -/* 801C8C20 001C4880 88 03 00 00 */ lbz r0, 0(r3) -/* 801C8C24 001C4884 7C 00 07 75 */ extsb. r0, r0 -/* 801C8C28 001C4888 40 82 00 0C */ bne lbl_801C8C34 -/* 801C8C2C 001C488C C8 42 91 00 */ lfd f2, lbl_80641700-_SDA2_BASE_(r2) -/* 801C8C30 001C4890 48 00 00 08 */ b lbl_801C8C38 -lbl_801C8C34: -/* 801C8C34 001C4894 C8 42 91 08 */ lfd f2, lbl_80641708-_SDA2_BASE_(r2) -lbl_801C8C38: -/* 801C8C38 001C4898 C8 22 90 F8 */ lfd f1, lbl_806416F8-_SDA2_BASE_(r2) -/* 801C8C3C 001C489C 48 00 B4 11 */ bl func_801D404C -/* 801C8C40 001C48A0 48 00 07 38 */ b lbl_801C9378 -lbl_801C8C44: -/* 801C8C44 001C48A4 88 03 00 05 */ lbz r0, 5(r3) -/* 801C8C48 001C48A8 2C 00 00 49 */ cmpwi r0, 0x49 -/* 801C8C4C 001C48AC 41 82 00 44 */ beq lbl_801C8C90 -/* 801C8C50 001C48B0 40 80 00 10 */ bge lbl_801C8C60 -/* 801C8C54 001C48B4 2C 00 00 30 */ cmpwi r0, 0x30 -/* 801C8C58 001C48B8 41 82 00 14 */ beq lbl_801C8C6C -/* 801C8C5C 001C48BC 48 00 00 A0 */ b lbl_801C8CFC -lbl_801C8C60: -/* 801C8C60 001C48C0 2C 00 00 4E */ cmpwi r0, 0x4e -/* 801C8C64 001C48C4 41 82 00 54 */ beq lbl_801C8CB8 -/* 801C8C68 001C48C8 48 00 00 94 */ b lbl_801C8CFC -lbl_801C8C6C: -/* 801C8C6C 001C48CC 88 03 00 00 */ lbz r0, 0(r3) -/* 801C8C70 001C48D0 7C 00 07 75 */ extsb. r0, r0 -/* 801C8C74 001C48D4 40 82 00 0C */ bne lbl_801C8C80 -/* 801C8C78 001C48D8 C8 42 91 00 */ lfd f2, lbl_80641700-_SDA2_BASE_(r2) -/* 801C8C7C 001C48DC 48 00 00 08 */ b lbl_801C8C84 -lbl_801C8C80: -/* 801C8C80 001C48E0 C8 42 91 08 */ lfd f2, lbl_80641708-_SDA2_BASE_(r2) -lbl_801C8C84: -/* 801C8C84 001C48E4 C8 22 90 F8 */ lfd f1, lbl_806416F8-_SDA2_BASE_(r2) -/* 801C8C88 001C48E8 48 00 B3 C5 */ bl func_801D404C -/* 801C8C8C 001C48EC 48 00 06 EC */ b lbl_801C9378 -lbl_801C8C90: -/* 801C8C90 001C48F0 88 03 00 00 */ lbz r0, 0(r3) -/* 801C8C94 001C48F4 7C 00 07 75 */ extsb. r0, r0 -/* 801C8C98 001C48F8 40 82 00 0C */ bne lbl_801C8CA4 -/* 801C8C9C 001C48FC C8 42 91 00 */ lfd f2, lbl_80641700-_SDA2_BASE_(r2) -/* 801C8CA0 001C4900 48 00 00 08 */ b lbl_801C8CA8 -lbl_801C8CA4: -/* 801C8CA4 001C4904 C8 42 91 08 */ lfd f2, lbl_80641708-_SDA2_BASE_(r2) -lbl_801C8CA8: -/* 801C8CA8 001C4908 3C 60 80 64 */ lis r3, lbl_8063D6BC@ha -/* 801C8CAC 001C490C C0 23 D6 BC */ lfs f1, lbl_8063D6BC@l(r3) -/* 801C8CB0 001C4910 48 00 B3 9D */ bl func_801D404C -/* 801C8CB4 001C4914 48 00 06 C4 */ b lbl_801C9378 -lbl_801C8CB8: -/* 801C8CB8 001C4918 88 03 00 00 */ lbz r0, 0(r3) -/* 801C8CBC 001C491C 38 80 00 00 */ li r4, 0 -/* 801C8CC0 001C4920 3C 60 7F F0 */ lis r3, 0x7ff0 -/* 801C8CC4 001C4924 90 81 00 1C */ stw r4, 0x1c(r1) -/* 801C8CC8 001C4928 7C 00 07 75 */ extsb. r0, r0 -/* 801C8CCC 001C492C 90 61 00 18 */ stw r3, 0x18(r1) -/* 801C8CD0 001C4930 41 82 00 18 */ beq lbl_801C8CE8 -/* 801C8CD4 001C4934 3C 00 80 00 */ lis r0, 0x8000 -/* 801C8CD8 001C4938 38 60 00 00 */ li r3, 0 -/* 801C8CDC 001C493C 64 00 7F F0 */ oris r0, r0, 0x7ff0 -/* 801C8CE0 001C4940 90 61 00 1C */ stw r3, 0x1c(r1) -/* 801C8CE4 001C4944 90 01 00 18 */ stw r0, 0x18(r1) -lbl_801C8CE8: -/* 801C8CE8 001C4948 80 01 00 18 */ lwz r0, 0x18(r1) -/* 801C8CEC 001C494C 64 00 00 08 */ oris r0, r0, 8 -/* 801C8CF0 001C4950 90 01 00 18 */ stw r0, 0x18(r1) -/* 801C8CF4 001C4954 C8 21 00 18 */ lfd f1, 0x18(r1) -/* 801C8CF8 001C4958 48 00 06 80 */ b lbl_801C9378 -lbl_801C8CFC: -/* 801C8CFC 001C495C A0 03 00 04 */ lhz r0, 4(r3) -/* 801C8D00 001C4960 38 81 01 01 */ addi r4, r1, 0x101 -/* 801C8D04 001C4964 A2 63 00 00 */ lhz r19, 0(r3) -/* 801C8D08 001C4968 B0 01 01 00 */ sth r0, 0x100(r1) -/* 801C8D0C 001C496C A2 83 00 02 */ lhz r20, 2(r3) -/* 801C8D10 001C4970 88 01 01 00 */ lbz r0, 0x100(r1) -/* 801C8D14 001C4974 A3 E3 00 06 */ lhz r31, 6(r3) -/* 801C8D18 001C4978 7F 84 02 14 */ add r28, r4, r0 -/* 801C8D1C 001C497C A3 C3 00 08 */ lhz r30, 8(r3) -/* 801C8D20 001C4980 A3 A3 00 0A */ lhz r29, 0xa(r3) -/* 801C8D24 001C4984 7C 84 E0 40 */ cmplw cr1, r4, r28 -/* 801C8D28 001C4988 A3 43 00 0C */ lhz r26, 0xc(r3) -/* 801C8D2C 001C498C A3 23 00 0E */ lhz r25, 0xe(r3) -/* 801C8D30 001C4990 A3 03 00 10 */ lhz r24, 0x10(r3) -/* 801C8D34 001C4994 A2 E3 00 12 */ lhz r23, 0x12(r3) -/* 801C8D38 001C4998 A2 C3 00 14 */ lhz r22, 0x14(r3) -/* 801C8D3C 001C499C A2 A3 00 16 */ lhz r21, 0x16(r3) -/* 801C8D40 001C49A0 A1 83 00 18 */ lhz r12, 0x18(r3) -/* 801C8D44 001C49A4 A1 63 00 1A */ lhz r11, 0x1a(r3) -/* 801C8D48 001C49A8 A1 43 00 1C */ lhz r10, 0x1c(r3) -/* 801C8D4C 001C49AC A1 23 00 1E */ lhz r9, 0x1e(r3) -/* 801C8D50 001C49B0 A1 03 00 20 */ lhz r8, 0x20(r3) -/* 801C8D54 001C49B4 A0 E3 00 22 */ lhz r7, 0x22(r3) -/* 801C8D58 001C49B8 A0 C3 00 24 */ lhz r6, 0x24(r3) -/* 801C8D5C 001C49BC A0 A3 00 26 */ lhz r5, 0x26(r3) -/* 801C8D60 001C49C0 A0 03 00 28 */ lhz r0, 0x28(r3) -/* 801C8D64 001C49C4 B2 61 00 FC */ sth r19, 0xfc(r1) -/* 801C8D68 001C49C8 B2 81 00 FE */ sth r20, 0xfe(r1) -/* 801C8D6C 001C49CC B3 E1 01 02 */ sth r31, 0x102(r1) -/* 801C8D70 001C49D0 B3 C1 01 04 */ sth r30, 0x104(r1) -/* 801C8D74 001C49D4 B3 A1 01 06 */ sth r29, 0x106(r1) -/* 801C8D78 001C49D8 B3 41 01 08 */ sth r26, 0x108(r1) -/* 801C8D7C 001C49DC B3 21 01 0A */ sth r25, 0x10a(r1) -/* 801C8D80 001C49E0 B3 01 01 0C */ sth r24, 0x10c(r1) -/* 801C8D84 001C49E4 B2 E1 01 0E */ sth r23, 0x10e(r1) -/* 801C8D88 001C49E8 B2 C1 01 10 */ sth r22, 0x110(r1) -/* 801C8D8C 001C49EC B2 A1 01 12 */ sth r21, 0x112(r1) -/* 801C8D90 001C49F0 B1 81 01 14 */ sth r12, 0x114(r1) -/* 801C8D94 001C49F4 B1 61 01 16 */ sth r11, 0x116(r1) -/* 801C8D98 001C49F8 B1 41 01 18 */ sth r10, 0x118(r1) -/* 801C8D9C 001C49FC B1 21 01 1A */ sth r9, 0x11a(r1) -/* 801C8DA0 001C4A00 B1 01 01 1C */ sth r8, 0x11c(r1) -/* 801C8DA4 001C4A04 B0 E1 01 1E */ sth r7, 0x11e(r1) -/* 801C8DA8 001C4A08 B0 C1 01 20 */ sth r6, 0x120(r1) -/* 801C8DAC 001C4A0C B0 A1 01 22 */ sth r5, 0x122(r1) -/* 801C8DB0 001C4A10 B0 01 01 24 */ sth r0, 0x124(r1) -/* 801C8DB4 001C4A14 40 84 00 BC */ bge cr1, lbl_801C8E70 -/* 801C8DB8 001C4A18 7C 04 E0 50 */ subf r0, r4, r28 -/* 801C8DBC 001C4A1C 38 7C FF F8 */ addi r3, r28, -8 -/* 801C8DC0 001C4A20 2C 00 00 08 */ cmpwi r0, 8 -/* 801C8DC4 001C4A24 40 81 00 88 */ ble lbl_801C8E4C -/* 801C8DC8 001C4A28 41 85 00 84 */ bgt cr1, lbl_801C8E4C -/* 801C8DCC 001C4A2C 38 03 00 07 */ addi r0, r3, 7 -/* 801C8DD0 001C4A30 7C 04 00 50 */ subf r0, r4, r0 -/* 801C8DD4 001C4A34 54 00 E8 FE */ srwi r0, r0, 3 -/* 801C8DD8 001C4A38 7C 09 03 A6 */ mtctr r0 -/* 801C8DDC 001C4A3C 7C 04 18 40 */ cmplw r4, r3 -/* 801C8DE0 001C4A40 40 80 00 6C */ bge lbl_801C8E4C -lbl_801C8DE4: -/* 801C8DE4 001C4A44 88 64 00 00 */ lbz r3, 0(r4) -/* 801C8DE8 001C4A48 38 03 FF D0 */ addi r0, r3, -48 -/* 801C8DEC 001C4A4C 98 04 00 00 */ stb r0, 0(r4) -/* 801C8DF0 001C4A50 88 64 00 01 */ lbz r3, 1(r4) -/* 801C8DF4 001C4A54 38 03 FF D0 */ addi r0, r3, -48 -/* 801C8DF8 001C4A58 98 04 00 01 */ stb r0, 1(r4) -/* 801C8DFC 001C4A5C 88 64 00 02 */ lbz r3, 2(r4) -/* 801C8E00 001C4A60 38 03 FF D0 */ addi r0, r3, -48 -/* 801C8E04 001C4A64 98 04 00 02 */ stb r0, 2(r4) -/* 801C8E08 001C4A68 88 64 00 03 */ lbz r3, 3(r4) -/* 801C8E0C 001C4A6C 38 03 FF D0 */ addi r0, r3, -48 -/* 801C8E10 001C4A70 98 04 00 03 */ stb r0, 3(r4) -/* 801C8E14 001C4A74 88 64 00 04 */ lbz r3, 4(r4) -/* 801C8E18 001C4A78 38 03 FF D0 */ addi r0, r3, -48 -/* 801C8E1C 001C4A7C 98 04 00 04 */ stb r0, 4(r4) -/* 801C8E20 001C4A80 88 64 00 05 */ lbz r3, 5(r4) -/* 801C8E24 001C4A84 38 03 FF D0 */ addi r0, r3, -48 -/* 801C8E28 001C4A88 98 04 00 05 */ stb r0, 5(r4) -/* 801C8E2C 001C4A8C 88 64 00 06 */ lbz r3, 6(r4) -/* 801C8E30 001C4A90 38 03 FF D0 */ addi r0, r3, -48 -/* 801C8E34 001C4A94 98 04 00 06 */ stb r0, 6(r4) -/* 801C8E38 001C4A98 88 64 00 07 */ lbz r3, 7(r4) -/* 801C8E3C 001C4A9C 38 03 FF D0 */ addi r0, r3, -48 -/* 801C8E40 001C4AA0 98 04 00 07 */ stb r0, 7(r4) -/* 801C8E44 001C4AA4 38 84 00 08 */ addi r4, r4, 8 -/* 801C8E48 001C4AA8 42 00 FF 9C */ bdnz lbl_801C8DE4 -lbl_801C8E4C: -/* 801C8E4C 001C4AAC 7C 04 E0 50 */ subf r0, r4, r28 -/* 801C8E50 001C4AB0 7C 09 03 A6 */ mtctr r0 -/* 801C8E54 001C4AB4 7C 04 E0 40 */ cmplw r4, r28 -/* 801C8E58 001C4AB8 40 80 00 18 */ bge lbl_801C8E70 -lbl_801C8E5C: -/* 801C8E5C 001C4ABC 88 64 00 00 */ lbz r3, 0(r4) -/* 801C8E60 001C4AC0 38 03 FF D0 */ addi r0, r3, -48 -/* 801C8E64 001C4AC4 98 04 00 00 */ stb r0, 0(r4) -/* 801C8E68 001C4AC8 38 84 00 01 */ addi r4, r4, 1 -/* 801C8E6C 001C4ACC 42 00 FF F0 */ bdnz lbl_801C8E5C -lbl_801C8E70: -/* 801C8E70 001C4AD0 A8 A1 00 FE */ lha r5, 0xfe(r1) -/* 801C8E74 001C4AD4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha -/* 801C8E78 001C4AD8 88 01 01 00 */ lbz r0, 0x100(r1) -/* 801C8E7C 001C4ADC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l -/* 801C8E80 001C4AE0 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 801C8E84 001C4AE4 7C A0 2A 14 */ add r5, r0, r5 -/* 801C8E88 001C4AE8 38 84 00 B8 */ addi r4, r4, 0xb8 -/* 801C8E8C 001C4AEC 38 05 FF FF */ addi r0, r5, -1 -/* 801C8E90 001C4AF0 B0 01 00 FE */ sth r0, 0xfe(r1) -/* 801C8E94 001C4AF4 38 A0 01 34 */ li r5, 0x134 -/* 801C8E98 001C4AF8 7C 1D 07 34 */ extsh r29, r0 -/* 801C8E9C 001C4AFC 4B FF EE F1 */ bl func_801C7D8C -/* 801C8EA0 001C4B00 38 61 00 D0 */ addi r3, r1, 0xd0 -/* 801C8EA4 001C4B04 38 81 00 FC */ addi r4, r1, 0xfc -/* 801C8EA8 001C4B08 4B FF F4 21 */ bl func_801C82C8 -/* 801C8EAC 001C4B0C 2C 03 00 00 */ cmpwi r3, 0 -/* 801C8EB0 001C4B10 41 82 00 2C */ beq lbl_801C8EDC -/* 801C8EB4 001C4B14 88 1B 00 00 */ lbz r0, 0(r27) -/* 801C8EB8 001C4B18 7C 00 07 75 */ extsb. r0, r0 -/* 801C8EBC 001C4B1C 40 82 00 0C */ bne lbl_801C8EC8 -/* 801C8EC0 001C4B20 C8 42 91 00 */ lfd f2, lbl_80641700-_SDA2_BASE_(r2) -/* 801C8EC4 001C4B24 48 00 00 08 */ b lbl_801C8ECC -lbl_801C8EC8: -/* 801C8EC8 001C4B28 C8 42 91 08 */ lfd f2, lbl_80641708-_SDA2_BASE_(r2) -lbl_801C8ECC: -/* 801C8ECC 001C4B2C 3C 60 80 64 */ lis r3, lbl_8063D6BC@ha -/* 801C8ED0 001C4B30 C0 23 D6 BC */ lfs f1, lbl_8063D6BC@l(r3) -/* 801C8ED4 001C4B34 48 00 B1 79 */ bl func_801D404C -/* 801C8ED8 001C4B38 48 00 04 A0 */ b lbl_801C9378 -lbl_801C8EDC: -/* 801C8EDC 001C4B3C 88 01 01 01 */ lbz r0, 0x101(r1) -/* 801C8EE0 001C4B40 3C E0 80 42 */ lis r7, lbl_80422B58@ha -/* 801C8EE4 001C4B44 C8 42 91 20 */ lfd f2, lbl_80641720-_SDA2_BASE_(r2) -/* 801C8EE8 001C4B48 38 81 01 02 */ addi r4, r1, 0x102 -/* 801C8EEC 001C4B4C 90 01 01 2C */ stw r0, 0x12c(r1) -/* 801C8EF0 001C4B50 38 E7 2B 58 */ addi r7, r7, lbl_80422B58@l -/* 801C8EF4 001C4B54 3C 60 80 00 */ lis r3, 0x8000 -/* 801C8EF8 001C4B58 C8 01 01 28 */ lfd f0, 0x128(r1) -/* 801C8EFC 001C4B5C FF E0 10 28 */ fsub f31, f0, f2 -/* 801C8F00 001C4B60 48 00 01 40 */ b lbl_801C9040 -lbl_801C8F04: -/* 801C8F04 001C4B64 7C A4 E0 50 */ subf r5, r4, r28 -/* 801C8F08 001C4B68 39 40 00 00 */ li r10, 0 -/* 801C8F0C 001C4B6C 54 A0 E8 04 */ slwi r0, r5, 0x1d -/* 801C8F10 001C4B70 54 A5 0F FE */ srwi r5, r5, 0x1f -/* 801C8F14 001C4B74 7C 05 00 50 */ subf r0, r5, r0 -/* 801C8F18 001C4B78 54 00 18 3E */ rotlwi r0, r0, 3 -/* 801C8F1C 001C4B7C 7C C0 2A 15 */ add. r6, r0, r5 -/* 801C8F20 001C4B80 40 82 00 08 */ bne lbl_801C8F28 -/* 801C8F24 001C4B84 38 C0 00 08 */ li r6, 8 -lbl_801C8F28: -/* 801C8F28 001C4B88 2C 86 00 00 */ cmpwi cr1, r6, 0 -/* 801C8F2C 001C4B8C 38 A0 00 00 */ li r5, 0 -/* 801C8F30 001C4B90 40 85 00 D8 */ ble cr1, lbl_801C9008 -/* 801C8F34 001C4B94 2C 06 00 08 */ cmpwi r6, 8 -/* 801C8F38 001C4B98 39 06 FF F8 */ addi r8, r6, -8 -/* 801C8F3C 001C4B9C 40 81 00 A4 */ ble lbl_801C8FE0 -/* 801C8F40 001C4BA0 39 20 00 00 */ li r9, 0 -/* 801C8F44 001C4BA4 41 84 00 14 */ blt cr1, lbl_801C8F58 -/* 801C8F48 001C4BA8 38 03 FF FE */ addi r0, r3, -2 -/* 801C8F4C 001C4BAC 7C 06 00 00 */ cmpw r6, r0 -/* 801C8F50 001C4BB0 41 81 00 08 */ bgt lbl_801C8F58 -/* 801C8F54 001C4BB4 39 20 00 01 */ li r9, 1 -lbl_801C8F58: -/* 801C8F58 001C4BB8 2C 09 00 00 */ cmpwi r9, 0 -/* 801C8F5C 001C4BBC 41 82 00 84 */ beq lbl_801C8FE0 -/* 801C8F60 001C4BC0 38 08 00 07 */ addi r0, r8, 7 -/* 801C8F64 001C4BC4 54 00 E8 FE */ srwi r0, r0, 3 -/* 801C8F68 001C4BC8 7C 09 03 A6 */ mtctr r0 -/* 801C8F6C 001C4BCC 2C 08 00 00 */ cmpwi r8, 0 -/* 801C8F70 001C4BD0 40 81 00 70 */ ble lbl_801C8FE0 -lbl_801C8F74: -/* 801C8F74 001C4BD4 1C 0A 00 0A */ mulli r0, r10, 0xa -/* 801C8F78 001C4BD8 89 24 00 00 */ lbz r9, 0(r4) -/* 801C8F7C 001C4BDC 89 04 00 01 */ lbz r8, 1(r4) -/* 801C8F80 001C4BE0 38 A5 00 08 */ addi r5, r5, 8 -/* 801C8F84 001C4BE4 8A A4 00 02 */ lbz r21, 2(r4) -/* 801C8F88 001C4BE8 7C 09 02 14 */ add r0, r9, r0 -/* 801C8F8C 001C4BEC 1C 00 00 0A */ mulli r0, r0, 0xa -/* 801C8F90 001C4BF0 89 84 00 03 */ lbz r12, 3(r4) -/* 801C8F94 001C4BF4 89 64 00 04 */ lbz r11, 4(r4) -/* 801C8F98 001C4BF8 89 44 00 05 */ lbz r10, 5(r4) -/* 801C8F9C 001C4BFC 7C 08 02 14 */ add r0, r8, r0 -/* 801C8FA0 001C4C00 89 24 00 06 */ lbz r9, 6(r4) -/* 801C8FA4 001C4C04 1C 00 00 0A */ mulli r0, r0, 0xa -/* 801C8FA8 001C4C08 89 04 00 07 */ lbz r8, 7(r4) -/* 801C8FAC 001C4C0C 38 84 00 08 */ addi r4, r4, 8 -/* 801C8FB0 001C4C10 7C 15 02 14 */ add r0, r21, r0 -/* 801C8FB4 001C4C14 1C 00 00 0A */ mulli r0, r0, 0xa -/* 801C8FB8 001C4C18 7C 0C 02 14 */ add r0, r12, r0 -/* 801C8FBC 001C4C1C 1C 00 00 0A */ mulli r0, r0, 0xa -/* 801C8FC0 001C4C20 7C 0B 02 14 */ add r0, r11, r0 -/* 801C8FC4 001C4C24 1C 00 00 0A */ mulli r0, r0, 0xa -/* 801C8FC8 001C4C28 7C 0A 02 14 */ add r0, r10, r0 -/* 801C8FCC 001C4C2C 1C 00 00 0A */ mulli r0, r0, 0xa -/* 801C8FD0 001C4C30 7C 09 02 14 */ add r0, r9, r0 -/* 801C8FD4 001C4C34 1C 00 00 0A */ mulli r0, r0, 0xa -/* 801C8FD8 001C4C38 7D 48 02 14 */ add r10, r8, r0 -/* 801C8FDC 001C4C3C 42 00 FF 98 */ bdnz lbl_801C8F74 -lbl_801C8FE0: -/* 801C8FE0 001C4C40 7C 05 30 50 */ subf r0, r5, r6 -/* 801C8FE4 001C4C44 7C 09 03 A6 */ mtctr r0 -/* 801C8FE8 001C4C48 7C 05 30 00 */ cmpw r5, r6 -/* 801C8FEC 001C4C4C 40 80 00 1C */ bge lbl_801C9008 -lbl_801C8FF0: -/* 801C8FF0 001C4C50 1C 0A 00 0A */ mulli r0, r10, 0xa -/* 801C8FF4 001C4C54 89 04 00 00 */ lbz r8, 0(r4) -/* 801C8FF8 001C4C58 38 A5 00 01 */ addi r5, r5, 1 -/* 801C8FFC 001C4C5C 38 84 00 01 */ addi r4, r4, 1 -/* 801C9000 001C4C60 7D 48 02 14 */ add r10, r8, r0 -/* 801C9004 001C4C64 42 00 FF EC */ bdnz lbl_801C8FF0 -lbl_801C9008: -/* 801C9008 001C4C68 54 C0 18 38 */ slwi r0, r6, 3 -/* 801C900C 001C4C6C 91 41 01 34 */ stw r10, 0x134(r1) -/* 801C9010 001C4C70 7C A7 02 14 */ add r5, r7, r0 -/* 801C9014 001C4C74 2C 0A 00 00 */ cmpwi r10, 0 -/* 801C9018 001C4C78 C8 25 FF F8 */ lfd f1, -8(r5) -/* 801C901C 001C4C7C C8 01 01 30 */ lfd f0, 0x130(r1) -/* 801C9020 001C4C80 FC 3F 00 72 */ fmul f1, f31, f1 -/* 801C9024 001C4C84 FC 00 10 28 */ fsub f0, f0, f2 -/* 801C9028 001C4C88 FC 01 00 2A */ fadd f0, f1, f0 -/* 801C902C 001C4C8C 41 82 00 0C */ beq lbl_801C9038 -/* 801C9030 001C4C90 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 801C9034 001C4C94 41 82 00 14 */ beq lbl_801C9048 -lbl_801C9038: -/* 801C9038 001C4C98 FF E0 00 90 */ fmr f31, f0 -/* 801C903C 001C4C9C 7F A6 E8 50 */ subf r29, r6, r29 -lbl_801C9040: -/* 801C9040 001C4CA0 7C 04 E0 40 */ cmplw r4, r28 -/* 801C9044 001C4CA4 41 80 FE C0 */ blt lbl_801C8F04 -lbl_801C9048: -/* 801C9048 001C4CA8 2C 1D 00 00 */ cmpwi r29, 0 -/* 801C904C 001C4CAC 40 80 00 2C */ bge lbl_801C9078 -/* 801C9050 001C4CB0 7C 1D 00 D0 */ neg r0, r29 -/* 801C9054 001C4CB4 C8 42 91 28 */ lfd f2, lbl_80641728-_SDA2_BASE_(r2) -/* 801C9058 001C4CB8 6C 00 80 00 */ xoris r0, r0, 0x8000 -/* 801C905C 001C4CBC C8 22 91 10 */ lfd f1, lbl_80641710-_SDA2_BASE_(r2) -/* 801C9060 001C4CC0 90 01 01 2C */ stw r0, 0x12c(r1) -/* 801C9064 001C4CC4 C8 01 01 28 */ lfd f0, 0x128(r1) -/* 801C9068 001C4CC8 FC 40 10 28 */ fsub f2, f0, f2 -/* 801C906C 001C4CCC 48 00 B5 79 */ bl func_801D45E4 -/* 801C9070 001C4CD0 FF FF 08 24 */ fdiv f31, f31, f1 -/* 801C9074 001C4CD4 48 00 00 24 */ b lbl_801C9098 -lbl_801C9078: -/* 801C9078 001C4CD8 6F A0 80 00 */ xoris r0, r29, 0x8000 -/* 801C907C 001C4CDC C8 42 91 28 */ lfd f2, lbl_80641728-_SDA2_BASE_(r2) -/* 801C9080 001C4CE0 90 01 01 34 */ stw r0, 0x134(r1) -/* 801C9084 001C4CE4 C8 22 91 10 */ lfd f1, lbl_80641710-_SDA2_BASE_(r2) -/* 801C9088 001C4CE8 C8 01 01 30 */ lfd f0, 0x130(r1) -/* 801C908C 001C4CEC FC 40 10 28 */ fsub f2, f0, f2 -/* 801C9090 001C4CF0 48 00 B5 55 */ bl func_801D45E4 -/* 801C9094 001C4CF4 FF FF 00 72 */ fmul f31, f31, f1 -lbl_801C9098: -/* 801C9098 001C4CF8 FC 20 F8 90 */ fmr f1, f31 -/* 801C909C 001C4CFC 7F A3 EB 78 */ mr r3, r29 -/* 801C90A0 001C4D00 48 00 B2 79 */ bl func_801D4318 -/* 801C90A4 001C4D04 FF E0 08 90 */ fmr f31, f1 -/* 801C90A8 001C4D08 D8 21 00 10 */ stfd f1, 0x10(r1) -/* 801C90AC 001C4D0C 48 00 16 85 */ bl func_801CA730 -/* 801C90B0 001C4D10 2C 03 00 02 */ cmpwi r3, 2 -/* 801C90B4 001C4D14 40 82 00 0C */ bne lbl_801C90C0 -/* 801C90B8 001C4D18 CB E2 91 18 */ lfd f31, lbl_80641718-_SDA2_BASE_(r2) -/* 801C90BC 001C4D1C DB E1 00 10 */ stfd f31, 0x10(r1) -lbl_801C90C0: -/* 801C90C0 001C4D20 FC 20 F8 90 */ fmr f1, f31 -/* 801C90C4 001C4D24 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 801C90C8 001C4D28 3B 60 00 00 */ li r27, 0 -/* 801C90CC 001C4D2C 4B FF F8 19 */ bl func_801C88E4 -/* 801C90D0 001C4D30 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 801C90D4 001C4D34 38 81 00 FC */ addi r4, r1, 0xfc -/* 801C90D8 001C4D38 4B FF F1 0D */ bl func_801C81E4 -/* 801C90DC 001C4D3C 2C 03 00 00 */ cmpwi r3, 0 -/* 801C90E0 001C4D40 40 82 02 80 */ bne lbl_801C9360 -/* 801C90E4 001C4D44 38 61 00 A4 */ addi r3, r1, 0xa4 -/* 801C90E8 001C4D48 38 81 00 FC */ addi r4, r1, 0xfc -/* 801C90EC 001C4D4C 4B FF F1 DD */ bl func_801C82C8 -/* 801C90F0 001C4D50 2C 03 00 00 */ cmpwi r3, 0 -/* 801C90F4 001C4D54 41 82 00 08 */ beq lbl_801C90FC -/* 801C90F8 001C4D58 3B 60 00 01 */ li r27, 1 -lbl_801C90FC: -/* 801C90FC 001C4D5C 7F 60 00 34 */ cntlzw r0, r27 -/* 801C9100 001C4D60 DB E1 00 08 */ stfd f31, 8(r1) -/* 801C9104 001C4D64 54 1C D9 7E */ srwi r28, r0, 5 -/* 801C9108 001C4D68 3B A0 00 01 */ li r29, 1 -/* 801C910C 001C4D6C 3B C0 00 00 */ li r30, 0 -/* 801C9110 001C4D70 3B E0 FF FF */ li r31, -1 -lbl_801C9114: -/* 801C9114 001C4D74 2C 1C 00 00 */ cmpwi r28, 0 -/* 801C9118 001C4D78 40 82 00 30 */ bne lbl_801C9148 -/* 801C911C 001C4D7C 80 61 00 0C */ lwz r3, 0xc(r1) -/* 801C9120 001C4D80 80 01 00 08 */ lwz r0, 8(r1) -/* 801C9124 001C4D84 7C 63 E8 14 */ addc r3, r3, r29 -/* 801C9128 001C4D88 7C 00 F1 14 */ adde r0, r0, r30 -/* 801C912C 001C4D8C 90 61 00 0C */ stw r3, 0xc(r1) -/* 801C9130 001C4D90 90 01 00 08 */ stw r0, 8(r1) -/* 801C9134 001C4D94 C8 21 00 08 */ lfd f1, 8(r1) -/* 801C9138 001C4D98 48 00 15 F9 */ bl func_801CA730 -/* 801C913C 001C4D9C 2C 03 00 02 */ cmpwi r3, 2 -/* 801C9140 001C4DA0 41 82 02 20 */ beq lbl_801C9360 -/* 801C9144 001C4DA4 48 00 00 1C */ b lbl_801C9160 -lbl_801C9148: -/* 801C9148 001C4DA8 80 61 00 0C */ lwz r3, 0xc(r1) -/* 801C914C 001C4DAC 80 01 00 08 */ lwz r0, 8(r1) -/* 801C9150 001C4DB0 7C 63 F8 14 */ addc r3, r3, r31 -/* 801C9154 001C4DB4 7C 00 F9 14 */ adde r0, r0, r31 -/* 801C9158 001C4DB8 90 61 00 0C */ stw r3, 0xc(r1) -/* 801C915C 001C4DBC 90 01 00 08 */ stw r0, 8(r1) -lbl_801C9160: -/* 801C9160 001C4DC0 C8 21 00 08 */ lfd f1, 8(r1) -/* 801C9164 001C4DC4 38 61 00 78 */ addi r3, r1, 0x78 -/* 801C9168 001C4DC8 4B FF F7 7D */ bl func_801C88E4 -/* 801C916C 001C4DCC 2C 1B 00 00 */ cmpwi r27, 0 -/* 801C9170 001C4DD0 41 82 00 18 */ beq lbl_801C9188 -/* 801C9174 001C4DD4 38 61 00 78 */ addi r3, r1, 0x78 -/* 801C9178 001C4DD8 38 81 00 FC */ addi r4, r1, 0xfc -/* 801C917C 001C4DDC 4B FF F1 4D */ bl func_801C82C8 -/* 801C9180 001C4DE0 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9184 001C4DE4 41 82 01 74 */ beq lbl_801C92F8 -lbl_801C9188: -/* 801C9188 001C4DE8 2C 1B 00 00 */ cmpwi r27, 0 -/* 801C918C 001C4DEC 40 82 01 08 */ bne lbl_801C9294 -/* 801C9190 001C4DF0 38 61 00 FC */ addi r3, r1, 0xfc -/* 801C9194 001C4DF4 38 81 00 78 */ addi r4, r1, 0x78 -/* 801C9198 001C4DF8 4B FF F1 31 */ bl func_801C82C8 -/* 801C919C 001C4DFC 2C 03 00 00 */ cmpwi r3, 0 -/* 801C91A0 001C4E00 40 82 00 F4 */ bne lbl_801C9294 -/* 801C91A4 001C4E04 FC 00 F8 90 */ fmr f0, f31 -/* 801C91A8 001C4E08 CB E1 00 08 */ lfd f31, 8(r1) -/* 801C91AC 001C4E0C 82 A1 00 A4 */ lwz r21, 0xa4(r1) -/* 801C91B0 001C4E10 81 81 00 78 */ lwz r12, 0x78(r1) -/* 801C91B4 001C4E14 82 C1 00 A8 */ lwz r22, 0xa8(r1) -/* 801C91B8 001C4E18 81 61 00 7C */ lwz r11, 0x7c(r1) -/* 801C91BC 001C4E1C 82 E1 00 AC */ lwz r23, 0xac(r1) -/* 801C91C0 001C4E20 81 41 00 80 */ lwz r10, 0x80(r1) -/* 801C91C4 001C4E24 83 01 00 B0 */ lwz r24, 0xb0(r1) -/* 801C91C8 001C4E28 81 21 00 84 */ lwz r9, 0x84(r1) -/* 801C91CC 001C4E2C 83 21 00 B4 */ lwz r25, 0xb4(r1) -/* 801C91D0 001C4E30 81 01 00 88 */ lwz r8, 0x88(r1) -/* 801C91D4 001C4E34 83 41 00 B8 */ lwz r26, 0xb8(r1) -/* 801C91D8 001C4E38 80 E1 00 8C */ lwz r7, 0x8c(r1) -/* 801C91DC 001C4E3C 83 E1 00 BC */ lwz r31, 0xbc(r1) -/* 801C91E0 001C4E40 80 C1 00 90 */ lwz r6, 0x90(r1) -/* 801C91E4 001C4E44 83 C1 00 C0 */ lwz r30, 0xc0(r1) -/* 801C91E8 001C4E48 80 A1 00 94 */ lwz r5, 0x94(r1) -/* 801C91EC 001C4E4C 83 A1 00 C4 */ lwz r29, 0xc4(r1) -/* 801C91F0 001C4E50 80 81 00 98 */ lwz r4, 0x98(r1) -/* 801C91F4 001C4E54 83 81 00 C8 */ lwz r28, 0xc8(r1) -/* 801C91F8 001C4E58 80 61 00 9C */ lwz r3, 0x9c(r1) -/* 801C91FC 001C4E5C A3 61 00 CC */ lhz r27, 0xcc(r1) -/* 801C9200 001C4E60 A0 01 00 A0 */ lhz r0, 0xa0(r1) -/* 801C9204 001C4E64 92 A1 00 4C */ stw r21, 0x4c(r1) -/* 801C9208 001C4E68 92 C1 00 50 */ stw r22, 0x50(r1) -/* 801C920C 001C4E6C 92 E1 00 54 */ stw r23, 0x54(r1) -/* 801C9210 001C4E70 93 01 00 58 */ stw r24, 0x58(r1) -/* 801C9214 001C4E74 93 21 00 5C */ stw r25, 0x5c(r1) -/* 801C9218 001C4E78 93 41 00 60 */ stw r26, 0x60(r1) -/* 801C921C 001C4E7C 93 E1 00 64 */ stw r31, 0x64(r1) -/* 801C9220 001C4E80 93 C1 00 68 */ stw r30, 0x68(r1) -/* 801C9224 001C4E84 93 A1 00 6C */ stw r29, 0x6c(r1) -/* 801C9228 001C4E88 93 81 00 70 */ stw r28, 0x70(r1) -/* 801C922C 001C4E8C B3 61 00 74 */ sth r27, 0x74(r1) -/* 801C9230 001C4E90 91 81 00 A4 */ stw r12, 0xa4(r1) -/* 801C9234 001C4E94 91 61 00 A8 */ stw r11, 0xa8(r1) -/* 801C9238 001C4E98 91 41 00 AC */ stw r10, 0xac(r1) -/* 801C923C 001C4E9C 91 21 00 B0 */ stw r9, 0xb0(r1) -/* 801C9240 001C4EA0 91 01 00 B4 */ stw r8, 0xb4(r1) -/* 801C9244 001C4EA4 90 E1 00 B8 */ stw r7, 0xb8(r1) -/* 801C9248 001C4EA8 90 C1 00 BC */ stw r6, 0xbc(r1) -/* 801C924C 001C4EAC 90 A1 00 C0 */ stw r5, 0xc0(r1) -/* 801C9250 001C4EB0 90 81 00 C4 */ stw r4, 0xc4(r1) -/* 801C9254 001C4EB4 90 61 00 C8 */ stw r3, 0xc8(r1) -/* 801C9258 001C4EB8 B0 01 00 CC */ sth r0, 0xcc(r1) -/* 801C925C 001C4EBC 92 A1 00 78 */ stw r21, 0x78(r1) -/* 801C9260 001C4EC0 92 C1 00 7C */ stw r22, 0x7c(r1) -/* 801C9264 001C4EC4 92 E1 00 80 */ stw r23, 0x80(r1) -/* 801C9268 001C4EC8 93 01 00 84 */ stw r24, 0x84(r1) -/* 801C926C 001C4ECC 93 21 00 88 */ stw r25, 0x88(r1) -/* 801C9270 001C4ED0 93 41 00 8C */ stw r26, 0x8c(r1) -/* 801C9274 001C4ED4 93 E1 00 90 */ stw r31, 0x90(r1) -/* 801C9278 001C4ED8 93 C1 00 94 */ stw r30, 0x94(r1) -/* 801C927C 001C4EDC 93 A1 00 98 */ stw r29, 0x98(r1) -/* 801C9280 001C4EE0 93 81 00 9C */ stw r28, 0x9c(r1) -/* 801C9284 001C4EE4 B3 61 00 A0 */ sth r27, 0xa0(r1) -/* 801C9288 001C4EE8 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 801C928C 001C4EEC D8 01 00 08 */ stfd f0, 8(r1) -/* 801C9290 001C4EF0 48 00 00 68 */ b lbl_801C92F8 -lbl_801C9294: -/* 801C9294 001C4EF4 81 81 00 78 */ lwz r12, 0x78(r1) -/* 801C9298 001C4EF8 81 61 00 7C */ lwz r11, 0x7c(r1) -/* 801C929C 001C4EFC 81 41 00 80 */ lwz r10, 0x80(r1) -/* 801C92A0 001C4F00 81 21 00 84 */ lwz r9, 0x84(r1) -/* 801C92A4 001C4F04 81 01 00 88 */ lwz r8, 0x88(r1) -/* 801C92A8 001C4F08 80 E1 00 8C */ lwz r7, 0x8c(r1) -/* 801C92AC 001C4F0C 80 C1 00 90 */ lwz r6, 0x90(r1) -/* 801C92B0 001C4F10 80 A1 00 94 */ lwz r5, 0x94(r1) -/* 801C92B4 001C4F14 80 81 00 98 */ lwz r4, 0x98(r1) -/* 801C92B8 001C4F18 80 61 00 9C */ lwz r3, 0x9c(r1) -/* 801C92BC 001C4F1C A0 01 00 A0 */ lhz r0, 0xa0(r1) -/* 801C92C0 001C4F20 CB E1 00 08 */ lfd f31, 8(r1) -/* 801C92C4 001C4F24 91 81 00 A4 */ stw r12, 0xa4(r1) -/* 801C92C8 001C4F28 91 61 00 A8 */ stw r11, 0xa8(r1) -/* 801C92CC 001C4F2C 91 41 00 AC */ stw r10, 0xac(r1) -/* 801C92D0 001C4F30 91 21 00 B0 */ stw r9, 0xb0(r1) -/* 801C92D4 001C4F34 91 01 00 B4 */ stw r8, 0xb4(r1) -/* 801C92D8 001C4F38 90 E1 00 B8 */ stw r7, 0xb8(r1) -/* 801C92DC 001C4F3C 90 C1 00 BC */ stw r6, 0xbc(r1) -/* 801C92E0 001C4F40 90 A1 00 C0 */ stw r5, 0xc0(r1) -/* 801C92E4 001C4F44 90 81 00 C4 */ stw r4, 0xc4(r1) -/* 801C92E8 001C4F48 90 61 00 C8 */ stw r3, 0xc8(r1) -/* 801C92EC 001C4F4C B0 01 00 CC */ sth r0, 0xcc(r1) -/* 801C92F0 001C4F50 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 801C92F4 001C4F54 4B FF FE 20 */ b lbl_801C9114 -lbl_801C92F8: -/* 801C92F8 001C4F58 38 61 00 4C */ addi r3, r1, 0x4c -/* 801C92FC 001C4F5C 38 81 00 FC */ addi r4, r1, 0xfc -/* 801C9300 001C4F60 38 A1 00 A4 */ addi r5, r1, 0xa4 -/* 801C9304 001C4F64 4B FF F0 C5 */ bl func_801C83C8 -/* 801C9308 001C4F68 38 61 00 20 */ addi r3, r1, 0x20 -/* 801C930C 001C4F6C 38 81 00 78 */ addi r4, r1, 0x78 -/* 801C9310 001C4F70 38 A1 00 FC */ addi r5, r1, 0xfc -/* 801C9314 001C4F74 4B FF F0 B5 */ bl func_801C83C8 -/* 801C9318 001C4F78 38 61 00 4C */ addi r3, r1, 0x4c -/* 801C931C 001C4F7C 38 81 00 20 */ addi r4, r1, 0x20 -/* 801C9320 001C4F80 4B FF EE C5 */ bl func_801C81E4 -/* 801C9324 001C4F84 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9328 001C4F88 41 82 00 1C */ beq lbl_801C9344 -/* 801C932C 001C4F8C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801C9330 001C4F90 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 801C9334 001C4F94 41 82 00 2C */ beq lbl_801C9360 -/* 801C9338 001C4F98 CB E1 00 08 */ lfd f31, 8(r1) -/* 801C933C 001C4F9C DB E1 00 10 */ stfd f31, 0x10(r1) -/* 801C9340 001C4FA0 48 00 00 20 */ b lbl_801C9360 -lbl_801C9344: -/* 801C9344 001C4FA4 38 61 00 4C */ addi r3, r1, 0x4c -/* 801C9348 001C4FA8 38 81 00 20 */ addi r4, r1, 0x20 -/* 801C934C 001C4FAC 4B FF EF 7D */ bl func_801C82C8 -/* 801C9350 001C4FB0 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9354 001C4FB4 40 82 00 0C */ bne lbl_801C9360 -/* 801C9358 001C4FB8 CB E1 00 08 */ lfd f31, 8(r1) -/* 801C935C 001C4FBC DB E1 00 10 */ stfd f31, 0x10(r1) -lbl_801C9360: -/* 801C9360 001C4FC0 88 01 00 FC */ lbz r0, 0xfc(r1) -/* 801C9364 001C4FC4 7C 00 07 75 */ extsb. r0, r0 -/* 801C9368 001C4FC8 41 82 00 0C */ beq lbl_801C9374 -/* 801C936C 001C4FCC FF E0 F8 50 */ fneg f31, f31 -/* 801C9370 001C4FD0 DB E1 00 10 */ stfd f31, 0x10(r1) -lbl_801C9374: -/* 801C9374 001C4FD4 FC 20 F8 90 */ fmr f1, f31 -lbl_801C9378: -/* 801C9378 001C4FD8 E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0 -/* 801C937C 001C4FDC 39 61 01 70 */ addi r11, r1, 0x170 -/* 801C9380 001C4FE0 CB E1 01 70 */ lfd f31, 0x170(r1) -/* 801C9384 001C4FE4 4B FF DD D1 */ bl _restgpr_19 -/* 801C9388 001C4FE8 80 01 01 84 */ lwz r0, 0x184(r1) -/* 801C938C 001C4FEC 7C 08 03 A6 */ mtlr r0 -/* 801C9390 001C4FF0 38 21 01 80 */ addi r1, r1, 0x180 -/* 801C9394 001C4FF4 4E 80 00 20 */ blr - -.global abs -abs: -/* 801C9398 001C4FF8 7C 64 FE 70 */ srawi r4, r3, 0x1f -/* 801C939C 001C4FFC 7C 80 1A 78 */ xor r0, r4, r3 -/* 801C93A0 001C5000 7C 64 00 50 */ subf r3, r4, r0 -/* 801C93A4 001C5004 4E 80 00 20 */ blr - -.global func_801C93A8 -func_801C93A8: -/* 801C93A8 001C5008 80 83 00 18 */ lwz r4, 0x18(r3) -/* 801C93AC 001C500C 80 03 00 2C */ lwz r0, 0x2c(r3) -/* 801C93B0 001C5010 80 C3 00 1C */ lwz r6, 0x1c(r3) -/* 801C93B4 001C5014 80 A3 00 20 */ lwz r5, 0x20(r3) -/* 801C93B8 001C5018 7C 80 00 38 */ and r0, r4, r0 -/* 801C93BC 001C501C 90 C3 00 24 */ stw r6, 0x24(r3) -/* 801C93C0 001C5020 7C 00 28 50 */ subf r0, r0, r5 -/* 801C93C4 001C5024 90 03 00 28 */ stw r0, 0x28(r3) -/* 801C93C8 001C5028 90 83 00 34 */ stw r4, 0x34(r3) -/* 801C93CC 001C502C 4E 80 00 20 */ blr - -.global func_801C93D0 -func_801C93D0: -/* 801C93D0 001C5030 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801C93D4 001C5034 7C 08 02 A6 */ mflr r0 -/* 801C93D8 001C5038 2C 05 00 01 */ cmpwi r5, 1 -/* 801C93DC 001C503C 90 01 00 14 */ stw r0, 0x14(r1) -/* 801C93E0 001C5040 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801C93E4 001C5044 7C 7F 1B 78 */ mr r31, r3 -/* 801C93E8 001C5048 93 C1 00 08 */ stw r30, 8(r1) -/* 801C93EC 001C504C 7C 9E 23 78 */ mr r30, r4 -/* 801C93F0 001C5050 80 C3 00 18 */ lwz r6, 0x18(r3) -/* 801C93F4 001C5054 80 03 00 2C */ lwz r0, 0x2c(r3) -/* 801C93F8 001C5058 80 A3 00 1C */ lwz r5, 0x1c(r3) -/* 801C93FC 001C505C 80 83 00 20 */ lwz r4, 0x20(r3) -/* 801C9400 001C5060 7C C0 00 38 */ and r0, r6, r0 -/* 801C9404 001C5064 90 A3 00 24 */ stw r5, 0x24(r3) -/* 801C9408 001C5068 7C 00 20 50 */ subf r0, r0, r4 -/* 801C940C 001C506C 90 03 00 28 */ stw r0, 0x28(r3) -/* 801C9410 001C5070 90 C3 00 34 */ stw r6, 0x34(r3) -/* 801C9414 001C5074 40 82 00 08 */ bne lbl_801C941C -/* 801C9418 001C5078 90 83 00 28 */ stw r4, 0x28(r3) -lbl_801C941C: -/* 801C941C 001C507C 81 9F 00 3C */ lwz r12, 0x3c(r31) -/* 801C9420 001C5080 38 BF 00 28 */ addi r5, r31, 0x28 -/* 801C9424 001C5084 80 63 00 00 */ lwz r3, 0(r3) -/* 801C9428 001C5088 80 9F 00 1C */ lwz r4, 0x1c(r31) -/* 801C942C 001C508C 80 DF 00 48 */ lwz r6, 0x48(r31) -/* 801C9430 001C5090 7D 89 03 A6 */ mtctr r12 -/* 801C9434 001C5094 4E 80 04 21 */ bctrl -/* 801C9438 001C5098 2C 03 00 02 */ cmpwi r3, 2 -/* 801C943C 001C509C 40 82 00 0C */ bne lbl_801C9448 -/* 801C9440 001C50A0 38 00 00 00 */ li r0, 0 -/* 801C9444 001C50A4 90 1F 00 28 */ stw r0, 0x28(r31) -lbl_801C9448: -/* 801C9448 001C50A8 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C944C 001C50AC 41 82 00 0C */ beq lbl_801C9458 -/* 801C9450 001C50B0 80 1F 00 28 */ lwz r0, 0x28(r31) -/* 801C9454 001C50B4 90 1E 00 00 */ stw r0, 0(r30) -lbl_801C9458: -/* 801C9458 001C50B8 2C 03 00 00 */ cmpwi r3, 0 -/* 801C945C 001C50BC 41 82 00 08 */ beq lbl_801C9464 -/* 801C9460 001C50C0 48 00 00 54 */ b lbl_801C94B4 -lbl_801C9464: -/* 801C9464 001C50C4 80 1F 00 04 */ lwz r0, 4(r31) -/* 801C9468 001C50C8 80 9F 00 18 */ lwz r4, 0x18(r31) -/* 801C946C 001C50CC 80 7F 00 28 */ lwz r3, 0x28(r31) -/* 801C9470 001C50D0 54 00 6F FF */ rlwinm. r0, r0, 0xd, 0x1f, 0x1f -/* 801C9474 001C50D4 7C 04 1A 14 */ add r0, r4, r3 -/* 801C9478 001C50D8 90 1F 00 18 */ stw r0, 0x18(r31) -/* 801C947C 001C50DC 40 82 00 34 */ bne lbl_801C94B0 -/* 801C9480 001C50E0 80 9F 00 1C */ lwz r4, 0x1c(r31) -/* 801C9484 001C50E4 7C 69 03 A6 */ mtctr r3 -/* 801C9488 001C50E8 2C 03 00 00 */ cmpwi r3, 0 -/* 801C948C 001C50EC 41 82 00 24 */ beq lbl_801C94B0 -lbl_801C9490: -/* 801C9490 001C50F0 88 04 00 00 */ lbz r0, 0(r4) -/* 801C9494 001C50F4 38 84 00 01 */ addi r4, r4, 1 -/* 801C9498 001C50F8 28 00 00 0A */ cmplwi r0, 0xa -/* 801C949C 001C50FC 40 82 00 10 */ bne lbl_801C94AC -/* 801C94A0 001C5100 80 7F 00 18 */ lwz r3, 0x18(r31) -/* 801C94A4 001C5104 38 03 00 01 */ addi r0, r3, 1 -/* 801C94A8 001C5108 90 1F 00 18 */ stw r0, 0x18(r31) -lbl_801C94AC: -/* 801C94AC 001C510C 42 00 FF E4 */ bdnz lbl_801C9490 -lbl_801C94B0: -/* 801C94B0 001C5110 38 60 00 00 */ li r3, 0 -lbl_801C94B4: -/* 801C94B4 001C5114 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801C94B8 001C5118 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801C94BC 001C511C 83 C1 00 08 */ lwz r30, 8(r1) -/* 801C94C0 001C5120 7C 08 03 A6 */ mtlr r0 -/* 801C94C4 001C5124 38 21 00 10 */ addi r1, r1, 0x10 -/* 801C94C8 001C5128 4E 80 00 20 */ blr - -.global func_801C94CC -func_801C94CC: -/* 801C94CC 001C512C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801C94D0 001C5130 7C 08 02 A6 */ mflr r0 -/* 801C94D4 001C5134 90 01 00 14 */ stw r0, 0x14(r1) -/* 801C94D8 001C5138 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801C94DC 001C513C 7C 9F 23 78 */ mr r31, r4 -/* 801C94E0 001C5140 93 C1 00 08 */ stw r30, 8(r1) -/* 801C94E4 001C5144 7C 7E 1B 78 */ mr r30, r3 -/* 801C94E8 001C5148 80 A3 00 1C */ lwz r5, 0x1c(r3) -/* 801C94EC 001C514C 80 03 00 24 */ lwz r0, 0x24(r3) -/* 801C94F0 001C5150 7C 05 00 51 */ subf. r0, r5, r0 -/* 801C94F4 001C5154 41 82 00 50 */ beq lbl_801C9544 -/* 801C94F8 001C5158 81 9E 00 40 */ lwz r12, 0x40(r30) -/* 801C94FC 001C515C 7C A4 2B 78 */ mr r4, r5 -/* 801C9500 001C5160 90 03 00 28 */ stw r0, 0x28(r3) -/* 801C9504 001C5164 38 BE 00 28 */ addi r5, r30, 0x28 -/* 801C9508 001C5168 80 63 00 00 */ lwz r3, 0(r3) -/* 801C950C 001C516C 80 DE 00 48 */ lwz r6, 0x48(r30) -/* 801C9510 001C5170 7D 89 03 A6 */ mtctr r12 -/* 801C9514 001C5174 4E 80 04 21 */ bctrl -/* 801C9518 001C5178 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C951C 001C517C 41 82 00 0C */ beq lbl_801C9528 -/* 801C9520 001C5180 80 1E 00 28 */ lwz r0, 0x28(r30) -/* 801C9524 001C5184 90 1F 00 00 */ stw r0, 0(r31) -lbl_801C9528: -/* 801C9528 001C5188 2C 03 00 00 */ cmpwi r3, 0 -/* 801C952C 001C518C 41 82 00 08 */ beq lbl_801C9534 -/* 801C9530 001C5190 48 00 00 3C */ b lbl_801C956C -lbl_801C9534: -/* 801C9534 001C5194 80 7E 00 18 */ lwz r3, 0x18(r30) -/* 801C9538 001C5198 80 1E 00 28 */ lwz r0, 0x28(r30) -/* 801C953C 001C519C 7C 03 02 14 */ add r0, r3, r0 -/* 801C9540 001C51A0 90 1E 00 18 */ stw r0, 0x18(r30) -lbl_801C9544: -/* 801C9544 001C51A4 80 9E 00 18 */ lwz r4, 0x18(r30) -/* 801C9548 001C51A8 38 60 00 00 */ li r3, 0 -/* 801C954C 001C51AC 80 1E 00 2C */ lwz r0, 0x2c(r30) -/* 801C9550 001C51B0 80 DE 00 1C */ lwz r6, 0x1c(r30) -/* 801C9554 001C51B4 80 BE 00 20 */ lwz r5, 0x20(r30) -/* 801C9558 001C51B8 7C 80 00 38 */ and r0, r4, r0 -/* 801C955C 001C51BC 90 DE 00 24 */ stw r6, 0x24(r30) -/* 801C9560 001C51C0 7C 00 28 50 */ subf r0, r0, r5 -/* 801C9564 001C51C4 90 1E 00 28 */ stw r0, 0x28(r30) -/* 801C9568 001C51C8 90 9E 00 34 */ stw r4, 0x34(r30) -lbl_801C956C: -/* 801C956C 001C51CC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801C9570 001C51D0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801C9574 001C51D4 83 C1 00 08 */ lwz r30, 8(r1) -/* 801C9578 001C51D8 7C 08 03 A6 */ mtlr r0 -/* 801C957C 001C51DC 38 21 00 10 */ addi r1, r1, 0x10 -/* 801C9580 001C51E0 4E 80 00 20 */ blr - -.global func_801C9584 -func_801C9584: -/* 801C9584 001C51E4 48 00 00 04 */ b lbl_801C9588 -lbl_801C9588: -/* 801C9588 001C51E8 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801C958C 001C51EC 7C 08 02 A6 */ mflr r0 -/* 801C9590 001C51F0 90 01 00 34 */ stw r0, 0x34(r1) -/* 801C9594 001C51F4 BF 21 00 14 */ stmw r25, 0x14(r1) -/* 801C9598 001C51F8 7C 9B 23 78 */ mr r27, r4 -/* 801C959C 001C51FC 7C DC 33 78 */ mr r28, r6 -/* 801C95A0 001C5200 7C 7A 1B 78 */ mr r26, r3 -/* 801C95A4 001C5204 7C B9 2B 78 */ mr r25, r5 -/* 801C95A8 001C5208 38 80 00 00 */ li r4, 0 -/* 801C95AC 001C520C 7F 83 E3 78 */ mr r3, r28 -/* 801C95B0 001C5210 48 00 72 B5 */ bl func_801D0864 -/* 801C95B4 001C5214 2C 03 00 00 */ cmpwi r3, 0 -/* 801C95B8 001C5218 40 82 00 10 */ bne lbl_801C95C8 -/* 801C95BC 001C521C 7F 83 E3 78 */ mr r3, r28 -/* 801C95C0 001C5220 38 80 FF FF */ li r4, -1 -/* 801C95C4 001C5224 48 00 72 A1 */ bl func_801D0864 -lbl_801C95C8: -/* 801C95C8 001C5228 7F DB C9 D7 */ mullw. r30, r27, r25 -/* 801C95CC 001C522C 41 82 00 1C */ beq lbl_801C95E8 -/* 801C95D0 001C5230 88 1C 00 0A */ lbz r0, 0xa(r28) -/* 801C95D4 001C5234 2C 00 00 00 */ cmpwi r0, 0 -/* 801C95D8 001C5238 40 82 00 10 */ bne lbl_801C95E8 -/* 801C95DC 001C523C 80 7C 00 04 */ lwz r3, 4(r28) -/* 801C95E0 001C5240 54 60 57 7F */ rlwinm. r0, r3, 0xa, 0x1d, 0x1f -/* 801C95E4 001C5244 40 82 00 0C */ bne lbl_801C95F0 -lbl_801C95E8: -/* 801C95E8 001C5248 38 60 00 00 */ li r3, 0 -/* 801C95EC 001C524C 48 00 02 C8 */ b lbl_801C98B4 -lbl_801C95F0: -/* 801C95F0 001C5250 54 60 6F FF */ rlwinm. r0, r3, 0xd, 0x1f, 0x1f -/* 801C95F4 001C5254 3B E0 00 01 */ li r31, 1 -/* 801C95F8 001C5258 41 82 00 14 */ beq lbl_801C960C -/* 801C95FC 001C525C 54 60 3F BE */ rlwinm r0, r3, 7, 0x1e, 0x1f -/* 801C9600 001C5260 28 00 00 02 */ cmplwi r0, 2 -/* 801C9604 001C5264 41 82 00 08 */ beq lbl_801C960C -/* 801C9608 001C5268 3B E0 00 00 */ li r31, 0 -lbl_801C960C: -/* 801C960C 001C526C 80 7C 00 08 */ lwz r3, 8(r28) -/* 801C9610 001C5270 54 60 1F 7F */ rlwinm. r0, r3, 3, 0x1d, 0x1f -/* 801C9614 001C5274 40 82 00 24 */ bne lbl_801C9638 -/* 801C9618 001C5278 80 1C 00 04 */ lwz r0, 4(r28) -/* 801C961C 001C527C 54 00 2F FF */ rlwinm. r0, r0, 5, 0x1f, 0x1f -/* 801C9620 001C5280 41 82 00 18 */ beq lbl_801C9638 -/* 801C9624 001C5284 38 00 00 02 */ li r0, 2 -/* 801C9628 001C5288 50 03 E8 04 */ rlwimi r3, r0, 0x1d, 0, 2 -/* 801C962C 001C528C 38 00 00 00 */ li r0, 0 -/* 801C9630 001C5290 90 7C 00 08 */ stw r3, 8(r28) -/* 801C9634 001C5294 90 1C 00 28 */ stw r0, 0x28(r28) -lbl_801C9638: -/* 801C9638 001C5298 80 1C 00 08 */ lwz r0, 8(r28) -/* 801C963C 001C529C 54 00 1F 7E */ srwi r0, r0, 0x1d -/* 801C9640 001C52A0 28 00 00 02 */ cmplwi r0, 2 -/* 801C9644 001C52A4 40 80 00 1C */ bge lbl_801C9660 -/* 801C9648 001C52A8 38 60 00 01 */ li r3, 1 -/* 801C964C 001C52AC 38 00 00 00 */ li r0, 0 -/* 801C9650 001C52B0 98 7C 00 0A */ stb r3, 0xa(r28) -/* 801C9654 001C52B4 38 60 00 00 */ li r3, 0 -/* 801C9658 001C52B8 90 1C 00 28 */ stw r0, 0x28(r28) -/* 801C965C 001C52BC 48 00 02 58 */ b lbl_801C98B4 -lbl_801C9660: -/* 801C9660 001C52C0 80 1C 00 04 */ lwz r0, 4(r28) -/* 801C9664 001C52C4 54 00 3F FF */ rlwinm. r0, r0, 7, 0x1f, 0x1f -/* 801C9668 001C52C8 41 82 00 28 */ beq lbl_801C9690 -/* 801C966C 001C52CC 4B FF E2 CD */ bl func_801C7938 -/* 801C9670 001C52D0 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9674 001C52D4 41 82 00 1C */ beq lbl_801C9690 -/* 801C9678 001C52D8 38 60 00 01 */ li r3, 1 -/* 801C967C 001C52DC 38 00 00 00 */ li r0, 0 -/* 801C9680 001C52E0 98 7C 00 0A */ stb r3, 0xa(r28) -/* 801C9684 001C52E4 38 60 00 00 */ li r3, 0 -/* 801C9688 001C52E8 90 1C 00 28 */ stw r0, 0x28(r28) -/* 801C968C 001C52EC 48 00 02 28 */ b lbl_801C98B4 -lbl_801C9690: -/* 801C9690 001C52F0 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C9694 001C52F4 3B A0 00 00 */ li r29, 0 -/* 801C9698 001C52F8 41 82 00 AC */ beq lbl_801C9744 -/* 801C969C 001C52FC 80 1C 00 08 */ lwz r0, 8(r28) -/* 801C96A0 001C5300 54 00 1F 7E */ srwi r0, r0, 0x1d -/* 801C96A4 001C5304 28 00 00 03 */ cmplwi r0, 3 -/* 801C96A8 001C5308 41 80 00 9C */ blt lbl_801C9744 -lbl_801C96AC: -/* 801C96AC 001C530C 7F 83 E3 78 */ mr r3, r28 -/* 801C96B0 001C5310 38 80 00 00 */ li r4, 0 -/* 801C96B4 001C5314 48 00 71 B1 */ bl func_801D0864 -/* 801C96B8 001C5318 2C 03 00 01 */ cmpwi r3, 1 -/* 801C96BC 001C531C 40 82 00 28 */ bne lbl_801C96E4 -/* 801C96C0 001C5320 80 1C 00 08 */ lwz r0, 8(r28) -/* 801C96C4 001C5324 3B BD 00 02 */ addi r29, r29, 2 -/* 801C96C8 001C5328 3B DE FF FE */ addi r30, r30, -2 -/* 801C96CC 001C532C 54 00 27 3C */ rlwinm r0, r0, 4, 0x1c, 0x1e -/* 801C96D0 001C5330 7C 7C 02 14 */ add r3, r28, r0 -/* 801C96D4 001C5334 A0 03 00 0C */ lhz r0, 0xc(r3) -/* 801C96D8 001C5338 B0 1A 00 00 */ sth r0, 0(r26) -/* 801C96DC 001C533C 3B 5A 00 02 */ addi r26, r26, 2 -/* 801C96E0 001C5340 48 00 00 24 */ b lbl_801C9704 -lbl_801C96E4: -/* 801C96E4 001C5344 80 1C 00 08 */ lwz r0, 8(r28) -/* 801C96E8 001C5348 3B BD 00 01 */ addi r29, r29, 1 -/* 801C96EC 001C534C 3B DE FF FF */ addi r30, r30, -1 -/* 801C96F0 001C5350 54 00 1F 7E */ srwi r0, r0, 0x1d -/* 801C96F4 001C5354 7C 7C 02 14 */ add r3, r28, r0 -/* 801C96F8 001C5358 88 03 00 0C */ lbz r0, 0xc(r3) -/* 801C96FC 001C535C 98 1A 00 00 */ stb r0, 0(r26) -/* 801C9700 001C5360 3B 5A 00 01 */ addi r26, r26, 1 -lbl_801C9704: -/* 801C9704 001C5364 80 9C 00 08 */ lwz r4, 8(r28) -/* 801C9708 001C5368 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C970C 001C536C 54 83 1F 7E */ srwi r3, r4, 0x1d -/* 801C9710 001C5370 38 03 FF FF */ addi r0, r3, -1 -/* 801C9714 001C5374 50 04 E8 04 */ rlwimi r4, r0, 0x1d, 0, 2 -/* 801C9718 001C5378 90 9C 00 08 */ stw r4, 8(r28) -/* 801C971C 001C537C 41 82 00 10 */ beq lbl_801C972C -/* 801C9720 001C5380 54 80 1F 7E */ srwi r0, r4, 0x1d -/* 801C9724 001C5384 28 00 00 03 */ cmplwi r0, 3 -/* 801C9728 001C5388 40 80 FF 84 */ bge lbl_801C96AC -lbl_801C972C: -/* 801C972C 001C538C 80 1C 00 08 */ lwz r0, 8(r28) -/* 801C9730 001C5390 54 00 1F 7E */ srwi r0, r0, 0x1d -/* 801C9734 001C5394 28 00 00 02 */ cmplwi r0, 2 -/* 801C9738 001C5398 40 82 00 0C */ bne lbl_801C9744 -/* 801C973C 001C539C 80 1C 00 30 */ lwz r0, 0x30(r28) -/* 801C9740 001C53A0 90 1C 00 28 */ stw r0, 0x28(r28) -lbl_801C9744: -/* 801C9744 001C53A4 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C9748 001C53A8 41 82 00 D8 */ beq lbl_801C9820 -/* 801C974C 001C53AC 80 1C 00 28 */ lwz r0, 0x28(r28) -/* 801C9750 001C53B0 2C 00 00 00 */ cmpwi r0, 0 -/* 801C9754 001C53B4 40 82 00 0C */ bne lbl_801C9760 -/* 801C9758 001C53B8 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C975C 001C53BC 41 82 00 C4 */ beq lbl_801C9820 -lbl_801C9760: -/* 801C9760 001C53C0 80 1C 00 28 */ lwz r0, 0x28(r28) -/* 801C9764 001C53C4 2C 00 00 00 */ cmpwi r0, 0 -/* 801C9768 001C53C8 40 82 00 5C */ bne lbl_801C97C4 -/* 801C976C 001C53CC 7F 83 E3 78 */ mr r3, r28 -/* 801C9770 001C53D0 38 80 00 00 */ li r4, 0 -/* 801C9774 001C53D4 38 A0 00 00 */ li r5, 0 -/* 801C9778 001C53D8 4B FF FC 59 */ bl func_801C93D0 -/* 801C977C 001C53DC 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9780 001C53E0 41 82 00 44 */ beq lbl_801C97C4 -/* 801C9784 001C53E4 2C 03 00 01 */ cmpwi r3, 1 -/* 801C9788 001C53E8 40 82 00 18 */ bne lbl_801C97A0 -/* 801C978C 001C53EC 38 60 00 01 */ li r3, 1 -/* 801C9790 001C53F0 38 00 00 00 */ li r0, 0 -/* 801C9794 001C53F4 98 7C 00 0A */ stb r3, 0xa(r28) -/* 801C9798 001C53F8 90 1C 00 28 */ stw r0, 0x28(r28) -/* 801C979C 001C53FC 48 00 00 20 */ b lbl_801C97BC -lbl_801C97A0: -/* 801C97A0 001C5400 80 7C 00 08 */ lwz r3, 8(r28) -/* 801C97A4 001C5404 38 80 00 00 */ li r4, 0 -/* 801C97A8 001C5408 38 00 00 01 */ li r0, 1 -/* 801C97AC 001C540C 90 9C 00 28 */ stw r4, 0x28(r28) -/* 801C97B0 001C5410 54 63 00 FE */ clrlwi r3, r3, 3 -/* 801C97B4 001C5414 90 7C 00 08 */ stw r3, 8(r28) -/* 801C97B8 001C5418 98 1C 00 09 */ stb r0, 9(r28) -lbl_801C97BC: -/* 801C97BC 001C541C 3B C0 00 00 */ li r30, 0 -/* 801C97C0 001C5420 48 00 00 60 */ b lbl_801C9820 -lbl_801C97C4: -/* 801C97C4 001C5424 80 BC 00 28 */ lwz r5, 0x28(r28) -/* 801C97C8 001C5428 7C 05 F0 40 */ cmplw r5, r30 -/* 801C97CC 001C542C 90 A1 00 08 */ stw r5, 8(r1) -/* 801C97D0 001C5430 40 81 00 0C */ ble lbl_801C97DC -/* 801C97D4 001C5434 7F C5 F3 78 */ mr r5, r30 -/* 801C97D8 001C5438 93 C1 00 08 */ stw r30, 8(r1) -lbl_801C97DC: -/* 801C97DC 001C543C 80 9C 00 24 */ lwz r4, 0x24(r28) -/* 801C97E0 001C5440 7F 43 D3 78 */ mr r3, r26 -/* 801C97E4 001C5444 4B E3 A8 1D */ bl memcpy -/* 801C97E8 001C5448 80 81 00 08 */ lwz r4, 8(r1) -/* 801C97EC 001C544C 80 7C 00 24 */ lwz r3, 0x24(r28) -/* 801C97F0 001C5450 80 1C 00 28 */ lwz r0, 0x28(r28) -/* 801C97F4 001C5454 7F C4 F0 51 */ subf. r30, r4, r30 -/* 801C97F8 001C5458 7C 63 22 14 */ add r3, r3, r4 -/* 801C97FC 001C545C 7F 5A 22 14 */ add r26, r26, r4 -/* 801C9800 001C5460 90 7C 00 24 */ stw r3, 0x24(r28) -/* 801C9804 001C5464 7F BD 22 14 */ add r29, r29, r4 -/* 801C9808 001C5468 80 61 00 08 */ lwz r3, 8(r1) -/* 801C980C 001C546C 7C 03 00 50 */ subf r0, r3, r0 -/* 801C9810 001C5470 90 1C 00 28 */ stw r0, 0x28(r28) -/* 801C9814 001C5474 41 82 00 0C */ beq lbl_801C9820 -/* 801C9818 001C5478 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C981C 001C547C 40 82 FF 44 */ bne lbl_801C9760 -lbl_801C9820: -/* 801C9820 001C5480 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C9824 001C5484 41 82 00 8C */ beq lbl_801C98B0 -/* 801C9828 001C5488 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C982C 001C548C 40 82 00 84 */ bne lbl_801C98B0 -/* 801C9830 001C5490 83 FC 00 1C */ lwz r31, 0x1c(r28) -/* 801C9834 001C5494 7F 83 E3 78 */ mr r3, r28 -/* 801C9838 001C5498 83 3C 00 20 */ lwz r25, 0x20(r28) -/* 801C983C 001C549C 38 81 00 08 */ addi r4, r1, 8 -/* 801C9840 001C54A0 93 5C 00 1C */ stw r26, 0x1c(r28) -/* 801C9844 001C54A4 38 A0 00 01 */ li r5, 1 -/* 801C9848 001C54A8 93 DC 00 20 */ stw r30, 0x20(r28) -/* 801C984C 001C54AC 4B FF FB 85 */ bl func_801C93D0 -/* 801C9850 001C54B0 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9854 001C54B4 41 82 00 3C */ beq lbl_801C9890 -/* 801C9858 001C54B8 2C 03 00 01 */ cmpwi r3, 1 -/* 801C985C 001C54BC 40 82 00 18 */ bne lbl_801C9874 -/* 801C9860 001C54C0 38 60 00 01 */ li r3, 1 -/* 801C9864 001C54C4 38 00 00 00 */ li r0, 0 -/* 801C9868 001C54C8 98 7C 00 0A */ stb r3, 0xa(r28) -/* 801C986C 001C54CC 90 1C 00 28 */ stw r0, 0x28(r28) -/* 801C9870 001C54D0 48 00 00 20 */ b lbl_801C9890 -lbl_801C9874: -/* 801C9874 001C54D4 80 7C 00 08 */ lwz r3, 8(r28) -/* 801C9878 001C54D8 38 80 00 00 */ li r4, 0 -/* 801C987C 001C54DC 38 00 00 01 */ li r0, 1 -/* 801C9880 001C54E0 90 9C 00 28 */ stw r4, 0x28(r28) -/* 801C9884 001C54E4 54 63 00 FE */ clrlwi r3, r3, 3 -/* 801C9888 001C54E8 90 7C 00 08 */ stw r3, 8(r28) -/* 801C988C 001C54EC 98 1C 00 09 */ stb r0, 9(r28) -lbl_801C9890: -/* 801C9890 001C54F0 80 01 00 08 */ lwz r0, 8(r1) -/* 801C9894 001C54F4 7F 83 E3 78 */ mr r3, r28 -/* 801C9898 001C54F8 93 FC 00 1C */ stw r31, 0x1c(r28) -/* 801C989C 001C54FC 7F BD 02 14 */ add r29, r29, r0 -/* 801C98A0 001C5500 93 3C 00 20 */ stw r25, 0x20(r28) -/* 801C98A4 001C5504 4B FF FB 05 */ bl func_801C93A8 -/* 801C98A8 001C5508 38 00 00 00 */ li r0, 0 -/* 801C98AC 001C550C 90 1C 00 28 */ stw r0, 0x28(r28) -lbl_801C98B0: -/* 801C98B0 001C5510 7C 7D DB 96 */ divwu r3, r29, r27 -lbl_801C98B4: -/* 801C98B4 001C5514 BB 21 00 14 */ lmw r25, 0x14(r1) -/* 801C98B8 001C5518 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801C98BC 001C551C 7C 08 03 A6 */ mtlr r0 -/* 801C98C0 001C5520 38 21 00 30 */ addi r1, r1, 0x30 -/* 801C98C4 001C5524 4E 80 00 20 */ blr - -.global func_801C98C8 -func_801C98C8: -/* 801C98C8 001C5528 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801C98CC 001C552C 7C 08 02 A6 */ mflr r0 -/* 801C98D0 001C5530 90 01 00 34 */ stw r0, 0x34(r1) -/* 801C98D4 001C5534 BF 21 00 14 */ stmw r25, 0x14(r1) -/* 801C98D8 001C5538 7C 9B 23 78 */ mr r27, r4 -/* 801C98DC 001C553C 7C DC 33 78 */ mr r28, r6 -/* 801C98E0 001C5540 7C 7A 1B 78 */ mr r26, r3 -/* 801C98E4 001C5544 7C B9 2B 78 */ mr r25, r5 -/* 801C98E8 001C5548 38 80 00 00 */ li r4, 0 -/* 801C98EC 001C554C 7F 83 E3 78 */ mr r3, r28 -/* 801C98F0 001C5550 48 00 6F 75 */ bl func_801D0864 -/* 801C98F4 001C5554 2C 03 00 00 */ cmpwi r3, 0 -/* 801C98F8 001C5558 40 82 00 10 */ bne lbl_801C9908 -/* 801C98FC 001C555C 7F 83 E3 78 */ mr r3, r28 -/* 801C9900 001C5560 38 80 FF FF */ li r4, -1 -/* 801C9904 001C5564 48 00 6F 61 */ bl func_801D0864 -lbl_801C9908: -/* 801C9908 001C5568 7F DB C9 D7 */ mullw. r30, r27, r25 -/* 801C990C 001C556C 41 82 00 1C */ beq lbl_801C9928 -/* 801C9910 001C5570 88 1C 00 0A */ lbz r0, 0xa(r28) -/* 801C9914 001C5574 2C 00 00 00 */ cmpwi r0, 0 -/* 801C9918 001C5578 40 82 00 10 */ bne lbl_801C9928 -/* 801C991C 001C557C 80 1C 00 04 */ lwz r0, 4(r28) -/* 801C9920 001C5580 54 00 57 7F */ rlwinm. r0, r0, 0xa, 0x1d, 0x1f -/* 801C9924 001C5584 40 82 00 0C */ bne lbl_801C9930 -lbl_801C9928: -/* 801C9928 001C5588 38 60 00 00 */ li r3, 0 -/* 801C992C 001C558C 48 00 02 90 */ b lbl_801C9BBC -lbl_801C9930: -/* 801C9930 001C5590 28 00 00 02 */ cmplwi r0, 2 -/* 801C9934 001C5594 40 82 00 08 */ bne lbl_801C993C -/* 801C9938 001C5598 48 00 0E 79 */ bl func_801CA7B0 -lbl_801C993C: -/* 801C993C 001C559C 80 7C 00 04 */ lwz r3, 4(r28) -/* 801C9940 001C55A0 3B E0 00 01 */ li r31, 1 -/* 801C9944 001C55A4 38 80 00 00 */ li r4, 0 -/* 801C9948 001C55A8 54 60 6F FF */ rlwinm. r0, r3, 0xd, 0x1f, 0x1f -/* 801C994C 001C55AC 41 82 00 10 */ beq lbl_801C995C -/* 801C9950 001C55B0 54 60 3F BE */ rlwinm r0, r3, 7, 0x1e, 0x1f -/* 801C9954 001C55B4 28 00 00 02 */ cmplwi r0, 2 -/* 801C9958 001C55B8 40 82 00 08 */ bne lbl_801C9960 -lbl_801C995C: -/* 801C995C 001C55BC 38 80 00 01 */ li r4, 1 -lbl_801C9960: -/* 801C9960 001C55C0 2C 04 00 00 */ cmpwi r4, 0 -/* 801C9964 001C55C4 40 82 00 18 */ bne lbl_801C997C -/* 801C9968 001C55C8 80 1C 00 04 */ lwz r0, 4(r28) -/* 801C996C 001C55CC 54 00 3F BE */ rlwinm r0, r0, 7, 0x1e, 0x1f -/* 801C9970 001C55D0 28 00 00 01 */ cmplwi r0, 1 -/* 801C9974 001C55D4 41 82 00 08 */ beq lbl_801C997C -/* 801C9978 001C55D8 3B E0 00 00 */ li r31, 0 -lbl_801C997C: -/* 801C997C 001C55DC 80 1C 00 08 */ lwz r0, 8(r28) -/* 801C9980 001C55E0 54 00 1F 7F */ rlwinm. r0, r0, 3, 0x1d, 0x1f -/* 801C9984 001C55E4 40 82 00 54 */ bne lbl_801C99D8 -/* 801C9988 001C55E8 80 7C 00 04 */ lwz r3, 4(r28) -/* 801C998C 001C55EC 54 60 2F BD */ rlwinm. r0, r3, 5, 0x1e, 0x1e -/* 801C9990 001C55F0 54 60 2F 7E */ rlwinm r0, r3, 5, 0x1d, 0x1f -/* 801C9994 001C55F4 41 82 00 44 */ beq lbl_801C99D8 -/* 801C9998 001C55F8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d -/* 801C999C 001C55FC 41 82 00 24 */ beq lbl_801C99C0 -/* 801C99A0 001C5600 7F 83 E3 78 */ mr r3, r28 -/* 801C99A4 001C5604 38 80 00 00 */ li r4, 0 -/* 801C99A8 001C5608 38 A0 00 02 */ li r5, 2 -/* 801C99AC 001C560C 48 00 05 81 */ bl func_801C9F2C -/* 801C99B0 001C5610 2C 03 00 00 */ cmpwi r3, 0 -/* 801C99B4 001C5614 41 82 00 0C */ beq lbl_801C99C0 -/* 801C99B8 001C5618 38 60 00 00 */ li r3, 0 -/* 801C99BC 001C561C 48 00 02 00 */ b lbl_801C9BBC -lbl_801C99C0: -/* 801C99C0 001C5620 80 1C 00 08 */ lwz r0, 8(r28) -/* 801C99C4 001C5624 38 60 00 01 */ li r3, 1 -/* 801C99C8 001C5628 50 60 E8 04 */ rlwimi r0, r3, 0x1d, 0, 2 -/* 801C99CC 001C562C 90 1C 00 08 */ stw r0, 8(r28) -/* 801C99D0 001C5630 7F 83 E3 78 */ mr r3, r28 -/* 801C99D4 001C5634 4B FF F9 D5 */ bl func_801C93A8 -lbl_801C99D8: -/* 801C99D8 001C5638 80 1C 00 08 */ lwz r0, 8(r28) -/* 801C99DC 001C563C 54 00 1F 7E */ srwi r0, r0, 0x1d -/* 801C99E0 001C5640 28 00 00 01 */ cmplwi r0, 1 -/* 801C99E4 001C5644 41 82 00 1C */ beq lbl_801C9A00 -/* 801C99E8 001C5648 38 60 00 01 */ li r3, 1 -/* 801C99EC 001C564C 38 00 00 00 */ li r0, 0 -/* 801C99F0 001C5650 98 7C 00 0A */ stb r3, 0xa(r28) -/* 801C99F4 001C5654 38 60 00 00 */ li r3, 0 -/* 801C99F8 001C5658 90 1C 00 28 */ stw r0, 0x28(r28) -/* 801C99FC 001C565C 48 00 01 C0 */ b lbl_801C9BBC -lbl_801C9A00: -/* 801C9A00 001C5660 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C9A04 001C5664 3B A0 00 00 */ li r29, 0 -/* 801C9A08 001C5668 41 82 01 28 */ beq lbl_801C9B30 -/* 801C9A0C 001C566C 80 7C 00 1C */ lwz r3, 0x1c(r28) -/* 801C9A10 001C5670 80 9C 00 24 */ lwz r4, 0x24(r28) -/* 801C9A14 001C5674 7C 04 18 40 */ cmplw r4, r3 -/* 801C9A18 001C5678 40 82 00 0C */ bne lbl_801C9A24 -/* 801C9A1C 001C567C 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C9A20 001C5680 41 82 01 10 */ beq lbl_801C9B30 -lbl_801C9A24: -/* 801C9A24 001C5684 80 1C 00 20 */ lwz r0, 0x20(r28) -/* 801C9A28 001C5688 7C 63 20 50 */ subf r3, r3, r4 -/* 801C9A2C 001C568C 7C 03 00 50 */ subf r0, r3, r0 -/* 801C9A30 001C5690 90 1C 00 28 */ stw r0, 0x28(r28) -lbl_801C9A34: -/* 801C9A34 001C5694 80 BC 00 28 */ lwz r5, 0x28(r28) -/* 801C9A38 001C5698 3B 20 00 00 */ li r25, 0 -/* 801C9A3C 001C569C 7C 05 F0 40 */ cmplw r5, r30 -/* 801C9A40 001C56A0 90 A1 00 08 */ stw r5, 8(r1) -/* 801C9A44 001C56A4 40 81 00 0C */ ble lbl_801C9A50 -/* 801C9A48 001C56A8 7F C5 F3 78 */ mr r5, r30 -/* 801C9A4C 001C56AC 93 C1 00 08 */ stw r30, 8(r1) -lbl_801C9A50: -/* 801C9A50 001C56B0 80 1C 00 04 */ lwz r0, 4(r28) -/* 801C9A54 001C56B4 54 00 3F BE */ rlwinm r0, r0, 7, 0x1e, 0x1f -/* 801C9A58 001C56B8 28 00 00 01 */ cmplwi r0, 1 -/* 801C9A5C 001C56BC 40 82 00 30 */ bne lbl_801C9A8C -/* 801C9A60 001C56C0 2C 05 00 00 */ cmpwi r5, 0 -/* 801C9A64 001C56C4 41 82 00 28 */ beq lbl_801C9A8C -/* 801C9A68 001C56C8 7F 43 D3 78 */ mr r3, r26 -/* 801C9A6C 001C56CC 38 80 00 0A */ li r4, 0xa -/* 801C9A70 001C56D0 48 00 08 FD */ bl func_801CA36C -/* 801C9A74 001C56D4 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9A78 001C56D8 7C 79 1B 78 */ mr r25, r3 -/* 801C9A7C 001C56DC 41 82 00 10 */ beq lbl_801C9A8C -/* 801C9A80 001C56E0 38 03 00 01 */ addi r0, r3, 1 -/* 801C9A84 001C56E4 7C BA 00 50 */ subf r5, r26, r0 -/* 801C9A88 001C56E8 90 A1 00 08 */ stw r5, 8(r1) -lbl_801C9A8C: -/* 801C9A8C 001C56EC 80 A1 00 08 */ lwz r5, 8(r1) -/* 801C9A90 001C56F0 2C 05 00 00 */ cmpwi r5, 0 -/* 801C9A94 001C56F4 41 82 00 38 */ beq lbl_801C9ACC -/* 801C9A98 001C56F8 80 7C 00 24 */ lwz r3, 0x24(r28) -/* 801C9A9C 001C56FC 7F 44 D3 78 */ mr r4, r26 -/* 801C9AA0 001C5700 4B E3 A5 61 */ bl memcpy -/* 801C9AA4 001C5704 80 81 00 08 */ lwz r4, 8(r1) -/* 801C9AA8 001C5708 80 7C 00 24 */ lwz r3, 0x24(r28) -/* 801C9AAC 001C570C 80 1C 00 28 */ lwz r0, 0x28(r28) -/* 801C9AB0 001C5710 7F 5A 22 14 */ add r26, r26, r4 -/* 801C9AB4 001C5714 7C 63 22 14 */ add r3, r3, r4 -/* 801C9AB8 001C5718 7F C4 F0 50 */ subf r30, r4, r30 -/* 801C9ABC 001C571C 90 7C 00 24 */ stw r3, 0x24(r28) -/* 801C9AC0 001C5720 80 61 00 08 */ lwz r3, 8(r1) -/* 801C9AC4 001C5724 7C 03 00 50 */ subf r0, r3, r0 -/* 801C9AC8 001C5728 90 1C 00 28 */ stw r0, 0x28(r28) -lbl_801C9ACC: -/* 801C9ACC 001C572C 80 1C 00 28 */ lwz r0, 0x28(r28) -/* 801C9AD0 001C5730 2C 00 00 00 */ cmpwi r0, 0 -/* 801C9AD4 001C5734 41 82 00 18 */ beq lbl_801C9AEC -/* 801C9AD8 001C5738 2C 19 00 00 */ cmpwi r25, 0 -/* 801C9ADC 001C573C 40 82 00 10 */ bne lbl_801C9AEC -/* 801C9AE0 001C5740 80 1C 00 04 */ lwz r0, 4(r28) -/* 801C9AE4 001C5744 54 00 3F BF */ rlwinm. r0, r0, 7, 0x1e, 0x1f -/* 801C9AE8 001C5748 40 82 00 30 */ bne lbl_801C9B18 -lbl_801C9AEC: -/* 801C9AEC 001C574C 7F 83 E3 78 */ mr r3, r28 -/* 801C9AF0 001C5750 38 80 00 00 */ li r4, 0 -/* 801C9AF4 001C5754 4B FF F9 D9 */ bl func_801C94CC -/* 801C9AF8 001C5758 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9AFC 001C575C 41 82 00 1C */ beq lbl_801C9B18 -/* 801C9B00 001C5760 38 60 00 01 */ li r3, 1 -/* 801C9B04 001C5764 38 00 00 00 */ li r0, 0 -/* 801C9B08 001C5768 98 7C 00 0A */ stb r3, 0xa(r28) -/* 801C9B0C 001C576C 3B C0 00 00 */ li r30, 0 -/* 801C9B10 001C5770 90 1C 00 28 */ stw r0, 0x28(r28) -/* 801C9B14 001C5774 48 00 00 1C */ b lbl_801C9B30 -lbl_801C9B18: -/* 801C9B18 001C5778 80 01 00 08 */ lwz r0, 8(r1) -/* 801C9B1C 001C577C 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C9B20 001C5780 7F BD 02 14 */ add r29, r29, r0 -/* 801C9B24 001C5784 41 82 00 0C */ beq lbl_801C9B30 -/* 801C9B28 001C5788 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C9B2C 001C578C 40 82 FF 08 */ bne lbl_801C9A34 -lbl_801C9B30: -/* 801C9B30 001C5790 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C9B34 001C5794 41 82 00 6C */ beq lbl_801C9BA0 -/* 801C9B38 001C5798 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C9B3C 001C579C 40 82 00 64 */ bne lbl_801C9BA0 -/* 801C9B40 001C57A0 83 3C 00 1C */ lwz r25, 0x1c(r28) -/* 801C9B44 001C57A4 7C 1A F2 14 */ add r0, r26, r30 -/* 801C9B48 001C57A8 83 FC 00 20 */ lwz r31, 0x20(r28) -/* 801C9B4C 001C57AC 7F 83 E3 78 */ mr r3, r28 -/* 801C9B50 001C57B0 93 5C 00 1C */ stw r26, 0x1c(r28) -/* 801C9B54 001C57B4 38 81 00 08 */ addi r4, r1, 8 -/* 801C9B58 001C57B8 93 DC 00 20 */ stw r30, 0x20(r28) -/* 801C9B5C 001C57BC 90 1C 00 24 */ stw r0, 0x24(r28) -/* 801C9B60 001C57C0 4B FF F9 6D */ bl func_801C94CC -/* 801C9B64 001C57C4 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9B68 001C57C8 41 82 00 18 */ beq lbl_801C9B80 -/* 801C9B6C 001C57CC 38 60 00 01 */ li r3, 1 -/* 801C9B70 001C57D0 38 00 00 00 */ li r0, 0 -/* 801C9B74 001C57D4 98 7C 00 0A */ stb r3, 0xa(r28) -/* 801C9B78 001C57D8 90 1C 00 28 */ stw r0, 0x28(r28) -/* 801C9B7C 001C57DC 48 00 00 0C */ b lbl_801C9B88 -lbl_801C9B80: -/* 801C9B80 001C57E0 80 01 00 08 */ lwz r0, 8(r1) -/* 801C9B84 001C57E4 7F BD 02 14 */ add r29, r29, r0 -lbl_801C9B88: -/* 801C9B88 001C57E8 93 3C 00 1C */ stw r25, 0x1c(r28) -/* 801C9B8C 001C57EC 7F 83 E3 78 */ mr r3, r28 -/* 801C9B90 001C57F0 93 FC 00 20 */ stw r31, 0x20(r28) -/* 801C9B94 001C57F4 4B FF F8 15 */ bl func_801C93A8 -/* 801C9B98 001C57F8 38 00 00 00 */ li r0, 0 -/* 801C9B9C 001C57FC 90 1C 00 28 */ stw r0, 0x28(r28) -lbl_801C9BA0: -/* 801C9BA0 001C5800 80 1C 00 04 */ lwz r0, 4(r28) -/* 801C9BA4 001C5804 54 00 3F BE */ rlwinm r0, r0, 7, 0x1e, 0x1f -/* 801C9BA8 001C5808 28 00 00 02 */ cmplwi r0, 2 -/* 801C9BAC 001C580C 41 82 00 0C */ beq lbl_801C9BB8 -/* 801C9BB0 001C5810 38 00 00 00 */ li r0, 0 -/* 801C9BB4 001C5814 90 1C 00 28 */ stw r0, 0x28(r28) -lbl_801C9BB8: -/* 801C9BB8 001C5818 7C 7D DB 96 */ divwu r3, r29, r27 -lbl_801C9BBC: -/* 801C9BBC 001C581C BB 21 00 14 */ lmw r25, 0x14(r1) -/* 801C9BC0 001C5820 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801C9BC4 001C5824 7C 08 03 A6 */ mtlr r0 -/* 801C9BC8 001C5828 38 21 00 30 */ addi r1, r1, 0x30 -/* 801C9BCC 001C582C 4E 80 00 20 */ blr - -.global func_801C9BD0 -func_801C9BD0: -/* 801C9BD0 001C5830 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801C9BD4 001C5834 7C 08 02 A6 */ mflr r0 -/* 801C9BD8 001C5838 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9BDC 001C583C 90 01 00 24 */ stw r0, 0x24(r1) -/* 801C9BE0 001C5840 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801C9BE4 001C5844 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801C9BE8 001C5848 93 A1 00 14 */ stw r29, 0x14(r1) -/* 801C9BEC 001C584C 7C 7D 1B 78 */ mr r29, r3 -/* 801C9BF0 001C5850 40 82 00 0C */ bne lbl_801C9BFC -/* 801C9BF4 001C5854 38 60 FF FF */ li r3, -1 -/* 801C9BF8 001C5858 48 00 00 78 */ b lbl_801C9C70 -lbl_801C9BFC: -/* 801C9BFC 001C585C 80 03 00 04 */ lwz r0, 4(r3) -/* 801C9C00 001C5860 54 00 57 7F */ rlwinm. r0, r0, 0xa, 0x1d, 0x1f -/* 801C9C04 001C5864 40 82 00 0C */ bne lbl_801C9C10 -/* 801C9C08 001C5868 38 60 00 00 */ li r3, 0 -/* 801C9C0C 001C586C 48 00 00 64 */ b lbl_801C9C70 -lbl_801C9C10: -/* 801C9C10 001C5870 48 00 00 7D */ bl func_801C9C8C -/* 801C9C14 001C5874 81 9D 00 44 */ lwz r12, 0x44(r29) -/* 801C9C18 001C5878 7C 7E 1B 78 */ mr r30, r3 -/* 801C9C1C 001C587C 80 7D 00 00 */ lwz r3, 0(r29) -/* 801C9C20 001C5880 7D 89 03 A6 */ mtctr r12 -/* 801C9C24 001C5884 4E 80 04 21 */ bctrl -/* 801C9C28 001C5888 80 1D 00 08 */ lwz r0, 8(r29) -/* 801C9C2C 001C588C 38 A0 00 00 */ li r5, 0 -/* 801C9C30 001C5890 80 9D 00 04 */ lwz r4, 4(r29) -/* 801C9C34 001C5894 7C 7F 1B 78 */ mr r31, r3 -/* 801C9C38 001C5898 54 00 27 FF */ rlwinm. r0, r0, 4, 0x1f, 0x1f -/* 801C9C3C 001C589C 90 BD 00 00 */ stw r5, 0(r29) -/* 801C9C40 001C58A0 54 84 02 8C */ rlwinm r4, r4, 0, 0xa, 6 -/* 801C9C44 001C58A4 90 9D 00 04 */ stw r4, 4(r29) -/* 801C9C48 001C58A8 41 82 00 0C */ beq lbl_801C9C54 -/* 801C9C4C 001C58AC 80 7D 00 1C */ lwz r3, 0x1c(r29) -/* 801C9C50 001C58B0 4B E4 0B 75 */ bl func_8000A7C4 -lbl_801C9C54: -/* 801C9C54 001C58B4 2C 1E 00 00 */ cmpwi r30, 0 -/* 801C9C58 001C58B8 38 00 00 00 */ li r0, 0 -/* 801C9C5C 001C58BC 40 82 00 0C */ bne lbl_801C9C68 -/* 801C9C60 001C58C0 2C 1F 00 00 */ cmpwi r31, 0 -/* 801C9C64 001C58C4 41 82 00 08 */ beq lbl_801C9C6C -lbl_801C9C68: -/* 801C9C68 001C58C8 38 00 00 01 */ li r0, 1 -lbl_801C9C6C: -/* 801C9C6C 001C58CC 7C 60 00 D0 */ neg r3, r0 -lbl_801C9C70: -/* 801C9C70 001C58D0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801C9C74 001C58D4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801C9C78 001C58D8 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 801C9C7C 001C58DC 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 801C9C80 001C58E0 7C 08 03 A6 */ mtlr r0 -/* 801C9C84 001C58E4 38 21 00 20 */ addi r1, r1, 0x20 -/* 801C9C88 001C58E8 4E 80 00 20 */ blr - -.global func_801C9C8C -func_801C9C8C: -/* 801C9C8C 001C58EC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801C9C90 001C58F0 7C 08 02 A6 */ mflr r0 -/* 801C9C94 001C58F4 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9C98 001C58F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 801C9C9C 001C58FC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801C9CA0 001C5900 7C 7F 1B 78 */ mr r31, r3 -/* 801C9CA4 001C5904 93 C1 00 08 */ stw r30, 8(r1) -/* 801C9CA8 001C5908 40 82 00 0C */ bne lbl_801C9CB4 -/* 801C9CAC 001C590C 4B FF DD 11 */ bl func_801C79BC -/* 801C9CB0 001C5910 48 00 00 F8 */ b lbl_801C9DA8 -lbl_801C9CB4: -/* 801C9CB4 001C5914 88 03 00 0A */ lbz r0, 0xa(r3) -/* 801C9CB8 001C5918 2C 00 00 00 */ cmpwi r0, 0 -/* 801C9CBC 001C591C 40 82 00 10 */ bne lbl_801C9CCC -/* 801C9CC0 001C5920 80 83 00 04 */ lwz r4, 4(r3) -/* 801C9CC4 001C5924 54 80 57 7F */ rlwinm. r0, r4, 0xa, 0x1d, 0x1f -/* 801C9CC8 001C5928 40 82 00 0C */ bne lbl_801C9CD4 -lbl_801C9CCC: -/* 801C9CCC 001C592C 38 60 FF FF */ li r3, -1 -/* 801C9CD0 001C5930 48 00 00 D8 */ b lbl_801C9DA8 -lbl_801C9CD4: -/* 801C9CD4 001C5934 54 80 2F 7E */ rlwinm r0, r4, 5, 0x1d, 0x1f -/* 801C9CD8 001C5938 28 00 00 01 */ cmplwi r0, 1 -/* 801C9CDC 001C593C 40 82 00 0C */ bne lbl_801C9CE8 -/* 801C9CE0 001C5940 38 60 00 00 */ li r3, 0 -/* 801C9CE4 001C5944 48 00 00 C4 */ b lbl_801C9DA8 -lbl_801C9CE8: -/* 801C9CE8 001C5948 80 83 00 08 */ lwz r4, 8(r3) -/* 801C9CEC 001C594C 54 80 1F 7E */ srwi r0, r4, 0x1d -/* 801C9CF0 001C5950 28 00 00 03 */ cmplwi r0, 3 -/* 801C9CF4 001C5954 41 80 00 10 */ blt lbl_801C9D04 -/* 801C9CF8 001C5958 38 00 00 02 */ li r0, 2 -/* 801C9CFC 001C595C 50 04 E8 04 */ rlwimi r4, r0, 0x1d, 0, 2 -/* 801C9D00 001C5960 90 83 00 08 */ stw r4, 8(r3) -lbl_801C9D04: -/* 801C9D04 001C5964 80 03 00 08 */ lwz r0, 8(r3) -/* 801C9D08 001C5968 54 00 1F 7E */ srwi r0, r0, 0x1d -/* 801C9D0C 001C596C 28 00 00 02 */ cmplwi r0, 2 -/* 801C9D10 001C5970 40 82 00 0C */ bne lbl_801C9D1C -/* 801C9D14 001C5974 38 00 00 00 */ li r0, 0 -/* 801C9D18 001C5978 90 03 00 28 */ stw r0, 0x28(r3) -lbl_801C9D1C: -/* 801C9D1C 001C597C 80 83 00 08 */ lwz r4, 8(r3) -/* 801C9D20 001C5980 54 80 1F 7E */ srwi r0, r4, 0x1d -/* 801C9D24 001C5984 28 00 00 01 */ cmplwi r0, 1 -/* 801C9D28 001C5988 41 82 00 14 */ beq lbl_801C9D3C -/* 801C9D2C 001C598C 54 80 00 FE */ clrlwi r0, r4, 3 -/* 801C9D30 001C5990 90 03 00 08 */ stw r0, 8(r3) -/* 801C9D34 001C5994 38 60 00 00 */ li r3, 0 -/* 801C9D38 001C5998 48 00 00 70 */ b lbl_801C9DA8 -lbl_801C9D3C: -/* 801C9D3C 001C599C 80 03 00 04 */ lwz r0, 4(r3) -/* 801C9D40 001C59A0 54 00 57 7E */ rlwinm r0, r0, 0xa, 0x1d, 0x1f -/* 801C9D44 001C59A4 28 00 00 01 */ cmplwi r0, 1 -/* 801C9D48 001C59A8 41 82 00 0C */ beq lbl_801C9D54 -/* 801C9D4C 001C59AC 3B C0 00 00 */ li r30, 0 -/* 801C9D50 001C59B0 48 00 00 10 */ b lbl_801C9D60 -lbl_801C9D54: -/* 801C9D54 001C59B4 7F E3 FB 78 */ mr r3, r31 -/* 801C9D58 001C59B8 48 00 01 D1 */ bl func_801C9F28 -/* 801C9D5C 001C59BC 7C 7E 1B 78 */ mr r30, r3 -lbl_801C9D60: -/* 801C9D60 001C59C0 7F E3 FB 78 */ mr r3, r31 -/* 801C9D64 001C59C4 38 80 00 00 */ li r4, 0 -/* 801C9D68 001C59C8 4B FF F7 65 */ bl func_801C94CC -/* 801C9D6C 001C59CC 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9D70 001C59D0 41 82 00 1C */ beq lbl_801C9D8C -/* 801C9D74 001C59D4 38 60 00 01 */ li r3, 1 -/* 801C9D78 001C59D8 38 00 00 00 */ li r0, 0 -/* 801C9D7C 001C59DC 98 7F 00 0A */ stb r3, 0xa(r31) -/* 801C9D80 001C59E0 38 60 FF FF */ li r3, -1 -/* 801C9D84 001C59E4 90 1F 00 28 */ stw r0, 0x28(r31) -/* 801C9D88 001C59E8 48 00 00 20 */ b lbl_801C9DA8 -lbl_801C9D8C: -/* 801C9D8C 001C59EC 80 1F 00 08 */ lwz r0, 8(r31) -/* 801C9D90 001C59F0 38 80 00 00 */ li r4, 0 -/* 801C9D94 001C59F4 93 DF 00 18 */ stw r30, 0x18(r31) -/* 801C9D98 001C59F8 38 60 00 00 */ li r3, 0 -/* 801C9D9C 001C59FC 54 00 00 FE */ clrlwi r0, r0, 3 -/* 801C9DA0 001C5A00 90 1F 00 08 */ stw r0, 8(r31) -/* 801C9DA4 001C5A04 90 9F 00 28 */ stw r4, 0x28(r31) -lbl_801C9DA8: -/* 801C9DA8 001C5A08 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801C9DAC 001C5A0C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801C9DB0 001C5A10 83 C1 00 08 */ lwz r30, 8(r1) -/* 801C9DB4 001C5A14 7C 08 03 A6 */ mtlr r0 -/* 801C9DB8 001C5A18 38 21 00 10 */ addi r1, r1, 0x10 -/* 801C9DBC 001C5A1C 4E 80 00 20 */ blr - -.global func_801C9DC0 -func_801C9DC0: -/* 801C9DC0 001C5A20 3C C0 80 42 */ lis r6, lbl_80422D48@ha -/* 801C9DC4 001C5A24 38 C6 2D 48 */ addi r6, r6, lbl_80422D48@l -/* 801C9DC8 001C5A28 80 C6 00 38 */ lwz r6, 0x38(r6) -/* 801C9DCC 001C5A2C 7C A9 03 A6 */ mtctr r5 -/* 801C9DD0 001C5A30 2C 05 00 00 */ cmpwi r5, 0 -/* 801C9DD4 001C5A34 40 81 00 A4 */ ble lbl_801C9E78 -lbl_801C9DD8: -/* 801C9DD8 001C5A38 88 A3 00 00 */ lbz r5, 0(r3) -/* 801C9DDC 001C5A3C 38 00 00 00 */ li r0, 0 -/* 801C9DE0 001C5A40 38 63 00 01 */ addi r3, r3, 1 -/* 801C9DE4 001C5A44 7C A7 07 75 */ extsb. r7, r5 -/* 801C9DE8 001C5A48 41 80 00 0C */ blt lbl_801C9DF4 -/* 801C9DEC 001C5A4C 2C 07 01 00 */ cmpwi r7, 0x100 -/* 801C9DF0 001C5A50 41 80 00 08 */ blt lbl_801C9DF8 -lbl_801C9DF4: -/* 801C9DF4 001C5A54 38 00 00 01 */ li r0, 1 -lbl_801C9DF8: -/* 801C9DF8 001C5A58 2C 00 00 00 */ cmpwi r0, 0 -/* 801C9DFC 001C5A5C 41 82 00 08 */ beq lbl_801C9E04 -/* 801C9E00 001C5A60 48 00 00 0C */ b lbl_801C9E0C -lbl_801C9E04: -/* 801C9E04 001C5A64 80 A6 00 10 */ lwz r5, 0x10(r6) -/* 801C9E08 001C5A68 7C E5 38 AE */ lbzx r7, r5, r7 -lbl_801C9E0C: -/* 801C9E0C 001C5A6C 88 A4 00 00 */ lbz r5, 0(r4) -/* 801C9E10 001C5A70 7C E8 07 74 */ extsb r8, r7 -/* 801C9E14 001C5A74 38 00 00 00 */ li r0, 0 -/* 801C9E18 001C5A78 38 84 00 01 */ addi r4, r4, 1 -/* 801C9E1C 001C5A7C 7C A7 07 75 */ extsb. r7, r5 -/* 801C9E20 001C5A80 41 80 00 0C */ blt lbl_801C9E2C -/* 801C9E24 001C5A84 2C 07 01 00 */ cmpwi r7, 0x100 -/* 801C9E28 001C5A88 41 80 00 08 */ blt lbl_801C9E30 -lbl_801C9E2C: -/* 801C9E2C 001C5A8C 38 00 00 01 */ li r0, 1 -lbl_801C9E30: -/* 801C9E30 001C5A90 2C 00 00 00 */ cmpwi r0, 0 -/* 801C9E34 001C5A94 41 82 00 08 */ beq lbl_801C9E3C -/* 801C9E38 001C5A98 48 00 00 0C */ b lbl_801C9E44 -lbl_801C9E3C: -/* 801C9E3C 001C5A9C 80 A6 00 10 */ lwz r5, 0x10(r6) -/* 801C9E40 001C5AA0 7C E5 38 AE */ lbzx r7, r5, r7 -lbl_801C9E44: -/* 801C9E44 001C5AA4 7C E0 07 74 */ extsb r0, r7 -/* 801C9E48 001C5AA8 7C 08 00 00 */ cmpw r8, r0 -/* 801C9E4C 001C5AAC 40 80 00 0C */ bge lbl_801C9E58 -/* 801C9E50 001C5AB0 38 60 FF FF */ li r3, -1 -/* 801C9E54 001C5AB4 4E 80 00 20 */ blr -lbl_801C9E58: -/* 801C9E58 001C5AB8 40 81 00 0C */ ble lbl_801C9E64 -/* 801C9E5C 001C5ABC 38 60 00 01 */ li r3, 1 -/* 801C9E60 001C5AC0 4E 80 00 20 */ blr -lbl_801C9E64: -/* 801C9E64 001C5AC4 2C 08 00 00 */ cmpwi r8, 0 -/* 801C9E68 001C5AC8 40 82 00 0C */ bne lbl_801C9E74 -/* 801C9E6C 001C5ACC 38 60 00 00 */ li r3, 0 -/* 801C9E70 001C5AD0 4E 80 00 20 */ blr -lbl_801C9E74: -/* 801C9E74 001C5AD4 42 00 FF 64 */ bdnz lbl_801C9DD8 -lbl_801C9E78: -/* 801C9E78 001C5AD8 38 60 00 00 */ li r3, 0 -/* 801C9E7C 001C5ADC 4E 80 00 20 */ blr - -.global func_801C9E80 -func_801C9E80: -/* 801C9E80 001C5AE0 80 03 00 04 */ lwz r0, 4(r3) -/* 801C9E84 001C5AE4 38 C0 00 00 */ li r6, 0 -/* 801C9E88 001C5AE8 54 04 57 7E */ rlwinm r4, r0, 0xa, 0x1d, 0x1f -/* 801C9E8C 001C5AEC 38 04 00 FF */ addi r0, r4, 0xff -/* 801C9E90 001C5AF0 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 801C9E94 001C5AF4 28 00 00 01 */ cmplwi r0, 1 -/* 801C9E98 001C5AF8 41 81 00 10 */ bgt lbl_801C9EA8 -/* 801C9E9C 001C5AFC 88 03 00 0A */ lbz r0, 0xa(r3) -/* 801C9EA0 001C5B00 2C 00 00 00 */ cmpwi r0, 0 -/* 801C9EA4 001C5B04 41 82 00 14 */ beq lbl_801C9EB8 -lbl_801C9EA8: -/* 801C9EA8 001C5B08 38 00 00 28 */ li r0, 0x28 -/* 801C9EAC 001C5B0C 38 60 FF FF */ li r3, -1 -/* 801C9EB0 001C5B10 90 0D 9F C8 */ stw r0, lbl_8063F288-_SDA_BASE_(r13) -/* 801C9EB4 001C5B14 4E 80 00 20 */ blr -lbl_801C9EB8: -/* 801C9EB8 001C5B18 80 03 00 08 */ lwz r0, 8(r3) -/* 801C9EBC 001C5B1C 54 05 1F 7F */ rlwinm. r5, r0, 3, 0x1d, 0x1f -/* 801C9EC0 001C5B20 40 82 00 0C */ bne lbl_801C9ECC -/* 801C9EC4 001C5B24 80 63 00 18 */ lwz r3, 0x18(r3) -/* 801C9EC8 001C5B28 4E 80 00 20 */ blr -lbl_801C9ECC: -/* 801C9ECC 001C5B2C 81 03 00 1C */ lwz r8, 0x1c(r3) -/* 801C9ED0 001C5B30 28 05 00 03 */ cmplwi r5, 3 -/* 801C9ED4 001C5B34 80 83 00 24 */ lwz r4, 0x24(r3) -/* 801C9ED8 001C5B38 80 03 00 34 */ lwz r0, 0x34(r3) -/* 801C9EDC 001C5B3C 7C 88 20 50 */ subf r4, r8, r4 -/* 801C9EE0 001C5B40 7C E0 22 14 */ add r7, r0, r4 -/* 801C9EE4 001C5B44 41 80 00 0C */ blt lbl_801C9EF0 -/* 801C9EE8 001C5B48 38 C5 FF FE */ addi r6, r5, -2 -/* 801C9EEC 001C5B4C 7C E6 38 50 */ subf r7, r6, r7 -lbl_801C9EF0: -/* 801C9EF0 001C5B50 80 03 00 04 */ lwz r0, 4(r3) -/* 801C9EF4 001C5B54 54 00 6F FF */ rlwinm. r0, r0, 0xd, 0x1f, 0x1f -/* 801C9EF8 001C5B58 40 82 00 28 */ bne lbl_801C9F20 -/* 801C9EFC 001C5B5C 7C 06 20 51 */ subf. r0, r6, r4 -/* 801C9F00 001C5B60 7C 09 03 A6 */ mtctr r0 -/* 801C9F04 001C5B64 41 82 00 1C */ beq lbl_801C9F20 -lbl_801C9F08: -/* 801C9F08 001C5B68 88 08 00 00 */ lbz r0, 0(r8) -/* 801C9F0C 001C5B6C 39 08 00 01 */ addi r8, r8, 1 -/* 801C9F10 001C5B70 28 00 00 0A */ cmplwi r0, 0xa -/* 801C9F14 001C5B74 40 82 00 08 */ bne lbl_801C9F1C -/* 801C9F18 001C5B78 38 E7 00 01 */ addi r7, r7, 1 -lbl_801C9F1C: -/* 801C9F1C 001C5B7C 42 00 FF EC */ bdnz lbl_801C9F08 -lbl_801C9F20: -/* 801C9F20 001C5B80 7C E3 3B 78 */ mr r3, r7 -/* 801C9F24 001C5B84 4E 80 00 20 */ blr - -.global func_801C9F28 -func_801C9F28: -/* 801C9F28 001C5B88 4B FF FF 58 */ b func_801C9E80 - -.global func_801C9F2C -func_801C9F2C: -/* 801C9F2C 001C5B8C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801C9F30 001C5B90 7C 08 02 A6 */ mflr r0 -/* 801C9F34 001C5B94 90 01 00 24 */ stw r0, 0x24(r1) -/* 801C9F38 001C5B98 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801C9F3C 001C5B9C 7C BF 2B 78 */ mr r31, r5 -/* 801C9F40 001C5BA0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801C9F44 001C5BA4 7C 7E 1B 78 */ mr r30, r3 -/* 801C9F48 001C5BA8 90 81 00 08 */ stw r4, 8(r1) -/* 801C9F4C 001C5BAC 80 03 00 04 */ lwz r0, 4(r3) -/* 801C9F50 001C5BB0 54 00 57 7E */ rlwinm r0, r0, 0xa, 0x1d, 0x1f -/* 801C9F54 001C5BB4 28 00 00 01 */ cmplwi r0, 1 -/* 801C9F58 001C5BB8 40 82 00 10 */ bne lbl_801C9F68 -/* 801C9F5C 001C5BBC 88 03 00 0A */ lbz r0, 0xa(r3) -/* 801C9F60 001C5BC0 2C 00 00 00 */ cmpwi r0, 0 -/* 801C9F64 001C5BC4 41 82 00 14 */ beq lbl_801C9F78 -lbl_801C9F68: -/* 801C9F68 001C5BC8 38 00 00 28 */ li r0, 0x28 -/* 801C9F6C 001C5BCC 38 60 FF FF */ li r3, -1 -/* 801C9F70 001C5BD0 90 0D 9F C8 */ stw r0, lbl_8063F288-_SDA_BASE_(r13) -/* 801C9F74 001C5BD4 48 00 01 64 */ b lbl_801CA0D8 -lbl_801C9F78: -/* 801C9F78 001C5BD8 80 03 00 08 */ lwz r0, 8(r3) -/* 801C9F7C 001C5BDC 54 00 1F 7E */ srwi r0, r0, 0x1d -/* 801C9F80 001C5BE0 28 00 00 01 */ cmplwi r0, 1 -/* 801C9F84 001C5BE4 40 82 00 34 */ bne lbl_801C9FB8 -/* 801C9F88 001C5BE8 38 80 00 00 */ li r4, 0 -/* 801C9F8C 001C5BEC 4B FF F5 41 */ bl func_801C94CC -/* 801C9F90 001C5BF0 2C 03 00 00 */ cmpwi r3, 0 -/* 801C9F94 001C5BF4 41 82 00 24 */ beq lbl_801C9FB8 -/* 801C9F98 001C5BF8 38 00 00 01 */ li r0, 1 -/* 801C9F9C 001C5BFC 38 80 00 00 */ li r4, 0 -/* 801C9FA0 001C5C00 98 1E 00 0A */ stb r0, 0xa(r30) -/* 801C9FA4 001C5C04 38 00 00 28 */ li r0, 0x28 -/* 801C9FA8 001C5C08 38 60 FF FF */ li r3, -1 -/* 801C9FAC 001C5C0C 90 9E 00 28 */ stw r4, 0x28(r30) -/* 801C9FB0 001C5C10 90 0D 9F C8 */ stw r0, lbl_8063F288-_SDA_BASE_(r13) -/* 801C9FB4 001C5C14 48 00 01 24 */ b lbl_801CA0D8 -lbl_801C9FB8: -/* 801C9FB8 001C5C18 2C 1F 00 01 */ cmpwi r31, 1 -/* 801C9FBC 001C5C1C 40 82 00 1C */ bne lbl_801C9FD8 -/* 801C9FC0 001C5C20 7F C3 F3 78 */ mr r3, r30 -/* 801C9FC4 001C5C24 3B E0 00 00 */ li r31, 0 -/* 801C9FC8 001C5C28 4B FF FE B9 */ bl func_801C9E80 -/* 801C9FCC 001C5C2C 80 01 00 08 */ lwz r0, 8(r1) -/* 801C9FD0 001C5C30 7C 00 1A 14 */ add r0, r0, r3 -/* 801C9FD4 001C5C34 90 01 00 08 */ stw r0, 8(r1) -lbl_801C9FD8: -/* 801C9FD8 001C5C38 2C 1F 00 02 */ cmpwi r31, 2 -/* 801C9FDC 001C5C3C 41 82 00 80 */ beq lbl_801CA05C -/* 801C9FE0 001C5C40 80 1E 00 04 */ lwz r0, 4(r30) -/* 801C9FE4 001C5C44 54 00 2F 7E */ rlwinm r0, r0, 5, 0x1d, 0x1f -/* 801C9FE8 001C5C48 28 00 00 03 */ cmplwi r0, 3 -/* 801C9FEC 001C5C4C 41 82 00 70 */ beq lbl_801CA05C -/* 801C9FF0 001C5C50 80 DE 00 08 */ lwz r6, 8(r30) -/* 801C9FF4 001C5C54 54 C3 1F 7E */ srwi r3, r6, 0x1d -/* 801C9FF8 001C5C58 38 03 FF FE */ addi r0, r3, -2 -/* 801C9FFC 001C5C5C 28 00 00 01 */ cmplwi r0, 1 -/* 801CA000 001C5C60 41 81 00 5C */ bgt lbl_801CA05C -/* 801CA004 001C5C64 80 61 00 08 */ lwz r3, 8(r1) -/* 801CA008 001C5C68 80 BE 00 18 */ lwz r5, 0x18(r30) -/* 801CA00C 001C5C6C 7C 03 28 40 */ cmplw r3, r5 -/* 801CA010 001C5C70 40 80 00 10 */ bge lbl_801CA020 -/* 801CA014 001C5C74 80 1E 00 34 */ lwz r0, 0x34(r30) -/* 801CA018 001C5C78 7C 03 00 40 */ cmplw r3, r0 -/* 801CA01C 001C5C7C 40 80 00 14 */ bge lbl_801CA030 -lbl_801CA020: -/* 801CA020 001C5C80 80 1E 00 08 */ lwz r0, 8(r30) -/* 801CA024 001C5C84 54 00 00 FE */ clrlwi r0, r0, 3 -/* 801CA028 001C5C88 90 1E 00 08 */ stw r0, 8(r30) -/* 801CA02C 001C5C8C 48 00 00 3C */ b lbl_801CA068 -lbl_801CA030: -/* 801CA030 001C5C90 80 9E 00 1C */ lwz r4, 0x1c(r30) -/* 801CA034 001C5C94 7C 60 18 50 */ subf r3, r0, r3 -/* 801CA038 001C5C98 38 00 00 02 */ li r0, 2 -/* 801CA03C 001C5C9C 7C 64 1A 14 */ add r3, r4, r3 -/* 801CA040 001C5CA0 90 7E 00 24 */ stw r3, 0x24(r30) -/* 801CA044 001C5CA4 50 06 E8 04 */ rlwimi r6, r0, 0x1d, 0, 2 -/* 801CA048 001C5CA8 80 01 00 08 */ lwz r0, 8(r1) -/* 801CA04C 001C5CAC 7C 00 28 50 */ subf r0, r0, r5 -/* 801CA050 001C5CB0 90 DE 00 08 */ stw r6, 8(r30) -/* 801CA054 001C5CB4 90 1E 00 28 */ stw r0, 0x28(r30) -/* 801CA058 001C5CB8 48 00 00 10 */ b lbl_801CA068 -lbl_801CA05C: -/* 801CA05C 001C5CBC 80 1E 00 08 */ lwz r0, 8(r30) -/* 801CA060 001C5CC0 54 00 00 FE */ clrlwi r0, r0, 3 -/* 801CA064 001C5CC4 90 1E 00 08 */ stw r0, 8(r30) -lbl_801CA068: -/* 801CA068 001C5CC8 80 1E 00 08 */ lwz r0, 8(r30) -/* 801CA06C 001C5CCC 54 00 1F 7F */ rlwinm. r0, r0, 3, 0x1d, 0x1f -/* 801CA070 001C5CD0 40 82 00 64 */ bne lbl_801CA0D4 -/* 801CA074 001C5CD4 81 9E 00 38 */ lwz r12, 0x38(r30) -/* 801CA078 001C5CD8 2C 0C 00 00 */ cmpwi r12, 0 -/* 801CA07C 001C5CDC 41 82 00 44 */ beq lbl_801CA0C0 -/* 801CA080 001C5CE0 7F E5 FB 78 */ mr r5, r31 -/* 801CA084 001C5CE4 38 81 00 08 */ addi r4, r1, 8 -/* 801CA088 001C5CE8 80 7E 00 00 */ lwz r3, 0(r30) -/* 801CA08C 001C5CEC 80 DE 00 48 */ lwz r6, 0x48(r30) -/* 801CA090 001C5CF0 7D 89 03 A6 */ mtctr r12 -/* 801CA094 001C5CF4 4E 80 04 21 */ bctrl -/* 801CA098 001C5CF8 2C 03 00 00 */ cmpwi r3, 0 -/* 801CA09C 001C5CFC 41 82 00 24 */ beq lbl_801CA0C0 -/* 801CA0A0 001C5D00 38 00 00 01 */ li r0, 1 -/* 801CA0A4 001C5D04 38 80 00 00 */ li r4, 0 -/* 801CA0A8 001C5D08 98 1E 00 0A */ stb r0, 0xa(r30) -/* 801CA0AC 001C5D0C 38 00 00 28 */ li r0, 0x28 -/* 801CA0B0 001C5D10 38 60 FF FF */ li r3, -1 -/* 801CA0B4 001C5D14 90 9E 00 28 */ stw r4, 0x28(r30) -/* 801CA0B8 001C5D18 90 0D 9F C8 */ stw r0, lbl_8063F288-_SDA_BASE_(r13) -/* 801CA0BC 001C5D1C 48 00 00 1C */ b lbl_801CA0D8 -lbl_801CA0C0: -/* 801CA0C0 001C5D20 38 60 00 00 */ li r3, 0 -/* 801CA0C4 001C5D24 98 7E 00 09 */ stb r3, 9(r30) -/* 801CA0C8 001C5D28 80 01 00 08 */ lwz r0, 8(r1) -/* 801CA0CC 001C5D2C 90 1E 00 18 */ stw r0, 0x18(r30) -/* 801CA0D0 001C5D30 90 7E 00 28 */ stw r3, 0x28(r30) -lbl_801CA0D4: -/* 801CA0D4 001C5D34 38 60 00 00 */ li r3, 0 -lbl_801CA0D8: -/* 801CA0D8 001C5D38 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801CA0DC 001C5D3C 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801CA0E0 001C5D40 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 801CA0E4 001C5D44 7C 08 03 A6 */ mtlr r0 -/* 801CA0E8 001C5D48 38 21 00 20 */ addi r1, r1, 0x20 -/* 801CA0EC 001C5D4C 4E 80 00 20 */ blr - -.global func_801CA0F0 -func_801CA0F0: -/* 801CA0F0 001C5D50 4B FF FE 3C */ b func_801C9F2C - -.global func_801CA0F4 -func_801CA0F4: -/* 801CA0F4 001C5D54 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801CA0F8 001C5D58 7C 08 02 A6 */ mflr r0 -/* 801CA0FC 001C5D5C 38 80 00 00 */ li r4, 0 -/* 801CA100 001C5D60 38 A0 00 00 */ li r5, 0 -/* 801CA104 001C5D64 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CA108 001C5D68 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801CA10C 001C5D6C 3B E0 00 00 */ li r31, 0 -/* 801CA110 001C5D70 93 C1 00 08 */ stw r30, 8(r1) -/* 801CA114 001C5D74 7C 7E 1B 78 */ mr r30, r3 -/* 801CA118 001C5D78 9B E3 00 0A */ stb r31, 0xa(r3) -/* 801CA11C 001C5D7C 4B FF FE 11 */ bl func_801C9F2C -/* 801CA120 001C5D80 9B FE 00 0A */ stb r31, 0xa(r30) -/* 801CA124 001C5D84 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801CA128 001C5D88 83 C1 00 08 */ lwz r30, 8(r1) -/* 801CA12C 001C5D8C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801CA130 001C5D90 7C 08 03 A6 */ mtlr r0 -/* 801CA134 001C5D94 38 21 00 10 */ addi r1, r1, 0x10 -/* 801CA138 001C5D98 4E 80 00 20 */ blr - -.global func_801CA13C -func_801CA13C: -/* 801CA13C 001C5D9C 3C C0 80 42 */ lis r6, lbl_80422D48@ha -/* 801CA140 001C5DA0 38 C6 2D 48 */ addi r6, r6, lbl_80422D48@l -/* 801CA144 001C5DA4 80 C6 00 38 */ lwz r6, 0x38(r6) -/* 801CA148 001C5DA8 81 86 00 20 */ lwz r12, 0x20(r6) -/* 801CA14C 001C5DAC 7D 89 03 A6 */ mtctr r12 -/* 801CA150 001C5DB0 4E 80 04 20 */ bctr -/* 801CA154 001C5DB4 2C 04 00 00 */ cmpwi r4, 0 -/* 801CA158 001C5DB8 40 82 00 0C */ bne lbl_801CA164 -/* 801CA15C 001C5DBC 38 60 00 00 */ li r3, 0 -/* 801CA160 001C5DC0 4E 80 00 20 */ blr -lbl_801CA164: -/* 801CA164 001C5DC4 2C 05 00 00 */ cmpwi r5, 0 -/* 801CA168 001C5DC8 40 82 00 0C */ bne lbl_801CA174 -/* 801CA16C 001C5DCC 38 60 FF FF */ li r3, -1 -/* 801CA170 001C5DD0 4E 80 00 20 */ blr -lbl_801CA174: -/* 801CA174 001C5DD4 2C 03 00 00 */ cmpwi r3, 0 -/* 801CA178 001C5DD8 41 82 00 0C */ beq lbl_801CA184 -/* 801CA17C 001C5DDC 88 04 00 00 */ lbz r0, 0(r4) -/* 801CA180 001C5DE0 B0 03 00 00 */ sth r0, 0(r3) -lbl_801CA184: -/* 801CA184 001C5DE4 88 04 00 00 */ lbz r0, 0(r4) -/* 801CA188 001C5DE8 7C 00 07 75 */ extsb. r0, r0 -/* 801CA18C 001C5DEC 40 82 00 0C */ bne lbl_801CA198 -/* 801CA190 001C5DF0 38 60 00 00 */ li r3, 0 -/* 801CA194 001C5DF4 4E 80 00 20 */ blr -lbl_801CA198: -/* 801CA198 001C5DF8 38 60 00 01 */ li r3, 1 -/* 801CA19C 001C5DFC 4E 80 00 20 */ blr -/* 801CA1A0 001C5E00 2C 03 00 00 */ cmpwi r3, 0 -/* 801CA1A4 001C5E04 40 82 00 0C */ bne lbl_801CA1B0 -/* 801CA1A8 001C5E08 38 60 00 00 */ li r3, 0 -/* 801CA1AC 001C5E0C 4E 80 00 20 */ blr -lbl_801CA1B0: -/* 801CA1B0 001C5E10 98 83 00 00 */ stb r4, 0(r3) -/* 801CA1B4 001C5E14 38 60 00 01 */ li r3, 1 -/* 801CA1B8 001C5E18 4E 80 00 20 */ blr - -.global func_801CA1BC -func_801CA1BC: -/* 801CA1BC 001C5E1C 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801CA1C0 001C5E20 7C 08 02 A6 */ mflr r0 -/* 801CA1C4 001C5E24 2C 03 00 00 */ cmpwi r3, 0 -/* 801CA1C8 001C5E28 90 01 00 34 */ stw r0, 0x34(r1) -/* 801CA1CC 001C5E2C BF 41 00 18 */ stmw r26, 0x18(r1) -/* 801CA1D0 001C5E30 7C 7A 1B 78 */ mr r26, r3 -/* 801CA1D4 001C5E34 7C BB 2B 78 */ mr r27, r5 -/* 801CA1D8 001C5E38 3B A0 00 00 */ li r29, 0 -/* 801CA1DC 001C5E3C 41 82 00 0C */ beq lbl_801CA1E8 -/* 801CA1E0 001C5E40 2C 04 00 00 */ cmpwi r4, 0 -/* 801CA1E4 001C5E44 40 82 00 0C */ bne lbl_801CA1F0 -lbl_801CA1E8: -/* 801CA1E8 001C5E48 38 60 00 00 */ li r3, 0 -/* 801CA1EC 001C5E4C 48 00 00 74 */ b lbl_801CA260 -lbl_801CA1F0: -/* 801CA1F0 001C5E50 3F E0 80 42 */ lis r31, lbl_80422D48@ha -/* 801CA1F4 001C5E54 7C 9C 23 78 */ mr r28, r4 -/* 801CA1F8 001C5E58 3B FF 2D 48 */ addi r31, r31, lbl_80422D48@l -/* 801CA1FC 001C5E5C 48 00 00 58 */ b lbl_801CA254 -lbl_801CA200: -/* 801CA200 001C5E60 A0 9C 00 00 */ lhz r4, 0(r28) -/* 801CA204 001C5E64 2C 04 00 00 */ cmpwi r4, 0 -/* 801CA208 001C5E68 40 82 00 10 */ bne lbl_801CA218 -/* 801CA20C 001C5E6C 38 00 00 00 */ li r0, 0 -/* 801CA210 001C5E70 7C 1A E9 AE */ stbx r0, r26, r29 -/* 801CA214 001C5E74 48 00 00 48 */ b lbl_801CA25C -lbl_801CA218: -/* 801CA218 001C5E78 80 BF 00 38 */ lwz r5, 0x38(r31) -/* 801CA21C 001C5E7C 38 61 00 08 */ addi r3, r1, 8 -/* 801CA220 001C5E80 81 85 00 24 */ lwz r12, 0x24(r5) -/* 801CA224 001C5E84 7D 89 03 A6 */ mtctr r12 -/* 801CA228 001C5E88 3B 9C 00 02 */ addi r28, r28, 2 -/* 801CA22C 001C5E8C 4E 80 04 21 */ bctrl -/* 801CA230 001C5E90 7C 1D 1A 14 */ add r0, r29, r3 -/* 801CA234 001C5E94 7C 7E 1B 78 */ mr r30, r3 -/* 801CA238 001C5E98 7C 00 D8 40 */ cmplw r0, r27 -/* 801CA23C 001C5E9C 41 81 00 20 */ bgt lbl_801CA25C -/* 801CA240 001C5EA0 7F C5 F3 78 */ mr r5, r30 -/* 801CA244 001C5EA4 7C 7A EA 14 */ add r3, r26, r29 -/* 801CA248 001C5EA8 38 81 00 08 */ addi r4, r1, 8 -/* 801CA24C 001C5EAC 48 00 41 45 */ bl func_801CE390 -/* 801CA250 001C5EB0 7F BD F2 14 */ add r29, r29, r30 -lbl_801CA254: -/* 801CA254 001C5EB4 7C 1D D8 40 */ cmplw r29, r27 -/* 801CA258 001C5EB8 40 81 FF A8 */ ble lbl_801CA200 -lbl_801CA25C: -/* 801CA25C 001C5EBC 7F A3 EB 78 */ mr r3, r29 -lbl_801CA260: -/* 801CA260 001C5EC0 BB 41 00 18 */ lmw r26, 0x18(r1) -/* 801CA264 001C5EC4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801CA268 001C5EC8 7C 08 03 A6 */ mtlr r0 -/* 801CA26C 001C5ECC 38 21 00 30 */ addi r1, r1, 0x30 -/* 801CA270 001C5ED0 4E 80 00 20 */ blr - -.global memmove -memmove: -/* 801CA274 001C5ED4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801CA278 001C5ED8 7C 08 02 A6 */ mflr r0 -/* 801CA27C 001C5EDC 7C 66 22 78 */ xor r6, r3, r4 -/* 801CA280 001C5EE0 28 05 00 20 */ cmplwi r5, 0x20 -/* 801CA284 001C5EE4 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CA288 001C5EE8 7C C0 00 34 */ cntlzw r0, r6 -/* 801CA28C 001C5EEC 7C 60 00 30 */ slw r0, r3, r0 -/* 801CA290 001C5EF0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801CA294 001C5EF4 7C 7F 1B 78 */ mr r31, r3 -/* 801CA298 001C5EF8 54 07 0F FE */ srwi r7, r0, 0x1f -/* 801CA29C 001C5EFC 41 80 00 40 */ blt lbl_801CA2DC -/* 801CA2A0 001C5F00 54 C0 07 BF */ clrlwi. r0, r6, 0x1e -/* 801CA2A4 001C5F04 41 82 00 1C */ beq lbl_801CA2C0 -/* 801CA2A8 001C5F08 2C 07 00 00 */ cmpwi r7, 0 -/* 801CA2AC 001C5F0C 40 82 00 0C */ bne lbl_801CA2B8 -/* 801CA2B0 001C5F10 48 00 02 99 */ bl __copy_longs_unaligned -/* 801CA2B4 001C5F14 48 00 00 20 */ b lbl_801CA2D4 -lbl_801CA2B8: -/* 801CA2B8 001C5F18 48 00 03 51 */ bl __copy_longs_rev_unaligned -/* 801CA2BC 001C5F1C 48 00 00 18 */ b lbl_801CA2D4 -lbl_801CA2C0: -/* 801CA2C0 001C5F20 2C 07 00 00 */ cmpwi r7, 0 -/* 801CA2C4 001C5F24 40 82 00 0C */ bne lbl_801CA2D0 -/* 801CA2C8 001C5F28 48 00 01 1D */ bl __copy_longs_aligned -/* 801CA2CC 001C5F2C 48 00 00 08 */ b lbl_801CA2D4 -lbl_801CA2D0: -/* 801CA2D0 001C5F30 48 00 01 D1 */ bl __copy_longs_rev_aligned -lbl_801CA2D4: -/* 801CA2D4 001C5F34 7F E3 FB 78 */ mr r3, r31 -/* 801CA2D8 001C5F38 48 00 00 54 */ b lbl_801CA32C -lbl_801CA2DC: -/* 801CA2DC 001C5F3C 2C 07 00 00 */ cmpwi r7, 0 -/* 801CA2E0 001C5F40 40 82 00 28 */ bne lbl_801CA308 -/* 801CA2E4 001C5F44 38 84 FF FF */ addi r4, r4, -1 -/* 801CA2E8 001C5F48 38 63 FF FF */ addi r3, r3, -1 -/* 801CA2EC 001C5F4C 38 A5 00 01 */ addi r5, r5, 1 -/* 801CA2F0 001C5F50 48 00 00 0C */ b lbl_801CA2FC -lbl_801CA2F4: -/* 801CA2F4 001C5F54 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CA2F8 001C5F58 9C 03 00 01 */ stbu r0, 1(r3) -lbl_801CA2FC: -/* 801CA2FC 001C5F5C 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CA300 001C5F60 40 82 FF F4 */ bne lbl_801CA2F4 -/* 801CA304 001C5F64 48 00 00 24 */ b lbl_801CA328 -lbl_801CA308: -/* 801CA308 001C5F68 7C 84 2A 14 */ add r4, r4, r5 -/* 801CA30C 001C5F6C 7C 63 2A 14 */ add r3, r3, r5 -/* 801CA310 001C5F70 38 A5 00 01 */ addi r5, r5, 1 -/* 801CA314 001C5F74 48 00 00 0C */ b lbl_801CA320 -lbl_801CA318: -/* 801CA318 001C5F78 8C 04 FF FF */ lbzu r0, -1(r4) -/* 801CA31C 001C5F7C 9C 03 FF FF */ stbu r0, -1(r3) -lbl_801CA320: -/* 801CA320 001C5F80 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CA324 001C5F84 40 82 FF F4 */ bne lbl_801CA318 -lbl_801CA328: -/* 801CA328 001C5F88 7F E3 FB 78 */ mr r3, r31 -lbl_801CA32C: -/* 801CA32C 001C5F8C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801CA330 001C5F90 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801CA334 001C5F94 7C 08 03 A6 */ mtlr r0 -/* 801CA338 001C5F98 38 21 00 10 */ addi r1, r1, 0x10 -/* 801CA33C 001C5F9C 4E 80 00 20 */ blr - -.global memchr -memchr: -/* 801CA340 001C5FA0 54 84 06 3E */ clrlwi r4, r4, 0x18 -/* 801CA344 001C5FA4 38 63 FF FF */ addi r3, r3, -1 -/* 801CA348 001C5FA8 38 A5 00 01 */ addi r5, r5, 1 -/* 801CA34C 001C5FAC 48 00 00 10 */ b lbl_801CA35C -lbl_801CA350: -/* 801CA350 001C5FB0 8C 03 00 01 */ lbzu r0, 1(r3) -/* 801CA354 001C5FB4 7C 00 20 40 */ cmplw r0, r4 -/* 801CA358 001C5FB8 4D 82 00 20 */ beqlr -lbl_801CA35C: -/* 801CA35C 001C5FBC 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CA360 001C5FC0 40 82 FF F0 */ bne lbl_801CA350 -/* 801CA364 001C5FC4 38 60 00 00 */ li r3, 0 -/* 801CA368 001C5FC8 4E 80 00 20 */ blr - -.global func_801CA36C -func_801CA36C: -/* 801CA36C 001C5FCC 7C 63 2A 14 */ add r3, r3, r5 -/* 801CA370 001C5FD0 54 84 06 3E */ clrlwi r4, r4, 0x18 -/* 801CA374 001C5FD4 38 A5 00 01 */ addi r5, r5, 1 -/* 801CA378 001C5FD8 48 00 00 10 */ b lbl_801CA388 -lbl_801CA37C: -/* 801CA37C 001C5FDC 8C 03 FF FF */ lbzu r0, -1(r3) -/* 801CA380 001C5FE0 7C 00 20 40 */ cmplw r0, r4 -/* 801CA384 001C5FE4 4D 82 00 20 */ beqlr -lbl_801CA388: -/* 801CA388 001C5FE8 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CA38C 001C5FEC 40 82 FF F0 */ bne lbl_801CA37C -/* 801CA390 001C5FF0 38 60 00 00 */ li r3, 0 -/* 801CA394 001C5FF4 4E 80 00 20 */ blr - -.global func_801CA398 -func_801CA398: -/* 801CA398 001C5FF8 38 E4 FF FF */ addi r7, r4, -1 -/* 801CA39C 001C5FFC 38 C3 FF FF */ addi r6, r3, -1 -/* 801CA3A0 001C6000 38 85 00 01 */ addi r4, r5, 1 -/* 801CA3A4 001C6004 48 00 00 30 */ b lbl_801CA3D4 -lbl_801CA3A8: -/* 801CA3A8 001C6008 8C 66 00 01 */ lbzu r3, 1(r6) -/* 801CA3AC 001C600C 8C 07 00 01 */ lbzu r0, 1(r7) -/* 801CA3B0 001C6010 7C 03 00 40 */ cmplw r3, r0 -/* 801CA3B4 001C6014 41 82 00 20 */ beq lbl_801CA3D4 -/* 801CA3B8 001C6018 88 86 00 00 */ lbz r4, 0(r6) -/* 801CA3BC 001C601C 38 60 00 01 */ li r3, 1 -/* 801CA3C0 001C6020 88 07 00 00 */ lbz r0, 0(r7) -/* 801CA3C4 001C6024 7C 04 00 40 */ cmplw r4, r0 -/* 801CA3C8 001C6028 4C 80 00 20 */ bgelr -/* 801CA3CC 001C602C 38 60 FF FF */ li r3, -1 -/* 801CA3D0 001C6030 4E 80 00 20 */ blr -lbl_801CA3D4: -/* 801CA3D4 001C6034 34 84 FF FF */ addic. r4, r4, -1 -/* 801CA3D8 001C6038 40 82 FF D0 */ bne lbl_801CA3A8 -/* 801CA3DC 001C603C 38 60 00 00 */ li r3, 0 -/* 801CA3E0 001C6040 4E 80 00 20 */ blr - -.global __copy_longs_aligned -__copy_longs_aligned: -/* 801CA3E4 001C6044 7C 03 00 D0 */ neg r0, r3 -/* 801CA3E8 001C6048 38 84 FF FF */ addi r4, r4, -1 -/* 801CA3EC 001C604C 54 06 07 BF */ clrlwi. r6, r0, 0x1e -/* 801CA3F0 001C6050 38 63 FF FF */ addi r3, r3, -1 -/* 801CA3F4 001C6054 41 82 00 18 */ beq lbl_801CA40C -/* 801CA3F8 001C6058 7C A6 28 50 */ subf r5, r6, r5 -lbl_801CA3FC: -/* 801CA3FC 001C605C 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CA400 001C6060 34 C6 FF FF */ addic. r6, r6, -1 -/* 801CA404 001C6064 9C 03 00 01 */ stbu r0, 1(r3) -/* 801CA408 001C6068 40 82 FF F4 */ bne lbl_801CA3FC -lbl_801CA40C: -/* 801CA40C 001C606C 54 A6 D9 7F */ rlwinm. r6, r5, 0x1b, 5, 0x1f -/* 801CA410 001C6070 38 E4 FF FD */ addi r7, r4, -3 -/* 801CA414 001C6074 38 83 FF FD */ addi r4, r3, -3 -/* 801CA418 001C6078 41 82 00 4C */ beq lbl_801CA464 -lbl_801CA41C: -/* 801CA41C 001C607C 80 67 00 04 */ lwz r3, 4(r7) -/* 801CA420 001C6080 34 C6 FF FF */ addic. r6, r6, -1 -/* 801CA424 001C6084 80 07 00 08 */ lwz r0, 8(r7) -/* 801CA428 001C6088 90 64 00 04 */ stw r3, 4(r4) -/* 801CA42C 001C608C 80 67 00 0C */ lwz r3, 0xc(r7) -/* 801CA430 001C6090 90 04 00 08 */ stw r0, 8(r4) -/* 801CA434 001C6094 80 07 00 10 */ lwz r0, 0x10(r7) -/* 801CA438 001C6098 90 64 00 0C */ stw r3, 0xc(r4) -/* 801CA43C 001C609C 80 67 00 14 */ lwz r3, 0x14(r7) -/* 801CA440 001C60A0 90 04 00 10 */ stw r0, 0x10(r4) -/* 801CA444 001C60A4 80 07 00 18 */ lwz r0, 0x18(r7) -/* 801CA448 001C60A8 90 64 00 14 */ stw r3, 0x14(r4) -/* 801CA44C 001C60AC 80 67 00 1C */ lwz r3, 0x1c(r7) -/* 801CA450 001C60B0 90 04 00 18 */ stw r0, 0x18(r4) -/* 801CA454 001C60B4 84 07 00 20 */ lwzu r0, 0x20(r7) -/* 801CA458 001C60B8 90 64 00 1C */ stw r3, 0x1c(r4) -/* 801CA45C 001C60BC 94 04 00 20 */ stwu r0, 0x20(r4) -/* 801CA460 001C60C0 40 82 FF BC */ bne lbl_801CA41C -lbl_801CA464: -/* 801CA464 001C60C4 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f -/* 801CA468 001C60C8 41 82 00 14 */ beq lbl_801CA47C -lbl_801CA46C: -/* 801CA46C 001C60CC 84 07 00 04 */ lwzu r0, 4(r7) -/* 801CA470 001C60D0 34 63 FF FF */ addic. r3, r3, -1 -/* 801CA474 001C60D4 94 04 00 04 */ stwu r0, 4(r4) -/* 801CA478 001C60D8 40 82 FF F4 */ bne lbl_801CA46C -lbl_801CA47C: -/* 801CA47C 001C60DC 54 A5 07 BF */ clrlwi. r5, r5, 0x1e -/* 801CA480 001C60E0 38 C7 00 03 */ addi r6, r7, 3 -/* 801CA484 001C60E4 38 64 00 03 */ addi r3, r4, 3 -/* 801CA488 001C60E8 4D 82 00 20 */ beqlr -lbl_801CA48C: -/* 801CA48C 001C60EC 8C 06 00 01 */ lbzu r0, 1(r6) -/* 801CA490 001C60F0 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CA494 001C60F4 9C 03 00 01 */ stbu r0, 1(r3) -/* 801CA498 001C60F8 40 82 FF F4 */ bne lbl_801CA48C -/* 801CA49C 001C60FC 4E 80 00 20 */ blr - -.global __copy_longs_rev_aligned -__copy_longs_rev_aligned: -/* 801CA4A0 001C6100 7C E3 2A 14 */ add r7, r3, r5 -/* 801CA4A4 001C6104 7C C4 2A 14 */ add r6, r4, r5 -/* 801CA4A8 001C6108 54 E3 07 BF */ clrlwi. r3, r7, 0x1e -/* 801CA4AC 001C610C 41 82 00 18 */ beq lbl_801CA4C4 -/* 801CA4B0 001C6110 7C A3 28 50 */ subf r5, r3, r5 -lbl_801CA4B4: -/* 801CA4B4 001C6114 8C 06 FF FF */ lbzu r0, -1(r6) -/* 801CA4B8 001C6118 34 63 FF FF */ addic. r3, r3, -1 -/* 801CA4BC 001C611C 9C 07 FF FF */ stbu r0, -1(r7) -/* 801CA4C0 001C6120 40 82 FF F4 */ bne lbl_801CA4B4 -lbl_801CA4C4: -/* 801CA4C4 001C6124 54 A4 D9 7F */ rlwinm. r4, r5, 0x1b, 5, 0x1f -/* 801CA4C8 001C6128 41 82 00 4C */ beq lbl_801CA514 -lbl_801CA4CC: -/* 801CA4CC 001C612C 80 66 FF FC */ lwz r3, -4(r6) -/* 801CA4D0 001C6130 34 84 FF FF */ addic. r4, r4, -1 -/* 801CA4D4 001C6134 80 06 FF F8 */ lwz r0, -8(r6) -/* 801CA4D8 001C6138 90 67 FF FC */ stw r3, -4(r7) -/* 801CA4DC 001C613C 80 66 FF F4 */ lwz r3, -0xc(r6) -/* 801CA4E0 001C6140 90 07 FF F8 */ stw r0, -8(r7) -/* 801CA4E4 001C6144 80 06 FF F0 */ lwz r0, -0x10(r6) -/* 801CA4E8 001C6148 90 67 FF F4 */ stw r3, -0xc(r7) -/* 801CA4EC 001C614C 80 66 FF EC */ lwz r3, -0x14(r6) -/* 801CA4F0 001C6150 90 07 FF F0 */ stw r0, -0x10(r7) -/* 801CA4F4 001C6154 80 06 FF E8 */ lwz r0, -0x18(r6) -/* 801CA4F8 001C6158 90 67 FF EC */ stw r3, -0x14(r7) -/* 801CA4FC 001C615C 80 66 FF E4 */ lwz r3, -0x1c(r6) -/* 801CA500 001C6160 90 07 FF E8 */ stw r0, -0x18(r7) -/* 801CA504 001C6164 84 06 FF E0 */ lwzu r0, -0x20(r6) -/* 801CA508 001C6168 90 67 FF E4 */ stw r3, -0x1c(r7) -/* 801CA50C 001C616C 94 07 FF E0 */ stwu r0, -0x20(r7) -/* 801CA510 001C6170 40 82 FF BC */ bne lbl_801CA4CC -lbl_801CA514: -/* 801CA514 001C6174 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f -/* 801CA518 001C6178 41 82 00 14 */ beq lbl_801CA52C -lbl_801CA51C: -/* 801CA51C 001C617C 84 06 FF FC */ lwzu r0, -4(r6) -/* 801CA520 001C6180 34 63 FF FF */ addic. r3, r3, -1 -/* 801CA524 001C6184 94 07 FF FC */ stwu r0, -4(r7) -/* 801CA528 001C6188 40 82 FF F4 */ bne lbl_801CA51C -lbl_801CA52C: -/* 801CA52C 001C618C 54 A5 07 BF */ clrlwi. r5, r5, 0x1e -/* 801CA530 001C6190 4D 82 00 20 */ beqlr -lbl_801CA534: -/* 801CA534 001C6194 8C 06 FF FF */ lbzu r0, -1(r6) -/* 801CA538 001C6198 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CA53C 001C619C 9C 07 FF FF */ stbu r0, -1(r7) -/* 801CA540 001C61A0 40 82 FF F4 */ bne lbl_801CA534 -/* 801CA544 001C61A4 4E 80 00 20 */ blr - -.global __copy_longs_unaligned -__copy_longs_unaligned: -/* 801CA548 001C61A8 7C 03 00 D0 */ neg r0, r3 -/* 801CA54C 001C61AC 39 04 FF FF */ addi r8, r4, -1 -/* 801CA550 001C61B0 54 06 07 BF */ clrlwi. r6, r0, 0x1e -/* 801CA554 001C61B4 38 63 FF FF */ addi r3, r3, -1 -/* 801CA558 001C61B8 41 82 00 18 */ beq lbl_801CA570 -/* 801CA55C 001C61BC 7C A6 28 50 */ subf r5, r6, r5 -lbl_801CA560: -/* 801CA560 001C61C0 8C 08 00 01 */ lbzu r0, 1(r8) -/* 801CA564 001C61C4 34 C6 FF FF */ addic. r6, r6, -1 -/* 801CA568 001C61C8 9C 03 00 01 */ stbu r0, 1(r3) -/* 801CA56C 001C61CC 40 82 FF F4 */ bne lbl_801CA560 -lbl_801CA570: -/* 801CA570 001C61D0 38 08 00 01 */ addi r0, r8, 1 -/* 801CA574 001C61D4 38 C3 FF FD */ addi r6, r3, -3 -/* 801CA578 001C61D8 54 09 07 BE */ clrlwi r9, r0, 0x1e -/* 801CA57C 001C61DC 54 A7 E8 FE */ srwi r7, r5, 3 -/* 801CA580 001C61E0 7D 09 40 50 */ subf r8, r9, r8 -/* 801CA584 001C61E4 54 0A 1E F8 */ rlwinm r10, r0, 3, 0x1b, 0x1c -/* 801CA588 001C61E8 84 88 00 01 */ lwzu r4, 1(r8) -/* 801CA58C 001C61EC 21 6A 00 20 */ subfic r11, r10, 0x20 -lbl_801CA590: -/* 801CA590 001C61F0 80 68 00 04 */ lwz r3, 4(r8) -/* 801CA594 001C61F4 7C 84 50 30 */ slw r4, r4, r10 -/* 801CA598 001C61F8 34 E7 FF FF */ addic. r7, r7, -1 -/* 801CA59C 001C61FC 7C 60 5C 30 */ srw r0, r3, r11 -/* 801CA5A0 001C6200 7C 63 50 30 */ slw r3, r3, r10 -/* 801CA5A4 001C6204 7C 80 03 78 */ or r0, r4, r0 -/* 801CA5A8 001C6208 90 06 00 04 */ stw r0, 4(r6) -/* 801CA5AC 001C620C 84 88 00 08 */ lwzu r4, 8(r8) -/* 801CA5B0 001C6210 7C 80 5C 30 */ srw r0, r4, r11 -/* 801CA5B4 001C6214 7C 60 03 78 */ or r0, r3, r0 -/* 801CA5B8 001C6218 94 06 00 08 */ stwu r0, 8(r6) -/* 801CA5BC 001C621C 40 82 FF D4 */ bne lbl_801CA590 -/* 801CA5C0 001C6220 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d -/* 801CA5C4 001C6224 41 82 00 18 */ beq lbl_801CA5DC -/* 801CA5C8 001C6228 84 08 00 04 */ lwzu r0, 4(r8) -/* 801CA5CC 001C622C 7C 83 50 30 */ slw r3, r4, r10 -/* 801CA5D0 001C6230 7C 00 5C 30 */ srw r0, r0, r11 -/* 801CA5D4 001C6234 7C 60 03 78 */ or r0, r3, r0 -/* 801CA5D8 001C6238 94 06 00 04 */ stwu r0, 4(r6) -lbl_801CA5DC: -/* 801CA5DC 001C623C 54 A5 07 BF */ clrlwi. r5, r5, 0x1e -/* 801CA5E0 001C6240 38 88 00 03 */ addi r4, r8, 3 -/* 801CA5E4 001C6244 38 66 00 03 */ addi r3, r6, 3 -/* 801CA5E8 001C6248 4D 82 00 20 */ beqlr -/* 801CA5EC 001C624C 20 09 00 04 */ subfic r0, r9, 4 -/* 801CA5F0 001C6250 7C 80 20 50 */ subf r4, r0, r4 -lbl_801CA5F4: -/* 801CA5F4 001C6254 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CA5F8 001C6258 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CA5FC 001C625C 9C 03 00 01 */ stbu r0, 1(r3) -/* 801CA600 001C6260 40 82 FF F4 */ bne lbl_801CA5F4 -/* 801CA604 001C6264 4E 80 00 20 */ blr - -.global __copy_longs_rev_unaligned -__copy_longs_rev_unaligned: -/* 801CA608 001C6268 7D 63 2A 14 */ add r11, r3, r5 -/* 801CA60C 001C626C 7D 44 2A 14 */ add r10, r4, r5 -/* 801CA610 001C6270 55 63 07 BF */ clrlwi. r3, r11, 0x1e -/* 801CA614 001C6274 41 82 00 18 */ beq lbl_801CA62C -/* 801CA618 001C6278 7C A3 28 50 */ subf r5, r3, r5 -lbl_801CA61C: -/* 801CA61C 001C627C 8C 0A FF FF */ lbzu r0, -1(r10) -/* 801CA620 001C6280 34 63 FF FF */ addic. r3, r3, -1 -/* 801CA624 001C6284 9C 0B FF FF */ stbu r0, -1(r11) -/* 801CA628 001C6288 40 82 FF F4 */ bne lbl_801CA61C -lbl_801CA62C: -/* 801CA62C 001C628C 55 48 1E F8 */ rlwinm r8, r10, 3, 0x1b, 0x1c -/* 801CA630 001C6290 55 47 07 BE */ clrlwi r7, r10, 0x1e -/* 801CA634 001C6294 21 28 00 20 */ subfic r9, r8, 0x20 -/* 801CA638 001C6298 54 A6 E8 FE */ srwi r6, r5, 3 -/* 801CA63C 001C629C 20 07 00 04 */ subfic r0, r7, 4 -/* 801CA640 001C62A0 7D 4A 02 14 */ add r10, r10, r0 -/* 801CA644 001C62A4 84 8A FF FC */ lwzu r4, -4(r10) -lbl_801CA648: -/* 801CA648 001C62A8 80 0A FF FC */ lwz r0, -4(r10) -/* 801CA64C 001C62AC 7C 83 4C 30 */ srw r3, r4, r9 -/* 801CA650 001C62B0 34 C6 FF FF */ addic. r6, r6, -1 -/* 801CA654 001C62B4 7C 04 40 30 */ slw r4, r0, r8 -/* 801CA658 001C62B8 7C 00 4C 30 */ srw r0, r0, r9 -/* 801CA65C 001C62BC 7C 83 1B 78 */ or r3, r4, r3 -/* 801CA660 001C62C0 90 6B FF FC */ stw r3, -4(r11) -/* 801CA664 001C62C4 84 8A FF F8 */ lwzu r4, -8(r10) -/* 801CA668 001C62C8 7C 83 40 30 */ slw r3, r4, r8 -/* 801CA66C 001C62CC 7C 60 03 78 */ or r0, r3, r0 -/* 801CA670 001C62D0 94 0B FF F8 */ stwu r0, -8(r11) -/* 801CA674 001C62D4 40 82 FF D4 */ bne lbl_801CA648 -/* 801CA678 001C62D8 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d -/* 801CA67C 001C62DC 41 82 00 18 */ beq lbl_801CA694 -/* 801CA680 001C62E0 84 6A FF FC */ lwzu r3, -4(r10) -/* 801CA684 001C62E4 7C 80 4C 30 */ srw r0, r4, r9 -/* 801CA688 001C62E8 7C 63 40 30 */ slw r3, r3, r8 -/* 801CA68C 001C62EC 7C 60 03 78 */ or r0, r3, r0 -/* 801CA690 001C62F0 94 0B FF FC */ stwu r0, -4(r11) -lbl_801CA694: -/* 801CA694 001C62F4 54 A5 07 BF */ clrlwi. r5, r5, 0x1e -/* 801CA698 001C62F8 4D 82 00 20 */ beqlr -/* 801CA69C 001C62FC 7D 4A 3A 14 */ add r10, r10, r7 -lbl_801CA6A0: -/* 801CA6A0 001C6300 8C 0A FF FF */ lbzu r0, -1(r10) -/* 801CA6A4 001C6304 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CA6A8 001C6308 9C 0B FF FF */ stbu r0, -1(r11) -/* 801CA6AC 001C630C 40 82 FF F4 */ bne lbl_801CA6A0 -/* 801CA6B0 001C6310 4E 80 00 20 */ blr - -.global func_801CA6B4 -func_801CA6B4: -/* 801CA6B4 001C6314 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801CA6B8 001C6318 3C 00 7F 80 */ lis r0, 0x7f80 -/* 801CA6BC 001C631C D0 21 00 08 */ stfs f1, 8(r1) -/* 801CA6C0 001C6320 80 81 00 08 */ lwz r4, 8(r1) -/* 801CA6C4 001C6324 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8 -/* 801CA6C8 001C6328 7C 03 00 00 */ cmpw r3, r0 -/* 801CA6CC 001C632C 41 82 00 14 */ beq lbl_801CA6E0 -/* 801CA6D0 001C6330 40 80 00 3C */ bge lbl_801CA70C -/* 801CA6D4 001C6334 2C 03 00 00 */ cmpwi r3, 0 -/* 801CA6D8 001C6338 41 82 00 20 */ beq lbl_801CA6F8 -/* 801CA6DC 001C633C 48 00 00 30 */ b lbl_801CA70C -lbl_801CA6E0: -/* 801CA6E0 001C6340 54 83 02 7E */ clrlwi r3, r4, 9 -/* 801CA6E4 001C6344 7C 03 00 D0 */ neg r0, r3 -/* 801CA6E8 001C6348 7C 00 1B 78 */ or r0, r0, r3 -/* 801CA6EC 001C634C 7C 03 FE 70 */ srawi r3, r0, 0x1f -/* 801CA6F0 001C6350 38 63 00 02 */ addi r3, r3, 2 -/* 801CA6F4 001C6354 48 00 00 1C */ b lbl_801CA710 -lbl_801CA6F8: -/* 801CA6F8 001C6358 54 80 02 7F */ clrlwi. r0, r4, 9 -/* 801CA6FC 001C635C 38 60 00 03 */ li r3, 3 -/* 801CA700 001C6360 41 82 00 10 */ beq lbl_801CA710 -/* 801CA704 001C6364 38 60 00 05 */ li r3, 5 -/* 801CA708 001C6368 48 00 00 08 */ b lbl_801CA710 -lbl_801CA70C: -/* 801CA70C 001C636C 38 60 00 04 */ li r3, 4 -lbl_801CA710: -/* 801CA710 001C6370 38 21 00 10 */ addi r1, r1, 0x10 -/* 801CA714 001C6374 4E 80 00 20 */ blr - -.global func_801CA718 -func_801CA718: -/* 801CA718 001C6378 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801CA71C 001C637C D8 21 00 08 */ stfd f1, 8(r1) -/* 801CA720 001C6380 80 01 00 08 */ lwz r0, 8(r1) -/* 801CA724 001C6384 54 03 00 00 */ rlwinm r3, r0, 0, 0, 0 -/* 801CA728 001C6388 38 21 00 10 */ addi r1, r1, 0x10 -/* 801CA72C 001C638C 4E 80 00 20 */ blr - -.global func_801CA730 -func_801CA730: -/* 801CA730 001C6390 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801CA734 001C6394 3C 00 7F F0 */ lis r0, 0x7ff0 -/* 801CA738 001C6398 D8 21 00 08 */ stfd f1, 8(r1) -/* 801CA73C 001C639C 80 81 00 08 */ lwz r4, 8(r1) -/* 801CA740 001C63A0 54 83 00 56 */ rlwinm r3, r4, 0, 1, 0xb -/* 801CA744 001C63A4 7C 03 00 00 */ cmpw r3, r0 -/* 801CA748 001C63A8 41 82 00 14 */ beq lbl_801CA75C -/* 801CA74C 001C63AC 40 80 00 58 */ bge lbl_801CA7A4 -/* 801CA750 001C63B0 2C 03 00 00 */ cmpwi r3, 0 -/* 801CA754 001C63B4 41 82 00 2C */ beq lbl_801CA780 -/* 801CA758 001C63B8 48 00 00 4C */ b lbl_801CA7A4 -lbl_801CA75C: -/* 801CA75C 001C63BC 54 80 03 3F */ clrlwi. r0, r4, 0xc -/* 801CA760 001C63C0 40 82 00 10 */ bne lbl_801CA770 -/* 801CA764 001C63C4 80 01 00 0C */ lwz r0, 0xc(r1) -/* 801CA768 001C63C8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CA76C 001C63CC 41 82 00 0C */ beq lbl_801CA778 -lbl_801CA770: -/* 801CA770 001C63D0 38 60 00 01 */ li r3, 1 -/* 801CA774 001C63D4 48 00 00 34 */ b lbl_801CA7A8 -lbl_801CA778: -/* 801CA778 001C63D8 38 60 00 02 */ li r3, 2 -/* 801CA77C 001C63DC 48 00 00 2C */ b lbl_801CA7A8 -lbl_801CA780: -/* 801CA780 001C63E0 54 80 03 3F */ clrlwi. r0, r4, 0xc -/* 801CA784 001C63E4 40 82 00 10 */ bne lbl_801CA794 -/* 801CA788 001C63E8 80 01 00 0C */ lwz r0, 0xc(r1) -/* 801CA78C 001C63EC 2C 00 00 00 */ cmpwi r0, 0 -/* 801CA790 001C63F0 41 82 00 0C */ beq lbl_801CA79C -lbl_801CA794: -/* 801CA794 001C63F4 38 60 00 05 */ li r3, 5 -/* 801CA798 001C63F8 48 00 00 10 */ b lbl_801CA7A8 -lbl_801CA79C: -/* 801CA79C 001C63FC 38 60 00 03 */ li r3, 3 -/* 801CA7A0 001C6400 48 00 00 08 */ b lbl_801CA7A8 -lbl_801CA7A4: -/* 801CA7A4 001C6404 38 60 00 04 */ li r3, 4 -lbl_801CA7A8: -/* 801CA7A8 001C6408 38 21 00 10 */ addi r1, r1, 0x10 -/* 801CA7AC 001C640C 4E 80 00 20 */ blr +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __ull2dec
+__ull2dec:
+/* 801C7A28 001C3688 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 801C7A2C 001C368C 7C 08 02 A6 */ mflr r0
+/* 801C7A30 001C3690 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801C7A34 001C3694 38 00 00 00 */ li r0, 0
+/* 801C7A38 001C3698 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 801C7A3C 001C369C 7C BF 2B 78 */ mr r31, r5
+/* 801C7A40 001C36A0 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 801C7A44 001C36A4 7C DE 33 78 */ mr r30, r6
+/* 801C7A48 001C36A8 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 801C7A4C 001C36AC 7C 7D 1B 78 */ mr r29, r3
+/* 801C7A50 001C36B0 98 03 00 00 */ stb r0, 0(r3)
+/* 801C7A54 001C36B4 98 03 00 04 */ stb r0, 4(r3)
+/* 801C7A58 001C36B8 48 00 00 48 */ b lbl_801C7AA0
+lbl_801C7A5C:
+/* 801C7A5C 001C36BC 7F E3 FB 78 */ mr r3, r31
+/* 801C7A60 001C36C0 7F C4 F3 78 */ mr r4, r30
+/* 801C7A64 001C36C4 38 C0 00 0A */ li r6, 0xa
+/* 801C7A68 001C36C8 38 A0 00 00 */ li r5, 0
+/* 801C7A6C 001C36CC 4B FF F9 45 */ bl __mod2u
+/* 801C7A70 001C36D0 89 1D 00 04 */ lbz r8, 4(r29)
+/* 801C7A74 001C36D4 7F E3 FB 78 */ mr r3, r31
+/* 801C7A78 001C36D8 38 C0 00 0A */ li r6, 0xa
+/* 801C7A7C 001C36DC 38 A0 00 00 */ li r5, 0
+/* 801C7A80 001C36E0 7C FD 42 14 */ add r7, r29, r8
+/* 801C7A84 001C36E4 38 08 00 01 */ addi r0, r8, 1
+/* 801C7A88 001C36E8 98 87 00 05 */ stb r4, 5(r7)
+/* 801C7A8C 001C36EC 7F C4 F3 78 */ mr r4, r30
+/* 801C7A90 001C36F0 98 1D 00 04 */ stb r0, 4(r29)
+/* 801C7A94 001C36F4 4B FF F6 F9 */ bl __div2u
+/* 801C7A98 001C36F8 7C 9E 23 78 */ mr r30, r4
+/* 801C7A9C 001C36FC 7C 7F 1B 78 */ mr r31, r3
+lbl_801C7AA0:
+/* 801C7AA0 001C3700 7F C0 FB 79 */ or. r0, r30, r31
+/* 801C7AA4 001C3704 40 82 FF B8 */ bne lbl_801C7A5C
+/* 801C7AA8 001C3708 88 1D 00 04 */ lbz r0, 4(r29)
+/* 801C7AAC 001C370C 38 9D 00 05 */ addi r4, r29, 5
+/* 801C7AB0 001C3710 7C 7D 02 14 */ add r3, r29, r0
+/* 801C7AB4 001C3714 38 63 00 05 */ addi r3, r3, 5
+/* 801C7AB8 001C3718 48 00 00 18 */ b lbl_801C7AD0
+lbl_801C7ABC:
+/* 801C7ABC 001C371C 88 A4 00 00 */ lbz r5, 0(r4)
+/* 801C7AC0 001C3720 88 03 00 00 */ lbz r0, 0(r3)
+/* 801C7AC4 001C3724 98 04 00 00 */ stb r0, 0(r4)
+/* 801C7AC8 001C3728 38 84 00 01 */ addi r4, r4, 1
+/* 801C7ACC 001C372C 98 A3 00 00 */ stb r5, 0(r3)
+lbl_801C7AD0:
+/* 801C7AD0 001C3730 38 63 FF FF */ addi r3, r3, -1
+/* 801C7AD4 001C3734 7C 04 18 40 */ cmplw r4, r3
+/* 801C7AD8 001C3738 41 80 FF E4 */ blt lbl_801C7ABC
+/* 801C7ADC 001C373C 88 7D 00 04 */ lbz r3, 4(r29)
+/* 801C7AE0 001C3740 38 03 FF FF */ addi r0, r3, -1
+/* 801C7AE4 001C3744 B0 1D 00 02 */ sth r0, 2(r29)
+/* 801C7AE8 001C3748 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 801C7AEC 001C374C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 801C7AF0 001C3750 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 801C7AF4 001C3754 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 801C7AF8 001C3758 7C 08 03 A6 */ mtlr r0
+/* 801C7AFC 001C375C 38 21 00 20 */ addi r1, r1, 0x20
+/* 801C7B00 001C3760 4E 80 00 20 */ blr
+
+.global __timesdec
+__timesdec:
+/* 801C7B04 001C3764 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 801C7B08 001C3768 3C C0 CC CD */ lis r6, 0xCCCCCCCD@ha
+/* 801C7B0C 001C376C 89 04 00 04 */ lbz r8, 4(r4)
+/* 801C7B10 001C3770 39 60 00 00 */ li r11, 0
+/* 801C7B14 001C3774 93 E1 00 5C */ stw r31, 0x5c(r1)
+/* 801C7B18 001C3778 38 01 00 08 */ addi r0, r1, 8
+/* 801C7B1C 001C377C 88 E5 00 04 */ lbz r7, 4(r5)
+/* 801C7B20 001C3780 39 26 CC CD */ addi r9, r6, 0xCCCCCCCD@l
+/* 801C7B24 001C3784 93 C1 00 58 */ stw r30, 0x58(r1)
+/* 801C7B28 001C3788 7D 88 3A 14 */ add r12, r8, r7
+/* 801C7B2C 001C378C 93 A1 00 54 */ stw r29, 0x54(r1)
+/* 801C7B30 001C3790 39 8C FF FF */ addi r12, r12, -1
+/* 801C7B34 001C3794 7C C0 62 14 */ add r6, r0, r12
+/* 801C7B38 001C3798 38 C6 00 01 */ addi r6, r6, 1
+/* 801C7B3C 001C379C 99 63 00 00 */ stb r11, 0(r3)
+/* 801C7B40 001C37A0 7C C0 33 78 */ mr r0, r6
+/* 801C7B44 001C37A4 48 00 01 30 */ b lbl_801C7C74
+lbl_801C7B48:
+/* 801C7B48 001C37A8 88 E5 00 04 */ lbz r7, 4(r5)
+/* 801C7B4C 001C37AC 3B E7 FF FF */ addi r31, r7, -1
+/* 801C7B50 001C37B0 7C FF 60 50 */ subf r7, r31, r12
+/* 801C7B54 001C37B4 37 C7 FF FF */ addic. r30, r7, -1
+/* 801C7B58 001C37B8 40 80 00 0C */ bge lbl_801C7B64
+/* 801C7B5C 001C37BC 3B C0 00 00 */ li r30, 0
+/* 801C7B60 001C37C0 3B EC FF FF */ addi r31, r12, -1
+lbl_801C7B64:
+/* 801C7B64 001C37C4 88 E4 00 04 */ lbz r7, 4(r4)
+/* 801C7B68 001C37C8 7D 05 FA 14 */ add r8, r5, r31
+/* 801C7B6C 001C37CC 3B FF 00 01 */ addi r31, r31, 1
+/* 801C7B70 001C37D0 7D 44 F2 14 */ add r10, r4, r30
+/* 801C7B74 001C37D4 7C FE 38 50 */ subf r7, r30, r7
+/* 801C7B78 001C37D8 3B A8 00 05 */ addi r29, r8, 5
+/* 801C7B7C 001C37DC 7C 1F 38 00 */ cmpw r31, r7
+/* 801C7B80 001C37E0 3B CA 00 05 */ addi r30, r10, 5
+/* 801C7B84 001C37E4 40 81 00 08 */ ble lbl_801C7B8C
+/* 801C7B88 001C37E8 7C FF 3B 78 */ mr r31, r7
+lbl_801C7B8C:
+/* 801C7B8C 001C37EC 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C7B90 001C37F0 40 81 00 C4 */ ble lbl_801C7C54
+/* 801C7B94 001C37F4 57 E7 E8 FF */ rlwinm. r7, r31, 0x1d, 3, 0x1f
+/* 801C7B98 001C37F8 7C E9 03 A6 */ mtctr r7
+/* 801C7B9C 001C37FC 41 82 00 98 */ beq lbl_801C7C34
+lbl_801C7BA0:
+/* 801C7BA0 001C3800 89 5E 00 00 */ lbz r10, 0(r30)
+/* 801C7BA4 001C3804 89 1D 00 00 */ lbz r8, 0(r29)
+/* 801C7BA8 001C3808 7C EA 41 D6 */ mullw r7, r10, r8
+/* 801C7BAC 001C380C 89 5E 00 01 */ lbz r10, 1(r30)
+/* 801C7BB0 001C3810 89 1D FF FF */ lbz r8, -1(r29)
+/* 801C7BB4 001C3814 7D 6B 3A 14 */ add r11, r11, r7
+/* 801C7BB8 001C3818 7C EA 41 D6 */ mullw r7, r10, r8
+/* 801C7BBC 001C381C 89 5E 00 02 */ lbz r10, 2(r30)
+/* 801C7BC0 001C3820 89 1D FF FE */ lbz r8, -2(r29)
+/* 801C7BC4 001C3824 7D 6B 3A 14 */ add r11, r11, r7
+/* 801C7BC8 001C3828 7C EA 41 D6 */ mullw r7, r10, r8
+/* 801C7BCC 001C382C 89 5E 00 03 */ lbz r10, 3(r30)
+/* 801C7BD0 001C3830 89 1D FF FD */ lbz r8, -3(r29)
+/* 801C7BD4 001C3834 7D 6B 3A 14 */ add r11, r11, r7
+/* 801C7BD8 001C3838 7C EA 41 D6 */ mullw r7, r10, r8
+/* 801C7BDC 001C383C 89 5E 00 04 */ lbz r10, 4(r30)
+/* 801C7BE0 001C3840 89 1D FF FC */ lbz r8, -4(r29)
+/* 801C7BE4 001C3844 7D 6B 3A 14 */ add r11, r11, r7
+/* 801C7BE8 001C3848 7C EA 41 D6 */ mullw r7, r10, r8
+/* 801C7BEC 001C384C 89 5E 00 05 */ lbz r10, 5(r30)
+/* 801C7BF0 001C3850 89 1D FF FB */ lbz r8, -5(r29)
+/* 801C7BF4 001C3854 7D 6B 3A 14 */ add r11, r11, r7
+/* 801C7BF8 001C3858 7C EA 41 D6 */ mullw r7, r10, r8
+/* 801C7BFC 001C385C 89 5E 00 06 */ lbz r10, 6(r30)
+/* 801C7C00 001C3860 89 1D FF FA */ lbz r8, -6(r29)
+/* 801C7C04 001C3864 7D 6B 3A 14 */ add r11, r11, r7
+/* 801C7C08 001C3868 7C EA 41 D6 */ mullw r7, r10, r8
+/* 801C7C0C 001C386C 89 5E 00 07 */ lbz r10, 7(r30)
+/* 801C7C10 001C3870 89 1D FF F9 */ lbz r8, -7(r29)
+/* 801C7C14 001C3874 3B DE 00 08 */ addi r30, r30, 8
+/* 801C7C18 001C3878 3B BD FF F8 */ addi r29, r29, -8
+/* 801C7C1C 001C387C 7D 6B 3A 14 */ add r11, r11, r7
+/* 801C7C20 001C3880 7C EA 41 D6 */ mullw r7, r10, r8
+/* 801C7C24 001C3884 7D 6B 3A 14 */ add r11, r11, r7
+/* 801C7C28 001C3888 42 00 FF 78 */ bdnz lbl_801C7BA0
+/* 801C7C2C 001C388C 73 FF 00 07 */ andi. r31, r31, 7
+/* 801C7C30 001C3890 41 82 00 24 */ beq lbl_801C7C54
+lbl_801C7C34:
+/* 801C7C34 001C3894 7F E9 03 A6 */ mtctr r31
+lbl_801C7C38:
+/* 801C7C38 001C3898 89 5E 00 00 */ lbz r10, 0(r30)
+/* 801C7C3C 001C389C 3B DE 00 01 */ addi r30, r30, 1
+/* 801C7C40 001C38A0 89 1D 00 00 */ lbz r8, 0(r29)
+/* 801C7C44 001C38A4 3B BD FF FF */ addi r29, r29, -1
+/* 801C7C48 001C38A8 7C EA 41 D6 */ mullw r7, r10, r8
+/* 801C7C4C 001C38AC 7D 6B 3A 14 */ add r11, r11, r7
+/* 801C7C50 001C38B0 42 00 FF E8 */ bdnz lbl_801C7C38
+lbl_801C7C54:
+/* 801C7C54 001C38B4 7D 09 58 16 */ mulhwu r8, r9, r11
+/* 801C7C58 001C38B8 39 8C FF FF */ addi r12, r12, -1
+/* 801C7C5C 001C38BC 7D 07 43 78 */ mr r7, r8
+/* 801C7C60 001C38C0 55 08 E8 FE */ srwi r8, r8, 3
+/* 801C7C64 001C38C4 1D 08 00 0A */ mulli r8, r8, 0xa
+/* 801C7C68 001C38C8 7D 08 58 50 */ subf r8, r8, r11
+/* 801C7C6C 001C38CC 54 EB E8 FE */ srwi r11, r7, 3
+/* 801C7C70 001C38D0 9D 06 FF FF */ stbu r8, -1(r6)
+lbl_801C7C74:
+/* 801C7C74 001C38D4 2C 0C 00 00 */ cmpwi r12, 0
+/* 801C7C78 001C38D8 41 81 FE D0 */ bgt lbl_801C7B48
+/* 801C7C7C 001C38DC A8 E4 00 02 */ lha r7, 2(r4)
+/* 801C7C80 001C38E0 2C 0B 00 00 */ cmpwi r11, 0
+/* 801C7C84 001C38E4 A8 85 00 02 */ lha r4, 2(r5)
+/* 801C7C88 001C38E8 7C 87 22 14 */ add r4, r7, r4
+/* 801C7C8C 001C38EC B0 83 00 02 */ sth r4, 2(r3)
+/* 801C7C90 001C38F0 41 82 00 14 */ beq lbl_801C7CA4
+/* 801C7C94 001C38F4 9D 66 FF FF */ stbu r11, -1(r6)
+/* 801C7C98 001C38F8 A8 83 00 02 */ lha r4, 2(r3)
+/* 801C7C9C 001C38FC 38 84 00 01 */ addi r4, r4, 1
+/* 801C7CA0 001C3900 B0 83 00 02 */ sth r4, 2(r3)
+lbl_801C7CA4:
+/* 801C7CA4 001C3904 38 E0 00 00 */ li r7, 0
+/* 801C7CA8 001C3908 48 00 00 18 */ b lbl_801C7CC0
+lbl_801C7CAC:
+/* 801C7CAC 001C390C 88 A6 00 00 */ lbz r5, 0(r6)
+/* 801C7CB0 001C3910 7C 83 3A 14 */ add r4, r3, r7
+/* 801C7CB4 001C3914 38 E7 00 01 */ addi r7, r7, 1
+/* 801C7CB8 001C3918 38 C6 00 01 */ addi r6, r6, 1
+/* 801C7CBC 001C391C 98 A4 00 05 */ stb r5, 5(r4)
+lbl_801C7CC0:
+/* 801C7CC0 001C3920 2C 07 00 24 */ cmpwi r7, 0x24
+/* 801C7CC4 001C3924 40 80 00 0C */ bge lbl_801C7CD0
+/* 801C7CC8 001C3928 7C 06 00 40 */ cmplw r6, r0
+/* 801C7CCC 001C392C 41 80 FF E0 */ blt lbl_801C7CAC
+lbl_801C7CD0:
+/* 801C7CD0 001C3930 7C 06 00 40 */ cmplw r6, r0
+/* 801C7CD4 001C3934 98 E3 00 04 */ stb r7, 4(r3)
+/* 801C7CD8 001C3938 40 80 00 A0 */ bge lbl_801C7D78
+/* 801C7CDC 001C393C 88 86 00 00 */ lbz r4, 0(r6)
+/* 801C7CE0 001C3940 28 04 00 05 */ cmplwi r4, 5
+/* 801C7CE4 001C3944 41 80 00 94 */ blt lbl_801C7D78
+/* 801C7CE8 001C3948 40 82 00 38 */ bne lbl_801C7D20
+/* 801C7CEC 001C394C 38 A6 00 01 */ addi r5, r6, 1
+/* 801C7CF0 001C3950 7C 85 00 50 */ subf r4, r5, r0
+/* 801C7CF4 001C3954 7C 89 03 A6 */ mtctr r4
+/* 801C7CF8 001C3958 7C 05 00 40 */ cmplw r5, r0
+/* 801C7CFC 001C395C 40 80 00 18 */ bge lbl_801C7D14
+lbl_801C7D00:
+/* 801C7D00 001C3960 88 05 00 00 */ lbz r0, 0(r5)
+/* 801C7D04 001C3964 2C 00 00 00 */ cmpwi r0, 0
+/* 801C7D08 001C3968 40 82 00 18 */ bne lbl_801C7D20
+/* 801C7D0C 001C396C 38 A5 00 01 */ addi r5, r5, 1
+/* 801C7D10 001C3970 42 00 FF F0 */ bdnz lbl_801C7D00
+lbl_801C7D14:
+/* 801C7D14 001C3974 88 06 FF FF */ lbz r0, -1(r6)
+/* 801C7D18 001C3978 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 801C7D1C 001C397C 41 82 00 5C */ beq lbl_801C7D78
+lbl_801C7D20:
+/* 801C7D20 001C3980 88 83 00 04 */ lbz r4, 4(r3)
+/* 801C7D24 001C3984 38 C3 00 05 */ addi r6, r3, 5
+/* 801C7D28 001C3988 38 00 00 00 */ li r0, 0
+/* 801C7D2C 001C398C 7C A6 22 14 */ add r5, r6, r4
+/* 801C7D30 001C3990 38 A5 FF FF */ addi r5, r5, -1
+lbl_801C7D34:
+/* 801C7D34 001C3994 88 85 00 00 */ lbz r4, 0(r5)
+/* 801C7D38 001C3998 28 04 00 09 */ cmplwi r4, 9
+/* 801C7D3C 001C399C 40 80 00 10 */ bge lbl_801C7D4C
+/* 801C7D40 001C39A0 38 04 00 01 */ addi r0, r4, 1
+/* 801C7D44 001C39A4 98 05 00 00 */ stb r0, 0(r5)
+/* 801C7D48 001C39A8 48 00 00 30 */ b lbl_801C7D78
+lbl_801C7D4C:
+/* 801C7D4C 001C39AC 7C 05 30 40 */ cmplw r5, r6
+/* 801C7D50 001C39B0 40 82 00 1C */ bne lbl_801C7D6C
+/* 801C7D54 001C39B4 38 00 00 01 */ li r0, 1
+/* 801C7D58 001C39B8 98 05 00 00 */ stb r0, 0(r5)
+/* 801C7D5C 001C39BC A8 83 00 02 */ lha r4, 2(r3)
+/* 801C7D60 001C39C0 38 04 00 01 */ addi r0, r4, 1
+/* 801C7D64 001C39C4 B0 03 00 02 */ sth r0, 2(r3)
+/* 801C7D68 001C39C8 48 00 00 10 */ b lbl_801C7D78
+lbl_801C7D6C:
+/* 801C7D6C 001C39CC 98 05 00 00 */ stb r0, 0(r5)
+/* 801C7D70 001C39D0 38 A5 FF FF */ addi r5, r5, -1
+/* 801C7D74 001C39D4 4B FF FF C0 */ b lbl_801C7D34
+lbl_801C7D78:
+/* 801C7D78 001C39D8 83 E1 00 5C */ lwz r31, 0x5c(r1)
+/* 801C7D7C 001C39DC 83 C1 00 58 */ lwz r30, 0x58(r1)
+/* 801C7D80 001C39E0 83 A1 00 54 */ lwz r29, 0x54(r1)
+/* 801C7D84 001C39E4 38 21 00 60 */ addi r1, r1, 0x60
+/* 801C7D88 001C39E8 4E 80 00 20 */ blr
+
+.global __str2dec
+__str2dec:
+/* 801C7D8C 001C39EC 38 00 00 00 */ li r0, 0
+/* 801C7D90 001C39F0 B0 A3 00 02 */ sth r5, 2(r3)
+/* 801C7D94 001C39F4 38 E0 00 00 */ li r7, 0
+/* 801C7D98 001C39F8 98 03 00 00 */ stb r0, 0(r3)
+/* 801C7D9C 001C39FC 48 00 00 1C */ b lbl_801C7DB8
+lbl_801C7DA0:
+/* 801C7DA0 001C3A00 88 C4 00 00 */ lbz r6, 0(r4)
+/* 801C7DA4 001C3A04 7C A3 3A 14 */ add r5, r3, r7
+/* 801C7DA8 001C3A08 38 84 00 01 */ addi r4, r4, 1
+/* 801C7DAC 001C3A0C 38 E7 00 01 */ addi r7, r7, 1
+/* 801C7DB0 001C3A10 38 06 FF D0 */ addi r0, r6, -48
+/* 801C7DB4 001C3A14 98 05 00 05 */ stb r0, 5(r5)
+lbl_801C7DB8:
+/* 801C7DB8 001C3A18 2C 07 00 24 */ cmpwi r7, 0x24
+/* 801C7DBC 001C3A1C 40 80 00 10 */ bge lbl_801C7DCC
+/* 801C7DC0 001C3A20 88 04 00 00 */ lbz r0, 0(r4)
+/* 801C7DC4 001C3A24 7C 00 07 75 */ extsb. r0, r0
+/* 801C7DC8 001C3A28 40 82 FF D8 */ bne lbl_801C7DA0
+lbl_801C7DCC:
+/* 801C7DCC 001C3A2C 88 04 00 00 */ lbz r0, 0(r4)
+/* 801C7DD0 001C3A30 98 E3 00 04 */ stb r7, 4(r3)
+/* 801C7DD4 001C3A34 7C 00 07 75 */ extsb. r0, r0
+/* 801C7DD8 001C3A38 4D 82 00 20 */ beqlr
+/* 801C7DDC 001C3A3C 2C 00 00 05 */ cmpwi r0, 5
+/* 801C7DE0 001C3A40 4D 80 00 20 */ bltlr
+/* 801C7DE4 001C3A44 41 81 00 38 */ bgt lbl_801C7E1C
+/* 801C7DE8 001C3A48 38 A4 00 01 */ addi r5, r4, 1
+/* 801C7DEC 001C3A4C 48 00 00 14 */ b lbl_801C7E00
+lbl_801C7DF0:
+/* 801C7DF0 001C3A50 7C 80 07 74 */ extsb r0, r4
+/* 801C7DF4 001C3A54 2C 00 00 30 */ cmpwi r0, 0x30
+/* 801C7DF8 001C3A58 40 82 00 24 */ bne lbl_801C7E1C
+/* 801C7DFC 001C3A5C 38 A5 00 01 */ addi r5, r5, 1
+lbl_801C7E00:
+/* 801C7E00 001C3A60 88 85 00 00 */ lbz r4, 0(r5)
+/* 801C7E04 001C3A64 7C 80 07 75 */ extsb. r0, r4
+/* 801C7E08 001C3A68 40 82 FF E8 */ bne lbl_801C7DF0
+/* 801C7E0C 001C3A6C 7C 87 1A 14 */ add r4, r7, r3
+/* 801C7E10 001C3A70 88 04 00 04 */ lbz r0, 4(r4)
+/* 801C7E14 001C3A74 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 801C7E18 001C3A78 4D 82 00 20 */ beqlr
+lbl_801C7E1C:
+/* 801C7E1C 001C3A7C 88 83 00 04 */ lbz r4, 4(r3)
+/* 801C7E20 001C3A80 38 C3 00 05 */ addi r6, r3, 5
+/* 801C7E24 001C3A84 38 00 00 00 */ li r0, 0
+/* 801C7E28 001C3A88 7C A6 22 14 */ add r5, r6, r4
+/* 801C7E2C 001C3A8C 38 A5 FF FF */ addi r5, r5, -1
+lbl_801C7E30:
+/* 801C7E30 001C3A90 88 85 00 00 */ lbz r4, 0(r5)
+/* 801C7E34 001C3A94 28 04 00 09 */ cmplwi r4, 9
+/* 801C7E38 001C3A98 40 80 00 10 */ bge lbl_801C7E48
+/* 801C7E3C 001C3A9C 38 04 00 01 */ addi r0, r4, 1
+/* 801C7E40 001C3AA0 98 05 00 00 */ stb r0, 0(r5)
+/* 801C7E44 001C3AA4 4E 80 00 20 */ blr
+lbl_801C7E48:
+/* 801C7E48 001C3AA8 7C 05 30 40 */ cmplw r5, r6
+/* 801C7E4C 001C3AAC 40 82 00 1C */ bne lbl_801C7E68
+/* 801C7E50 001C3AB0 38 00 00 01 */ li r0, 1
+/* 801C7E54 001C3AB4 98 05 00 00 */ stb r0, 0(r5)
+/* 801C7E58 001C3AB8 A8 83 00 02 */ lha r4, 2(r3)
+/* 801C7E5C 001C3ABC 38 04 00 01 */ addi r0, r4, 1
+/* 801C7E60 001C3AC0 B0 03 00 02 */ sth r0, 2(r3)
+/* 801C7E64 001C3AC4 4E 80 00 20 */ blr
+lbl_801C7E68:
+/* 801C7E68 001C3AC8 98 05 00 00 */ stb r0, 0(r5)
+/* 801C7E6C 001C3ACC 38 A5 FF FF */ addi r5, r5, -1
+/* 801C7E70 001C3AD0 4B FF FF C0 */ b lbl_801C7E30
+/* 801C7E74 001C3AD4 4E 80 00 20 */ blr
+
+.global __two_exp
+__two_exp:
+/* 801C7E78 001C3AD8 94 21 FF 90 */ stwu r1, -0x70(r1)
+/* 801C7E7C 001C3ADC 7C 08 02 A6 */ mflr r0
+/* 801C7E80 001C3AE0 90 01 00 74 */ stw r0, 0x74(r1)
+/* 801C7E84 001C3AE4 38 04 00 40 */ addi r0, r4, 0x40
+/* 801C7E88 001C3AE8 28 00 00 48 */ cmplwi r0, 0x48
+/* 801C7E8C 001C3AEC 93 E1 00 6C */ stw r31, 0x6c(r1)
+/* 801C7E90 001C3AF0 7C 7F 1B 78 */ mr r31, r3
+/* 801C7E94 001C3AF4 93 C1 00 68 */ stw r30, 0x68(r1)
+/* 801C7E98 001C3AF8 7C 9E 23 78 */ mr r30, r4
+/* 801C7E9C 001C3AFC 41 81 02 10 */ bgt lbl_801C80AC
+/* 801C7EA0 001C3B00 3C A0 80 42 */ lis r5, lbl_80422A30@ha
+/* 801C7EA4 001C3B04 54 00 10 3A */ slwi r0, r0, 2
+/* 801C7EA8 001C3B08 38 A5 2A 30 */ addi r5, r5, lbl_80422A30@l
+/* 801C7EAC 001C3B0C 7C A5 00 2E */ lwzx r5, r5, r0
+/* 801C7EB0 001C3B10 7C A9 03 A6 */ mtctr r5
+/* 801C7EB4 001C3B14 4E 80 04 20 */ bctr
+/* 801C7EB8 001C3B18 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7EBC 001C3B1C 38 A0 FF EC */ li r5, -20
+/* 801C7EC0 001C3B20 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7EC4 001C3B24 4B FF FE C9 */ bl __str2dec
+/* 801C7EC8 001C3B28 48 00 03 04 */ b lbl_801C81CC
+/* 801C7ECC 001C3B2C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7ED0 001C3B30 38 A0 FF F0 */ li r5, -16
+/* 801C7ED4 001C3B34 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7ED8 001C3B38 38 84 00 2E */ addi r4, r4, 0x2e
+/* 801C7EDC 001C3B3C 4B FF FE B1 */ bl __str2dec
+/* 801C7EE0 001C3B40 48 00 02 EC */ b lbl_801C81CC
+/* 801C7EE4 001C3B44 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7EE8 001C3B48 38 A0 FF F6 */ li r5, -10
+/* 801C7EEC 001C3B4C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7EF0 001C3B50 38 84 00 55 */ addi r4, r4, 0x55
+/* 801C7EF4 001C3B54 4B FF FE 99 */ bl __str2dec
+/* 801C7EF8 001C3B58 48 00 02 D4 */ b lbl_801C81CC
+/* 801C7EFC 001C3B5C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7F00 001C3B60 38 A0 FF FB */ li r5, -5
+/* 801C7F04 001C3B64 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7F08 001C3B68 38 84 00 6D */ addi r4, r4, 0x6d
+/* 801C7F0C 001C3B6C 4B FF FE 81 */ bl __str2dec
+/* 801C7F10 001C3B70 48 00 02 BC */ b lbl_801C81CC
+/* 801C7F14 001C3B74 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7F18 001C3B78 38 A0 FF FD */ li r5, -3
+/* 801C7F1C 001C3B7C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7F20 001C3B80 38 84 00 7A */ addi r4, r4, 0x7a
+/* 801C7F24 001C3B84 4B FF FE 69 */ bl __str2dec
+/* 801C7F28 001C3B88 48 00 02 A4 */ b lbl_801C81CC
+/* 801C7F2C 001C3B8C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7F30 001C3B90 38 A0 FF FD */ li r5, -3
+/* 801C7F34 001C3B94 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7F38 001C3B98 38 84 00 81 */ addi r4, r4, 0x81
+/* 801C7F3C 001C3B9C 4B FF FE 51 */ bl __str2dec
+/* 801C7F40 001C3BA0 48 00 02 8C */ b lbl_801C81CC
+/* 801C7F44 001C3BA4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7F48 001C3BA8 38 A0 FF FE */ li r5, -2
+/* 801C7F4C 001C3BAC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7F50 001C3BB0 38 84 00 87 */ addi r4, r4, 0x87
+/* 801C7F54 001C3BB4 4B FF FE 39 */ bl __str2dec
+/* 801C7F58 001C3BB8 48 00 02 74 */ b lbl_801C81CC
+/* 801C7F5C 001C3BBC 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7F60 001C3BC0 38 A0 FF FE */ li r5, -2
+/* 801C7F64 001C3BC4 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7F68 001C3BC8 38 84 00 8D */ addi r4, r4, 0x8d
+/* 801C7F6C 001C3BCC 4B FF FE 21 */ bl __str2dec
+/* 801C7F70 001C3BD0 48 00 02 5C */ b lbl_801C81CC
+/* 801C7F74 001C3BD4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7F78 001C3BD8 38 A0 FF FE */ li r5, -2
+/* 801C7F7C 001C3BDC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7F80 001C3BE0 38 84 00 92 */ addi r4, r4, 0x92
+/* 801C7F84 001C3BE4 4B FF FE 09 */ bl __str2dec
+/* 801C7F88 001C3BE8 48 00 02 44 */ b lbl_801C81CC
+/* 801C7F8C 001C3BEC 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7F90 001C3BF0 38 A0 FF FF */ li r5, -1
+/* 801C7F94 001C3BF4 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7F98 001C3BF8 38 84 00 96 */ addi r4, r4, 0x96
+/* 801C7F9C 001C3BFC 4B FF FD F1 */ bl __str2dec
+/* 801C7FA0 001C3C00 48 00 02 2C */ b lbl_801C81CC
+/* 801C7FA4 001C3C04 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7FA8 001C3C08 38 A0 FF FF */ li r5, -1
+/* 801C7FAC 001C3C0C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7FB0 001C3C10 38 84 00 9A */ addi r4, r4, 0x9a
+/* 801C7FB4 001C3C14 4B FF FD D9 */ bl __str2dec
+/* 801C7FB8 001C3C18 48 00 02 14 */ b lbl_801C81CC
+/* 801C7FBC 001C3C1C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7FC0 001C3C20 38 A0 FF FF */ li r5, -1
+/* 801C7FC4 001C3C24 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7FC8 001C3C28 38 84 00 9D */ addi r4, r4, 0x9d
+/* 801C7FCC 001C3C2C 4B FF FD C1 */ bl __str2dec
+/* 801C7FD0 001C3C30 48 00 01 FC */ b lbl_801C81CC
+/* 801C7FD4 001C3C34 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7FD8 001C3C38 38 A0 00 00 */ li r5, 0
+/* 801C7FDC 001C3C3C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7FE0 001C3C40 38 84 00 9F */ addi r4, r4, 0x9f
+/* 801C7FE4 001C3C44 4B FF FD A9 */ bl __str2dec
+/* 801C7FE8 001C3C48 48 00 01 E4 */ b lbl_801C81CC
+/* 801C7FEC 001C3C4C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C7FF0 001C3C50 38 A0 00 00 */ li r5, 0
+/* 801C7FF4 001C3C54 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C7FF8 001C3C58 38 84 00 A1 */ addi r4, r4, 0xa1
+/* 801C7FFC 001C3C5C 4B FF FD 91 */ bl __str2dec
+/* 801C8000 001C3C60 48 00 01 CC */ b lbl_801C81CC
+/* 801C8004 001C3C64 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C8008 001C3C68 38 A0 00 00 */ li r5, 0
+/* 801C800C 001C3C6C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C8010 001C3C70 38 84 00 A3 */ addi r4, r4, 0xa3
+/* 801C8014 001C3C74 4B FF FD 79 */ bl __str2dec
+/* 801C8018 001C3C78 48 00 01 B4 */ b lbl_801C81CC
+/* 801C801C 001C3C7C 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C8020 001C3C80 38 A0 00 00 */ li r5, 0
+/* 801C8024 001C3C84 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C8028 001C3C88 38 84 00 A5 */ addi r4, r4, 0xa5
+/* 801C802C 001C3C8C 4B FF FD 61 */ bl __str2dec
+/* 801C8030 001C3C90 48 00 01 9C */ b lbl_801C81CC
+/* 801C8034 001C3C94 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C8038 001C3C98 38 A0 00 01 */ li r5, 1
+/* 801C803C 001C3C9C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C8040 001C3CA0 38 84 00 A7 */ addi r4, r4, 0xa7
+/* 801C8044 001C3CA4 4B FF FD 49 */ bl __str2dec
+/* 801C8048 001C3CA8 48 00 01 84 */ b lbl_801C81CC
+/* 801C804C 001C3CAC 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C8050 001C3CB0 38 A0 00 01 */ li r5, 1
+/* 801C8054 001C3CB4 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C8058 001C3CB8 38 84 00 AA */ addi r4, r4, 0xaa
+/* 801C805C 001C3CBC 4B FF FD 31 */ bl __str2dec
+/* 801C8060 001C3CC0 48 00 01 6C */ b lbl_801C81CC
+/* 801C8064 001C3CC4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C8068 001C3CC8 38 A0 00 01 */ li r5, 1
+/* 801C806C 001C3CCC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C8070 001C3CD0 38 84 00 AD */ addi r4, r4, 0xad
+/* 801C8074 001C3CD4 4B FF FD 19 */ bl __str2dec
+/* 801C8078 001C3CD8 48 00 01 54 */ b lbl_801C81CC
+/* 801C807C 001C3CDC 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C8080 001C3CE0 38 A0 00 02 */ li r5, 2
+/* 801C8084 001C3CE4 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C8088 001C3CE8 38 84 00 B0 */ addi r4, r4, 0xb0
+/* 801C808C 001C3CEC 4B FF FD 01 */ bl __str2dec
+/* 801C8090 001C3CF0 48 00 01 3C */ b lbl_801C81CC
+/* 801C8094 001C3CF4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C8098 001C3CF8 38 A0 00 02 */ li r5, 2
+/* 801C809C 001C3CFC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C80A0 001C3D00 38 84 00 B4 */ addi r4, r4, 0xb4
+/* 801C80A4 001C3D04 4B FF FC E9 */ bl __str2dec
+/* 801C80A8 001C3D08 48 00 01 24 */ b lbl_801C81CC
+lbl_801C80AC:
+/* 801C80AC 001C3D0C 54 80 0F FE */ srwi r0, r4, 0x1f
+/* 801C80B0 001C3D10 38 61 00 34 */ addi r3, r1, 0x34
+/* 801C80B4 001C3D14 7C 00 22 14 */ add r0, r0, r4
+/* 801C80B8 001C3D18 7C 04 0E 70 */ srawi r4, r0, 1
+/* 801C80BC 001C3D1C 4B FF FD BD */ bl __two_exp
+/* 801C80C0 001C3D20 38 81 00 34 */ addi r4, r1, 0x34
+/* 801C80C4 001C3D24 7F E3 FB 78 */ mr r3, r31
+/* 801C80C8 001C3D28 7C 85 23 78 */ mr r5, r4
+/* 801C80CC 001C3D2C 4B FF FA 39 */ bl __timesdec
+/* 801C80D0 001C3D30 57 C0 07 FF */ clrlwi. r0, r30, 0x1f
+/* 801C80D4 001C3D34 41 82 00 F8 */ beq lbl_801C81CC
+/* 801C80D8 001C3D38 A0 7F 00 00 */ lhz r3, 0(r31)
+/* 801C80DC 001C3D3C 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C80E0 001C3D40 A0 1F 00 02 */ lhz r0, 2(r31)
+/* 801C80E4 001C3D44 B0 61 00 08 */ sth r3, 8(r1)
+/* 801C80E8 001C3D48 B0 01 00 0A */ sth r0, 0xa(r1)
+/* 801C80EC 001C3D4C A0 7F 00 04 */ lhz r3, 4(r31)
+/* 801C80F0 001C3D50 A0 1F 00 06 */ lhz r0, 6(r31)
+/* 801C80F4 001C3D54 B0 61 00 0C */ sth r3, 0xc(r1)
+/* 801C80F8 001C3D58 B0 01 00 0E */ sth r0, 0xe(r1)
+/* 801C80FC 001C3D5C A0 7F 00 08 */ lhz r3, 8(r31)
+/* 801C8100 001C3D60 A0 1F 00 0A */ lhz r0, 0xa(r31)
+/* 801C8104 001C3D64 B0 61 00 10 */ sth r3, 0x10(r1)
+/* 801C8108 001C3D68 B0 01 00 12 */ sth r0, 0x12(r1)
+/* 801C810C 001C3D6C A0 7F 00 0C */ lhz r3, 0xc(r31)
+/* 801C8110 001C3D70 A0 1F 00 0E */ lhz r0, 0xe(r31)
+/* 801C8114 001C3D74 B0 61 00 14 */ sth r3, 0x14(r1)
+/* 801C8118 001C3D78 B0 01 00 16 */ sth r0, 0x16(r1)
+/* 801C811C 001C3D7C A0 7F 00 10 */ lhz r3, 0x10(r31)
+/* 801C8120 001C3D80 A0 1F 00 12 */ lhz r0, 0x12(r31)
+/* 801C8124 001C3D84 B0 61 00 18 */ sth r3, 0x18(r1)
+/* 801C8128 001C3D88 B0 01 00 1A */ sth r0, 0x1a(r1)
+/* 801C812C 001C3D8C A0 7F 00 14 */ lhz r3, 0x14(r31)
+/* 801C8130 001C3D90 A0 1F 00 16 */ lhz r0, 0x16(r31)
+/* 801C8134 001C3D94 B0 61 00 1C */ sth r3, 0x1c(r1)
+/* 801C8138 001C3D98 B0 01 00 1E */ sth r0, 0x1e(r1)
+/* 801C813C 001C3D9C A0 7F 00 18 */ lhz r3, 0x18(r31)
+/* 801C8140 001C3DA0 A0 1F 00 1A */ lhz r0, 0x1a(r31)
+/* 801C8144 001C3DA4 B0 61 00 20 */ sth r3, 0x20(r1)
+/* 801C8148 001C3DA8 B0 01 00 22 */ sth r0, 0x22(r1)
+/* 801C814C 001C3DAC A0 7F 00 1C */ lhz r3, 0x1c(r31)
+/* 801C8150 001C3DB0 A0 1F 00 1E */ lhz r0, 0x1e(r31)
+/* 801C8154 001C3DB4 B0 61 00 24 */ sth r3, 0x24(r1)
+/* 801C8158 001C3DB8 B0 01 00 26 */ sth r0, 0x26(r1)
+/* 801C815C 001C3DBC A0 7F 00 20 */ lhz r3, 0x20(r31)
+/* 801C8160 001C3DC0 A0 1F 00 22 */ lhz r0, 0x22(r31)
+/* 801C8164 001C3DC4 B0 61 00 28 */ sth r3, 0x28(r1)
+/* 801C8168 001C3DC8 B0 01 00 2A */ sth r0, 0x2a(r1)
+/* 801C816C 001C3DCC A0 7F 00 24 */ lhz r3, 0x24(r31)
+/* 801C8170 001C3DD0 A0 1F 00 26 */ lhz r0, 0x26(r31)
+/* 801C8174 001C3DD4 B0 61 00 2C */ sth r3, 0x2c(r1)
+/* 801C8178 001C3DD8 B0 01 00 2E */ sth r0, 0x2e(r1)
+/* 801C817C 001C3DDC A0 1F 00 28 */ lhz r0, 0x28(r31)
+/* 801C8180 001C3DE0 B0 01 00 30 */ sth r0, 0x30(r1)
+/* 801C8184 001C3DE4 40 81 00 20 */ ble lbl_801C81A4
+/* 801C8188 001C3DE8 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C818C 001C3DEC 38 61 00 34 */ addi r3, r1, 0x34
+/* 801C8190 001C3DF0 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C8194 001C3DF4 38 A0 00 00 */ li r5, 0
+/* 801C8198 001C3DF8 38 84 00 A1 */ addi r4, r4, 0xa1
+/* 801C819C 001C3DFC 4B FF FB F1 */ bl __str2dec
+/* 801C81A0 001C3E00 48 00 00 1C */ b lbl_801C81BC
+lbl_801C81A4:
+/* 801C81A4 001C3E04 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C81A8 001C3E08 38 61 00 34 */ addi r3, r1, 0x34
+/* 801C81AC 001C3E0C 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C81B0 001C3E10 38 A0 FF FF */ li r5, -1
+/* 801C81B4 001C3E14 38 84 00 9D */ addi r4, r4, 0x9d
+/* 801C81B8 001C3E18 4B FF FB D5 */ bl __str2dec
+lbl_801C81BC:
+/* 801C81BC 001C3E1C 7F E3 FB 78 */ mr r3, r31
+/* 801C81C0 001C3E20 38 81 00 08 */ addi r4, r1, 8
+/* 801C81C4 001C3E24 38 A1 00 34 */ addi r5, r1, 0x34
+/* 801C81C8 001C3E28 4B FF F9 3D */ bl __timesdec
+lbl_801C81CC:
+/* 801C81CC 001C3E2C 80 01 00 74 */ lwz r0, 0x74(r1)
+/* 801C81D0 001C3E30 83 E1 00 6C */ lwz r31, 0x6c(r1)
+/* 801C81D4 001C3E34 83 C1 00 68 */ lwz r30, 0x68(r1)
+/* 801C81D8 001C3E38 7C 08 03 A6 */ mtlr r0
+/* 801C81DC 001C3E3C 38 21 00 70 */ addi r1, r1, 0x70
+/* 801C81E0 001C3E40 4E 80 00 20 */ blr
+
+.global __equals_dec
+__equals_dec:
+/* 801C81E4 001C3E44 88 A3 00 05 */ lbz r5, 5(r3)
+/* 801C81E8 001C3E48 2C 05 00 00 */ cmpwi r5, 0
+/* 801C81EC 001C3E4C 40 82 00 14 */ bne lbl_801C8200
+/* 801C81F0 001C3E50 88 04 00 05 */ lbz r0, 5(r4)
+/* 801C81F4 001C3E54 7C 00 00 34 */ cntlzw r0, r0
+/* 801C81F8 001C3E58 54 03 D9 7E */ srwi r3, r0, 5
+/* 801C81FC 001C3E5C 4E 80 00 20 */ blr
+lbl_801C8200:
+/* 801C8200 001C3E60 88 04 00 05 */ lbz r0, 5(r4)
+/* 801C8204 001C3E64 2C 00 00 00 */ cmpwi r0, 0
+/* 801C8208 001C3E68 40 82 00 10 */ bne lbl_801C8218
+/* 801C820C 001C3E6C 7C A0 00 34 */ cntlzw r0, r5
+/* 801C8210 001C3E70 54 03 D9 7E */ srwi r3, r0, 5
+/* 801C8214 001C3E74 4E 80 00 20 */ blr
+lbl_801C8218:
+/* 801C8218 001C3E78 A8 A3 00 02 */ lha r5, 2(r3)
+/* 801C821C 001C3E7C A8 04 00 02 */ lha r0, 2(r4)
+/* 801C8220 001C3E80 7C 05 00 00 */ cmpw r5, r0
+/* 801C8224 001C3E84 40 82 00 9C */ bne lbl_801C82C0
+/* 801C8228 001C3E88 88 E3 00 04 */ lbz r7, 4(r3)
+/* 801C822C 001C3E8C 88 04 00 04 */ lbz r0, 4(r4)
+/* 801C8230 001C3E90 7C E9 3B 78 */ mr r9, r7
+/* 801C8234 001C3E94 7C 07 00 00 */ cmpw r7, r0
+/* 801C8238 001C3E98 40 81 00 08 */ ble lbl_801C8240
+/* 801C823C 001C3E9C 7C 09 03 78 */ mr r9, r0
+lbl_801C8240:
+/* 801C8240 001C3EA0 39 00 00 00 */ li r8, 0
+/* 801C8244 001C3EA4 7D 29 03 A6 */ mtctr r9
+/* 801C8248 001C3EA8 2C 09 00 00 */ cmpwi r9, 0
+/* 801C824C 001C3EAC 40 81 00 2C */ ble lbl_801C8278
+lbl_801C8250:
+/* 801C8250 001C3EB0 7C C3 42 14 */ add r6, r3, r8
+/* 801C8254 001C3EB4 7C A4 42 14 */ add r5, r4, r8
+/* 801C8258 001C3EB8 88 C6 00 05 */ lbz r6, 5(r6)
+/* 801C825C 001C3EBC 88 05 00 05 */ lbz r0, 5(r5)
+/* 801C8260 001C3EC0 7C 06 00 40 */ cmplw r6, r0
+/* 801C8264 001C3EC4 41 82 00 0C */ beq lbl_801C8270
+/* 801C8268 001C3EC8 38 60 00 00 */ li r3, 0
+/* 801C826C 001C3ECC 4E 80 00 20 */ blr
+lbl_801C8270:
+/* 801C8270 001C3ED0 39 08 00 01 */ addi r8, r8, 1
+/* 801C8274 001C3ED4 42 00 FF DC */ bdnz lbl_801C8250
+lbl_801C8278:
+/* 801C8278 001C3ED8 7C 09 38 00 */ cmpw r9, r7
+/* 801C827C 001C3EDC 40 82 00 08 */ bne lbl_801C8284
+/* 801C8280 001C3EE0 7C 83 23 78 */ mr r3, r4
+lbl_801C8284:
+/* 801C8284 001C3EE4 88 83 00 04 */ lbz r4, 4(r3)
+/* 801C8288 001C3EE8 7C 08 20 50 */ subf r0, r8, r4
+/* 801C828C 001C3EEC 7C 09 03 A6 */ mtctr r0
+/* 801C8290 001C3EF0 7C 08 20 00 */ cmpw r8, r4
+/* 801C8294 001C3EF4 40 80 00 24 */ bge lbl_801C82B8
+lbl_801C8298:
+/* 801C8298 001C3EF8 7C 83 42 14 */ add r4, r3, r8
+/* 801C829C 001C3EFC 88 04 00 05 */ lbz r0, 5(r4)
+/* 801C82A0 001C3F00 2C 00 00 00 */ cmpwi r0, 0
+/* 801C82A4 001C3F04 41 82 00 0C */ beq lbl_801C82B0
+/* 801C82A8 001C3F08 38 60 00 00 */ li r3, 0
+/* 801C82AC 001C3F0C 4E 80 00 20 */ blr
+lbl_801C82B0:
+/* 801C82B0 001C3F10 39 08 00 01 */ addi r8, r8, 1
+/* 801C82B4 001C3F14 42 00 FF E4 */ bdnz lbl_801C8298
+lbl_801C82B8:
+/* 801C82B8 001C3F18 38 60 00 01 */ li r3, 1
+/* 801C82BC 001C3F1C 4E 80 00 20 */ blr
+lbl_801C82C0:
+/* 801C82C0 001C3F20 38 60 00 00 */ li r3, 0
+/* 801C82C4 001C3F24 4E 80 00 20 */ blr
+
+.global __less_dec
+__less_dec:
+/* 801C82C8 001C3F28 88 03 00 05 */ lbz r0, 5(r3)
+/* 801C82CC 001C3F2C 2C 00 00 00 */ cmpwi r0, 0
+/* 801C82D0 001C3F30 40 82 00 18 */ bne lbl_801C82E8
+/* 801C82D4 001C3F34 88 64 00 05 */ lbz r3, 5(r4)
+/* 801C82D8 001C3F38 7C 03 00 D0 */ neg r0, r3
+/* 801C82DC 001C3F3C 7C 00 1B 78 */ or r0, r0, r3
+/* 801C82E0 001C3F40 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 801C82E4 001C3F44 4E 80 00 20 */ blr
+lbl_801C82E8:
+/* 801C82E8 001C3F48 88 04 00 05 */ lbz r0, 5(r4)
+/* 801C82EC 001C3F4C 2C 00 00 00 */ cmpwi r0, 0
+/* 801C82F0 001C3F50 40 82 00 0C */ bne lbl_801C82FC
+/* 801C82F4 001C3F54 38 60 00 00 */ li r3, 0
+/* 801C82F8 001C3F58 4E 80 00 20 */ blr
+lbl_801C82FC:
+/* 801C82FC 001C3F5C A8 A4 00 02 */ lha r5, 2(r4)
+/* 801C8300 001C3F60 A8 03 00 02 */ lha r0, 2(r3)
+/* 801C8304 001C3F64 7C 00 28 00 */ cmpw r0, r5
+/* 801C8308 001C3F68 40 82 00 A8 */ bne lbl_801C83B0
+/* 801C830C 001C3F6C 88 E3 00 04 */ lbz r7, 4(r3)
+/* 801C8310 001C3F70 88 04 00 04 */ lbz r0, 4(r4)
+/* 801C8314 001C3F74 7C E9 3B 78 */ mr r9, r7
+/* 801C8318 001C3F78 7C 07 00 00 */ cmpw r7, r0
+/* 801C831C 001C3F7C 40 81 00 08 */ ble lbl_801C8324
+/* 801C8320 001C3F80 7C 09 03 78 */ mr r9, r0
+lbl_801C8324:
+/* 801C8324 001C3F84 39 00 00 00 */ li r8, 0
+/* 801C8328 001C3F88 7D 29 03 A6 */ mtctr r9
+/* 801C832C 001C3F8C 2C 09 00 00 */ cmpwi r9, 0
+/* 801C8330 001C3F90 40 81 00 3C */ ble lbl_801C836C
+lbl_801C8334:
+/* 801C8334 001C3F94 7C C4 42 14 */ add r6, r4, r8
+/* 801C8338 001C3F98 7C A3 42 14 */ add r5, r3, r8
+/* 801C833C 001C3F9C 88 C6 00 05 */ lbz r6, 5(r6)
+/* 801C8340 001C3FA0 88 05 00 05 */ lbz r0, 5(r5)
+/* 801C8344 001C3FA4 7C 00 30 40 */ cmplw r0, r6
+/* 801C8348 001C3FA8 40 80 00 0C */ bge lbl_801C8354
+/* 801C834C 001C3FAC 38 60 00 01 */ li r3, 1
+/* 801C8350 001C3FB0 4E 80 00 20 */ blr
+lbl_801C8354:
+/* 801C8354 001C3FB4 7C 06 00 40 */ cmplw r6, r0
+/* 801C8358 001C3FB8 40 80 00 0C */ bge lbl_801C8364
+/* 801C835C 001C3FBC 38 60 00 00 */ li r3, 0
+/* 801C8360 001C3FC0 4E 80 00 20 */ blr
+lbl_801C8364:
+/* 801C8364 001C3FC4 39 08 00 01 */ addi r8, r8, 1
+/* 801C8368 001C3FC8 42 00 FF CC */ bdnz lbl_801C8334
+lbl_801C836C:
+/* 801C836C 001C3FCC 7C 09 38 00 */ cmpw r9, r7
+/* 801C8370 001C3FD0 40 82 00 38 */ bne lbl_801C83A8
+/* 801C8374 001C3FD4 88 64 00 04 */ lbz r3, 4(r4)
+/* 801C8378 001C3FD8 7C 08 18 50 */ subf r0, r8, r3
+/* 801C837C 001C3FDC 7C 09 03 A6 */ mtctr r0
+/* 801C8380 001C3FE0 7C 08 18 00 */ cmpw r8, r3
+/* 801C8384 001C3FE4 40 80 00 24 */ bge lbl_801C83A8
+lbl_801C8388:
+/* 801C8388 001C3FE8 7C 64 42 14 */ add r3, r4, r8
+/* 801C838C 001C3FEC 88 03 00 05 */ lbz r0, 5(r3)
+/* 801C8390 001C3FF0 2C 00 00 00 */ cmpwi r0, 0
+/* 801C8394 001C3FF4 41 82 00 0C */ beq lbl_801C83A0
+/* 801C8398 001C3FF8 38 60 00 01 */ li r3, 1
+/* 801C839C 001C3FFC 4E 80 00 20 */ blr
+lbl_801C83A0:
+/* 801C83A0 001C4000 39 08 00 01 */ addi r8, r8, 1
+/* 801C83A4 001C4004 42 00 FF E4 */ bdnz lbl_801C8388
+lbl_801C83A8:
+/* 801C83A8 001C4008 38 60 00 00 */ li r3, 0
+/* 801C83AC 001C400C 4E 80 00 20 */ blr
+lbl_801C83B0:
+/* 801C83B0 001C4010 7C A0 02 78 */ xor r0, r5, r0
+/* 801C83B4 001C4014 7C 03 0E 70 */ srawi r3, r0, 1
+/* 801C83B8 001C4018 7C 00 28 38 */ and r0, r0, r5
+/* 801C83BC 001C401C 7C 00 18 50 */ subf r0, r0, r3
+/* 801C83C0 001C4020 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 801C83C4 001C4024 4E 80 00 20 */ blr
+
+.global __minus_dec
+__minus_dec:
+/* 801C83C8 001C4028 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 801C83CC 001C402C A1 84 00 1A */ lhz r12, 0x1a(r4)
+/* 801C83D0 001C4030 BE 61 00 0C */ stmw r19, 0xc(r1)
+/* 801C83D4 001C4034 A2 64 00 00 */ lhz r19, 0(r4)
+/* 801C83D8 001C4038 A2 84 00 02 */ lhz r20, 2(r4)
+/* 801C83DC 001C403C A2 A4 00 04 */ lhz r21, 4(r4)
+/* 801C83E0 001C4040 A2 C4 00 06 */ lhz r22, 6(r4)
+/* 801C83E4 001C4044 A2 E4 00 08 */ lhz r23, 8(r4)
+/* 801C83E8 001C4048 A3 04 00 0A */ lhz r24, 0xa(r4)
+/* 801C83EC 001C404C A3 24 00 0C */ lhz r25, 0xc(r4)
+/* 801C83F0 001C4050 A3 44 00 0E */ lhz r26, 0xe(r4)
+/* 801C83F4 001C4054 A3 64 00 10 */ lhz r27, 0x10(r4)
+/* 801C83F8 001C4058 A3 84 00 12 */ lhz r28, 0x12(r4)
+/* 801C83FC 001C405C A3 A4 00 14 */ lhz r29, 0x14(r4)
+/* 801C8400 001C4060 A3 C4 00 16 */ lhz r30, 0x16(r4)
+/* 801C8404 001C4064 A3 E4 00 18 */ lhz r31, 0x18(r4)
+/* 801C8408 001C4068 A1 64 00 1C */ lhz r11, 0x1c(r4)
+/* 801C840C 001C406C A1 44 00 1E */ lhz r10, 0x1e(r4)
+/* 801C8410 001C4070 A1 24 00 20 */ lhz r9, 0x20(r4)
+/* 801C8414 001C4074 A1 04 00 22 */ lhz r8, 0x22(r4)
+/* 801C8418 001C4078 A0 E4 00 24 */ lhz r7, 0x24(r4)
+/* 801C841C 001C407C A0 C4 00 26 */ lhz r6, 0x26(r4)
+/* 801C8420 001C4080 A0 04 00 28 */ lhz r0, 0x28(r4)
+/* 801C8424 001C4084 B2 63 00 00 */ sth r19, 0(r3)
+/* 801C8428 001C4088 B2 83 00 02 */ sth r20, 2(r3)
+/* 801C842C 001C408C B2 A3 00 04 */ sth r21, 4(r3)
+/* 801C8430 001C4090 B2 C3 00 06 */ sth r22, 6(r3)
+/* 801C8434 001C4094 B2 E3 00 08 */ sth r23, 8(r3)
+/* 801C8438 001C4098 B3 03 00 0A */ sth r24, 0xa(r3)
+/* 801C843C 001C409C B3 23 00 0C */ sth r25, 0xc(r3)
+/* 801C8440 001C40A0 B3 43 00 0E */ sth r26, 0xe(r3)
+/* 801C8444 001C40A4 B3 63 00 10 */ sth r27, 0x10(r3)
+/* 801C8448 001C40A8 B3 83 00 12 */ sth r28, 0x12(r3)
+/* 801C844C 001C40AC B3 A3 00 14 */ sth r29, 0x14(r3)
+/* 801C8450 001C40B0 B3 C3 00 16 */ sth r30, 0x16(r3)
+/* 801C8454 001C40B4 B3 E3 00 18 */ sth r31, 0x18(r3)
+/* 801C8458 001C40B8 B1 83 00 1A */ sth r12, 0x1a(r3)
+/* 801C845C 001C40BC B1 63 00 1C */ sth r11, 0x1c(r3)
+/* 801C8460 001C40C0 B1 43 00 1E */ sth r10, 0x1e(r3)
+/* 801C8464 001C40C4 B1 23 00 20 */ sth r9, 0x20(r3)
+/* 801C8468 001C40C8 B1 03 00 22 */ sth r8, 0x22(r3)
+/* 801C846C 001C40CC B0 E3 00 24 */ sth r7, 0x24(r3)
+/* 801C8470 001C40D0 B0 C3 00 26 */ sth r6, 0x26(r3)
+/* 801C8474 001C40D4 B0 03 00 28 */ sth r0, 0x28(r3)
+/* 801C8478 001C40D8 88 05 00 05 */ lbz r0, 5(r5)
+/* 801C847C 001C40DC 2C 00 00 00 */ cmpwi r0, 0
+/* 801C8480 001C40E0 41 82 04 58 */ beq lbl_801C88D8
+/* 801C8484 001C40E4 89 03 00 04 */ lbz r8, 4(r3)
+/* 801C8488 001C40E8 88 05 00 04 */ lbz r0, 4(r5)
+/* 801C848C 001C40EC 7C 08 00 00 */ cmpw r8, r0
+/* 801C8490 001C40F0 40 80 00 08 */ bge lbl_801C8498
+/* 801C8494 001C40F4 7C 08 03 78 */ mr r8, r0
+lbl_801C8498:
+/* 801C8498 001C40F8 A8 85 00 02 */ lha r4, 2(r5)
+/* 801C849C 001C40FC A8 03 00 02 */ lha r0, 2(r3)
+/* 801C84A0 001C4100 7C 04 00 50 */ subf r0, r4, r0
+/* 801C84A4 001C4104 7D 08 02 14 */ add r8, r8, r0
+/* 801C84A8 001C4108 2C 08 00 24 */ cmpwi r8, 0x24
+/* 801C84AC 001C410C 40 81 00 08 */ ble lbl_801C84B4
+/* 801C84B0 001C4110 39 00 00 24 */ li r8, 0x24
+lbl_801C84B4:
+/* 801C84B4 001C4114 38 E0 00 00 */ li r7, 0
+/* 801C84B8 001C4118 48 00 00 18 */ b lbl_801C84D0
+lbl_801C84BC:
+/* 801C84BC 001C411C 88 C3 00 04 */ lbz r6, 4(r3)
+/* 801C84C0 001C4120 7C 83 32 14 */ add r4, r3, r6
+/* 801C84C4 001C4124 38 C6 00 01 */ addi r6, r6, 1
+/* 801C84C8 001C4128 98 E4 00 05 */ stb r7, 5(r4)
+/* 801C84CC 001C412C 98 C3 00 04 */ stb r6, 4(r3)
+lbl_801C84D0:
+/* 801C84D0 001C4130 88 83 00 04 */ lbz r4, 4(r3)
+/* 801C84D4 001C4134 7C 04 40 00 */ cmpw r4, r8
+/* 801C84D8 001C4138 41 80 FF E4 */ blt lbl_801C84BC
+/* 801C84DC 001C413C 88 E5 00 04 */ lbz r7, 4(r5)
+/* 801C84E0 001C4140 38 83 00 05 */ addi r4, r3, 5
+/* 801C84E4 001C4144 7C C4 42 14 */ add r6, r4, r8
+/* 801C84E8 001C4148 7C E7 02 14 */ add r7, r7, r0
+/* 801C84EC 001C414C 7C 07 40 00 */ cmpw r7, r8
+/* 801C84F0 001C4150 40 80 00 08 */ bge lbl_801C84F8
+/* 801C84F4 001C4154 7C C4 3A 14 */ add r6, r4, r7
+lbl_801C84F8:
+/* 801C84F8 001C4158 7C E4 30 50 */ subf r7, r4, r6
+/* 801C84FC 001C415C 39 25 00 05 */ addi r9, r5, 5
+/* 801C8500 001C4160 7C E0 38 50 */ subf r7, r0, r7
+/* 801C8504 001C4164 7D 49 3A 14 */ add r10, r9, r7
+/* 801C8508 001C4168 7D 4B 53 78 */ mr r11, r10
+/* 801C850C 001C416C 48 00 01 24 */ b lbl_801C8630
+lbl_801C8510:
+/* 801C8510 001C4170 8D 06 FF FF */ lbzu r8, -1(r6)
+/* 801C8514 001C4174 8C EA FF FF */ lbzu r7, -1(r10)
+/* 801C8518 001C4178 7C 08 38 40 */ cmplw r8, r7
+/* 801C851C 001C417C 40 80 01 04 */ bge lbl_801C8620
+/* 801C8520 001C4180 39 86 FF FF */ addi r12, r6, -1
+/* 801C8524 001C4184 48 00 00 08 */ b lbl_801C852C
+lbl_801C8528:
+/* 801C8528 001C4188 39 8C FF FF */ addi r12, r12, -1
+lbl_801C852C:
+/* 801C852C 001C418C 88 EC 00 00 */ lbz r7, 0(r12)
+/* 801C8530 001C4190 2C 07 00 00 */ cmpwi r7, 0
+/* 801C8534 001C4194 41 82 FF F4 */ beq lbl_801C8528
+/* 801C8538 001C4198 7C 0C 30 40 */ cmplw r12, r6
+/* 801C853C 001C419C 7D 0C 30 50 */ subf r8, r12, r6
+/* 801C8540 001C41A0 41 82 00 E0 */ beq lbl_801C8620
+/* 801C8544 001C41A4 55 07 E8 FF */ rlwinm. r7, r8, 0x1d, 3, 0x1f
+/* 801C8548 001C41A8 7C E9 03 A6 */ mtctr r7
+/* 801C854C 001C41AC 41 82 00 B4 */ beq lbl_801C8600
+lbl_801C8550:
+/* 801C8550 001C41B0 88 EC 00 00 */ lbz r7, 0(r12)
+/* 801C8554 001C41B4 38 E7 FF FF */ addi r7, r7, -1
+/* 801C8558 001C41B8 98 EC 00 00 */ stb r7, 0(r12)
+/* 801C855C 001C41BC 88 EC 00 01 */ lbz r7, 1(r12)
+/* 801C8560 001C41C0 38 E7 00 0A */ addi r7, r7, 0xa
+/* 801C8564 001C41C4 54 E7 06 3E */ clrlwi r7, r7, 0x18
+/* 801C8568 001C41C8 38 E7 FF FF */ addi r7, r7, -1
+/* 801C856C 001C41CC 98 EC 00 01 */ stb r7, 1(r12)
+/* 801C8570 001C41D0 88 EC 00 02 */ lbz r7, 2(r12)
+/* 801C8574 001C41D4 38 E7 00 0A */ addi r7, r7, 0xa
+/* 801C8578 001C41D8 54 E7 06 3E */ clrlwi r7, r7, 0x18
+/* 801C857C 001C41DC 38 E7 FF FF */ addi r7, r7, -1
+/* 801C8580 001C41E0 98 EC 00 02 */ stb r7, 2(r12)
+/* 801C8584 001C41E4 88 EC 00 03 */ lbz r7, 3(r12)
+/* 801C8588 001C41E8 38 E7 00 0A */ addi r7, r7, 0xa
+/* 801C858C 001C41EC 54 E7 06 3E */ clrlwi r7, r7, 0x18
+/* 801C8590 001C41F0 38 E7 FF FF */ addi r7, r7, -1
+/* 801C8594 001C41F4 98 EC 00 03 */ stb r7, 3(r12)
+/* 801C8598 001C41F8 88 EC 00 04 */ lbz r7, 4(r12)
+/* 801C859C 001C41FC 38 E7 00 0A */ addi r7, r7, 0xa
+/* 801C85A0 001C4200 54 E7 06 3E */ clrlwi r7, r7, 0x18
+/* 801C85A4 001C4204 38 E7 FF FF */ addi r7, r7, -1
+/* 801C85A8 001C4208 98 EC 00 04 */ stb r7, 4(r12)
+/* 801C85AC 001C420C 88 EC 00 05 */ lbz r7, 5(r12)
+/* 801C85B0 001C4210 38 E7 00 0A */ addi r7, r7, 0xa
+/* 801C85B4 001C4214 54 E7 06 3E */ clrlwi r7, r7, 0x18
+/* 801C85B8 001C4218 38 E7 FF FF */ addi r7, r7, -1
+/* 801C85BC 001C421C 98 EC 00 05 */ stb r7, 5(r12)
+/* 801C85C0 001C4220 88 EC 00 06 */ lbz r7, 6(r12)
+/* 801C85C4 001C4224 38 E7 00 0A */ addi r7, r7, 0xa
+/* 801C85C8 001C4228 54 E7 06 3E */ clrlwi r7, r7, 0x18
+/* 801C85CC 001C422C 38 E7 FF FF */ addi r7, r7, -1
+/* 801C85D0 001C4230 98 EC 00 06 */ stb r7, 6(r12)
+/* 801C85D4 001C4234 88 EC 00 07 */ lbz r7, 7(r12)
+/* 801C85D8 001C4238 38 E7 00 0A */ addi r7, r7, 0xa
+/* 801C85DC 001C423C 54 E7 06 3E */ clrlwi r7, r7, 0x18
+/* 801C85E0 001C4240 38 E7 FF FF */ addi r7, r7, -1
+/* 801C85E4 001C4244 98 EC 00 07 */ stb r7, 7(r12)
+/* 801C85E8 001C4248 88 EC 00 08 */ lbz r7, 8(r12)
+/* 801C85EC 001C424C 38 E7 00 0A */ addi r7, r7, 0xa
+/* 801C85F0 001C4250 9C EC 00 08 */ stbu r7, 8(r12)
+/* 801C85F4 001C4254 42 00 FF 5C */ bdnz lbl_801C8550
+/* 801C85F8 001C4258 71 08 00 07 */ andi. r8, r8, 7
+/* 801C85FC 001C425C 41 82 00 24 */ beq lbl_801C8620
+lbl_801C8600:
+/* 801C8600 001C4260 7D 09 03 A6 */ mtctr r8
+lbl_801C8604:
+/* 801C8604 001C4264 88 EC 00 00 */ lbz r7, 0(r12)
+/* 801C8608 001C4268 38 E7 FF FF */ addi r7, r7, -1
+/* 801C860C 001C426C 98 EC 00 00 */ stb r7, 0(r12)
+/* 801C8610 001C4270 88 EC 00 01 */ lbz r7, 1(r12)
+/* 801C8614 001C4274 38 E7 00 0A */ addi r7, r7, 0xa
+/* 801C8618 001C4278 9C EC 00 01 */ stbu r7, 1(r12)
+/* 801C861C 001C427C 42 00 FF E8 */ bdnz lbl_801C8604
+lbl_801C8620:
+/* 801C8620 001C4280 89 0A 00 00 */ lbz r8, 0(r10)
+/* 801C8624 001C4284 88 E6 00 00 */ lbz r7, 0(r6)
+/* 801C8628 001C4288 7C E8 38 50 */ subf r7, r8, r7
+/* 801C862C 001C428C 98 E6 00 00 */ stb r7, 0(r6)
+lbl_801C8630:
+/* 801C8630 001C4290 7C 06 20 40 */ cmplw r6, r4
+/* 801C8634 001C4294 40 81 00 0C */ ble lbl_801C8640
+/* 801C8638 001C4298 7C 0A 48 40 */ cmplw r10, r9
+/* 801C863C 001C429C 41 81 FE D4 */ bgt lbl_801C8510
+lbl_801C8640:
+/* 801C8640 001C42A0 89 05 00 04 */ lbz r8, 4(r5)
+/* 801C8644 001C42A4 7D 29 58 50 */ subf r9, r9, r11
+/* 801C8648 001C42A8 7C 09 40 00 */ cmpw r9, r8
+/* 801C864C 001C42AC 40 80 01 88 */ bge lbl_801C87D4
+/* 801C8650 001C42B0 88 EB 00 00 */ lbz r7, 0(r11)
+/* 801C8654 001C42B4 39 40 00 00 */ li r10, 0
+/* 801C8658 001C42B8 28 07 00 05 */ cmplwi r7, 5
+/* 801C865C 001C42BC 40 80 00 0C */ bge lbl_801C8668
+/* 801C8660 001C42C0 39 40 00 01 */ li r10, 1
+/* 801C8664 001C42C4 48 00 00 50 */ b lbl_801C86B4
+lbl_801C8668:
+/* 801C8668 001C42C8 40 82 00 4C */ bne lbl_801C86B4
+/* 801C866C 001C42CC 7C A5 42 14 */ add r5, r5, r8
+/* 801C8670 001C42D0 38 CB 00 01 */ addi r6, r11, 1
+/* 801C8674 001C42D4 38 E5 00 05 */ addi r7, r5, 5
+/* 801C8678 001C42D8 7C A6 38 50 */ subf r5, r6, r7
+/* 801C867C 001C42DC 7C A9 03 A6 */ mtctr r5
+/* 801C8680 001C42E0 7C 06 38 40 */ cmplw r6, r7
+/* 801C8684 001C42E4 40 80 00 18 */ bge lbl_801C869C
+lbl_801C8688:
+/* 801C8688 001C42E8 88 A6 00 00 */ lbz r5, 0(r6)
+/* 801C868C 001C42EC 2C 05 00 00 */ cmpwi r5, 0
+/* 801C8690 001C42F0 40 82 01 44 */ bne lbl_801C87D4
+/* 801C8694 001C42F4 38 C6 00 01 */ addi r6, r6, 1
+/* 801C8698 001C42F8 42 00 FF F0 */ bdnz lbl_801C8688
+lbl_801C869C:
+/* 801C869C 001C42FC 7C A4 4A 14 */ add r5, r4, r9
+/* 801C86A0 001C4300 7C C0 2A 14 */ add r6, r0, r5
+/* 801C86A4 001C4304 8C 06 FF FF */ lbzu r0, -1(r6)
+/* 801C86A8 001C4308 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 801C86AC 001C430C 41 82 00 08 */ beq lbl_801C86B4
+/* 801C86B0 001C4310 39 40 00 01 */ li r10, 1
+lbl_801C86B4:
+/* 801C86B4 001C4314 2C 0A 00 00 */ cmpwi r10, 0
+/* 801C86B8 001C4318 41 82 01 1C */ beq lbl_801C87D4
+/* 801C86BC 001C431C 88 06 00 00 */ lbz r0, 0(r6)
+/* 801C86C0 001C4320 28 00 00 01 */ cmplwi r0, 1
+/* 801C86C4 001C4324 40 80 01 04 */ bge lbl_801C87C8
+/* 801C86C8 001C4328 39 06 FF FF */ addi r8, r6, -1
+/* 801C86CC 001C432C 48 00 00 08 */ b lbl_801C86D4
+lbl_801C86D0:
+/* 801C86D0 001C4330 39 08 FF FF */ addi r8, r8, -1
+lbl_801C86D4:
+/* 801C86D4 001C4334 88 08 00 00 */ lbz r0, 0(r8)
+/* 801C86D8 001C4338 2C 00 00 00 */ cmpwi r0, 0
+/* 801C86DC 001C433C 41 82 FF F4 */ beq lbl_801C86D0
+/* 801C86E0 001C4340 7C 08 30 40 */ cmplw r8, r6
+/* 801C86E4 001C4344 7C A8 30 50 */ subf r5, r8, r6
+/* 801C86E8 001C4348 41 82 00 E0 */ beq lbl_801C87C8
+/* 801C86EC 001C434C 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f
+/* 801C86F0 001C4350 7C 09 03 A6 */ mtctr r0
+/* 801C86F4 001C4354 41 82 00 B4 */ beq lbl_801C87A8
+lbl_801C86F8:
+/* 801C86F8 001C4358 88 E8 00 00 */ lbz r7, 0(r8)
+/* 801C86FC 001C435C 38 07 FF FF */ addi r0, r7, -1
+/* 801C8700 001C4360 98 08 00 00 */ stb r0, 0(r8)
+/* 801C8704 001C4364 88 E8 00 01 */ lbz r7, 1(r8)
+/* 801C8708 001C4368 38 07 00 0A */ addi r0, r7, 0xa
+/* 801C870C 001C436C 54 07 06 3E */ clrlwi r7, r0, 0x18
+/* 801C8710 001C4370 38 07 FF FF */ addi r0, r7, -1
+/* 801C8714 001C4374 98 08 00 01 */ stb r0, 1(r8)
+/* 801C8718 001C4378 88 E8 00 02 */ lbz r7, 2(r8)
+/* 801C871C 001C437C 38 07 00 0A */ addi r0, r7, 0xa
+/* 801C8720 001C4380 54 07 06 3E */ clrlwi r7, r0, 0x18
+/* 801C8724 001C4384 38 07 FF FF */ addi r0, r7, -1
+/* 801C8728 001C4388 98 08 00 02 */ stb r0, 2(r8)
+/* 801C872C 001C438C 88 E8 00 03 */ lbz r7, 3(r8)
+/* 801C8730 001C4390 38 07 00 0A */ addi r0, r7, 0xa
+/* 801C8734 001C4394 54 07 06 3E */ clrlwi r7, r0, 0x18
+/* 801C8738 001C4398 38 07 FF FF */ addi r0, r7, -1
+/* 801C873C 001C439C 98 08 00 03 */ stb r0, 3(r8)
+/* 801C8740 001C43A0 88 E8 00 04 */ lbz r7, 4(r8)
+/* 801C8744 001C43A4 38 07 00 0A */ addi r0, r7, 0xa
+/* 801C8748 001C43A8 54 07 06 3E */ clrlwi r7, r0, 0x18
+/* 801C874C 001C43AC 38 07 FF FF */ addi r0, r7, -1
+/* 801C8750 001C43B0 98 08 00 04 */ stb r0, 4(r8)
+/* 801C8754 001C43B4 88 E8 00 05 */ lbz r7, 5(r8)
+/* 801C8758 001C43B8 38 07 00 0A */ addi r0, r7, 0xa
+/* 801C875C 001C43BC 54 07 06 3E */ clrlwi r7, r0, 0x18
+/* 801C8760 001C43C0 38 07 FF FF */ addi r0, r7, -1
+/* 801C8764 001C43C4 98 08 00 05 */ stb r0, 5(r8)
+/* 801C8768 001C43C8 88 E8 00 06 */ lbz r7, 6(r8)
+/* 801C876C 001C43CC 38 07 00 0A */ addi r0, r7, 0xa
+/* 801C8770 001C43D0 54 07 06 3E */ clrlwi r7, r0, 0x18
+/* 801C8774 001C43D4 38 07 FF FF */ addi r0, r7, -1
+/* 801C8778 001C43D8 98 08 00 06 */ stb r0, 6(r8)
+/* 801C877C 001C43DC 88 E8 00 07 */ lbz r7, 7(r8)
+/* 801C8780 001C43E0 38 07 00 0A */ addi r0, r7, 0xa
+/* 801C8784 001C43E4 54 07 06 3E */ clrlwi r7, r0, 0x18
+/* 801C8788 001C43E8 38 07 FF FF */ addi r0, r7, -1
+/* 801C878C 001C43EC 98 08 00 07 */ stb r0, 7(r8)
+/* 801C8790 001C43F0 88 E8 00 08 */ lbz r7, 8(r8)
+/* 801C8794 001C43F4 38 07 00 0A */ addi r0, r7, 0xa
+/* 801C8798 001C43F8 9C 08 00 08 */ stbu r0, 8(r8)
+/* 801C879C 001C43FC 42 00 FF 5C */ bdnz lbl_801C86F8
+/* 801C87A0 001C4400 70 A5 00 07 */ andi. r5, r5, 7
+/* 801C87A4 001C4404 41 82 00 24 */ beq lbl_801C87C8
+lbl_801C87A8:
+/* 801C87A8 001C4408 7C A9 03 A6 */ mtctr r5
+lbl_801C87AC:
+/* 801C87AC 001C440C 88 E8 00 00 */ lbz r7, 0(r8)
+/* 801C87B0 001C4410 38 07 FF FF */ addi r0, r7, -1
+/* 801C87B4 001C4414 98 08 00 00 */ stb r0, 0(r8)
+/* 801C87B8 001C4418 88 E8 00 01 */ lbz r7, 1(r8)
+/* 801C87BC 001C441C 38 07 00 0A */ addi r0, r7, 0xa
+/* 801C87C0 001C4420 9C 08 00 01 */ stbu r0, 1(r8)
+/* 801C87C4 001C4424 42 00 FF E8 */ bdnz lbl_801C87AC
+lbl_801C87C8:
+/* 801C87C8 001C4428 88 A6 00 00 */ lbz r5, 0(r6)
+/* 801C87CC 001C442C 38 05 FF FF */ addi r0, r5, -1
+/* 801C87D0 001C4430 98 06 00 00 */ stb r0, 0(r6)
+lbl_801C87D4:
+/* 801C87D4 001C4434 7C 87 23 78 */ mr r7, r4
+/* 801C87D8 001C4438 48 00 00 08 */ b lbl_801C87E0
+lbl_801C87DC:
+/* 801C87DC 001C443C 38 E7 00 01 */ addi r7, r7, 1
+lbl_801C87E0:
+/* 801C87E0 001C4440 88 07 00 00 */ lbz r0, 0(r7)
+/* 801C87E4 001C4444 2C 00 00 00 */ cmpwi r0, 0
+/* 801C87E8 001C4448 41 82 FF F4 */ beq lbl_801C87DC
+/* 801C87EC 001C444C 7C 07 20 40 */ cmplw r7, r4
+/* 801C87F0 001C4450 40 81 00 B0 */ ble lbl_801C88A0
+/* 801C87F4 001C4454 88 03 00 04 */ lbz r0, 4(r3)
+/* 801C87F8 001C4458 7C C4 38 50 */ subf r6, r4, r7
+/* 801C87FC 001C445C A8 A3 00 02 */ lha r5, 2(r3)
+/* 801C8800 001C4460 54 C8 06 3E */ clrlwi r8, r6, 0x18
+/* 801C8804 001C4464 7C C4 02 14 */ add r6, r4, r0
+/* 801C8808 001C4468 7C 08 28 50 */ subf r0, r8, r5
+/* 801C880C 001C446C 7C 07 30 40 */ cmplw r7, r6
+/* 801C8810 001C4470 B0 03 00 02 */ sth r0, 2(r3)
+/* 801C8814 001C4474 7C A7 30 50 */ subf r5, r7, r6
+/* 801C8818 001C4478 40 80 00 7C */ bge lbl_801C8894
+/* 801C881C 001C447C 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f
+/* 801C8820 001C4480 7C 09 03 A6 */ mtctr r0
+/* 801C8824 001C4484 41 82 00 58 */ beq lbl_801C887C
+lbl_801C8828:
+/* 801C8828 001C4488 88 07 00 00 */ lbz r0, 0(r7)
+/* 801C882C 001C448C 98 04 00 00 */ stb r0, 0(r4)
+/* 801C8830 001C4490 88 07 00 01 */ lbz r0, 1(r7)
+/* 801C8834 001C4494 98 04 00 01 */ stb r0, 1(r4)
+/* 801C8838 001C4498 88 07 00 02 */ lbz r0, 2(r7)
+/* 801C883C 001C449C 98 04 00 02 */ stb r0, 2(r4)
+/* 801C8840 001C44A0 88 07 00 03 */ lbz r0, 3(r7)
+/* 801C8844 001C44A4 98 04 00 03 */ stb r0, 3(r4)
+/* 801C8848 001C44A8 88 07 00 04 */ lbz r0, 4(r7)
+/* 801C884C 001C44AC 98 04 00 04 */ stb r0, 4(r4)
+/* 801C8850 001C44B0 88 07 00 05 */ lbz r0, 5(r7)
+/* 801C8854 001C44B4 98 04 00 05 */ stb r0, 5(r4)
+/* 801C8858 001C44B8 88 07 00 06 */ lbz r0, 6(r7)
+/* 801C885C 001C44BC 98 04 00 06 */ stb r0, 6(r4)
+/* 801C8860 001C44C0 88 07 00 07 */ lbz r0, 7(r7)
+/* 801C8864 001C44C4 38 E7 00 08 */ addi r7, r7, 8
+/* 801C8868 001C44C8 98 04 00 07 */ stb r0, 7(r4)
+/* 801C886C 001C44CC 38 84 00 08 */ addi r4, r4, 8
+/* 801C8870 001C44D0 42 00 FF B8 */ bdnz lbl_801C8828
+/* 801C8874 001C44D4 70 A5 00 07 */ andi. r5, r5, 7
+/* 801C8878 001C44D8 41 82 00 1C */ beq lbl_801C8894
+lbl_801C887C:
+/* 801C887C 001C44DC 7C A9 03 A6 */ mtctr r5
+lbl_801C8880:
+/* 801C8880 001C44E0 88 07 00 00 */ lbz r0, 0(r7)
+/* 801C8884 001C44E4 38 E7 00 01 */ addi r7, r7, 1
+/* 801C8888 001C44E8 98 04 00 00 */ stb r0, 0(r4)
+/* 801C888C 001C44EC 38 84 00 01 */ addi r4, r4, 1
+/* 801C8890 001C44F0 42 00 FF F0 */ bdnz lbl_801C8880
+lbl_801C8894:
+/* 801C8894 001C44F4 88 03 00 04 */ lbz r0, 4(r3)
+/* 801C8898 001C44F8 7C 08 00 50 */ subf r0, r8, r0
+/* 801C889C 001C44FC 98 03 00 04 */ stb r0, 4(r3)
+lbl_801C88A0:
+/* 801C88A0 001C4500 88 03 00 04 */ lbz r0, 4(r3)
+/* 801C88A4 001C4504 38 83 00 05 */ addi r4, r3, 5
+/* 801C88A8 001C4508 7C A4 02 14 */ add r5, r4, r0
+/* 801C88AC 001C450C 7C 04 28 50 */ subf r0, r4, r5
+/* 801C88B0 001C4510 7C 09 03 A6 */ mtctr r0
+/* 801C88B4 001C4514 7C 05 20 40 */ cmplw r5, r4
+/* 801C88B8 001C4518 40 81 00 14 */ ble lbl_801C88CC
+lbl_801C88BC:
+/* 801C88BC 001C451C 8C 05 FF FF */ lbzu r0, -1(r5)
+/* 801C88C0 001C4520 2C 00 00 00 */ cmpwi r0, 0
+/* 801C88C4 001C4524 40 82 00 08 */ bne lbl_801C88CC
+/* 801C88C8 001C4528 42 00 FF F4 */ bdnz lbl_801C88BC
+lbl_801C88CC:
+/* 801C88CC 001C452C 7C 84 28 50 */ subf r4, r4, r5
+/* 801C88D0 001C4530 38 04 00 01 */ addi r0, r4, 1
+/* 801C88D4 001C4534 98 03 00 04 */ stb r0, 4(r3)
+lbl_801C88D8:
+/* 801C88D8 001C4538 BA 61 00 0C */ lmw r19, 0xc(r1)
+/* 801C88DC 001C453C 38 21 00 40 */ addi r1, r1, 0x40
+/* 801C88E0 001C4540 4E 80 00 20 */ blr
+
+.global __num2dec_internal
+__num2dec_internal:
+/* 801C88E4 001C4544 94 21 FF 70 */ stwu r1, -0x90(r1)
+/* 801C88E8 001C4548 7C 08 02 A6 */ mflr r0
+/* 801C88EC 001C454C 90 01 00 94 */ stw r0, 0x94(r1)
+/* 801C88F0 001C4550 DB E1 00 88 */ stfd f31, 0x88(r1)
+/* 801C88F4 001C4554 FF E0 08 90 */ fmr f31, f1
+/* 801C88F8 001C4558 93 E1 00 84 */ stw r31, 0x84(r1)
+/* 801C88FC 001C455C 93 C1 00 80 */ stw r30, 0x80(r1)
+/* 801C8900 001C4560 7C 7E 1B 78 */ mr r30, r3
+/* 801C8904 001C4564 93 A1 00 7C */ stw r29, 0x7c(r1)
+/* 801C8908 001C4568 48 00 1E 11 */ bl __signbitd
+/* 801C890C 001C456C C8 02 90 F8 */ lfd f0, lbl_806416F8-_SDA2_BASE_(r2)
+/* 801C8910 001C4570 7C 03 00 D0 */ neg r0, r3
+/* 801C8914 001C4574 7C 00 1B 78 */ or r0, r0, r3
+/* 801C8918 001C4578 FC 00 F8 00 */ fcmpu cr0, f0, f31
+/* 801C891C 001C457C 54 00 0F FE */ srwi r0, r0, 0x1f
+/* 801C8920 001C4580 7C 1F 07 74 */ extsb r31, r0
+/* 801C8924 001C4584 40 82 00 20 */ bne lbl_801C8944
+/* 801C8928 001C4588 38 60 00 00 */ li r3, 0
+/* 801C892C 001C458C 38 00 00 01 */ li r0, 1
+/* 801C8930 001C4590 9B FE 00 00 */ stb r31, 0(r30)
+/* 801C8934 001C4594 B0 7E 00 02 */ sth r3, 2(r30)
+/* 801C8938 001C4598 98 1E 00 04 */ stb r0, 4(r30)
+/* 801C893C 001C459C 98 7E 00 05 */ stb r3, 5(r30)
+/* 801C8940 001C45A0 48 00 00 E8 */ b lbl_801C8A28
+lbl_801C8944:
+/* 801C8944 001C45A4 FC 20 F8 90 */ fmr f1, f31
+/* 801C8948 001C45A8 48 00 1D E9 */ bl __fpclassifyd
+/* 801C894C 001C45AC 2C 03 00 02 */ cmpwi r3, 2
+/* 801C8950 001C45B0 41 81 00 38 */ bgt lbl_801C8988
+/* 801C8954 001C45B4 38 60 00 00 */ li r3, 0
+/* 801C8958 001C45B8 38 00 00 01 */ li r0, 1
+/* 801C895C 001C45BC FC 20 F8 90 */ fmr f1, f31
+/* 801C8960 001C45C0 9B FE 00 00 */ stb r31, 0(r30)
+/* 801C8964 001C45C4 B0 7E 00 02 */ sth r3, 2(r30)
+/* 801C8968 001C45C8 98 1E 00 04 */ stb r0, 4(r30)
+/* 801C896C 001C45CC 48 00 1D C5 */ bl __fpclassifyd
+/* 801C8970 001C45D0 2C 03 00 01 */ cmpwi r3, 1
+/* 801C8974 001C45D4 38 00 00 49 */ li r0, 0x49
+/* 801C8978 001C45D8 40 82 00 08 */ bne lbl_801C8980
+/* 801C897C 001C45DC 38 00 00 4E */ li r0, 0x4e
+lbl_801C8980:
+/* 801C8980 001C45E0 98 1E 00 05 */ stb r0, 5(r30)
+/* 801C8984 001C45E4 48 00 00 A4 */ b lbl_801C8A28
+lbl_801C8988:
+/* 801C8988 001C45E8 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C898C 001C45EC 41 82 00 08 */ beq lbl_801C8994
+/* 801C8990 001C45F0 FF E0 F8 50 */ fneg f31, f31
+lbl_801C8994:
+/* 801C8994 001C45F4 FC 20 F8 90 */ fmr f1, f31
+/* 801C8998 001C45F8 38 61 00 08 */ addi r3, r1, 8
+/* 801C899C 001C45FC 48 00 B8 F5 */ bl func_801D4290
+/* 801C89A0 001C4600 D8 21 00 10 */ stfd f1, 0x10(r1)
+/* 801C89A4 001C4604 FF E0 08 90 */ fmr f31, f1
+/* 801C89A8 001C4608 80 81 00 14 */ lwz r4, 0x14(r1)
+/* 801C89AC 001C460C 80 61 00 10 */ lwz r3, 0x10(r1)
+/* 801C89B0 001C4610 38 04 FF FF */ addi r0, r4, -1
+/* 801C89B4 001C4614 2C 04 00 00 */ cmpwi r4, 0
+/* 801C89B8 001C4618 7C 00 20 78 */ andc r0, r0, r4
+/* 801C89BC 001C461C 64 63 00 10 */ oris r3, r3, 0x10
+/* 801C89C0 001C4620 7C 00 00 34 */ cntlzw r0, r0
+/* 801C89C4 001C4624 20 80 00 20 */ subfic r4, r0, 0x20
+/* 801C89C8 001C4628 40 82 00 18 */ bne lbl_801C89E0
+/* 801C89CC 001C462C 38 03 FF FF */ addi r0, r3, -1
+/* 801C89D0 001C4630 7C 00 18 78 */ andc r0, r0, r3
+/* 801C89D4 001C4634 7C 00 00 34 */ cntlzw r0, r0
+/* 801C89D8 001C4638 20 60 00 20 */ subfic r3, r0, 0x20
+/* 801C89DC 001C463C 38 83 00 20 */ addi r4, r3, 0x20
+lbl_801C89E0:
+/* 801C89E0 001C4640 80 01 00 08 */ lwz r0, 8(r1)
+/* 801C89E4 001C4644 23 A4 00 35 */ subfic r29, r4, 0x35
+/* 801C89E8 001C4648 38 61 00 18 */ addi r3, r1, 0x18
+/* 801C89EC 001C464C 7C 9D 00 50 */ subf r4, r29, r0
+/* 801C89F0 001C4650 4B FF F4 89 */ bl __two_exp
+/* 801C89F4 001C4654 FC 20 F8 90 */ fmr f1, f31
+/* 801C89F8 001C4658 7F A3 EB 78 */ mr r3, r29
+/* 801C89FC 001C465C 48 00 B9 1D */ bl func_801D4318
+/* 801C8A00 001C4660 4B FF ED 19 */ bl __cvt_dbl_ull
+/* 801C8A04 001C4664 7C 65 1B 78 */ mr r5, r3
+/* 801C8A08 001C4668 7C 86 23 78 */ mr r6, r4
+/* 801C8A0C 001C466C 38 61 00 44 */ addi r3, r1, 0x44
+/* 801C8A10 001C4670 4B FF F0 19 */ bl __ull2dec
+/* 801C8A14 001C4674 7F C3 F3 78 */ mr r3, r30
+/* 801C8A18 001C4678 38 81 00 44 */ addi r4, r1, 0x44
+/* 801C8A1C 001C467C 38 A1 00 18 */ addi r5, r1, 0x18
+/* 801C8A20 001C4680 4B FF F0 E5 */ bl __timesdec
+/* 801C8A24 001C4684 9B FE 00 00 */ stb r31, 0(r30)
+lbl_801C8A28:
+/* 801C8A28 001C4688 80 01 00 94 */ lwz r0, 0x94(r1)
+/* 801C8A2C 001C468C CB E1 00 88 */ lfd f31, 0x88(r1)
+/* 801C8A30 001C4690 83 E1 00 84 */ lwz r31, 0x84(r1)
+/* 801C8A34 001C4694 83 C1 00 80 */ lwz r30, 0x80(r1)
+/* 801C8A38 001C4698 83 A1 00 7C */ lwz r29, 0x7c(r1)
+/* 801C8A3C 001C469C 7C 08 03 A6 */ mtlr r0
+/* 801C8A40 001C46A0 38 21 00 90 */ addi r1, r1, 0x90
+/* 801C8A44 001C46A4 4E 80 00 20 */ blr
+
+.global __num2dec
+__num2dec:
+/* 801C8A48 001C46A8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801C8A4C 001C46AC 7C 08 02 A6 */ mflr r0
+/* 801C8A50 001C46B0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801C8A54 001C46B4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801C8A58 001C46B8 AB E3 00 02 */ lha r31, 2(r3)
+/* 801C8A5C 001C46BC 93 C1 00 08 */ stw r30, 8(r1)
+/* 801C8A60 001C46C0 7C 9E 23 78 */ mr r30, r4
+/* 801C8A64 001C46C4 7F C3 F3 78 */ mr r3, r30
+/* 801C8A68 001C46C8 4B FF FE 7D */ bl __num2dec_internal
+/* 801C8A6C 001C46CC 88 1E 00 05 */ lbz r0, 5(r30)
+/* 801C8A70 001C46D0 28 00 00 09 */ cmplwi r0, 9
+/* 801C8A74 001C46D4 41 81 01 5C */ bgt lbl_801C8BD0
+/* 801C8A78 001C46D8 2C 1F 00 24 */ cmpwi r31, 0x24
+/* 801C8A7C 001C46DC 40 81 00 08 */ ble lbl_801C8A84
+/* 801C8A80 001C46E0 3B E0 00 24 */ li r31, 0x24
+lbl_801C8A84:
+/* 801C8A84 001C46E4 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C8A88 001C46E8 40 81 00 E8 */ ble lbl_801C8B70
+/* 801C8A8C 001C46EC 88 1E 00 04 */ lbz r0, 4(r30)
+/* 801C8A90 001C46F0 7C 1F 00 00 */ cmpw r31, r0
+/* 801C8A94 001C46F4 40 80 00 DC */ bge lbl_801C8B70
+/* 801C8A98 001C46F8 38 9E 00 05 */ addi r4, r30, 5
+/* 801C8A9C 001C46FC 7C 04 F8 AE */ lbzx r0, r4, r31
+/* 801C8AA0 001C4700 7C 64 FA 14 */ add r3, r4, r31
+/* 801C8AA4 001C4704 28 00 00 05 */ cmplwi r0, 5
+/* 801C8AA8 001C4708 40 81 00 0C */ ble lbl_801C8AB4
+/* 801C8AAC 001C470C 38 80 00 01 */ li r4, 1
+/* 801C8AB0 001C4710 48 00 00 60 */ b lbl_801C8B10
+lbl_801C8AB4:
+/* 801C8AB4 001C4714 40 80 00 0C */ bge lbl_801C8AC0
+/* 801C8AB8 001C4718 38 80 FF FF */ li r4, -1
+/* 801C8ABC 001C471C 48 00 00 54 */ b lbl_801C8B10
+lbl_801C8AC0:
+/* 801C8AC0 001C4720 88 1E 00 04 */ lbz r0, 4(r30)
+/* 801C8AC4 001C4724 38 63 00 01 */ addi r3, r3, 1
+/* 801C8AC8 001C4728 7C 84 02 14 */ add r4, r4, r0
+/* 801C8ACC 001C472C 7C 03 20 50 */ subf r0, r3, r4
+/* 801C8AD0 001C4730 7C 09 03 A6 */ mtctr r0
+/* 801C8AD4 001C4734 7C 03 20 40 */ cmplw r3, r4
+/* 801C8AD8 001C4738 40 80 00 20 */ bge lbl_801C8AF8
+lbl_801C8ADC:
+/* 801C8ADC 001C473C 88 03 00 00 */ lbz r0, 0(r3)
+/* 801C8AE0 001C4740 2C 00 00 00 */ cmpwi r0, 0
+/* 801C8AE4 001C4744 41 82 00 0C */ beq lbl_801C8AF0
+/* 801C8AE8 001C4748 38 80 00 01 */ li r4, 1
+/* 801C8AEC 001C474C 48 00 00 24 */ b lbl_801C8B10
+lbl_801C8AF0:
+/* 801C8AF0 001C4750 38 63 00 01 */ addi r3, r3, 1
+/* 801C8AF4 001C4754 42 00 FF E8 */ bdnz lbl_801C8ADC
+lbl_801C8AF8:
+/* 801C8AF8 001C4758 7C 7F F2 14 */ add r3, r31, r30
+/* 801C8AFC 001C475C 38 80 FF FF */ li r4, -1
+/* 801C8B00 001C4760 88 03 00 04 */ lbz r0, 4(r3)
+/* 801C8B04 001C4764 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 801C8B08 001C4768 41 82 00 08 */ beq lbl_801C8B10
+/* 801C8B0C 001C476C 38 80 00 01 */ li r4, 1
+lbl_801C8B10:
+/* 801C8B10 001C4770 2C 04 00 00 */ cmpwi r4, 0
+/* 801C8B14 001C4774 9B FE 00 04 */ stb r31, 4(r30)
+/* 801C8B18 001C4778 41 80 00 58 */ blt lbl_801C8B70
+/* 801C8B1C 001C477C 38 9E 00 05 */ addi r4, r30, 5
+/* 801C8B20 001C4780 38 00 00 00 */ li r0, 0
+/* 801C8B24 001C4784 7C A4 FA 14 */ add r5, r4, r31
+/* 801C8B28 001C4788 38 A5 FF FF */ addi r5, r5, -1
+lbl_801C8B2C:
+/* 801C8B2C 001C478C 88 65 00 00 */ lbz r3, 0(r5)
+/* 801C8B30 001C4790 28 03 00 09 */ cmplwi r3, 9
+/* 801C8B34 001C4794 40 80 00 10 */ bge lbl_801C8B44
+/* 801C8B38 001C4798 38 03 00 01 */ addi r0, r3, 1
+/* 801C8B3C 001C479C 98 05 00 00 */ stb r0, 0(r5)
+/* 801C8B40 001C47A0 48 00 00 30 */ b lbl_801C8B70
+lbl_801C8B44:
+/* 801C8B44 001C47A4 7C 05 20 40 */ cmplw r5, r4
+/* 801C8B48 001C47A8 40 82 00 1C */ bne lbl_801C8B64
+/* 801C8B4C 001C47AC 38 00 00 01 */ li r0, 1
+/* 801C8B50 001C47B0 98 05 00 00 */ stb r0, 0(r5)
+/* 801C8B54 001C47B4 A8 7E 00 02 */ lha r3, 2(r30)
+/* 801C8B58 001C47B8 38 03 00 01 */ addi r0, r3, 1
+/* 801C8B5C 001C47BC B0 1E 00 02 */ sth r0, 2(r30)
+/* 801C8B60 001C47C0 48 00 00 10 */ b lbl_801C8B70
+lbl_801C8B64:
+/* 801C8B64 001C47C4 98 05 00 00 */ stb r0, 0(r5)
+/* 801C8B68 001C47C8 38 A5 FF FF */ addi r5, r5, -1
+/* 801C8B6C 001C47CC 4B FF FF C0 */ b lbl_801C8B2C
+lbl_801C8B70:
+/* 801C8B70 001C47D0 38 A0 00 00 */ li r5, 0
+/* 801C8B74 001C47D4 48 00 00 18 */ b lbl_801C8B8C
+lbl_801C8B78:
+/* 801C8B78 001C47D8 88 9E 00 04 */ lbz r4, 4(r30)
+/* 801C8B7C 001C47DC 7C 7E 22 14 */ add r3, r30, r4
+/* 801C8B80 001C47E0 38 04 00 01 */ addi r0, r4, 1
+/* 801C8B84 001C47E4 98 A3 00 05 */ stb r5, 5(r3)
+/* 801C8B88 001C47E8 98 1E 00 04 */ stb r0, 4(r30)
+lbl_801C8B8C:
+/* 801C8B8C 001C47EC 88 7E 00 04 */ lbz r3, 4(r30)
+/* 801C8B90 001C47F0 7C 03 F8 00 */ cmpw r3, r31
+/* 801C8B94 001C47F4 41 80 FF E4 */ blt lbl_801C8B78
+/* 801C8B98 001C47F8 A8 1E 00 02 */ lha r0, 2(r30)
+/* 801C8B9C 001C47FC 38 63 FF FF */ addi r3, r3, -1
+/* 801C8BA0 001C4800 38 A0 00 00 */ li r5, 0
+/* 801C8BA4 001C4804 7C 03 00 50 */ subf r0, r3, r0
+/* 801C8BA8 001C4808 B0 1E 00 02 */ sth r0, 2(r30)
+/* 801C8BAC 001C480C 48 00 00 18 */ b lbl_801C8BC4
+lbl_801C8BB0:
+/* 801C8BB0 001C4810 7C 9E 2A 14 */ add r4, r30, r5
+/* 801C8BB4 001C4814 38 A5 00 01 */ addi r5, r5, 1
+/* 801C8BB8 001C4818 88 64 00 05 */ lbz r3, 5(r4)
+/* 801C8BBC 001C481C 38 03 00 30 */ addi r0, r3, 0x30
+/* 801C8BC0 001C4820 98 04 00 05 */ stb r0, 5(r4)
+lbl_801C8BC4:
+/* 801C8BC4 001C4824 88 1E 00 04 */ lbz r0, 4(r30)
+/* 801C8BC8 001C4828 7C 05 00 00 */ cmpw r5, r0
+/* 801C8BCC 001C482C 41 80 FF E4 */ blt lbl_801C8BB0
+lbl_801C8BD0:
+/* 801C8BD0 001C4830 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801C8BD4 001C4834 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801C8BD8 001C4838 83 C1 00 08 */ lwz r30, 8(r1)
+/* 801C8BDC 001C483C 7C 08 03 A6 */ mtlr r0
+/* 801C8BE0 001C4840 38 21 00 10 */ addi r1, r1, 0x10
+/* 801C8BE4 001C4844 4E 80 00 20 */ blr
+
+.global __dec2num
+__dec2num:
+/* 801C8BE8 001C4848 94 21 FE 80 */ stwu r1, -0x180(r1)
+/* 801C8BEC 001C484C 7C 08 02 A6 */ mflr r0
+/* 801C8BF0 001C4850 90 01 01 84 */ stw r0, 0x184(r1)
+/* 801C8BF4 001C4854 DB E1 01 70 */ stfd f31, 0x170(r1)
+/* 801C8BF8 001C4858 F3 E1 01 78 */ psq_st f31, 376(r1), 0, qr0
+/* 801C8BFC 001C485C 39 61 01 70 */ addi r11, r1, 0x170
+/* 801C8C00 001C4860 4B FF E5 09 */ bl _savegpr_19
+/* 801C8C04 001C4864 88 03 00 04 */ lbz r0, 4(r3)
+/* 801C8C08 001C4868 3C 80 43 30 */ lis r4, 0x4330
+/* 801C8C0C 001C486C 90 81 01 28 */ stw r4, 0x128(r1)
+/* 801C8C10 001C4870 7C 7B 1B 78 */ mr r27, r3
+/* 801C8C14 001C4874 2C 00 00 00 */ cmpwi r0, 0
+/* 801C8C18 001C4878 90 81 01 30 */ stw r4, 0x130(r1)
+/* 801C8C1C 001C487C 40 82 00 28 */ bne lbl_801C8C44
+/* 801C8C20 001C4880 88 03 00 00 */ lbz r0, 0(r3)
+/* 801C8C24 001C4884 7C 00 07 75 */ extsb. r0, r0
+/* 801C8C28 001C4888 40 82 00 0C */ bne lbl_801C8C34
+/* 801C8C2C 001C488C C8 42 91 00 */ lfd f2, lbl_80641700-_SDA2_BASE_(r2)
+/* 801C8C30 001C4890 48 00 00 08 */ b lbl_801C8C38
+lbl_801C8C34:
+/* 801C8C34 001C4894 C8 42 91 08 */ lfd f2, lbl_80641708-_SDA2_BASE_(r2)
+lbl_801C8C38:
+/* 801C8C38 001C4898 C8 22 90 F8 */ lfd f1, lbl_806416F8-_SDA2_BASE_(r2)
+/* 801C8C3C 001C489C 48 00 B4 11 */ bl func_801D404C
+/* 801C8C40 001C48A0 48 00 07 38 */ b lbl_801C9378
+lbl_801C8C44:
+/* 801C8C44 001C48A4 88 03 00 05 */ lbz r0, 5(r3)
+/* 801C8C48 001C48A8 2C 00 00 49 */ cmpwi r0, 0x49
+/* 801C8C4C 001C48AC 41 82 00 44 */ beq lbl_801C8C90
+/* 801C8C50 001C48B0 40 80 00 10 */ bge lbl_801C8C60
+/* 801C8C54 001C48B4 2C 00 00 30 */ cmpwi r0, 0x30
+/* 801C8C58 001C48B8 41 82 00 14 */ beq lbl_801C8C6C
+/* 801C8C5C 001C48BC 48 00 00 A0 */ b lbl_801C8CFC
+lbl_801C8C60:
+/* 801C8C60 001C48C0 2C 00 00 4E */ cmpwi r0, 0x4e
+/* 801C8C64 001C48C4 41 82 00 54 */ beq lbl_801C8CB8
+/* 801C8C68 001C48C8 48 00 00 94 */ b lbl_801C8CFC
+lbl_801C8C6C:
+/* 801C8C6C 001C48CC 88 03 00 00 */ lbz r0, 0(r3)
+/* 801C8C70 001C48D0 7C 00 07 75 */ extsb. r0, r0
+/* 801C8C74 001C48D4 40 82 00 0C */ bne lbl_801C8C80
+/* 801C8C78 001C48D8 C8 42 91 00 */ lfd f2, lbl_80641700-_SDA2_BASE_(r2)
+/* 801C8C7C 001C48DC 48 00 00 08 */ b lbl_801C8C84
+lbl_801C8C80:
+/* 801C8C80 001C48E0 C8 42 91 08 */ lfd f2, lbl_80641708-_SDA2_BASE_(r2)
+lbl_801C8C84:
+/* 801C8C84 001C48E4 C8 22 90 F8 */ lfd f1, lbl_806416F8-_SDA2_BASE_(r2)
+/* 801C8C88 001C48E8 48 00 B3 C5 */ bl func_801D404C
+/* 801C8C8C 001C48EC 48 00 06 EC */ b lbl_801C9378
+lbl_801C8C90:
+/* 801C8C90 001C48F0 88 03 00 00 */ lbz r0, 0(r3)
+/* 801C8C94 001C48F4 7C 00 07 75 */ extsb. r0, r0
+/* 801C8C98 001C48F8 40 82 00 0C */ bne lbl_801C8CA4
+/* 801C8C9C 001C48FC C8 42 91 00 */ lfd f2, lbl_80641700-_SDA2_BASE_(r2)
+/* 801C8CA0 001C4900 48 00 00 08 */ b lbl_801C8CA8
+lbl_801C8CA4:
+/* 801C8CA4 001C4904 C8 42 91 08 */ lfd f2, lbl_80641708-_SDA2_BASE_(r2)
+lbl_801C8CA8:
+/* 801C8CA8 001C4908 3C 60 80 64 */ lis r3, lbl_8063D6BC@ha
+/* 801C8CAC 001C490C C0 23 D6 BC */ lfs f1, lbl_8063D6BC@l(r3)
+/* 801C8CB0 001C4910 48 00 B3 9D */ bl func_801D404C
+/* 801C8CB4 001C4914 48 00 06 C4 */ b lbl_801C9378
+lbl_801C8CB8:
+/* 801C8CB8 001C4918 88 03 00 00 */ lbz r0, 0(r3)
+/* 801C8CBC 001C491C 38 80 00 00 */ li r4, 0
+/* 801C8CC0 001C4920 3C 60 7F F0 */ lis r3, 0x7ff0
+/* 801C8CC4 001C4924 90 81 00 1C */ stw r4, 0x1c(r1)
+/* 801C8CC8 001C4928 7C 00 07 75 */ extsb. r0, r0
+/* 801C8CCC 001C492C 90 61 00 18 */ stw r3, 0x18(r1)
+/* 801C8CD0 001C4930 41 82 00 18 */ beq lbl_801C8CE8
+/* 801C8CD4 001C4934 3C 00 80 00 */ lis r0, 0x8000
+/* 801C8CD8 001C4938 38 60 00 00 */ li r3, 0
+/* 801C8CDC 001C493C 64 00 7F F0 */ oris r0, r0, 0x7ff0
+/* 801C8CE0 001C4940 90 61 00 1C */ stw r3, 0x1c(r1)
+/* 801C8CE4 001C4944 90 01 00 18 */ stw r0, 0x18(r1)
+lbl_801C8CE8:
+/* 801C8CE8 001C4948 80 01 00 18 */ lwz r0, 0x18(r1)
+/* 801C8CEC 001C494C 64 00 00 08 */ oris r0, r0, 8
+/* 801C8CF0 001C4950 90 01 00 18 */ stw r0, 0x18(r1)
+/* 801C8CF4 001C4954 C8 21 00 18 */ lfd f1, 0x18(r1)
+/* 801C8CF8 001C4958 48 00 06 80 */ b lbl_801C9378
+lbl_801C8CFC:
+/* 801C8CFC 001C495C A0 03 00 04 */ lhz r0, 4(r3)
+/* 801C8D00 001C4960 38 81 01 01 */ addi r4, r1, 0x101
+/* 801C8D04 001C4964 A2 63 00 00 */ lhz r19, 0(r3)
+/* 801C8D08 001C4968 B0 01 01 00 */ sth r0, 0x100(r1)
+/* 801C8D0C 001C496C A2 83 00 02 */ lhz r20, 2(r3)
+/* 801C8D10 001C4970 88 01 01 00 */ lbz r0, 0x100(r1)
+/* 801C8D14 001C4974 A3 E3 00 06 */ lhz r31, 6(r3)
+/* 801C8D18 001C4978 7F 84 02 14 */ add r28, r4, r0
+/* 801C8D1C 001C497C A3 C3 00 08 */ lhz r30, 8(r3)
+/* 801C8D20 001C4980 A3 A3 00 0A */ lhz r29, 0xa(r3)
+/* 801C8D24 001C4984 7C 84 E0 40 */ cmplw cr1, r4, r28
+/* 801C8D28 001C4988 A3 43 00 0C */ lhz r26, 0xc(r3)
+/* 801C8D2C 001C498C A3 23 00 0E */ lhz r25, 0xe(r3)
+/* 801C8D30 001C4990 A3 03 00 10 */ lhz r24, 0x10(r3)
+/* 801C8D34 001C4994 A2 E3 00 12 */ lhz r23, 0x12(r3)
+/* 801C8D38 001C4998 A2 C3 00 14 */ lhz r22, 0x14(r3)
+/* 801C8D3C 001C499C A2 A3 00 16 */ lhz r21, 0x16(r3)
+/* 801C8D40 001C49A0 A1 83 00 18 */ lhz r12, 0x18(r3)
+/* 801C8D44 001C49A4 A1 63 00 1A */ lhz r11, 0x1a(r3)
+/* 801C8D48 001C49A8 A1 43 00 1C */ lhz r10, 0x1c(r3)
+/* 801C8D4C 001C49AC A1 23 00 1E */ lhz r9, 0x1e(r3)
+/* 801C8D50 001C49B0 A1 03 00 20 */ lhz r8, 0x20(r3)
+/* 801C8D54 001C49B4 A0 E3 00 22 */ lhz r7, 0x22(r3)
+/* 801C8D58 001C49B8 A0 C3 00 24 */ lhz r6, 0x24(r3)
+/* 801C8D5C 001C49BC A0 A3 00 26 */ lhz r5, 0x26(r3)
+/* 801C8D60 001C49C0 A0 03 00 28 */ lhz r0, 0x28(r3)
+/* 801C8D64 001C49C4 B2 61 00 FC */ sth r19, 0xfc(r1)
+/* 801C8D68 001C49C8 B2 81 00 FE */ sth r20, 0xfe(r1)
+/* 801C8D6C 001C49CC B3 E1 01 02 */ sth r31, 0x102(r1)
+/* 801C8D70 001C49D0 B3 C1 01 04 */ sth r30, 0x104(r1)
+/* 801C8D74 001C49D4 B3 A1 01 06 */ sth r29, 0x106(r1)
+/* 801C8D78 001C49D8 B3 41 01 08 */ sth r26, 0x108(r1)
+/* 801C8D7C 001C49DC B3 21 01 0A */ sth r25, 0x10a(r1)
+/* 801C8D80 001C49E0 B3 01 01 0C */ sth r24, 0x10c(r1)
+/* 801C8D84 001C49E4 B2 E1 01 0E */ sth r23, 0x10e(r1)
+/* 801C8D88 001C49E8 B2 C1 01 10 */ sth r22, 0x110(r1)
+/* 801C8D8C 001C49EC B2 A1 01 12 */ sth r21, 0x112(r1)
+/* 801C8D90 001C49F0 B1 81 01 14 */ sth r12, 0x114(r1)
+/* 801C8D94 001C49F4 B1 61 01 16 */ sth r11, 0x116(r1)
+/* 801C8D98 001C49F8 B1 41 01 18 */ sth r10, 0x118(r1)
+/* 801C8D9C 001C49FC B1 21 01 1A */ sth r9, 0x11a(r1)
+/* 801C8DA0 001C4A00 B1 01 01 1C */ sth r8, 0x11c(r1)
+/* 801C8DA4 001C4A04 B0 E1 01 1E */ sth r7, 0x11e(r1)
+/* 801C8DA8 001C4A08 B0 C1 01 20 */ sth r6, 0x120(r1)
+/* 801C8DAC 001C4A0C B0 A1 01 22 */ sth r5, 0x122(r1)
+/* 801C8DB0 001C4A10 B0 01 01 24 */ sth r0, 0x124(r1)
+/* 801C8DB4 001C4A14 40 84 00 BC */ bge cr1, lbl_801C8E70
+/* 801C8DB8 001C4A18 7C 04 E0 50 */ subf r0, r4, r28
+/* 801C8DBC 001C4A1C 38 7C FF F8 */ addi r3, r28, -8
+/* 801C8DC0 001C4A20 2C 00 00 08 */ cmpwi r0, 8
+/* 801C8DC4 001C4A24 40 81 00 88 */ ble lbl_801C8E4C
+/* 801C8DC8 001C4A28 41 85 00 84 */ bgt cr1, lbl_801C8E4C
+/* 801C8DCC 001C4A2C 38 03 00 07 */ addi r0, r3, 7
+/* 801C8DD0 001C4A30 7C 04 00 50 */ subf r0, r4, r0
+/* 801C8DD4 001C4A34 54 00 E8 FE */ srwi r0, r0, 3
+/* 801C8DD8 001C4A38 7C 09 03 A6 */ mtctr r0
+/* 801C8DDC 001C4A3C 7C 04 18 40 */ cmplw r4, r3
+/* 801C8DE0 001C4A40 40 80 00 6C */ bge lbl_801C8E4C
+lbl_801C8DE4:
+/* 801C8DE4 001C4A44 88 64 00 00 */ lbz r3, 0(r4)
+/* 801C8DE8 001C4A48 38 03 FF D0 */ addi r0, r3, -48
+/* 801C8DEC 001C4A4C 98 04 00 00 */ stb r0, 0(r4)
+/* 801C8DF0 001C4A50 88 64 00 01 */ lbz r3, 1(r4)
+/* 801C8DF4 001C4A54 38 03 FF D0 */ addi r0, r3, -48
+/* 801C8DF8 001C4A58 98 04 00 01 */ stb r0, 1(r4)
+/* 801C8DFC 001C4A5C 88 64 00 02 */ lbz r3, 2(r4)
+/* 801C8E00 001C4A60 38 03 FF D0 */ addi r0, r3, -48
+/* 801C8E04 001C4A64 98 04 00 02 */ stb r0, 2(r4)
+/* 801C8E08 001C4A68 88 64 00 03 */ lbz r3, 3(r4)
+/* 801C8E0C 001C4A6C 38 03 FF D0 */ addi r0, r3, -48
+/* 801C8E10 001C4A70 98 04 00 03 */ stb r0, 3(r4)
+/* 801C8E14 001C4A74 88 64 00 04 */ lbz r3, 4(r4)
+/* 801C8E18 001C4A78 38 03 FF D0 */ addi r0, r3, -48
+/* 801C8E1C 001C4A7C 98 04 00 04 */ stb r0, 4(r4)
+/* 801C8E20 001C4A80 88 64 00 05 */ lbz r3, 5(r4)
+/* 801C8E24 001C4A84 38 03 FF D0 */ addi r0, r3, -48
+/* 801C8E28 001C4A88 98 04 00 05 */ stb r0, 5(r4)
+/* 801C8E2C 001C4A8C 88 64 00 06 */ lbz r3, 6(r4)
+/* 801C8E30 001C4A90 38 03 FF D0 */ addi r0, r3, -48
+/* 801C8E34 001C4A94 98 04 00 06 */ stb r0, 6(r4)
+/* 801C8E38 001C4A98 88 64 00 07 */ lbz r3, 7(r4)
+/* 801C8E3C 001C4A9C 38 03 FF D0 */ addi r0, r3, -48
+/* 801C8E40 001C4AA0 98 04 00 07 */ stb r0, 7(r4)
+/* 801C8E44 001C4AA4 38 84 00 08 */ addi r4, r4, 8
+/* 801C8E48 001C4AA8 42 00 FF 9C */ bdnz lbl_801C8DE4
+lbl_801C8E4C:
+/* 801C8E4C 001C4AAC 7C 04 E0 50 */ subf r0, r4, r28
+/* 801C8E50 001C4AB0 7C 09 03 A6 */ mtctr r0
+/* 801C8E54 001C4AB4 7C 04 E0 40 */ cmplw r4, r28
+/* 801C8E58 001C4AB8 40 80 00 18 */ bge lbl_801C8E70
+lbl_801C8E5C:
+/* 801C8E5C 001C4ABC 88 64 00 00 */ lbz r3, 0(r4)
+/* 801C8E60 001C4AC0 38 03 FF D0 */ addi r0, r3, -48
+/* 801C8E64 001C4AC4 98 04 00 00 */ stb r0, 0(r4)
+/* 801C8E68 001C4AC8 38 84 00 01 */ addi r4, r4, 1
+/* 801C8E6C 001C4ACC 42 00 FF F0 */ bdnz lbl_801C8E5C
+lbl_801C8E70:
+/* 801C8E70 001C4AD0 A8 A1 00 FE */ lha r5, 0xfe(r1)
+/* 801C8E74 001C4AD4 3C 80 80 40 */ lis r4, lbl_803FC6D8@ha
+/* 801C8E78 001C4AD8 88 01 01 00 */ lbz r0, 0x100(r1)
+/* 801C8E7C 001C4ADC 38 84 C6 D8 */ addi r4, r4, lbl_803FC6D8@l
+/* 801C8E80 001C4AE0 38 61 00 D0 */ addi r3, r1, 0xd0
+/* 801C8E84 001C4AE4 7C A0 2A 14 */ add r5, r0, r5
+/* 801C8E88 001C4AE8 38 84 00 B8 */ addi r4, r4, 0xb8
+/* 801C8E8C 001C4AEC 38 05 FF FF */ addi r0, r5, -1
+/* 801C8E90 001C4AF0 B0 01 00 FE */ sth r0, 0xfe(r1)
+/* 801C8E94 001C4AF4 38 A0 01 34 */ li r5, 0x134
+/* 801C8E98 001C4AF8 7C 1D 07 34 */ extsh r29, r0
+/* 801C8E9C 001C4AFC 4B FF EE F1 */ bl __str2dec
+/* 801C8EA0 001C4B00 38 61 00 D0 */ addi r3, r1, 0xd0
+/* 801C8EA4 001C4B04 38 81 00 FC */ addi r4, r1, 0xfc
+/* 801C8EA8 001C4B08 4B FF F4 21 */ bl __less_dec
+/* 801C8EAC 001C4B0C 2C 03 00 00 */ cmpwi r3, 0
+/* 801C8EB0 001C4B10 41 82 00 2C */ beq lbl_801C8EDC
+/* 801C8EB4 001C4B14 88 1B 00 00 */ lbz r0, 0(r27)
+/* 801C8EB8 001C4B18 7C 00 07 75 */ extsb. r0, r0
+/* 801C8EBC 001C4B1C 40 82 00 0C */ bne lbl_801C8EC8
+/* 801C8EC0 001C4B20 C8 42 91 00 */ lfd f2, lbl_80641700-_SDA2_BASE_(r2)
+/* 801C8EC4 001C4B24 48 00 00 08 */ b lbl_801C8ECC
+lbl_801C8EC8:
+/* 801C8EC8 001C4B28 C8 42 91 08 */ lfd f2, lbl_80641708-_SDA2_BASE_(r2)
+lbl_801C8ECC:
+/* 801C8ECC 001C4B2C 3C 60 80 64 */ lis r3, lbl_8063D6BC@ha
+/* 801C8ED0 001C4B30 C0 23 D6 BC */ lfs f1, lbl_8063D6BC@l(r3)
+/* 801C8ED4 001C4B34 48 00 B1 79 */ bl func_801D404C
+/* 801C8ED8 001C4B38 48 00 04 A0 */ b lbl_801C9378
+lbl_801C8EDC:
+/* 801C8EDC 001C4B3C 88 01 01 01 */ lbz r0, 0x101(r1)
+/* 801C8EE0 001C4B40 3C E0 80 42 */ lis r7, lbl_80422B58@ha
+/* 801C8EE4 001C4B44 C8 42 91 20 */ lfd f2, lbl_80641720-_SDA2_BASE_(r2)
+/* 801C8EE8 001C4B48 38 81 01 02 */ addi r4, r1, 0x102
+/* 801C8EEC 001C4B4C 90 01 01 2C */ stw r0, 0x12c(r1)
+/* 801C8EF0 001C4B50 38 E7 2B 58 */ addi r7, r7, lbl_80422B58@l
+/* 801C8EF4 001C4B54 3C 60 80 00 */ lis r3, 0x8000
+/* 801C8EF8 001C4B58 C8 01 01 28 */ lfd f0, 0x128(r1)
+/* 801C8EFC 001C4B5C FF E0 10 28 */ fsub f31, f0, f2
+/* 801C8F00 001C4B60 48 00 01 40 */ b lbl_801C9040
+lbl_801C8F04:
+/* 801C8F04 001C4B64 7C A4 E0 50 */ subf r5, r4, r28
+/* 801C8F08 001C4B68 39 40 00 00 */ li r10, 0
+/* 801C8F0C 001C4B6C 54 A0 E8 04 */ slwi r0, r5, 0x1d
+/* 801C8F10 001C4B70 54 A5 0F FE */ srwi r5, r5, 0x1f
+/* 801C8F14 001C4B74 7C 05 00 50 */ subf r0, r5, r0
+/* 801C8F18 001C4B78 54 00 18 3E */ rotlwi r0, r0, 3
+/* 801C8F1C 001C4B7C 7C C0 2A 15 */ add. r6, r0, r5
+/* 801C8F20 001C4B80 40 82 00 08 */ bne lbl_801C8F28
+/* 801C8F24 001C4B84 38 C0 00 08 */ li r6, 8
+lbl_801C8F28:
+/* 801C8F28 001C4B88 2C 86 00 00 */ cmpwi cr1, r6, 0
+/* 801C8F2C 001C4B8C 38 A0 00 00 */ li r5, 0
+/* 801C8F30 001C4B90 40 85 00 D8 */ ble cr1, lbl_801C9008
+/* 801C8F34 001C4B94 2C 06 00 08 */ cmpwi r6, 8
+/* 801C8F38 001C4B98 39 06 FF F8 */ addi r8, r6, -8
+/* 801C8F3C 001C4B9C 40 81 00 A4 */ ble lbl_801C8FE0
+/* 801C8F40 001C4BA0 39 20 00 00 */ li r9, 0
+/* 801C8F44 001C4BA4 41 84 00 14 */ blt cr1, lbl_801C8F58
+/* 801C8F48 001C4BA8 38 03 FF FE */ addi r0, r3, -2
+/* 801C8F4C 001C4BAC 7C 06 00 00 */ cmpw r6, r0
+/* 801C8F50 001C4BB0 41 81 00 08 */ bgt lbl_801C8F58
+/* 801C8F54 001C4BB4 39 20 00 01 */ li r9, 1
+lbl_801C8F58:
+/* 801C8F58 001C4BB8 2C 09 00 00 */ cmpwi r9, 0
+/* 801C8F5C 001C4BBC 41 82 00 84 */ beq lbl_801C8FE0
+/* 801C8F60 001C4BC0 38 08 00 07 */ addi r0, r8, 7
+/* 801C8F64 001C4BC4 54 00 E8 FE */ srwi r0, r0, 3
+/* 801C8F68 001C4BC8 7C 09 03 A6 */ mtctr r0
+/* 801C8F6C 001C4BCC 2C 08 00 00 */ cmpwi r8, 0
+/* 801C8F70 001C4BD0 40 81 00 70 */ ble lbl_801C8FE0
+lbl_801C8F74:
+/* 801C8F74 001C4BD4 1C 0A 00 0A */ mulli r0, r10, 0xa
+/* 801C8F78 001C4BD8 89 24 00 00 */ lbz r9, 0(r4)
+/* 801C8F7C 001C4BDC 89 04 00 01 */ lbz r8, 1(r4)
+/* 801C8F80 001C4BE0 38 A5 00 08 */ addi r5, r5, 8
+/* 801C8F84 001C4BE4 8A A4 00 02 */ lbz r21, 2(r4)
+/* 801C8F88 001C4BE8 7C 09 02 14 */ add r0, r9, r0
+/* 801C8F8C 001C4BEC 1C 00 00 0A */ mulli r0, r0, 0xa
+/* 801C8F90 001C4BF0 89 84 00 03 */ lbz r12, 3(r4)
+/* 801C8F94 001C4BF4 89 64 00 04 */ lbz r11, 4(r4)
+/* 801C8F98 001C4BF8 89 44 00 05 */ lbz r10, 5(r4)
+/* 801C8F9C 001C4BFC 7C 08 02 14 */ add r0, r8, r0
+/* 801C8FA0 001C4C00 89 24 00 06 */ lbz r9, 6(r4)
+/* 801C8FA4 001C4C04 1C 00 00 0A */ mulli r0, r0, 0xa
+/* 801C8FA8 001C4C08 89 04 00 07 */ lbz r8, 7(r4)
+/* 801C8FAC 001C4C0C 38 84 00 08 */ addi r4, r4, 8
+/* 801C8FB0 001C4C10 7C 15 02 14 */ add r0, r21, r0
+/* 801C8FB4 001C4C14 1C 00 00 0A */ mulli r0, r0, 0xa
+/* 801C8FB8 001C4C18 7C 0C 02 14 */ add r0, r12, r0
+/* 801C8FBC 001C4C1C 1C 00 00 0A */ mulli r0, r0, 0xa
+/* 801C8FC0 001C4C20 7C 0B 02 14 */ add r0, r11, r0
+/* 801C8FC4 001C4C24 1C 00 00 0A */ mulli r0, r0, 0xa
+/* 801C8FC8 001C4C28 7C 0A 02 14 */ add r0, r10, r0
+/* 801C8FCC 001C4C2C 1C 00 00 0A */ mulli r0, r0, 0xa
+/* 801C8FD0 001C4C30 7C 09 02 14 */ add r0, r9, r0
+/* 801C8FD4 001C4C34 1C 00 00 0A */ mulli r0, r0, 0xa
+/* 801C8FD8 001C4C38 7D 48 02 14 */ add r10, r8, r0
+/* 801C8FDC 001C4C3C 42 00 FF 98 */ bdnz lbl_801C8F74
+lbl_801C8FE0:
+/* 801C8FE0 001C4C40 7C 05 30 50 */ subf r0, r5, r6
+/* 801C8FE4 001C4C44 7C 09 03 A6 */ mtctr r0
+/* 801C8FE8 001C4C48 7C 05 30 00 */ cmpw r5, r6
+/* 801C8FEC 001C4C4C 40 80 00 1C */ bge lbl_801C9008
+lbl_801C8FF0:
+/* 801C8FF0 001C4C50 1C 0A 00 0A */ mulli r0, r10, 0xa
+/* 801C8FF4 001C4C54 89 04 00 00 */ lbz r8, 0(r4)
+/* 801C8FF8 001C4C58 38 A5 00 01 */ addi r5, r5, 1
+/* 801C8FFC 001C4C5C 38 84 00 01 */ addi r4, r4, 1
+/* 801C9000 001C4C60 7D 48 02 14 */ add r10, r8, r0
+/* 801C9004 001C4C64 42 00 FF EC */ bdnz lbl_801C8FF0
+lbl_801C9008:
+/* 801C9008 001C4C68 54 C0 18 38 */ slwi r0, r6, 3
+/* 801C900C 001C4C6C 91 41 01 34 */ stw r10, 0x134(r1)
+/* 801C9010 001C4C70 7C A7 02 14 */ add r5, r7, r0
+/* 801C9014 001C4C74 2C 0A 00 00 */ cmpwi r10, 0
+/* 801C9018 001C4C78 C8 25 FF F8 */ lfd f1, -8(r5)
+/* 801C901C 001C4C7C C8 01 01 30 */ lfd f0, 0x130(r1)
+/* 801C9020 001C4C80 FC 3F 00 72 */ fmul f1, f31, f1
+/* 801C9024 001C4C84 FC 00 10 28 */ fsub f0, f0, f2
+/* 801C9028 001C4C88 FC 01 00 2A */ fadd f0, f1, f0
+/* 801C902C 001C4C8C 41 82 00 0C */ beq lbl_801C9038
+/* 801C9030 001C4C90 FC 01 00 00 */ fcmpu cr0, f1, f0
+/* 801C9034 001C4C94 41 82 00 14 */ beq lbl_801C9048
+lbl_801C9038:
+/* 801C9038 001C4C98 FF E0 00 90 */ fmr f31, f0
+/* 801C903C 001C4C9C 7F A6 E8 50 */ subf r29, r6, r29
+lbl_801C9040:
+/* 801C9040 001C4CA0 7C 04 E0 40 */ cmplw r4, r28
+/* 801C9044 001C4CA4 41 80 FE C0 */ blt lbl_801C8F04
+lbl_801C9048:
+/* 801C9048 001C4CA8 2C 1D 00 00 */ cmpwi r29, 0
+/* 801C904C 001C4CAC 40 80 00 2C */ bge lbl_801C9078
+/* 801C9050 001C4CB0 7C 1D 00 D0 */ neg r0, r29
+/* 801C9054 001C4CB4 C8 42 91 28 */ lfd f2, lbl_80641728-_SDA2_BASE_(r2)
+/* 801C9058 001C4CB8 6C 00 80 00 */ xoris r0, r0, 0x8000
+/* 801C905C 001C4CBC C8 22 91 10 */ lfd f1, lbl_80641710-_SDA2_BASE_(r2)
+/* 801C9060 001C4CC0 90 01 01 2C */ stw r0, 0x12c(r1)
+/* 801C9064 001C4CC4 C8 01 01 28 */ lfd f0, 0x128(r1)
+/* 801C9068 001C4CC8 FC 40 10 28 */ fsub f2, f0, f2
+/* 801C906C 001C4CCC 48 00 B5 79 */ bl func_801D45E4
+/* 801C9070 001C4CD0 FF FF 08 24 */ fdiv f31, f31, f1
+/* 801C9074 001C4CD4 48 00 00 24 */ b lbl_801C9098
+lbl_801C9078:
+/* 801C9078 001C4CD8 6F A0 80 00 */ xoris r0, r29, 0x8000
+/* 801C907C 001C4CDC C8 42 91 28 */ lfd f2, lbl_80641728-_SDA2_BASE_(r2)
+/* 801C9080 001C4CE0 90 01 01 34 */ stw r0, 0x134(r1)
+/* 801C9084 001C4CE4 C8 22 91 10 */ lfd f1, lbl_80641710-_SDA2_BASE_(r2)
+/* 801C9088 001C4CE8 C8 01 01 30 */ lfd f0, 0x130(r1)
+/* 801C908C 001C4CEC FC 40 10 28 */ fsub f2, f0, f2
+/* 801C9090 001C4CF0 48 00 B5 55 */ bl func_801D45E4
+/* 801C9094 001C4CF4 FF FF 00 72 */ fmul f31, f31, f1
+lbl_801C9098:
+/* 801C9098 001C4CF8 FC 20 F8 90 */ fmr f1, f31
+/* 801C909C 001C4CFC 7F A3 EB 78 */ mr r3, r29
+/* 801C90A0 001C4D00 48 00 B2 79 */ bl func_801D4318
+/* 801C90A4 001C4D04 FF E0 08 90 */ fmr f31, f1
+/* 801C90A8 001C4D08 D8 21 00 10 */ stfd f1, 0x10(r1)
+/* 801C90AC 001C4D0C 48 00 16 85 */ bl __fpclassifyd
+/* 801C90B0 001C4D10 2C 03 00 02 */ cmpwi r3, 2
+/* 801C90B4 001C4D14 40 82 00 0C */ bne lbl_801C90C0
+/* 801C90B8 001C4D18 CB E2 91 18 */ lfd f31, lbl_80641718-_SDA2_BASE_(r2)
+/* 801C90BC 001C4D1C DB E1 00 10 */ stfd f31, 0x10(r1)
+lbl_801C90C0:
+/* 801C90C0 001C4D20 FC 20 F8 90 */ fmr f1, f31
+/* 801C90C4 001C4D24 38 61 00 A4 */ addi r3, r1, 0xa4
+/* 801C90C8 001C4D28 3B 60 00 00 */ li r27, 0
+/* 801C90CC 001C4D2C 4B FF F8 19 */ bl __num2dec_internal
+/* 801C90D0 001C4D30 38 61 00 A4 */ addi r3, r1, 0xa4
+/* 801C90D4 001C4D34 38 81 00 FC */ addi r4, r1, 0xfc
+/* 801C90D8 001C4D38 4B FF F1 0D */ bl __equals_dec
+/* 801C90DC 001C4D3C 2C 03 00 00 */ cmpwi r3, 0
+/* 801C90E0 001C4D40 40 82 02 80 */ bne lbl_801C9360
+/* 801C90E4 001C4D44 38 61 00 A4 */ addi r3, r1, 0xa4
+/* 801C90E8 001C4D48 38 81 00 FC */ addi r4, r1, 0xfc
+/* 801C90EC 001C4D4C 4B FF F1 DD */ bl __less_dec
+/* 801C90F0 001C4D50 2C 03 00 00 */ cmpwi r3, 0
+/* 801C90F4 001C4D54 41 82 00 08 */ beq lbl_801C90FC
+/* 801C90F8 001C4D58 3B 60 00 01 */ li r27, 1
+lbl_801C90FC:
+/* 801C90FC 001C4D5C 7F 60 00 34 */ cntlzw r0, r27
+/* 801C9100 001C4D60 DB E1 00 08 */ stfd f31, 8(r1)
+/* 801C9104 001C4D64 54 1C D9 7E */ srwi r28, r0, 5
+/* 801C9108 001C4D68 3B A0 00 01 */ li r29, 1
+/* 801C910C 001C4D6C 3B C0 00 00 */ li r30, 0
+/* 801C9110 001C4D70 3B E0 FF FF */ li r31, -1
+lbl_801C9114:
+/* 801C9114 001C4D74 2C 1C 00 00 */ cmpwi r28, 0
+/* 801C9118 001C4D78 40 82 00 30 */ bne lbl_801C9148
+/* 801C911C 001C4D7C 80 61 00 0C */ lwz r3, 0xc(r1)
+/* 801C9120 001C4D80 80 01 00 08 */ lwz r0, 8(r1)
+/* 801C9124 001C4D84 7C 63 E8 14 */ addc r3, r3, r29
+/* 801C9128 001C4D88 7C 00 F1 14 */ adde r0, r0, r30
+/* 801C912C 001C4D8C 90 61 00 0C */ stw r3, 0xc(r1)
+/* 801C9130 001C4D90 90 01 00 08 */ stw r0, 8(r1)
+/* 801C9134 001C4D94 C8 21 00 08 */ lfd f1, 8(r1)
+/* 801C9138 001C4D98 48 00 15 F9 */ bl __fpclassifyd
+/* 801C913C 001C4D9C 2C 03 00 02 */ cmpwi r3, 2
+/* 801C9140 001C4DA0 41 82 02 20 */ beq lbl_801C9360
+/* 801C9144 001C4DA4 48 00 00 1C */ b lbl_801C9160
+lbl_801C9148:
+/* 801C9148 001C4DA8 80 61 00 0C */ lwz r3, 0xc(r1)
+/* 801C914C 001C4DAC 80 01 00 08 */ lwz r0, 8(r1)
+/* 801C9150 001C4DB0 7C 63 F8 14 */ addc r3, r3, r31
+/* 801C9154 001C4DB4 7C 00 F9 14 */ adde r0, r0, r31
+/* 801C9158 001C4DB8 90 61 00 0C */ stw r3, 0xc(r1)
+/* 801C915C 001C4DBC 90 01 00 08 */ stw r0, 8(r1)
+lbl_801C9160:
+/* 801C9160 001C4DC0 C8 21 00 08 */ lfd f1, 8(r1)
+/* 801C9164 001C4DC4 38 61 00 78 */ addi r3, r1, 0x78
+/* 801C9168 001C4DC8 4B FF F7 7D */ bl __num2dec_internal
+/* 801C916C 001C4DCC 2C 1B 00 00 */ cmpwi r27, 0
+/* 801C9170 001C4DD0 41 82 00 18 */ beq lbl_801C9188
+/* 801C9174 001C4DD4 38 61 00 78 */ addi r3, r1, 0x78
+/* 801C9178 001C4DD8 38 81 00 FC */ addi r4, r1, 0xfc
+/* 801C917C 001C4DDC 4B FF F1 4D */ bl __less_dec
+/* 801C9180 001C4DE0 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9184 001C4DE4 41 82 01 74 */ beq lbl_801C92F8
+lbl_801C9188:
+/* 801C9188 001C4DE8 2C 1B 00 00 */ cmpwi r27, 0
+/* 801C918C 001C4DEC 40 82 01 08 */ bne lbl_801C9294
+/* 801C9190 001C4DF0 38 61 00 FC */ addi r3, r1, 0xfc
+/* 801C9194 001C4DF4 38 81 00 78 */ addi r4, r1, 0x78
+/* 801C9198 001C4DF8 4B FF F1 31 */ bl __less_dec
+/* 801C919C 001C4DFC 2C 03 00 00 */ cmpwi r3, 0
+/* 801C91A0 001C4E00 40 82 00 F4 */ bne lbl_801C9294
+/* 801C91A4 001C4E04 FC 00 F8 90 */ fmr f0, f31
+/* 801C91A8 001C4E08 CB E1 00 08 */ lfd f31, 8(r1)
+/* 801C91AC 001C4E0C 82 A1 00 A4 */ lwz r21, 0xa4(r1)
+/* 801C91B0 001C4E10 81 81 00 78 */ lwz r12, 0x78(r1)
+/* 801C91B4 001C4E14 82 C1 00 A8 */ lwz r22, 0xa8(r1)
+/* 801C91B8 001C4E18 81 61 00 7C */ lwz r11, 0x7c(r1)
+/* 801C91BC 001C4E1C 82 E1 00 AC */ lwz r23, 0xac(r1)
+/* 801C91C0 001C4E20 81 41 00 80 */ lwz r10, 0x80(r1)
+/* 801C91C4 001C4E24 83 01 00 B0 */ lwz r24, 0xb0(r1)
+/* 801C91C8 001C4E28 81 21 00 84 */ lwz r9, 0x84(r1)
+/* 801C91CC 001C4E2C 83 21 00 B4 */ lwz r25, 0xb4(r1)
+/* 801C91D0 001C4E30 81 01 00 88 */ lwz r8, 0x88(r1)
+/* 801C91D4 001C4E34 83 41 00 B8 */ lwz r26, 0xb8(r1)
+/* 801C91D8 001C4E38 80 E1 00 8C */ lwz r7, 0x8c(r1)
+/* 801C91DC 001C4E3C 83 E1 00 BC */ lwz r31, 0xbc(r1)
+/* 801C91E0 001C4E40 80 C1 00 90 */ lwz r6, 0x90(r1)
+/* 801C91E4 001C4E44 83 C1 00 C0 */ lwz r30, 0xc0(r1)
+/* 801C91E8 001C4E48 80 A1 00 94 */ lwz r5, 0x94(r1)
+/* 801C91EC 001C4E4C 83 A1 00 C4 */ lwz r29, 0xc4(r1)
+/* 801C91F0 001C4E50 80 81 00 98 */ lwz r4, 0x98(r1)
+/* 801C91F4 001C4E54 83 81 00 C8 */ lwz r28, 0xc8(r1)
+/* 801C91F8 001C4E58 80 61 00 9C */ lwz r3, 0x9c(r1)
+/* 801C91FC 001C4E5C A3 61 00 CC */ lhz r27, 0xcc(r1)
+/* 801C9200 001C4E60 A0 01 00 A0 */ lhz r0, 0xa0(r1)
+/* 801C9204 001C4E64 92 A1 00 4C */ stw r21, 0x4c(r1)
+/* 801C9208 001C4E68 92 C1 00 50 */ stw r22, 0x50(r1)
+/* 801C920C 001C4E6C 92 E1 00 54 */ stw r23, 0x54(r1)
+/* 801C9210 001C4E70 93 01 00 58 */ stw r24, 0x58(r1)
+/* 801C9214 001C4E74 93 21 00 5C */ stw r25, 0x5c(r1)
+/* 801C9218 001C4E78 93 41 00 60 */ stw r26, 0x60(r1)
+/* 801C921C 001C4E7C 93 E1 00 64 */ stw r31, 0x64(r1)
+/* 801C9220 001C4E80 93 C1 00 68 */ stw r30, 0x68(r1)
+/* 801C9224 001C4E84 93 A1 00 6C */ stw r29, 0x6c(r1)
+/* 801C9228 001C4E88 93 81 00 70 */ stw r28, 0x70(r1)
+/* 801C922C 001C4E8C B3 61 00 74 */ sth r27, 0x74(r1)
+/* 801C9230 001C4E90 91 81 00 A4 */ stw r12, 0xa4(r1)
+/* 801C9234 001C4E94 91 61 00 A8 */ stw r11, 0xa8(r1)
+/* 801C9238 001C4E98 91 41 00 AC */ stw r10, 0xac(r1)
+/* 801C923C 001C4E9C 91 21 00 B0 */ stw r9, 0xb0(r1)
+/* 801C9240 001C4EA0 91 01 00 B4 */ stw r8, 0xb4(r1)
+/* 801C9244 001C4EA4 90 E1 00 B8 */ stw r7, 0xb8(r1)
+/* 801C9248 001C4EA8 90 C1 00 BC */ stw r6, 0xbc(r1)
+/* 801C924C 001C4EAC 90 A1 00 C0 */ stw r5, 0xc0(r1)
+/* 801C9250 001C4EB0 90 81 00 C4 */ stw r4, 0xc4(r1)
+/* 801C9254 001C4EB4 90 61 00 C8 */ stw r3, 0xc8(r1)
+/* 801C9258 001C4EB8 B0 01 00 CC */ sth r0, 0xcc(r1)
+/* 801C925C 001C4EBC 92 A1 00 78 */ stw r21, 0x78(r1)
+/* 801C9260 001C4EC0 92 C1 00 7C */ stw r22, 0x7c(r1)
+/* 801C9264 001C4EC4 92 E1 00 80 */ stw r23, 0x80(r1)
+/* 801C9268 001C4EC8 93 01 00 84 */ stw r24, 0x84(r1)
+/* 801C926C 001C4ECC 93 21 00 88 */ stw r25, 0x88(r1)
+/* 801C9270 001C4ED0 93 41 00 8C */ stw r26, 0x8c(r1)
+/* 801C9274 001C4ED4 93 E1 00 90 */ stw r31, 0x90(r1)
+/* 801C9278 001C4ED8 93 C1 00 94 */ stw r30, 0x94(r1)
+/* 801C927C 001C4EDC 93 A1 00 98 */ stw r29, 0x98(r1)
+/* 801C9280 001C4EE0 93 81 00 9C */ stw r28, 0x9c(r1)
+/* 801C9284 001C4EE4 B3 61 00 A0 */ sth r27, 0xa0(r1)
+/* 801C9288 001C4EE8 DB E1 00 10 */ stfd f31, 0x10(r1)
+/* 801C928C 001C4EEC D8 01 00 08 */ stfd f0, 8(r1)
+/* 801C9290 001C4EF0 48 00 00 68 */ b lbl_801C92F8
+lbl_801C9294:
+/* 801C9294 001C4EF4 81 81 00 78 */ lwz r12, 0x78(r1)
+/* 801C9298 001C4EF8 81 61 00 7C */ lwz r11, 0x7c(r1)
+/* 801C929C 001C4EFC 81 41 00 80 */ lwz r10, 0x80(r1)
+/* 801C92A0 001C4F00 81 21 00 84 */ lwz r9, 0x84(r1)
+/* 801C92A4 001C4F04 81 01 00 88 */ lwz r8, 0x88(r1)
+/* 801C92A8 001C4F08 80 E1 00 8C */ lwz r7, 0x8c(r1)
+/* 801C92AC 001C4F0C 80 C1 00 90 */ lwz r6, 0x90(r1)
+/* 801C92B0 001C4F10 80 A1 00 94 */ lwz r5, 0x94(r1)
+/* 801C92B4 001C4F14 80 81 00 98 */ lwz r4, 0x98(r1)
+/* 801C92B8 001C4F18 80 61 00 9C */ lwz r3, 0x9c(r1)
+/* 801C92BC 001C4F1C A0 01 00 A0 */ lhz r0, 0xa0(r1)
+/* 801C92C0 001C4F20 CB E1 00 08 */ lfd f31, 8(r1)
+/* 801C92C4 001C4F24 91 81 00 A4 */ stw r12, 0xa4(r1)
+/* 801C92C8 001C4F28 91 61 00 A8 */ stw r11, 0xa8(r1)
+/* 801C92CC 001C4F2C 91 41 00 AC */ stw r10, 0xac(r1)
+/* 801C92D0 001C4F30 91 21 00 B0 */ stw r9, 0xb0(r1)
+/* 801C92D4 001C4F34 91 01 00 B4 */ stw r8, 0xb4(r1)
+/* 801C92D8 001C4F38 90 E1 00 B8 */ stw r7, 0xb8(r1)
+/* 801C92DC 001C4F3C 90 C1 00 BC */ stw r6, 0xbc(r1)
+/* 801C92E0 001C4F40 90 A1 00 C0 */ stw r5, 0xc0(r1)
+/* 801C92E4 001C4F44 90 81 00 C4 */ stw r4, 0xc4(r1)
+/* 801C92E8 001C4F48 90 61 00 C8 */ stw r3, 0xc8(r1)
+/* 801C92EC 001C4F4C B0 01 00 CC */ sth r0, 0xcc(r1)
+/* 801C92F0 001C4F50 DB E1 00 10 */ stfd f31, 0x10(r1)
+/* 801C92F4 001C4F54 4B FF FE 20 */ b lbl_801C9114
+lbl_801C92F8:
+/* 801C92F8 001C4F58 38 61 00 4C */ addi r3, r1, 0x4c
+/* 801C92FC 001C4F5C 38 81 00 FC */ addi r4, r1, 0xfc
+/* 801C9300 001C4F60 38 A1 00 A4 */ addi r5, r1, 0xa4
+/* 801C9304 001C4F64 4B FF F0 C5 */ bl __minus_dec
+/* 801C9308 001C4F68 38 61 00 20 */ addi r3, r1, 0x20
+/* 801C930C 001C4F6C 38 81 00 78 */ addi r4, r1, 0x78
+/* 801C9310 001C4F70 38 A1 00 FC */ addi r5, r1, 0xfc
+/* 801C9314 001C4F74 4B FF F0 B5 */ bl __minus_dec
+/* 801C9318 001C4F78 38 61 00 4C */ addi r3, r1, 0x4c
+/* 801C931C 001C4F7C 38 81 00 20 */ addi r4, r1, 0x20
+/* 801C9320 001C4F80 4B FF EE C5 */ bl __equals_dec
+/* 801C9324 001C4F84 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9328 001C4F88 41 82 00 1C */ beq lbl_801C9344
+/* 801C932C 001C4F8C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801C9330 001C4F90 54 00 07 FF */ clrlwi. r0, r0, 0x1f
+/* 801C9334 001C4F94 41 82 00 2C */ beq lbl_801C9360
+/* 801C9338 001C4F98 CB E1 00 08 */ lfd f31, 8(r1)
+/* 801C933C 001C4F9C DB E1 00 10 */ stfd f31, 0x10(r1)
+/* 801C9340 001C4FA0 48 00 00 20 */ b lbl_801C9360
+lbl_801C9344:
+/* 801C9344 001C4FA4 38 61 00 4C */ addi r3, r1, 0x4c
+/* 801C9348 001C4FA8 38 81 00 20 */ addi r4, r1, 0x20
+/* 801C934C 001C4FAC 4B FF EF 7D */ bl __less_dec
+/* 801C9350 001C4FB0 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9354 001C4FB4 40 82 00 0C */ bne lbl_801C9360
+/* 801C9358 001C4FB8 CB E1 00 08 */ lfd f31, 8(r1)
+/* 801C935C 001C4FBC DB E1 00 10 */ stfd f31, 0x10(r1)
+lbl_801C9360:
+/* 801C9360 001C4FC0 88 01 00 FC */ lbz r0, 0xfc(r1)
+/* 801C9364 001C4FC4 7C 00 07 75 */ extsb. r0, r0
+/* 801C9368 001C4FC8 41 82 00 0C */ beq lbl_801C9374
+/* 801C936C 001C4FCC FF E0 F8 50 */ fneg f31, f31
+/* 801C9370 001C4FD0 DB E1 00 10 */ stfd f31, 0x10(r1)
+lbl_801C9374:
+/* 801C9374 001C4FD4 FC 20 F8 90 */ fmr f1, f31
+lbl_801C9378:
+/* 801C9378 001C4FD8 E3 E1 01 78 */ psq_l f31, 376(r1), 0, qr0
+/* 801C937C 001C4FDC 39 61 01 70 */ addi r11, r1, 0x170
+/* 801C9380 001C4FE0 CB E1 01 70 */ lfd f31, 0x170(r1)
+/* 801C9384 001C4FE4 4B FF DD D1 */ bl _restgpr_19
+/* 801C9388 001C4FE8 80 01 01 84 */ lwz r0, 0x184(r1)
+/* 801C938C 001C4FEC 7C 08 03 A6 */ mtlr r0
+/* 801C9390 001C4FF0 38 21 01 80 */ addi r1, r1, 0x180
+/* 801C9394 001C4FF4 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/arith.s b/asm/libstdc++/arith.s new file mode 100644 index 0000000..eac01ad --- /dev/null +++ b/asm/libstdc++/arith.s @@ -0,0 +1,10 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global abs
+abs:
+/* 801C9398 001C4FF8 7C 64 FE 70 */ srawi r4, r3, 0x1f
+/* 801C939C 001C4FFC 7C 80 1A 78 */ xor r0, r4, r3
+/* 801C93A0 001C5000 7C 64 00 50 */ subf r3, r4, r0
+/* 801C93A4 001C5004 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/buffer_io.s b/asm/libstdc++/buffer_io.s new file mode 100644 index 0000000..2ee6618 --- /dev/null +++ b/asm/libstdc++/buffer_io.s @@ -0,0 +1,143 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __prep_buffer
+__prep_buffer:
+/* 801C93A8 001C5008 80 83 00 18 */ lwz r4, 0x18(r3)
+/* 801C93AC 001C500C 80 03 00 2C */ lwz r0, 0x2c(r3)
+/* 801C93B0 001C5010 80 C3 00 1C */ lwz r6, 0x1c(r3)
+/* 801C93B4 001C5014 80 A3 00 20 */ lwz r5, 0x20(r3)
+/* 801C93B8 001C5018 7C 80 00 38 */ and r0, r4, r0
+/* 801C93BC 001C501C 90 C3 00 24 */ stw r6, 0x24(r3)
+/* 801C93C0 001C5020 7C 00 28 50 */ subf r0, r0, r5
+/* 801C93C4 001C5024 90 03 00 28 */ stw r0, 0x28(r3)
+/* 801C93C8 001C5028 90 83 00 34 */ stw r4, 0x34(r3)
+/* 801C93CC 001C502C 4E 80 00 20 */ blr
+
+.global __load_buffer
+__load_buffer:
+/* 801C93D0 001C5030 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801C93D4 001C5034 7C 08 02 A6 */ mflr r0
+/* 801C93D8 001C5038 2C 05 00 01 */ cmpwi r5, 1
+/* 801C93DC 001C503C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801C93E0 001C5040 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801C93E4 001C5044 7C 7F 1B 78 */ mr r31, r3
+/* 801C93E8 001C5048 93 C1 00 08 */ stw r30, 8(r1)
+/* 801C93EC 001C504C 7C 9E 23 78 */ mr r30, r4
+/* 801C93F0 001C5050 80 C3 00 18 */ lwz r6, 0x18(r3)
+/* 801C93F4 001C5054 80 03 00 2C */ lwz r0, 0x2c(r3)
+/* 801C93F8 001C5058 80 A3 00 1C */ lwz r5, 0x1c(r3)
+/* 801C93FC 001C505C 80 83 00 20 */ lwz r4, 0x20(r3)
+/* 801C9400 001C5060 7C C0 00 38 */ and r0, r6, r0
+/* 801C9404 001C5064 90 A3 00 24 */ stw r5, 0x24(r3)
+/* 801C9408 001C5068 7C 00 20 50 */ subf r0, r0, r4
+/* 801C940C 001C506C 90 03 00 28 */ stw r0, 0x28(r3)
+/* 801C9410 001C5070 90 C3 00 34 */ stw r6, 0x34(r3)
+/* 801C9414 001C5074 40 82 00 08 */ bne lbl_801C941C
+/* 801C9418 001C5078 90 83 00 28 */ stw r4, 0x28(r3)
+lbl_801C941C:
+/* 801C941C 001C507C 81 9F 00 3C */ lwz r12, 0x3c(r31)
+/* 801C9420 001C5080 38 BF 00 28 */ addi r5, r31, 0x28
+/* 801C9424 001C5084 80 63 00 00 */ lwz r3, 0(r3)
+/* 801C9428 001C5088 80 9F 00 1C */ lwz r4, 0x1c(r31)
+/* 801C942C 001C508C 80 DF 00 48 */ lwz r6, 0x48(r31)
+/* 801C9430 001C5090 7D 89 03 A6 */ mtctr r12
+/* 801C9434 001C5094 4E 80 04 21 */ bctrl
+/* 801C9438 001C5098 2C 03 00 02 */ cmpwi r3, 2
+/* 801C943C 001C509C 40 82 00 0C */ bne lbl_801C9448
+/* 801C9440 001C50A0 38 00 00 00 */ li r0, 0
+/* 801C9444 001C50A4 90 1F 00 28 */ stw r0, 0x28(r31)
+lbl_801C9448:
+/* 801C9448 001C50A8 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C944C 001C50AC 41 82 00 0C */ beq lbl_801C9458
+/* 801C9450 001C50B0 80 1F 00 28 */ lwz r0, 0x28(r31)
+/* 801C9454 001C50B4 90 1E 00 00 */ stw r0, 0(r30)
+lbl_801C9458:
+/* 801C9458 001C50B8 2C 03 00 00 */ cmpwi r3, 0
+/* 801C945C 001C50BC 41 82 00 08 */ beq lbl_801C9464
+/* 801C9460 001C50C0 48 00 00 54 */ b lbl_801C94B4
+lbl_801C9464:
+/* 801C9464 001C50C4 80 1F 00 04 */ lwz r0, 4(r31)
+/* 801C9468 001C50C8 80 9F 00 18 */ lwz r4, 0x18(r31)
+/* 801C946C 001C50CC 80 7F 00 28 */ lwz r3, 0x28(r31)
+/* 801C9470 001C50D0 54 00 6F FF */ rlwinm. r0, r0, 0xd, 0x1f, 0x1f
+/* 801C9474 001C50D4 7C 04 1A 14 */ add r0, r4, r3
+/* 801C9478 001C50D8 90 1F 00 18 */ stw r0, 0x18(r31)
+/* 801C947C 001C50DC 40 82 00 34 */ bne lbl_801C94B0
+/* 801C9480 001C50E0 80 9F 00 1C */ lwz r4, 0x1c(r31)
+/* 801C9484 001C50E4 7C 69 03 A6 */ mtctr r3
+/* 801C9488 001C50E8 2C 03 00 00 */ cmpwi r3, 0
+/* 801C948C 001C50EC 41 82 00 24 */ beq lbl_801C94B0
+lbl_801C9490:
+/* 801C9490 001C50F0 88 04 00 00 */ lbz r0, 0(r4)
+/* 801C9494 001C50F4 38 84 00 01 */ addi r4, r4, 1
+/* 801C9498 001C50F8 28 00 00 0A */ cmplwi r0, 0xa
+/* 801C949C 001C50FC 40 82 00 10 */ bne lbl_801C94AC
+/* 801C94A0 001C5100 80 7F 00 18 */ lwz r3, 0x18(r31)
+/* 801C94A4 001C5104 38 03 00 01 */ addi r0, r3, 1
+/* 801C94A8 001C5108 90 1F 00 18 */ stw r0, 0x18(r31)
+lbl_801C94AC:
+/* 801C94AC 001C510C 42 00 FF E4 */ bdnz lbl_801C9490
+lbl_801C94B0:
+/* 801C94B0 001C5110 38 60 00 00 */ li r3, 0
+lbl_801C94B4:
+/* 801C94B4 001C5114 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801C94B8 001C5118 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801C94BC 001C511C 83 C1 00 08 */ lwz r30, 8(r1)
+/* 801C94C0 001C5120 7C 08 03 A6 */ mtlr r0
+/* 801C94C4 001C5124 38 21 00 10 */ addi r1, r1, 0x10
+/* 801C94C8 001C5128 4E 80 00 20 */ blr
+
+.global __flush_buffer
+__flush_buffer:
+/* 801C94CC 001C512C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801C94D0 001C5130 7C 08 02 A6 */ mflr r0
+/* 801C94D4 001C5134 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801C94D8 001C5138 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801C94DC 001C513C 7C 9F 23 78 */ mr r31, r4
+/* 801C94E0 001C5140 93 C1 00 08 */ stw r30, 8(r1)
+/* 801C94E4 001C5144 7C 7E 1B 78 */ mr r30, r3
+/* 801C94E8 001C5148 80 A3 00 1C */ lwz r5, 0x1c(r3)
+/* 801C94EC 001C514C 80 03 00 24 */ lwz r0, 0x24(r3)
+/* 801C94F0 001C5150 7C 05 00 51 */ subf. r0, r5, r0
+/* 801C94F4 001C5154 41 82 00 50 */ beq lbl_801C9544
+/* 801C94F8 001C5158 81 9E 00 40 */ lwz r12, 0x40(r30)
+/* 801C94FC 001C515C 7C A4 2B 78 */ mr r4, r5
+/* 801C9500 001C5160 90 03 00 28 */ stw r0, 0x28(r3)
+/* 801C9504 001C5164 38 BE 00 28 */ addi r5, r30, 0x28
+/* 801C9508 001C5168 80 63 00 00 */ lwz r3, 0(r3)
+/* 801C950C 001C516C 80 DE 00 48 */ lwz r6, 0x48(r30)
+/* 801C9510 001C5170 7D 89 03 A6 */ mtctr r12
+/* 801C9514 001C5174 4E 80 04 21 */ bctrl
+/* 801C9518 001C5178 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C951C 001C517C 41 82 00 0C */ beq lbl_801C9528
+/* 801C9520 001C5180 80 1E 00 28 */ lwz r0, 0x28(r30)
+/* 801C9524 001C5184 90 1F 00 00 */ stw r0, 0(r31)
+lbl_801C9528:
+/* 801C9528 001C5188 2C 03 00 00 */ cmpwi r3, 0
+/* 801C952C 001C518C 41 82 00 08 */ beq lbl_801C9534
+/* 801C9530 001C5190 48 00 00 3C */ b lbl_801C956C
+lbl_801C9534:
+/* 801C9534 001C5194 80 7E 00 18 */ lwz r3, 0x18(r30)
+/* 801C9538 001C5198 80 1E 00 28 */ lwz r0, 0x28(r30)
+/* 801C953C 001C519C 7C 03 02 14 */ add r0, r3, r0
+/* 801C9540 001C51A0 90 1E 00 18 */ stw r0, 0x18(r30)
+lbl_801C9544:
+/* 801C9544 001C51A4 80 9E 00 18 */ lwz r4, 0x18(r30)
+/* 801C9548 001C51A8 38 60 00 00 */ li r3, 0
+/* 801C954C 001C51AC 80 1E 00 2C */ lwz r0, 0x2c(r30)
+/* 801C9550 001C51B0 80 DE 00 1C */ lwz r6, 0x1c(r30)
+/* 801C9554 001C51B4 80 BE 00 20 */ lwz r5, 0x20(r30)
+/* 801C9558 001C51B8 7C 80 00 38 */ and r0, r4, r0
+/* 801C955C 001C51BC 90 DE 00 24 */ stw r6, 0x24(r30)
+/* 801C9560 001C51C0 7C 00 28 50 */ subf r0, r0, r5
+/* 801C9564 001C51C4 90 1E 00 28 */ stw r0, 0x28(r30)
+/* 801C9568 001C51C8 90 9E 00 34 */ stw r4, 0x34(r30)
+lbl_801C956C:
+/* 801C956C 001C51CC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801C9570 001C51D0 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801C9574 001C51D4 83 C1 00 08 */ lwz r30, 8(r1)
+/* 801C9578 001C51D8 7C 08 03 A6 */ mtlr r0
+/* 801C957C 001C51DC 38 21 00 10 */ addi r1, r1, 0x10
+/* 801C9580 001C51E0 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/direct_io.s b/asm/libstdc++/direct_io.s new file mode 100644 index 0000000..6d75f9d --- /dev/null +++ b/asm/libstdc++/direct_io.s @@ -0,0 +1,459 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global fread
+fread:
+/* 801C9584 001C51E4 48 00 00 04 */ b __fread
+
+__fread:
+/* 801C9588 001C51E8 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 801C958C 001C51EC 7C 08 02 A6 */ mflr r0
+/* 801C9590 001C51F0 90 01 00 34 */ stw r0, 0x34(r1)
+/* 801C9594 001C51F4 BF 21 00 14 */ stmw r25, 0x14(r1)
+/* 801C9598 001C51F8 7C 9B 23 78 */ mr r27, r4
+/* 801C959C 001C51FC 7C DC 33 78 */ mr r28, r6
+/* 801C95A0 001C5200 7C 7A 1B 78 */ mr r26, r3
+/* 801C95A4 001C5204 7C B9 2B 78 */ mr r25, r5
+/* 801C95A8 001C5208 38 80 00 00 */ li r4, 0
+/* 801C95AC 001C520C 7F 83 E3 78 */ mr r3, r28
+/* 801C95B0 001C5210 48 00 72 B5 */ bl func_801D0864
+/* 801C95B4 001C5214 2C 03 00 00 */ cmpwi r3, 0
+/* 801C95B8 001C5218 40 82 00 10 */ bne lbl_801C95C8
+/* 801C95BC 001C521C 7F 83 E3 78 */ mr r3, r28
+/* 801C95C0 001C5220 38 80 FF FF */ li r4, -1
+/* 801C95C4 001C5224 48 00 72 A1 */ bl func_801D0864
+lbl_801C95C8:
+/* 801C95C8 001C5228 7F DB C9 D7 */ mullw. r30, r27, r25
+/* 801C95CC 001C522C 41 82 00 1C */ beq lbl_801C95E8
+/* 801C95D0 001C5230 88 1C 00 0A */ lbz r0, 0xa(r28)
+/* 801C95D4 001C5234 2C 00 00 00 */ cmpwi r0, 0
+/* 801C95D8 001C5238 40 82 00 10 */ bne lbl_801C95E8
+/* 801C95DC 001C523C 80 7C 00 04 */ lwz r3, 4(r28)
+/* 801C95E0 001C5240 54 60 57 7F */ rlwinm. r0, r3, 0xa, 0x1d, 0x1f
+/* 801C95E4 001C5244 40 82 00 0C */ bne lbl_801C95F0
+lbl_801C95E8:
+/* 801C95E8 001C5248 38 60 00 00 */ li r3, 0
+/* 801C95EC 001C524C 48 00 02 C8 */ b lbl_801C98B4
+lbl_801C95F0:
+/* 801C95F0 001C5250 54 60 6F FF */ rlwinm. r0, r3, 0xd, 0x1f, 0x1f
+/* 801C95F4 001C5254 3B E0 00 01 */ li r31, 1
+/* 801C95F8 001C5258 41 82 00 14 */ beq lbl_801C960C
+/* 801C95FC 001C525C 54 60 3F BE */ rlwinm r0, r3, 7, 0x1e, 0x1f
+/* 801C9600 001C5260 28 00 00 02 */ cmplwi r0, 2
+/* 801C9604 001C5264 41 82 00 08 */ beq lbl_801C960C
+/* 801C9608 001C5268 3B E0 00 00 */ li r31, 0
+lbl_801C960C:
+/* 801C960C 001C526C 80 7C 00 08 */ lwz r3, 8(r28)
+/* 801C9610 001C5270 54 60 1F 7F */ rlwinm. r0, r3, 3, 0x1d, 0x1f
+/* 801C9614 001C5274 40 82 00 24 */ bne lbl_801C9638
+/* 801C9618 001C5278 80 1C 00 04 */ lwz r0, 4(r28)
+/* 801C961C 001C527C 54 00 2F FF */ rlwinm. r0, r0, 5, 0x1f, 0x1f
+/* 801C9620 001C5280 41 82 00 18 */ beq lbl_801C9638
+/* 801C9624 001C5284 38 00 00 02 */ li r0, 2
+/* 801C9628 001C5288 50 03 E8 04 */ rlwimi r3, r0, 0x1d, 0, 2
+/* 801C962C 001C528C 38 00 00 00 */ li r0, 0
+/* 801C9630 001C5290 90 7C 00 08 */ stw r3, 8(r28)
+/* 801C9634 001C5294 90 1C 00 28 */ stw r0, 0x28(r28)
+lbl_801C9638:
+/* 801C9638 001C5298 80 1C 00 08 */ lwz r0, 8(r28)
+/* 801C963C 001C529C 54 00 1F 7E */ srwi r0, r0, 0x1d
+/* 801C9640 001C52A0 28 00 00 02 */ cmplwi r0, 2
+/* 801C9644 001C52A4 40 80 00 1C */ bge lbl_801C9660
+/* 801C9648 001C52A8 38 60 00 01 */ li r3, 1
+/* 801C964C 001C52AC 38 00 00 00 */ li r0, 0
+/* 801C9650 001C52B0 98 7C 00 0A */ stb r3, 0xa(r28)
+/* 801C9654 001C52B4 38 60 00 00 */ li r3, 0
+/* 801C9658 001C52B8 90 1C 00 28 */ stw r0, 0x28(r28)
+/* 801C965C 001C52BC 48 00 02 58 */ b lbl_801C98B4
+lbl_801C9660:
+/* 801C9660 001C52C0 80 1C 00 04 */ lwz r0, 4(r28)
+/* 801C9664 001C52C4 54 00 3F FF */ rlwinm. r0, r0, 7, 0x1f, 0x1f
+/* 801C9668 001C52C8 41 82 00 28 */ beq lbl_801C9690
+/* 801C966C 001C52CC 4B FF E2 CD */ bl __flush_line_buffered_output_files
+/* 801C9670 001C52D0 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9674 001C52D4 41 82 00 1C */ beq lbl_801C9690
+/* 801C9678 001C52D8 38 60 00 01 */ li r3, 1
+/* 801C967C 001C52DC 38 00 00 00 */ li r0, 0
+/* 801C9680 001C52E0 98 7C 00 0A */ stb r3, 0xa(r28)
+/* 801C9684 001C52E4 38 60 00 00 */ li r3, 0
+/* 801C9688 001C52E8 90 1C 00 28 */ stw r0, 0x28(r28)
+/* 801C968C 001C52EC 48 00 02 28 */ b lbl_801C98B4
+lbl_801C9690:
+/* 801C9690 001C52F0 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C9694 001C52F4 3B A0 00 00 */ li r29, 0
+/* 801C9698 001C52F8 41 82 00 AC */ beq lbl_801C9744
+/* 801C969C 001C52FC 80 1C 00 08 */ lwz r0, 8(r28)
+/* 801C96A0 001C5300 54 00 1F 7E */ srwi r0, r0, 0x1d
+/* 801C96A4 001C5304 28 00 00 03 */ cmplwi r0, 3
+/* 801C96A8 001C5308 41 80 00 9C */ blt lbl_801C9744
+lbl_801C96AC:
+/* 801C96AC 001C530C 7F 83 E3 78 */ mr r3, r28
+/* 801C96B0 001C5310 38 80 00 00 */ li r4, 0
+/* 801C96B4 001C5314 48 00 71 B1 */ bl func_801D0864
+/* 801C96B8 001C5318 2C 03 00 01 */ cmpwi r3, 1
+/* 801C96BC 001C531C 40 82 00 28 */ bne lbl_801C96E4
+/* 801C96C0 001C5320 80 1C 00 08 */ lwz r0, 8(r28)
+/* 801C96C4 001C5324 3B BD 00 02 */ addi r29, r29, 2
+/* 801C96C8 001C5328 3B DE FF FE */ addi r30, r30, -2
+/* 801C96CC 001C532C 54 00 27 3C */ rlwinm r0, r0, 4, 0x1c, 0x1e
+/* 801C96D0 001C5330 7C 7C 02 14 */ add r3, r28, r0
+/* 801C96D4 001C5334 A0 03 00 0C */ lhz r0, 0xc(r3)
+/* 801C96D8 001C5338 B0 1A 00 00 */ sth r0, 0(r26)
+/* 801C96DC 001C533C 3B 5A 00 02 */ addi r26, r26, 2
+/* 801C96E0 001C5340 48 00 00 24 */ b lbl_801C9704
+lbl_801C96E4:
+/* 801C96E4 001C5344 80 1C 00 08 */ lwz r0, 8(r28)
+/* 801C96E8 001C5348 3B BD 00 01 */ addi r29, r29, 1
+/* 801C96EC 001C534C 3B DE FF FF */ addi r30, r30, -1
+/* 801C96F0 001C5350 54 00 1F 7E */ srwi r0, r0, 0x1d
+/* 801C96F4 001C5354 7C 7C 02 14 */ add r3, r28, r0
+/* 801C96F8 001C5358 88 03 00 0C */ lbz r0, 0xc(r3)
+/* 801C96FC 001C535C 98 1A 00 00 */ stb r0, 0(r26)
+/* 801C9700 001C5360 3B 5A 00 01 */ addi r26, r26, 1
+lbl_801C9704:
+/* 801C9704 001C5364 80 9C 00 08 */ lwz r4, 8(r28)
+/* 801C9708 001C5368 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C970C 001C536C 54 83 1F 7E */ srwi r3, r4, 0x1d
+/* 801C9710 001C5370 38 03 FF FF */ addi r0, r3, -1
+/* 801C9714 001C5374 50 04 E8 04 */ rlwimi r4, r0, 0x1d, 0, 2
+/* 801C9718 001C5378 90 9C 00 08 */ stw r4, 8(r28)
+/* 801C971C 001C537C 41 82 00 10 */ beq lbl_801C972C
+/* 801C9720 001C5380 54 80 1F 7E */ srwi r0, r4, 0x1d
+/* 801C9724 001C5384 28 00 00 03 */ cmplwi r0, 3
+/* 801C9728 001C5388 40 80 FF 84 */ bge lbl_801C96AC
+lbl_801C972C:
+/* 801C972C 001C538C 80 1C 00 08 */ lwz r0, 8(r28)
+/* 801C9730 001C5390 54 00 1F 7E */ srwi r0, r0, 0x1d
+/* 801C9734 001C5394 28 00 00 02 */ cmplwi r0, 2
+/* 801C9738 001C5398 40 82 00 0C */ bne lbl_801C9744
+/* 801C973C 001C539C 80 1C 00 30 */ lwz r0, 0x30(r28)
+/* 801C9740 001C53A0 90 1C 00 28 */ stw r0, 0x28(r28)
+lbl_801C9744:
+/* 801C9744 001C53A4 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C9748 001C53A8 41 82 00 D8 */ beq lbl_801C9820
+/* 801C974C 001C53AC 80 1C 00 28 */ lwz r0, 0x28(r28)
+/* 801C9750 001C53B0 2C 00 00 00 */ cmpwi r0, 0
+/* 801C9754 001C53B4 40 82 00 0C */ bne lbl_801C9760
+/* 801C9758 001C53B8 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C975C 001C53BC 41 82 00 C4 */ beq lbl_801C9820
+lbl_801C9760:
+/* 801C9760 001C53C0 80 1C 00 28 */ lwz r0, 0x28(r28)
+/* 801C9764 001C53C4 2C 00 00 00 */ cmpwi r0, 0
+/* 801C9768 001C53C8 40 82 00 5C */ bne lbl_801C97C4
+/* 801C976C 001C53CC 7F 83 E3 78 */ mr r3, r28
+/* 801C9770 001C53D0 38 80 00 00 */ li r4, 0
+/* 801C9774 001C53D4 38 A0 00 00 */ li r5, 0
+/* 801C9778 001C53D8 4B FF FC 59 */ bl __load_buffer
+/* 801C977C 001C53DC 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9780 001C53E0 41 82 00 44 */ beq lbl_801C97C4
+/* 801C9784 001C53E4 2C 03 00 01 */ cmpwi r3, 1
+/* 801C9788 001C53E8 40 82 00 18 */ bne lbl_801C97A0
+/* 801C978C 001C53EC 38 60 00 01 */ li r3, 1
+/* 801C9790 001C53F0 38 00 00 00 */ li r0, 0
+/* 801C9794 001C53F4 98 7C 00 0A */ stb r3, 0xa(r28)
+/* 801C9798 001C53F8 90 1C 00 28 */ stw r0, 0x28(r28)
+/* 801C979C 001C53FC 48 00 00 20 */ b lbl_801C97BC
+lbl_801C97A0:
+/* 801C97A0 001C5400 80 7C 00 08 */ lwz r3, 8(r28)
+/* 801C97A4 001C5404 38 80 00 00 */ li r4, 0
+/* 801C97A8 001C5408 38 00 00 01 */ li r0, 1
+/* 801C97AC 001C540C 90 9C 00 28 */ stw r4, 0x28(r28)
+/* 801C97B0 001C5410 54 63 00 FE */ clrlwi r3, r3, 3
+/* 801C97B4 001C5414 90 7C 00 08 */ stw r3, 8(r28)
+/* 801C97B8 001C5418 98 1C 00 09 */ stb r0, 9(r28)
+lbl_801C97BC:
+/* 801C97BC 001C541C 3B C0 00 00 */ li r30, 0
+/* 801C97C0 001C5420 48 00 00 60 */ b lbl_801C9820
+lbl_801C97C4:
+/* 801C97C4 001C5424 80 BC 00 28 */ lwz r5, 0x28(r28)
+/* 801C97C8 001C5428 7C 05 F0 40 */ cmplw r5, r30
+/* 801C97CC 001C542C 90 A1 00 08 */ stw r5, 8(r1)
+/* 801C97D0 001C5430 40 81 00 0C */ ble lbl_801C97DC
+/* 801C97D4 001C5434 7F C5 F3 78 */ mr r5, r30
+/* 801C97D8 001C5438 93 C1 00 08 */ stw r30, 8(r1)
+lbl_801C97DC:
+/* 801C97DC 001C543C 80 9C 00 24 */ lwz r4, 0x24(r28)
+/* 801C97E0 001C5440 7F 43 D3 78 */ mr r3, r26
+/* 801C97E4 001C5444 4B E3 A8 1D */ bl memcpy
+/* 801C97E8 001C5448 80 81 00 08 */ lwz r4, 8(r1)
+/* 801C97EC 001C544C 80 7C 00 24 */ lwz r3, 0x24(r28)
+/* 801C97F0 001C5450 80 1C 00 28 */ lwz r0, 0x28(r28)
+/* 801C97F4 001C5454 7F C4 F0 51 */ subf. r30, r4, r30
+/* 801C97F8 001C5458 7C 63 22 14 */ add r3, r3, r4
+/* 801C97FC 001C545C 7F 5A 22 14 */ add r26, r26, r4
+/* 801C9800 001C5460 90 7C 00 24 */ stw r3, 0x24(r28)
+/* 801C9804 001C5464 7F BD 22 14 */ add r29, r29, r4
+/* 801C9808 001C5468 80 61 00 08 */ lwz r3, 8(r1)
+/* 801C980C 001C546C 7C 03 00 50 */ subf r0, r3, r0
+/* 801C9810 001C5470 90 1C 00 28 */ stw r0, 0x28(r28)
+/* 801C9814 001C5474 41 82 00 0C */ beq lbl_801C9820
+/* 801C9818 001C5478 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C981C 001C547C 40 82 FF 44 */ bne lbl_801C9760
+lbl_801C9820:
+/* 801C9820 001C5480 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C9824 001C5484 41 82 00 8C */ beq lbl_801C98B0
+/* 801C9828 001C5488 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C982C 001C548C 40 82 00 84 */ bne lbl_801C98B0
+/* 801C9830 001C5490 83 FC 00 1C */ lwz r31, 0x1c(r28)
+/* 801C9834 001C5494 7F 83 E3 78 */ mr r3, r28
+/* 801C9838 001C5498 83 3C 00 20 */ lwz r25, 0x20(r28)
+/* 801C983C 001C549C 38 81 00 08 */ addi r4, r1, 8
+/* 801C9840 001C54A0 93 5C 00 1C */ stw r26, 0x1c(r28)
+/* 801C9844 001C54A4 38 A0 00 01 */ li r5, 1
+/* 801C9848 001C54A8 93 DC 00 20 */ stw r30, 0x20(r28)
+/* 801C984C 001C54AC 4B FF FB 85 */ bl __load_buffer
+/* 801C9850 001C54B0 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9854 001C54B4 41 82 00 3C */ beq lbl_801C9890
+/* 801C9858 001C54B8 2C 03 00 01 */ cmpwi r3, 1
+/* 801C985C 001C54BC 40 82 00 18 */ bne lbl_801C9874
+/* 801C9860 001C54C0 38 60 00 01 */ li r3, 1
+/* 801C9864 001C54C4 38 00 00 00 */ li r0, 0
+/* 801C9868 001C54C8 98 7C 00 0A */ stb r3, 0xa(r28)
+/* 801C986C 001C54CC 90 1C 00 28 */ stw r0, 0x28(r28)
+/* 801C9870 001C54D0 48 00 00 20 */ b lbl_801C9890
+lbl_801C9874:
+/* 801C9874 001C54D4 80 7C 00 08 */ lwz r3, 8(r28)
+/* 801C9878 001C54D8 38 80 00 00 */ li r4, 0
+/* 801C987C 001C54DC 38 00 00 01 */ li r0, 1
+/* 801C9880 001C54E0 90 9C 00 28 */ stw r4, 0x28(r28)
+/* 801C9884 001C54E4 54 63 00 FE */ clrlwi r3, r3, 3
+/* 801C9888 001C54E8 90 7C 00 08 */ stw r3, 8(r28)
+/* 801C988C 001C54EC 98 1C 00 09 */ stb r0, 9(r28)
+lbl_801C9890:
+/* 801C9890 001C54F0 80 01 00 08 */ lwz r0, 8(r1)
+/* 801C9894 001C54F4 7F 83 E3 78 */ mr r3, r28
+/* 801C9898 001C54F8 93 FC 00 1C */ stw r31, 0x1c(r28)
+/* 801C989C 001C54FC 7F BD 02 14 */ add r29, r29, r0
+/* 801C98A0 001C5500 93 3C 00 20 */ stw r25, 0x20(r28)
+/* 801C98A4 001C5504 4B FF FB 05 */ bl __prep_buffer
+/* 801C98A8 001C5508 38 00 00 00 */ li r0, 0
+/* 801C98AC 001C550C 90 1C 00 28 */ stw r0, 0x28(r28)
+lbl_801C98B0:
+/* 801C98B0 001C5510 7C 7D DB 96 */ divwu r3, r29, r27
+lbl_801C98B4:
+/* 801C98B4 001C5514 BB 21 00 14 */ lmw r25, 0x14(r1)
+/* 801C98B8 001C5518 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 801C98BC 001C551C 7C 08 03 A6 */ mtlr r0
+/* 801C98C0 001C5520 38 21 00 30 */ addi r1, r1, 0x30
+/* 801C98C4 001C5524 4E 80 00 20 */ blr
+
+.global __fwrite
+__fwrite:
+/* 801C98C8 001C5528 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 801C98CC 001C552C 7C 08 02 A6 */ mflr r0
+/* 801C98D0 001C5530 90 01 00 34 */ stw r0, 0x34(r1)
+/* 801C98D4 001C5534 BF 21 00 14 */ stmw r25, 0x14(r1)
+/* 801C98D8 001C5538 7C 9B 23 78 */ mr r27, r4
+/* 801C98DC 001C553C 7C DC 33 78 */ mr r28, r6
+/* 801C98E0 001C5540 7C 7A 1B 78 */ mr r26, r3
+/* 801C98E4 001C5544 7C B9 2B 78 */ mr r25, r5
+/* 801C98E8 001C5548 38 80 00 00 */ li r4, 0
+/* 801C98EC 001C554C 7F 83 E3 78 */ mr r3, r28
+/* 801C98F0 001C5550 48 00 6F 75 */ bl func_801D0864
+/* 801C98F4 001C5554 2C 03 00 00 */ cmpwi r3, 0
+/* 801C98F8 001C5558 40 82 00 10 */ bne lbl_801C9908
+/* 801C98FC 001C555C 7F 83 E3 78 */ mr r3, r28
+/* 801C9900 001C5560 38 80 FF FF */ li r4, -1
+/* 801C9904 001C5564 48 00 6F 61 */ bl func_801D0864
+lbl_801C9908:
+/* 801C9908 001C5568 7F DB C9 D7 */ mullw. r30, r27, r25
+/* 801C990C 001C556C 41 82 00 1C */ beq lbl_801C9928
+/* 801C9910 001C5570 88 1C 00 0A */ lbz r0, 0xa(r28)
+/* 801C9914 001C5574 2C 00 00 00 */ cmpwi r0, 0
+/* 801C9918 001C5578 40 82 00 10 */ bne lbl_801C9928
+/* 801C991C 001C557C 80 1C 00 04 */ lwz r0, 4(r28)
+/* 801C9920 001C5580 54 00 57 7F */ rlwinm. r0, r0, 0xa, 0x1d, 0x1f
+/* 801C9924 001C5584 40 82 00 0C */ bne lbl_801C9930
+lbl_801C9928:
+/* 801C9928 001C5588 38 60 00 00 */ li r3, 0
+/* 801C992C 001C558C 48 00 02 90 */ b lbl_801C9BBC
+lbl_801C9930:
+/* 801C9930 001C5590 28 00 00 02 */ cmplwi r0, 2
+/* 801C9934 001C5594 40 82 00 08 */ bne lbl_801C993C
+/* 801C9938 001C5598 48 00 0E 79 */ bl __stdio_atexit
+lbl_801C993C:
+/* 801C993C 001C559C 80 7C 00 04 */ lwz r3, 4(r28)
+/* 801C9940 001C55A0 3B E0 00 01 */ li r31, 1
+/* 801C9944 001C55A4 38 80 00 00 */ li r4, 0
+/* 801C9948 001C55A8 54 60 6F FF */ rlwinm. r0, r3, 0xd, 0x1f, 0x1f
+/* 801C994C 001C55AC 41 82 00 10 */ beq lbl_801C995C
+/* 801C9950 001C55B0 54 60 3F BE */ rlwinm r0, r3, 7, 0x1e, 0x1f
+/* 801C9954 001C55B4 28 00 00 02 */ cmplwi r0, 2
+/* 801C9958 001C55B8 40 82 00 08 */ bne lbl_801C9960
+lbl_801C995C:
+/* 801C995C 001C55BC 38 80 00 01 */ li r4, 1
+lbl_801C9960:
+/* 801C9960 001C55C0 2C 04 00 00 */ cmpwi r4, 0
+/* 801C9964 001C55C4 40 82 00 18 */ bne lbl_801C997C
+/* 801C9968 001C55C8 80 1C 00 04 */ lwz r0, 4(r28)
+/* 801C996C 001C55CC 54 00 3F BE */ rlwinm r0, r0, 7, 0x1e, 0x1f
+/* 801C9970 001C55D0 28 00 00 01 */ cmplwi r0, 1
+/* 801C9974 001C55D4 41 82 00 08 */ beq lbl_801C997C
+/* 801C9978 001C55D8 3B E0 00 00 */ li r31, 0
+lbl_801C997C:
+/* 801C997C 001C55DC 80 1C 00 08 */ lwz r0, 8(r28)
+/* 801C9980 001C55E0 54 00 1F 7F */ rlwinm. r0, r0, 3, 0x1d, 0x1f
+/* 801C9984 001C55E4 40 82 00 54 */ bne lbl_801C99D8
+/* 801C9988 001C55E8 80 7C 00 04 */ lwz r3, 4(r28)
+/* 801C998C 001C55EC 54 60 2F BD */ rlwinm. r0, r3, 5, 0x1e, 0x1e
+/* 801C9990 001C55F0 54 60 2F 7E */ rlwinm r0, r3, 5, 0x1d, 0x1f
+/* 801C9994 001C55F4 41 82 00 44 */ beq lbl_801C99D8
+/* 801C9998 001C55F8 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
+/* 801C999C 001C55FC 41 82 00 24 */ beq lbl_801C99C0
+/* 801C99A0 001C5600 7F 83 E3 78 */ mr r3, r28
+/* 801C99A4 001C5604 38 80 00 00 */ li r4, 0
+/* 801C99A8 001C5608 38 A0 00 02 */ li r5, 2
+/* 801C99AC 001C560C 48 00 05 81 */ bl _fseek
+/* 801C99B0 001C5610 2C 03 00 00 */ cmpwi r3, 0
+/* 801C99B4 001C5614 41 82 00 0C */ beq lbl_801C99C0
+/* 801C99B8 001C5618 38 60 00 00 */ li r3, 0
+/* 801C99BC 001C561C 48 00 02 00 */ b lbl_801C9BBC
+lbl_801C99C0:
+/* 801C99C0 001C5620 80 1C 00 08 */ lwz r0, 8(r28)
+/* 801C99C4 001C5624 38 60 00 01 */ li r3, 1
+/* 801C99C8 001C5628 50 60 E8 04 */ rlwimi r0, r3, 0x1d, 0, 2
+/* 801C99CC 001C562C 90 1C 00 08 */ stw r0, 8(r28)
+/* 801C99D0 001C5630 7F 83 E3 78 */ mr r3, r28
+/* 801C99D4 001C5634 4B FF F9 D5 */ bl __prep_buffer
+lbl_801C99D8:
+/* 801C99D8 001C5638 80 1C 00 08 */ lwz r0, 8(r28)
+/* 801C99DC 001C563C 54 00 1F 7E */ srwi r0, r0, 0x1d
+/* 801C99E0 001C5640 28 00 00 01 */ cmplwi r0, 1
+/* 801C99E4 001C5644 41 82 00 1C */ beq lbl_801C9A00
+/* 801C99E8 001C5648 38 60 00 01 */ li r3, 1
+/* 801C99EC 001C564C 38 00 00 00 */ li r0, 0
+/* 801C99F0 001C5650 98 7C 00 0A */ stb r3, 0xa(r28)
+/* 801C99F4 001C5654 38 60 00 00 */ li r3, 0
+/* 801C99F8 001C5658 90 1C 00 28 */ stw r0, 0x28(r28)
+/* 801C99FC 001C565C 48 00 01 C0 */ b lbl_801C9BBC
+lbl_801C9A00:
+/* 801C9A00 001C5660 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C9A04 001C5664 3B A0 00 00 */ li r29, 0
+/* 801C9A08 001C5668 41 82 01 28 */ beq lbl_801C9B30
+/* 801C9A0C 001C566C 80 7C 00 1C */ lwz r3, 0x1c(r28)
+/* 801C9A10 001C5670 80 9C 00 24 */ lwz r4, 0x24(r28)
+/* 801C9A14 001C5674 7C 04 18 40 */ cmplw r4, r3
+/* 801C9A18 001C5678 40 82 00 0C */ bne lbl_801C9A24
+/* 801C9A1C 001C567C 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C9A20 001C5680 41 82 01 10 */ beq lbl_801C9B30
+lbl_801C9A24:
+/* 801C9A24 001C5684 80 1C 00 20 */ lwz r0, 0x20(r28)
+/* 801C9A28 001C5688 7C 63 20 50 */ subf r3, r3, r4
+/* 801C9A2C 001C568C 7C 03 00 50 */ subf r0, r3, r0
+/* 801C9A30 001C5690 90 1C 00 28 */ stw r0, 0x28(r28)
+lbl_801C9A34:
+/* 801C9A34 001C5694 80 BC 00 28 */ lwz r5, 0x28(r28)
+/* 801C9A38 001C5698 3B 20 00 00 */ li r25, 0
+/* 801C9A3C 001C569C 7C 05 F0 40 */ cmplw r5, r30
+/* 801C9A40 001C56A0 90 A1 00 08 */ stw r5, 8(r1)
+/* 801C9A44 001C56A4 40 81 00 0C */ ble lbl_801C9A50
+/* 801C9A48 001C56A8 7F C5 F3 78 */ mr r5, r30
+/* 801C9A4C 001C56AC 93 C1 00 08 */ stw r30, 8(r1)
+lbl_801C9A50:
+/* 801C9A50 001C56B0 80 1C 00 04 */ lwz r0, 4(r28)
+/* 801C9A54 001C56B4 54 00 3F BE */ rlwinm r0, r0, 7, 0x1e, 0x1f
+/* 801C9A58 001C56B8 28 00 00 01 */ cmplwi r0, 1
+/* 801C9A5C 001C56BC 40 82 00 30 */ bne lbl_801C9A8C
+/* 801C9A60 001C56C0 2C 05 00 00 */ cmpwi r5, 0
+/* 801C9A64 001C56C4 41 82 00 28 */ beq lbl_801C9A8C
+/* 801C9A68 001C56C8 7F 43 D3 78 */ mr r3, r26
+/* 801C9A6C 001C56CC 38 80 00 0A */ li r4, 0xa
+/* 801C9A70 001C56D0 48 00 08 FD */ bl __memrchr
+/* 801C9A74 001C56D4 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9A78 001C56D8 7C 79 1B 78 */ mr r25, r3
+/* 801C9A7C 001C56DC 41 82 00 10 */ beq lbl_801C9A8C
+/* 801C9A80 001C56E0 38 03 00 01 */ addi r0, r3, 1
+/* 801C9A84 001C56E4 7C BA 00 50 */ subf r5, r26, r0
+/* 801C9A88 001C56E8 90 A1 00 08 */ stw r5, 8(r1)
+lbl_801C9A8C:
+/* 801C9A8C 001C56EC 80 A1 00 08 */ lwz r5, 8(r1)
+/* 801C9A90 001C56F0 2C 05 00 00 */ cmpwi r5, 0
+/* 801C9A94 001C56F4 41 82 00 38 */ beq lbl_801C9ACC
+/* 801C9A98 001C56F8 80 7C 00 24 */ lwz r3, 0x24(r28)
+/* 801C9A9C 001C56FC 7F 44 D3 78 */ mr r4, r26
+/* 801C9AA0 001C5700 4B E3 A5 61 */ bl memcpy
+/* 801C9AA4 001C5704 80 81 00 08 */ lwz r4, 8(r1)
+/* 801C9AA8 001C5708 80 7C 00 24 */ lwz r3, 0x24(r28)
+/* 801C9AAC 001C570C 80 1C 00 28 */ lwz r0, 0x28(r28)
+/* 801C9AB0 001C5710 7F 5A 22 14 */ add r26, r26, r4
+/* 801C9AB4 001C5714 7C 63 22 14 */ add r3, r3, r4
+/* 801C9AB8 001C5718 7F C4 F0 50 */ subf r30, r4, r30
+/* 801C9ABC 001C571C 90 7C 00 24 */ stw r3, 0x24(r28)
+/* 801C9AC0 001C5720 80 61 00 08 */ lwz r3, 8(r1)
+/* 801C9AC4 001C5724 7C 03 00 50 */ subf r0, r3, r0
+/* 801C9AC8 001C5728 90 1C 00 28 */ stw r0, 0x28(r28)
+lbl_801C9ACC:
+/* 801C9ACC 001C572C 80 1C 00 28 */ lwz r0, 0x28(r28)
+/* 801C9AD0 001C5730 2C 00 00 00 */ cmpwi r0, 0
+/* 801C9AD4 001C5734 41 82 00 18 */ beq lbl_801C9AEC
+/* 801C9AD8 001C5738 2C 19 00 00 */ cmpwi r25, 0
+/* 801C9ADC 001C573C 40 82 00 10 */ bne lbl_801C9AEC
+/* 801C9AE0 001C5740 80 1C 00 04 */ lwz r0, 4(r28)
+/* 801C9AE4 001C5744 54 00 3F BF */ rlwinm. r0, r0, 7, 0x1e, 0x1f
+/* 801C9AE8 001C5748 40 82 00 30 */ bne lbl_801C9B18
+lbl_801C9AEC:
+/* 801C9AEC 001C574C 7F 83 E3 78 */ mr r3, r28
+/* 801C9AF0 001C5750 38 80 00 00 */ li r4, 0
+/* 801C9AF4 001C5754 4B FF F9 D9 */ bl __flush_buffer
+/* 801C9AF8 001C5758 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9AFC 001C575C 41 82 00 1C */ beq lbl_801C9B18
+/* 801C9B00 001C5760 38 60 00 01 */ li r3, 1
+/* 801C9B04 001C5764 38 00 00 00 */ li r0, 0
+/* 801C9B08 001C5768 98 7C 00 0A */ stb r3, 0xa(r28)
+/* 801C9B0C 001C576C 3B C0 00 00 */ li r30, 0
+/* 801C9B10 001C5770 90 1C 00 28 */ stw r0, 0x28(r28)
+/* 801C9B14 001C5774 48 00 00 1C */ b lbl_801C9B30
+lbl_801C9B18:
+/* 801C9B18 001C5778 80 01 00 08 */ lwz r0, 8(r1)
+/* 801C9B1C 001C577C 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C9B20 001C5780 7F BD 02 14 */ add r29, r29, r0
+/* 801C9B24 001C5784 41 82 00 0C */ beq lbl_801C9B30
+/* 801C9B28 001C5788 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C9B2C 001C578C 40 82 FF 08 */ bne lbl_801C9A34
+lbl_801C9B30:
+/* 801C9B30 001C5790 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C9B34 001C5794 41 82 00 6C */ beq lbl_801C9BA0
+/* 801C9B38 001C5798 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C9B3C 001C579C 40 82 00 64 */ bne lbl_801C9BA0
+/* 801C9B40 001C57A0 83 3C 00 1C */ lwz r25, 0x1c(r28)
+/* 801C9B44 001C57A4 7C 1A F2 14 */ add r0, r26, r30
+/* 801C9B48 001C57A8 83 FC 00 20 */ lwz r31, 0x20(r28)
+/* 801C9B4C 001C57AC 7F 83 E3 78 */ mr r3, r28
+/* 801C9B50 001C57B0 93 5C 00 1C */ stw r26, 0x1c(r28)
+/* 801C9B54 001C57B4 38 81 00 08 */ addi r4, r1, 8
+/* 801C9B58 001C57B8 93 DC 00 20 */ stw r30, 0x20(r28)
+/* 801C9B5C 001C57BC 90 1C 00 24 */ stw r0, 0x24(r28)
+/* 801C9B60 001C57C0 4B FF F9 6D */ bl __flush_buffer
+/* 801C9B64 001C57C4 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9B68 001C57C8 41 82 00 18 */ beq lbl_801C9B80
+/* 801C9B6C 001C57CC 38 60 00 01 */ li r3, 1
+/* 801C9B70 001C57D0 38 00 00 00 */ li r0, 0
+/* 801C9B74 001C57D4 98 7C 00 0A */ stb r3, 0xa(r28)
+/* 801C9B78 001C57D8 90 1C 00 28 */ stw r0, 0x28(r28)
+/* 801C9B7C 001C57DC 48 00 00 0C */ b lbl_801C9B88
+lbl_801C9B80:
+/* 801C9B80 001C57E0 80 01 00 08 */ lwz r0, 8(r1)
+/* 801C9B84 001C57E4 7F BD 02 14 */ add r29, r29, r0
+lbl_801C9B88:
+/* 801C9B88 001C57E8 93 3C 00 1C */ stw r25, 0x1c(r28)
+/* 801C9B8C 001C57EC 7F 83 E3 78 */ mr r3, r28
+/* 801C9B90 001C57F0 93 FC 00 20 */ stw r31, 0x20(r28)
+/* 801C9B94 001C57F4 4B FF F8 15 */ bl __prep_buffer
+/* 801C9B98 001C57F8 38 00 00 00 */ li r0, 0
+/* 801C9B9C 001C57FC 90 1C 00 28 */ stw r0, 0x28(r28)
+lbl_801C9BA0:
+/* 801C9BA0 001C5800 80 1C 00 04 */ lwz r0, 4(r28)
+/* 801C9BA4 001C5804 54 00 3F BE */ rlwinm r0, r0, 7, 0x1e, 0x1f
+/* 801C9BA8 001C5808 28 00 00 02 */ cmplwi r0, 2
+/* 801C9BAC 001C580C 41 82 00 0C */ beq lbl_801C9BB8
+/* 801C9BB0 001C5810 38 00 00 00 */ li r0, 0
+/* 801C9BB4 001C5814 90 1C 00 28 */ stw r0, 0x28(r28)
+lbl_801C9BB8:
+/* 801C9BB8 001C5818 7C 7D DB 96 */ divwu r3, r29, r27
+lbl_801C9BBC:
+/* 801C9BBC 001C581C BB 21 00 14 */ lmw r25, 0x14(r1)
+/* 801C9BC0 001C5820 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 801C9BC4 001C5824 7C 08 03 A6 */ mtlr r0
+/* 801C9BC8 001C5828 38 21 00 30 */ addi r1, r1, 0x30
+/* 801C9BCC 001C582C 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/file_io.s b/asm/libstdc++/file_io.s new file mode 100644 index 0000000..be053b1 --- /dev/null +++ b/asm/libstdc++/file_io.s @@ -0,0 +1,214 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global fclose
+fclose:
+/* 801C9BD0 001C5830 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 801C9BD4 001C5834 7C 08 02 A6 */ mflr r0
+/* 801C9BD8 001C5838 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9BDC 001C583C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801C9BE0 001C5840 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 801C9BE4 001C5844 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 801C9BE8 001C5848 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 801C9BEC 001C584C 7C 7D 1B 78 */ mr r29, r3
+/* 801C9BF0 001C5850 40 82 00 0C */ bne lbl_801C9BFC
+/* 801C9BF4 001C5854 38 60 FF FF */ li r3, -1
+/* 801C9BF8 001C5858 48 00 00 78 */ b lbl_801C9C70
+lbl_801C9BFC:
+/* 801C9BFC 001C585C 80 03 00 04 */ lwz r0, 4(r3)
+/* 801C9C00 001C5860 54 00 57 7F */ rlwinm. r0, r0, 0xa, 0x1d, 0x1f
+/* 801C9C04 001C5864 40 82 00 0C */ bne lbl_801C9C10
+/* 801C9C08 001C5868 38 60 00 00 */ li r3, 0
+/* 801C9C0C 001C586C 48 00 00 64 */ b lbl_801C9C70
+lbl_801C9C10:
+/* 801C9C10 001C5870 48 00 00 7D */ bl fflush
+/* 801C9C14 001C5874 81 9D 00 44 */ lwz r12, 0x44(r29)
+/* 801C9C18 001C5878 7C 7E 1B 78 */ mr r30, r3
+/* 801C9C1C 001C587C 80 7D 00 00 */ lwz r3, 0(r29)
+/* 801C9C20 001C5880 7D 89 03 A6 */ mtctr r12
+/* 801C9C24 001C5884 4E 80 04 21 */ bctrl
+/* 801C9C28 001C5888 80 1D 00 08 */ lwz r0, 8(r29)
+/* 801C9C2C 001C588C 38 A0 00 00 */ li r5, 0
+/* 801C9C30 001C5890 80 9D 00 04 */ lwz r4, 4(r29)
+/* 801C9C34 001C5894 7C 7F 1B 78 */ mr r31, r3
+/* 801C9C38 001C5898 54 00 27 FF */ rlwinm. r0, r0, 4, 0x1f, 0x1f
+/* 801C9C3C 001C589C 90 BD 00 00 */ stw r5, 0(r29)
+/* 801C9C40 001C58A0 54 84 02 8C */ rlwinm r4, r4, 0, 0xa, 6
+/* 801C9C44 001C58A4 90 9D 00 04 */ stw r4, 4(r29)
+/* 801C9C48 001C58A8 41 82 00 0C */ beq lbl_801C9C54
+/* 801C9C4C 001C58AC 80 7D 00 1C */ lwz r3, 0x1c(r29)
+/* 801C9C50 001C58B0 4B E4 0B 75 */ bl func_8000A7C4
+lbl_801C9C54:
+/* 801C9C54 001C58B4 2C 1E 00 00 */ cmpwi r30, 0
+/* 801C9C58 001C58B8 38 00 00 00 */ li r0, 0
+/* 801C9C5C 001C58BC 40 82 00 0C */ bne lbl_801C9C68
+/* 801C9C60 001C58C0 2C 1F 00 00 */ cmpwi r31, 0
+/* 801C9C64 001C58C4 41 82 00 08 */ beq lbl_801C9C6C
+lbl_801C9C68:
+/* 801C9C68 001C58C8 38 00 00 01 */ li r0, 1
+lbl_801C9C6C:
+/* 801C9C6C 001C58CC 7C 60 00 D0 */ neg r3, r0
+lbl_801C9C70:
+/* 801C9C70 001C58D0 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 801C9C74 001C58D4 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 801C9C78 001C58D8 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 801C9C7C 001C58DC 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 801C9C80 001C58E0 7C 08 03 A6 */ mtlr r0
+/* 801C9C84 001C58E4 38 21 00 20 */ addi r1, r1, 0x20
+/* 801C9C88 001C58E8 4E 80 00 20 */ blr
+
+.global fflush
+fflush:
+/* 801C9C8C 001C58EC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801C9C90 001C58F0 7C 08 02 A6 */ mflr r0
+/* 801C9C94 001C58F4 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9C98 001C58F8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801C9C9C 001C58FC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801C9CA0 001C5900 7C 7F 1B 78 */ mr r31, r3
+/* 801C9CA4 001C5904 93 C1 00 08 */ stw r30, 8(r1)
+/* 801C9CA8 001C5908 40 82 00 0C */ bne lbl_801C9CB4
+/* 801C9CAC 001C590C 4B FF DD 11 */ bl __flush_all
+/* 801C9CB0 001C5910 48 00 00 F8 */ b lbl_801C9DA8
+lbl_801C9CB4:
+/* 801C9CB4 001C5914 88 03 00 0A */ lbz r0, 0xa(r3)
+/* 801C9CB8 001C5918 2C 00 00 00 */ cmpwi r0, 0
+/* 801C9CBC 001C591C 40 82 00 10 */ bne lbl_801C9CCC
+/* 801C9CC0 001C5920 80 83 00 04 */ lwz r4, 4(r3)
+/* 801C9CC4 001C5924 54 80 57 7F */ rlwinm. r0, r4, 0xa, 0x1d, 0x1f
+/* 801C9CC8 001C5928 40 82 00 0C */ bne lbl_801C9CD4
+lbl_801C9CCC:
+/* 801C9CCC 001C592C 38 60 FF FF */ li r3, -1
+/* 801C9CD0 001C5930 48 00 00 D8 */ b lbl_801C9DA8
+lbl_801C9CD4:
+/* 801C9CD4 001C5934 54 80 2F 7E */ rlwinm r0, r4, 5, 0x1d, 0x1f
+/* 801C9CD8 001C5938 28 00 00 01 */ cmplwi r0, 1
+/* 801C9CDC 001C593C 40 82 00 0C */ bne lbl_801C9CE8
+/* 801C9CE0 001C5940 38 60 00 00 */ li r3, 0
+/* 801C9CE4 001C5944 48 00 00 C4 */ b lbl_801C9DA8
+lbl_801C9CE8:
+/* 801C9CE8 001C5948 80 83 00 08 */ lwz r4, 8(r3)
+/* 801C9CEC 001C594C 54 80 1F 7E */ srwi r0, r4, 0x1d
+/* 801C9CF0 001C5950 28 00 00 03 */ cmplwi r0, 3
+/* 801C9CF4 001C5954 41 80 00 10 */ blt lbl_801C9D04
+/* 801C9CF8 001C5958 38 00 00 02 */ li r0, 2
+/* 801C9CFC 001C595C 50 04 E8 04 */ rlwimi r4, r0, 0x1d, 0, 2
+/* 801C9D00 001C5960 90 83 00 08 */ stw r4, 8(r3)
+lbl_801C9D04:
+/* 801C9D04 001C5964 80 03 00 08 */ lwz r0, 8(r3)
+/* 801C9D08 001C5968 54 00 1F 7E */ srwi r0, r0, 0x1d
+/* 801C9D0C 001C596C 28 00 00 02 */ cmplwi r0, 2
+/* 801C9D10 001C5970 40 82 00 0C */ bne lbl_801C9D1C
+/* 801C9D14 001C5974 38 00 00 00 */ li r0, 0
+/* 801C9D18 001C5978 90 03 00 28 */ stw r0, 0x28(r3)
+lbl_801C9D1C:
+/* 801C9D1C 001C597C 80 83 00 08 */ lwz r4, 8(r3)
+/* 801C9D20 001C5980 54 80 1F 7E */ srwi r0, r4, 0x1d
+/* 801C9D24 001C5984 28 00 00 01 */ cmplwi r0, 1
+/* 801C9D28 001C5988 41 82 00 14 */ beq lbl_801C9D3C
+/* 801C9D2C 001C598C 54 80 00 FE */ clrlwi r0, r4, 3
+/* 801C9D30 001C5990 90 03 00 08 */ stw r0, 8(r3)
+/* 801C9D34 001C5994 38 60 00 00 */ li r3, 0
+/* 801C9D38 001C5998 48 00 00 70 */ b lbl_801C9DA8
+lbl_801C9D3C:
+/* 801C9D3C 001C599C 80 03 00 04 */ lwz r0, 4(r3)
+/* 801C9D40 001C59A0 54 00 57 7E */ rlwinm r0, r0, 0xa, 0x1d, 0x1f
+/* 801C9D44 001C59A4 28 00 00 01 */ cmplwi r0, 1
+/* 801C9D48 001C59A8 41 82 00 0C */ beq lbl_801C9D54
+/* 801C9D4C 001C59AC 3B C0 00 00 */ li r30, 0
+/* 801C9D50 001C59B0 48 00 00 10 */ b lbl_801C9D60
+lbl_801C9D54:
+/* 801C9D54 001C59B4 7F E3 FB 78 */ mr r3, r31
+/* 801C9D58 001C59B8 48 00 01 D1 */ bl ftell
+/* 801C9D5C 001C59BC 7C 7E 1B 78 */ mr r30, r3
+lbl_801C9D60:
+/* 801C9D60 001C59C0 7F E3 FB 78 */ mr r3, r31
+/* 801C9D64 001C59C4 38 80 00 00 */ li r4, 0
+/* 801C9D68 001C59C8 4B FF F7 65 */ bl __flush_buffer
+/* 801C9D6C 001C59CC 2C 03 00 00 */ cmpwi r3, 0
+/* 801C9D70 001C59D0 41 82 00 1C */ beq lbl_801C9D8C
+/* 801C9D74 001C59D4 38 60 00 01 */ li r3, 1
+/* 801C9D78 001C59D8 38 00 00 00 */ li r0, 0
+/* 801C9D7C 001C59DC 98 7F 00 0A */ stb r3, 0xa(r31)
+/* 801C9D80 001C59E0 38 60 FF FF */ li r3, -1
+/* 801C9D84 001C59E4 90 1F 00 28 */ stw r0, 0x28(r31)
+/* 801C9D88 001C59E8 48 00 00 20 */ b lbl_801C9DA8
+lbl_801C9D8C:
+/* 801C9D8C 001C59EC 80 1F 00 08 */ lwz r0, 8(r31)
+/* 801C9D90 001C59F0 38 80 00 00 */ li r4, 0
+/* 801C9D94 001C59F4 93 DF 00 18 */ stw r30, 0x18(r31)
+/* 801C9D98 001C59F8 38 60 00 00 */ li r3, 0
+/* 801C9D9C 001C59FC 54 00 00 FE */ clrlwi r0, r0, 3
+/* 801C9DA0 001C5A00 90 1F 00 08 */ stw r0, 8(r31)
+/* 801C9DA4 001C5A04 90 9F 00 28 */ stw r4, 0x28(r31)
+lbl_801C9DA8:
+/* 801C9DA8 001C5A08 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801C9DAC 001C5A0C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801C9DB0 001C5A10 83 C1 00 08 */ lwz r30, 8(r1)
+/* 801C9DB4 001C5A14 7C 08 03 A6 */ mtlr r0
+/* 801C9DB8 001C5A18 38 21 00 10 */ addi r1, r1, 0x10
+/* 801C9DBC 001C5A1C 4E 80 00 20 */ blr
+
+.global __msl_strnicmp
+__msl_strnicmp:
+/* 801C9DC0 001C5A20 3C C0 80 42 */ lis r6, lbl_80422D48@ha
+/* 801C9DC4 001C5A24 38 C6 2D 48 */ addi r6, r6, lbl_80422D48@l
+/* 801C9DC8 001C5A28 80 C6 00 38 */ lwz r6, 0x38(r6)
+/* 801C9DCC 001C5A2C 7C A9 03 A6 */ mtctr r5
+/* 801C9DD0 001C5A30 2C 05 00 00 */ cmpwi r5, 0
+/* 801C9DD4 001C5A34 40 81 00 A4 */ ble lbl_801C9E78
+lbl_801C9DD8:
+/* 801C9DD8 001C5A38 88 A3 00 00 */ lbz r5, 0(r3)
+/* 801C9DDC 001C5A3C 38 00 00 00 */ li r0, 0
+/* 801C9DE0 001C5A40 38 63 00 01 */ addi r3, r3, 1
+/* 801C9DE4 001C5A44 7C A7 07 75 */ extsb. r7, r5
+/* 801C9DE8 001C5A48 41 80 00 0C */ blt lbl_801C9DF4
+/* 801C9DEC 001C5A4C 2C 07 01 00 */ cmpwi r7, 0x100
+/* 801C9DF0 001C5A50 41 80 00 08 */ blt lbl_801C9DF8
+lbl_801C9DF4:
+/* 801C9DF4 001C5A54 38 00 00 01 */ li r0, 1
+lbl_801C9DF8:
+/* 801C9DF8 001C5A58 2C 00 00 00 */ cmpwi r0, 0
+/* 801C9DFC 001C5A5C 41 82 00 08 */ beq lbl_801C9E04
+/* 801C9E00 001C5A60 48 00 00 0C */ b lbl_801C9E0C
+lbl_801C9E04:
+/* 801C9E04 001C5A64 80 A6 00 10 */ lwz r5, 0x10(r6)
+/* 801C9E08 001C5A68 7C E5 38 AE */ lbzx r7, r5, r7
+lbl_801C9E0C:
+/* 801C9E0C 001C5A6C 88 A4 00 00 */ lbz r5, 0(r4)
+/* 801C9E10 001C5A70 7C E8 07 74 */ extsb r8, r7
+/* 801C9E14 001C5A74 38 00 00 00 */ li r0, 0
+/* 801C9E18 001C5A78 38 84 00 01 */ addi r4, r4, 1
+/* 801C9E1C 001C5A7C 7C A7 07 75 */ extsb. r7, r5
+/* 801C9E20 001C5A80 41 80 00 0C */ blt lbl_801C9E2C
+/* 801C9E24 001C5A84 2C 07 01 00 */ cmpwi r7, 0x100
+/* 801C9E28 001C5A88 41 80 00 08 */ blt lbl_801C9E30
+lbl_801C9E2C:
+/* 801C9E2C 001C5A8C 38 00 00 01 */ li r0, 1
+lbl_801C9E30:
+/* 801C9E30 001C5A90 2C 00 00 00 */ cmpwi r0, 0
+/* 801C9E34 001C5A94 41 82 00 08 */ beq lbl_801C9E3C
+/* 801C9E38 001C5A98 48 00 00 0C */ b lbl_801C9E44
+lbl_801C9E3C:
+/* 801C9E3C 001C5A9C 80 A6 00 10 */ lwz r5, 0x10(r6)
+/* 801C9E40 001C5AA0 7C E5 38 AE */ lbzx r7, r5, r7
+lbl_801C9E44:
+/* 801C9E44 001C5AA4 7C E0 07 74 */ extsb r0, r7
+/* 801C9E48 001C5AA8 7C 08 00 00 */ cmpw r8, r0
+/* 801C9E4C 001C5AAC 40 80 00 0C */ bge lbl_801C9E58
+/* 801C9E50 001C5AB0 38 60 FF FF */ li r3, -1
+/* 801C9E54 001C5AB4 4E 80 00 20 */ blr
+lbl_801C9E58:
+/* 801C9E58 001C5AB8 40 81 00 0C */ ble lbl_801C9E64
+/* 801C9E5C 001C5ABC 38 60 00 01 */ li r3, 1
+/* 801C9E60 001C5AC0 4E 80 00 20 */ blr
+lbl_801C9E64:
+/* 801C9E64 001C5AC4 2C 08 00 00 */ cmpwi r8, 0
+/* 801C9E68 001C5AC8 40 82 00 0C */ bne lbl_801C9E74
+/* 801C9E6C 001C5ACC 38 60 00 00 */ li r3, 0
+/* 801C9E70 001C5AD0 4E 80 00 20 */ blr
+lbl_801C9E74:
+/* 801C9E74 001C5AD4 42 00 FF 64 */ bdnz lbl_801C9DD8
+lbl_801C9E78:
+/* 801C9E78 001C5AD8 38 60 00 00 */ li r3, 0
+/* 801C9E7C 001C5ADC 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/math_api.s b/asm/libstdc++/math_api.s new file mode 100644 index 0000000..847341c --- /dev/null +++ b/asm/libstdc++/math_api.s @@ -0,0 +1,87 @@ +.include "macros.inc" + +.section .text, "ax" # 0x80006980 - 0x803E1E60 + +.global __fpclassifyf +__fpclassifyf: +/* 801CA6B4 001C6314 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CA6B8 001C6318 3C 00 7F 80 */ lis r0, 0x7f80 +/* 801CA6BC 001C631C D0 21 00 08 */ stfs f1, 8(r1) +/* 801CA6C0 001C6320 80 81 00 08 */ lwz r4, 8(r1) +/* 801CA6C4 001C6324 54 83 00 50 */ rlwinm r3, r4, 0, 1, 8 +/* 801CA6C8 001C6328 7C 03 00 00 */ cmpw r3, r0 +/* 801CA6CC 001C632C 41 82 00 14 */ beq lbl_801CA6E0 +/* 801CA6D0 001C6330 40 80 00 3C */ bge lbl_801CA70C +/* 801CA6D4 001C6334 2C 03 00 00 */ cmpwi r3, 0 +/* 801CA6D8 001C6338 41 82 00 20 */ beq lbl_801CA6F8 +/* 801CA6DC 001C633C 48 00 00 30 */ b lbl_801CA70C +lbl_801CA6E0: +/* 801CA6E0 001C6340 54 83 02 7E */ clrlwi r3, r4, 9 +/* 801CA6E4 001C6344 7C 03 00 D0 */ neg r0, r3 +/* 801CA6E8 001C6348 7C 00 1B 78 */ or r0, r0, r3 +/* 801CA6EC 001C634C 7C 03 FE 70 */ srawi r3, r0, 0x1f +/* 801CA6F0 001C6350 38 63 00 02 */ addi r3, r3, 2 +/* 801CA6F4 001C6354 48 00 00 1C */ b lbl_801CA710 +lbl_801CA6F8: +/* 801CA6F8 001C6358 54 80 02 7F */ clrlwi. r0, r4, 9 +/* 801CA6FC 001C635C 38 60 00 03 */ li r3, 3 +/* 801CA700 001C6360 41 82 00 10 */ beq lbl_801CA710 +/* 801CA704 001C6364 38 60 00 05 */ li r3, 5 +/* 801CA708 001C6368 48 00 00 08 */ b lbl_801CA710 +lbl_801CA70C: +/* 801CA70C 001C636C 38 60 00 04 */ li r3, 4 +lbl_801CA710: +/* 801CA710 001C6370 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CA714 001C6374 4E 80 00 20 */ blr + +.global __signbitd +__signbitd: +/* 801CA718 001C6378 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CA71C 001C637C D8 21 00 08 */ stfd f1, 8(r1) +/* 801CA720 001C6380 80 01 00 08 */ lwz r0, 8(r1) +/* 801CA724 001C6384 54 03 00 00 */ rlwinm r3, r0, 0, 0, 0 +/* 801CA728 001C6388 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CA72C 001C638C 4E 80 00 20 */ blr + +.global __fpclassifyd +__fpclassifyd: +/* 801CA730 001C6390 94 21 FF F0 */ stwu r1, -0x10(r1) +/* 801CA734 001C6394 3C 00 7F F0 */ lis r0, 0x7ff0 +/* 801CA738 001C6398 D8 21 00 08 */ stfd f1, 8(r1) +/* 801CA73C 001C639C 80 81 00 08 */ lwz r4, 8(r1) +/* 801CA740 001C63A0 54 83 00 56 */ rlwinm r3, r4, 0, 1, 0xb +/* 801CA744 001C63A4 7C 03 00 00 */ cmpw r3, r0 +/* 801CA748 001C63A8 41 82 00 14 */ beq lbl_801CA75C +/* 801CA74C 001C63AC 40 80 00 58 */ bge lbl_801CA7A4 +/* 801CA750 001C63B0 2C 03 00 00 */ cmpwi r3, 0 +/* 801CA754 001C63B4 41 82 00 2C */ beq lbl_801CA780 +/* 801CA758 001C63B8 48 00 00 4C */ b lbl_801CA7A4 +lbl_801CA75C: +/* 801CA75C 001C63BC 54 80 03 3F */ clrlwi. r0, r4, 0xc +/* 801CA760 001C63C0 40 82 00 10 */ bne lbl_801CA770 +/* 801CA764 001C63C4 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801CA768 001C63C8 2C 00 00 00 */ cmpwi r0, 0 +/* 801CA76C 001C63CC 41 82 00 0C */ beq lbl_801CA778 +lbl_801CA770: +/* 801CA770 001C63D0 38 60 00 01 */ li r3, 1 +/* 801CA774 001C63D4 48 00 00 34 */ b lbl_801CA7A8 +lbl_801CA778: +/* 801CA778 001C63D8 38 60 00 02 */ li r3, 2 +/* 801CA77C 001C63DC 48 00 00 2C */ b lbl_801CA7A8 +lbl_801CA780: +/* 801CA780 001C63E0 54 80 03 3F */ clrlwi. r0, r4, 0xc +/* 801CA784 001C63E4 40 82 00 10 */ bne lbl_801CA794 +/* 801CA788 001C63E8 80 01 00 0C */ lwz r0, 0xc(r1) +/* 801CA78C 001C63EC 2C 00 00 00 */ cmpwi r0, 0 +/* 801CA790 001C63F0 41 82 00 0C */ beq lbl_801CA79C +lbl_801CA794: +/* 801CA794 001C63F4 38 60 00 05 */ li r3, 5 +/* 801CA798 001C63F8 48 00 00 10 */ b lbl_801CA7A8 +lbl_801CA79C: +/* 801CA79C 001C63FC 38 60 00 03 */ li r3, 3 +/* 801CA7A0 001C6400 48 00 00 08 */ b lbl_801CA7A8 +lbl_801CA7A4: +/* 801CA7A4 001C6404 38 60 00 04 */ li r3, 4 +lbl_801CA7A8: +/* 801CA7A8 001C6408 38 21 00 10 */ addi r1, r1, 0x10 +/* 801CA7AC 001C640C 4E 80 00 20 */ blr diff --git a/asm/libstdc++/mbstring.s b/asm/libstdc++/mbstring.s new file mode 100644 index 0000000..559037d --- /dev/null +++ b/asm/libstdc++/mbstring.s @@ -0,0 +1,105 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global mbtowc
+mbtowc:
+/* 801CA13C 001C5D9C 3C C0 80 42 */ lis r6, lbl_80422D48@ha
+/* 801CA140 001C5DA0 38 C6 2D 48 */ addi r6, r6, lbl_80422D48@l
+/* 801CA144 001C5DA4 80 C6 00 38 */ lwz r6, 0x38(r6)
+/* 801CA148 001C5DA8 81 86 00 20 */ lwz r12, 0x20(r6)
+/* 801CA14C 001C5DAC 7D 89 03 A6 */ mtctr r12
+/* 801CA150 001C5DB0 4E 80 04 20 */ bctr
+
+.global __mbtowc_noconv
+__mbtowc_noconv:
+/* 801CA154 001C5DB4 2C 04 00 00 */ cmpwi r4, 0
+/* 801CA158 001C5DB8 40 82 00 0C */ bne lbl_801CA164
+/* 801CA15C 001C5DBC 38 60 00 00 */ li r3, 0
+/* 801CA160 001C5DC0 4E 80 00 20 */ blr
+lbl_801CA164:
+/* 801CA164 001C5DC4 2C 05 00 00 */ cmpwi r5, 0
+/* 801CA168 001C5DC8 40 82 00 0C */ bne lbl_801CA174
+/* 801CA16C 001C5DCC 38 60 FF FF */ li r3, -1
+/* 801CA170 001C5DD0 4E 80 00 20 */ blr
+lbl_801CA174:
+/* 801CA174 001C5DD4 2C 03 00 00 */ cmpwi r3, 0
+/* 801CA178 001C5DD8 41 82 00 0C */ beq lbl_801CA184
+/* 801CA17C 001C5DDC 88 04 00 00 */ lbz r0, 0(r4)
+/* 801CA180 001C5DE0 B0 03 00 00 */ sth r0, 0(r3)
+lbl_801CA184:
+/* 801CA184 001C5DE4 88 04 00 00 */ lbz r0, 0(r4)
+/* 801CA188 001C5DE8 7C 00 07 75 */ extsb. r0, r0
+/* 801CA18C 001C5DEC 40 82 00 0C */ bne lbl_801CA198
+/* 801CA190 001C5DF0 38 60 00 00 */ li r3, 0
+/* 801CA194 001C5DF4 4E 80 00 20 */ blr
+lbl_801CA198:
+/* 801CA198 001C5DF8 38 60 00 01 */ li r3, 1
+/* 801CA19C 001C5DFC 4E 80 00 20 */ blr
+
+.global __wctomb_noconv
+__wctomb_noconv:
+/* 801CA1A0 001C5E00 2C 03 00 00 */ cmpwi r3, 0
+/* 801CA1A4 001C5E04 40 82 00 0C */ bne lbl_801CA1B0
+/* 801CA1A8 001C5E08 38 60 00 00 */ li r3, 0
+/* 801CA1AC 001C5E0C 4E 80 00 20 */ blr
+lbl_801CA1B0:
+/* 801CA1B0 001C5E10 98 83 00 00 */ stb r4, 0(r3)
+/* 801CA1B4 001C5E14 38 60 00 01 */ li r3, 1
+/* 801CA1B8 001C5E18 4E 80 00 20 */ blr
+
+.global wcstombs
+wcstombs:
+/* 801CA1BC 001C5E1C 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 801CA1C0 001C5E20 7C 08 02 A6 */ mflr r0
+/* 801CA1C4 001C5E24 2C 03 00 00 */ cmpwi r3, 0
+/* 801CA1C8 001C5E28 90 01 00 34 */ stw r0, 0x34(r1)
+/* 801CA1CC 001C5E2C BF 41 00 18 */ stmw r26, 0x18(r1)
+/* 801CA1D0 001C5E30 7C 7A 1B 78 */ mr r26, r3
+/* 801CA1D4 001C5E34 7C BB 2B 78 */ mr r27, r5
+/* 801CA1D8 001C5E38 3B A0 00 00 */ li r29, 0
+/* 801CA1DC 001C5E3C 41 82 00 0C */ beq lbl_801CA1E8
+/* 801CA1E0 001C5E40 2C 04 00 00 */ cmpwi r4, 0
+/* 801CA1E4 001C5E44 40 82 00 0C */ bne lbl_801CA1F0
+lbl_801CA1E8:
+/* 801CA1E8 001C5E48 38 60 00 00 */ li r3, 0
+/* 801CA1EC 001C5E4C 48 00 00 74 */ b lbl_801CA260
+lbl_801CA1F0:
+/* 801CA1F0 001C5E50 3F E0 80 42 */ lis r31, lbl_80422D48@ha
+/* 801CA1F4 001C5E54 7C 9C 23 78 */ mr r28, r4
+/* 801CA1F8 001C5E58 3B FF 2D 48 */ addi r31, r31, lbl_80422D48@l
+/* 801CA1FC 001C5E5C 48 00 00 58 */ b lbl_801CA254
+lbl_801CA200:
+/* 801CA200 001C5E60 A0 9C 00 00 */ lhz r4, 0(r28)
+/* 801CA204 001C5E64 2C 04 00 00 */ cmpwi r4, 0
+/* 801CA208 001C5E68 40 82 00 10 */ bne lbl_801CA218
+/* 801CA20C 001C5E6C 38 00 00 00 */ li r0, 0
+/* 801CA210 001C5E70 7C 1A E9 AE */ stbx r0, r26, r29
+/* 801CA214 001C5E74 48 00 00 48 */ b lbl_801CA25C
+lbl_801CA218:
+/* 801CA218 001C5E78 80 BF 00 38 */ lwz r5, 0x38(r31)
+/* 801CA21C 001C5E7C 38 61 00 08 */ addi r3, r1, 8
+/* 801CA220 001C5E80 81 85 00 24 */ lwz r12, 0x24(r5)
+/* 801CA224 001C5E84 7D 89 03 A6 */ mtctr r12
+/* 801CA228 001C5E88 3B 9C 00 02 */ addi r28, r28, 2
+/* 801CA22C 001C5E8C 4E 80 04 21 */ bctrl
+/* 801CA230 001C5E90 7C 1D 1A 14 */ add r0, r29, r3
+/* 801CA234 001C5E94 7C 7E 1B 78 */ mr r30, r3
+/* 801CA238 001C5E98 7C 00 D8 40 */ cmplw r0, r27
+/* 801CA23C 001C5E9C 41 81 00 20 */ bgt lbl_801CA25C
+/* 801CA240 001C5EA0 7F C5 F3 78 */ mr r5, r30
+/* 801CA244 001C5EA4 7C 7A EA 14 */ add r3, r26, r29
+/* 801CA248 001C5EA8 38 81 00 08 */ addi r4, r1, 8
+/* 801CA24C 001C5EAC 48 00 41 45 */ bl strncpy
+/* 801CA250 001C5EB0 7F BD F2 14 */ add r29, r29, r30
+lbl_801CA254:
+/* 801CA254 001C5EB4 7C 1D D8 40 */ cmplw r29, r27
+/* 801CA258 001C5EB8 40 81 FF A8 */ ble lbl_801CA200
+lbl_801CA25C:
+/* 801CA25C 001C5EBC 7F A3 EB 78 */ mr r3, r29
+lbl_801CA260:
+/* 801CA260 001C5EC0 BB 41 00 18 */ lmw r26, 0x18(r1)
+/* 801CA264 001C5EC4 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 801CA268 001C5EC8 7C 08 03 A6 */ mtlr r0
+/* 801CA26C 001C5ECC 38 21 00 30 */ addi r1, r1, 0x30
+/* 801CA270 001C5ED0 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/mem.s b/asm/libstdc++/mem.s new file mode 100644 index 0000000..4d333ae --- /dev/null +++ b/asm/libstdc++/mem.s @@ -0,0 +1,125 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global memmove
+memmove:
+/* 801CA274 001C5ED4 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801CA278 001C5ED8 7C 08 02 A6 */ mflr r0
+/* 801CA27C 001C5EDC 7C 66 22 78 */ xor r6, r3, r4
+/* 801CA280 001C5EE0 28 05 00 20 */ cmplwi r5, 0x20
+/* 801CA284 001C5EE4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CA288 001C5EE8 7C C0 00 34 */ cntlzw r0, r6
+/* 801CA28C 001C5EEC 7C 60 00 30 */ slw r0, r3, r0
+/* 801CA290 001C5EF0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801CA294 001C5EF4 7C 7F 1B 78 */ mr r31, r3
+/* 801CA298 001C5EF8 54 07 0F FE */ srwi r7, r0, 0x1f
+/* 801CA29C 001C5EFC 41 80 00 40 */ blt lbl_801CA2DC
+/* 801CA2A0 001C5F00 54 C0 07 BF */ clrlwi. r0, r6, 0x1e
+/* 801CA2A4 001C5F04 41 82 00 1C */ beq lbl_801CA2C0
+/* 801CA2A8 001C5F08 2C 07 00 00 */ cmpwi r7, 0
+/* 801CA2AC 001C5F0C 40 82 00 0C */ bne lbl_801CA2B8
+/* 801CA2B0 001C5F10 48 00 02 99 */ bl __copy_longs_unaligned
+/* 801CA2B4 001C5F14 48 00 00 20 */ b lbl_801CA2D4
+lbl_801CA2B8:
+/* 801CA2B8 001C5F18 48 00 03 51 */ bl __copy_longs_rev_unaligned
+/* 801CA2BC 001C5F1C 48 00 00 18 */ b lbl_801CA2D4
+lbl_801CA2C0:
+/* 801CA2C0 001C5F20 2C 07 00 00 */ cmpwi r7, 0
+/* 801CA2C4 001C5F24 40 82 00 0C */ bne lbl_801CA2D0
+/* 801CA2C8 001C5F28 48 00 01 1D */ bl __copy_longs_aligned
+/* 801CA2CC 001C5F2C 48 00 00 08 */ b lbl_801CA2D4
+lbl_801CA2D0:
+/* 801CA2D0 001C5F30 48 00 01 D1 */ bl __copy_longs_rev_aligned
+lbl_801CA2D4:
+/* 801CA2D4 001C5F34 7F E3 FB 78 */ mr r3, r31
+/* 801CA2D8 001C5F38 48 00 00 54 */ b lbl_801CA32C
+lbl_801CA2DC:
+/* 801CA2DC 001C5F3C 2C 07 00 00 */ cmpwi r7, 0
+/* 801CA2E0 001C5F40 40 82 00 28 */ bne lbl_801CA308
+/* 801CA2E4 001C5F44 38 84 FF FF */ addi r4, r4, -1
+/* 801CA2E8 001C5F48 38 63 FF FF */ addi r3, r3, -1
+/* 801CA2EC 001C5F4C 38 A5 00 01 */ addi r5, r5, 1
+/* 801CA2F0 001C5F50 48 00 00 0C */ b lbl_801CA2FC
+lbl_801CA2F4:
+/* 801CA2F4 001C5F54 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CA2F8 001C5F58 9C 03 00 01 */ stbu r0, 1(r3)
+lbl_801CA2FC:
+/* 801CA2FC 001C5F5C 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CA300 001C5F60 40 82 FF F4 */ bne lbl_801CA2F4
+/* 801CA304 001C5F64 48 00 00 24 */ b lbl_801CA328
+lbl_801CA308:
+/* 801CA308 001C5F68 7C 84 2A 14 */ add r4, r4, r5
+/* 801CA30C 001C5F6C 7C 63 2A 14 */ add r3, r3, r5
+/* 801CA310 001C5F70 38 A5 00 01 */ addi r5, r5, 1
+/* 801CA314 001C5F74 48 00 00 0C */ b lbl_801CA320
+lbl_801CA318:
+/* 801CA318 001C5F78 8C 04 FF FF */ lbzu r0, -1(r4)
+/* 801CA31C 001C5F7C 9C 03 FF FF */ stbu r0, -1(r3)
+lbl_801CA320:
+/* 801CA320 001C5F80 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CA324 001C5F84 40 82 FF F4 */ bne lbl_801CA318
+lbl_801CA328:
+/* 801CA328 001C5F88 7F E3 FB 78 */ mr r3, r31
+lbl_801CA32C:
+/* 801CA32C 001C5F8C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CA330 001C5F90 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801CA334 001C5F94 7C 08 03 A6 */ mtlr r0
+/* 801CA338 001C5F98 38 21 00 10 */ addi r1, r1, 0x10
+/* 801CA33C 001C5F9C 4E 80 00 20 */ blr
+
+.global memchr
+memchr:
+/* 801CA340 001C5FA0 54 84 06 3E */ clrlwi r4, r4, 0x18
+/* 801CA344 001C5FA4 38 63 FF FF */ addi r3, r3, -1
+/* 801CA348 001C5FA8 38 A5 00 01 */ addi r5, r5, 1
+/* 801CA34C 001C5FAC 48 00 00 10 */ b lbl_801CA35C
+lbl_801CA350:
+/* 801CA350 001C5FB0 8C 03 00 01 */ lbzu r0, 1(r3)
+/* 801CA354 001C5FB4 7C 00 20 40 */ cmplw r0, r4
+/* 801CA358 001C5FB8 4D 82 00 20 */ beqlr
+lbl_801CA35C:
+/* 801CA35C 001C5FBC 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CA360 001C5FC0 40 82 FF F0 */ bne lbl_801CA350
+/* 801CA364 001C5FC4 38 60 00 00 */ li r3, 0
+/* 801CA368 001C5FC8 4E 80 00 20 */ blr
+
+.global __memrchr
+__memrchr:
+/* 801CA36C 001C5FCC 7C 63 2A 14 */ add r3, r3, r5
+/* 801CA370 001C5FD0 54 84 06 3E */ clrlwi r4, r4, 0x18
+/* 801CA374 001C5FD4 38 A5 00 01 */ addi r5, r5, 1
+/* 801CA378 001C5FD8 48 00 00 10 */ b lbl_801CA388
+lbl_801CA37C:
+/* 801CA37C 001C5FDC 8C 03 FF FF */ lbzu r0, -1(r3)
+/* 801CA380 001C5FE0 7C 00 20 40 */ cmplw r0, r4
+/* 801CA384 001C5FE4 4D 82 00 20 */ beqlr
+lbl_801CA388:
+/* 801CA388 001C5FE8 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CA38C 001C5FEC 40 82 FF F0 */ bne lbl_801CA37C
+/* 801CA390 001C5FF0 38 60 00 00 */ li r3, 0
+/* 801CA394 001C5FF4 4E 80 00 20 */ blr
+
+.global memcmp
+memcmp:
+/* 801CA398 001C5FF8 38 E4 FF FF */ addi r7, r4, -1
+/* 801CA39C 001C5FFC 38 C3 FF FF */ addi r6, r3, -1
+/* 801CA3A0 001C6000 38 85 00 01 */ addi r4, r5, 1
+/* 801CA3A4 001C6004 48 00 00 30 */ b lbl_801CA3D4
+lbl_801CA3A8:
+/* 801CA3A8 001C6008 8C 66 00 01 */ lbzu r3, 1(r6)
+/* 801CA3AC 001C600C 8C 07 00 01 */ lbzu r0, 1(r7)
+/* 801CA3B0 001C6010 7C 03 00 40 */ cmplw r3, r0
+/* 801CA3B4 001C6014 41 82 00 20 */ beq lbl_801CA3D4
+/* 801CA3B8 001C6018 88 86 00 00 */ lbz r4, 0(r6)
+/* 801CA3BC 001C601C 38 60 00 01 */ li r3, 1
+/* 801CA3C0 001C6020 88 07 00 00 */ lbz r0, 0(r7)
+/* 801CA3C4 001C6024 7C 04 00 40 */ cmplw r4, r0
+/* 801CA3C8 001C6028 4C 80 00 20 */ bgelr
+/* 801CA3CC 001C602C 38 60 FF FF */ li r3, -1
+/* 801CA3D0 001C6030 4E 80 00 20 */ blr
+lbl_801CA3D4:
+/* 801CA3D4 001C6034 34 84 FF FF */ addic. r4, r4, -1
+/* 801CA3D8 001C6038 40 82 FF D0 */ bne lbl_801CA3A8
+/* 801CA3DC 001C603C 38 60 00 00 */ li r3, 0
+/* 801CA3E0 001C6040 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/mem_funcs.s b/asm/libstdc++/mem_funcs.s new file mode 100644 index 0000000..426d2cb --- /dev/null +++ b/asm/libstdc++/mem_funcs.s @@ -0,0 +1,219 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __copy_longs_aligned
+__copy_longs_aligned:
+/* 801CA3E4 001C6044 7C 03 00 D0 */ neg r0, r3
+/* 801CA3E8 001C6048 38 84 FF FF */ addi r4, r4, -1
+/* 801CA3EC 001C604C 54 06 07 BF */ clrlwi. r6, r0, 0x1e
+/* 801CA3F0 001C6050 38 63 FF FF */ addi r3, r3, -1
+/* 801CA3F4 001C6054 41 82 00 18 */ beq lbl_801CA40C
+/* 801CA3F8 001C6058 7C A6 28 50 */ subf r5, r6, r5
+lbl_801CA3FC:
+/* 801CA3FC 001C605C 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CA400 001C6060 34 C6 FF FF */ addic. r6, r6, -1
+/* 801CA404 001C6064 9C 03 00 01 */ stbu r0, 1(r3)
+/* 801CA408 001C6068 40 82 FF F4 */ bne lbl_801CA3FC
+lbl_801CA40C:
+/* 801CA40C 001C606C 54 A6 D9 7F */ rlwinm. r6, r5, 0x1b, 5, 0x1f
+/* 801CA410 001C6070 38 E4 FF FD */ addi r7, r4, -3
+/* 801CA414 001C6074 38 83 FF FD */ addi r4, r3, -3
+/* 801CA418 001C6078 41 82 00 4C */ beq lbl_801CA464
+lbl_801CA41C:
+/* 801CA41C 001C607C 80 67 00 04 */ lwz r3, 4(r7)
+/* 801CA420 001C6080 34 C6 FF FF */ addic. r6, r6, -1
+/* 801CA424 001C6084 80 07 00 08 */ lwz r0, 8(r7)
+/* 801CA428 001C6088 90 64 00 04 */ stw r3, 4(r4)
+/* 801CA42C 001C608C 80 67 00 0C */ lwz r3, 0xc(r7)
+/* 801CA430 001C6090 90 04 00 08 */ stw r0, 8(r4)
+/* 801CA434 001C6094 80 07 00 10 */ lwz r0, 0x10(r7)
+/* 801CA438 001C6098 90 64 00 0C */ stw r3, 0xc(r4)
+/* 801CA43C 001C609C 80 67 00 14 */ lwz r3, 0x14(r7)
+/* 801CA440 001C60A0 90 04 00 10 */ stw r0, 0x10(r4)
+/* 801CA444 001C60A4 80 07 00 18 */ lwz r0, 0x18(r7)
+/* 801CA448 001C60A8 90 64 00 14 */ stw r3, 0x14(r4)
+/* 801CA44C 001C60AC 80 67 00 1C */ lwz r3, 0x1c(r7)
+/* 801CA450 001C60B0 90 04 00 18 */ stw r0, 0x18(r4)
+/* 801CA454 001C60B4 84 07 00 20 */ lwzu r0, 0x20(r7)
+/* 801CA458 001C60B8 90 64 00 1C */ stw r3, 0x1c(r4)
+/* 801CA45C 001C60BC 94 04 00 20 */ stwu r0, 0x20(r4)
+/* 801CA460 001C60C0 40 82 FF BC */ bne lbl_801CA41C
+lbl_801CA464:
+/* 801CA464 001C60C4 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f
+/* 801CA468 001C60C8 41 82 00 14 */ beq lbl_801CA47C
+lbl_801CA46C:
+/* 801CA46C 001C60CC 84 07 00 04 */ lwzu r0, 4(r7)
+/* 801CA470 001C60D0 34 63 FF FF */ addic. r3, r3, -1
+/* 801CA474 001C60D4 94 04 00 04 */ stwu r0, 4(r4)
+/* 801CA478 001C60D8 40 82 FF F4 */ bne lbl_801CA46C
+lbl_801CA47C:
+/* 801CA47C 001C60DC 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
+/* 801CA480 001C60E0 38 C7 00 03 */ addi r6, r7, 3
+/* 801CA484 001C60E4 38 64 00 03 */ addi r3, r4, 3
+/* 801CA488 001C60E8 4D 82 00 20 */ beqlr
+lbl_801CA48C:
+/* 801CA48C 001C60EC 8C 06 00 01 */ lbzu r0, 1(r6)
+/* 801CA490 001C60F0 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CA494 001C60F4 9C 03 00 01 */ stbu r0, 1(r3)
+/* 801CA498 001C60F8 40 82 FF F4 */ bne lbl_801CA48C
+/* 801CA49C 001C60FC 4E 80 00 20 */ blr
+
+.global __copy_longs_rev_aligned
+__copy_longs_rev_aligned:
+/* 801CA4A0 001C6100 7C E3 2A 14 */ add r7, r3, r5
+/* 801CA4A4 001C6104 7C C4 2A 14 */ add r6, r4, r5
+/* 801CA4A8 001C6108 54 E3 07 BF */ clrlwi. r3, r7, 0x1e
+/* 801CA4AC 001C610C 41 82 00 18 */ beq lbl_801CA4C4
+/* 801CA4B0 001C6110 7C A3 28 50 */ subf r5, r3, r5
+lbl_801CA4B4:
+/* 801CA4B4 001C6114 8C 06 FF FF */ lbzu r0, -1(r6)
+/* 801CA4B8 001C6118 34 63 FF FF */ addic. r3, r3, -1
+/* 801CA4BC 001C611C 9C 07 FF FF */ stbu r0, -1(r7)
+/* 801CA4C0 001C6120 40 82 FF F4 */ bne lbl_801CA4B4
+lbl_801CA4C4:
+/* 801CA4C4 001C6124 54 A4 D9 7F */ rlwinm. r4, r5, 0x1b, 5, 0x1f
+/* 801CA4C8 001C6128 41 82 00 4C */ beq lbl_801CA514
+lbl_801CA4CC:
+/* 801CA4CC 001C612C 80 66 FF FC */ lwz r3, -4(r6)
+/* 801CA4D0 001C6130 34 84 FF FF */ addic. r4, r4, -1
+/* 801CA4D4 001C6134 80 06 FF F8 */ lwz r0, -8(r6)
+/* 801CA4D8 001C6138 90 67 FF FC */ stw r3, -4(r7)
+/* 801CA4DC 001C613C 80 66 FF F4 */ lwz r3, -0xc(r6)
+/* 801CA4E0 001C6140 90 07 FF F8 */ stw r0, -8(r7)
+/* 801CA4E4 001C6144 80 06 FF F0 */ lwz r0, -0x10(r6)
+/* 801CA4E8 001C6148 90 67 FF F4 */ stw r3, -0xc(r7)
+/* 801CA4EC 001C614C 80 66 FF EC */ lwz r3, -0x14(r6)
+/* 801CA4F0 001C6150 90 07 FF F0 */ stw r0, -0x10(r7)
+/* 801CA4F4 001C6154 80 06 FF E8 */ lwz r0, -0x18(r6)
+/* 801CA4F8 001C6158 90 67 FF EC */ stw r3, -0x14(r7)
+/* 801CA4FC 001C615C 80 66 FF E4 */ lwz r3, -0x1c(r6)
+/* 801CA500 001C6160 90 07 FF E8 */ stw r0, -0x18(r7)
+/* 801CA504 001C6164 84 06 FF E0 */ lwzu r0, -0x20(r6)
+/* 801CA508 001C6168 90 67 FF E4 */ stw r3, -0x1c(r7)
+/* 801CA50C 001C616C 94 07 FF E0 */ stwu r0, -0x20(r7)
+/* 801CA510 001C6170 40 82 FF BC */ bne lbl_801CA4CC
+lbl_801CA514:
+/* 801CA514 001C6174 54 A3 F7 7F */ rlwinm. r3, r5, 0x1e, 0x1d, 0x1f
+/* 801CA518 001C6178 41 82 00 14 */ beq lbl_801CA52C
+lbl_801CA51C:
+/* 801CA51C 001C617C 84 06 FF FC */ lwzu r0, -4(r6)
+/* 801CA520 001C6180 34 63 FF FF */ addic. r3, r3, -1
+/* 801CA524 001C6184 94 07 FF FC */ stwu r0, -4(r7)
+/* 801CA528 001C6188 40 82 FF F4 */ bne lbl_801CA51C
+lbl_801CA52C:
+/* 801CA52C 001C618C 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
+/* 801CA530 001C6190 4D 82 00 20 */ beqlr
+lbl_801CA534:
+/* 801CA534 001C6194 8C 06 FF FF */ lbzu r0, -1(r6)
+/* 801CA538 001C6198 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CA53C 001C619C 9C 07 FF FF */ stbu r0, -1(r7)
+/* 801CA540 001C61A0 40 82 FF F4 */ bne lbl_801CA534
+/* 801CA544 001C61A4 4E 80 00 20 */ blr
+
+.global __copy_longs_unaligned
+__copy_longs_unaligned:
+/* 801CA548 001C61A8 7C 03 00 D0 */ neg r0, r3
+/* 801CA54C 001C61AC 39 04 FF FF */ addi r8, r4, -1
+/* 801CA550 001C61B0 54 06 07 BF */ clrlwi. r6, r0, 0x1e
+/* 801CA554 001C61B4 38 63 FF FF */ addi r3, r3, -1
+/* 801CA558 001C61B8 41 82 00 18 */ beq lbl_801CA570
+/* 801CA55C 001C61BC 7C A6 28 50 */ subf r5, r6, r5
+lbl_801CA560:
+/* 801CA560 001C61C0 8C 08 00 01 */ lbzu r0, 1(r8)
+/* 801CA564 001C61C4 34 C6 FF FF */ addic. r6, r6, -1
+/* 801CA568 001C61C8 9C 03 00 01 */ stbu r0, 1(r3)
+/* 801CA56C 001C61CC 40 82 FF F4 */ bne lbl_801CA560
+lbl_801CA570:
+/* 801CA570 001C61D0 38 08 00 01 */ addi r0, r8, 1
+/* 801CA574 001C61D4 38 C3 FF FD */ addi r6, r3, -3
+/* 801CA578 001C61D8 54 09 07 BE */ clrlwi r9, r0, 0x1e
+/* 801CA57C 001C61DC 54 A7 E8 FE */ srwi r7, r5, 3
+/* 801CA580 001C61E0 7D 09 40 50 */ subf r8, r9, r8
+/* 801CA584 001C61E4 54 0A 1E F8 */ rlwinm r10, r0, 3, 0x1b, 0x1c
+/* 801CA588 001C61E8 84 88 00 01 */ lwzu r4, 1(r8)
+/* 801CA58C 001C61EC 21 6A 00 20 */ subfic r11, r10, 0x20
+lbl_801CA590:
+/* 801CA590 001C61F0 80 68 00 04 */ lwz r3, 4(r8)
+/* 801CA594 001C61F4 7C 84 50 30 */ slw r4, r4, r10
+/* 801CA598 001C61F8 34 E7 FF FF */ addic. r7, r7, -1
+/* 801CA59C 001C61FC 7C 60 5C 30 */ srw r0, r3, r11
+/* 801CA5A0 001C6200 7C 63 50 30 */ slw r3, r3, r10
+/* 801CA5A4 001C6204 7C 80 03 78 */ or r0, r4, r0
+/* 801CA5A8 001C6208 90 06 00 04 */ stw r0, 4(r6)
+/* 801CA5AC 001C620C 84 88 00 08 */ lwzu r4, 8(r8)
+/* 801CA5B0 001C6210 7C 80 5C 30 */ srw r0, r4, r11
+/* 801CA5B4 001C6214 7C 60 03 78 */ or r0, r3, r0
+/* 801CA5B8 001C6218 94 06 00 08 */ stwu r0, 8(r6)
+/* 801CA5BC 001C621C 40 82 FF D4 */ bne lbl_801CA590
+/* 801CA5C0 001C6220 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d
+/* 801CA5C4 001C6224 41 82 00 18 */ beq lbl_801CA5DC
+/* 801CA5C8 001C6228 84 08 00 04 */ lwzu r0, 4(r8)
+/* 801CA5CC 001C622C 7C 83 50 30 */ slw r3, r4, r10
+/* 801CA5D0 001C6230 7C 00 5C 30 */ srw r0, r0, r11
+/* 801CA5D4 001C6234 7C 60 03 78 */ or r0, r3, r0
+/* 801CA5D8 001C6238 94 06 00 04 */ stwu r0, 4(r6)
+lbl_801CA5DC:
+/* 801CA5DC 001C623C 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
+/* 801CA5E0 001C6240 38 88 00 03 */ addi r4, r8, 3
+/* 801CA5E4 001C6244 38 66 00 03 */ addi r3, r6, 3
+/* 801CA5E8 001C6248 4D 82 00 20 */ beqlr
+/* 801CA5EC 001C624C 20 09 00 04 */ subfic r0, r9, 4
+/* 801CA5F0 001C6250 7C 80 20 50 */ subf r4, r0, r4
+lbl_801CA5F4:
+/* 801CA5F4 001C6254 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CA5F8 001C6258 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CA5FC 001C625C 9C 03 00 01 */ stbu r0, 1(r3)
+/* 801CA600 001C6260 40 82 FF F4 */ bne lbl_801CA5F4
+/* 801CA604 001C6264 4E 80 00 20 */ blr
+
+.global __copy_longs_rev_unaligned
+__copy_longs_rev_unaligned:
+/* 801CA608 001C6268 7D 63 2A 14 */ add r11, r3, r5
+/* 801CA60C 001C626C 7D 44 2A 14 */ add r10, r4, r5
+/* 801CA610 001C6270 55 63 07 BF */ clrlwi. r3, r11, 0x1e
+/* 801CA614 001C6274 41 82 00 18 */ beq lbl_801CA62C
+/* 801CA618 001C6278 7C A3 28 50 */ subf r5, r3, r5
+lbl_801CA61C:
+/* 801CA61C 001C627C 8C 0A FF FF */ lbzu r0, -1(r10)
+/* 801CA620 001C6280 34 63 FF FF */ addic. r3, r3, -1
+/* 801CA624 001C6284 9C 0B FF FF */ stbu r0, -1(r11)
+/* 801CA628 001C6288 40 82 FF F4 */ bne lbl_801CA61C
+lbl_801CA62C:
+/* 801CA62C 001C628C 55 48 1E F8 */ rlwinm r8, r10, 3, 0x1b, 0x1c
+/* 801CA630 001C6290 55 47 07 BE */ clrlwi r7, r10, 0x1e
+/* 801CA634 001C6294 21 28 00 20 */ subfic r9, r8, 0x20
+/* 801CA638 001C6298 54 A6 E8 FE */ srwi r6, r5, 3
+/* 801CA63C 001C629C 20 07 00 04 */ subfic r0, r7, 4
+/* 801CA640 001C62A0 7D 4A 02 14 */ add r10, r10, r0
+/* 801CA644 001C62A4 84 8A FF FC */ lwzu r4, -4(r10)
+lbl_801CA648:
+/* 801CA648 001C62A8 80 0A FF FC */ lwz r0, -4(r10)
+/* 801CA64C 001C62AC 7C 83 4C 30 */ srw r3, r4, r9
+/* 801CA650 001C62B0 34 C6 FF FF */ addic. r6, r6, -1
+/* 801CA654 001C62B4 7C 04 40 30 */ slw r4, r0, r8
+/* 801CA658 001C62B8 7C 00 4C 30 */ srw r0, r0, r9
+/* 801CA65C 001C62BC 7C 83 1B 78 */ or r3, r4, r3
+/* 801CA660 001C62C0 90 6B FF FC */ stw r3, -4(r11)
+/* 801CA664 001C62C4 84 8A FF F8 */ lwzu r4, -8(r10)
+/* 801CA668 001C62C8 7C 83 40 30 */ slw r3, r4, r8
+/* 801CA66C 001C62CC 7C 60 03 78 */ or r0, r3, r0
+/* 801CA670 001C62D0 94 0B FF F8 */ stwu r0, -8(r11)
+/* 801CA674 001C62D4 40 82 FF D4 */ bne lbl_801CA648
+/* 801CA678 001C62D8 54 A0 07 7B */ rlwinm. r0, r5, 0, 0x1d, 0x1d
+/* 801CA67C 001C62DC 41 82 00 18 */ beq lbl_801CA694
+/* 801CA680 001C62E0 84 6A FF FC */ lwzu r3, -4(r10)
+/* 801CA684 001C62E4 7C 80 4C 30 */ srw r0, r4, r9
+/* 801CA688 001C62E8 7C 63 40 30 */ slw r3, r3, r8
+/* 801CA68C 001C62EC 7C 60 03 78 */ or r0, r3, r0
+/* 801CA690 001C62F0 94 0B FF FC */ stwu r0, -4(r11)
+lbl_801CA694:
+/* 801CA694 001C62F4 54 A5 07 BF */ clrlwi. r5, r5, 0x1e
+/* 801CA698 001C62F8 4D 82 00 20 */ beqlr
+/* 801CA69C 001C62FC 7D 4A 3A 14 */ add r10, r10, r7
+lbl_801CA6A0:
+/* 801CA6A0 001C6300 8C 0A FF FF */ lbzu r0, -1(r10)
+/* 801CA6A4 001C6304 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CA6A8 001C6308 9C 0B FF FF */ stbu r0, -1(r11)
+/* 801CA6AC 001C630C 40 82 FF F4 */ bne lbl_801CA6A0
+/* 801CA6B0 001C6310 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/misc_io.s b/asm/libstdc++/misc_io.s new file mode 100644 index 0000000..1ccfb0c --- /dev/null +++ b/asm/libstdc++/misc_io.s @@ -0,0 +1,10 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __stdio_atexit
+__stdio_atexit:
+/* 801CA7B0 001C6410 3C 60 80 1C */ lis r3, __close_all@ha
+/* 801CA7B4 001C6414 38 63 78 94 */ addi r3, r3, __close_all@l
+/* 801CA7B8 001C6418 90 6D 9F D8 */ stw r3, lbl_8063F298-_SDA_BASE_(r13)
+/* 801CA7BC 001C641C 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/printf.s b/asm/libstdc++/printf.s new file mode 100644 index 0000000..78a82cd --- /dev/null +++ b/asm/libstdc++/printf.s @@ -0,0 +1,2649 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+parse_format:
+/* 801CA7C0 001C6420 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 801CA7C4 001C6424 7C 08 02 A6 */ mflr r0
+/* 801CA7C8 001C6428 38 E0 00 00 */ li r7, 0
+/* 801CA7CC 001C642C 88 C3 00 01 */ lbz r6, 1(r3)
+/* 801CA7D0 001C6430 90 01 00 34 */ stw r0, 0x34(r1)
+/* 801CA7D4 001C6434 39 00 00 01 */ li r8, 1
+/* 801CA7D8 001C6438 7C C6 07 74 */ extsb r6, r6
+/* 801CA7DC 001C643C 93 E1 00 2C */ stw r31, 0x2c(r1)
+/* 801CA7E0 001C6440 2C 06 00 25 */ cmpwi r6, 0x25
+/* 801CA7E4 001C6444 3B E3 00 01 */ addi r31, r3, 1
+/* 801CA7E8 001C6448 93 C1 00 28 */ stw r30, 0x28(r1)
+/* 801CA7EC 001C644C 7C BE 2B 78 */ mr r30, r5
+/* 801CA7F0 001C6450 93 A1 00 24 */ stw r29, 0x24(r1)
+/* 801CA7F4 001C6454 7C 9D 23 78 */ mr r29, r4
+/* 801CA7F8 001C6458 98 E1 00 09 */ stb r7, 9(r1)
+/* 801CA7FC 001C645C 99 01 00 08 */ stb r8, 8(r1)
+/* 801CA800 001C6460 98 E1 00 0A */ stb r7, 0xa(r1)
+/* 801CA804 001C6464 98 E1 00 0B */ stb r7, 0xb(r1)
+/* 801CA808 001C6468 98 E1 00 0C */ stb r7, 0xc(r1)
+/* 801CA80C 001C646C 90 E1 00 10 */ stw r7, 0x10(r1)
+/* 801CA810 001C6470 90 E1 00 14 */ stw r7, 0x14(r1)
+/* 801CA814 001C6474 40 82 00 28 */ bne lbl_801CA83C
+/* 801CA818 001C6478 98 C1 00 0D */ stb r6, 0xd(r1)
+/* 801CA81C 001C647C 38 7F 00 01 */ addi r3, r31, 1
+/* 801CA820 001C6480 80 81 00 08 */ lwz r4, 8(r1)
+/* 801CA824 001C6484 80 01 00 0C */ lwz r0, 0xc(r1)
+/* 801CA828 001C6488 90 85 00 00 */ stw r4, 0(r5)
+/* 801CA82C 001C648C 90 05 00 04 */ stw r0, 4(r5)
+/* 801CA830 001C6490 90 E5 00 08 */ stw r7, 8(r5)
+/* 801CA834 001C6494 90 E5 00 0C */ stw r7, 0xc(r5)
+/* 801CA838 001C6498 48 00 05 68 */ b lbl_801CADA0
+lbl_801CA83C:
+/* 801CA83C 001C649C 3C 80 80 42 */ lis r4, 0x8042
+/* 801CA840 001C64A0 38 00 00 02 */ li r0, 2
+lbl_801CA844:
+/* 801CA844 001C64A4 38 A6 FF E0 */ addi r5, r6, -32
+/* 801CA848 001C64A8 39 20 00 01 */ li r9, 1
+/* 801CA84C 001C64AC 28 05 00 10 */ cmplwi r5, 0x10
+/* 801CA850 001C64B0 41 81 00 58 */ bgt lbl_801CA8A8
+/* 801CA854 001C64B4 38 64 2E 70 */ addi r3, r4, 0x2e70
+/* 801CA858 001C64B8 54 A5 10 3A */ slwi r5, r5, 2
+/* 801CA85C 001C64BC 7C 63 28 2E */ lwzx r3, r3, r5
+/* 801CA860 001C64C0 7C 69 03 A6 */ mtctr r3
+/* 801CA864 001C64C4 4E 80 04 20 */ bctr
+/* 801CA868 001C64C8 98 E1 00 08 */ stb r7, 8(r1)
+/* 801CA86C 001C64CC 48 00 00 40 */ b lbl_801CA8AC
+/* 801CA870 001C64D0 99 01 00 09 */ stb r8, 9(r1)
+/* 801CA874 001C64D4 48 00 00 38 */ b lbl_801CA8AC
+/* 801CA878 001C64D8 88 61 00 09 */ lbz r3, 9(r1)
+/* 801CA87C 001C64DC 28 03 00 01 */ cmplwi r3, 1
+/* 801CA880 001C64E0 41 82 00 2C */ beq lbl_801CA8AC
+/* 801CA884 001C64E4 98 01 00 09 */ stb r0, 9(r1)
+/* 801CA888 001C64E8 48 00 00 24 */ b lbl_801CA8AC
+/* 801CA88C 001C64EC 99 01 00 0B */ stb r8, 0xb(r1)
+/* 801CA890 001C64F0 48 00 00 1C */ b lbl_801CA8AC
+/* 801CA894 001C64F4 88 61 00 08 */ lbz r3, 8(r1)
+/* 801CA898 001C64F8 2C 03 00 00 */ cmpwi r3, 0
+/* 801CA89C 001C64FC 41 82 00 10 */ beq lbl_801CA8AC
+/* 801CA8A0 001C6500 98 01 00 08 */ stb r0, 8(r1)
+/* 801CA8A4 001C6504 48 00 00 08 */ b lbl_801CA8AC
+lbl_801CA8A8:
+/* 801CA8A8 001C6508 39 20 00 00 */ li r9, 0
+lbl_801CA8AC:
+/* 801CA8AC 001C650C 2C 09 00 00 */ cmpwi r9, 0
+/* 801CA8B0 001C6510 41 82 00 10 */ beq lbl_801CA8C0
+/* 801CA8B4 001C6514 8C DF 00 01 */ lbzu r6, 1(r31)
+/* 801CA8B8 001C6518 7C C6 07 74 */ extsb r6, r6
+/* 801CA8BC 001C651C 4B FF FF 88 */ b lbl_801CA844
+lbl_801CA8C0:
+/* 801CA8C0 001C6520 2C 06 00 2A */ cmpwi r6, 0x2a
+/* 801CA8C4 001C6524 40 82 00 3C */ bne lbl_801CA900
+/* 801CA8C8 001C6528 7F A3 EB 78 */ mr r3, r29
+/* 801CA8CC 001C652C 38 80 00 01 */ li r4, 1
+/* 801CA8D0 001C6530 4B FF C2 B1 */ bl __va_arg
+/* 801CA8D4 001C6534 80 03 00 00 */ lwz r0, 0(r3)
+/* 801CA8D8 001C6538 2C 00 00 00 */ cmpwi r0, 0
+/* 801CA8DC 001C653C 90 01 00 10 */ stw r0, 0x10(r1)
+/* 801CA8E0 001C6540 40 80 00 14 */ bge lbl_801CA8F4
+/* 801CA8E4 001C6544 7C 00 00 D0 */ neg r0, r0
+/* 801CA8E8 001C6548 38 60 00 00 */ li r3, 0
+/* 801CA8EC 001C654C 98 61 00 08 */ stb r3, 8(r1)
+/* 801CA8F0 001C6550 90 01 00 10 */ stw r0, 0x10(r1)
+lbl_801CA8F4:
+/* 801CA8F4 001C6554 8C DF 00 01 */ lbzu r6, 1(r31)
+/* 801CA8F8 001C6558 7C C6 07 74 */ extsb r6, r6
+/* 801CA8FC 001C655C 48 00 00 70 */ b lbl_801CA96C
+lbl_801CA900:
+/* 801CA900 001C6560 3C 60 80 42 */ lis r3, lbl_80422D48@ha
+/* 801CA904 001C6564 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l
+/* 801CA908 001C6568 80 83 00 38 */ lwz r4, 0x38(r3)
+/* 801CA90C 001C656C 48 00 00 20 */ b lbl_801CA92C
+lbl_801CA910:
+/* 801CA910 001C6570 80 01 00 10 */ lwz r0, 0x10(r1)
+/* 801CA914 001C6574 1C 00 00 0A */ mulli r0, r0, 0xa
+/* 801CA918 001C6578 7C 66 02 14 */ add r3, r6, r0
+/* 801CA91C 001C657C 8C DF 00 01 */ lbzu r6, 1(r31)
+/* 801CA920 001C6580 38 03 FF D0 */ addi r0, r3, -48
+/* 801CA924 001C6584 90 01 00 10 */ stw r0, 0x10(r1)
+/* 801CA928 001C6588 7C C6 07 74 */ extsb r6, r6
+lbl_801CA92C:
+/* 801CA92C 001C658C 2C 06 00 00 */ cmpwi r6, 0
+/* 801CA930 001C6590 38 00 00 00 */ li r0, 0
+/* 801CA934 001C6594 41 80 00 0C */ blt lbl_801CA940
+/* 801CA938 001C6598 2C 06 01 00 */ cmpwi r6, 0x100
+/* 801CA93C 001C659C 41 80 00 08 */ blt lbl_801CA944
+lbl_801CA940:
+/* 801CA940 001C65A0 38 00 00 01 */ li r0, 1
+lbl_801CA944:
+/* 801CA944 001C65A4 2C 00 00 00 */ cmpwi r0, 0
+/* 801CA948 001C65A8 41 82 00 0C */ beq lbl_801CA954
+/* 801CA94C 001C65AC 38 00 00 00 */ li r0, 0
+/* 801CA950 001C65B0 48 00 00 14 */ b lbl_801CA964
+lbl_801CA954:
+/* 801CA954 001C65B4 80 64 00 08 */ lwz r3, 8(r4)
+/* 801CA958 001C65B8 54 C0 08 3C */ slwi r0, r6, 1
+/* 801CA95C 001C65BC 7C 03 02 2E */ lhzx r0, r3, r0
+/* 801CA960 001C65C0 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c
+lbl_801CA964:
+/* 801CA964 001C65C4 2C 00 00 00 */ cmpwi r0, 0
+/* 801CA968 001C65C8 40 82 FF A8 */ bne lbl_801CA910
+lbl_801CA96C:
+/* 801CA96C 001C65CC 80 E1 00 10 */ lwz r7, 0x10(r1)
+/* 801CA970 001C65D0 2C 07 01 FD */ cmpwi r7, 0x1fd
+/* 801CA974 001C65D4 40 81 00 30 */ ble lbl_801CA9A4
+/* 801CA978 001C65D8 38 00 00 FF */ li r0, 0xff
+/* 801CA97C 001C65DC 80 A1 00 08 */ lwz r5, 8(r1)
+/* 801CA980 001C65E0 98 01 00 0D */ stb r0, 0xd(r1)
+/* 801CA984 001C65E4 38 7F 00 01 */ addi r3, r31, 1
+/* 801CA988 001C65E8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CA98C 001C65EC 80 81 00 0C */ lwz r4, 0xc(r1)
+/* 801CA990 001C65F0 90 BE 00 00 */ stw r5, 0(r30)
+/* 801CA994 001C65F4 90 9E 00 04 */ stw r4, 4(r30)
+/* 801CA998 001C65F8 90 FE 00 08 */ stw r7, 8(r30)
+/* 801CA99C 001C65FC 90 1E 00 0C */ stw r0, 0xc(r30)
+/* 801CA9A0 001C6600 48 00 04 00 */ b lbl_801CADA0
+lbl_801CA9A4:
+/* 801CA9A4 001C6604 2C 06 00 2E */ cmpwi r6, 0x2e
+/* 801CA9A8 001C6608 40 82 00 B8 */ bne lbl_801CAA60
+/* 801CA9AC 001C660C 8C DF 00 01 */ lbzu r6, 1(r31)
+/* 801CA9B0 001C6610 38 00 00 01 */ li r0, 1
+/* 801CA9B4 001C6614 98 01 00 0A */ stb r0, 0xa(r1)
+/* 801CA9B8 001C6618 7C C6 07 74 */ extsb r6, r6
+/* 801CA9BC 001C661C 2C 06 00 2A */ cmpwi r6, 0x2a
+/* 801CA9C0 001C6620 40 82 00 34 */ bne lbl_801CA9F4
+/* 801CA9C4 001C6624 7F A3 EB 78 */ mr r3, r29
+/* 801CA9C8 001C6628 38 80 00 01 */ li r4, 1
+/* 801CA9CC 001C662C 4B FF C1 B5 */ bl __va_arg
+/* 801CA9D0 001C6630 80 03 00 00 */ lwz r0, 0(r3)
+/* 801CA9D4 001C6634 2C 00 00 00 */ cmpwi r0, 0
+/* 801CA9D8 001C6638 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CA9DC 001C663C 40 80 00 0C */ bge lbl_801CA9E8
+/* 801CA9E0 001C6640 38 00 00 00 */ li r0, 0
+/* 801CA9E4 001C6644 98 01 00 0A */ stb r0, 0xa(r1)
+lbl_801CA9E8:
+/* 801CA9E8 001C6648 8C DF 00 01 */ lbzu r6, 1(r31)
+/* 801CA9EC 001C664C 7C C6 07 74 */ extsb r6, r6
+/* 801CA9F0 001C6650 48 00 00 70 */ b lbl_801CAA60
+lbl_801CA9F4:
+/* 801CA9F4 001C6654 3C 60 80 42 */ lis r3, lbl_80422D48@ha
+/* 801CA9F8 001C6658 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l
+/* 801CA9FC 001C665C 80 83 00 38 */ lwz r4, 0x38(r3)
+/* 801CAA00 001C6660 48 00 00 20 */ b lbl_801CAA20
+lbl_801CAA04:
+/* 801CAA04 001C6664 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CAA08 001C6668 1C 00 00 0A */ mulli r0, r0, 0xa
+/* 801CAA0C 001C666C 7C 66 02 14 */ add r3, r6, r0
+/* 801CAA10 001C6670 8C DF 00 01 */ lbzu r6, 1(r31)
+/* 801CAA14 001C6674 38 03 FF D0 */ addi r0, r3, -48
+/* 801CAA18 001C6678 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CAA1C 001C667C 7C C6 07 74 */ extsb r6, r6
+lbl_801CAA20:
+/* 801CAA20 001C6680 2C 06 00 00 */ cmpwi r6, 0
+/* 801CAA24 001C6684 38 00 00 00 */ li r0, 0
+/* 801CAA28 001C6688 41 80 00 0C */ blt lbl_801CAA34
+/* 801CAA2C 001C668C 2C 06 01 00 */ cmpwi r6, 0x100
+/* 801CAA30 001C6690 41 80 00 08 */ blt lbl_801CAA38
+lbl_801CAA34:
+/* 801CAA34 001C6694 38 00 00 01 */ li r0, 1
+lbl_801CAA38:
+/* 801CAA38 001C6698 2C 00 00 00 */ cmpwi r0, 0
+/* 801CAA3C 001C669C 41 82 00 0C */ beq lbl_801CAA48
+/* 801CAA40 001C66A0 38 00 00 00 */ li r0, 0
+/* 801CAA44 001C66A4 48 00 00 14 */ b lbl_801CAA58
+lbl_801CAA48:
+/* 801CAA48 001C66A8 80 64 00 08 */ lwz r3, 8(r4)
+/* 801CAA4C 001C66AC 54 C0 08 3C */ slwi r0, r6, 1
+/* 801CAA50 001C66B0 7C 03 02 2E */ lhzx r0, r3, r0
+/* 801CAA54 001C66B4 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c
+lbl_801CAA58:
+/* 801CAA58 001C66B8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CAA5C 001C66BC 40 82 FF A8 */ bne lbl_801CAA04
+lbl_801CAA60:
+/* 801CAA60 001C66C0 2C 06 00 6B */ cmpwi r6, 0x6b
+/* 801CAA64 001C66C4 38 80 00 01 */ li r4, 1
+/* 801CAA68 001C66C8 41 82 00 D8 */ beq lbl_801CAB40
+/* 801CAA6C 001C66CC 40 80 00 28 */ bge lbl_801CAA94
+/* 801CAA70 001C66D0 2C 06 00 68 */ cmpwi r6, 0x68
+/* 801CAA74 001C66D4 41 82 00 44 */ beq lbl_801CAAB8
+/* 801CAA78 001C66D8 40 80 00 10 */ bge lbl_801CAA88
+/* 801CAA7C 001C66DC 2C 06 00 4C */ cmpwi r6, 0x4c
+/* 801CAA80 001C66E0 41 82 00 90 */ beq lbl_801CAB10
+/* 801CAA84 001C66E4 48 00 00 BC */ b lbl_801CAB40
+lbl_801CAA88:
+/* 801CAA88 001C66E8 2C 06 00 6A */ cmpwi r6, 0x6a
+/* 801CAA8C 001C66EC 40 80 00 90 */ bge lbl_801CAB1C
+/* 801CAA90 001C66F0 48 00 00 B0 */ b lbl_801CAB40
+lbl_801CAA94:
+/* 801CAA94 001C66F4 2C 06 00 74 */ cmpwi r6, 0x74
+/* 801CAA98 001C66F8 41 82 00 90 */ beq lbl_801CAB28
+/* 801CAA9C 001C66FC 40 80 00 10 */ bge lbl_801CAAAC
+/* 801CAAA0 001C6700 2C 06 00 6D */ cmpwi r6, 0x6d
+/* 801CAAA4 001C6704 40 80 00 9C */ bge lbl_801CAB40
+/* 801CAAA8 001C6708 48 00 00 3C */ b lbl_801CAAE4
+lbl_801CAAAC:
+/* 801CAAAC 001C670C 2C 06 00 7A */ cmpwi r6, 0x7a
+/* 801CAAB0 001C6710 41 82 00 84 */ beq lbl_801CAB34
+/* 801CAAB4 001C6714 48 00 00 8C */ b lbl_801CAB40
+lbl_801CAAB8:
+/* 801CAAB8 001C6718 88 1F 00 01 */ lbz r0, 1(r31)
+/* 801CAABC 001C671C 38 60 00 02 */ li r3, 2
+/* 801CAAC0 001C6720 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CAAC4 001C6724 7C 03 07 74 */ extsb r3, r0
+/* 801CAAC8 001C6728 2C 03 00 68 */ cmpwi r3, 0x68
+/* 801CAACC 001C672C 40 82 00 78 */ bne lbl_801CAB44
+/* 801CAAD0 001C6730 38 00 00 01 */ li r0, 1
+/* 801CAAD4 001C6734 7C 66 1B 78 */ mr r6, r3
+/* 801CAAD8 001C6738 98 01 00 0C */ stb r0, 0xc(r1)
+/* 801CAADC 001C673C 3B FF 00 01 */ addi r31, r31, 1
+/* 801CAAE0 001C6740 48 00 00 64 */ b lbl_801CAB44
+lbl_801CAAE4:
+/* 801CAAE4 001C6744 88 1F 00 01 */ lbz r0, 1(r31)
+/* 801CAAE8 001C6748 38 60 00 03 */ li r3, 3
+/* 801CAAEC 001C674C 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CAAF0 001C6750 7C 03 07 74 */ extsb r3, r0
+/* 801CAAF4 001C6754 2C 03 00 6C */ cmpwi r3, 0x6c
+/* 801CAAF8 001C6758 40 82 00 4C */ bne lbl_801CAB44
+/* 801CAAFC 001C675C 38 00 00 04 */ li r0, 4
+/* 801CAB00 001C6760 7C 66 1B 78 */ mr r6, r3
+/* 801CAB04 001C6764 98 01 00 0C */ stb r0, 0xc(r1)
+/* 801CAB08 001C6768 3B FF 00 01 */ addi r31, r31, 1
+/* 801CAB0C 001C676C 48 00 00 38 */ b lbl_801CAB44
+lbl_801CAB10:
+/* 801CAB10 001C6770 38 00 00 09 */ li r0, 9
+/* 801CAB14 001C6774 98 01 00 0C */ stb r0, 0xc(r1)
+/* 801CAB18 001C6778 48 00 00 2C */ b lbl_801CAB44
+lbl_801CAB1C:
+/* 801CAB1C 001C677C 38 00 00 06 */ li r0, 6
+/* 801CAB20 001C6780 98 01 00 0C */ stb r0, 0xc(r1)
+/* 801CAB24 001C6784 48 00 00 20 */ b lbl_801CAB44
+lbl_801CAB28:
+/* 801CAB28 001C6788 38 00 00 08 */ li r0, 8
+/* 801CAB2C 001C678C 98 01 00 0C */ stb r0, 0xc(r1)
+/* 801CAB30 001C6790 48 00 00 14 */ b lbl_801CAB44
+lbl_801CAB34:
+/* 801CAB34 001C6794 38 00 00 07 */ li r0, 7
+/* 801CAB38 001C6798 98 01 00 0C */ stb r0, 0xc(r1)
+/* 801CAB3C 001C679C 48 00 00 08 */ b lbl_801CAB44
+lbl_801CAB40:
+/* 801CAB40 001C67A0 38 80 00 00 */ li r4, 0
+lbl_801CAB44:
+/* 801CAB44 001C67A4 2C 04 00 00 */ cmpwi r4, 0
+/* 801CAB48 001C67A8 41 82 00 0C */ beq lbl_801CAB54
+/* 801CAB4C 001C67AC 8C DF 00 01 */ lbzu r6, 1(r31)
+/* 801CAB50 001C67B0 7C C6 07 74 */ extsb r6, r6
+lbl_801CAB54:
+/* 801CAB54 001C67B4 38 06 FF BF */ addi r0, r6, -65
+/* 801CAB58 001C67B8 98 C1 00 0D */ stb r6, 0xd(r1)
+/* 801CAB5C 001C67BC 28 00 00 37 */ cmplwi r0, 0x37
+/* 801CAB60 001C67C0 41 81 02 14 */ bgt lbl_801CAD74
+/* 801CAB64 001C67C4 3C 60 80 42 */ lis r3, lbl_80422D90@ha
+/* 801CAB68 001C67C8 54 00 10 3A */ slwi r0, r0, 2
+/* 801CAB6C 001C67CC 38 63 2D 90 */ addi r3, r3, lbl_80422D90@l
+/* 801CAB70 001C67D0 7C 63 00 2E */ lwzx r3, r3, r0
+/* 801CAB74 001C67D4 7C 69 03 A6 */ mtctr r3
+/* 801CAB78 001C67D8 4E 80 04 20 */ bctr
+/* 801CAB7C 001C67DC 88 01 00 0C */ lbz r0, 0xc(r1)
+/* 801CAB80 001C67E0 28 00 00 09 */ cmplwi r0, 9
+/* 801CAB84 001C67E4 40 82 00 10 */ bne lbl_801CAB94
+/* 801CAB88 001C67E8 38 00 00 FF */ li r0, 0xff
+/* 801CAB8C 001C67EC 98 01 00 0D */ stb r0, 0xd(r1)
+/* 801CAB90 001C67F0 48 00 01 EC */ b lbl_801CAD7C
+lbl_801CAB94:
+/* 801CAB94 001C67F4 88 01 00 0A */ lbz r0, 0xa(r1)
+/* 801CAB98 001C67F8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CAB9C 001C67FC 40 82 00 10 */ bne lbl_801CABAC
+/* 801CABA0 001C6800 38 00 00 01 */ li r0, 1
+/* 801CABA4 001C6804 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CABA8 001C6808 48 00 01 D4 */ b lbl_801CAD7C
+lbl_801CABAC:
+/* 801CABAC 001C680C 88 01 00 08 */ lbz r0, 8(r1)
+/* 801CABB0 001C6810 28 00 00 02 */ cmplwi r0, 2
+/* 801CABB4 001C6814 40 82 01 C8 */ bne lbl_801CAD7C
+/* 801CABB8 001C6818 38 00 00 01 */ li r0, 1
+/* 801CABBC 001C681C 98 01 00 08 */ stb r0, 8(r1)
+/* 801CABC0 001C6820 48 00 01 BC */ b lbl_801CAD7C
+/* 801CABC4 001C6824 88 01 00 0C */ lbz r0, 0xc(r1)
+/* 801CABC8 001C6828 28 00 00 02 */ cmplwi r0, 2
+/* 801CABCC 001C682C 41 82 00 24 */ beq lbl_801CABF0
+/* 801CABD0 001C6830 28 00 00 06 */ cmplwi r0, 6
+/* 801CABD4 001C6834 41 82 00 1C */ beq lbl_801CABF0
+/* 801CABD8 001C6838 28 00 00 07 */ cmplwi r0, 7
+/* 801CABDC 001C683C 41 82 00 14 */ beq lbl_801CABF0
+/* 801CABE0 001C6840 28 00 00 08 */ cmplwi r0, 8
+/* 801CABE4 001C6844 41 82 00 0C */ beq lbl_801CABF0
+/* 801CABE8 001C6848 28 00 00 04 */ cmplwi r0, 4
+/* 801CABEC 001C684C 40 82 00 10 */ bne lbl_801CABFC
+lbl_801CABF0:
+/* 801CABF0 001C6850 38 00 00 FF */ li r0, 0xff
+/* 801CABF4 001C6854 98 01 00 0D */ stb r0, 0xd(r1)
+/* 801CABF8 001C6858 48 00 01 84 */ b lbl_801CAD7C
+lbl_801CABFC:
+/* 801CABFC 001C685C 88 01 00 0A */ lbz r0, 0xa(r1)
+/* 801CAC00 001C6860 2C 00 00 00 */ cmpwi r0, 0
+/* 801CAC04 001C6864 40 82 01 78 */ bne lbl_801CAD7C
+/* 801CAC08 001C6868 38 00 00 06 */ li r0, 6
+/* 801CAC0C 001C686C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CAC10 001C6870 48 00 01 6C */ b lbl_801CAD7C
+/* 801CAC14 001C6874 88 01 00 0A */ lbz r0, 0xa(r1)
+/* 801CAC18 001C6878 2C 00 00 00 */ cmpwi r0, 0
+/* 801CAC1C 001C687C 40 82 00 0C */ bne lbl_801CAC28
+/* 801CAC20 001C6880 38 00 00 0D */ li r0, 0xd
+/* 801CAC24 001C6884 90 01 00 14 */ stw r0, 0x14(r1)
+lbl_801CAC28:
+/* 801CAC28 001C6888 88 01 00 0C */ lbz r0, 0xc(r1)
+/* 801CAC2C 001C688C 28 00 00 02 */ cmplwi r0, 2
+/* 801CAC30 001C6890 41 82 00 2C */ beq lbl_801CAC5C
+/* 801CAC34 001C6894 28 00 00 06 */ cmplwi r0, 6
+/* 801CAC38 001C6898 41 82 00 24 */ beq lbl_801CAC5C
+/* 801CAC3C 001C689C 28 00 00 07 */ cmplwi r0, 7
+/* 801CAC40 001C68A0 41 82 00 1C */ beq lbl_801CAC5C
+/* 801CAC44 001C68A4 28 00 00 08 */ cmplwi r0, 8
+/* 801CAC48 001C68A8 41 82 00 14 */ beq lbl_801CAC5C
+/* 801CAC4C 001C68AC 28 00 00 04 */ cmplwi r0, 4
+/* 801CAC50 001C68B0 41 82 00 0C */ beq lbl_801CAC5C
+/* 801CAC54 001C68B4 28 00 00 01 */ cmplwi r0, 1
+/* 801CAC58 001C68B8 40 82 01 24 */ bne lbl_801CAD7C
+lbl_801CAC5C:
+/* 801CAC5C 001C68BC 38 00 00 FF */ li r0, 0xff
+/* 801CAC60 001C68C0 98 01 00 0D */ stb r0, 0xd(r1)
+/* 801CAC64 001C68C4 48 00 01 18 */ b lbl_801CAD7C
+/* 801CAC68 001C68C8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CAC6C 001C68CC 2C 00 00 00 */ cmpwi r0, 0
+/* 801CAC70 001C68D0 40 82 00 0C */ bne lbl_801CAC7C
+/* 801CAC74 001C68D4 38 00 00 01 */ li r0, 1
+/* 801CAC78 001C68D8 90 01 00 14 */ stw r0, 0x14(r1)
+lbl_801CAC7C:
+/* 801CAC7C 001C68DC 88 01 00 0C */ lbz r0, 0xc(r1)
+/* 801CAC80 001C68E0 28 00 00 02 */ cmplwi r0, 2
+/* 801CAC84 001C68E4 41 82 00 2C */ beq lbl_801CACB0
+/* 801CAC88 001C68E8 28 00 00 06 */ cmplwi r0, 6
+/* 801CAC8C 001C68EC 41 82 00 24 */ beq lbl_801CACB0
+/* 801CAC90 001C68F0 28 00 00 07 */ cmplwi r0, 7
+/* 801CAC94 001C68F4 41 82 00 1C */ beq lbl_801CACB0
+/* 801CAC98 001C68F8 28 00 00 08 */ cmplwi r0, 8
+/* 801CAC9C 001C68FC 41 82 00 14 */ beq lbl_801CACB0
+/* 801CACA0 001C6900 28 00 00 04 */ cmplwi r0, 4
+/* 801CACA4 001C6904 41 82 00 0C */ beq lbl_801CACB0
+/* 801CACA8 001C6908 28 00 00 01 */ cmplwi r0, 1
+/* 801CACAC 001C690C 40 82 00 10 */ bne lbl_801CACBC
+lbl_801CACB0:
+/* 801CACB0 001C6910 38 00 00 FF */ li r0, 0xff
+/* 801CACB4 001C6914 98 01 00 0D */ stb r0, 0xd(r1)
+/* 801CACB8 001C6918 48 00 00 C4 */ b lbl_801CAD7C
+lbl_801CACBC:
+/* 801CACBC 001C691C 88 01 00 0A */ lbz r0, 0xa(r1)
+/* 801CACC0 001C6920 2C 00 00 00 */ cmpwi r0, 0
+/* 801CACC4 001C6924 40 82 00 B8 */ bne lbl_801CAD7C
+/* 801CACC8 001C6928 38 00 00 06 */ li r0, 6
+/* 801CACCC 001C692C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CACD0 001C6930 48 00 00 AC */ b lbl_801CAD7C
+/* 801CACD4 001C6934 38 A0 00 78 */ li r5, 0x78
+/* 801CACD8 001C6938 38 80 00 01 */ li r4, 1
+/* 801CACDC 001C693C 38 60 00 03 */ li r3, 3
+/* 801CACE0 001C6940 38 00 00 08 */ li r0, 8
+/* 801CACE4 001C6944 98 A1 00 0D */ stb r5, 0xd(r1)
+/* 801CACE8 001C6948 98 81 00 0B */ stb r4, 0xb(r1)
+/* 801CACEC 001C694C 98 61 00 0C */ stb r3, 0xc(r1)
+/* 801CACF0 001C6950 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CACF4 001C6954 48 00 00 88 */ b lbl_801CAD7C
+/* 801CACF8 001C6958 88 61 00 0C */ lbz r3, 0xc(r1)
+/* 801CACFC 001C695C 28 03 00 03 */ cmplwi r3, 3
+/* 801CAD00 001C6960 40 82 00 10 */ bne lbl_801CAD10
+/* 801CAD04 001C6964 38 00 00 05 */ li r0, 5
+/* 801CAD08 001C6968 98 01 00 0C */ stb r0, 0xc(r1)
+/* 801CAD0C 001C696C 48 00 00 70 */ b lbl_801CAD7C
+lbl_801CAD10:
+/* 801CAD10 001C6970 88 01 00 0A */ lbz r0, 0xa(r1)
+/* 801CAD14 001C6974 2C 00 00 00 */ cmpwi r0, 0
+/* 801CAD18 001C6978 40 82 00 0C */ bne lbl_801CAD24
+/* 801CAD1C 001C697C 2C 03 00 00 */ cmpwi r3, 0
+/* 801CAD20 001C6980 41 82 00 5C */ beq lbl_801CAD7C
+lbl_801CAD24:
+/* 801CAD24 001C6984 38 00 00 FF */ li r0, 0xff
+/* 801CAD28 001C6988 98 01 00 0D */ stb r0, 0xd(r1)
+/* 801CAD2C 001C698C 48 00 00 50 */ b lbl_801CAD7C
+/* 801CAD30 001C6990 88 01 00 0C */ lbz r0, 0xc(r1)
+/* 801CAD34 001C6994 28 00 00 03 */ cmplwi r0, 3
+/* 801CAD38 001C6998 40 82 00 10 */ bne lbl_801CAD48
+/* 801CAD3C 001C699C 38 00 00 05 */ li r0, 5
+/* 801CAD40 001C69A0 98 01 00 0C */ stb r0, 0xc(r1)
+/* 801CAD44 001C69A4 48 00 00 38 */ b lbl_801CAD7C
+lbl_801CAD48:
+/* 801CAD48 001C69A8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CAD4C 001C69AC 41 82 00 30 */ beq lbl_801CAD7C
+/* 801CAD50 001C69B0 38 00 00 FF */ li r0, 0xff
+/* 801CAD54 001C69B4 98 01 00 0D */ stb r0, 0xd(r1)
+/* 801CAD58 001C69B8 48 00 00 24 */ b lbl_801CAD7C
+/* 801CAD5C 001C69BC 88 01 00 0C */ lbz r0, 0xc(r1)
+/* 801CAD60 001C69C0 28 00 00 09 */ cmplwi r0, 9
+/* 801CAD64 001C69C4 40 82 00 18 */ bne lbl_801CAD7C
+/* 801CAD68 001C69C8 38 00 00 FF */ li r0, 0xff
+/* 801CAD6C 001C69CC 98 01 00 0D */ stb r0, 0xd(r1)
+/* 801CAD70 001C69D0 48 00 00 0C */ b lbl_801CAD7C
+lbl_801CAD74:
+/* 801CAD74 001C69D4 38 00 00 FF */ li r0, 0xff
+/* 801CAD78 001C69D8 98 01 00 0D */ stb r0, 0xd(r1)
+lbl_801CAD7C:
+/* 801CAD7C 001C69DC 80 C1 00 08 */ lwz r6, 8(r1)
+/* 801CAD80 001C69E0 38 7F 00 01 */ addi r3, r31, 1
+/* 801CAD84 001C69E4 80 A1 00 0C */ lwz r5, 0xc(r1)
+/* 801CAD88 001C69E8 80 81 00 10 */ lwz r4, 0x10(r1)
+/* 801CAD8C 001C69EC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CAD90 001C69F0 90 DE 00 00 */ stw r6, 0(r30)
+/* 801CAD94 001C69F4 90 BE 00 04 */ stw r5, 4(r30)
+/* 801CAD98 001C69F8 90 9E 00 08 */ stw r4, 8(r30)
+/* 801CAD9C 001C69FC 90 1E 00 0C */ stw r0, 0xc(r30)
+lbl_801CADA0:
+/* 801CADA0 001C6A00 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 801CADA4 001C6A04 83 E1 00 2C */ lwz r31, 0x2c(r1)
+/* 801CADA8 001C6A08 83 C1 00 28 */ lwz r30, 0x28(r1)
+/* 801CADAC 001C6A0C 83 A1 00 24 */ lwz r29, 0x24(r1)
+/* 801CADB0 001C6A10 7C 08 03 A6 */ mtlr r0
+/* 801CADB4 001C6A14 38 21 00 30 */ addi r1, r1, 0x30
+/* 801CADB8 001C6A18 4E 80 00 20 */ blr
+
+.global long2str
+long2str:
+/* 801CADBC 001C6A1C 39 00 00 00 */ li r8, 0
+/* 801CADC0 001C6A20 2C 03 00 00 */ cmpwi r3, 0
+/* 801CADC4 001C6A24 99 04 FF FF */ stb r8, -1(r4)
+/* 801CADC8 001C6A28 38 C4 FF FF */ addi r6, r4, -1
+/* 801CADCC 001C6A2C 38 E0 00 00 */ li r7, 0
+/* 801CADD0 001C6A30 40 82 00 30 */ bne lbl_801CAE00
+/* 801CADD4 001C6A34 80 05 00 0C */ lwz r0, 0xc(r5)
+/* 801CADD8 001C6A38 2C 00 00 00 */ cmpwi r0, 0
+/* 801CADDC 001C6A3C 40 82 00 24 */ bne lbl_801CAE00
+/* 801CADE0 001C6A40 88 05 00 03 */ lbz r0, 3(r5)
+/* 801CADE4 001C6A44 2C 00 00 00 */ cmpwi r0, 0
+/* 801CADE8 001C6A48 41 82 00 10 */ beq lbl_801CADF8
+/* 801CADEC 001C6A4C 88 05 00 05 */ lbz r0, 5(r5)
+/* 801CADF0 001C6A50 28 00 00 6F */ cmplwi r0, 0x6f
+/* 801CADF4 001C6A54 41 82 00 0C */ beq lbl_801CAE00
+lbl_801CADF8:
+/* 801CADF8 001C6A58 7C C3 33 78 */ mr r3, r6
+/* 801CADFC 001C6A5C 4E 80 00 20 */ blr
+lbl_801CAE00:
+/* 801CAE00 001C6A60 89 25 00 05 */ lbz r9, 5(r5)
+/* 801CAE04 001C6A64 39 49 FF A8 */ addi r10, r9, -88
+/* 801CAE08 001C6A68 28 0A 00 20 */ cmplwi r10, 0x20
+/* 801CAE0C 001C6A6C 41 81 00 6C */ bgt lbl_801CAE78
+/* 801CAE10 001C6A70 3D 20 80 42 */ lis r9, lbl_80422EB4@ha
+/* 801CAE14 001C6A74 55 4A 10 3A */ slwi r10, r10, 2
+/* 801CAE18 001C6A78 39 29 2E B4 */ addi r9, r9, lbl_80422EB4@l
+/* 801CAE1C 001C6A7C 7D 29 50 2E */ lwzx r9, r9, r10
+/* 801CAE20 001C6A80 7D 29 03 A6 */ mtctr r9
+/* 801CAE24 001C6A84 4E 80 04 20 */ bctr
+/* 801CAE28 001C6A88 2C 03 00 00 */ cmpwi r3, 0
+/* 801CAE2C 001C6A8C 38 00 00 0A */ li r0, 0xa
+/* 801CAE30 001C6A90 40 80 00 48 */ bge lbl_801CAE78
+/* 801CAE34 001C6A94 3D 03 80 00 */ addis r8, r3, 0x8000
+/* 801CAE38 001C6A98 28 08 00 00 */ cmplwi r8, 0
+/* 801CAE3C 001C6A9C 41 82 00 08 */ beq lbl_801CAE44
+/* 801CAE40 001C6AA0 7C 63 00 D0 */ neg r3, r3
+lbl_801CAE44:
+/* 801CAE44 001C6AA4 39 00 00 01 */ li r8, 1
+/* 801CAE48 001C6AA8 48 00 00 30 */ b lbl_801CAE78
+/* 801CAE4C 001C6AAC 39 20 00 00 */ li r9, 0
+/* 801CAE50 001C6AB0 38 00 00 08 */ li r0, 8
+/* 801CAE54 001C6AB4 99 25 00 01 */ stb r9, 1(r5)
+/* 801CAE58 001C6AB8 48 00 00 20 */ b lbl_801CAE78
+/* 801CAE5C 001C6ABC 39 20 00 00 */ li r9, 0
+/* 801CAE60 001C6AC0 38 00 00 0A */ li r0, 0xa
+/* 801CAE64 001C6AC4 99 25 00 01 */ stb r9, 1(r5)
+/* 801CAE68 001C6AC8 48 00 00 10 */ b lbl_801CAE78
+/* 801CAE6C 001C6ACC 39 20 00 00 */ li r9, 0
+/* 801CAE70 001C6AD0 38 00 00 10 */ li r0, 0x10
+/* 801CAE74 001C6AD4 99 25 00 01 */ stb r9, 1(r5)
+lbl_801CAE78:
+/* 801CAE78 001C6AD8 7D 23 03 96 */ divwu r9, r3, r0
+/* 801CAE7C 001C6ADC 7D 29 01 D6 */ mullw r9, r9, r0
+/* 801CAE80 001C6AE0 7D 69 18 50 */ subf r11, r9, r3
+/* 801CAE84 001C6AE4 7C 63 03 96 */ divwu r3, r3, r0
+/* 801CAE88 001C6AE8 2C 0B 00 0A */ cmpwi r11, 0xa
+/* 801CAE8C 001C6AEC 40 80 00 0C */ bge lbl_801CAE98
+/* 801CAE90 001C6AF0 39 6B 00 30 */ addi r11, r11, 0x30
+/* 801CAE94 001C6AF4 48 00 00 1C */ b lbl_801CAEB0
+lbl_801CAE98:
+/* 801CAE98 001C6AF8 89 25 00 05 */ lbz r9, 5(r5)
+/* 801CAE9C 001C6AFC 39 4B 00 37 */ addi r10, r11, 0x37
+/* 801CAEA0 001C6B00 28 09 00 78 */ cmplwi r9, 0x78
+/* 801CAEA4 001C6B04 40 82 00 08 */ bne lbl_801CAEAC
+/* 801CAEA8 001C6B08 39 4B 00 57 */ addi r10, r11, 0x57
+lbl_801CAEAC:
+/* 801CAEAC 001C6B0C 7D 4B 53 78 */ mr r11, r10
+lbl_801CAEB0:
+/* 801CAEB0 001C6B10 2C 03 00 00 */ cmpwi r3, 0
+/* 801CAEB4 001C6B14 99 66 FF FF */ stb r11, -1(r6)
+/* 801CAEB8 001C6B18 38 C6 FF FF */ addi r6, r6, -1
+/* 801CAEBC 001C6B1C 38 E7 00 01 */ addi r7, r7, 1
+/* 801CAEC0 001C6B20 40 82 FF B8 */ bne lbl_801CAE78
+/* 801CAEC4 001C6B24 28 00 00 08 */ cmplwi r0, 8
+/* 801CAEC8 001C6B28 40 82 00 28 */ bne lbl_801CAEF0
+/* 801CAECC 001C6B2C 88 65 00 03 */ lbz r3, 3(r5)
+/* 801CAED0 001C6B30 2C 03 00 00 */ cmpwi r3, 0
+/* 801CAED4 001C6B34 41 82 00 1C */ beq lbl_801CAEF0
+/* 801CAED8 001C6B38 88 66 00 00 */ lbz r3, 0(r6)
+/* 801CAEDC 001C6B3C 2C 03 00 30 */ cmpwi r3, 0x30
+/* 801CAEE0 001C6B40 41 82 00 10 */ beq lbl_801CAEF0
+/* 801CAEE4 001C6B44 38 60 00 30 */ li r3, 0x30
+/* 801CAEE8 001C6B48 38 E7 00 01 */ addi r7, r7, 1
+/* 801CAEEC 001C6B4C 9C 66 FF FF */ stbu r3, -1(r6)
+lbl_801CAEF0:
+/* 801CAEF0 001C6B50 88 65 00 00 */ lbz r3, 0(r5)
+/* 801CAEF4 001C6B54 28 03 00 02 */ cmplwi r3, 2
+/* 801CAEF8 001C6B58 40 82 00 4C */ bne lbl_801CAF44
+/* 801CAEFC 001C6B5C 80 65 00 08 */ lwz r3, 8(r5)
+/* 801CAF00 001C6B60 2C 08 00 00 */ cmpwi r8, 0
+/* 801CAF04 001C6B64 90 65 00 0C */ stw r3, 0xc(r5)
+/* 801CAF08 001C6B68 40 82 00 10 */ bne lbl_801CAF18
+/* 801CAF0C 001C6B6C 88 65 00 01 */ lbz r3, 1(r5)
+/* 801CAF10 001C6B70 2C 03 00 00 */ cmpwi r3, 0
+/* 801CAF14 001C6B74 41 82 00 10 */ beq lbl_801CAF24
+lbl_801CAF18:
+/* 801CAF18 001C6B78 80 65 00 0C */ lwz r3, 0xc(r5)
+/* 801CAF1C 001C6B7C 38 63 FF FF */ addi r3, r3, -1
+/* 801CAF20 001C6B80 90 65 00 0C */ stw r3, 0xc(r5)
+lbl_801CAF24:
+/* 801CAF24 001C6B84 28 00 00 10 */ cmplwi r0, 0x10
+/* 801CAF28 001C6B88 40 82 00 1C */ bne lbl_801CAF44
+/* 801CAF2C 001C6B8C 88 65 00 03 */ lbz r3, 3(r5)
+/* 801CAF30 001C6B90 2C 03 00 00 */ cmpwi r3, 0
+/* 801CAF34 001C6B94 41 82 00 10 */ beq lbl_801CAF44
+/* 801CAF38 001C6B98 80 65 00 0C */ lwz r3, 0xc(r5)
+/* 801CAF3C 001C6B9C 38 63 FF FE */ addi r3, r3, -2
+/* 801CAF40 001C6BA0 90 65 00 0C */ stw r3, 0xc(r5)
+lbl_801CAF44:
+/* 801CAF44 001C6BA4 81 25 00 0C */ lwz r9, 0xc(r5)
+/* 801CAF48 001C6BA8 7C 66 20 50 */ subf r3, r6, r4
+/* 801CAF4C 001C6BAC 7C 69 1A 14 */ add r3, r9, r3
+/* 801CAF50 001C6BB0 2C 03 01 FD */ cmpwi r3, 0x1fd
+/* 801CAF54 001C6BB4 40 81 00 0C */ ble lbl_801CAF60
+/* 801CAF58 001C6BB8 38 60 00 00 */ li r3, 0
+/* 801CAF5C 001C6BBC 4E 80 00 20 */ blr
+lbl_801CAF60:
+/* 801CAF60 001C6BC0 38 80 00 30 */ li r4, 0x30
+/* 801CAF64 001C6BC4 48 00 00 0C */ b lbl_801CAF70
+lbl_801CAF68:
+/* 801CAF68 001C6BC8 9C 86 FF FF */ stbu r4, -1(r6)
+/* 801CAF6C 001C6BCC 38 E7 00 01 */ addi r7, r7, 1
+lbl_801CAF70:
+/* 801CAF70 001C6BD0 80 65 00 0C */ lwz r3, 0xc(r5)
+/* 801CAF74 001C6BD4 7C 07 18 00 */ cmpw r7, r3
+/* 801CAF78 001C6BD8 41 80 FF F0 */ blt lbl_801CAF68
+/* 801CAF7C 001C6BDC 28 00 00 10 */ cmplwi r0, 0x10
+/* 801CAF80 001C6BE0 40 82 00 20 */ bne lbl_801CAFA0
+/* 801CAF84 001C6BE4 88 05 00 03 */ lbz r0, 3(r5)
+/* 801CAF88 001C6BE8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CAF8C 001C6BEC 41 82 00 14 */ beq lbl_801CAFA0
+/* 801CAF90 001C6BF0 88 65 00 05 */ lbz r3, 5(r5)
+/* 801CAF94 001C6BF4 38 00 00 30 */ li r0, 0x30
+/* 801CAF98 001C6BF8 98 66 FF FF */ stb r3, -1(r6)
+/* 801CAF9C 001C6BFC 9C 06 FF FE */ stbu r0, -2(r6)
+lbl_801CAFA0:
+/* 801CAFA0 001C6C00 2C 08 00 00 */ cmpwi r8, 0
+/* 801CAFA4 001C6C04 41 82 00 10 */ beq lbl_801CAFB4
+/* 801CAFA8 001C6C08 38 00 00 2D */ li r0, 0x2d
+/* 801CAFAC 001C6C0C 9C 06 FF FF */ stbu r0, -1(r6)
+/* 801CAFB0 001C6C10 48 00 00 2C */ b lbl_801CAFDC
+lbl_801CAFB4:
+/* 801CAFB4 001C6C14 88 05 00 01 */ lbz r0, 1(r5)
+/* 801CAFB8 001C6C18 28 00 00 01 */ cmplwi r0, 1
+/* 801CAFBC 001C6C1C 40 82 00 10 */ bne lbl_801CAFCC
+/* 801CAFC0 001C6C20 38 00 00 2B */ li r0, 0x2b
+/* 801CAFC4 001C6C24 9C 06 FF FF */ stbu r0, -1(r6)
+/* 801CAFC8 001C6C28 48 00 00 14 */ b lbl_801CAFDC
+lbl_801CAFCC:
+/* 801CAFCC 001C6C2C 28 00 00 02 */ cmplwi r0, 2
+/* 801CAFD0 001C6C30 40 82 00 0C */ bne lbl_801CAFDC
+/* 801CAFD4 001C6C34 38 00 00 20 */ li r0, 0x20
+/* 801CAFD8 001C6C38 9C 06 FF FF */ stbu r0, -1(r6)
+lbl_801CAFDC:
+/* 801CAFDC 001C6C3C 7C C3 33 78 */ mr r3, r6
+/* 801CAFE0 001C6C40 4E 80 00 20 */ blr
+
+.global longlong2str
+longlong2str:
+/* 801CAFE4 001C6C44 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 801CAFE8 001C6C48 7C 08 02 A6 */ mflr r0
+/* 801CAFEC 001C6C4C 90 01 00 34 */ stw r0, 0x34(r1)
+/* 801CAFF0 001C6C50 7C 80 1B 79 */ or. r0, r4, r3
+/* 801CAFF4 001C6C54 BE C1 00 08 */ stmw r22, 8(r1)
+/* 801CAFF8 001C6C58 3B 20 00 00 */ li r25, 0
+/* 801CAFFC 001C6C5C 7C 7F 1B 78 */ mr r31, r3
+/* 801CB000 001C6C60 7C 9E 23 78 */ mr r30, r4
+/* 801CB004 001C6C64 7C B7 2B 78 */ mr r23, r5
+/* 801CB008 001C6C68 7C D8 33 78 */ mr r24, r6
+/* 801CB00C 001C6C6C 3B 65 FF FF */ addi r27, r5, -1
+/* 801CB010 001C6C70 3B 40 00 00 */ li r26, 0
+/* 801CB014 001C6C74 9B 25 FF FF */ stb r25, -1(r5)
+/* 801CB018 001C6C78 40 82 00 30 */ bne lbl_801CB048
+/* 801CB01C 001C6C7C 80 06 00 0C */ lwz r0, 0xc(r6)
+/* 801CB020 001C6C80 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB024 001C6C84 40 82 00 24 */ bne lbl_801CB048
+/* 801CB028 001C6C88 88 06 00 03 */ lbz r0, 3(r6)
+/* 801CB02C 001C6C8C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB030 001C6C90 41 82 00 10 */ beq lbl_801CB040
+/* 801CB034 001C6C94 88 06 00 05 */ lbz r0, 5(r6)
+/* 801CB038 001C6C98 28 00 00 6F */ cmplwi r0, 0x6f
+/* 801CB03C 001C6C9C 41 82 00 0C */ beq lbl_801CB048
+lbl_801CB040:
+/* 801CB040 001C6CA0 7F 63 DB 78 */ mr r3, r27
+/* 801CB044 001C6CA4 48 00 02 2C */ b lbl_801CB270
+lbl_801CB048:
+/* 801CB048 001C6CA8 88 A6 00 05 */ lbz r5, 5(r6)
+/* 801CB04C 001C6CAC 38 05 FF A8 */ addi r0, r5, -88
+/* 801CB050 001C6CB0 28 00 00 20 */ cmplwi r0, 0x20
+/* 801CB054 001C6CB4 41 81 00 8C */ bgt lbl_801CB0E0
+/* 801CB058 001C6CB8 3C A0 80 42 */ lis r5, lbl_80422F38@ha
+/* 801CB05C 001C6CBC 54 00 10 3A */ slwi r0, r0, 2
+/* 801CB060 001C6CC0 38 A5 2F 38 */ addi r5, r5, lbl_80422F38@l
+/* 801CB064 001C6CC4 7C A5 00 2E */ lwzx r5, r5, r0
+/* 801CB068 001C6CC8 7C A9 03 A6 */ mtctr r5
+/* 801CB06C 001C6CCC 4E 80 04 20 */ bctr
+/* 801CB070 001C6CD0 3B A0 00 00 */ li r29, 0
+/* 801CB074 001C6CD4 6C 60 80 00 */ xoris r0, r3, 0x8000
+/* 801CB078 001C6CD8 6F A6 80 00 */ xoris r6, r29, 0x8000
+/* 801CB07C 001C6CDC 3B 80 00 0A */ li r28, 0xa
+/* 801CB080 001C6CE0 7C BD 20 10 */ subfc r5, r29, r4
+/* 801CB084 001C6CE4 7C C6 01 10 */ subfe r6, r6, r0
+/* 801CB088 001C6CE8 7C C0 01 10 */ subfe r6, r0, r0
+/* 801CB08C 001C6CEC 7C C6 00 D1 */ neg. r6, r6
+/* 801CB090 001C6CF0 41 82 00 50 */ beq lbl_801CB0E0
+/* 801CB094 001C6CF4 3C 00 80 00 */ lis r0, 0x8000
+/* 801CB098 001C6CF8 7C 60 02 78 */ xor r0, r3, r0
+/* 801CB09C 001C6CFC 7C 80 03 79 */ or. r0, r4, r0
+/* 801CB0A0 001C6D00 41 82 00 0C */ beq lbl_801CB0AC
+/* 801CB0A4 001C6D04 23 C4 00 00 */ subfic r30, r4, 0
+/* 801CB0A8 001C6D08 7F E3 01 90 */ subfze r31, r3
+lbl_801CB0AC:
+/* 801CB0AC 001C6D0C 3B 20 00 01 */ li r25, 1
+/* 801CB0B0 001C6D10 48 00 00 30 */ b lbl_801CB0E0
+/* 801CB0B4 001C6D14 3B A0 00 00 */ li r29, 0
+/* 801CB0B8 001C6D18 3B 80 00 08 */ li r28, 8
+/* 801CB0BC 001C6D1C 9B A6 00 01 */ stb r29, 1(r6)
+/* 801CB0C0 001C6D20 48 00 00 20 */ b lbl_801CB0E0
+/* 801CB0C4 001C6D24 3B A0 00 00 */ li r29, 0
+/* 801CB0C8 001C6D28 3B 80 00 0A */ li r28, 0xa
+/* 801CB0CC 001C6D2C 9B A6 00 01 */ stb r29, 1(r6)
+/* 801CB0D0 001C6D30 48 00 00 10 */ b lbl_801CB0E0
+/* 801CB0D4 001C6D34 3B A0 00 00 */ li r29, 0
+/* 801CB0D8 001C6D38 3B 80 00 10 */ li r28, 0x10
+/* 801CB0DC 001C6D3C 9B A6 00 01 */ stb r29, 1(r6)
+lbl_801CB0E0:
+/* 801CB0E0 001C6D40 7F E3 FB 78 */ mr r3, r31
+/* 801CB0E4 001C6D44 7F C4 F3 78 */ mr r4, r30
+/* 801CB0E8 001C6D48 7F A5 EB 78 */ mr r5, r29
+/* 801CB0EC 001C6D4C 7F 86 E3 78 */ mr r6, r28
+/* 801CB0F0 001C6D50 4B FF C2 C1 */ bl __mod2u
+/* 801CB0F4 001C6D54 7C 96 23 78 */ mr r22, r4
+/* 801CB0F8 001C6D58 7F E3 FB 78 */ mr r3, r31
+/* 801CB0FC 001C6D5C 7F C4 F3 78 */ mr r4, r30
+/* 801CB100 001C6D60 7F A5 EB 78 */ mr r5, r29
+/* 801CB104 001C6D64 7F 86 E3 78 */ mr r6, r28
+/* 801CB108 001C6D68 4B FF C0 85 */ bl __div2u
+/* 801CB10C 001C6D6C 2C 16 00 0A */ cmpwi r22, 0xa
+/* 801CB110 001C6D70 7C 9E 23 78 */ mr r30, r4
+/* 801CB114 001C6D74 7C 7F 1B 78 */ mr r31, r3
+/* 801CB118 001C6D78 40 80 00 0C */ bge lbl_801CB124
+/* 801CB11C 001C6D7C 38 B6 00 30 */ addi r5, r22, 0x30
+/* 801CB120 001C6D80 48 00 00 18 */ b lbl_801CB138
+lbl_801CB124:
+/* 801CB124 001C6D84 88 18 00 05 */ lbz r0, 5(r24)
+/* 801CB128 001C6D88 38 B6 00 37 */ addi r5, r22, 0x37
+/* 801CB12C 001C6D8C 28 00 00 78 */ cmplwi r0, 0x78
+/* 801CB130 001C6D90 40 82 00 08 */ bne lbl_801CB138
+/* 801CB134 001C6D94 38 B6 00 57 */ addi r5, r22, 0x57
+lbl_801CB138:
+/* 801CB138 001C6D98 7C 80 1B 79 */ or. r0, r4, r3
+/* 801CB13C 001C6D9C 9C BB FF FF */ stbu r5, -1(r27)
+/* 801CB140 001C6DA0 3B 5A 00 01 */ addi r26, r26, 1
+/* 801CB144 001C6DA4 40 82 FF 9C */ bne lbl_801CB0E0
+/* 801CB148 001C6DA8 6B 80 00 08 */ xori r0, r28, 8
+/* 801CB14C 001C6DAC 7C 00 EB 79 */ or. r0, r0, r29
+/* 801CB150 001C6DB0 40 82 00 28 */ bne lbl_801CB178
+/* 801CB154 001C6DB4 88 18 00 03 */ lbz r0, 3(r24)
+/* 801CB158 001C6DB8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB15C 001C6DBC 41 82 00 1C */ beq lbl_801CB178
+/* 801CB160 001C6DC0 88 1B 00 00 */ lbz r0, 0(r27)
+/* 801CB164 001C6DC4 2C 00 00 30 */ cmpwi r0, 0x30
+/* 801CB168 001C6DC8 41 82 00 10 */ beq lbl_801CB178
+/* 801CB16C 001C6DCC 38 00 00 30 */ li r0, 0x30
+/* 801CB170 001C6DD0 3B 5A 00 01 */ addi r26, r26, 1
+/* 801CB174 001C6DD4 9C 1B FF FF */ stbu r0, -1(r27)
+lbl_801CB178:
+/* 801CB178 001C6DD8 88 18 00 00 */ lbz r0, 0(r24)
+/* 801CB17C 001C6DDC 28 00 00 02 */ cmplwi r0, 2
+/* 801CB180 001C6DE0 40 82 00 50 */ bne lbl_801CB1D0
+/* 801CB184 001C6DE4 80 18 00 08 */ lwz r0, 8(r24)
+/* 801CB188 001C6DE8 2C 19 00 00 */ cmpwi r25, 0
+/* 801CB18C 001C6DEC 90 18 00 0C */ stw r0, 0xc(r24)
+/* 801CB190 001C6DF0 40 82 00 10 */ bne lbl_801CB1A0
+/* 801CB194 001C6DF4 88 18 00 01 */ lbz r0, 1(r24)
+/* 801CB198 001C6DF8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB19C 001C6DFC 41 82 00 10 */ beq lbl_801CB1AC
+lbl_801CB1A0:
+/* 801CB1A0 001C6E00 80 78 00 0C */ lwz r3, 0xc(r24)
+/* 801CB1A4 001C6E04 38 03 FF FF */ addi r0, r3, -1
+/* 801CB1A8 001C6E08 90 18 00 0C */ stw r0, 0xc(r24)
+lbl_801CB1AC:
+/* 801CB1AC 001C6E0C 6B 80 00 10 */ xori r0, r28, 0x10
+/* 801CB1B0 001C6E10 7C 00 EB 79 */ or. r0, r0, r29
+/* 801CB1B4 001C6E14 40 82 00 1C */ bne lbl_801CB1D0
+/* 801CB1B8 001C6E18 88 18 00 03 */ lbz r0, 3(r24)
+/* 801CB1BC 001C6E1C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB1C0 001C6E20 41 82 00 10 */ beq lbl_801CB1D0
+/* 801CB1C4 001C6E24 80 78 00 0C */ lwz r3, 0xc(r24)
+/* 801CB1C8 001C6E28 38 03 FF FE */ addi r0, r3, -2
+/* 801CB1CC 001C6E2C 90 18 00 0C */ stw r0, 0xc(r24)
+lbl_801CB1D0:
+/* 801CB1D0 001C6E30 80 78 00 0C */ lwz r3, 0xc(r24)
+/* 801CB1D4 001C6E34 7C 1B B8 50 */ subf r0, r27, r23
+/* 801CB1D8 001C6E38 7C 03 02 14 */ add r0, r3, r0
+/* 801CB1DC 001C6E3C 2C 00 01 FD */ cmpwi r0, 0x1fd
+/* 801CB1E0 001C6E40 40 81 00 0C */ ble lbl_801CB1EC
+/* 801CB1E4 001C6E44 38 60 00 00 */ li r3, 0
+/* 801CB1E8 001C6E48 48 00 00 88 */ b lbl_801CB270
+lbl_801CB1EC:
+/* 801CB1EC 001C6E4C 38 60 00 30 */ li r3, 0x30
+/* 801CB1F0 001C6E50 48 00 00 0C */ b lbl_801CB1FC
+lbl_801CB1F4:
+/* 801CB1F4 001C6E54 9C 7B FF FF */ stbu r3, -1(r27)
+/* 801CB1F8 001C6E58 3B 5A 00 01 */ addi r26, r26, 1
+lbl_801CB1FC:
+/* 801CB1FC 001C6E5C 80 18 00 0C */ lwz r0, 0xc(r24)
+/* 801CB200 001C6E60 7C 1A 00 00 */ cmpw r26, r0
+/* 801CB204 001C6E64 41 80 FF F0 */ blt lbl_801CB1F4
+/* 801CB208 001C6E68 6B 80 00 10 */ xori r0, r28, 0x10
+/* 801CB20C 001C6E6C 7C 00 EB 79 */ or. r0, r0, r29
+/* 801CB210 001C6E70 40 82 00 20 */ bne lbl_801CB230
+/* 801CB214 001C6E74 88 18 00 03 */ lbz r0, 3(r24)
+/* 801CB218 001C6E78 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB21C 001C6E7C 41 82 00 14 */ beq lbl_801CB230
+/* 801CB220 001C6E80 88 78 00 05 */ lbz r3, 5(r24)
+/* 801CB224 001C6E84 38 00 00 30 */ li r0, 0x30
+/* 801CB228 001C6E88 98 7B FF FF */ stb r3, -1(r27)
+/* 801CB22C 001C6E8C 9C 1B FF FE */ stbu r0, -2(r27)
+lbl_801CB230:
+/* 801CB230 001C6E90 2C 19 00 00 */ cmpwi r25, 0
+/* 801CB234 001C6E94 41 82 00 10 */ beq lbl_801CB244
+/* 801CB238 001C6E98 38 00 00 2D */ li r0, 0x2d
+/* 801CB23C 001C6E9C 9C 1B FF FF */ stbu r0, -1(r27)
+/* 801CB240 001C6EA0 48 00 00 2C */ b lbl_801CB26C
+lbl_801CB244:
+/* 801CB244 001C6EA4 88 18 00 01 */ lbz r0, 1(r24)
+/* 801CB248 001C6EA8 28 00 00 01 */ cmplwi r0, 1
+/* 801CB24C 001C6EAC 40 82 00 10 */ bne lbl_801CB25C
+/* 801CB250 001C6EB0 38 00 00 2B */ li r0, 0x2b
+/* 801CB254 001C6EB4 9C 1B FF FF */ stbu r0, -1(r27)
+/* 801CB258 001C6EB8 48 00 00 14 */ b lbl_801CB26C
+lbl_801CB25C:
+/* 801CB25C 001C6EBC 28 00 00 02 */ cmplwi r0, 2
+/* 801CB260 001C6EC0 40 82 00 0C */ bne lbl_801CB26C
+/* 801CB264 001C6EC4 38 00 00 20 */ li r0, 0x20
+/* 801CB268 001C6EC8 9C 1B FF FF */ stbu r0, -1(r27)
+lbl_801CB26C:
+/* 801CB26C 001C6ECC 7F 63 DB 78 */ mr r3, r27
+lbl_801CB270:
+/* 801CB270 001C6ED0 BA C1 00 08 */ lmw r22, 8(r1)
+/* 801CB274 001C6ED4 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 801CB278 001C6ED8 7C 08 03 A6 */ mtlr r0
+/* 801CB27C 001C6EDC 38 21 00 30 */ addi r1, r1, 0x30
+/* 801CB280 001C6EE0 4E 80 00 20 */ blr
+
+.global double2hex
+double2hex:
+/* 801CB284 001C6EE4 94 21 FF 70 */ stwu r1, -0x90(r1)
+/* 801CB288 001C6EE8 7C 08 02 A6 */ mflr r0
+/* 801CB28C 001C6EEC 90 01 00 94 */ stw r0, 0x94(r1)
+/* 801CB290 001C6EF0 DB E1 00 80 */ stfd f31, 0x80(r1)
+/* 801CB294 001C6EF4 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0
+/* 801CB298 001C6EF8 3C A0 80 42 */ lis r5, lbl_80422B98@ha
+/* 801CB29C 001C6EFC 80 04 00 0C */ lwz r0, 0xc(r4)
+/* 801CB2A0 001C6F00 FF E0 08 90 */ fmr f31, f1
+/* 801CB2A4 001C6F04 93 E1 00 7C */ stw r31, 0x7c(r1)
+/* 801CB2A8 001C6F08 2C 00 01 FD */ cmpwi r0, 0x1fd
+/* 801CB2AC 001C6F0C 93 C1 00 78 */ stw r30, 0x78(r1)
+/* 801CB2B0 001C6F10 7C 9E 23 78 */ mr r30, r4
+/* 801CB2B4 001C6F14 93 A1 00 74 */ stw r29, 0x74(r1)
+/* 801CB2B8 001C6F18 93 81 00 70 */ stw r28, 0x70(r1)
+/* 801CB2BC 001C6F1C 7C 7C 1B 78 */ mr r28, r3
+/* 801CB2C0 001C6F20 80 A5 2B 98 */ lwz r5, lbl_80422B98@l(r5)
+/* 801CB2C4 001C6F24 D8 21 00 08 */ stfd f1, 8(r1)
+/* 801CB2C8 001C6F28 8B E5 00 00 */ lbz r31, 0(r5)
+/* 801CB2CC 001C6F2C 40 81 00 0C */ ble lbl_801CB2D8
+/* 801CB2D0 001C6F30 38 60 00 00 */ li r3, 0
+/* 801CB2D4 001C6F34 48 00 03 50 */ b lbl_801CB624
+lbl_801CB2D8:
+/* 801CB2D8 001C6F38 3B A0 00 00 */ li r29, 0
+/* 801CB2DC 001C6F3C 38 00 00 20 */ li r0, 0x20
+/* 801CB2E0 001C6F40 9B A1 00 10 */ stb r29, 0x10(r1)
+/* 801CB2E4 001C6F44 38 61 00 10 */ addi r3, r1, 0x10
+/* 801CB2E8 001C6F48 38 81 00 38 */ addi r4, r1, 0x38
+/* 801CB2EC 001C6F4C B0 01 00 12 */ sth r0, 0x12(r1)
+/* 801CB2F0 001C6F50 4B FF D7 59 */ bl __num2dec
+/* 801CB2F4 001C6F54 FC 20 FA 10 */ fabs f1, f31
+/* 801CB2F8 001C6F58 C8 02 91 48 */ lfd f0, lbl_80641748-_SDA2_BASE_(r2)
+/* 801CB2FC 001C6F5C FC 00 08 00 */ fcmpu cr0, f0, f1
+/* 801CB300 001C6F60 40 82 00 20 */ bne lbl_801CB320
+/* 801CB304 001C6F64 3B BC FF FA */ addi r29, r28, -6
+/* 801CB308 001C6F68 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB30C 001C6F6C 7F A3 EB 78 */ mr r3, r29
+/* 801CB310 001C6F70 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB314 001C6F74 48 00 2F BD */ bl strcpy
+/* 801CB318 001C6F78 7F A3 EB 78 */ mr r3, r29
+/* 801CB31C 001C6F7C 48 00 03 08 */ b lbl_801CB624
+lbl_801CB320:
+/* 801CB320 001C6F80 88 01 00 3D */ lbz r0, 0x3d(r1)
+/* 801CB324 001C6F84 28 00 00 49 */ cmplwi r0, 0x49
+/* 801CB328 001C6F88 40 82 00 94 */ bne lbl_801CB3BC
+/* 801CB32C 001C6F8C 88 01 00 38 */ lbz r0, 0x38(r1)
+/* 801CB330 001C6F90 7C 00 07 75 */ extsb. r0, r0
+/* 801CB334 001C6F94 41 82 00 44 */ beq lbl_801CB378
+/* 801CB338 001C6F98 88 1E 00 05 */ lbz r0, 5(r30)
+/* 801CB33C 001C6F9C 3B BC FF FB */ addi r29, r28, -5
+/* 801CB340 001C6FA0 28 00 00 41 */ cmplwi r0, 0x41
+/* 801CB344 001C6FA4 40 82 00 1C */ bne lbl_801CB360
+/* 801CB348 001C6FA8 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB34C 001C6FAC 7F A3 EB 78 */ mr r3, r29
+/* 801CB350 001C6FB0 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB354 001C6FB4 38 84 00 06 */ addi r4, r4, 6
+/* 801CB358 001C6FB8 48 00 2F 79 */ bl strcpy
+/* 801CB35C 001C6FBC 48 00 00 58 */ b lbl_801CB3B4
+lbl_801CB360:
+/* 801CB360 001C6FC0 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB364 001C6FC4 7F A3 EB 78 */ mr r3, r29
+/* 801CB368 001C6FC8 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB36C 001C6FCC 38 84 00 0B */ addi r4, r4, 0xb
+/* 801CB370 001C6FD0 48 00 2F 61 */ bl strcpy
+/* 801CB374 001C6FD4 48 00 00 40 */ b lbl_801CB3B4
+lbl_801CB378:
+/* 801CB378 001C6FD8 88 1E 00 05 */ lbz r0, 5(r30)
+/* 801CB37C 001C6FDC 3B BC FF FC */ addi r29, r28, -4
+/* 801CB380 001C6FE0 28 00 00 41 */ cmplwi r0, 0x41
+/* 801CB384 001C6FE4 40 82 00 1C */ bne lbl_801CB3A0
+/* 801CB388 001C6FE8 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB38C 001C6FEC 7F A3 EB 78 */ mr r3, r29
+/* 801CB390 001C6FF0 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB394 001C6FF4 38 84 00 10 */ addi r4, r4, 0x10
+/* 801CB398 001C6FF8 48 00 2F 39 */ bl strcpy
+/* 801CB39C 001C6FFC 48 00 00 18 */ b lbl_801CB3B4
+lbl_801CB3A0:
+/* 801CB3A0 001C7000 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB3A4 001C7004 7F A3 EB 78 */ mr r3, r29
+/* 801CB3A8 001C7008 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB3AC 001C700C 38 84 00 14 */ addi r4, r4, 0x14
+/* 801CB3B0 001C7010 48 00 2F 21 */ bl strcpy
+lbl_801CB3B4:
+/* 801CB3B4 001C7014 7F A3 EB 78 */ mr r3, r29
+/* 801CB3B8 001C7018 48 00 02 6C */ b lbl_801CB624
+lbl_801CB3BC:
+/* 801CB3BC 001C701C 28 00 00 4E */ cmplwi r0, 0x4e
+/* 801CB3C0 001C7020 40 82 00 94 */ bne lbl_801CB454
+/* 801CB3C4 001C7024 88 01 00 38 */ lbz r0, 0x38(r1)
+/* 801CB3C8 001C7028 7C 00 07 75 */ extsb. r0, r0
+/* 801CB3CC 001C702C 41 82 00 44 */ beq lbl_801CB410
+/* 801CB3D0 001C7030 88 1E 00 05 */ lbz r0, 5(r30)
+/* 801CB3D4 001C7034 3B BC FF FB */ addi r29, r28, -5
+/* 801CB3D8 001C7038 28 00 00 41 */ cmplwi r0, 0x41
+/* 801CB3DC 001C703C 40 82 00 1C */ bne lbl_801CB3F8
+/* 801CB3E0 001C7040 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB3E4 001C7044 7F A3 EB 78 */ mr r3, r29
+/* 801CB3E8 001C7048 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB3EC 001C704C 38 84 00 18 */ addi r4, r4, 0x18
+/* 801CB3F0 001C7050 48 00 2E E1 */ bl strcpy
+/* 801CB3F4 001C7054 48 00 00 58 */ b lbl_801CB44C
+lbl_801CB3F8:
+/* 801CB3F8 001C7058 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB3FC 001C705C 7F A3 EB 78 */ mr r3, r29
+/* 801CB400 001C7060 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB404 001C7064 38 84 00 1D */ addi r4, r4, 0x1d
+/* 801CB408 001C7068 48 00 2E C9 */ bl strcpy
+/* 801CB40C 001C706C 48 00 00 40 */ b lbl_801CB44C
+lbl_801CB410:
+/* 801CB410 001C7070 88 1E 00 05 */ lbz r0, 5(r30)
+/* 801CB414 001C7074 3B BC FF FC */ addi r29, r28, -4
+/* 801CB418 001C7078 28 00 00 41 */ cmplwi r0, 0x41
+/* 801CB41C 001C707C 40 82 00 1C */ bne lbl_801CB438
+/* 801CB420 001C7080 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB424 001C7084 7F A3 EB 78 */ mr r3, r29
+/* 801CB428 001C7088 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB42C 001C708C 38 84 00 22 */ addi r4, r4, 0x22
+/* 801CB430 001C7090 48 00 2E A1 */ bl strcpy
+/* 801CB434 001C7094 48 00 00 18 */ b lbl_801CB44C
+lbl_801CB438:
+/* 801CB438 001C7098 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB43C 001C709C 7F A3 EB 78 */ mr r3, r29
+/* 801CB440 001C70A0 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB444 001C70A4 38 84 00 26 */ addi r4, r4, 0x26
+/* 801CB448 001C70A8 48 00 2E 89 */ bl strcpy
+lbl_801CB44C:
+/* 801CB44C 001C70AC 7F A3 EB 78 */ mr r3, r29
+/* 801CB450 001C70B0 48 00 01 D4 */ b lbl_801CB624
+lbl_801CB454:
+/* 801CB454 001C70B4 39 00 00 01 */ li r8, 1
+/* 801CB458 001C70B8 38 E0 00 64 */ li r7, 0x64
+/* 801CB45C 001C70BC 88 01 00 09 */ lbz r0, 9(r1)
+/* 801CB460 001C70C0 7F 84 E3 78 */ mr r4, r28
+/* 801CB464 001C70C4 88 61 00 08 */ lbz r3, 8(r1)
+/* 801CB468 001C70C8 38 A1 00 18 */ addi r5, r1, 0x18
+/* 801CB46C 001C70CC 54 00 88 1C */ slwi r0, r0, 0x11
+/* 801CB470 001C70D0 99 01 00 28 */ stb r8, 0x28(r1)
+/* 801CB474 001C70D4 50 60 C8 0C */ rlwimi r0, r3, 0x19, 0, 6
+/* 801CB478 001C70D8 54 03 5D 7E */ srwi r3, r0, 0x15
+/* 801CB47C 001C70DC 99 01 00 29 */ stb r8, 0x29(r1)
+/* 801CB480 001C70E0 38 63 FC 01 */ addi r3, r3, -1023
+/* 801CB484 001C70E4 9B A1 00 2A */ stb r29, 0x2a(r1)
+/* 801CB488 001C70E8 9B A1 00 2B */ stb r29, 0x2b(r1)
+/* 801CB48C 001C70EC 80 C1 00 28 */ lwz r6, 0x28(r1)
+/* 801CB490 001C70F0 9B A1 00 2C */ stb r29, 0x2c(r1)
+/* 801CB494 001C70F4 98 E1 00 2D */ stb r7, 0x2d(r1)
+/* 801CB498 001C70F8 80 01 00 2C */ lwz r0, 0x2c(r1)
+/* 801CB49C 001C70FC 93 A1 00 30 */ stw r29, 0x30(r1)
+/* 801CB4A0 001C7100 91 01 00 34 */ stw r8, 0x34(r1)
+/* 801CB4A4 001C7104 90 C1 00 18 */ stw r6, 0x18(r1)
+/* 801CB4A8 001C7108 90 01 00 1C */ stw r0, 0x1c(r1)
+/* 801CB4AC 001C710C 93 A1 00 20 */ stw r29, 0x20(r1)
+/* 801CB4B0 001C7110 91 01 00 24 */ stw r8, 0x24(r1)
+/* 801CB4B4 001C7114 4B FF F9 09 */ bl long2str
+/* 801CB4B8 001C7118 88 1E 00 05 */ lbz r0, 5(r30)
+/* 801CB4BC 001C711C 28 00 00 61 */ cmplwi r0, 0x61
+/* 801CB4C0 001C7120 40 82 00 14 */ bne lbl_801CB4D4
+/* 801CB4C4 001C7124 38 00 00 70 */ li r0, 0x70
+/* 801CB4C8 001C7128 38 83 FF FF */ addi r4, r3, -1
+/* 801CB4CC 001C712C 98 03 FF FF */ stb r0, -1(r3)
+/* 801CB4D0 001C7130 48 00 00 10 */ b lbl_801CB4E0
+lbl_801CB4D4:
+/* 801CB4D4 001C7134 38 00 00 50 */ li r0, 0x50
+/* 801CB4D8 001C7138 38 83 FF FF */ addi r4, r3, -1
+/* 801CB4DC 001C713C 98 03 FF FF */ stb r0, -1(r3)
+lbl_801CB4E0:
+/* 801CB4E0 001C7140 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 801CB4E4 001C7144 39 01 00 08 */ addi r8, r1, 8
+/* 801CB4E8 001C7148 54 03 10 3A */ slwi r3, r0, 2
+/* 801CB4EC 001C714C 39 23 00 0B */ addi r9, r3, 0xb
+/* 801CB4F0 001C7150 7C 09 03 A6 */ mtctr r0
+/* 801CB4F4 001C7154 2C 00 00 01 */ cmpwi r0, 1
+/* 801CB4F8 001C7158 41 80 00 9C */ blt lbl_801CB594
+lbl_801CB4FC:
+/* 801CB4FC 001C715C 2C 09 00 40 */ cmpwi r9, 0x40
+/* 801CB500 001C7160 40 80 00 84 */ bge lbl_801CB584
+/* 801CB504 001C7164 7D 23 1E 70 */ srawi r3, r9, 3
+/* 801CB508 001C7168 38 09 FF FC */ addi r0, r9, -4
+/* 801CB50C 001C716C 7C E8 1A 14 */ add r7, r8, r3
+/* 801CB510 001C7170 55 26 07 7E */ clrlwi r6, r9, 0x1d
+/* 801CB514 001C7174 55 23 00 38 */ rlwinm r3, r9, 0, 0, 0x1c
+/* 801CB518 001C7178 54 00 00 38 */ rlwinm r0, r0, 0, 0, 0x1c
+/* 801CB51C 001C717C 88 A7 00 00 */ lbz r5, 0(r7)
+/* 801CB520 001C7180 20 C6 00 07 */ subfic r6, r6, 7
+/* 801CB524 001C7184 7C 03 00 00 */ cmpw r3, r0
+/* 801CB528 001C7188 7C A0 36 30 */ sraw r0, r5, r6
+/* 801CB52C 001C718C 54 03 06 3E */ clrlwi r3, r0, 0x18
+/* 801CB530 001C7190 41 82 00 18 */ beq lbl_801CB548
+/* 801CB534 001C7194 88 07 FF FF */ lbz r0, -1(r7)
+/* 801CB538 001C7198 54 00 40 2E */ slwi r0, r0, 8
+/* 801CB53C 001C719C 7C 00 36 30 */ sraw r0, r0, r6
+/* 801CB540 001C71A0 7C 60 03 78 */ or r0, r3, r0
+/* 801CB544 001C71A4 54 03 06 3E */ clrlwi r3, r0, 0x18
+lbl_801CB548:
+/* 801CB548 001C71A8 54 63 07 3E */ clrlwi r3, r3, 0x1c
+/* 801CB54C 001C71AC 28 03 00 0A */ cmplwi r3, 0xa
+/* 801CB550 001C71B0 40 80 00 10 */ bge lbl_801CB560
+/* 801CB554 001C71B4 38 03 00 30 */ addi r0, r3, 0x30
+/* 801CB558 001C71B8 54 03 06 3E */ clrlwi r3, r0, 0x18
+/* 801CB55C 001C71BC 48 00 00 2C */ b lbl_801CB588
+lbl_801CB560:
+/* 801CB560 001C71C0 88 1E 00 05 */ lbz r0, 5(r30)
+/* 801CB564 001C71C4 28 00 00 61 */ cmplwi r0, 0x61
+/* 801CB568 001C71C8 40 82 00 10 */ bne lbl_801CB578
+/* 801CB56C 001C71CC 38 03 00 57 */ addi r0, r3, 0x57
+/* 801CB570 001C71D0 54 03 06 3E */ clrlwi r3, r0, 0x18
+/* 801CB574 001C71D4 48 00 00 14 */ b lbl_801CB588
+lbl_801CB578:
+/* 801CB578 001C71D8 38 03 00 37 */ addi r0, r3, 0x37
+/* 801CB57C 001C71DC 54 03 06 3E */ clrlwi r3, r0, 0x18
+/* 801CB580 001C71E0 48 00 00 08 */ b lbl_801CB588
+lbl_801CB584:
+/* 801CB584 001C71E4 38 60 00 30 */ li r3, 0x30
+lbl_801CB588:
+/* 801CB588 001C71E8 9C 64 FF FF */ stbu r3, -1(r4)
+/* 801CB58C 001C71EC 39 29 FF FC */ addi r9, r9, -4
+/* 801CB590 001C71F0 42 00 FF 6C */ bdnz lbl_801CB4FC
+lbl_801CB594:
+/* 801CB594 001C71F4 80 1E 00 0C */ lwz r0, 0xc(r30)
+/* 801CB598 001C71F8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB59C 001C71FC 40 82 00 10 */ bne lbl_801CB5AC
+/* 801CB5A0 001C7200 88 1E 00 03 */ lbz r0, 3(r30)
+/* 801CB5A4 001C7204 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB5A8 001C7208 41 82 00 08 */ beq lbl_801CB5B0
+lbl_801CB5AC:
+/* 801CB5AC 001C720C 9F E4 FF FF */ stbu r31, -1(r4)
+lbl_801CB5B0:
+/* 801CB5B0 001C7210 88 1E 00 05 */ lbz r0, 5(r30)
+/* 801CB5B4 001C7214 38 60 00 31 */ li r3, 0x31
+/* 801CB5B8 001C7218 98 64 FF FF */ stb r3, -1(r4)
+/* 801CB5BC 001C721C 28 00 00 61 */ cmplwi r0, 0x61
+/* 801CB5C0 001C7220 40 82 00 10 */ bne lbl_801CB5D0
+/* 801CB5C4 001C7224 38 00 00 78 */ li r0, 0x78
+/* 801CB5C8 001C7228 9C 04 FF FE */ stbu r0, -2(r4)
+/* 801CB5CC 001C722C 48 00 00 0C */ b lbl_801CB5D8
+lbl_801CB5D0:
+/* 801CB5D0 001C7230 38 00 00 58 */ li r0, 0x58
+/* 801CB5D4 001C7234 9C 04 FF FE */ stbu r0, -2(r4)
+lbl_801CB5D8:
+/* 801CB5D8 001C7238 38 00 00 30 */ li r0, 0x30
+/* 801CB5DC 001C723C 9C 04 FF FF */ stbu r0, -1(r4)
+/* 801CB5E0 001C7240 88 01 00 38 */ lbz r0, 0x38(r1)
+/* 801CB5E4 001C7244 7C 00 07 75 */ extsb. r0, r0
+/* 801CB5E8 001C7248 41 82 00 10 */ beq lbl_801CB5F8
+/* 801CB5EC 001C724C 38 00 00 2D */ li r0, 0x2d
+/* 801CB5F0 001C7250 9C 04 FF FF */ stbu r0, -1(r4)
+/* 801CB5F4 001C7254 48 00 00 2C */ b lbl_801CB620
+lbl_801CB5F8:
+/* 801CB5F8 001C7258 88 1E 00 01 */ lbz r0, 1(r30)
+/* 801CB5FC 001C725C 28 00 00 01 */ cmplwi r0, 1
+/* 801CB600 001C7260 40 82 00 10 */ bne lbl_801CB610
+/* 801CB604 001C7264 38 00 00 2B */ li r0, 0x2b
+/* 801CB608 001C7268 9C 04 FF FF */ stbu r0, -1(r4)
+/* 801CB60C 001C726C 48 00 00 14 */ b lbl_801CB620
+lbl_801CB610:
+/* 801CB610 001C7270 28 00 00 02 */ cmplwi r0, 2
+/* 801CB614 001C7274 40 82 00 0C */ bne lbl_801CB620
+/* 801CB618 001C7278 38 00 00 20 */ li r0, 0x20
+/* 801CB61C 001C727C 9C 04 FF FF */ stbu r0, -1(r4)
+lbl_801CB620:
+/* 801CB620 001C7280 7C 83 23 78 */ mr r3, r4
+lbl_801CB624:
+/* 801CB624 001C7284 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0
+/* 801CB628 001C7288 80 01 00 94 */ lwz r0, 0x94(r1)
+/* 801CB62C 001C728C CB E1 00 80 */ lfd f31, 0x80(r1)
+/* 801CB630 001C7290 83 E1 00 7C */ lwz r31, 0x7c(r1)
+/* 801CB634 001C7294 83 C1 00 78 */ lwz r30, 0x78(r1)
+/* 801CB638 001C7298 83 A1 00 74 */ lwz r29, 0x74(r1)
+/* 801CB63C 001C729C 83 81 00 70 */ lwz r28, 0x70(r1)
+/* 801CB640 001C72A0 7C 08 03 A6 */ mtlr r0
+/* 801CB644 001C72A4 38 21 00 90 */ addi r1, r1, 0x90
+/* 801CB648 001C72A8 4E 80 00 20 */ blr
+
+.global round_decimal
+round_decimal:
+/* 801CB64C 001C72AC 2C 04 00 00 */ cmpwi r4, 0
+/* 801CB650 001C72B0 40 80 00 20 */ bge lbl_801CB670
+lbl_801CB654:
+/* 801CB654 001C72B4 38 A0 00 00 */ li r5, 0
+/* 801CB658 001C72B8 38 80 00 01 */ li r4, 1
+/* 801CB65C 001C72BC 38 00 00 30 */ li r0, 0x30
+/* 801CB660 001C72C0 B0 A3 00 02 */ sth r5, 2(r3)
+/* 801CB664 001C72C4 98 83 00 04 */ stb r4, 4(r3)
+/* 801CB668 001C72C8 98 03 00 05 */ stb r0, 5(r3)
+/* 801CB66C 001C72CC 4E 80 00 20 */ blr
+lbl_801CB670:
+/* 801CB670 001C72D0 88 E3 00 04 */ lbz r7, 4(r3)
+/* 801CB674 001C72D4 7C 04 38 00 */ cmpw r4, r7
+/* 801CB678 001C72D8 4C 80 00 20 */ bgelr
+/* 801CB67C 001C72DC 7C C3 22 14 */ add r6, r3, r4
+/* 801CB680 001C72E0 88 A6 00 05 */ lbz r5, 5(r6)
+/* 801CB684 001C72E4 39 06 00 05 */ addi r8, r6, 5
+/* 801CB688 001C72E8 38 05 FF D0 */ addi r0, r5, -48
+/* 801CB68C 001C72EC 7C 06 07 74 */ extsb r6, r0
+/* 801CB690 001C72F0 2C 06 00 05 */ cmpwi r6, 5
+/* 801CB694 001C72F4 40 82 00 40 */ bne lbl_801CB6D4
+/* 801CB698 001C72F8 7C A3 3A 14 */ add r5, r3, r7
+/* 801CB69C 001C72FC 38 A5 00 05 */ addi r5, r5, 5
+lbl_801CB6A0:
+/* 801CB6A0 001C7300 38 A5 FF FF */ addi r5, r5, -1
+/* 801CB6A4 001C7304 7C 05 40 40 */ cmplw r5, r8
+/* 801CB6A8 001C7308 40 81 00 10 */ ble lbl_801CB6B8
+/* 801CB6AC 001C730C 88 05 00 00 */ lbz r0, 0(r5)
+/* 801CB6B0 001C7310 2C 00 00 30 */ cmpwi r0, 0x30
+/* 801CB6B4 001C7314 41 82 FF EC */ beq lbl_801CB6A0
+lbl_801CB6B8:
+/* 801CB6B8 001C7318 7C 05 40 40 */ cmplw r5, r8
+/* 801CB6BC 001C731C 40 82 00 10 */ bne lbl_801CB6CC
+/* 801CB6C0 001C7320 88 08 FF FF */ lbz r0, -1(r8)
+/* 801CB6C4 001C7324 54 05 07 FE */ clrlwi r5, r0, 0x1f
+/* 801CB6C8 001C7328 48 00 00 20 */ b lbl_801CB6E8
+lbl_801CB6CC:
+/* 801CB6CC 001C732C 38 A0 00 01 */ li r5, 1
+/* 801CB6D0 001C7330 48 00 00 18 */ b lbl_801CB6E8
+lbl_801CB6D4:
+/* 801CB6D4 001C7334 68 C0 00 05 */ xori r0, r6, 5
+/* 801CB6D8 001C7338 7C 05 0E 70 */ srawi r5, r0, 1
+/* 801CB6DC 001C733C 7C 00 30 38 */ and r0, r0, r6
+/* 801CB6E0 001C7340 7C 00 28 50 */ subf r0, r0, r5
+/* 801CB6E4 001C7344 54 05 0F FE */ srwi r5, r0, 0x1f
+lbl_801CB6E8:
+/* 801CB6E8 001C7348 7C 89 03 A6 */ mtctr r4
+/* 801CB6EC 001C734C 2C 04 00 00 */ cmpwi r4, 0
+/* 801CB6F0 001C7350 41 82 00 4C */ beq lbl_801CB73C
+lbl_801CB6F4:
+/* 801CB6F4 001C7354 8C 08 FF FF */ lbzu r0, -1(r8)
+/* 801CB6F8 001C7358 7C A0 2A 14 */ add r5, r0, r5
+/* 801CB6FC 001C735C 38 05 FF D0 */ addi r0, r5, -48
+/* 801CB700 001C7360 7C 06 07 74 */ extsb r6, r0
+/* 801CB704 001C7364 68 C0 00 09 */ xori r0, r6, 9
+/* 801CB708 001C7368 7C 05 0E 70 */ srawi r5, r0, 1
+/* 801CB70C 001C736C 7C 00 30 38 */ and r0, r0, r6
+/* 801CB710 001C7370 7C 00 28 50 */ subf r0, r0, r5
+/* 801CB714 001C7374 54 05 0F FF */ rlwinm. r5, r0, 1, 0x1f, 0x1f
+/* 801CB718 001C7378 40 82 00 0C */ bne lbl_801CB724
+/* 801CB71C 001C737C 2C 06 00 00 */ cmpwi r6, 0
+/* 801CB720 001C7380 40 82 00 0C */ bne lbl_801CB72C
+lbl_801CB724:
+/* 801CB724 001C7384 38 84 FF FF */ addi r4, r4, -1
+/* 801CB728 001C7388 48 00 00 10 */ b lbl_801CB738
+lbl_801CB72C:
+/* 801CB72C 001C738C 38 06 00 30 */ addi r0, r6, 0x30
+/* 801CB730 001C7390 98 08 00 00 */ stb r0, 0(r8)
+/* 801CB734 001C7394 48 00 00 08 */ b lbl_801CB73C
+lbl_801CB738:
+/* 801CB738 001C7398 42 00 FF BC */ bdnz lbl_801CB6F4
+lbl_801CB73C:
+/* 801CB73C 001C739C 2C 05 00 00 */ cmpwi r5, 0
+/* 801CB740 001C73A0 41 82 00 24 */ beq lbl_801CB764
+/* 801CB744 001C73A4 A8 A3 00 02 */ lha r5, 2(r3)
+/* 801CB748 001C73A8 38 80 00 01 */ li r4, 1
+/* 801CB74C 001C73AC 38 00 00 31 */ li r0, 0x31
+/* 801CB750 001C73B0 98 83 00 04 */ stb r4, 4(r3)
+/* 801CB754 001C73B4 38 85 00 01 */ addi r4, r5, 1
+/* 801CB758 001C73B8 B0 83 00 02 */ sth r4, 2(r3)
+/* 801CB75C 001C73BC 98 03 00 05 */ stb r0, 5(r3)
+/* 801CB760 001C73C0 4E 80 00 20 */ blr
+lbl_801CB764:
+/* 801CB764 001C73C4 2C 04 00 00 */ cmpwi r4, 0
+/* 801CB768 001C73C8 41 82 FE EC */ beq lbl_801CB654
+/* 801CB76C 001C73CC 98 83 00 04 */ stb r4, 4(r3)
+/* 801CB770 001C73D0 4E 80 00 20 */ blr
+
+.global float2str
+float2str:
+/* 801CB774 001C73D4 94 21 FF B0 */ stwu r1, -0x50(r1)
+/* 801CB778 001C73D8 7C 08 02 A6 */ mflr r0
+/* 801CB77C 001C73DC 3C A0 80 42 */ lis r5, lbl_80422B98@ha
+/* 801CB780 001C73E0 90 01 00 54 */ stw r0, 0x54(r1)
+/* 801CB784 001C73E4 80 04 00 0C */ lwz r0, 0xc(r4)
+/* 801CB788 001C73E8 DB E1 00 48 */ stfd f31, 0x48(r1)
+/* 801CB78C 001C73EC FF E0 08 90 */ fmr f31, f1
+/* 801CB790 001C73F0 2C 00 01 FD */ cmpwi r0, 0x1fd
+/* 801CB794 001C73F4 93 E1 00 44 */ stw r31, 0x44(r1)
+/* 801CB798 001C73F8 93 C1 00 40 */ stw r30, 0x40(r1)
+/* 801CB79C 001C73FC 93 A1 00 3C */ stw r29, 0x3c(r1)
+/* 801CB7A0 001C7400 7C 9D 23 78 */ mr r29, r4
+/* 801CB7A4 001C7404 93 81 00 38 */ stw r28, 0x38(r1)
+/* 801CB7A8 001C7408 7C 7C 1B 78 */ mr r28, r3
+/* 801CB7AC 001C740C 80 A5 2B 98 */ lwz r5, lbl_80422B98@l(r5)
+/* 801CB7B0 001C7410 8B C5 00 00 */ lbz r30, 0(r5)
+/* 801CB7B4 001C7414 40 81 00 0C */ ble lbl_801CB7C0
+/* 801CB7B8 001C7418 38 60 00 00 */ li r3, 0
+/* 801CB7BC 001C741C 48 00 07 64 */ b lbl_801CBF20
+lbl_801CB7C0:
+/* 801CB7C0 001C7420 38 60 00 00 */ li r3, 0
+/* 801CB7C4 001C7424 38 00 00 20 */ li r0, 0x20
+/* 801CB7C8 001C7428 98 61 00 08 */ stb r3, 8(r1)
+/* 801CB7CC 001C742C 38 61 00 08 */ addi r3, r1, 8
+/* 801CB7D0 001C7430 38 81 00 0C */ addi r4, r1, 0xc
+/* 801CB7D4 001C7434 B0 01 00 0A */ sth r0, 0xa(r1)
+/* 801CB7D8 001C7438 4B FF D2 71 */ bl __num2dec
+/* 801CB7DC 001C743C 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 801CB7E0 001C7440 38 A1 00 11 */ addi r5, r1, 0x11
+/* 801CB7E4 001C7444 7C A5 02 14 */ add r5, r5, r0
+/* 801CB7E8 001C7448 48 00 00 1C */ b lbl_801CB804
+lbl_801CB7EC:
+/* 801CB7EC 001C744C 88 81 00 10 */ lbz r4, 0x10(r1)
+/* 801CB7F0 001C7450 A8 61 00 0E */ lha r3, 0xe(r1)
+/* 801CB7F4 001C7454 38 84 FF FF */ addi r4, r4, -1
+/* 801CB7F8 001C7458 38 03 00 01 */ addi r0, r3, 1
+/* 801CB7FC 001C745C 98 81 00 10 */ stb r4, 0x10(r1)
+/* 801CB800 001C7460 B0 01 00 0E */ sth r0, 0xe(r1)
+lbl_801CB804:
+/* 801CB804 001C7464 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 801CB808 001C7468 28 00 00 01 */ cmplwi r0, 1
+/* 801CB80C 001C746C 40 81 00 10 */ ble lbl_801CB81C
+/* 801CB810 001C7470 8C 05 FF FF */ lbzu r0, -1(r5)
+/* 801CB814 001C7474 2C 00 00 30 */ cmpwi r0, 0x30
+/* 801CB818 001C7478 41 82 FF D4 */ beq lbl_801CB7EC
+lbl_801CB81C:
+/* 801CB81C 001C747C 88 01 00 11 */ lbz r0, 0x11(r1)
+/* 801CB820 001C7480 2C 00 00 49 */ cmpwi r0, 0x49
+/* 801CB824 001C7484 41 82 00 2C */ beq lbl_801CB850
+/* 801CB828 001C7488 40 80 00 10 */ bge lbl_801CB838
+/* 801CB82C 001C748C 2C 00 00 30 */ cmpwi r0, 0x30
+/* 801CB830 001C7490 41 82 00 14 */ beq lbl_801CB844
+/* 801CB834 001C7494 48 00 02 4C */ b lbl_801CBA80
+lbl_801CB838:
+/* 801CB838 001C7498 2C 00 00 4E */ cmpwi r0, 0x4e
+/* 801CB83C 001C749C 41 82 01 2C */ beq lbl_801CB968
+/* 801CB840 001C74A0 48 00 02 40 */ b lbl_801CBA80
+lbl_801CB844:
+/* 801CB844 001C74A4 38 00 00 00 */ li r0, 0
+/* 801CB848 001C74A8 B0 01 00 0E */ sth r0, 0xe(r1)
+/* 801CB84C 001C74AC 48 00 02 34 */ b lbl_801CBA80
+lbl_801CB850:
+/* 801CB850 001C74B0 C8 02 91 48 */ lfd f0, lbl_80641748-_SDA2_BASE_(r2)
+/* 801CB854 001C74B4 FC 1F 00 40 */ fcmpo cr0, f31, f0
+/* 801CB858 001C74B8 40 80 00 88 */ bge lbl_801CB8E0
+/* 801CB85C 001C74BC 88 9D 00 05 */ lbz r4, 5(r29)
+/* 801CB860 001C74C0 3B FC FF FB */ addi r31, r28, -5
+/* 801CB864 001C74C4 38 00 00 00 */ li r0, 0
+/* 801CB868 001C74C8 2C 04 00 00 */ cmpwi r4, 0
+/* 801CB86C 001C74CC 41 80 00 0C */ blt lbl_801CB878
+/* 801CB870 001C74D0 2C 04 01 00 */ cmpwi r4, 0x100
+/* 801CB874 001C74D4 41 80 00 08 */ blt lbl_801CB87C
+lbl_801CB878:
+/* 801CB878 001C74D8 38 00 00 01 */ li r0, 1
+lbl_801CB87C:
+/* 801CB87C 001C74DC 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB880 001C74E0 41 82 00 0C */ beq lbl_801CB88C
+/* 801CB884 001C74E4 38 00 00 00 */ li r0, 0
+/* 801CB888 001C74E8 48 00 00 20 */ b lbl_801CB8A8
+lbl_801CB88C:
+/* 801CB88C 001C74EC 3C 60 80 42 */ lis r3, lbl_80422D48@ha
+/* 801CB890 001C74F0 54 80 08 3C */ slwi r0, r4, 1
+/* 801CB894 001C74F4 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l
+/* 801CB898 001C74F8 80 63 00 38 */ lwz r3, 0x38(r3)
+/* 801CB89C 001C74FC 80 63 00 08 */ lwz r3, 8(r3)
+/* 801CB8A0 001C7500 7C 03 02 2E */ lhzx r0, r3, r0
+/* 801CB8A4 001C7504 54 00 05 AC */ rlwinm r0, r0, 0, 0x16, 0x16
+lbl_801CB8A8:
+/* 801CB8A8 001C7508 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB8AC 001C750C 41 82 00 1C */ beq lbl_801CB8C8
+/* 801CB8B0 001C7510 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB8B4 001C7514 7F E3 FB 78 */ mr r3, r31
+/* 801CB8B8 001C7518 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB8BC 001C751C 38 84 00 06 */ addi r4, r4, 6
+/* 801CB8C0 001C7520 48 00 2A 11 */ bl strcpy
+/* 801CB8C4 001C7524 48 00 00 9C */ b lbl_801CB960
+lbl_801CB8C8:
+/* 801CB8C8 001C7528 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB8CC 001C752C 7F E3 FB 78 */ mr r3, r31
+/* 801CB8D0 001C7530 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB8D4 001C7534 38 84 00 0B */ addi r4, r4, 0xb
+/* 801CB8D8 001C7538 48 00 29 F9 */ bl strcpy
+/* 801CB8DC 001C753C 48 00 00 84 */ b lbl_801CB960
+lbl_801CB8E0:
+/* 801CB8E0 001C7540 88 9D 00 05 */ lbz r4, 5(r29)
+/* 801CB8E4 001C7544 3B FC FF FC */ addi r31, r28, -4
+/* 801CB8E8 001C7548 38 00 00 00 */ li r0, 0
+/* 801CB8EC 001C754C 2C 04 00 00 */ cmpwi r4, 0
+/* 801CB8F0 001C7550 41 80 00 0C */ blt lbl_801CB8FC
+/* 801CB8F4 001C7554 2C 04 01 00 */ cmpwi r4, 0x100
+/* 801CB8F8 001C7558 41 80 00 08 */ blt lbl_801CB900
+lbl_801CB8FC:
+/* 801CB8FC 001C755C 38 00 00 01 */ li r0, 1
+lbl_801CB900:
+/* 801CB900 001C7560 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB904 001C7564 41 82 00 0C */ beq lbl_801CB910
+/* 801CB908 001C7568 38 00 00 00 */ li r0, 0
+/* 801CB90C 001C756C 48 00 00 20 */ b lbl_801CB92C
+lbl_801CB910:
+/* 801CB910 001C7570 3C 60 80 42 */ lis r3, lbl_80422D48@ha
+/* 801CB914 001C7574 54 80 08 3C */ slwi r0, r4, 1
+/* 801CB918 001C7578 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l
+/* 801CB91C 001C757C 80 63 00 38 */ lwz r3, 0x38(r3)
+/* 801CB920 001C7580 80 63 00 08 */ lwz r3, 8(r3)
+/* 801CB924 001C7584 7C 03 02 2E */ lhzx r0, r3, r0
+/* 801CB928 001C7588 54 00 05 AC */ rlwinm r0, r0, 0, 0x16, 0x16
+lbl_801CB92C:
+/* 801CB92C 001C758C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB930 001C7590 41 82 00 1C */ beq lbl_801CB94C
+/* 801CB934 001C7594 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB938 001C7598 7F E3 FB 78 */ mr r3, r31
+/* 801CB93C 001C759C 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB940 001C75A0 38 84 00 10 */ addi r4, r4, 0x10
+/* 801CB944 001C75A4 48 00 29 8D */ bl strcpy
+/* 801CB948 001C75A8 48 00 00 18 */ b lbl_801CB960
+lbl_801CB94C:
+/* 801CB94C 001C75AC 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB950 001C75B0 7F E3 FB 78 */ mr r3, r31
+/* 801CB954 001C75B4 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB958 001C75B8 38 84 00 14 */ addi r4, r4, 0x14
+/* 801CB95C 001C75BC 48 00 29 75 */ bl strcpy
+lbl_801CB960:
+/* 801CB960 001C75C0 7F E3 FB 78 */ mr r3, r31
+/* 801CB964 001C75C4 48 00 05 BC */ b lbl_801CBF20
+lbl_801CB968:
+/* 801CB968 001C75C8 88 01 00 0C */ lbz r0, 0xc(r1)
+/* 801CB96C 001C75CC 7C 00 07 75 */ extsb. r0, r0
+/* 801CB970 001C75D0 41 82 00 88 */ beq lbl_801CB9F8
+/* 801CB974 001C75D4 88 9D 00 05 */ lbz r4, 5(r29)
+/* 801CB978 001C75D8 3B FC FF FB */ addi r31, r28, -5
+/* 801CB97C 001C75DC 38 00 00 00 */ li r0, 0
+/* 801CB980 001C75E0 2C 04 00 00 */ cmpwi r4, 0
+/* 801CB984 001C75E4 41 80 00 0C */ blt lbl_801CB990
+/* 801CB988 001C75E8 2C 04 01 00 */ cmpwi r4, 0x100
+/* 801CB98C 001C75EC 41 80 00 08 */ blt lbl_801CB994
+lbl_801CB990:
+/* 801CB990 001C75F0 38 00 00 01 */ li r0, 1
+lbl_801CB994:
+/* 801CB994 001C75F4 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB998 001C75F8 41 82 00 0C */ beq lbl_801CB9A4
+/* 801CB99C 001C75FC 38 00 00 00 */ li r0, 0
+/* 801CB9A0 001C7600 48 00 00 20 */ b lbl_801CB9C0
+lbl_801CB9A4:
+/* 801CB9A4 001C7604 3C 60 80 42 */ lis r3, lbl_80422D48@ha
+/* 801CB9A8 001C7608 54 80 08 3C */ slwi r0, r4, 1
+/* 801CB9AC 001C760C 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l
+/* 801CB9B0 001C7610 80 63 00 38 */ lwz r3, 0x38(r3)
+/* 801CB9B4 001C7614 80 63 00 08 */ lwz r3, 8(r3)
+/* 801CB9B8 001C7618 7C 03 02 2E */ lhzx r0, r3, r0
+/* 801CB9BC 001C761C 54 00 05 AC */ rlwinm r0, r0, 0, 0x16, 0x16
+lbl_801CB9C0:
+/* 801CB9C0 001C7620 2C 00 00 00 */ cmpwi r0, 0
+/* 801CB9C4 001C7624 41 82 00 1C */ beq lbl_801CB9E0
+/* 801CB9C8 001C7628 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB9CC 001C762C 7F E3 FB 78 */ mr r3, r31
+/* 801CB9D0 001C7630 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB9D4 001C7634 38 84 00 18 */ addi r4, r4, 0x18
+/* 801CB9D8 001C7638 48 00 28 F9 */ bl strcpy
+/* 801CB9DC 001C763C 48 00 00 9C */ b lbl_801CBA78
+lbl_801CB9E0:
+/* 801CB9E0 001C7640 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CB9E4 001C7644 7F E3 FB 78 */ mr r3, r31
+/* 801CB9E8 001C7648 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CB9EC 001C764C 38 84 00 1D */ addi r4, r4, 0x1d
+/* 801CB9F0 001C7650 48 00 28 E1 */ bl strcpy
+/* 801CB9F4 001C7654 48 00 00 84 */ b lbl_801CBA78
+lbl_801CB9F8:
+/* 801CB9F8 001C7658 88 9D 00 05 */ lbz r4, 5(r29)
+/* 801CB9FC 001C765C 3B FC FF FC */ addi r31, r28, -4
+/* 801CBA00 001C7660 38 00 00 00 */ li r0, 0
+/* 801CBA04 001C7664 2C 04 00 00 */ cmpwi r4, 0
+/* 801CBA08 001C7668 41 80 00 0C */ blt lbl_801CBA14
+/* 801CBA0C 001C766C 2C 04 01 00 */ cmpwi r4, 0x100
+/* 801CBA10 001C7670 41 80 00 08 */ blt lbl_801CBA18
+lbl_801CBA14:
+/* 801CBA14 001C7674 38 00 00 01 */ li r0, 1
+lbl_801CBA18:
+/* 801CBA18 001C7678 2C 00 00 00 */ cmpwi r0, 0
+/* 801CBA1C 001C767C 41 82 00 0C */ beq lbl_801CBA28
+/* 801CBA20 001C7680 38 00 00 00 */ li r0, 0
+/* 801CBA24 001C7684 48 00 00 20 */ b lbl_801CBA44
+lbl_801CBA28:
+/* 801CBA28 001C7688 3C 60 80 42 */ lis r3, lbl_80422D48@ha
+/* 801CBA2C 001C768C 54 80 08 3C */ slwi r0, r4, 1
+/* 801CBA30 001C7690 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l
+/* 801CBA34 001C7694 80 63 00 38 */ lwz r3, 0x38(r3)
+/* 801CBA38 001C7698 80 63 00 08 */ lwz r3, 8(r3)
+/* 801CBA3C 001C769C 7C 03 02 2E */ lhzx r0, r3, r0
+/* 801CBA40 001C76A0 54 00 05 AC */ rlwinm r0, r0, 0, 0x16, 0x16
+lbl_801CBA44:
+/* 801CBA44 001C76A4 2C 00 00 00 */ cmpwi r0, 0
+/* 801CBA48 001C76A8 41 82 00 1C */ beq lbl_801CBA64
+/* 801CBA4C 001C76AC 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CBA50 001C76B0 7F E3 FB 78 */ mr r3, r31
+/* 801CBA54 001C76B4 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CBA58 001C76B8 38 84 00 22 */ addi r4, r4, 0x22
+/* 801CBA5C 001C76BC 48 00 28 75 */ bl strcpy
+/* 801CBA60 001C76C0 48 00 00 18 */ b lbl_801CBA78
+lbl_801CBA64:
+/* 801CBA64 001C76C4 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha
+/* 801CBA68 001C76C8 7F E3 FB 78 */ mr r3, r31
+/* 801CBA6C 001C76CC 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l
+/* 801CBA70 001C76D0 38 84 00 26 */ addi r4, r4, 0x26
+/* 801CBA74 001C76D4 48 00 28 5D */ bl strcpy
+lbl_801CBA78:
+/* 801CBA78 001C76D8 7F E3 FB 78 */ mr r3, r31
+/* 801CBA7C 001C76DC 48 00 04 A4 */ b lbl_801CBF20
+lbl_801CBA80:
+/* 801CBA80 001C76E0 A8 A1 00 0E */ lha r5, 0xe(r1)
+/* 801CBA84 001C76E4 38 60 00 00 */ li r3, 0
+/* 801CBA88 001C76E8 88 81 00 10 */ lbz r4, 0x10(r1)
+/* 801CBA8C 001C76EC 3B FC FF FF */ addi r31, r28, -1
+/* 801CBA90 001C76F0 88 1D 00 05 */ lbz r0, 5(r29)
+/* 801CBA94 001C76F4 7C 84 2A 14 */ add r4, r4, r5
+/* 801CBA98 001C76F8 38 84 FF FF */ addi r4, r4, -1
+/* 801CBA9C 001C76FC 2C 00 00 65 */ cmpwi r0, 0x65
+/* 801CBAA0 001C7700 B0 81 00 0E */ sth r4, 0xe(r1)
+/* 801CBAA4 001C7704 98 7C FF FF */ stb r3, -1(r28)
+/* 801CBAA8 001C7708 41 82 00 F4 */ beq lbl_801CBB9C
+/* 801CBAAC 001C770C 40 80 00 28 */ bge lbl_801CBAD4
+/* 801CBAB0 001C7710 2C 00 00 46 */ cmpwi r0, 0x46
+/* 801CBAB4 001C7714 41 82 02 4C */ beq lbl_801CBD00
+/* 801CBAB8 001C7718 40 80 00 10 */ bge lbl_801CBAC8
+/* 801CBABC 001C771C 2C 00 00 45 */ cmpwi r0, 0x45
+/* 801CBAC0 001C7720 40 80 00 DC */ bge lbl_801CBB9C
+/* 801CBAC4 001C7724 48 00 04 58 */ b lbl_801CBF1C
+lbl_801CBAC8:
+/* 801CBAC8 001C7728 2C 00 00 48 */ cmpwi r0, 0x48
+/* 801CBACC 001C772C 40 80 04 50 */ bge lbl_801CBF1C
+/* 801CBAD0 001C7730 48 00 00 14 */ b lbl_801CBAE4
+lbl_801CBAD4:
+/* 801CBAD4 001C7734 2C 00 00 67 */ cmpwi r0, 0x67
+/* 801CBAD8 001C7738 41 82 00 0C */ beq lbl_801CBAE4
+/* 801CBADC 001C773C 40 80 04 40 */ bge lbl_801CBF1C
+/* 801CBAE0 001C7740 48 00 02 20 */ b lbl_801CBD00
+lbl_801CBAE4:
+/* 801CBAE4 001C7744 80 9D 00 0C */ lwz r4, 0xc(r29)
+/* 801CBAE8 001C7748 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 801CBAEC 001C774C 7C 00 20 00 */ cmpw r0, r4
+/* 801CBAF0 001C7750 40 81 00 0C */ ble lbl_801CBAFC
+/* 801CBAF4 001C7754 38 61 00 0C */ addi r3, r1, 0xc
+/* 801CBAF8 001C7758 4B FF FB 55 */ bl round_decimal
+lbl_801CBAFC:
+/* 801CBAFC 001C775C A8 81 00 0E */ lha r4, 0xe(r1)
+/* 801CBB00 001C7760 2C 04 FF FC */ cmpwi r4, -4
+/* 801CBB04 001C7764 41 80 00 10 */ blt lbl_801CBB14
+/* 801CBB08 001C7768 80 7D 00 0C */ lwz r3, 0xc(r29)
+/* 801CBB0C 001C776C 7C 04 18 00 */ cmpw r4, r3
+/* 801CBB10 001C7770 41 80 00 50 */ blt lbl_801CBB60
+lbl_801CBB14:
+/* 801CBB14 001C7774 88 1D 00 03 */ lbz r0, 3(r29)
+/* 801CBB18 001C7778 2C 00 00 00 */ cmpwi r0, 0
+/* 801CBB1C 001C777C 41 82 00 14 */ beq lbl_801CBB30
+/* 801CBB20 001C7780 80 7D 00 0C */ lwz r3, 0xc(r29)
+/* 801CBB24 001C7784 38 03 FF FF */ addi r0, r3, -1
+/* 801CBB28 001C7788 90 1D 00 0C */ stw r0, 0xc(r29)
+/* 801CBB2C 001C778C 48 00 00 10 */ b lbl_801CBB3C
+lbl_801CBB30:
+/* 801CBB30 001C7790 88 61 00 10 */ lbz r3, 0x10(r1)
+/* 801CBB34 001C7794 38 03 FF FF */ addi r0, r3, -1
+/* 801CBB38 001C7798 90 1D 00 0C */ stw r0, 0xc(r29)
+lbl_801CBB3C:
+/* 801CBB3C 001C779C 88 1D 00 05 */ lbz r0, 5(r29)
+/* 801CBB40 001C77A0 28 00 00 67 */ cmplwi r0, 0x67
+/* 801CBB44 001C77A4 40 82 00 10 */ bne lbl_801CBB54
+/* 801CBB48 001C77A8 38 00 00 65 */ li r0, 0x65
+/* 801CBB4C 001C77AC 98 1D 00 05 */ stb r0, 5(r29)
+/* 801CBB50 001C77B0 48 00 00 4C */ b lbl_801CBB9C
+lbl_801CBB54:
+/* 801CBB54 001C77B4 38 00 00 45 */ li r0, 0x45
+/* 801CBB58 001C77B8 98 1D 00 05 */ stb r0, 5(r29)
+/* 801CBB5C 001C77BC 48 00 00 40 */ b lbl_801CBB9C
+lbl_801CBB60:
+/* 801CBB60 001C77C0 88 1D 00 03 */ lbz r0, 3(r29)
+/* 801CBB64 001C77C4 2C 00 00 00 */ cmpwi r0, 0
+/* 801CBB68 001C77C8 41 82 00 14 */ beq lbl_801CBB7C
+/* 801CBB6C 001C77CC 38 04 00 01 */ addi r0, r4, 1
+/* 801CBB70 001C77D0 7C 00 18 50 */ subf r0, r0, r3
+/* 801CBB74 001C77D4 90 1D 00 0C */ stw r0, 0xc(r29)
+/* 801CBB78 001C77D8 48 00 01 88 */ b lbl_801CBD00
+lbl_801CBB7C:
+/* 801CBB7C 001C77DC 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 801CBB80 001C77E0 38 64 00 01 */ addi r3, r4, 1
+/* 801CBB84 001C77E4 7C 03 00 51 */ subf. r0, r3, r0
+/* 801CBB88 001C77E8 90 1D 00 0C */ stw r0, 0xc(r29)
+/* 801CBB8C 001C77EC 40 80 01 74 */ bge lbl_801CBD00
+/* 801CBB90 001C77F0 38 00 00 00 */ li r0, 0
+/* 801CBB94 001C77F4 90 1D 00 0C */ stw r0, 0xc(r29)
+/* 801CBB98 001C77F8 48 00 01 68 */ b lbl_801CBD00
+lbl_801CBB9C:
+/* 801CBB9C 001C77FC 80 7D 00 0C */ lwz r3, 0xc(r29)
+/* 801CBBA0 001C7800 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 801CBBA4 001C7804 38 83 00 01 */ addi r4, r3, 1
+/* 801CBBA8 001C7808 7C 00 20 00 */ cmpw r0, r4
+/* 801CBBAC 001C780C 40 81 00 0C */ ble lbl_801CBBB8
+/* 801CBBB0 001C7810 38 61 00 0C */ addi r3, r1, 0xc
+/* 801CBBB4 001C7814 4B FF FA 99 */ bl round_decimal
+lbl_801CBBB8:
+/* 801CBBB8 001C7818 A8 C1 00 0E */ lha r6, 0xe(r1)
+/* 801CBBBC 001C781C 39 00 00 2B */ li r8, 0x2b
+/* 801CBBC0 001C7820 2C 06 00 00 */ cmpwi r6, 0
+/* 801CBBC4 001C7824 40 80 00 0C */ bge lbl_801CBBD0
+/* 801CBBC8 001C7828 7C C6 00 D0 */ neg r6, r6
+/* 801CBBCC 001C782C 39 00 00 2D */ li r8, 0x2d
+lbl_801CBBD0:
+/* 801CBBD0 001C7830 3C 60 66 66 */ lis r3, 0x66666667@ha
+/* 801CBBD4 001C7834 38 E0 00 00 */ li r7, 0
+/* 801CBBD8 001C7838 38 A3 66 67 */ addi r5, r3, 0x66666667@l
+/* 801CBBDC 001C783C 48 00 00 38 */ b lbl_801CBC14
+lbl_801CBBE0:
+/* 801CBBE0 001C7840 7C 05 30 96 */ mulhw r0, r5, r6
+/* 801CBBE4 001C7844 38 E7 00 01 */ addi r7, r7, 1
+/* 801CBBE8 001C7848 7C 03 16 70 */ srawi r3, r0, 2
+/* 801CBBEC 001C784C 54 64 0F FE */ srwi r4, r3, 0x1f
+/* 801CBBF0 001C7850 7C 00 16 70 */ srawi r0, r0, 2
+/* 801CBBF4 001C7854 7C 63 22 14 */ add r3, r3, r4
+/* 801CBBF8 001C7858 1C 83 00 0A */ mulli r4, r3, 0xa
+/* 801CBBFC 001C785C 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 801CBC00 001C7860 7C 84 30 50 */ subf r4, r4, r6
+/* 801CBC04 001C7864 7C C0 1A 14 */ add r6, r0, r3
+/* 801CBC08 001C7868 38 04 00 30 */ addi r0, r4, 0x30
+/* 801CBC0C 001C786C 98 1F FF FF */ stb r0, -1(r31)
+/* 801CBC10 001C7870 3B FF FF FF */ addi r31, r31, -1
+lbl_801CBC14:
+/* 801CBC14 001C7874 2C 06 00 00 */ cmpwi r6, 0
+/* 801CBC18 001C7878 40 82 FF C8 */ bne lbl_801CBBE0
+/* 801CBC1C 001C787C 2C 07 00 02 */ cmpwi r7, 2
+/* 801CBC20 001C7880 41 80 FF C0 */ blt lbl_801CBBE0
+/* 801CBC24 001C7884 99 1F FF FF */ stb r8, -1(r31)
+/* 801CBC28 001C7888 88 1D 00 05 */ lbz r0, 5(r29)
+/* 801CBC2C 001C788C 80 7D 00 0C */ lwz r3, 0xc(r29)
+/* 801CBC30 001C7890 9C 1F FF FE */ stbu r0, -2(r31)
+/* 801CBC34 001C7894 7C 1F E0 50 */ subf r0, r31, r28
+/* 801CBC38 001C7898 7C 03 02 14 */ add r0, r3, r0
+/* 801CBC3C 001C789C 2C 00 01 FD */ cmpwi r0, 0x1fd
+/* 801CBC40 001C78A0 40 81 00 0C */ ble lbl_801CBC4C
+/* 801CBC44 001C78A4 38 60 00 00 */ li r3, 0
+/* 801CBC48 001C78A8 48 00 02 D8 */ b lbl_801CBF20
+lbl_801CBC4C:
+/* 801CBC4C 001C78AC 88 81 00 10 */ lbz r4, 0x10(r1)
+/* 801CBC50 001C78B0 38 03 00 01 */ addi r0, r3, 1
+/* 801CBC54 001C78B4 7C 04 00 00 */ cmpw r4, r0
+/* 801CBC58 001C78B8 40 80 00 20 */ bge lbl_801CBC78
+/* 801CBC5C 001C78BC 38 63 00 02 */ addi r3, r3, 2
+/* 801CBC60 001C78C0 38 00 00 30 */ li r0, 0x30
+/* 801CBC64 001C78C4 7C 64 18 50 */ subf r3, r4, r3
+/* 801CBC68 001C78C8 48 00 00 08 */ b lbl_801CBC70
+lbl_801CBC6C:
+/* 801CBC6C 001C78CC 9C 1F FF FF */ stbu r0, -1(r31)
+lbl_801CBC70:
+/* 801CBC70 001C78D0 34 63 FF FF */ addic. r3, r3, -1
+/* 801CBC74 001C78D4 40 82 FF F8 */ bne lbl_801CBC6C
+lbl_801CBC78:
+/* 801CBC78 001C78D8 88 61 00 10 */ lbz r3, 0x10(r1)
+/* 801CBC7C 001C78DC 38 81 00 11 */ addi r4, r1, 0x11
+/* 801CBC80 001C78E0 7C 84 1A 14 */ add r4, r4, r3
+/* 801CBC84 001C78E4 48 00 00 0C */ b lbl_801CBC90
+lbl_801CBC88:
+/* 801CBC88 001C78E8 8C 04 FF FF */ lbzu r0, -1(r4)
+/* 801CBC8C 001C78EC 9C 1F FF FF */ stbu r0, -1(r31)
+lbl_801CBC90:
+/* 801CBC90 001C78F0 34 63 FF FF */ addic. r3, r3, -1
+/* 801CBC94 001C78F4 40 82 FF F4 */ bne lbl_801CBC88
+/* 801CBC98 001C78F8 80 1D 00 0C */ lwz r0, 0xc(r29)
+/* 801CBC9C 001C78FC 2C 00 00 00 */ cmpwi r0, 0
+/* 801CBCA0 001C7900 40 82 00 10 */ bne lbl_801CBCB0
+/* 801CBCA4 001C7904 88 1D 00 03 */ lbz r0, 3(r29)
+/* 801CBCA8 001C7908 2C 00 00 00 */ cmpwi r0, 0
+/* 801CBCAC 001C790C 41 82 00 08 */ beq lbl_801CBCB4
+lbl_801CBCB0:
+/* 801CBCB0 001C7910 9F DF FF FF */ stbu r30, -1(r31)
+lbl_801CBCB4:
+/* 801CBCB4 001C7914 88 01 00 11 */ lbz r0, 0x11(r1)
+/* 801CBCB8 001C7918 9C 1F FF FF */ stbu r0, -1(r31)
+/* 801CBCBC 001C791C 88 01 00 0C */ lbz r0, 0xc(r1)
+/* 801CBCC0 001C7920 7C 00 07 75 */ extsb. r0, r0
+/* 801CBCC4 001C7924 41 82 00 10 */ beq lbl_801CBCD4
+/* 801CBCC8 001C7928 38 00 00 2D */ li r0, 0x2d
+/* 801CBCCC 001C792C 9C 1F FF FF */ stbu r0, -1(r31)
+/* 801CBCD0 001C7930 48 00 02 4C */ b lbl_801CBF1C
+lbl_801CBCD4:
+/* 801CBCD4 001C7934 88 1D 00 01 */ lbz r0, 1(r29)
+/* 801CBCD8 001C7938 28 00 00 01 */ cmplwi r0, 1
+/* 801CBCDC 001C793C 40 82 00 10 */ bne lbl_801CBCEC
+/* 801CBCE0 001C7940 38 00 00 2B */ li r0, 0x2b
+/* 801CBCE4 001C7944 9C 1F FF FF */ stbu r0, -1(r31)
+/* 801CBCE8 001C7948 48 00 02 34 */ b lbl_801CBF1C
+lbl_801CBCEC:
+/* 801CBCEC 001C794C 28 00 00 02 */ cmplwi r0, 2
+/* 801CBCF0 001C7950 40 82 02 2C */ bne lbl_801CBF1C
+/* 801CBCF4 001C7954 38 00 00 20 */ li r0, 0x20
+/* 801CBCF8 001C7958 9C 1F FF FF */ stbu r0, -1(r31)
+/* 801CBCFC 001C795C 48 00 02 20 */ b lbl_801CBF1C
+lbl_801CBD00:
+/* 801CBD00 001C7960 88 81 00 10 */ lbz r4, 0x10(r1)
+/* 801CBD04 001C7964 A8 A1 00 0E */ lha r5, 0xe(r1)
+/* 801CBD08 001C7968 7C 65 20 50 */ subf r3, r5, r4
+/* 801CBD0C 001C796C 35 03 FF FF */ addic. r8, r3, -1
+/* 801CBD10 001C7970 40 80 00 08 */ bge lbl_801CBD18
+/* 801CBD14 001C7974 39 00 00 00 */ li r8, 0
+lbl_801CBD18:
+/* 801CBD18 001C7978 80 1D 00 0C */ lwz r0, 0xc(r29)
+/* 801CBD1C 001C797C 7C 08 00 00 */ cmpw r8, r0
+/* 801CBD20 001C7980 40 81 00 2C */ ble lbl_801CBD4C
+/* 801CBD24 001C7984 7C 00 40 50 */ subf r0, r0, r8
+/* 801CBD28 001C7988 38 61 00 0C */ addi r3, r1, 0xc
+/* 801CBD2C 001C798C 7C 80 20 50 */ subf r4, r0, r4
+/* 801CBD30 001C7990 4B FF F9 1D */ bl round_decimal
+/* 801CBD34 001C7994 88 81 00 10 */ lbz r4, 0x10(r1)
+/* 801CBD38 001C7998 A8 A1 00 0E */ lha r5, 0xe(r1)
+/* 801CBD3C 001C799C 7C 65 20 50 */ subf r3, r5, r4
+/* 801CBD40 001C79A0 35 03 FF FF */ addic. r8, r3, -1
+/* 801CBD44 001C79A4 40 80 00 08 */ bge lbl_801CBD4C
+/* 801CBD48 001C79A8 39 00 00 00 */ li r8, 0
+lbl_801CBD4C:
+/* 801CBD4C 001C79AC 34 E5 00 01 */ addic. r7, r5, 1
+/* 801CBD50 001C79B0 40 80 00 08 */ bge lbl_801CBD58
+/* 801CBD54 001C79B4 38 E0 00 00 */ li r7, 0
+lbl_801CBD58:
+/* 801CBD58 001C79B8 7C 07 42 14 */ add r0, r7, r8
+/* 801CBD5C 001C79BC 2C 00 01 FD */ cmpwi r0, 0x1fd
+/* 801CBD60 001C79C0 40 81 00 0C */ ble lbl_801CBD6C
+/* 801CBD64 001C79C4 38 60 00 00 */ li r3, 0
+/* 801CBD68 001C79C8 48 00 01 B8 */ b lbl_801CBF20
+lbl_801CBD6C:
+/* 801CBD6C 001C79CC 38 C1 00 11 */ addi r6, r1, 0x11
+/* 801CBD70 001C79D0 38 A0 00 00 */ li r5, 0
+/* 801CBD74 001C79D4 7C C6 22 14 */ add r6, r6, r4
+/* 801CBD78 001C79D8 38 60 00 30 */ li r3, 0x30
+/* 801CBD7C 001C79DC 48 00 00 0C */ b lbl_801CBD88
+lbl_801CBD80:
+/* 801CBD80 001C79E0 9C 7F FF FF */ stbu r3, -1(r31)
+/* 801CBD84 001C79E4 38 A5 00 01 */ addi r5, r5, 1
+lbl_801CBD88:
+/* 801CBD88 001C79E8 80 1D 00 0C */ lwz r0, 0xc(r29)
+/* 801CBD8C 001C79EC 7C 08 00 50 */ subf r0, r8, r0
+/* 801CBD90 001C79F0 7C 05 00 00 */ cmpw r5, r0
+/* 801CBD94 001C79F4 41 80 FF EC */ blt lbl_801CBD80
+/* 801CBD98 001C79F8 38 60 00 00 */ li r3, 0
+/* 801CBD9C 001C79FC 48 00 00 10 */ b lbl_801CBDAC
+lbl_801CBDA0:
+/* 801CBDA0 001C7A00 8C 06 FF FF */ lbzu r0, -1(r6)
+/* 801CBDA4 001C7A04 38 63 00 01 */ addi r3, r3, 1
+/* 801CBDA8 001C7A08 9C 1F FF FF */ stbu r0, -1(r31)
+lbl_801CBDAC:
+/* 801CBDAC 001C7A0C 7C 03 40 00 */ cmpw r3, r8
+/* 801CBDB0 001C7A10 40 80 00 10 */ bge lbl_801CBDC0
+/* 801CBDB4 001C7A14 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 801CBDB8 001C7A18 7C 03 00 00 */ cmpw r3, r0
+/* 801CBDBC 001C7A1C 41 80 FF E4 */ blt lbl_801CBDA0
+lbl_801CBDC0:
+/* 801CBDC0 001C7A20 7C 03 40 00 */ cmpw r3, r8
+/* 801CBDC4 001C7A24 7C 63 40 50 */ subf r3, r3, r8
+/* 801CBDC8 001C7A28 38 80 00 30 */ li r4, 0x30
+/* 801CBDCC 001C7A2C 40 80 00 48 */ bge lbl_801CBE14
+/* 801CBDD0 001C7A30 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
+/* 801CBDD4 001C7A34 7C 09 03 A6 */ mtctr r0
+/* 801CBDD8 001C7A38 41 82 00 30 */ beq lbl_801CBE08
+lbl_801CBDDC:
+/* 801CBDDC 001C7A3C 98 9F FF FF */ stb r4, -1(r31)
+/* 801CBDE0 001C7A40 98 9F FF FE */ stb r4, -2(r31)
+/* 801CBDE4 001C7A44 98 9F FF FD */ stb r4, -3(r31)
+/* 801CBDE8 001C7A48 98 9F FF FC */ stb r4, -4(r31)
+/* 801CBDEC 001C7A4C 98 9F FF FB */ stb r4, -5(r31)
+/* 801CBDF0 001C7A50 98 9F FF FA */ stb r4, -6(r31)
+/* 801CBDF4 001C7A54 98 9F FF F9 */ stb r4, -7(r31)
+/* 801CBDF8 001C7A58 9C 9F FF F8 */ stbu r4, -8(r31)
+/* 801CBDFC 001C7A5C 42 00 FF E0 */ bdnz lbl_801CBDDC
+/* 801CBE00 001C7A60 70 63 00 07 */ andi. r3, r3, 7
+/* 801CBE04 001C7A64 41 82 00 10 */ beq lbl_801CBE14
+lbl_801CBE08:
+/* 801CBE08 001C7A68 7C 69 03 A6 */ mtctr r3
+lbl_801CBE0C:
+/* 801CBE0C 001C7A6C 9C 9F FF FF */ stbu r4, -1(r31)
+/* 801CBE10 001C7A70 42 00 FF FC */ bdnz lbl_801CBE0C
+lbl_801CBE14:
+/* 801CBE14 001C7A74 80 1D 00 0C */ lwz r0, 0xc(r29)
+/* 801CBE18 001C7A78 2C 00 00 00 */ cmpwi r0, 0
+/* 801CBE1C 001C7A7C 40 82 00 10 */ bne lbl_801CBE2C
+/* 801CBE20 001C7A80 88 1D 00 03 */ lbz r0, 3(r29)
+/* 801CBE24 001C7A84 2C 00 00 00 */ cmpwi r0, 0
+/* 801CBE28 001C7A88 41 82 00 08 */ beq lbl_801CBE30
+lbl_801CBE2C:
+/* 801CBE2C 001C7A8C 9F DF FF FF */ stbu r30, -1(r31)
+lbl_801CBE30:
+/* 801CBE30 001C7A90 2C 07 00 00 */ cmpwi r7, 0
+/* 801CBE34 001C7A94 41 82 00 A0 */ beq lbl_801CBED4
+/* 801CBE38 001C7A98 38 80 00 00 */ li r4, 0
+/* 801CBE3C 001C7A9C 38 60 00 30 */ li r3, 0x30
+/* 801CBE40 001C7AA0 48 00 00 0C */ b lbl_801CBE4C
+lbl_801CBE44:
+/* 801CBE44 001C7AA4 9C 7F FF FF */ stbu r3, -1(r31)
+/* 801CBE48 001C7AA8 38 84 00 01 */ addi r4, r4, 1
+lbl_801CBE4C:
+/* 801CBE4C 001C7AAC 88 01 00 10 */ lbz r0, 0x10(r1)
+/* 801CBE50 001C7AB0 7C 00 38 50 */ subf r0, r0, r7
+/* 801CBE54 001C7AB4 7C 04 00 00 */ cmpw r4, r0
+/* 801CBE58 001C7AB8 41 80 FF EC */ blt lbl_801CBE44
+/* 801CBE5C 001C7ABC 7C 04 38 00 */ cmpw r4, r7
+/* 801CBE60 001C7AC0 7C 64 38 50 */ subf r3, r4, r7
+/* 801CBE64 001C7AC4 40 80 00 78 */ bge lbl_801CBEDC
+/* 801CBE68 001C7AC8 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f
+/* 801CBE6C 001C7ACC 7C 09 03 A6 */ mtctr r0
+/* 801CBE70 001C7AD0 41 82 00 50 */ beq lbl_801CBEC0
+lbl_801CBE74:
+/* 801CBE74 001C7AD4 88 06 FF FF */ lbz r0, -1(r6)
+/* 801CBE78 001C7AD8 98 1F FF FF */ stb r0, -1(r31)
+/* 801CBE7C 001C7ADC 88 06 FF FE */ lbz r0, -2(r6)
+/* 801CBE80 001C7AE0 98 1F FF FE */ stb r0, -2(r31)
+/* 801CBE84 001C7AE4 88 06 FF FD */ lbz r0, -3(r6)
+/* 801CBE88 001C7AE8 98 1F FF FD */ stb r0, -3(r31)
+/* 801CBE8C 001C7AEC 88 06 FF FC */ lbz r0, -4(r6)
+/* 801CBE90 001C7AF0 98 1F FF FC */ stb r0, -4(r31)
+/* 801CBE94 001C7AF4 88 06 FF FB */ lbz r0, -5(r6)
+/* 801CBE98 001C7AF8 98 1F FF FB */ stb r0, -5(r31)
+/* 801CBE9C 001C7AFC 88 06 FF FA */ lbz r0, -6(r6)
+/* 801CBEA0 001C7B00 98 1F FF FA */ stb r0, -6(r31)
+/* 801CBEA4 001C7B04 88 06 FF F9 */ lbz r0, -7(r6)
+/* 801CBEA8 001C7B08 98 1F FF F9 */ stb r0, -7(r31)
+/* 801CBEAC 001C7B0C 8C 06 FF F8 */ lbzu r0, -8(r6)
+/* 801CBEB0 001C7B10 9C 1F FF F8 */ stbu r0, -8(r31)
+/* 801CBEB4 001C7B14 42 00 FF C0 */ bdnz lbl_801CBE74
+/* 801CBEB8 001C7B18 70 63 00 07 */ andi. r3, r3, 7
+/* 801CBEBC 001C7B1C 41 82 00 20 */ beq lbl_801CBEDC
+lbl_801CBEC0:
+/* 801CBEC0 001C7B20 7C 69 03 A6 */ mtctr r3
+lbl_801CBEC4:
+/* 801CBEC4 001C7B24 8C 06 FF FF */ lbzu r0, -1(r6)
+/* 801CBEC8 001C7B28 9C 1F FF FF */ stbu r0, -1(r31)
+/* 801CBECC 001C7B2C 42 00 FF F8 */ bdnz lbl_801CBEC4
+/* 801CBED0 001C7B30 48 00 00 0C */ b lbl_801CBEDC
+lbl_801CBED4:
+/* 801CBED4 001C7B34 38 00 00 30 */ li r0, 0x30
+/* 801CBED8 001C7B38 9C 1F FF FF */ stbu r0, -1(r31)
+lbl_801CBEDC:
+/* 801CBEDC 001C7B3C 88 01 00 0C */ lbz r0, 0xc(r1)
+/* 801CBEE0 001C7B40 7C 00 07 75 */ extsb. r0, r0
+/* 801CBEE4 001C7B44 41 82 00 10 */ beq lbl_801CBEF4
+/* 801CBEE8 001C7B48 38 00 00 2D */ li r0, 0x2d
+/* 801CBEEC 001C7B4C 9C 1F FF FF */ stbu r0, -1(r31)
+/* 801CBEF0 001C7B50 48 00 00 2C */ b lbl_801CBF1C
+lbl_801CBEF4:
+/* 801CBEF4 001C7B54 88 1D 00 01 */ lbz r0, 1(r29)
+/* 801CBEF8 001C7B58 28 00 00 01 */ cmplwi r0, 1
+/* 801CBEFC 001C7B5C 40 82 00 10 */ bne lbl_801CBF0C
+/* 801CBF00 001C7B60 38 00 00 2B */ li r0, 0x2b
+/* 801CBF04 001C7B64 9C 1F FF FF */ stbu r0, -1(r31)
+/* 801CBF08 001C7B68 48 00 00 14 */ b lbl_801CBF1C
+lbl_801CBF0C:
+/* 801CBF0C 001C7B6C 28 00 00 02 */ cmplwi r0, 2
+/* 801CBF10 001C7B70 40 82 00 0C */ bne lbl_801CBF1C
+/* 801CBF14 001C7B74 38 00 00 20 */ li r0, 0x20
+/* 801CBF18 001C7B78 9C 1F FF FF */ stbu r0, -1(r31)
+lbl_801CBF1C:
+/* 801CBF1C 001C7B7C 7F E3 FB 78 */ mr r3, r31
+lbl_801CBF20:
+/* 801CBF20 001C7B80 80 01 00 54 */ lwz r0, 0x54(r1)
+/* 801CBF24 001C7B84 CB E1 00 48 */ lfd f31, 0x48(r1)
+/* 801CBF28 001C7B88 83 E1 00 44 */ lwz r31, 0x44(r1)
+/* 801CBF2C 001C7B8C 83 C1 00 40 */ lwz r30, 0x40(r1)
+/* 801CBF30 001C7B90 83 A1 00 3C */ lwz r29, 0x3c(r1)
+/* 801CBF34 001C7B94 83 81 00 38 */ lwz r28, 0x38(r1)
+/* 801CBF38 001C7B98 7C 08 03 A6 */ mtlr r0
+/* 801CBF3C 001C7B9C 38 21 00 50 */ addi r1, r1, 0x50
+/* 801CBF40 001C7BA0 4E 80 00 20 */ blr
+
+.global __pformatter
+__pformatter:
+/* 801CBF44 001C7BA4 94 21 FD 40 */ stwu r1, -0x2c0(r1)
+/* 801CBF48 001C7BA8 7C 08 02 A6 */ mflr r0
+/* 801CBF4C 001C7BAC 90 01 02 C4 */ stw r0, 0x2c4(r1)
+/* 801CBF50 001C7BB0 BE 01 02 80 */ stmw r16, 0x280(r1)
+/* 801CBF54 001C7BB4 3A 00 00 20 */ li r16, 0x20
+/* 801CBF58 001C7BB8 3F A0 80 40 */ lis r29, lbl_803FCCC0@ha
+/* 801CBF5C 001C7BBC 7C 71 1B 78 */ mr r17, r3
+/* 801CBF60 001C7BC0 7C 92 23 78 */ mr r18, r4
+/* 801CBF64 001C7BC4 7C B7 2B 78 */ mr r23, r5
+/* 801CBF68 001C7BC8 7C D3 33 78 */ mr r19, r6
+/* 801CBF6C 001C7BCC 3B BD CC C0 */ addi r29, r29, lbl_803FCCC0@l
+/* 801CBF70 001C7BD0 3B 81 02 7F */ addi r28, r1, 0x27f
+/* 801CBF74 001C7BD4 3B 20 00 00 */ li r25, 0
+/* 801CBF78 001C7BD8 3B E0 00 25 */ li r31, 0x25
+/* 801CBF7C 001C7BDC 3F C0 80 42 */ lis r30, 0x8042
+/* 801CBF80 001C7BE0 9A 01 00 09 */ stb r16, 9(r1)
+/* 801CBF84 001C7BE4 48 00 07 F8 */ b lbl_801CC77C
+lbl_801CBF88:
+/* 801CBF88 001C7BE8 7E E3 BB 78 */ mr r3, r23
+/* 801CBF8C 001C7BEC 38 80 00 25 */ li r4, 0x25
+/* 801CBF90 001C7BF0 48 00 26 19 */ bl strchr
+/* 801CBF94 001C7BF4 2C 03 00 00 */ cmpwi r3, 0
+/* 801CBF98 001C7BF8 7C 78 1B 78 */ mr r24, r3
+/* 801CBF9C 001C7BFC 40 82 00 40 */ bne lbl_801CBFDC
+/* 801CBFA0 001C7C00 7E E3 BB 78 */ mr r3, r23
+/* 801CBFA4 001C7C04 4B FF AB C1 */ bl strlen
+/* 801CBFA8 001C7C08 2C 03 00 00 */ cmpwi r3, 0
+/* 801CBFAC 001C7C0C 7C 65 1B 78 */ mr r5, r3
+/* 801CBFB0 001C7C10 7F 39 1A 14 */ add r25, r25, r3
+/* 801CBFB4 001C7C14 41 82 07 D4 */ beq lbl_801CC788
+/* 801CBFB8 001C7C18 7E 2C 8B 78 */ mr r12, r17
+/* 801CBFBC 001C7C1C 7E 43 93 78 */ mr r3, r18
+/* 801CBFC0 001C7C20 7E E4 BB 78 */ mr r4, r23
+/* 801CBFC4 001C7C24 7D 89 03 A6 */ mtctr r12
+/* 801CBFC8 001C7C28 4E 80 04 21 */ bctrl
+/* 801CBFCC 001C7C2C 2C 03 00 00 */ cmpwi r3, 0
+/* 801CBFD0 001C7C30 40 82 07 B8 */ bne lbl_801CC788
+/* 801CBFD4 001C7C34 38 60 FF FF */ li r3, -1
+/* 801CBFD8 001C7C38 48 00 07 B4 */ b lbl_801CC78C
+lbl_801CBFDC:
+/* 801CBFDC 001C7C3C 7C B7 18 51 */ subf. r5, r23, r3
+/* 801CBFE0 001C7C40 7F 39 2A 14 */ add r25, r25, r5
+/* 801CBFE4 001C7C44 41 82 00 28 */ beq lbl_801CC00C
+/* 801CBFE8 001C7C48 7E 2C 8B 78 */ mr r12, r17
+/* 801CBFEC 001C7C4C 7E 43 93 78 */ mr r3, r18
+/* 801CBFF0 001C7C50 7E E4 BB 78 */ mr r4, r23
+/* 801CBFF4 001C7C54 7D 89 03 A6 */ mtctr r12
+/* 801CBFF8 001C7C58 4E 80 04 21 */ bctrl
+/* 801CBFFC 001C7C5C 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC000 001C7C60 40 82 00 0C */ bne lbl_801CC00C
+/* 801CC004 001C7C64 38 60 FF FF */ li r3, -1
+/* 801CC008 001C7C68 48 00 07 84 */ b lbl_801CC78C
+lbl_801CC00C:
+/* 801CC00C 001C7C6C 7F 03 C3 78 */ mr r3, r24
+/* 801CC010 001C7C70 7E 64 9B 78 */ mr r4, r19
+/* 801CC014 001C7C74 38 A1 00 70 */ addi r5, r1, 0x70
+/* 801CC018 001C7C78 4B FF E7 A9 */ bl parse_format
+/* 801CC01C 001C7C7C 88 01 00 75 */ lbz r0, 0x75(r1)
+/* 801CC020 001C7C80 7C 77 1B 78 */ mr r23, r3
+/* 801CC024 001C7C84 2C 00 00 68 */ cmpwi r0, 0x68
+/* 801CC028 001C7C88 41 82 05 D4 */ beq lbl_801CC5FC
+/* 801CC02C 001C7C8C 40 80 00 60 */ bge lbl_801CC08C
+/* 801CC030 001C7C90 2C 00 00 58 */ cmpwi r0, 0x58
+/* 801CC034 001C7C94 41 82 02 10 */ beq lbl_801CC244
+/* 801CC038 001C7C98 40 80 00 30 */ bge lbl_801CC068
+/* 801CC03C 001C7C9C 2C 00 00 41 */ cmpwi r0, 0x41
+/* 801CC040 001C7CA0 41 82 03 D0 */ beq lbl_801CC410
+/* 801CC044 001C7CA4 40 80 00 10 */ bge lbl_801CC054
+/* 801CC048 001C7CA8 2C 00 00 25 */ cmpwi r0, 0x25
+/* 801CC04C 001C7CAC 41 82 05 A0 */ beq lbl_801CC5EC
+/* 801CC050 001C7CB0 48 00 05 AC */ b lbl_801CC5FC
+lbl_801CC054:
+/* 801CC054 001C7CB4 2C 00 00 48 */ cmpwi r0, 0x48
+/* 801CC058 001C7CB8 40 80 05 A4 */ bge lbl_801CC5FC
+/* 801CC05C 001C7CBC 2C 00 00 45 */ cmpwi r0, 0x45
+/* 801CC060 001C7CC0 40 80 03 40 */ bge lbl_801CC3A0
+/* 801CC064 001C7CC4 48 00 05 98 */ b lbl_801CC5FC
+lbl_801CC068:
+/* 801CC068 001C7CC8 2C 00 00 63 */ cmpwi r0, 0x63
+/* 801CC06C 001C7CCC 41 82 05 60 */ beq lbl_801CC5CC
+/* 801CC070 001C7CD0 40 80 00 10 */ bge lbl_801CC080
+/* 801CC074 001C7CD4 2C 00 00 61 */ cmpwi r0, 0x61
+/* 801CC078 001C7CD8 41 82 03 98 */ beq lbl_801CC410
+/* 801CC07C 001C7CDC 48 00 05 80 */ b lbl_801CC5FC
+lbl_801CC080:
+/* 801CC080 001C7CE0 2C 00 00 65 */ cmpwi r0, 0x65
+/* 801CC084 001C7CE4 40 80 03 1C */ bge lbl_801CC3A0
+/* 801CC088 001C7CE8 48 00 00 60 */ b lbl_801CC0E8
+lbl_801CC08C:
+/* 801CC08C 001C7CEC 2C 00 00 74 */ cmpwi r0, 0x74
+/* 801CC090 001C7CF0 41 82 05 6C */ beq lbl_801CC5FC
+/* 801CC094 001C7CF4 40 80 00 30 */ bge lbl_801CC0C4
+/* 801CC098 001C7CF8 2C 00 00 6F */ cmpwi r0, 0x6f
+/* 801CC09C 001C7CFC 41 82 01 A8 */ beq lbl_801CC244
+/* 801CC0A0 001C7D00 40 80 00 18 */ bge lbl_801CC0B8
+/* 801CC0A4 001C7D04 2C 00 00 6E */ cmpwi r0, 0x6e
+/* 801CC0A8 001C7D08 40 80 04 AC */ bge lbl_801CC554
+/* 801CC0AC 001C7D0C 2C 00 00 6A */ cmpwi r0, 0x6a
+/* 801CC0B0 001C7D10 40 80 05 4C */ bge lbl_801CC5FC
+/* 801CC0B4 001C7D14 48 00 00 34 */ b lbl_801CC0E8
+lbl_801CC0B8:
+/* 801CC0B8 001C7D18 2C 00 00 73 */ cmpwi r0, 0x73
+/* 801CC0BC 001C7D1C 40 80 03 C4 */ bge lbl_801CC480
+/* 801CC0C0 001C7D20 48 00 05 3C */ b lbl_801CC5FC
+lbl_801CC0C4:
+/* 801CC0C4 001C7D24 2C 00 00 78 */ cmpwi r0, 0x78
+/* 801CC0C8 001C7D28 41 82 01 7C */ beq lbl_801CC244
+/* 801CC0CC 001C7D2C 40 80 00 10 */ bge lbl_801CC0DC
+/* 801CC0D0 001C7D30 2C 00 00 76 */ cmpwi r0, 0x76
+/* 801CC0D4 001C7D34 40 80 05 28 */ bge lbl_801CC5FC
+/* 801CC0D8 001C7D38 48 00 01 6C */ b lbl_801CC244
+lbl_801CC0DC:
+/* 801CC0DC 001C7D3C 2C 00 00 FF */ cmpwi r0, 0xff
+/* 801CC0E0 001C7D40 41 82 05 1C */ beq lbl_801CC5FC
+/* 801CC0E4 001C7D44 48 00 05 18 */ b lbl_801CC5FC
+lbl_801CC0E8:
+/* 801CC0E8 001C7D48 88 01 00 74 */ lbz r0, 0x74(r1)
+/* 801CC0EC 001C7D4C 28 00 00 03 */ cmplwi r0, 3
+/* 801CC0F0 001C7D50 40 82 00 18 */ bne lbl_801CC108
+/* 801CC0F4 001C7D54 7E 63 9B 78 */ mr r3, r19
+/* 801CC0F8 001C7D58 38 80 00 01 */ li r4, 1
+/* 801CC0FC 001C7D5C 4B FF AA 85 */ bl __va_arg
+/* 801CC100 001C7D60 82 C3 00 00 */ lwz r22, 0(r3)
+/* 801CC104 001C7D64 48 00 00 8C */ b lbl_801CC190
+lbl_801CC108:
+/* 801CC108 001C7D68 28 00 00 04 */ cmplwi r0, 4
+/* 801CC10C 001C7D6C 40 82 00 1C */ bne lbl_801CC128
+/* 801CC110 001C7D70 7E 63 9B 78 */ mr r3, r19
+/* 801CC114 001C7D74 38 80 00 02 */ li r4, 2
+/* 801CC118 001C7D78 4B FF AA 69 */ bl __va_arg
+/* 801CC11C 001C7D7C 82 A3 00 00 */ lwz r21, 0(r3)
+/* 801CC120 001C7D80 82 83 00 04 */ lwz r20, 4(r3)
+/* 801CC124 001C7D84 48 00 00 6C */ b lbl_801CC190
+lbl_801CC128:
+/* 801CC128 001C7D88 28 00 00 06 */ cmplwi r0, 6
+/* 801CC12C 001C7D8C 40 82 00 1C */ bne lbl_801CC148
+/* 801CC130 001C7D90 7E 63 9B 78 */ mr r3, r19
+/* 801CC134 001C7D94 38 80 00 02 */ li r4, 2
+/* 801CC138 001C7D98 4B FF AA 49 */ bl __va_arg
+/* 801CC13C 001C7D9C 82 A3 00 00 */ lwz r21, 0(r3)
+/* 801CC140 001C7DA0 82 83 00 04 */ lwz r20, 4(r3)
+/* 801CC144 001C7DA4 48 00 00 4C */ b lbl_801CC190
+lbl_801CC148:
+/* 801CC148 001C7DA8 28 00 00 07 */ cmplwi r0, 7
+/* 801CC14C 001C7DAC 40 82 00 18 */ bne lbl_801CC164
+/* 801CC150 001C7DB0 7E 63 9B 78 */ mr r3, r19
+/* 801CC154 001C7DB4 38 80 00 01 */ li r4, 1
+/* 801CC158 001C7DB8 4B FF AA 29 */ bl __va_arg
+/* 801CC15C 001C7DBC 82 C3 00 00 */ lwz r22, 0(r3)
+/* 801CC160 001C7DC0 48 00 00 30 */ b lbl_801CC190
+lbl_801CC164:
+/* 801CC164 001C7DC4 28 00 00 08 */ cmplwi r0, 8
+/* 801CC168 001C7DC8 40 82 00 18 */ bne lbl_801CC180
+/* 801CC16C 001C7DCC 7E 63 9B 78 */ mr r3, r19
+/* 801CC170 001C7DD0 38 80 00 01 */ li r4, 1
+/* 801CC174 001C7DD4 4B FF AA 0D */ bl __va_arg
+/* 801CC178 001C7DD8 82 C3 00 00 */ lwz r22, 0(r3)
+/* 801CC17C 001C7DDC 48 00 00 14 */ b lbl_801CC190
+lbl_801CC180:
+/* 801CC180 001C7DE0 7E 63 9B 78 */ mr r3, r19
+/* 801CC184 001C7DE4 38 80 00 01 */ li r4, 1
+/* 801CC188 001C7DE8 4B FF A9 F9 */ bl __va_arg
+/* 801CC18C 001C7DEC 82 C3 00 00 */ lwz r22, 0(r3)
+lbl_801CC190:
+/* 801CC190 001C7DF0 88 01 00 74 */ lbz r0, 0x74(r1)
+/* 801CC194 001C7DF4 28 00 00 02 */ cmplwi r0, 2
+/* 801CC198 001C7DF8 40 82 00 08 */ bne lbl_801CC1A0
+/* 801CC19C 001C7DFC 7E D6 07 34 */ extsh r22, r22
+lbl_801CC1A0:
+/* 801CC1A0 001C7E00 28 00 00 01 */ cmplwi r0, 1
+/* 801CC1A4 001C7E04 40 82 00 08 */ bne lbl_801CC1AC
+/* 801CC1A8 001C7E08 7E D6 07 74 */ extsb r22, r22
+lbl_801CC1AC:
+/* 801CC1AC 001C7E0C 28 00 00 04 */ cmplwi r0, 4
+/* 801CC1B0 001C7E10 41 82 00 0C */ beq lbl_801CC1BC
+/* 801CC1B4 001C7E14 28 00 00 06 */ cmplwi r0, 6
+/* 801CC1B8 001C7E18 40 82 00 48 */ bne lbl_801CC200
+lbl_801CC1BC:
+/* 801CC1BC 001C7E1C 81 21 00 70 */ lwz r9, 0x70(r1)
+/* 801CC1C0 001C7E20 7E 84 A3 78 */ mr r4, r20
+/* 801CC1C4 001C7E24 81 01 00 74 */ lwz r8, 0x74(r1)
+/* 801CC1C8 001C7E28 7E A3 AB 78 */ mr r3, r21
+/* 801CC1CC 001C7E2C 80 E1 00 78 */ lwz r7, 0x78(r1)
+/* 801CC1D0 001C7E30 38 A1 02 80 */ addi r5, r1, 0x280
+/* 801CC1D4 001C7E34 80 01 00 7C */ lwz r0, 0x7c(r1)
+/* 801CC1D8 001C7E38 38 C1 00 60 */ addi r6, r1, 0x60
+/* 801CC1DC 001C7E3C 91 21 00 60 */ stw r9, 0x60(r1)
+/* 801CC1E0 001C7E40 91 01 00 64 */ stw r8, 0x64(r1)
+/* 801CC1E4 001C7E44 90 E1 00 68 */ stw r7, 0x68(r1)
+/* 801CC1E8 001C7E48 90 01 00 6C */ stw r0, 0x6c(r1)
+/* 801CC1EC 001C7E4C 4B FF ED F9 */ bl longlong2str
+/* 801CC1F0 001C7E50 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC1F4 001C7E54 7C 7A 1B 78 */ mr r26, r3
+/* 801CC1F8 001C7E58 41 82 04 04 */ beq lbl_801CC5FC
+/* 801CC1FC 001C7E5C 48 00 00 40 */ b lbl_801CC23C
+lbl_801CC200:
+/* 801CC200 001C7E60 81 01 00 70 */ lwz r8, 0x70(r1)
+/* 801CC204 001C7E64 7E C3 B3 78 */ mr r3, r22
+/* 801CC208 001C7E68 80 E1 00 74 */ lwz r7, 0x74(r1)
+/* 801CC20C 001C7E6C 38 81 02 80 */ addi r4, r1, 0x280
+/* 801CC210 001C7E70 80 C1 00 78 */ lwz r6, 0x78(r1)
+/* 801CC214 001C7E74 38 A1 00 50 */ addi r5, r1, 0x50
+/* 801CC218 001C7E78 80 01 00 7C */ lwz r0, 0x7c(r1)
+/* 801CC21C 001C7E7C 91 01 00 50 */ stw r8, 0x50(r1)
+/* 801CC220 001C7E80 90 E1 00 54 */ stw r7, 0x54(r1)
+/* 801CC224 001C7E84 90 C1 00 58 */ stw r6, 0x58(r1)
+/* 801CC228 001C7E88 90 01 00 5C */ stw r0, 0x5c(r1)
+/* 801CC22C 001C7E8C 4B FF EB 91 */ bl long2str
+/* 801CC230 001C7E90 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC234 001C7E94 7C 7A 1B 78 */ mr r26, r3
+/* 801CC238 001C7E98 41 82 03 C4 */ beq lbl_801CC5FC
+lbl_801CC23C:
+/* 801CC23C 001C7E9C 7F 7A E0 50 */ subf r27, r26, r28
+/* 801CC240 001C7EA0 48 00 04 00 */ b lbl_801CC640
+lbl_801CC244:
+/* 801CC244 001C7EA4 88 01 00 74 */ lbz r0, 0x74(r1)
+/* 801CC248 001C7EA8 28 00 00 03 */ cmplwi r0, 3
+/* 801CC24C 001C7EAC 40 82 00 18 */ bne lbl_801CC264
+/* 801CC250 001C7EB0 7E 63 9B 78 */ mr r3, r19
+/* 801CC254 001C7EB4 38 80 00 01 */ li r4, 1
+/* 801CC258 001C7EB8 4B FF A9 29 */ bl __va_arg
+/* 801CC25C 001C7EBC 82 C3 00 00 */ lwz r22, 0(r3)
+/* 801CC260 001C7EC0 48 00 00 8C */ b lbl_801CC2EC
+lbl_801CC264:
+/* 801CC264 001C7EC4 28 00 00 04 */ cmplwi r0, 4
+/* 801CC268 001C7EC8 40 82 00 1C */ bne lbl_801CC284
+/* 801CC26C 001C7ECC 7E 63 9B 78 */ mr r3, r19
+/* 801CC270 001C7ED0 38 80 00 02 */ li r4, 2
+/* 801CC274 001C7ED4 4B FF A9 0D */ bl __va_arg
+/* 801CC278 001C7ED8 82 A3 00 00 */ lwz r21, 0(r3)
+/* 801CC27C 001C7EDC 82 83 00 04 */ lwz r20, 4(r3)
+/* 801CC280 001C7EE0 48 00 00 6C */ b lbl_801CC2EC
+lbl_801CC284:
+/* 801CC284 001C7EE4 28 00 00 06 */ cmplwi r0, 6
+/* 801CC288 001C7EE8 40 82 00 1C */ bne lbl_801CC2A4
+/* 801CC28C 001C7EEC 7E 63 9B 78 */ mr r3, r19
+/* 801CC290 001C7EF0 38 80 00 02 */ li r4, 2
+/* 801CC294 001C7EF4 4B FF A8 ED */ bl __va_arg
+/* 801CC298 001C7EF8 82 A3 00 00 */ lwz r21, 0(r3)
+/* 801CC29C 001C7EFC 82 83 00 04 */ lwz r20, 4(r3)
+/* 801CC2A0 001C7F00 48 00 00 4C */ b lbl_801CC2EC
+lbl_801CC2A4:
+/* 801CC2A4 001C7F04 28 00 00 07 */ cmplwi r0, 7
+/* 801CC2A8 001C7F08 40 82 00 18 */ bne lbl_801CC2C0
+/* 801CC2AC 001C7F0C 7E 63 9B 78 */ mr r3, r19
+/* 801CC2B0 001C7F10 38 80 00 01 */ li r4, 1
+/* 801CC2B4 001C7F14 4B FF A8 CD */ bl __va_arg
+/* 801CC2B8 001C7F18 82 C3 00 00 */ lwz r22, 0(r3)
+/* 801CC2BC 001C7F1C 48 00 00 30 */ b lbl_801CC2EC
+lbl_801CC2C0:
+/* 801CC2C0 001C7F20 28 00 00 08 */ cmplwi r0, 8
+/* 801CC2C4 001C7F24 40 82 00 18 */ bne lbl_801CC2DC
+/* 801CC2C8 001C7F28 7E 63 9B 78 */ mr r3, r19
+/* 801CC2CC 001C7F2C 38 80 00 01 */ li r4, 1
+/* 801CC2D0 001C7F30 4B FF A8 B1 */ bl __va_arg
+/* 801CC2D4 001C7F34 82 C3 00 00 */ lwz r22, 0(r3)
+/* 801CC2D8 001C7F38 48 00 00 14 */ b lbl_801CC2EC
+lbl_801CC2DC:
+/* 801CC2DC 001C7F3C 7E 63 9B 78 */ mr r3, r19
+/* 801CC2E0 001C7F40 38 80 00 01 */ li r4, 1
+/* 801CC2E4 001C7F44 4B FF A8 9D */ bl __va_arg
+/* 801CC2E8 001C7F48 82 C3 00 00 */ lwz r22, 0(r3)
+lbl_801CC2EC:
+/* 801CC2EC 001C7F4C 88 01 00 74 */ lbz r0, 0x74(r1)
+/* 801CC2F0 001C7F50 28 00 00 02 */ cmplwi r0, 2
+/* 801CC2F4 001C7F54 40 82 00 08 */ bne lbl_801CC2FC
+/* 801CC2F8 001C7F58 56 D6 04 3E */ clrlwi r22, r22, 0x10
+lbl_801CC2FC:
+/* 801CC2FC 001C7F5C 28 00 00 01 */ cmplwi r0, 1
+/* 801CC300 001C7F60 40 82 00 08 */ bne lbl_801CC308
+/* 801CC304 001C7F64 56 D6 06 3E */ clrlwi r22, r22, 0x18
+lbl_801CC308:
+/* 801CC308 001C7F68 28 00 00 04 */ cmplwi r0, 4
+/* 801CC30C 001C7F6C 41 82 00 0C */ beq lbl_801CC318
+/* 801CC310 001C7F70 28 00 00 06 */ cmplwi r0, 6
+/* 801CC314 001C7F74 40 82 00 48 */ bne lbl_801CC35C
+lbl_801CC318:
+/* 801CC318 001C7F78 81 21 00 70 */ lwz r9, 0x70(r1)
+/* 801CC31C 001C7F7C 7E 84 A3 78 */ mr r4, r20
+/* 801CC320 001C7F80 81 01 00 74 */ lwz r8, 0x74(r1)
+/* 801CC324 001C7F84 7E A3 AB 78 */ mr r3, r21
+/* 801CC328 001C7F88 80 E1 00 78 */ lwz r7, 0x78(r1)
+/* 801CC32C 001C7F8C 38 A1 02 80 */ addi r5, r1, 0x280
+/* 801CC330 001C7F90 80 01 00 7C */ lwz r0, 0x7c(r1)
+/* 801CC334 001C7F94 38 C1 00 40 */ addi r6, r1, 0x40
+/* 801CC338 001C7F98 91 21 00 40 */ stw r9, 0x40(r1)
+/* 801CC33C 001C7F9C 91 01 00 44 */ stw r8, 0x44(r1)
+/* 801CC340 001C7FA0 90 E1 00 48 */ stw r7, 0x48(r1)
+/* 801CC344 001C7FA4 90 01 00 4C */ stw r0, 0x4c(r1)
+/* 801CC348 001C7FA8 4B FF EC 9D */ bl longlong2str
+/* 801CC34C 001C7FAC 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC350 001C7FB0 7C 7A 1B 78 */ mr r26, r3
+/* 801CC354 001C7FB4 41 82 02 A8 */ beq lbl_801CC5FC
+/* 801CC358 001C7FB8 48 00 00 40 */ b lbl_801CC398
+lbl_801CC35C:
+/* 801CC35C 001C7FBC 81 01 00 70 */ lwz r8, 0x70(r1)
+/* 801CC360 001C7FC0 7E C3 B3 78 */ mr r3, r22
+/* 801CC364 001C7FC4 80 E1 00 74 */ lwz r7, 0x74(r1)
+/* 801CC368 001C7FC8 38 81 02 80 */ addi r4, r1, 0x280
+/* 801CC36C 001C7FCC 80 C1 00 78 */ lwz r6, 0x78(r1)
+/* 801CC370 001C7FD0 38 A1 00 30 */ addi r5, r1, 0x30
+/* 801CC374 001C7FD4 80 01 00 7C */ lwz r0, 0x7c(r1)
+/* 801CC378 001C7FD8 91 01 00 30 */ stw r8, 0x30(r1)
+/* 801CC37C 001C7FDC 90 E1 00 34 */ stw r7, 0x34(r1)
+/* 801CC380 001C7FE0 90 C1 00 38 */ stw r6, 0x38(r1)
+/* 801CC384 001C7FE4 90 01 00 3C */ stw r0, 0x3c(r1)
+/* 801CC388 001C7FE8 4B FF EA 35 */ bl long2str
+/* 801CC38C 001C7FEC 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC390 001C7FF0 7C 7A 1B 78 */ mr r26, r3
+/* 801CC394 001C7FF4 41 82 02 68 */ beq lbl_801CC5FC
+lbl_801CC398:
+/* 801CC398 001C7FF8 7F 7A E0 50 */ subf r27, r26, r28
+/* 801CC39C 001C7FFC 48 00 02 A4 */ b lbl_801CC640
+lbl_801CC3A0:
+/* 801CC3A0 001C8000 88 01 00 74 */ lbz r0, 0x74(r1)
+/* 801CC3A4 001C8004 28 00 00 09 */ cmplwi r0, 9
+/* 801CC3A8 001C8008 40 82 00 18 */ bne lbl_801CC3C0
+/* 801CC3AC 001C800C 7E 63 9B 78 */ mr r3, r19
+/* 801CC3B0 001C8010 38 80 00 03 */ li r4, 3
+/* 801CC3B4 001C8014 4B FF A7 CD */ bl __va_arg
+/* 801CC3B8 001C8018 C8 23 00 00 */ lfd f1, 0(r3)
+/* 801CC3BC 001C801C 48 00 00 14 */ b lbl_801CC3D0
+lbl_801CC3C0:
+/* 801CC3C0 001C8020 7E 63 9B 78 */ mr r3, r19
+/* 801CC3C4 001C8024 38 80 00 03 */ li r4, 3
+/* 801CC3C8 001C8028 4B FF A7 B9 */ bl __va_arg
+/* 801CC3CC 001C802C C8 23 00 00 */ lfd f1, 0(r3)
+lbl_801CC3D0:
+/* 801CC3D0 001C8030 80 E1 00 70 */ lwz r7, 0x70(r1)
+/* 801CC3D4 001C8034 38 61 02 80 */ addi r3, r1, 0x280
+/* 801CC3D8 001C8038 80 C1 00 74 */ lwz r6, 0x74(r1)
+/* 801CC3DC 001C803C 38 81 00 20 */ addi r4, r1, 0x20
+/* 801CC3E0 001C8040 80 A1 00 78 */ lwz r5, 0x78(r1)
+/* 801CC3E4 001C8044 80 01 00 7C */ lwz r0, 0x7c(r1)
+/* 801CC3E8 001C8048 90 E1 00 20 */ stw r7, 0x20(r1)
+/* 801CC3EC 001C804C 90 C1 00 24 */ stw r6, 0x24(r1)
+/* 801CC3F0 001C8050 90 A1 00 28 */ stw r5, 0x28(r1)
+/* 801CC3F4 001C8054 90 01 00 2C */ stw r0, 0x2c(r1)
+/* 801CC3F8 001C8058 4B FF F3 7D */ bl float2str
+/* 801CC3FC 001C805C 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC400 001C8060 7C 7A 1B 78 */ mr r26, r3
+/* 801CC404 001C8064 41 82 01 F8 */ beq lbl_801CC5FC
+/* 801CC408 001C8068 7F 63 E0 50 */ subf r27, r3, r28
+/* 801CC40C 001C806C 48 00 02 34 */ b lbl_801CC640
+lbl_801CC410:
+/* 801CC410 001C8070 88 01 00 74 */ lbz r0, 0x74(r1)
+/* 801CC414 001C8074 28 00 00 09 */ cmplwi r0, 9
+/* 801CC418 001C8078 40 82 00 18 */ bne lbl_801CC430
+/* 801CC41C 001C807C 7E 63 9B 78 */ mr r3, r19
+/* 801CC420 001C8080 38 80 00 03 */ li r4, 3
+/* 801CC424 001C8084 4B FF A7 5D */ bl __va_arg
+/* 801CC428 001C8088 C8 23 00 00 */ lfd f1, 0(r3)
+/* 801CC42C 001C808C 48 00 00 14 */ b lbl_801CC440
+lbl_801CC430:
+/* 801CC430 001C8090 7E 63 9B 78 */ mr r3, r19
+/* 801CC434 001C8094 38 80 00 03 */ li r4, 3
+/* 801CC438 001C8098 4B FF A7 49 */ bl __va_arg
+/* 801CC43C 001C809C C8 23 00 00 */ lfd f1, 0(r3)
+lbl_801CC440:
+/* 801CC440 001C80A0 80 E1 00 70 */ lwz r7, 0x70(r1)
+/* 801CC444 001C80A4 38 61 02 80 */ addi r3, r1, 0x280
+/* 801CC448 001C80A8 80 C1 00 74 */ lwz r6, 0x74(r1)
+/* 801CC44C 001C80AC 38 81 00 10 */ addi r4, r1, 0x10
+/* 801CC450 001C80B0 80 A1 00 78 */ lwz r5, 0x78(r1)
+/* 801CC454 001C80B4 80 01 00 7C */ lwz r0, 0x7c(r1)
+/* 801CC458 001C80B8 90 E1 00 10 */ stw r7, 0x10(r1)
+/* 801CC45C 001C80BC 90 C1 00 14 */ stw r6, 0x14(r1)
+/* 801CC460 001C80C0 90 A1 00 18 */ stw r5, 0x18(r1)
+/* 801CC464 001C80C4 90 01 00 1C */ stw r0, 0x1c(r1)
+/* 801CC468 001C80C8 4B FF EE 1D */ bl double2hex
+/* 801CC46C 001C80CC 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC470 001C80D0 7C 7A 1B 78 */ mr r26, r3
+/* 801CC474 001C80D4 41 82 01 88 */ beq lbl_801CC5FC
+/* 801CC478 001C80D8 7F 63 E0 50 */ subf r27, r3, r28
+/* 801CC47C 001C80DC 48 00 01 C4 */ b lbl_801CC640
+lbl_801CC480:
+/* 801CC480 001C80E0 88 01 00 74 */ lbz r0, 0x74(r1)
+/* 801CC484 001C80E4 28 00 00 05 */ cmplwi r0, 5
+/* 801CC488 001C80E8 40 82 00 3C */ bne lbl_801CC4C4
+/* 801CC48C 001C80EC 7E 63 9B 78 */ mr r3, r19
+/* 801CC490 001C80F0 38 80 00 01 */ li r4, 1
+/* 801CC494 001C80F4 4B FF A6 ED */ bl __va_arg
+/* 801CC498 001C80F8 80 83 00 00 */ lwz r4, 0(r3)
+/* 801CC49C 001C80FC 2C 04 00 00 */ cmpwi r4, 0
+/* 801CC4A0 001C8100 40 82 00 08 */ bne lbl_801CC4A8
+/* 801CC4A4 001C8104 38 8D 83 E0 */ addi r4, r13, lbl_8063D6A0-_SDA_BASE_
+lbl_801CC4A8:
+/* 801CC4A8 001C8108 38 61 00 80 */ addi r3, r1, 0x80
+/* 801CC4AC 001C810C 38 A0 02 00 */ li r5, 0x200
+/* 801CC4B0 001C8110 4B FF DD 0D */ bl wcstombs
+/* 801CC4B4 001C8114 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC4B8 001C8118 41 80 01 44 */ blt lbl_801CC5FC
+/* 801CC4BC 001C811C 3B 41 00 80 */ addi r26, r1, 0x80
+/* 801CC4C0 001C8120 48 00 00 14 */ b lbl_801CC4D4
+lbl_801CC4C4:
+/* 801CC4C4 001C8124 7E 63 9B 78 */ mr r3, r19
+/* 801CC4C8 001C8128 38 80 00 01 */ li r4, 1
+/* 801CC4CC 001C812C 4B FF A6 B5 */ bl __va_arg
+/* 801CC4D0 001C8130 83 43 00 00 */ lwz r26, 0(r3)
+lbl_801CC4D4:
+/* 801CC4D4 001C8134 2C 1A 00 00 */ cmpwi r26, 0
+/* 801CC4D8 001C8138 40 82 00 08 */ bne lbl_801CC4E0
+/* 801CC4DC 001C813C 3B 5D 00 2A */ addi r26, r29, 0x2a
+lbl_801CC4E0:
+/* 801CC4E0 001C8140 88 01 00 73 */ lbz r0, 0x73(r1)
+/* 801CC4E4 001C8144 2C 00 00 00 */ cmpwi r0, 0
+/* 801CC4E8 001C8148 41 82 00 2C */ beq lbl_801CC514
+/* 801CC4EC 001C814C 88 01 00 72 */ lbz r0, 0x72(r1)
+/* 801CC4F0 001C8150 8B 7A 00 00 */ lbz r27, 0(r26)
+/* 801CC4F4 001C8154 3B 5A 00 01 */ addi r26, r26, 1
+/* 801CC4F8 001C8158 2C 00 00 00 */ cmpwi r0, 0
+/* 801CC4FC 001C815C 41 82 01 44 */ beq lbl_801CC640
+/* 801CC500 001C8160 80 01 00 7C */ lwz r0, 0x7c(r1)
+/* 801CC504 001C8164 7C 1B 00 00 */ cmpw r27, r0
+/* 801CC508 001C8168 40 81 01 38 */ ble lbl_801CC640
+/* 801CC50C 001C816C 7C 1B 03 78 */ mr r27, r0
+/* 801CC510 001C8170 48 00 01 30 */ b lbl_801CC640
+lbl_801CC514:
+/* 801CC514 001C8174 88 01 00 72 */ lbz r0, 0x72(r1)
+/* 801CC518 001C8178 2C 00 00 00 */ cmpwi r0, 0
+/* 801CC51C 001C817C 41 82 00 28 */ beq lbl_801CC544
+/* 801CC520 001C8180 83 61 00 7C */ lwz r27, 0x7c(r1)
+/* 801CC524 001C8184 7F 43 D3 78 */ mr r3, r26
+/* 801CC528 001C8188 38 80 00 00 */ li r4, 0
+/* 801CC52C 001C818C 7F 65 DB 78 */ mr r5, r27
+/* 801CC530 001C8190 4B FF DE 11 */ bl memchr
+/* 801CC534 001C8194 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC538 001C8198 41 82 01 08 */ beq lbl_801CC640
+/* 801CC53C 001C819C 7F 7A 18 50 */ subf r27, r26, r3
+/* 801CC540 001C81A0 48 00 01 00 */ b lbl_801CC640
+lbl_801CC544:
+/* 801CC544 001C81A4 7F 43 D3 78 */ mr r3, r26
+/* 801CC548 001C81A8 4B FF A6 1D */ bl strlen
+/* 801CC54C 001C81AC 7C 7B 1B 78 */ mr r27, r3
+/* 801CC550 001C81B0 48 00 00 F0 */ b lbl_801CC640
+lbl_801CC554:
+/* 801CC554 001C81B4 7E 63 9B 78 */ mr r3, r19
+/* 801CC558 001C81B8 38 80 00 01 */ li r4, 1
+/* 801CC55C 001C81BC 4B FF A6 25 */ bl __va_arg
+/* 801CC560 001C81C0 88 01 00 74 */ lbz r0, 0x74(r1)
+/* 801CC564 001C81C4 80 83 00 00 */ lwz r4, 0(r3)
+/* 801CC568 001C81C8 28 00 00 08 */ cmplwi r0, 8
+/* 801CC56C 001C81CC 41 81 02 10 */ bgt lbl_801CC77C
+/* 801CC570 001C81D0 38 7E 2F BC */ addi r3, r30, 0x2fbc
+/* 801CC574 001C81D4 54 00 10 3A */ slwi r0, r0, 2
+/* 801CC578 001C81D8 7C 63 00 2E */ lwzx r3, r3, r0
+/* 801CC57C 001C81DC 7C 69 03 A6 */ mtctr r3
+/* 801CC580 001C81E0 4E 80 04 20 */ bctr
+/* 801CC584 001C81E4 93 24 00 00 */ stw r25, 0(r4)
+/* 801CC588 001C81E8 48 00 01 F4 */ b lbl_801CC77C
+/* 801CC58C 001C81EC B3 24 00 00 */ sth r25, 0(r4)
+/* 801CC590 001C81F0 48 00 01 EC */ b lbl_801CC77C
+/* 801CC594 001C81F4 93 24 00 00 */ stw r25, 0(r4)
+/* 801CC598 001C81F8 48 00 01 E4 */ b lbl_801CC77C
+/* 801CC59C 001C81FC 93 24 00 04 */ stw r25, 4(r4)
+/* 801CC5A0 001C8200 7F 20 FE 70 */ srawi r0, r25, 0x1f
+/* 801CC5A4 001C8204 90 04 00 00 */ stw r0, 0(r4)
+/* 801CC5A8 001C8208 48 00 01 D4 */ b lbl_801CC77C
+/* 801CC5AC 001C820C 93 24 00 00 */ stw r25, 0(r4)
+/* 801CC5B0 001C8210 48 00 01 CC */ b lbl_801CC77C
+/* 801CC5B4 001C8214 93 24 00 00 */ stw r25, 0(r4)
+/* 801CC5B8 001C8218 48 00 01 C4 */ b lbl_801CC77C
+/* 801CC5BC 001C821C 93 24 00 04 */ stw r25, 4(r4)
+/* 801CC5C0 001C8220 7F 20 FE 70 */ srawi r0, r25, 0x1f
+/* 801CC5C4 001C8224 90 04 00 00 */ stw r0, 0(r4)
+/* 801CC5C8 001C8228 48 00 01 B4 */ b lbl_801CC77C
+lbl_801CC5CC:
+/* 801CC5CC 001C822C 7E 63 9B 78 */ mr r3, r19
+/* 801CC5D0 001C8230 3B 41 00 80 */ addi r26, r1, 0x80
+/* 801CC5D4 001C8234 38 80 00 01 */ li r4, 1
+/* 801CC5D8 001C8238 4B FF A5 A9 */ bl __va_arg
+/* 801CC5DC 001C823C 80 03 00 00 */ lwz r0, 0(r3)
+/* 801CC5E0 001C8240 3B 60 00 01 */ li r27, 1
+/* 801CC5E4 001C8244 98 01 00 80 */ stb r0, 0x80(r1)
+/* 801CC5E8 001C8248 48 00 00 58 */ b lbl_801CC640
+lbl_801CC5EC:
+/* 801CC5EC 001C824C 9B E1 00 80 */ stb r31, 0x80(r1)
+/* 801CC5F0 001C8250 3B 41 00 80 */ addi r26, r1, 0x80
+/* 801CC5F4 001C8254 3B 60 00 01 */ li r27, 1
+/* 801CC5F8 001C8258 48 00 00 48 */ b lbl_801CC640
+lbl_801CC5FC:
+/* 801CC5FC 001C825C 7F 03 C3 78 */ mr r3, r24
+/* 801CC600 001C8260 4B FF A5 65 */ bl strlen
+/* 801CC604 001C8264 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC608 001C8268 7C 65 1B 78 */ mr r5, r3
+/* 801CC60C 001C826C 7F 39 1A 14 */ add r25, r25, r3
+/* 801CC610 001C8270 41 82 00 28 */ beq lbl_801CC638
+/* 801CC614 001C8274 7E 2C 8B 78 */ mr r12, r17
+/* 801CC618 001C8278 7E 43 93 78 */ mr r3, r18
+/* 801CC61C 001C827C 7F 04 C3 78 */ mr r4, r24
+/* 801CC620 001C8280 7D 89 03 A6 */ mtctr r12
+/* 801CC624 001C8284 4E 80 04 21 */ bctrl
+/* 801CC628 001C8288 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC62C 001C828C 40 82 00 0C */ bne lbl_801CC638
+/* 801CC630 001C8290 38 60 FF FF */ li r3, -1
+/* 801CC634 001C8294 48 00 01 58 */ b lbl_801CC78C
+lbl_801CC638:
+/* 801CC638 001C8298 7F 23 CB 78 */ mr r3, r25
+/* 801CC63C 001C829C 48 00 01 50 */ b lbl_801CC78C
+lbl_801CC640:
+/* 801CC640 001C82A0 88 01 00 70 */ lbz r0, 0x70(r1)
+/* 801CC644 001C82A4 7F 78 DB 78 */ mr r24, r27
+/* 801CC648 001C82A8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CC64C 001C82AC 41 82 00 B0 */ beq lbl_801CC6FC
+/* 801CC650 001C82B0 28 00 00 02 */ cmplwi r0, 2
+/* 801CC654 001C82B4 38 60 00 20 */ li r3, 0x20
+/* 801CC658 001C82B8 40 82 00 08 */ bne lbl_801CC660
+/* 801CC65C 001C82BC 38 60 00 30 */ li r3, 0x30
+lbl_801CC660:
+/* 801CC660 001C82C0 98 61 00 09 */ stb r3, 9(r1)
+/* 801CC664 001C82C4 88 1A 00 00 */ lbz r0, 0(r26)
+/* 801CC668 001C82C8 7C 00 07 74 */ extsb r0, r0
+/* 801CC66C 001C82CC 2C 00 00 2B */ cmpwi r0, 0x2b
+/* 801CC670 001C82D0 41 82 00 14 */ beq lbl_801CC684
+/* 801CC674 001C82D4 2C 00 00 2D */ cmpwi r0, 0x2d
+/* 801CC678 001C82D8 41 82 00 0C */ beq lbl_801CC684
+/* 801CC67C 001C82DC 2C 00 00 20 */ cmpwi r0, 0x20
+/* 801CC680 001C82E0 40 82 00 70 */ bne lbl_801CC6F0
+lbl_801CC684:
+/* 801CC684 001C82E4 7C 60 07 74 */ extsb r0, r3
+/* 801CC688 001C82E8 2C 00 00 30 */ cmpwi r0, 0x30
+/* 801CC68C 001C82EC 40 82 00 64 */ bne lbl_801CC6F0
+/* 801CC690 001C82F0 7E 2C 8B 78 */ mr r12, r17
+/* 801CC694 001C82F4 7E 43 93 78 */ mr r3, r18
+/* 801CC698 001C82F8 7F 44 D3 78 */ mr r4, r26
+/* 801CC69C 001C82FC 38 A0 00 01 */ li r5, 1
+/* 801CC6A0 001C8300 7D 89 03 A6 */ mtctr r12
+/* 801CC6A4 001C8304 4E 80 04 21 */ bctrl
+/* 801CC6A8 001C8308 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC6AC 001C830C 40 82 00 0C */ bne lbl_801CC6B8
+/* 801CC6B0 001C8310 38 60 FF FF */ li r3, -1
+/* 801CC6B4 001C8314 48 00 00 D8 */ b lbl_801CC78C
+lbl_801CC6B8:
+/* 801CC6B8 001C8318 3B 5A 00 01 */ addi r26, r26, 1
+/* 801CC6BC 001C831C 3B 7B FF FF */ addi r27, r27, -1
+/* 801CC6C0 001C8320 48 00 00 30 */ b lbl_801CC6F0
+lbl_801CC6C4:
+/* 801CC6C4 001C8324 7E 2C 8B 78 */ mr r12, r17
+/* 801CC6C8 001C8328 7E 43 93 78 */ mr r3, r18
+/* 801CC6CC 001C832C 38 81 00 09 */ addi r4, r1, 9
+/* 801CC6D0 001C8330 38 A0 00 01 */ li r5, 1
+/* 801CC6D4 001C8334 7D 89 03 A6 */ mtctr r12
+/* 801CC6D8 001C8338 4E 80 04 21 */ bctrl
+/* 801CC6DC 001C833C 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC6E0 001C8340 40 82 00 0C */ bne lbl_801CC6EC
+/* 801CC6E4 001C8344 38 60 FF FF */ li r3, -1
+/* 801CC6E8 001C8348 48 00 00 A4 */ b lbl_801CC78C
+lbl_801CC6EC:
+/* 801CC6EC 001C834C 3B 18 00 01 */ addi r24, r24, 1
+lbl_801CC6F0:
+/* 801CC6F0 001C8350 80 01 00 78 */ lwz r0, 0x78(r1)
+/* 801CC6F4 001C8354 7C 18 00 00 */ cmpw r24, r0
+/* 801CC6F8 001C8358 41 80 FF CC */ blt lbl_801CC6C4
+lbl_801CC6FC:
+/* 801CC6FC 001C835C 2C 1B 00 00 */ cmpwi r27, 0
+/* 801CC700 001C8360 41 82 00 2C */ beq lbl_801CC72C
+/* 801CC704 001C8364 7E 2C 8B 78 */ mr r12, r17
+/* 801CC708 001C8368 7E 43 93 78 */ mr r3, r18
+/* 801CC70C 001C836C 7F 44 D3 78 */ mr r4, r26
+/* 801CC710 001C8370 7F 65 DB 78 */ mr r5, r27
+/* 801CC714 001C8374 7D 89 03 A6 */ mtctr r12
+/* 801CC718 001C8378 4E 80 04 21 */ bctrl
+/* 801CC71C 001C837C 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC720 001C8380 40 82 00 0C */ bne lbl_801CC72C
+/* 801CC724 001C8384 38 60 FF FF */ li r3, -1
+/* 801CC728 001C8388 48 00 00 64 */ b lbl_801CC78C
+lbl_801CC72C:
+/* 801CC72C 001C838C 88 01 00 70 */ lbz r0, 0x70(r1)
+/* 801CC730 001C8390 2C 00 00 00 */ cmpwi r0, 0
+/* 801CC734 001C8394 40 82 00 44 */ bne lbl_801CC778
+/* 801CC738 001C8398 48 00 00 34 */ b lbl_801CC76C
+lbl_801CC73C:
+/* 801CC73C 001C839C 7E 2C 8B 78 */ mr r12, r17
+/* 801CC740 001C83A0 7E 43 93 78 */ mr r3, r18
+/* 801CC744 001C83A4 9A 01 00 08 */ stb r16, 8(r1)
+/* 801CC748 001C83A8 38 81 00 08 */ addi r4, r1, 8
+/* 801CC74C 001C83AC 38 A0 00 01 */ li r5, 1
+/* 801CC750 001C83B0 7D 89 03 A6 */ mtctr r12
+/* 801CC754 001C83B4 4E 80 04 21 */ bctrl
+/* 801CC758 001C83B8 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC75C 001C83BC 40 82 00 0C */ bne lbl_801CC768
+/* 801CC760 001C83C0 38 60 FF FF */ li r3, -1
+/* 801CC764 001C83C4 48 00 00 28 */ b lbl_801CC78C
+lbl_801CC768:
+/* 801CC768 001C83C8 3B 18 00 01 */ addi r24, r24, 1
+lbl_801CC76C:
+/* 801CC76C 001C83CC 80 01 00 78 */ lwz r0, 0x78(r1)
+/* 801CC770 001C83D0 7C 18 00 00 */ cmpw r24, r0
+/* 801CC774 001C83D4 41 80 FF C8 */ blt lbl_801CC73C
+lbl_801CC778:
+/* 801CC778 001C83D8 7F 39 C2 14 */ add r25, r25, r24
+lbl_801CC77C:
+/* 801CC77C 001C83DC 88 17 00 00 */ lbz r0, 0(r23)
+/* 801CC780 001C83E0 7C 00 07 75 */ extsb. r0, r0
+/* 801CC784 001C83E4 40 82 F8 04 */ bne lbl_801CBF88
+lbl_801CC788:
+/* 801CC788 001C83E8 7F 23 CB 78 */ mr r3, r25
+lbl_801CC78C:
+/* 801CC78C 001C83EC BA 01 02 80 */ lmw r16, 0x280(r1)
+/* 801CC790 001C83F0 80 01 02 C4 */ lwz r0, 0x2c4(r1)
+/* 801CC794 001C83F4 7C 08 03 A6 */ mtlr r0
+/* 801CC798 001C83F8 38 21 02 C0 */ addi r1, r1, 0x2c0
+/* 801CC79C 001C83FC 4E 80 00 20 */ blr
+
+.global __FileWrite
+__FileWrite:
+/* 801CC7A0 001C8400 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801CC7A4 001C8404 7C 08 02 A6 */ mflr r0
+/* 801CC7A8 001C8408 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CC7AC 001C840C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801CC7B0 001C8410 7C BF 2B 78 */ mr r31, r5
+/* 801CC7B4 001C8414 93 C1 00 08 */ stw r30, 8(r1)
+/* 801CC7B8 001C8418 7C 7E 1B 78 */ mr r30, r3
+/* 801CC7BC 001C841C 7C 83 23 78 */ mr r3, r4
+/* 801CC7C0 001C8420 38 80 00 01 */ li r4, 1
+/* 801CC7C4 001C8424 7F C6 F3 78 */ mr r6, r30
+/* 801CC7C8 001C8428 4B FF D1 01 */ bl __fwrite
+/* 801CC7CC 001C842C 7C 1F 18 40 */ cmplw r31, r3
+/* 801CC7D0 001C8430 40 82 00 08 */ bne lbl_801CC7D8
+/* 801CC7D4 001C8434 48 00 00 08 */ b lbl_801CC7DC
+lbl_801CC7D8:
+/* 801CC7D8 001C8438 3B C0 00 00 */ li r30, 0
+lbl_801CC7DC:
+/* 801CC7DC 001C843C 7F C3 F3 78 */ mr r3, r30
+/* 801CC7E0 001C8440 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801CC7E4 001C8444 83 C1 00 08 */ lwz r30, 8(r1)
+/* 801CC7E8 001C8448 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CC7EC 001C844C 7C 08 03 A6 */ mtlr r0
+/* 801CC7F0 001C8450 38 21 00 10 */ addi r1, r1, 0x10
+/* 801CC7F4 001C8454 4E 80 00 20 */ blr
+
+.global __StringWrite
+__StringWrite:
+/* 801CC7F8 001C8458 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801CC7FC 001C845C 7C 08 02 A6 */ mflr r0
+/* 801CC800 001C8460 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CC804 001C8464 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801CC808 001C8468 93 C1 00 08 */ stw r30, 8(r1)
+/* 801CC80C 001C846C 7C 7E 1B 78 */ mr r30, r3
+/* 801CC810 001C8470 80 C3 00 08 */ lwz r6, 8(r3)
+/* 801CC814 001C8474 80 E3 00 04 */ lwz r7, 4(r3)
+/* 801CC818 001C8478 7C 06 2A 14 */ add r0, r6, r5
+/* 801CC81C 001C847C 7C 00 38 40 */ cmplw r0, r7
+/* 801CC820 001C8480 7F E6 38 50 */ subf r31, r6, r7
+/* 801CC824 001C8484 41 81 00 08 */ bgt lbl_801CC82C
+/* 801CC828 001C8488 7C BF 2B 78 */ mr r31, r5
+lbl_801CC82C:
+/* 801CC82C 001C848C 80 03 00 00 */ lwz r0, 0(r3)
+/* 801CC830 001C8490 7F E5 FB 78 */ mr r5, r31
+/* 801CC834 001C8494 7C 60 32 14 */ add r3, r0, r6
+/* 801CC838 001C8498 4B E3 77 C9 */ bl memcpy
+/* 801CC83C 001C849C 80 1E 00 08 */ lwz r0, 8(r30)
+/* 801CC840 001C84A0 38 60 00 01 */ li r3, 1
+/* 801CC844 001C84A4 7C 00 FA 14 */ add r0, r0, r31
+/* 801CC848 001C84A8 90 1E 00 08 */ stw r0, 8(r30)
+/* 801CC84C 001C84AC 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801CC850 001C84B0 83 C1 00 08 */ lwz r30, 8(r1)
+/* 801CC854 001C84B4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801CC858 001C84B8 7C 08 03 A6 */ mtlr r0
+/* 801CC85C 001C84BC 38 21 00 10 */ addi r1, r1, 0x10
+/* 801CC860 001C84C0 4E 80 00 20 */ blr
+
+.global printf
+printf:
+/* 801CC864 001C84C4 94 21 FF 80 */ stwu r1, -0x80(r1)
+/* 801CC868 001C84C8 7C 08 02 A6 */ mflr r0
+/* 801CC86C 001C84CC 90 01 00 84 */ stw r0, 0x84(r1)
+/* 801CC870 001C84D0 93 E1 00 7C */ stw r31, 0x7c(r1)
+/* 801CC874 001C84D4 93 C1 00 78 */ stw r30, 0x78(r1)
+/* 801CC878 001C84D8 7C 7E 1B 78 */ mr r30, r3
+/* 801CC87C 001C84DC 40 86 00 24 */ bne cr1, lbl_801CC8A0
+/* 801CC880 001C84E0 D8 21 00 28 */ stfd f1, 0x28(r1)
+/* 801CC884 001C84E4 D8 41 00 30 */ stfd f2, 0x30(r1)
+/* 801CC888 001C84E8 D8 61 00 38 */ stfd f3, 0x38(r1)
+/* 801CC88C 001C84EC D8 81 00 40 */ stfd f4, 0x40(r1)
+/* 801CC890 001C84F0 D8 A1 00 48 */ stfd f5, 0x48(r1)
+/* 801CC894 001C84F4 D8 C1 00 50 */ stfd f6, 0x50(r1)
+/* 801CC898 001C84F8 D8 E1 00 58 */ stfd f7, 0x58(r1)
+/* 801CC89C 001C84FC D9 01 00 60 */ stfd f8, 0x60(r1)
+lbl_801CC8A0:
+/* 801CC8A0 001C8500 3F E0 80 42 */ lis r31, lbl_804228F0@ha
+/* 801CC8A4 001C8504 90 81 00 0C */ stw r4, 0xc(r1)
+/* 801CC8A8 001C8508 3B FF 28 F0 */ addi r31, r31, lbl_804228F0@l
+/* 801CC8AC 001C850C 38 80 FF FF */ li r4, -1
+/* 801CC8B0 001C8510 90 61 00 08 */ stw r3, 8(r1)
+/* 801CC8B4 001C8514 38 7F 00 50 */ addi r3, r31, 0x50
+/* 801CC8B8 001C8518 90 A1 00 10 */ stw r5, 0x10(r1)
+/* 801CC8BC 001C851C 90 C1 00 14 */ stw r6, 0x14(r1)
+/* 801CC8C0 001C8520 90 E1 00 18 */ stw r7, 0x18(r1)
+/* 801CC8C4 001C8524 91 01 00 1C */ stw r8, 0x1c(r1)
+/* 801CC8C8 001C8528 91 21 00 20 */ stw r9, 0x20(r1)
+/* 801CC8CC 001C852C 91 41 00 24 */ stw r10, 0x24(r1)
+/* 801CC8D0 001C8530 48 00 3F 95 */ bl func_801D0864
+/* 801CC8D4 001C8534 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC8D8 001C8538 41 80 00 0C */ blt lbl_801CC8E4
+/* 801CC8DC 001C853C 38 60 FF FF */ li r3, -1
+/* 801CC8E0 001C8540 48 00 00 34 */ b lbl_801CC914
+lbl_801CC8E4:
+/* 801CC8E4 001C8544 38 81 00 88 */ addi r4, r1, 0x88
+/* 801CC8E8 001C8548 38 01 00 08 */ addi r0, r1, 8
+/* 801CC8EC 001C854C 3C A0 01 00 */ lis r5, 0x100
+/* 801CC8F0 001C8550 3C 60 80 1D */ lis r3, __FileWrite@ha
+/* 801CC8F4 001C8554 90 A1 00 68 */ stw r5, 0x68(r1)
+/* 801CC8F8 001C8558 38 C1 00 68 */ addi r6, r1, 0x68
+/* 801CC8FC 001C855C 7F C5 F3 78 */ mr r5, r30
+/* 801CC900 001C8560 38 63 C7 A0 */ addi r3, r3, __FileWrite@l
+/* 801CC904 001C8564 90 81 00 6C */ stw r4, 0x6c(r1)
+/* 801CC908 001C8568 38 9F 00 50 */ addi r4, r31, 0x50
+/* 801CC90C 001C856C 90 01 00 70 */ stw r0, 0x70(r1)
+/* 801CC910 001C8570 4B FF F6 35 */ bl __pformatter
+lbl_801CC914:
+/* 801CC914 001C8574 80 01 00 84 */ lwz r0, 0x84(r1)
+/* 801CC918 001C8578 83 E1 00 7C */ lwz r31, 0x7c(r1)
+/* 801CC91C 001C857C 83 C1 00 78 */ lwz r30, 0x78(r1)
+/* 801CC920 001C8580 7C 08 03 A6 */ mtlr r0
+/* 801CC924 001C8584 38 21 00 80 */ addi r1, r1, 0x80
+/* 801CC928 001C8588 4E 80 00 20 */ blr
+
+.global vprintf
+vprintf:
+/* 801CC92C 001C858C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 801CC930 001C8590 7C 08 02 A6 */ mflr r0
+/* 801CC934 001C8594 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801CC938 001C8598 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 801CC93C 001C859C 3F E0 80 42 */ lis r31, lbl_804228F0@ha
+/* 801CC940 001C85A0 3B FF 28 F0 */ addi r31, r31, lbl_804228F0@l
+/* 801CC944 001C85A4 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 801CC948 001C85A8 7C 9E 23 78 */ mr r30, r4
+/* 801CC94C 001C85AC 38 80 FF FF */ li r4, -1
+/* 801CC950 001C85B0 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 801CC954 001C85B4 7C 7D 1B 78 */ mr r29, r3
+/* 801CC958 001C85B8 38 7F 00 50 */ addi r3, r31, 0x50
+/* 801CC95C 001C85BC 48 00 3F 09 */ bl func_801D0864
+/* 801CC960 001C85C0 2C 03 00 00 */ cmpwi r3, 0
+/* 801CC964 001C85C4 41 80 00 0C */ blt lbl_801CC970
+/* 801CC968 001C85C8 38 60 FF FF */ li r3, -1
+/* 801CC96C 001C85CC 48 00 00 1C */ b lbl_801CC988
+lbl_801CC970:
+/* 801CC970 001C85D0 3C 60 80 1D */ lis r3, __FileWrite@ha
+/* 801CC974 001C85D4 7F A5 EB 78 */ mr r5, r29
+/* 801CC978 001C85D8 7F C6 F3 78 */ mr r6, r30
+/* 801CC97C 001C85DC 38 9F 00 50 */ addi r4, r31, 0x50
+/* 801CC980 001C85E0 38 63 C7 A0 */ addi r3, r3, __FileWrite@l
+/* 801CC984 001C85E4 4B FF F5 C1 */ bl __pformatter
+lbl_801CC988:
+/* 801CC988 001C85E8 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 801CC98C 001C85EC 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 801CC990 001C85F0 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 801CC994 001C85F4 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 801CC998 001C85F8 7C 08 03 A6 */ mtlr r0
+/* 801CC99C 001C85FC 38 21 00 20 */ addi r1, r1, 0x20
+/* 801CC9A0 001C8600 4E 80 00 20 */ blr
+
+.global vsprintf
+vsprintf:
+/* 801CC9A4 001C8604 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 801CC9A8 001C8608 7C 08 02 A6 */ mflr r0
+/* 801CC9AC 001C860C 7C A6 2B 78 */ mr r6, r5
+/* 801CC9B0 001C8610 7C 85 23 78 */ mr r5, r4
+/* 801CC9B4 001C8614 90 01 00 34 */ stw r0, 0x34(r1)
+/* 801CC9B8 001C8618 3C E0 80 1D */ lis r7, __StringWrite@ha
+/* 801CC9BC 001C861C 38 81 00 08 */ addi r4, r1, 8
+/* 801CC9C0 001C8620 93 E1 00 2C */ stw r31, 0x2c(r1)
+/* 801CC9C4 001C8624 3B E0 00 00 */ li r31, 0
+/* 801CC9C8 001C8628 93 C1 00 28 */ stw r30, 0x28(r1)
+/* 801CC9CC 001C862C 3B C0 FF FF */ li r30, -1
+/* 801CC9D0 001C8630 93 A1 00 24 */ stw r29, 0x24(r1)
+/* 801CC9D4 001C8634 7C 7D 1B 78 */ mr r29, r3
+/* 801CC9D8 001C8638 90 61 00 08 */ stw r3, 8(r1)
+/* 801CC9DC 001C863C 38 67 C7 F8 */ addi r3, r7, __StringWrite@l
+/* 801CC9E0 001C8640 93 C1 00 0C */ stw r30, 0xc(r1)
+/* 801CC9E4 001C8644 93 E1 00 10 */ stw r31, 0x10(r1)
+/* 801CC9E8 001C8648 4B FF F5 5D */ bl __pformatter
+/* 801CC9EC 001C864C 2C 1D 00 00 */ cmpwi r29, 0
+/* 801CC9F0 001C8650 41 82 00 18 */ beq lbl_801CCA08
+/* 801CC9F4 001C8654 7C 03 F0 40 */ cmplw r3, r30
+/* 801CC9F8 001C8658 40 80 00 0C */ bge lbl_801CCA04
+/* 801CC9FC 001C865C 7F FD 19 AE */ stbx r31, r29, r3
+/* 801CCA00 001C8660 48 00 00 08 */ b lbl_801CCA08
+lbl_801CCA04:
+/* 801CCA04 001C8664 9B FD FF FE */ stb r31, -2(r29)
+lbl_801CCA08:
+/* 801CCA08 001C8668 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 801CCA0C 001C866C 83 E1 00 2C */ lwz r31, 0x2c(r1)
+/* 801CCA10 001C8670 83 C1 00 28 */ lwz r30, 0x28(r1)
+/* 801CCA14 001C8674 83 A1 00 24 */ lwz r29, 0x24(r1)
+/* 801CCA18 001C8678 7C 08 03 A6 */ mtlr r0
+/* 801CCA1C 001C867C 38 21 00 30 */ addi r1, r1, 0x30
+/* 801CCA20 001C8680 4E 80 00 20 */ blr
+
+.global snprintf
+snprintf:
+/* 801CCA24 001C8684 94 21 FF 60 */ stwu r1, -0xa0(r1)
+/* 801CCA28 001C8688 7C 08 02 A6 */ mflr r0
+/* 801CCA2C 001C868C 90 01 00 A4 */ stw r0, 0xa4(r1)
+/* 801CCA30 001C8690 BF 61 00 8C */ stmw r27, 0x8c(r1)
+/* 801CCA34 001C8694 7C 7B 1B 78 */ mr r27, r3
+/* 801CCA38 001C8698 7C 9C 23 78 */ mr r28, r4
+/* 801CCA3C 001C869C 40 86 00 24 */ bne cr1, lbl_801CCA60
+/* 801CCA40 001C86A0 D8 21 00 28 */ stfd f1, 0x28(r1)
+/* 801CCA44 001C86A4 D8 41 00 30 */ stfd f2, 0x30(r1)
+/* 801CCA48 001C86A8 D8 61 00 38 */ stfd f3, 0x38(r1)
+/* 801CCA4C 001C86AC D8 81 00 40 */ stfd f4, 0x40(r1)
+/* 801CCA50 001C86B0 D8 A1 00 48 */ stfd f5, 0x48(r1)
+/* 801CCA54 001C86B4 D8 C1 00 50 */ stfd f6, 0x50(r1)
+/* 801CCA58 001C86B8 D8 E1 00 58 */ stfd f7, 0x58(r1)
+/* 801CCA5C 001C86BC D9 01 00 60 */ stfd f8, 0x60(r1)
+lbl_801CCA60:
+/* 801CCA60 001C86C0 39 81 00 A8 */ addi r12, r1, 0xa8
+/* 801CCA64 001C86C4 38 01 00 08 */ addi r0, r1, 8
+/* 801CCA68 001C86C8 3F C0 03 00 */ lis r30, 0x300
+/* 801CCA6C 001C86CC 3B E0 00 00 */ li r31, 0
+/* 801CCA70 001C86D0 90 A1 00 10 */ stw r5, 0x10(r1)
+/* 801CCA74 001C86D4 3B A1 00 74 */ addi r29, r1, 0x74
+/* 801CCA78 001C86D8 3D 60 80 1D */ lis r11, __StringWrite@ha
+/* 801CCA7C 001C86DC 90 C1 00 14 */ stw r6, 0x14(r1)
+/* 801CCA80 001C86E0 7F A6 EB 78 */ mr r6, r29
+/* 801CCA84 001C86E4 90 61 00 08 */ stw r3, 8(r1)
+/* 801CCA88 001C86E8 90 61 00 68 */ stw r3, 0x68(r1)
+/* 801CCA8C 001C86EC 38 6B C7 F8 */ addi r3, r11, __StringWrite@l
+/* 801CCA90 001C86F0 90 81 00 0C */ stw r4, 0xc(r1)
+/* 801CCA94 001C86F4 90 81 00 6C */ stw r4, 0x6c(r1)
+/* 801CCA98 001C86F8 38 81 00 68 */ addi r4, r1, 0x68
+/* 801CCA9C 001C86FC 90 E1 00 18 */ stw r7, 0x18(r1)
+/* 801CCAA0 001C8700 91 01 00 1C */ stw r8, 0x1c(r1)
+/* 801CCAA4 001C8704 91 21 00 20 */ stw r9, 0x20(r1)
+/* 801CCAA8 001C8708 91 41 00 24 */ stw r10, 0x24(r1)
+/* 801CCAAC 001C870C 93 C1 00 74 */ stw r30, 0x74(r1)
+/* 801CCAB0 001C8710 91 81 00 78 */ stw r12, 0x78(r1)
+/* 801CCAB4 001C8714 90 01 00 7C */ stw r0, 0x7c(r1)
+/* 801CCAB8 001C8718 93 E1 00 70 */ stw r31, 0x70(r1)
+/* 801CCABC 001C871C 4B FF F4 89 */ bl __pformatter
+/* 801CCAC0 001C8720 2C 1B 00 00 */ cmpwi r27, 0
+/* 801CCAC4 001C8724 41 82 00 24 */ beq lbl_801CCAE8
+/* 801CCAC8 001C8728 7C 03 E0 40 */ cmplw r3, r28
+/* 801CCACC 001C872C 40 80 00 0C */ bge lbl_801CCAD8
+/* 801CCAD0 001C8730 7F FB 19 AE */ stbx r31, r27, r3
+/* 801CCAD4 001C8734 48 00 00 14 */ b lbl_801CCAE8
+lbl_801CCAD8:
+/* 801CCAD8 001C8738 2C 1C 00 00 */ cmpwi r28, 0
+/* 801CCADC 001C873C 41 82 00 0C */ beq lbl_801CCAE8
+/* 801CCAE0 001C8740 7C 9B E2 14 */ add r4, r27, r28
+/* 801CCAE4 001C8744 9B E4 FF FF */ stb r31, -1(r4)
+lbl_801CCAE8:
+/* 801CCAE8 001C8748 BB 61 00 8C */ lmw r27, 0x8c(r1)
+/* 801CCAEC 001C874C 80 01 00 A4 */ lwz r0, 0xa4(r1)
+/* 801CCAF0 001C8750 7C 08 03 A6 */ mtlr r0
+/* 801CCAF4 001C8754 38 21 00 A0 */ addi r1, r1, 0xa0
+/* 801CCAF8 001C8758 4E 80 00 20 */ blr
+
+.global sprintf
+sprintf:
+/* 801CCAFC 001C875C 94 21 FF 60 */ stwu r1, -0xa0(r1)
+/* 801CCB00 001C8760 7C 08 02 A6 */ mflr r0
+/* 801CCB04 001C8764 90 01 00 A4 */ stw r0, 0xa4(r1)
+/* 801CCB08 001C8768 BF 61 00 8C */ stmw r27, 0x8c(r1)
+/* 801CCB0C 001C876C 7C 7B 1B 78 */ mr r27, r3
+/* 801CCB10 001C8770 40 86 00 24 */ bne cr1, lbl_801CCB34
+/* 801CCB14 001C8774 D8 21 00 28 */ stfd f1, 0x28(r1)
+/* 801CCB18 001C8778 D8 41 00 30 */ stfd f2, 0x30(r1)
+/* 801CCB1C 001C877C D8 61 00 38 */ stfd f3, 0x38(r1)
+/* 801CCB20 001C8780 D8 81 00 40 */ stfd f4, 0x40(r1)
+/* 801CCB24 001C8784 D8 A1 00 48 */ stfd f5, 0x48(r1)
+/* 801CCB28 001C8788 D8 C1 00 50 */ stfd f6, 0x50(r1)
+/* 801CCB2C 001C878C D8 E1 00 58 */ stfd f7, 0x58(r1)
+/* 801CCB30 001C8790 D9 01 00 60 */ stfd f8, 0x60(r1)
+lbl_801CCB34:
+/* 801CCB34 001C8794 39 81 00 A8 */ addi r12, r1, 0xa8
+/* 801CCB38 001C8798 38 01 00 08 */ addi r0, r1, 8
+/* 801CCB3C 001C879C 3F A0 02 00 */ lis r29, 0x200
+/* 801CCB40 001C87A0 3B C0 FF FF */ li r30, -1
+/* 801CCB44 001C87A4 3B E0 00 00 */ li r31, 0
+/* 801CCB48 001C87A8 90 A1 00 10 */ stw r5, 0x10(r1)
+/* 801CCB4C 001C87AC 3B 81 00 74 */ addi r28, r1, 0x74
+/* 801CCB50 001C87B0 3D 60 80 1D */ lis r11, __StringWrite@ha
+/* 801CCB54 001C87B4 90 C1 00 14 */ stw r6, 0x14(r1)
+/* 801CCB58 001C87B8 7C 85 23 78 */ mr r5, r4
+/* 801CCB5C 001C87BC 7F 86 E3 78 */ mr r6, r28
+/* 801CCB60 001C87C0 90 81 00 0C */ stw r4, 0xc(r1)
+/* 801CCB64 001C87C4 38 81 00 68 */ addi r4, r1, 0x68
+/* 801CCB68 001C87C8 90 61 00 08 */ stw r3, 8(r1)
+/* 801CCB6C 001C87CC 90 61 00 68 */ stw r3, 0x68(r1)
+/* 801CCB70 001C87D0 38 6B C7 F8 */ addi r3, r11, __StringWrite@l
+/* 801CCB74 001C87D4 90 E1 00 18 */ stw r7, 0x18(r1)
+/* 801CCB78 001C87D8 91 01 00 1C */ stw r8, 0x1c(r1)
+/* 801CCB7C 001C87DC 91 21 00 20 */ stw r9, 0x20(r1)
+/* 801CCB80 001C87E0 91 41 00 24 */ stw r10, 0x24(r1)
+/* 801CCB84 001C87E4 93 A1 00 74 */ stw r29, 0x74(r1)
+/* 801CCB88 001C87E8 91 81 00 78 */ stw r12, 0x78(r1)
+/* 801CCB8C 001C87EC 90 01 00 7C */ stw r0, 0x7c(r1)
+/* 801CCB90 001C87F0 93 C1 00 6C */ stw r30, 0x6c(r1)
+/* 801CCB94 001C87F4 93 E1 00 70 */ stw r31, 0x70(r1)
+/* 801CCB98 001C87F8 4B FF F3 AD */ bl __pformatter
+/* 801CCB9C 001C87FC 2C 1B 00 00 */ cmpwi r27, 0
+/* 801CCBA0 001C8800 41 82 00 18 */ beq lbl_801CCBB8
+/* 801CCBA4 001C8804 7C 03 F0 40 */ cmplw r3, r30
+/* 801CCBA8 001C8808 40 80 00 0C */ bge lbl_801CCBB4
+/* 801CCBAC 001C880C 7F FB 19 AE */ stbx r31, r27, r3
+/* 801CCBB0 001C8810 48 00 00 08 */ b lbl_801CCBB8
+lbl_801CCBB4:
+/* 801CCBB4 001C8814 9B FB FF FE */ stb r31, -2(r27)
+lbl_801CCBB8:
+/* 801CCBB8 001C8818 BB 61 00 8C */ lmw r27, 0x8c(r1)
+/* 801CCBBC 001C881C 80 01 00 A4 */ lwz r0, 0xa4(r1)
+/* 801CCBC0 001C8820 7C 08 03 A6 */ mtlr r0
+/* 801CCBC4 001C8824 38 21 00 A0 */ addi r1, r1, 0xa0
+/* 801CCBC8 001C8828 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/qsort.s b/asm/libstdc++/qsort.s new file mode 100644 index 0000000..1107bbd --- /dev/null +++ b/asm/libstdc++/qsort.s @@ -0,0 +1,109 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global qsort
+qsort:
+/* 801CCBCC 001C882C 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 801CCBD0 001C8830 7C 08 02 A6 */ mflr r0
+/* 801CCBD4 001C8834 28 04 00 02 */ cmplwi r4, 2
+/* 801CCBD8 001C8838 90 01 00 44 */ stw r0, 0x44(r1)
+/* 801CCBDC 001C883C BE 61 00 0C */ stmw r19, 0xc(r1)
+/* 801CCBE0 001C8840 7C 7B 1B 78 */ mr r27, r3
+/* 801CCBE4 001C8844 7C BC 2B 78 */ mr r28, r5
+/* 801CCBE8 001C8848 7C DD 33 78 */ mr r29, r6
+/* 801CCBEC 001C884C 41 80 01 3C */ blt lbl_801CCD28
+/* 801CCBF0 001C8850 54 87 F8 7E */ srwi r7, r4, 1
+/* 801CCBF4 001C8854 54 A0 08 3C */ slwi r0, r5, 1
+/* 801CCBF8 001C8858 3B E7 00 01 */ addi r31, r7, 1
+/* 801CCBFC 001C885C 38 C4 FF FF */ addi r6, r4, -1
+/* 801CCC00 001C8860 38 FF FF FF */ addi r7, r31, -1
+/* 801CCC04 001C8864 7C 9E 23 78 */ mr r30, r4
+/* 801CCC08 001C8868 7C 85 39 D6 */ mullw r4, r5, r7
+/* 801CCC0C 001C886C 7F 20 28 50 */ subf r25, r0, r5
+/* 801CCC10 001C8870 7C 05 31 D6 */ mullw r0, r5, r6
+/* 801CCC14 001C8874 7E E3 22 14 */ add r23, r3, r4
+/* 801CCC18 001C8878 7F 5F 29 D6 */ mullw r26, r31, r5
+/* 801CCC1C 001C887C 7E C3 02 14 */ add r22, r3, r0
+lbl_801CCC20:
+/* 801CCC20 001C8880 28 1F 00 01 */ cmplwi r31, 1
+/* 801CCC24 001C8884 40 81 00 14 */ ble lbl_801CCC38
+/* 801CCC28 001C8888 7F 5C D0 50 */ subf r26, r28, r26
+/* 801CCC2C 001C888C 7E FC B8 50 */ subf r23, r28, r23
+/* 801CCC30 001C8890 3B FF FF FF */ addi r31, r31, -1
+/* 801CCC34 001C8894 48 00 00 40 */ b lbl_801CCC74
+lbl_801CCC38:
+/* 801CCC38 001C8898 38 76 FF FF */ addi r3, r22, -1
+/* 801CCC3C 001C889C 38 97 FF FF */ addi r4, r23, -1
+/* 801CCC40 001C88A0 38 BC 00 01 */ addi r5, r28, 1
+/* 801CCC44 001C88A4 48 00 00 18 */ b lbl_801CCC5C
+lbl_801CCC48:
+/* 801CCC48 001C88A8 88 C4 00 01 */ lbz r6, 1(r4)
+/* 801CCC4C 001C88AC 88 03 00 01 */ lbz r0, 1(r3)
+/* 801CCC50 001C88B0 7C C6 07 74 */ extsb r6, r6
+/* 801CCC54 001C88B4 9C 04 00 01 */ stbu r0, 1(r4)
+/* 801CCC58 001C88B8 9C C3 00 01 */ stbu r6, 1(r3)
+lbl_801CCC5C:
+/* 801CCC5C 001C88BC 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CCC60 001C88C0 40 82 FF E8 */ bne lbl_801CCC48
+/* 801CCC64 001C88C4 3B DE FF FF */ addi r30, r30, -1
+/* 801CCC68 001C88C8 28 1E 00 01 */ cmplwi r30, 1
+/* 801CCC6C 001C88CC 41 82 00 BC */ beq lbl_801CCD28
+/* 801CCC70 001C88D0 7E DC B0 50 */ subf r22, r28, r22
+lbl_801CCC74:
+/* 801CCC74 001C88D4 7C 1A CA 14 */ add r0, r26, r25
+/* 801CCC78 001C88D8 7F F8 FB 78 */ mr r24, r31
+/* 801CCC7C 001C88DC 7E 9B 02 14 */ add r20, r27, r0
+/* 801CCC80 001C88E0 48 00 00 98 */ b lbl_801CCD18
+lbl_801CCC84:
+/* 801CCC84 001C88E4 57 18 08 3C */ slwi r24, r24, 1
+/* 801CCC88 001C88E8 7E 95 A3 78 */ mr r21, r20
+/* 801CCC8C 001C88EC 38 18 FF FF */ addi r0, r24, -1
+/* 801CCC90 001C88F0 7C 1C 01 D6 */ mullw r0, r28, r0
+/* 801CCC94 001C88F4 7C 18 F0 40 */ cmplw r24, r30
+/* 801CCC98 001C88F8 7E 9B 02 14 */ add r20, r27, r0
+/* 801CCC9C 001C88FC 40 80 00 2C */ bge lbl_801CCCC8
+/* 801CCCA0 001C8900 7E 74 E2 14 */ add r19, r20, r28
+/* 801CCCA4 001C8904 7F AC EB 78 */ mr r12, r29
+/* 801CCCA8 001C8908 7E 83 A3 78 */ mr r3, r20
+/* 801CCCAC 001C890C 7E 64 9B 78 */ mr r4, r19
+/* 801CCCB0 001C8910 7D 89 03 A6 */ mtctr r12
+/* 801CCCB4 001C8914 4E 80 04 21 */ bctrl
+/* 801CCCB8 001C8918 2C 03 00 00 */ cmpwi r3, 0
+/* 801CCCBC 001C891C 40 80 00 0C */ bge lbl_801CCCC8
+/* 801CCCC0 001C8920 7E 74 9B 78 */ mr r20, r19
+/* 801CCCC4 001C8924 3B 18 00 01 */ addi r24, r24, 1
+lbl_801CCCC8:
+/* 801CCCC8 001C8928 7F AC EB 78 */ mr r12, r29
+/* 801CCCCC 001C892C 7E A3 AB 78 */ mr r3, r21
+/* 801CCCD0 001C8930 7E 84 A3 78 */ mr r4, r20
+/* 801CCCD4 001C8934 7D 89 03 A6 */ mtctr r12
+/* 801CCCD8 001C8938 4E 80 04 21 */ bctrl
+/* 801CCCDC 001C893C 2C 03 00 00 */ cmpwi r3, 0
+/* 801CCCE0 001C8940 40 80 FF 40 */ bge lbl_801CCC20
+/* 801CCCE4 001C8944 38 74 FF FF */ addi r3, r20, -1
+/* 801CCCE8 001C8948 38 95 FF FF */ addi r4, r21, -1
+/* 801CCCEC 001C894C 38 BC 00 01 */ addi r5, r28, 1
+/* 801CCCF0 001C8950 48 00 00 20 */ b lbl_801CCD10
+lbl_801CCCF4:
+/* 801CCCF4 001C8954 88 C4 00 01 */ lbz r6, 1(r4)
+/* 801CCCF8 001C8958 88 03 00 01 */ lbz r0, 1(r3)
+/* 801CCCFC 001C895C 7C C6 07 74 */ extsb r6, r6
+/* 801CCD00 001C8960 98 04 00 01 */ stb r0, 1(r4)
+/* 801CCD04 001C8964 38 84 00 01 */ addi r4, r4, 1
+/* 801CCD08 001C8968 98 C3 00 01 */ stb r6, 1(r3)
+/* 801CCD0C 001C896C 38 63 00 01 */ addi r3, r3, 1
+lbl_801CCD10:
+/* 801CCD10 001C8970 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CCD14 001C8974 40 82 FF E0 */ bne lbl_801CCCF4
+lbl_801CCD18:
+/* 801CCD18 001C8978 57 00 08 3C */ slwi r0, r24, 1
+/* 801CCD1C 001C897C 7C 00 F0 40 */ cmplw r0, r30
+/* 801CCD20 001C8980 40 81 FF 64 */ ble lbl_801CCC84
+/* 801CCD24 001C8984 4B FF FE FC */ b lbl_801CCC20
+lbl_801CCD28:
+/* 801CCD28 001C8988 BA 61 00 0C */ lmw r19, 0xc(r1)
+/* 801CCD2C 001C898C 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 801CCD30 001C8990 7C 08 03 A6 */ mtlr r0
+/* 801CCD34 001C8994 38 21 00 40 */ addi r1, r1, 0x40
+/* 801CCD38 001C8998 4E 80 00 20 */ blr
diff --git a/asm/libstdc++/rand.s b/asm/libstdc++/rand.s new file mode 100644 index 0000000..1f21acb --- /dev/null +++ b/asm/libstdc++/rand.s @@ -0,0 +1,19 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global rand
+rand:
+/* 801CCD3C 001C899C 3C 60 41 C6 */ lis r3, 0x41C64E6D@ha
+/* 801CCD40 001C89A0 80 8D 83 E8 */ lwz r4, lbl_8063D6A8-_SDA_BASE_(r13)
+/* 801CCD44 001C89A4 38 03 4E 6D */ addi r0, r3, 0x41C64E6D@l
+/* 801CCD48 001C89A8 7C 64 01 D6 */ mullw r3, r4, r0
+/* 801CCD4C 001C89AC 38 03 30 39 */ addi r0, r3, 0x3039
+/* 801CCD50 001C89B0 90 0D 83 E8 */ stw r0, lbl_8063D6A8-_SDA_BASE_(r13)
+/* 801CCD54 001C89B4 54 03 84 7E */ rlwinm r3, r0, 0x10, 0x11, 0x1f
+/* 801CCD58 001C89B8 4E 80 00 20 */ blr
+
+.global srand
+srand:
+/* 801CCD5C 001C89BC 90 6D 83 E8 */ stw r3, lbl_8063D6A8-_SDA_BASE_(r13)
+/* 801CCD60 001C89C0 4E 80 00 20 */ blr
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
diff --git a/asm/libstdc++/string.s b/asm/libstdc++/string.s new file mode 100644 index 0000000..311ea67 --- /dev/null +++ b/asm/libstdc++/string.s @@ -0,0 +1,424 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global strcpy
+strcpy:
+/* 801CE2D0 001C9F30 54 60 07 BE */ clrlwi r0, r3, 0x1e
+/* 801CE2D4 001C9F34 54 85 07 BE */ clrlwi r5, r4, 0x1e
+/* 801CE2D8 001C9F38 7C 00 28 40 */ cmplw r0, r5
+/* 801CE2DC 001C9F3C 7C 67 1B 78 */ mr r7, r3
+/* 801CE2E0 001C9F40 40 82 00 8C */ bne lbl_801CE36C
+/* 801CE2E4 001C9F44 2C 05 00 00 */ cmpwi r5, 0
+/* 801CE2E8 001C9F48 41 82 00 40 */ beq lbl_801CE328
+/* 801CE2EC 001C9F4C 88 04 00 00 */ lbz r0, 0(r4)
+/* 801CE2F0 001C9F50 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE2F4 001C9F54 98 03 00 00 */ stb r0, 0(r3)
+/* 801CE2F8 001C9F58 4D 82 00 20 */ beqlr
+/* 801CE2FC 001C9F5C 20 05 00 03 */ subfic r0, r5, 3
+/* 801CE300 001C9F60 7C 09 03 A6 */ mtctr r0
+/* 801CE304 001C9F64 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE308 001C9F68 41 82 00 18 */ beq lbl_801CE320
+lbl_801CE30C:
+/* 801CE30C 001C9F6C 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CE310 001C9F70 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE314 001C9F74 9C 07 00 01 */ stbu r0, 1(r7)
+/* 801CE318 001C9F78 4D 82 00 20 */ beqlr
+/* 801CE31C 001C9F7C 42 00 FF F0 */ bdnz lbl_801CE30C
+lbl_801CE320:
+/* 801CE320 001C9F80 38 E7 00 01 */ addi r7, r7, 1
+/* 801CE324 001C9F84 38 84 00 01 */ addi r4, r4, 1
+lbl_801CE328:
+/* 801CE328 001C9F88 81 04 00 00 */ lwz r8, 0(r4)
+/* 801CE32C 001C9F8C 3C A0 80 81 */ lis r5, 0x80808080@ha
+/* 801CE330 001C9F90 38 A5 80 80 */ addi r5, r5, 0x80808080@l
+/* 801CE334 001C9F94 3C C8 FE FF */ addis r6, r8, 0xfeff
+/* 801CE338 001C9F98 38 C6 FE FF */ addi r6, r6, -257
+/* 801CE33C 001C9F9C 7C C6 40 78 */ andc r6, r6, r8
+/* 801CE340 001C9FA0 7C C0 28 39 */ and. r0, r6, r5
+/* 801CE344 001C9FA4 40 82 00 28 */ bne lbl_801CE36C
+/* 801CE348 001C9FA8 38 E7 FF FC */ addi r7, r7, -4
+lbl_801CE34C:
+/* 801CE34C 001C9FAC 95 07 00 04 */ stwu r8, 4(r7)
+/* 801CE350 001C9FB0 85 04 00 04 */ lwzu r8, 4(r4)
+/* 801CE354 001C9FB4 3C C8 FE FF */ addis r6, r8, 0xfeff
+/* 801CE358 001C9FB8 38 C6 FE FF */ addi r6, r6, -257
+/* 801CE35C 001C9FBC 7C C6 40 78 */ andc r6, r6, r8
+/* 801CE360 001C9FC0 7C C0 28 39 */ and. r0, r6, r5
+/* 801CE364 001C9FC4 41 82 FF E8 */ beq lbl_801CE34C
+/* 801CE368 001C9FC8 38 E7 00 04 */ addi r7, r7, 4
+lbl_801CE36C:
+/* 801CE36C 001C9FCC 88 04 00 00 */ lbz r0, 0(r4)
+/* 801CE370 001C9FD0 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE374 001C9FD4 98 07 00 00 */ stb r0, 0(r7)
+/* 801CE378 001C9FD8 4D 82 00 20 */ beqlr
+lbl_801CE37C:
+/* 801CE37C 001C9FDC 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CE380 001C9FE0 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE384 001C9FE4 9C 07 00 01 */ stbu r0, 1(r7)
+/* 801CE388 001C9FE8 40 82 FF F4 */ bne lbl_801CE37C
+/* 801CE38C 001C9FEC 4E 80 00 20 */ blr
+
+.global strncpy
+strncpy:
+/* 801CE390 001C9FF0 38 84 FF FF */ addi r4, r4, -1
+/* 801CE394 001C9FF4 38 C3 FF FF */ addi r6, r3, -1
+/* 801CE398 001C9FF8 38 A5 00 01 */ addi r5, r5, 1
+/* 801CE39C 001C9FFC 48 00 00 2C */ b lbl_801CE3C8
+lbl_801CE3A0:
+/* 801CE3A0 001CA000 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CE3A4 001CA004 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE3A8 001CA008 9C 06 00 01 */ stbu r0, 1(r6)
+/* 801CE3AC 001CA00C 40 82 00 1C */ bne lbl_801CE3C8
+/* 801CE3B0 001CA010 38 00 00 00 */ li r0, 0
+/* 801CE3B4 001CA014 48 00 00 08 */ b lbl_801CE3BC
+lbl_801CE3B8:
+/* 801CE3B8 001CA018 9C 06 00 01 */ stbu r0, 1(r6)
+lbl_801CE3BC:
+/* 801CE3BC 001CA01C 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CE3C0 001CA020 40 82 FF F8 */ bne lbl_801CE3B8
+/* 801CE3C4 001CA024 4E 80 00 20 */ blr
+lbl_801CE3C8:
+/* 801CE3C8 001CA028 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CE3CC 001CA02C 40 82 FF D4 */ bne lbl_801CE3A0
+/* 801CE3D0 001CA030 4E 80 00 20 */ blr
+
+.global strcat
+strcat:
+/* 801CE3D4 001CA034 38 84 FF FF */ addi r4, r4, -1
+/* 801CE3D8 001CA038 38 A3 FF FF */ addi r5, r3, -1
+lbl_801CE3DC:
+/* 801CE3DC 001CA03C 8C 05 00 01 */ lbzu r0, 1(r5)
+/* 801CE3E0 001CA040 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE3E4 001CA044 40 82 FF F8 */ bne lbl_801CE3DC
+/* 801CE3E8 001CA048 38 A5 FF FF */ addi r5, r5, -1
+lbl_801CE3EC:
+/* 801CE3EC 001CA04C 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CE3F0 001CA050 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE3F4 001CA054 9C 05 00 01 */ stbu r0, 1(r5)
+/* 801CE3F8 001CA058 40 82 FF F4 */ bne lbl_801CE3EC
+/* 801CE3FC 001CA05C 4E 80 00 20 */ blr
+
+.global strncat
+strncat:
+/* 801CE400 001CA060 38 84 FF FF */ addi r4, r4, -1
+/* 801CE404 001CA064 38 C3 FF FF */ addi r6, r3, -1
+lbl_801CE408:
+/* 801CE408 001CA068 8C 06 00 01 */ lbzu r0, 1(r6)
+/* 801CE40C 001CA06C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE410 001CA070 40 82 FF F8 */ bne lbl_801CE408
+/* 801CE414 001CA074 38 C6 FF FF */ addi r6, r6, -1
+/* 801CE418 001CA078 38 A5 00 01 */ addi r5, r5, 1
+/* 801CE41C 001CA07C 48 00 00 1C */ b lbl_801CE438
+lbl_801CE420:
+/* 801CE420 001CA080 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CE424 001CA084 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE428 001CA088 9C 06 00 01 */ stbu r0, 1(r6)
+/* 801CE42C 001CA08C 40 82 00 0C */ bne lbl_801CE438
+/* 801CE430 001CA090 38 C6 FF FF */ addi r6, r6, -1
+/* 801CE434 001CA094 48 00 00 0C */ b lbl_801CE440
+lbl_801CE438:
+/* 801CE438 001CA098 34 A5 FF FF */ addic. r5, r5, -1
+/* 801CE43C 001CA09C 40 82 FF E4 */ bne lbl_801CE420
+lbl_801CE440:
+/* 801CE440 001CA0A0 38 00 00 00 */ li r0, 0
+/* 801CE444 001CA0A4 98 06 00 01 */ stb r0, 1(r6)
+/* 801CE448 001CA0A8 4E 80 00 20 */ blr
+
+.global strcmp
+strcmp:
+/* 801CE44C 001CA0AC 88 A3 00 00 */ lbz r5, 0(r3)
+/* 801CE450 001CA0B0 88 04 00 00 */ lbz r0, 0(r4)
+/* 801CE454 001CA0B4 7C 00 28 51 */ subf. r0, r0, r5
+/* 801CE458 001CA0B8 41 82 00 0C */ beq lbl_801CE464
+/* 801CE45C 001CA0BC 7C 03 03 78 */ mr r3, r0
+/* 801CE460 001CA0C0 4E 80 00 20 */ blr
+lbl_801CE464:
+/* 801CE464 001CA0C4 54 80 07 BE */ clrlwi r0, r4, 0x1e
+/* 801CE468 001CA0C8 54 66 07 BE */ clrlwi r6, r3, 0x1e
+/* 801CE46C 001CA0CC 7C 00 30 40 */ cmplw r0, r6
+/* 801CE470 001CA0D0 40 82 00 C0 */ bne lbl_801CE530
+/* 801CE474 001CA0D4 2C 06 00 00 */ cmpwi r6, 0
+/* 801CE478 001CA0D8 41 82 00 58 */ beq lbl_801CE4D0
+/* 801CE47C 001CA0DC 2C 05 00 00 */ cmpwi r5, 0
+/* 801CE480 001CA0E0 40 82 00 0C */ bne lbl_801CE48C
+/* 801CE484 001CA0E4 38 60 00 00 */ li r3, 0
+/* 801CE488 001CA0E8 4E 80 00 20 */ blr
+lbl_801CE48C:
+/* 801CE48C 001CA0EC 20 06 00 03 */ subfic r0, r6, 3
+/* 801CE490 001CA0F0 7C 09 03 A6 */ mtctr r0
+/* 801CE494 001CA0F4 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE498 001CA0F8 41 82 00 30 */ beq lbl_801CE4C8
+lbl_801CE49C:
+/* 801CE49C 001CA0FC 8C A3 00 01 */ lbzu r5, 1(r3)
+/* 801CE4A0 001CA100 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CE4A4 001CA104 7C 00 28 51 */ subf. r0, r0, r5
+/* 801CE4A8 001CA108 41 82 00 0C */ beq lbl_801CE4B4
+/* 801CE4AC 001CA10C 7C 03 03 78 */ mr r3, r0
+/* 801CE4B0 001CA110 4E 80 00 20 */ blr
+lbl_801CE4B4:
+/* 801CE4B4 001CA114 2C 05 00 00 */ cmpwi r5, 0
+/* 801CE4B8 001CA118 40 82 00 0C */ bne lbl_801CE4C4
+/* 801CE4BC 001CA11C 38 60 00 00 */ li r3, 0
+/* 801CE4C0 001CA120 4E 80 00 20 */ blr
+lbl_801CE4C4:
+/* 801CE4C4 001CA124 42 00 FF D8 */ bdnz lbl_801CE49C
+lbl_801CE4C8:
+/* 801CE4C8 001CA128 38 63 00 01 */ addi r3, r3, 1
+/* 801CE4CC 001CA12C 38 84 00 01 */ addi r4, r4, 1
+lbl_801CE4D0:
+/* 801CE4D0 001CA130 80 E3 00 00 */ lwz r7, 0(r3)
+/* 801CE4D4 001CA134 3C A0 80 81 */ lis r5, 0x80808080@ha
+/* 801CE4D8 001CA138 38 C5 80 80 */ addi r6, r5, 0x80808080@l
+/* 801CE4DC 001CA13C 81 04 00 00 */ lwz r8, 0(r4)
+/* 801CE4E0 001CA140 3C A7 FE FF */ addis r5, r7, 0xfeff
+/* 801CE4E4 001CA144 38 A5 FE FF */ addi r5, r5, -257
+/* 801CE4E8 001CA148 7C A5 38 78 */ andc r5, r5, r7
+/* 801CE4EC 001CA14C 7C A0 30 39 */ and. r0, r5, r6
+/* 801CE4F0 001CA150 40 82 00 28 */ bne lbl_801CE518
+/* 801CE4F4 001CA154 48 00 00 1C */ b lbl_801CE510
+lbl_801CE4F8:
+/* 801CE4F8 001CA158 84 E3 00 04 */ lwzu r7, 4(r3)
+/* 801CE4FC 001CA15C 85 04 00 04 */ lwzu r8, 4(r4)
+/* 801CE500 001CA160 3C A7 FE FF */ addis r5, r7, 0xfeff
+/* 801CE504 001CA164 38 05 FE FF */ addi r0, r5, -257
+/* 801CE508 001CA168 7C 00 30 39 */ and. r0, r0, r6
+/* 801CE50C 001CA16C 40 82 00 0C */ bne lbl_801CE518
+lbl_801CE510:
+/* 801CE510 001CA170 7C 07 40 40 */ cmplw r7, r8
+/* 801CE514 001CA174 41 82 FF E4 */ beq lbl_801CE4F8
+lbl_801CE518:
+/* 801CE518 001CA178 88 A3 00 00 */ lbz r5, 0(r3)
+/* 801CE51C 001CA17C 88 04 00 00 */ lbz r0, 0(r4)
+/* 801CE520 001CA180 7C 00 28 51 */ subf. r0, r0, r5
+/* 801CE524 001CA184 41 82 00 0C */ beq lbl_801CE530
+/* 801CE528 001CA188 7C 03 03 78 */ mr r3, r0
+/* 801CE52C 001CA18C 4E 80 00 20 */ blr
+lbl_801CE530:
+/* 801CE530 001CA190 2C 05 00 00 */ cmpwi r5, 0
+/* 801CE534 001CA194 40 82 00 0C */ bne lbl_801CE540
+/* 801CE538 001CA198 38 60 00 00 */ li r3, 0
+/* 801CE53C 001CA19C 4E 80 00 20 */ blr
+lbl_801CE540:
+/* 801CE540 001CA1A0 8C A3 00 01 */ lbzu r5, 1(r3)
+/* 801CE544 001CA1A4 8C 04 00 01 */ lbzu r0, 1(r4)
+/* 801CE548 001CA1A8 7C 00 28 51 */ subf. r0, r0, r5
+/* 801CE54C 001CA1AC 41 82 00 0C */ beq lbl_801CE558
+/* 801CE550 001CA1B0 7C 03 03 78 */ mr r3, r0
+/* 801CE554 001CA1B4 4E 80 00 20 */ blr
+lbl_801CE558:
+/* 801CE558 001CA1B8 2C 05 00 00 */ cmpwi r5, 0
+/* 801CE55C 001CA1BC 40 82 FF E4 */ bne lbl_801CE540
+/* 801CE560 001CA1C0 38 60 00 00 */ li r3, 0
+/* 801CE564 001CA1C4 4E 80 00 20 */ blr
+
+.global strncmp
+strncmp:
+/* 801CE568 001CA1C8 38 63 FF FF */ addi r3, r3, -1
+/* 801CE56C 001CA1CC 38 84 FF FF */ addi r4, r4, -1
+/* 801CE570 001CA1D0 38 C5 00 01 */ addi r6, r5, 1
+/* 801CE574 001CA1D4 48 00 00 24 */ b lbl_801CE598
+lbl_801CE578:
+/* 801CE578 001CA1D8 8C 03 00 01 */ lbzu r0, 1(r3)
+/* 801CE57C 001CA1DC 8C A4 00 01 */ lbzu r5, 1(r4)
+/* 801CE580 001CA1E0 7C 00 28 40 */ cmplw r0, r5
+/* 801CE584 001CA1E4 41 82 00 0C */ beq lbl_801CE590
+/* 801CE588 001CA1E8 7C 65 00 50 */ subf r3, r5, r0
+/* 801CE58C 001CA1EC 4E 80 00 20 */ blr
+lbl_801CE590:
+/* 801CE590 001CA1F0 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE594 001CA1F4 41 82 00 0C */ beq lbl_801CE5A0
+lbl_801CE598:
+/* 801CE598 001CA1F8 34 C6 FF FF */ addic. r6, r6, -1
+/* 801CE59C 001CA1FC 40 82 FF DC */ bne lbl_801CE578
+lbl_801CE5A0:
+/* 801CE5A0 001CA200 38 60 00 00 */ li r3, 0
+/* 801CE5A4 001CA204 4E 80 00 20 */ blr
+
+.global strchr
+strchr:
+/* 801CE5A8 001CA208 38 63 FF FF */ addi r3, r3, -1
+/* 801CE5AC 001CA20C 54 80 06 3E */ clrlwi r0, r4, 0x18
+/* 801CE5B0 001CA210 48 00 00 0C */ b lbl_801CE5BC
+lbl_801CE5B4:
+/* 801CE5B4 001CA214 7C 04 00 40 */ cmplw r4, r0
+/* 801CE5B8 001CA218 4D 82 00 20 */ beqlr
+lbl_801CE5BC:
+/* 801CE5BC 001CA21C 8C 83 00 01 */ lbzu r4, 1(r3)
+/* 801CE5C0 001CA220 2C 04 00 00 */ cmpwi r4, 0
+/* 801CE5C4 001CA224 40 82 FF F0 */ bne lbl_801CE5B4
+/* 801CE5C8 001CA228 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE5CC 001CA22C 4D 82 00 20 */ beqlr
+/* 801CE5D0 001CA230 38 60 00 00 */ li r3, 0
+/* 801CE5D4 001CA234 4E 80 00 20 */ blr
+
+.global strcspn
+strcspn:
+/* 801CE5D8 001CA238 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 801CE5DC 001CA23C 38 00 00 00 */ li r0, 0
+/* 801CE5E0 001CA240 39 04 FF FF */ addi r8, r4, -1
+/* 801CE5E4 001CA244 38 80 00 01 */ li r4, 1
+/* 801CE5E8 001CA248 90 01 00 08 */ stw r0, 8(r1)
+/* 801CE5EC 001CA24C 38 C1 00 08 */ addi r6, r1, 8
+/* 801CE5F0 001CA250 90 01 00 0C */ stw r0, 0xc(r1)
+/* 801CE5F4 001CA254 90 01 00 10 */ stw r0, 0x10(r1)
+/* 801CE5F8 001CA258 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CE5FC 001CA25C 90 01 00 18 */ stw r0, 0x18(r1)
+/* 801CE600 001CA260 90 01 00 1C */ stw r0, 0x1c(r1)
+/* 801CE604 001CA264 90 01 00 20 */ stw r0, 0x20(r1)
+/* 801CE608 001CA268 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801CE60C 001CA26C 48 00 00 20 */ b lbl_801CE62C
+lbl_801CE610:
+/* 801CE610 001CA270 54 07 EE FE */ rlwinm r7, r0, 0x1d, 0x1b, 0x1f
+/* 801CE614 001CA274 54 00 07 7E */ clrlwi r0, r0, 0x1d
+/* 801CE618 001CA278 7C 80 00 30 */ slw r0, r4, r0
+/* 801CE61C 001CA27C 7C A6 38 AE */ lbzx r5, r6, r7
+/* 801CE620 001CA280 54 00 06 3E */ clrlwi r0, r0, 0x18
+/* 801CE624 001CA284 7C A0 03 78 */ or r0, r5, r0
+/* 801CE628 001CA288 7C 06 39 AE */ stbx r0, r6, r7
+lbl_801CE62C:
+/* 801CE62C 001CA28C 8C 08 00 01 */ lbzu r0, 1(r8)
+/* 801CE630 001CA290 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE634 001CA294 40 82 FF DC */ bne lbl_801CE610
+/* 801CE638 001CA298 38 E3 FF FF */ addi r7, r3, -1
+/* 801CE63C 001CA29C 38 C1 00 08 */ addi r6, r1, 8
+/* 801CE640 001CA2A0 38 80 00 01 */ li r4, 1
+/* 801CE644 001CA2A4 48 00 00 20 */ b lbl_801CE664
+lbl_801CE648:
+/* 801CE648 001CA2A8 54 05 EE FE */ rlwinm r5, r0, 0x1d, 0x1b, 0x1f
+/* 801CE64C 001CA2AC 54 00 07 7E */ clrlwi r0, r0, 0x1d
+/* 801CE650 001CA2B0 7C 80 00 30 */ slw r0, r4, r0
+/* 801CE654 001CA2B4 7C A6 28 AE */ lbzx r5, r6, r5
+/* 801CE658 001CA2B8 54 00 06 3E */ clrlwi r0, r0, 0x18
+/* 801CE65C 001CA2BC 7C A0 00 39 */ and. r0, r5, r0
+/* 801CE660 001CA2C0 40 82 00 10 */ bne lbl_801CE670
+lbl_801CE664:
+/* 801CE664 001CA2C4 8C 07 00 01 */ lbzu r0, 1(r7)
+/* 801CE668 001CA2C8 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE66C 001CA2CC 40 82 FF DC */ bne lbl_801CE648
+lbl_801CE670:
+/* 801CE670 001CA2D0 7C 63 38 50 */ subf r3, r3, r7
+/* 801CE674 001CA2D4 38 21 00 30 */ addi r1, r1, 0x30
+/* 801CE678 001CA2D8 4E 80 00 20 */ blr
+
+.global strtok
+strtok:
+/* 801CE67C 001CA2DC 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 801CE680 001CA2E0 38 00 00 00 */ li r0, 0
+/* 801CE684 001CA2E4 2C 03 00 00 */ cmpwi r3, 0
+/* 801CE688 001CA2E8 90 01 00 08 */ stw r0, 8(r1)
+/* 801CE68C 001CA2EC 90 01 00 0C */ stw r0, 0xc(r1)
+/* 801CE690 001CA2F0 90 01 00 10 */ stw r0, 0x10(r1)
+/* 801CE694 001CA2F4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801CE698 001CA2F8 90 01 00 18 */ stw r0, 0x18(r1)
+/* 801CE69C 001CA2FC 90 01 00 1C */ stw r0, 0x1c(r1)
+/* 801CE6A0 001CA300 90 01 00 20 */ stw r0, 0x20(r1)
+/* 801CE6A4 001CA304 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801CE6A8 001CA308 41 82 00 08 */ beq lbl_801CE6B0
+/* 801CE6AC 001CA30C 90 6D 83 F4 */ stw r3, lbl_8063D6B4-_SDA_BASE_(r13)
+lbl_801CE6B0:
+/* 801CE6B0 001CA310 38 E4 FF FF */ addi r7, r4, -1
+/* 801CE6B4 001CA314 38 A1 00 08 */ addi r5, r1, 8
+/* 801CE6B8 001CA318 38 60 00 01 */ li r3, 1
+/* 801CE6BC 001CA31C 48 00 00 20 */ b lbl_801CE6DC
+lbl_801CE6C0:
+/* 801CE6C0 001CA320 54 06 EE FE */ rlwinm r6, r0, 0x1d, 0x1b, 0x1f
+/* 801CE6C4 001CA324 54 00 07 7E */ clrlwi r0, r0, 0x1d
+/* 801CE6C8 001CA328 7C 60 00 30 */ slw r0, r3, r0
+/* 801CE6CC 001CA32C 7C 85 30 AE */ lbzx r4, r5, r6
+/* 801CE6D0 001CA330 54 00 06 3E */ clrlwi r0, r0, 0x18
+/* 801CE6D4 001CA334 7C 80 03 78 */ or r0, r4, r0
+/* 801CE6D8 001CA338 7C 05 31 AE */ stbx r0, r5, r6
+lbl_801CE6DC:
+/* 801CE6DC 001CA33C 8C 07 00 01 */ lbzu r0, 1(r7)
+/* 801CE6E0 001CA340 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE6E4 001CA344 40 82 FF DC */ bne lbl_801CE6C0
+/* 801CE6E8 001CA348 80 8D 83 F4 */ lwz r4, lbl_8063D6B4-_SDA_BASE_(r13)
+/* 801CE6EC 001CA34C 38 A1 00 08 */ addi r5, r1, 8
+/* 801CE6F0 001CA350 38 60 00 01 */ li r3, 1
+/* 801CE6F4 001CA354 38 E4 FF FF */ addi r7, r4, -1
+/* 801CE6F8 001CA358 48 00 00 20 */ b lbl_801CE718
+lbl_801CE6FC:
+/* 801CE6FC 001CA35C 54 C4 EE FE */ rlwinm r4, r6, 0x1d, 0x1b, 0x1f
+/* 801CE700 001CA360 54 C0 07 7E */ clrlwi r0, r6, 0x1d
+/* 801CE704 001CA364 7C 60 00 30 */ slw r0, r3, r0
+/* 801CE708 001CA368 7C 85 20 AE */ lbzx r4, r5, r4
+/* 801CE70C 001CA36C 54 00 06 3E */ clrlwi r0, r0, 0x18
+/* 801CE710 001CA370 7C 80 00 39 */ and. r0, r4, r0
+/* 801CE714 001CA374 41 82 00 10 */ beq lbl_801CE724
+lbl_801CE718:
+/* 801CE718 001CA378 8C C7 00 01 */ lbzu r6, 1(r7)
+/* 801CE71C 001CA37C 2C 06 00 00 */ cmpwi r6, 0
+/* 801CE720 001CA380 40 82 FF DC */ bne lbl_801CE6FC
+lbl_801CE724:
+/* 801CE724 001CA384 2C 06 00 00 */ cmpwi r6, 0
+/* 801CE728 001CA388 40 82 00 14 */ bne lbl_801CE73C
+/* 801CE72C 001CA38C 80 0D 83 F0 */ lwz r0, lbl_8063D6B0-_SDA_BASE_(r13)
+/* 801CE730 001CA390 38 60 00 00 */ li r3, 0
+/* 801CE734 001CA394 90 0D 83 F4 */ stw r0, lbl_8063D6B4-_SDA_BASE_(r13)
+/* 801CE738 001CA398 48 00 00 60 */ b lbl_801CE798
+lbl_801CE73C:
+/* 801CE73C 001CA39C 7C E3 3B 78 */ mr r3, r7
+/* 801CE740 001CA3A0 38 C1 00 08 */ addi r6, r1, 8
+/* 801CE744 001CA3A4 38 80 00 01 */ li r4, 1
+/* 801CE748 001CA3A8 48 00 00 20 */ b lbl_801CE768
+lbl_801CE74C:
+/* 801CE74C 001CA3AC 55 05 EE FE */ rlwinm r5, r8, 0x1d, 0x1b, 0x1f
+/* 801CE750 001CA3B0 55 00 07 7E */ clrlwi r0, r8, 0x1d
+/* 801CE754 001CA3B4 7C 80 00 30 */ slw r0, r4, r0
+/* 801CE758 001CA3B8 7C A6 28 AE */ lbzx r5, r6, r5
+/* 801CE75C 001CA3BC 54 00 06 3E */ clrlwi r0, r0, 0x18
+/* 801CE760 001CA3C0 7C A0 00 39 */ and. r0, r5, r0
+/* 801CE764 001CA3C4 40 82 00 10 */ bne lbl_801CE774
+lbl_801CE768:
+/* 801CE768 001CA3C8 8D 07 00 01 */ lbzu r8, 1(r7)
+/* 801CE76C 001CA3CC 2C 08 00 00 */ cmpwi r8, 0
+/* 801CE770 001CA3D0 40 82 FF DC */ bne lbl_801CE74C
+lbl_801CE774:
+/* 801CE774 001CA3D4 2C 08 00 00 */ cmpwi r8, 0
+/* 801CE778 001CA3D8 40 82 00 10 */ bne lbl_801CE788
+/* 801CE77C 001CA3DC 80 0D 83 F0 */ lwz r0, lbl_8063D6B0-_SDA_BASE_(r13)
+/* 801CE780 001CA3E0 90 0D 83 F4 */ stw r0, lbl_8063D6B4-_SDA_BASE_(r13)
+/* 801CE784 001CA3E4 48 00 00 14 */ b lbl_801CE798
+lbl_801CE788:
+/* 801CE788 001CA3E8 38 87 00 01 */ addi r4, r7, 1
+/* 801CE78C 001CA3EC 38 00 00 00 */ li r0, 0
+/* 801CE790 001CA3F0 90 8D 83 F4 */ stw r4, lbl_8063D6B4-_SDA_BASE_(r13)
+/* 801CE794 001CA3F4 98 07 00 00 */ stb r0, 0(r7)
+lbl_801CE798:
+/* 801CE798 001CA3F8 38 21 00 30 */ addi r1, r1, 0x30
+/* 801CE79C 001CA3FC 4E 80 00 20 */ blr
+
+.global strstr
+strstr:
+/* 801CE7A0 001CA400 2C 04 00 00 */ cmpwi r4, 0
+/* 801CE7A4 001CA404 38 A3 FF FF */ addi r5, r3, -1
+/* 801CE7A8 001CA408 4D 82 00 20 */ beqlr
+/* 801CE7AC 001CA40C 88 C4 00 00 */ lbz r6, 0(r4)
+/* 801CE7B0 001CA410 2C 06 00 00 */ cmpwi r6, 0
+/* 801CE7B4 001CA414 40 82 00 44 */ bne lbl_801CE7F8
+/* 801CE7B8 001CA418 4E 80 00 20 */ blr
+/* 801CE7BC 001CA41C 48 00 00 3C */ b lbl_801CE7F8
+lbl_801CE7C0:
+/* 801CE7C0 001CA420 7C 00 30 40 */ cmplw r0, r6
+/* 801CE7C4 001CA424 40 82 00 34 */ bne lbl_801CE7F8
+/* 801CE7C8 001CA428 38 E5 FF FF */ addi r7, r5, -1
+/* 801CE7CC 001CA42C 39 04 FF FF */ addi r8, r4, -1
+lbl_801CE7D0:
+/* 801CE7D0 001CA430 8C 07 00 01 */ lbzu r0, 1(r7)
+/* 801CE7D4 001CA434 8C 68 00 01 */ lbzu r3, 1(r8)
+/* 801CE7D8 001CA438 7C 00 18 40 */ cmplw r0, r3
+/* 801CE7DC 001CA43C 40 82 00 0C */ bne lbl_801CE7E8
+/* 801CE7E0 001CA440 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE7E4 001CA444 40 82 FF EC */ bne lbl_801CE7D0
+lbl_801CE7E8:
+/* 801CE7E8 001CA448 2C 03 00 00 */ cmpwi r3, 0
+/* 801CE7EC 001CA44C 40 82 00 0C */ bne lbl_801CE7F8
+/* 801CE7F0 001CA450 7C A3 2B 78 */ mr r3, r5
+/* 801CE7F4 001CA454 4E 80 00 20 */ blr
+lbl_801CE7F8:
+/* 801CE7F8 001CA458 8C 05 00 01 */ lbzu r0, 1(r5)
+/* 801CE7FC 001CA45C 2C 00 00 00 */ cmpwi r0, 0
+/* 801CE800 001CA460 40 82 FF C0 */ bne lbl_801CE7C0
+/* 801CE804 001CA464 38 60 00 00 */ li r3, 0
+/* 801CE808 001CA468 4E 80 00 20 */ blr
diff --git a/asm/nw4r/lyt/detail/lyt_common.s b/asm/nw4r/lyt/detail/lyt_common.s new file mode 100644 index 0000000..556623b --- /dev/null +++ b/asm/nw4r/lyt/detail/lyt_common.s @@ -0,0 +1,769 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global TestFileHeader__Q34nw4r3lyt6detailFRCQ44nw4r3lyt3res16BinaryFileHeader
+TestFileHeader__Q34nw4r3lyt6detailFRCQ44nw4r3lyt3res16BinaryFileHeader:
+/* 8038E718 0038A378 A0 03 00 04 */ lhz r0, 4(r3)
+/* 8038E71C 0038A37C 38 80 00 00 */ li r4, 0
+/* 8038E720 0038A380 28 00 FE FF */ cmplwi r0, 0xfeff
+/* 8038E724 0038A384 40 82 00 14 */ bne lbl_8038E738
+/* 8038E728 0038A388 A0 03 00 06 */ lhz r0, 6(r3)
+/* 8038E72C 0038A38C 28 00 00 08 */ cmplwi r0, 8
+/* 8038E730 0038A390 40 82 00 08 */ bne lbl_8038E738
+/* 8038E734 0038A394 38 80 00 01 */ li r4, 1
+lbl_8038E738:
+/* 8038E738 0038A398 7C 83 23 78 */ mr r3, r4
+/* 8038E73C 0038A39C 4E 80 00 20 */ blr
+
+.global TestFileHeader__Q34nw4r3lyt6detailFRCQ44nw4r3lyt3res16BinaryFileHeaderUl
+TestFileHeader__Q34nw4r3lyt6detailFRCQ44nw4r3lyt3res16BinaryFileHeaderUl:
+/* 8038E740 0038A3A0 80 03 00 00 */ lwz r0, 0(r3)
+/* 8038E744 0038A3A4 38 A0 00 00 */ li r5, 0
+/* 8038E748 0038A3A8 7C 04 00 40 */ cmplw r4, r0
+/* 8038E74C 0038A3AC 40 82 00 20 */ bne lbl_8038E76C
+/* 8038E750 0038A3B0 A0 03 00 04 */ lhz r0, 4(r3)
+/* 8038E754 0038A3B4 28 00 FE FF */ cmplwi r0, 0xfeff
+/* 8038E758 0038A3B8 40 82 00 14 */ bne lbl_8038E76C
+/* 8038E75C 0038A3BC A0 03 00 06 */ lhz r0, 6(r3)
+/* 8038E760 0038A3C0 28 00 00 08 */ cmplwi r0, 8
+/* 8038E764 0038A3C4 40 82 00 08 */ bne lbl_8038E76C
+/* 8038E768 0038A3C8 38 A0 00 01 */ li r5, 1
+lbl_8038E76C:
+/* 8038E76C 0038A3CC 7C A3 2B 78 */ mr r3, r5
+/* 8038E770 0038A3D0 4E 80 00 20 */ blr
+
+.global __ct__Q44nw4r3lyt6detail11TexCoordAryFv
+__ct__Q44nw4r3lyt6detail11TexCoordAryFv:
+/* 8038E774 0038A3D4 38 00 00 00 */ li r0, 0
+/* 8038E778 0038A3D8 98 03 00 00 */ stb r0, 0(r3)
+/* 8038E77C 0038A3DC 98 03 00 01 */ stb r0, 1(r3)
+/* 8038E780 0038A3E0 90 03 00 04 */ stw r0, 4(r3)
+/* 8038E784 0038A3E4 4E 80 00 20 */ blr
+
+.global Free__Q44nw4r3lyt6detail11TexCoordAryFv
+Free__Q44nw4r3lyt6detail11TexCoordAryFv:
+/* 8038E788 0038A3E8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8038E78C 0038A3EC 7C 08 02 A6 */ mflr r0
+/* 8038E790 0038A3F0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038E794 0038A3F4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8038E798 0038A3F8 7C 7F 1B 78 */ mr r31, r3
+/* 8038E79C 0038A3FC 80 83 00 04 */ lwz r4, 4(r3)
+/* 8038E7A0 0038A400 2C 04 00 00 */ cmpwi r4, 0
+/* 8038E7A4 0038A404 41 82 00 1C */ beq lbl_8038E7C0
+/* 8038E7A8 0038A408 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
+/* 8038E7AC 0038A40C 4B F0 8F 89 */ bl func_80297734
+/* 8038E7B0 0038A410 38 00 00 00 */ li r0, 0
+/* 8038E7B4 0038A414 90 1F 00 04 */ stw r0, 4(r31)
+/* 8038E7B8 0038A418 98 1F 00 00 */ stb r0, 0(r31)
+/* 8038E7BC 0038A41C 98 1F 00 01 */ stb r0, 1(r31)
+lbl_8038E7C0:
+/* 8038E7C0 0038A420 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8038E7C4 0038A424 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8038E7C8 0038A428 7C 08 03 A6 */ mtlr r0
+/* 8038E7CC 0038A42C 38 21 00 10 */ addi r1, r1, 0x10
+/* 8038E7D0 0038A430 4E 80 00 20 */ blr
+
+.global Reserve__Q44nw4r3lyt6detail11TexCoordAryFUc
+Reserve__Q44nw4r3lyt6detail11TexCoordAryFUc:
+/* 8038E7D4 0038A434 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8038E7D8 0038A438 7C 08 02 A6 */ mflr r0
+/* 8038E7DC 0038A43C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038E7E0 0038A440 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8038E7E4 0038A444 7C 9F 23 78 */ mr r31, r4
+/* 8038E7E8 0038A448 93 C1 00 08 */ stw r30, 8(r1)
+/* 8038E7EC 0038A44C 7C 7E 1B 78 */ mr r30, r3
+/* 8038E7F0 0038A450 88 03 00 00 */ lbz r0, 0(r3)
+/* 8038E7F4 0038A454 7C 00 20 40 */ cmplw r0, r4
+/* 8038E7F8 0038A458 40 80 00 44 */ bge lbl_8038E83C
+/* 8038E7FC 0038A45C 80 83 00 04 */ lwz r4, 4(r3)
+/* 8038E800 0038A460 2C 04 00 00 */ cmpwi r4, 0
+/* 8038E804 0038A464 41 82 00 1C */ beq lbl_8038E820
+/* 8038E808 0038A468 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
+/* 8038E80C 0038A46C 4B F0 8F 29 */ bl func_80297734
+/* 8038E810 0038A470 38 00 00 00 */ li r0, 0
+/* 8038E814 0038A474 90 1E 00 04 */ stw r0, 4(r30)
+/* 8038E818 0038A478 98 1E 00 00 */ stb r0, 0(r30)
+/* 8038E81C 0038A47C 98 1E 00 01 */ stb r0, 1(r30)
+lbl_8038E820:
+/* 8038E820 0038A480 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
+/* 8038E824 0038A484 57 E4 2C F4 */ rlwinm r4, r31, 5, 0x13, 0x1a
+/* 8038E828 0038A488 4B F0 8E FD */ bl func_80297724
+/* 8038E82C 0038A48C 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E830 0038A490 90 7E 00 04 */ stw r3, 4(r30)
+/* 8038E834 0038A494 41 82 00 08 */ beq lbl_8038E83C
+/* 8038E838 0038A498 9B FE 00 00 */ stb r31, 0(r30)
+lbl_8038E83C:
+/* 8038E83C 0038A49C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8038E840 0038A4A0 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8038E844 0038A4A4 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8038E848 0038A4A8 7C 08 03 A6 */ mtlr r0
+/* 8038E84C 0038A4AC 38 21 00 10 */ addi r1, r1, 0x10
+/* 8038E850 0038A4B0 4E 80 00 20 */ blr
+
+.global SetSize__Q44nw4r3lyt6detail11TexCoordAryFUc
+SetSize__Q44nw4r3lyt6detail11TexCoordAryFUc:
+/* 8038E854 0038A4B4 80 03 00 04 */ lwz r0, 4(r3)
+/* 8038E858 0038A4B8 2C 00 00 00 */ cmpwi r0, 0
+/* 8038E85C 0038A4BC 4D 82 00 20 */ beqlr
+/* 8038E860 0038A4C0 88 03 00 00 */ lbz r0, 0(r3)
+/* 8038E864 0038A4C4 7C 04 00 40 */ cmplw r4, r0
+/* 8038E868 0038A4C8 4D 81 00 20 */ bgtlr
+/* 8038E86C 0038A4CC 88 0D B2 D8 */ lbz r0, lbl_80640598-_SDA_BASE_(r13)
+/* 8038E870 0038A4D0 7C 00 07 75 */ extsb. r0, r0
+/* 8038E874 0038A4D4 40 82 00 3C */ bne lbl_8038E8B0
+/* 8038E878 0038A4D8 3C C0 80 64 */ lis r6, lbl_8063CE08@ha
+/* 8038E87C 0038A4DC C0 22 A9 00 */ lfs f1, lbl_80642F00-_SDA2_BASE_(r2)
+/* 8038E880 0038A4E0 38 A6 CE 08 */ addi r5, r6, lbl_8063CE08@l
+/* 8038E884 0038A4E4 C0 02 A9 04 */ lfs f0, lbl_80642F04-_SDA2_BASE_(r2)
+/* 8038E888 0038A4E8 38 00 00 01 */ li r0, 1
+/* 8038E88C 0038A4EC D0 26 CE 08 */ stfs f1, -0x31f8(r6)
+/* 8038E890 0038A4F0 D0 25 00 04 */ stfs f1, 4(r5)
+/* 8038E894 0038A4F4 D0 05 00 08 */ stfs f0, 8(r5)
+/* 8038E898 0038A4F8 D0 25 00 0C */ stfs f1, 0xc(r5)
+/* 8038E89C 0038A4FC D0 25 00 10 */ stfs f1, 0x10(r5)
+/* 8038E8A0 0038A500 D0 05 00 14 */ stfs f0, 0x14(r5)
+/* 8038E8A4 0038A504 D0 05 00 18 */ stfs f0, 0x18(r5)
+/* 8038E8A8 0038A508 D0 05 00 1C */ stfs f0, 0x1c(r5)
+/* 8038E8AC 0038A50C 98 0D B2 D8 */ stb r0, lbl_80640598-_SDA_BASE_(r13)
+lbl_8038E8B0:
+/* 8038E8B0 0038A510 88 E3 00 01 */ lbz r7, 1(r3)
+/* 8038E8B4 0038A514 3C C0 80 64 */ lis r6, lbl_8063CE08@ha
+/* 8038E8B8 0038A518 38 A6 CE 08 */ addi r5, r6, lbl_8063CE08@l
+/* 8038E8BC 0038A51C C0 E6 CE 08 */ lfs f7, -0x31f8(r6)
+/* 8038E8C0 0038A520 7C 07 20 50 */ subf r0, r7, r4
+/* 8038E8C4 0038A524 54 E6 28 34 */ slwi r6, r7, 5
+/* 8038E8C8 0038A528 C0 C5 00 04 */ lfs f6, 4(r5)
+/* 8038E8CC 0038A52C C0 A5 00 08 */ lfs f5, 8(r5)
+/* 8038E8D0 0038A530 C0 85 00 0C */ lfs f4, 0xc(r5)
+/* 8038E8D4 0038A534 C0 65 00 10 */ lfs f3, 0x10(r5)
+/* 8038E8D8 0038A538 C0 45 00 14 */ lfs f2, 0x14(r5)
+/* 8038E8DC 0038A53C C0 25 00 18 */ lfs f1, 0x18(r5)
+/* 8038E8E0 0038A540 C0 05 00 1C */ lfs f0, 0x1c(r5)
+/* 8038E8E4 0038A544 7C 09 03 A6 */ mtctr r0
+/* 8038E8E8 0038A548 7C 07 20 00 */ cmpw r7, r4
+/* 8038E8EC 0038A54C 40 80 00 4C */ bge lbl_8038E938
+lbl_8038E8F0:
+/* 8038E8F0 0038A550 80 03 00 04 */ lwz r0, 4(r3)
+/* 8038E8F4 0038A554 7C E6 05 2E */ stfsx f7, r6, r0
+/* 8038E8F8 0038A558 7C A0 32 14 */ add r5, r0, r6
+/* 8038E8FC 0038A55C D0 C5 00 04 */ stfs f6, 4(r5)
+/* 8038E900 0038A560 80 03 00 04 */ lwz r0, 4(r3)
+/* 8038E904 0038A564 7C A0 32 14 */ add r5, r0, r6
+/* 8038E908 0038A568 D0 A5 00 08 */ stfs f5, 8(r5)
+/* 8038E90C 0038A56C D0 85 00 0C */ stfs f4, 0xc(r5)
+/* 8038E910 0038A570 80 03 00 04 */ lwz r0, 4(r3)
+/* 8038E914 0038A574 7C A0 32 14 */ add r5, r0, r6
+/* 8038E918 0038A578 D0 65 00 10 */ stfs f3, 0x10(r5)
+/* 8038E91C 0038A57C D0 45 00 14 */ stfs f2, 0x14(r5)
+/* 8038E920 0038A580 80 03 00 04 */ lwz r0, 4(r3)
+/* 8038E924 0038A584 7C A0 32 14 */ add r5, r0, r6
+/* 8038E928 0038A588 38 C6 00 20 */ addi r6, r6, 0x20
+/* 8038E92C 0038A58C D0 25 00 18 */ stfs f1, 0x18(r5)
+/* 8038E930 0038A590 D0 05 00 1C */ stfs f0, 0x1c(r5)
+/* 8038E934 0038A594 42 00 FF BC */ bdnz lbl_8038E8F0
+lbl_8038E938:
+/* 8038E938 0038A598 98 83 00 01 */ stb r4, 1(r3)
+/* 8038E93C 0038A59C 4E 80 00 20 */ blr
+
+.global Copy__Q44nw4r3lyt6detail11TexCoordAryFPCvUc
+Copy__Q44nw4r3lyt6detail11TexCoordAryFPCvUc:
+/* 8038E940 0038A5A0 88 03 00 01 */ lbz r0, 1(r3)
+/* 8038E944 0038A5A4 7C 00 28 40 */ cmplw r0, r5
+/* 8038E948 0038A5A8 40 80 00 08 */ bge lbl_8038E950
+/* 8038E94C 0038A5AC 7C A0 2B 78 */ mr r0, r5
+lbl_8038E950:
+/* 8038E950 0038A5B0 98 03 00 01 */ stb r0, 1(r3)
+/* 8038E954 0038A5B4 38 C0 00 00 */ li r6, 0
+/* 8038E958 0038A5B8 7C A9 03 A6 */ mtctr r5
+/* 8038E95C 0038A5BC 2C 05 00 00 */ cmpwi r5, 0
+/* 8038E960 0038A5C0 4C 81 00 20 */ blelr
+lbl_8038E964:
+/* 8038E964 0038A5C4 80 03 00 04 */ lwz r0, 4(r3)
+/* 8038E968 0038A5C8 C0 24 00 00 */ lfs f1, 0(r4)
+/* 8038E96C 0038A5CC C0 04 00 04 */ lfs f0, 4(r4)
+/* 8038E970 0038A5D0 7C A0 32 14 */ add r5, r0, r6
+/* 8038E974 0038A5D4 7C 26 05 2E */ stfsx f1, r6, r0
+/* 8038E978 0038A5D8 C0 24 00 08 */ lfs f1, 8(r4)
+/* 8038E97C 0038A5DC D0 05 00 04 */ stfs f0, 4(r5)
+/* 8038E980 0038A5E0 C0 04 00 0C */ lfs f0, 0xc(r4)
+/* 8038E984 0038A5E4 80 03 00 04 */ lwz r0, 4(r3)
+/* 8038E988 0038A5E8 C0 64 00 10 */ lfs f3, 0x10(r4)
+/* 8038E98C 0038A5EC 7C A0 32 14 */ add r5, r0, r6
+/* 8038E990 0038A5F0 C0 44 00 14 */ lfs f2, 0x14(r4)
+/* 8038E994 0038A5F4 D0 25 00 08 */ stfs f1, 8(r5)
+/* 8038E998 0038A5F8 C0 24 00 18 */ lfs f1, 0x18(r4)
+/* 8038E99C 0038A5FC D0 05 00 0C */ stfs f0, 0xc(r5)
+/* 8038E9A0 0038A600 C0 04 00 1C */ lfs f0, 0x1c(r4)
+/* 8038E9A4 0038A604 38 84 00 20 */ addi r4, r4, 0x20
+/* 8038E9A8 0038A608 80 03 00 04 */ lwz r0, 4(r3)
+/* 8038E9AC 0038A60C 7C A0 32 14 */ add r5, r0, r6
+/* 8038E9B0 0038A610 D0 65 00 10 */ stfs f3, 0x10(r5)
+/* 8038E9B4 0038A614 D0 45 00 14 */ stfs f2, 0x14(r5)
+/* 8038E9B8 0038A618 80 03 00 04 */ lwz r0, 4(r3)
+/* 8038E9BC 0038A61C 7C A0 32 14 */ add r5, r0, r6
+/* 8038E9C0 0038A620 38 C6 00 20 */ addi r6, r6, 0x20
+/* 8038E9C4 0038A624 D0 25 00 18 */ stfs f1, 0x18(r5)
+/* 8038E9C8 0038A628 D0 05 00 1C */ stfs f0, 0x1c(r5)
+/* 8038E9CC 0038A62C 42 00 FF 98 */ bdnz lbl_8038E964
+/* 8038E9D0 0038A630 4E 80 00 20 */ blr
+
+.global IsModulateVertexColor__Q34nw4r3lyt6detailFPQ34nw4r2ut5ColorUc
+IsModulateVertexColor__Q34nw4r3lyt6detailFPQ34nw4r2ut5ColorUc:
+/* 8038E9D4 0038A634 28 04 00 FF */ cmplwi r4, 0xff
+/* 8038E9D8 0038A638 41 82 00 0C */ beq lbl_8038E9E4
+/* 8038E9DC 0038A63C 38 60 00 01 */ li r3, 1
+/* 8038E9E0 0038A640 4E 80 00 20 */ blr
+lbl_8038E9E4:
+/* 8038E9E4 0038A644 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E9E8 0038A648 41 82 00 4C */ beq lbl_8038EA34
+/* 8038E9EC 0038A64C 80 83 00 00 */ lwz r4, 0(r3)
+/* 8038E9F0 0038A650 3C 04 00 01 */ addis r0, r4, 1
+/* 8038E9F4 0038A654 28 00 FF FF */ cmplwi r0, 0xffff
+/* 8038E9F8 0038A658 40 82 00 34 */ bne lbl_8038EA2C
+/* 8038E9FC 0038A65C 80 83 00 04 */ lwz r4, 4(r3)
+/* 8038EA00 0038A660 3C 04 00 01 */ addis r0, r4, 1
+/* 8038EA04 0038A664 28 00 FF FF */ cmplwi r0, 0xffff
+/* 8038EA08 0038A668 40 82 00 24 */ bne lbl_8038EA2C
+/* 8038EA0C 0038A66C 80 83 00 08 */ lwz r4, 8(r3)
+/* 8038EA10 0038A670 3C 04 00 01 */ addis r0, r4, 1
+/* 8038EA14 0038A674 28 00 FF FF */ cmplwi r0, 0xffff
+/* 8038EA18 0038A678 40 82 00 14 */ bne lbl_8038EA2C
+/* 8038EA1C 0038A67C 80 63 00 0C */ lwz r3, 0xc(r3)
+/* 8038EA20 0038A680 3C 03 00 01 */ addis r0, r3, 1
+/* 8038EA24 0038A684 28 00 FF FF */ cmplwi r0, 0xffff
+/* 8038EA28 0038A688 41 82 00 0C */ beq lbl_8038EA34
+lbl_8038EA2C:
+/* 8038EA2C 0038A68C 38 60 00 01 */ li r3, 1
+/* 8038EA30 0038A690 4E 80 00 20 */ blr
+lbl_8038EA34:
+/* 8038EA34 0038A694 38 60 00 00 */ li r3, 0
+/* 8038EA38 0038A698 4E 80 00 20 */ blr
+
+.global MultipleAlpha__Q34nw4r3lyt6detailFQ34nw4r2ut5ColorUc
+MultipleAlpha__Q34nw4r3lyt6detailFQ34nw4r2ut5ColorUc:
+/* 8038EA3C 0038A69C 89 04 00 00 */ lbz r8, 0(r4)
+/* 8038EA40 0038A6A0 28 05 00 FF */ cmplwi r5, 0xff
+/* 8038EA44 0038A6A4 88 E4 00 01 */ lbz r7, 1(r4)
+/* 8038EA48 0038A6A8 88 C4 00 02 */ lbz r6, 2(r4)
+/* 8038EA4C 0038A6AC 88 04 00 03 */ lbz r0, 3(r4)
+/* 8038EA50 0038A6B0 99 03 00 00 */ stb r8, 0(r3)
+/* 8038EA54 0038A6B4 98 E3 00 01 */ stb r7, 1(r3)
+/* 8038EA58 0038A6B8 98 C3 00 02 */ stb r6, 2(r3)
+/* 8038EA5C 0038A6BC 98 03 00 03 */ stb r0, 3(r3)
+/* 8038EA60 0038A6C0 4D 82 00 20 */ beqlr
+/* 8038EA64 0038A6C4 88 04 00 03 */ lbz r0, 3(r4)
+/* 8038EA68 0038A6C8 3C 80 80 81 */ lis r4, 0x80808081@ha
+/* 8038EA6C 0038A6CC 38 84 80 81 */ addi r4, r4, 0x80808081@l
+/* 8038EA70 0038A6D0 7C 00 29 D6 */ mullw r0, r0, r5
+/* 8038EA74 0038A6D4 7C 84 00 96 */ mulhw r4, r4, r0
+/* 8038EA78 0038A6D8 7C 04 02 14 */ add r0, r4, r0
+/* 8038EA7C 0038A6DC 7C 00 3E 70 */ srawi r0, r0, 7
+/* 8038EA80 0038A6E0 54 04 0F FE */ srwi r4, r0, 0x1f
+/* 8038EA84 0038A6E4 7C 00 22 14 */ add r0, r0, r4
+/* 8038EA88 0038A6E8 98 03 00 03 */ stb r0, 3(r3)
+/* 8038EA8C 0038A6EC 4E 80 00 20 */ blr
+
+.global SetVertexFormat__Q34nw4r3lyt6detailFbUc
+SetVertexFormat__Q34nw4r3lyt6detailFbUc:
+/* 8038EA90 0038A6F0 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038EA94 0038A6F4 7C 08 02 A6 */ mflr r0
+/* 8038EA98 0038A6F8 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8038EA9C 0038A6FC 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8038EAA0 0038A700 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8038EAA4 0038A704 7C 9E 23 78 */ mr r30, r4
+/* 8038EAA8 0038A708 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8038EAAC 0038A70C 7C 7D 1B 78 */ mr r29, r3
+/* 8038EAB0 0038A710 4B EF 11 D5 */ bl func_8027FC84
+/* 8038EAB4 0038A714 38 60 00 09 */ li r3, 9
+/* 8038EAB8 0038A718 38 80 00 01 */ li r4, 1
+/* 8038EABC 0038A71C 4B EF 09 39 */ bl func_8027F3F4
+/* 8038EAC0 0038A720 2C 1D 00 00 */ cmpwi r29, 0
+/* 8038EAC4 0038A724 41 82 00 10 */ beq lbl_8038EAD4
+/* 8038EAC8 0038A728 38 60 00 0B */ li r3, 0xb
+/* 8038EACC 0038A72C 38 80 00 01 */ li r4, 1
+/* 8038EAD0 0038A730 4B EF 09 25 */ bl func_8027F3F4
+lbl_8038EAD4:
+/* 8038EAD4 0038A734 3B E0 00 00 */ li r31, 0
+/* 8038EAD8 0038A738 48 00 00 14 */ b lbl_8038EAEC
+lbl_8038EADC:
+/* 8038EADC 0038A73C 38 7F 00 0D */ addi r3, r31, 0xd
+/* 8038EAE0 0038A740 38 80 00 01 */ li r4, 1
+/* 8038EAE4 0038A744 4B EF 09 11 */ bl func_8027F3F4
+/* 8038EAE8 0038A748 3B FF 00 01 */ addi r31, r31, 1
+lbl_8038EAEC:
+/* 8038EAEC 0038A74C 7C 1F F0 00 */ cmpw r31, r30
+/* 8038EAF0 0038A750 41 80 FF EC */ blt lbl_8038EADC
+/* 8038EAF4 0038A754 38 60 00 00 */ li r3, 0
+/* 8038EAF8 0038A758 38 80 00 09 */ li r4, 9
+/* 8038EAFC 0038A75C 38 A0 00 00 */ li r5, 0
+/* 8038EB00 0038A760 38 C0 00 04 */ li r6, 4
+/* 8038EB04 0038A764 38 E0 00 00 */ li r7, 0
+/* 8038EB08 0038A768 4B EF 11 B1 */ bl func_8027FCB8
+/* 8038EB0C 0038A76C 2C 1D 00 00 */ cmpwi r29, 0
+/* 8038EB10 0038A770 41 82 00 1C */ beq lbl_8038EB2C
+/* 8038EB14 0038A774 38 60 00 00 */ li r3, 0
+/* 8038EB18 0038A778 38 80 00 0B */ li r4, 0xb
+/* 8038EB1C 0038A77C 38 A0 00 01 */ li r5, 1
+/* 8038EB20 0038A780 38 C0 00 05 */ li r6, 5
+/* 8038EB24 0038A784 38 E0 00 00 */ li r7, 0
+/* 8038EB28 0038A788 4B EF 11 91 */ bl func_8027FCB8
+lbl_8038EB2C:
+/* 8038EB2C 0038A78C 3B E0 00 00 */ li r31, 0
+/* 8038EB30 0038A790 48 00 00 20 */ b lbl_8038EB50
+lbl_8038EB34:
+/* 8038EB34 0038A794 38 9F 00 0D */ addi r4, r31, 0xd
+/* 8038EB38 0038A798 38 60 00 00 */ li r3, 0
+/* 8038EB3C 0038A79C 38 A0 00 01 */ li r5, 1
+/* 8038EB40 0038A7A0 38 C0 00 04 */ li r6, 4
+/* 8038EB44 0038A7A4 38 E0 00 00 */ li r7, 0
+/* 8038EB48 0038A7A8 4B EF 11 71 */ bl func_8027FCB8
+/* 8038EB4C 0038A7AC 3B FF 00 01 */ addi r31, r31, 1
+lbl_8038EB50:
+/* 8038EB50 0038A7B0 7C 1F F0 00 */ cmpw r31, r30
+/* 8038EB54 0038A7B4 41 80 FF E0 */ blt lbl_8038EB34
+/* 8038EB58 0038A7B8 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8038EB5C 0038A7BC 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8038EB60 0038A7C0 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8038EB64 0038A7C4 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8038EB68 0038A7C8 7C 08 03 A6 */ mtlr r0
+/* 8038EB6C 0038A7CC 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038EB70 0038A7D0 4E 80 00 20 */ blr
+
+.global DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5Color
+DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5Color:
+/* 8038EB74 0038A7D4 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038EB78 0038A7D8 7C 08 02 A6 */ mflr r0
+/* 8038EB7C 0038A7DC 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8038EB80 0038A7E0 39 61 00 20 */ addi r11, r1, 0x20
+/* 8038EB84 0038A7E4 4B E3 85 A5 */ bl _savegpr_27
+/* 8038EB88 0038A7E8 7C 7B 1B 78 */ mr r27, r3
+/* 8038EB8C 0038A7EC 7C 9C 23 78 */ mr r28, r4
+/* 8038EB90 0038A7F0 7C BD 2B 78 */ mr r29, r5
+/* 8038EB94 0038A7F4 7C DE 33 78 */ mr r30, r6
+/* 8038EB98 0038A7F8 7C FF 3B 78 */ mr r31, r7
+/* 8038EB9C 0038A7FC 38 60 00 80 */ li r3, 0x80
+/* 8038EBA0 0038A800 38 80 00 00 */ li r4, 0
+/* 8038EBA4 0038A804 38 A0 00 04 */ li r5, 4
+/* 8038EBA8 0038A808 4B EF 25 A1 */ bl func_80281148
+/* 8038EBAC 0038A80C C0 1B 00 00 */ lfs f0, 0(r27)
+/* 8038EBB0 0038A810 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 8038EBB4 0038A814 C0 3B 00 04 */ lfs f1, 4(r27)
+/* 8038EBB8 0038A818 2C 1F 00 00 */ cmpwi r31, 0
+/* 8038EBBC 0038A81C D0 03 80 00 */ stfs f0, 0xCC008000@l(r3)
+/* 8038EBC0 0038A820 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EBC4 0038A824 41 82 00 0C */ beq lbl_8038EBD0
+/* 8038EBC8 0038A828 80 1F 00 00 */ lwz r0, 0(r31)
+/* 8038EBCC 0038A82C 90 03 80 00 */ stw r0, -0x8000(r3)
+lbl_8038EBD0:
+/* 8038EBD0 0038A830 2C 9D 00 00 */ cmpwi cr1, r29, 0
+/* 8038EBD4 0038A834 38 C0 00 00 */ li r6, 0
+/* 8038EBD8 0038A838 40 85 01 10 */ ble cr1, lbl_8038ECE8
+/* 8038EBDC 0038A83C 2C 1D 00 08 */ cmpwi r29, 8
+/* 8038EBE0 0038A840 38 9D FF F8 */ addi r4, r29, -8
+/* 8038EBE4 0038A844 40 81 00 D0 */ ble lbl_8038ECB4
+/* 8038EBE8 0038A848 38 A0 00 00 */ li r5, 0
+/* 8038EBEC 0038A84C 41 84 00 18 */ blt cr1, lbl_8038EC04
+/* 8038EBF0 0038A850 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
+/* 8038EBF4 0038A854 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
+/* 8038EBF8 0038A858 7C 1D 00 00 */ cmpw r29, r0
+/* 8038EBFC 0038A85C 41 81 00 08 */ bgt lbl_8038EC04
+/* 8038EC00 0038A860 38 A0 00 01 */ li r5, 1
+lbl_8038EC04:
+/* 8038EC04 0038A864 2C 05 00 00 */ cmpwi r5, 0
+/* 8038EC08 0038A868 41 82 00 AC */ beq lbl_8038ECB4
+/* 8038EC0C 0038A86C 38 04 00 07 */ addi r0, r4, 7
+/* 8038EC10 0038A870 7F C5 F3 78 */ mr r5, r30
+/* 8038EC14 0038A874 54 00 E8 FE */ srwi r0, r0, 3
+/* 8038EC18 0038A878 3C 60 CC 01 */ lis r3, 0xcc01
+/* 8038EC1C 0038A87C 7C 09 03 A6 */ mtctr r0
+/* 8038EC20 0038A880 2C 04 00 00 */ cmpwi r4, 0
+/* 8038EC24 0038A884 40 81 00 90 */ ble lbl_8038ECB4
+lbl_8038EC28:
+/* 8038EC28 0038A888 C0 05 00 00 */ lfs f0, 0(r5)
+/* 8038EC2C 0038A88C 38 C6 00 08 */ addi r6, r6, 8
+/* 8038EC30 0038A890 C0 25 00 04 */ lfs f1, 4(r5)
+/* 8038EC34 0038A894 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EC38 0038A898 C0 45 00 20 */ lfs f2, 0x20(r5)
+/* 8038EC3C 0038A89C D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EC40 0038A8A0 C0 05 00 24 */ lfs f0, 0x24(r5)
+/* 8038EC44 0038A8A4 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 8038EC48 0038A8A8 C0 25 00 40 */ lfs f1, 0x40(r5)
+/* 8038EC4C 0038A8AC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EC50 0038A8B0 C0 05 00 44 */ lfs f0, 0x44(r5)
+/* 8038EC54 0038A8B4 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EC58 0038A8B8 C0 25 00 60 */ lfs f1, 0x60(r5)
+/* 8038EC5C 0038A8BC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EC60 0038A8C0 C0 05 00 64 */ lfs f0, 0x64(r5)
+/* 8038EC64 0038A8C4 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EC68 0038A8C8 C0 25 00 80 */ lfs f1, 0x80(r5)
+/* 8038EC6C 0038A8CC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EC70 0038A8D0 C0 05 00 84 */ lfs f0, 0x84(r5)
+/* 8038EC74 0038A8D4 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EC78 0038A8D8 C0 25 00 A0 */ lfs f1, 0xa0(r5)
+/* 8038EC7C 0038A8DC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EC80 0038A8E0 C0 05 00 A4 */ lfs f0, 0xa4(r5)
+/* 8038EC84 0038A8E4 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EC88 0038A8E8 C0 25 00 C0 */ lfs f1, 0xc0(r5)
+/* 8038EC8C 0038A8EC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EC90 0038A8F0 C0 05 00 C4 */ lfs f0, 0xc4(r5)
+/* 8038EC94 0038A8F4 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EC98 0038A8F8 C0 25 00 E0 */ lfs f1, 0xe0(r5)
+/* 8038EC9C 0038A8FC D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038ECA0 0038A900 C0 05 00 E4 */ lfs f0, 0xe4(r5)
+/* 8038ECA4 0038A904 38 A5 01 00 */ addi r5, r5, 0x100
+/* 8038ECA8 0038A908 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038ECAC 0038A90C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038ECB0 0038A910 42 00 FF 78 */ bdnz lbl_8038EC28
+lbl_8038ECB4:
+/* 8038ECB4 0038A914 54 C3 28 34 */ slwi r3, r6, 5
+/* 8038ECB8 0038A918 7C 06 E8 50 */ subf r0, r6, r29
+/* 8038ECBC 0038A91C 7C 9E 1A 14 */ add r4, r30, r3
+/* 8038ECC0 0038A920 3C 60 CC 01 */ lis r3, 0xcc01
+/* 8038ECC4 0038A924 7C 09 03 A6 */ mtctr r0
+/* 8038ECC8 0038A928 7C 06 E8 00 */ cmpw r6, r29
+/* 8038ECCC 0038A92C 40 80 00 1C */ bge lbl_8038ECE8
+lbl_8038ECD0:
+/* 8038ECD0 0038A930 C0 24 00 00 */ lfs f1, 0(r4)
+/* 8038ECD4 0038A934 C0 04 00 04 */ lfs f0, 4(r4)
+/* 8038ECD8 0038A938 38 84 00 20 */ addi r4, r4, 0x20
+/* 8038ECDC 0038A93C D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038ECE0 0038A940 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038ECE4 0038A944 42 00 FF EC */ bdnz lbl_8038ECD0
+lbl_8038ECE8:
+/* 8038ECE8 0038A948 C0 3B 00 00 */ lfs f1, 0(r27)
+/* 8038ECEC 0038A94C 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 8038ECF0 0038A950 C0 1C 00 00 */ lfs f0, 0(r28)
+/* 8038ECF4 0038A954 2C 1F 00 00 */ cmpwi r31, 0
+/* 8038ECF8 0038A958 C0 5B 00 04 */ lfs f2, 4(r27)
+/* 8038ECFC 0038A95C EC 01 00 2A */ fadds f0, f1, f0
+/* 8038ED00 0038A960 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3)
+/* 8038ED04 0038A964 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 8038ED08 0038A968 41 82 00 0C */ beq lbl_8038ED14
+/* 8038ED0C 0038A96C 80 1F 00 04 */ lwz r0, 4(r31)
+/* 8038ED10 0038A970 90 03 80 00 */ stw r0, -0x8000(r3)
+lbl_8038ED14:
+/* 8038ED14 0038A974 2C 9D 00 00 */ cmpwi cr1, r29, 0
+/* 8038ED18 0038A978 38 C0 00 00 */ li r6, 0
+/* 8038ED1C 0038A97C 40 85 01 10 */ ble cr1, lbl_8038EE2C
+/* 8038ED20 0038A980 2C 1D 00 08 */ cmpwi r29, 8
+/* 8038ED24 0038A984 38 9D FF F8 */ addi r4, r29, -8
+/* 8038ED28 0038A988 40 81 00 D0 */ ble lbl_8038EDF8
+/* 8038ED2C 0038A98C 38 A0 00 00 */ li r5, 0
+/* 8038ED30 0038A990 41 84 00 18 */ blt cr1, lbl_8038ED48
+/* 8038ED34 0038A994 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
+/* 8038ED38 0038A998 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
+/* 8038ED3C 0038A99C 7C 1D 00 00 */ cmpw r29, r0
+/* 8038ED40 0038A9A0 41 81 00 08 */ bgt lbl_8038ED48
+/* 8038ED44 0038A9A4 38 A0 00 01 */ li r5, 1
+lbl_8038ED48:
+/* 8038ED48 0038A9A8 2C 05 00 00 */ cmpwi r5, 0
+/* 8038ED4C 0038A9AC 41 82 00 AC */ beq lbl_8038EDF8
+/* 8038ED50 0038A9B0 38 04 00 07 */ addi r0, r4, 7
+/* 8038ED54 0038A9B4 7F C5 F3 78 */ mr r5, r30
+/* 8038ED58 0038A9B8 54 00 E8 FE */ srwi r0, r0, 3
+/* 8038ED5C 0038A9BC 3C 60 CC 01 */ lis r3, 0xcc01
+/* 8038ED60 0038A9C0 7C 09 03 A6 */ mtctr r0
+/* 8038ED64 0038A9C4 2C 04 00 00 */ cmpwi r4, 0
+/* 8038ED68 0038A9C8 40 81 00 90 */ ble lbl_8038EDF8
+lbl_8038ED6C:
+/* 8038ED6C 0038A9CC C0 05 00 08 */ lfs f0, 8(r5)
+/* 8038ED70 0038A9D0 38 C6 00 08 */ addi r6, r6, 8
+/* 8038ED74 0038A9D4 C0 25 00 0C */ lfs f1, 0xc(r5)
+/* 8038ED78 0038A9D8 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038ED7C 0038A9DC C0 45 00 28 */ lfs f2, 0x28(r5)
+/* 8038ED80 0038A9E0 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038ED84 0038A9E4 C0 05 00 2C */ lfs f0, 0x2c(r5)
+/* 8038ED88 0038A9E8 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 8038ED8C 0038A9EC C0 25 00 48 */ lfs f1, 0x48(r5)
+/* 8038ED90 0038A9F0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038ED94 0038A9F4 C0 05 00 4C */ lfs f0, 0x4c(r5)
+/* 8038ED98 0038A9F8 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038ED9C 0038A9FC C0 25 00 68 */ lfs f1, 0x68(r5)
+/* 8038EDA0 0038AA00 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EDA4 0038AA04 C0 05 00 6C */ lfs f0, 0x6c(r5)
+/* 8038EDA8 0038AA08 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EDAC 0038AA0C C0 25 00 88 */ lfs f1, 0x88(r5)
+/* 8038EDB0 0038AA10 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EDB4 0038AA14 C0 05 00 8C */ lfs f0, 0x8c(r5)
+/* 8038EDB8 0038AA18 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EDBC 0038AA1C C0 25 00 A8 */ lfs f1, 0xa8(r5)
+/* 8038EDC0 0038AA20 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EDC4 0038AA24 C0 05 00 AC */ lfs f0, 0xac(r5)
+/* 8038EDC8 0038AA28 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EDCC 0038AA2C C0 25 00 C8 */ lfs f1, 0xc8(r5)
+/* 8038EDD0 0038AA30 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EDD4 0038AA34 C0 05 00 CC */ lfs f0, 0xcc(r5)
+/* 8038EDD8 0038AA38 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EDDC 0038AA3C C0 25 00 E8 */ lfs f1, 0xe8(r5)
+/* 8038EDE0 0038AA40 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EDE4 0038AA44 C0 05 00 EC */ lfs f0, 0xec(r5)
+/* 8038EDE8 0038AA48 38 A5 01 00 */ addi r5, r5, 0x100
+/* 8038EDEC 0038AA4C D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EDF0 0038AA50 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EDF4 0038AA54 42 00 FF 78 */ bdnz lbl_8038ED6C
+lbl_8038EDF8:
+/* 8038EDF8 0038AA58 54 C3 28 34 */ slwi r3, r6, 5
+/* 8038EDFC 0038AA5C 7C 06 E8 50 */ subf r0, r6, r29
+/* 8038EE00 0038AA60 7C 9E 1A 14 */ add r4, r30, r3
+/* 8038EE04 0038AA64 3C 60 CC 01 */ lis r3, 0xcc01
+/* 8038EE08 0038AA68 7C 09 03 A6 */ mtctr r0
+/* 8038EE0C 0038AA6C 7C 06 E8 00 */ cmpw r6, r29
+/* 8038EE10 0038AA70 40 80 00 1C */ bge lbl_8038EE2C
+lbl_8038EE14:
+/* 8038EE14 0038AA74 C0 24 00 08 */ lfs f1, 8(r4)
+/* 8038EE18 0038AA78 C0 04 00 0C */ lfs f0, 0xc(r4)
+/* 8038EE1C 0038AA7C 38 84 00 20 */ addi r4, r4, 0x20
+/* 8038EE20 0038AA80 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EE24 0038AA84 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EE28 0038AA88 42 00 FF EC */ bdnz lbl_8038EE14
+lbl_8038EE2C:
+/* 8038EE2C 0038AA8C C0 3B 00 00 */ lfs f1, 0(r27)
+/* 8038EE30 0038AA90 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 8038EE34 0038AA94 C0 1C 00 00 */ lfs f0, 0(r28)
+/* 8038EE38 0038AA98 2C 1F 00 00 */ cmpwi r31, 0
+/* 8038EE3C 0038AA9C C0 5B 00 04 */ lfs f2, 4(r27)
+/* 8038EE40 0038AAA0 EC 21 00 2A */ fadds f1, f1, f0
+/* 8038EE44 0038AAA4 C0 1C 00 04 */ lfs f0, 4(r28)
+/* 8038EE48 0038AAA8 EC 02 00 2A */ fadds f0, f2, f0
+/* 8038EE4C 0038AAAC D0 23 80 00 */ stfs f1, 0xCC008000@l(r3)
+/* 8038EE50 0038AAB0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EE54 0038AAB4 41 82 00 0C */ beq lbl_8038EE60
+/* 8038EE58 0038AAB8 80 1F 00 0C */ lwz r0, 0xc(r31)
+/* 8038EE5C 0038AABC 90 03 80 00 */ stw r0, -0x8000(r3)
+lbl_8038EE60:
+/* 8038EE60 0038AAC0 2C 9D 00 00 */ cmpwi cr1, r29, 0
+/* 8038EE64 0038AAC4 38 C0 00 00 */ li r6, 0
+/* 8038EE68 0038AAC8 40 85 01 10 */ ble cr1, lbl_8038EF78
+/* 8038EE6C 0038AACC 2C 1D 00 08 */ cmpwi r29, 8
+/* 8038EE70 0038AAD0 38 9D FF F8 */ addi r4, r29, -8
+/* 8038EE74 0038AAD4 40 81 00 D0 */ ble lbl_8038EF44
+/* 8038EE78 0038AAD8 38 A0 00 00 */ li r5, 0
+/* 8038EE7C 0038AADC 41 84 00 18 */ blt cr1, lbl_8038EE94
+/* 8038EE80 0038AAE0 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
+/* 8038EE84 0038AAE4 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
+/* 8038EE88 0038AAE8 7C 1D 00 00 */ cmpw r29, r0
+/* 8038EE8C 0038AAEC 41 81 00 08 */ bgt lbl_8038EE94
+/* 8038EE90 0038AAF0 38 A0 00 01 */ li r5, 1
+lbl_8038EE94:
+/* 8038EE94 0038AAF4 2C 05 00 00 */ cmpwi r5, 0
+/* 8038EE98 0038AAF8 41 82 00 AC */ beq lbl_8038EF44
+/* 8038EE9C 0038AAFC 38 04 00 07 */ addi r0, r4, 7
+/* 8038EEA0 0038AB00 7F C5 F3 78 */ mr r5, r30
+/* 8038EEA4 0038AB04 54 00 E8 FE */ srwi r0, r0, 3
+/* 8038EEA8 0038AB08 3C 60 CC 01 */ lis r3, 0xcc01
+/* 8038EEAC 0038AB0C 7C 09 03 A6 */ mtctr r0
+/* 8038EEB0 0038AB10 2C 04 00 00 */ cmpwi r4, 0
+/* 8038EEB4 0038AB14 40 81 00 90 */ ble lbl_8038EF44
+lbl_8038EEB8:
+/* 8038EEB8 0038AB18 C0 05 00 18 */ lfs f0, 0x18(r5)
+/* 8038EEBC 0038AB1C 38 C6 00 08 */ addi r6, r6, 8
+/* 8038EEC0 0038AB20 C0 25 00 1C */ lfs f1, 0x1c(r5)
+/* 8038EEC4 0038AB24 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EEC8 0038AB28 C0 45 00 38 */ lfs f2, 0x38(r5)
+/* 8038EECC 0038AB2C D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EED0 0038AB30 C0 05 00 3C */ lfs f0, 0x3c(r5)
+/* 8038EED4 0038AB34 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 8038EED8 0038AB38 C0 25 00 58 */ lfs f1, 0x58(r5)
+/* 8038EEDC 0038AB3C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EEE0 0038AB40 C0 05 00 5C */ lfs f0, 0x5c(r5)
+/* 8038EEE4 0038AB44 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EEE8 0038AB48 C0 25 00 78 */ lfs f1, 0x78(r5)
+/* 8038EEEC 0038AB4C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EEF0 0038AB50 C0 05 00 7C */ lfs f0, 0x7c(r5)
+/* 8038EEF4 0038AB54 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EEF8 0038AB58 C0 25 00 98 */ lfs f1, 0x98(r5)
+/* 8038EEFC 0038AB5C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EF00 0038AB60 C0 05 00 9C */ lfs f0, 0x9c(r5)
+/* 8038EF04 0038AB64 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EF08 0038AB68 C0 25 00 B8 */ lfs f1, 0xb8(r5)
+/* 8038EF0C 0038AB6C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EF10 0038AB70 C0 05 00 BC */ lfs f0, 0xbc(r5)
+/* 8038EF14 0038AB74 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EF18 0038AB78 C0 25 00 D8 */ lfs f1, 0xd8(r5)
+/* 8038EF1C 0038AB7C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EF20 0038AB80 C0 05 00 DC */ lfs f0, 0xdc(r5)
+/* 8038EF24 0038AB84 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EF28 0038AB88 C0 25 00 F8 */ lfs f1, 0xf8(r5)
+/* 8038EF2C 0038AB8C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EF30 0038AB90 C0 05 00 FC */ lfs f0, 0xfc(r5)
+/* 8038EF34 0038AB94 38 A5 01 00 */ addi r5, r5, 0x100
+/* 8038EF38 0038AB98 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EF3C 0038AB9C D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EF40 0038ABA0 42 00 FF 78 */ bdnz lbl_8038EEB8
+lbl_8038EF44:
+/* 8038EF44 0038ABA4 54 C3 28 34 */ slwi r3, r6, 5
+/* 8038EF48 0038ABA8 7C 06 E8 50 */ subf r0, r6, r29
+/* 8038EF4C 0038ABAC 7C 9E 1A 14 */ add r4, r30, r3
+/* 8038EF50 0038ABB0 3C 60 CC 01 */ lis r3, 0xcc01
+/* 8038EF54 0038ABB4 7C 09 03 A6 */ mtctr r0
+/* 8038EF58 0038ABB8 7C 06 E8 00 */ cmpw r6, r29
+/* 8038EF5C 0038ABBC 40 80 00 1C */ bge lbl_8038EF78
+lbl_8038EF60:
+/* 8038EF60 0038ABC0 C0 24 00 18 */ lfs f1, 0x18(r4)
+/* 8038EF64 0038ABC4 C0 04 00 1C */ lfs f0, 0x1c(r4)
+/* 8038EF68 0038ABC8 38 84 00 20 */ addi r4, r4, 0x20
+/* 8038EF6C 0038ABCC D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038EF70 0038ABD0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EF74 0038ABD4 42 00 FF EC */ bdnz lbl_8038EF60
+lbl_8038EF78:
+/* 8038EF78 0038ABD8 C0 3B 00 04 */ lfs f1, 4(r27)
+/* 8038EF7C 0038ABDC 3C 60 CC 01 */ lis r3, 0xCC008000@ha
+/* 8038EF80 0038ABE0 C0 1C 00 04 */ lfs f0, 4(r28)
+/* 8038EF84 0038ABE4 2C 1F 00 00 */ cmpwi r31, 0
+/* 8038EF88 0038ABE8 C0 5B 00 00 */ lfs f2, 0(r27)
+/* 8038EF8C 0038ABEC EC 01 00 2A */ fadds f0, f1, f0
+/* 8038EF90 0038ABF0 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3)
+/* 8038EF94 0038ABF4 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038EF98 0038ABF8 41 82 00 0C */ beq lbl_8038EFA4
+/* 8038EF9C 0038ABFC 80 1F 00 08 */ lwz r0, 8(r31)
+/* 8038EFA0 0038AC00 90 03 80 00 */ stw r0, -0x8000(r3)
+lbl_8038EFA4:
+/* 8038EFA4 0038AC04 2C 9D 00 00 */ cmpwi cr1, r29, 0
+/* 8038EFA8 0038AC08 38 C0 00 00 */ li r6, 0
+/* 8038EFAC 0038AC0C 40 85 01 10 */ ble cr1, lbl_8038F0BC
+/* 8038EFB0 0038AC10 2C 1D 00 08 */ cmpwi r29, 8
+/* 8038EFB4 0038AC14 38 9D FF F8 */ addi r4, r29, -8
+/* 8038EFB8 0038AC18 40 81 00 D0 */ ble lbl_8038F088
+/* 8038EFBC 0038AC1C 38 A0 00 00 */ li r5, 0
+/* 8038EFC0 0038AC20 41 84 00 18 */ blt cr1, lbl_8038EFD8
+/* 8038EFC4 0038AC24 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
+/* 8038EFC8 0038AC28 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
+/* 8038EFCC 0038AC2C 7C 1D 00 00 */ cmpw r29, r0
+/* 8038EFD0 0038AC30 41 81 00 08 */ bgt lbl_8038EFD8
+/* 8038EFD4 0038AC34 38 A0 00 01 */ li r5, 1
+lbl_8038EFD8:
+/* 8038EFD8 0038AC38 2C 05 00 00 */ cmpwi r5, 0
+/* 8038EFDC 0038AC3C 41 82 00 AC */ beq lbl_8038F088
+/* 8038EFE0 0038AC40 38 04 00 07 */ addi r0, r4, 7
+/* 8038EFE4 0038AC44 7F C5 F3 78 */ mr r5, r30
+/* 8038EFE8 0038AC48 54 00 E8 FE */ srwi r0, r0, 3
+/* 8038EFEC 0038AC4C 3C 60 CC 01 */ lis r3, 0xcc01
+/* 8038EFF0 0038AC50 7C 09 03 A6 */ mtctr r0
+/* 8038EFF4 0038AC54 2C 04 00 00 */ cmpwi r4, 0
+/* 8038EFF8 0038AC58 40 81 00 90 */ ble lbl_8038F088
+lbl_8038EFFC:
+/* 8038EFFC 0038AC5C C0 05 00 10 */ lfs f0, 0x10(r5)
+/* 8038F000 0038AC60 38 C6 00 08 */ addi r6, r6, 8
+/* 8038F004 0038AC64 C0 25 00 14 */ lfs f1, 0x14(r5)
+/* 8038F008 0038AC68 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038F00C 0038AC6C C0 45 00 30 */ lfs f2, 0x30(r5)
+/* 8038F010 0038AC70 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038F014 0038AC74 C0 05 00 34 */ lfs f0, 0x34(r5)
+/* 8038F018 0038AC78 D0 43 80 00 */ stfs f2, -0x8000(r3)
+/* 8038F01C 0038AC7C C0 25 00 50 */ lfs f1, 0x50(r5)
+/* 8038F020 0038AC80 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038F024 0038AC84 C0 05 00 54 */ lfs f0, 0x54(r5)
+/* 8038F028 0038AC88 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038F02C 0038AC8C C0 25 00 70 */ lfs f1, 0x70(r5)
+/* 8038F030 0038AC90 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038F034 0038AC94 C0 05 00 74 */ lfs f0, 0x74(r5)
+/* 8038F038 0038AC98 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038F03C 0038AC9C C0 25 00 90 */ lfs f1, 0x90(r5)
+/* 8038F040 0038ACA0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038F044 0038ACA4 C0 05 00 94 */ lfs f0, 0x94(r5)
+/* 8038F048 0038ACA8 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038F04C 0038ACAC C0 25 00 B0 */ lfs f1, 0xb0(r5)
+/* 8038F050 0038ACB0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038F054 0038ACB4 C0 05 00 B4 */ lfs f0, 0xb4(r5)
+/* 8038F058 0038ACB8 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038F05C 0038ACBC C0 25 00 D0 */ lfs f1, 0xd0(r5)
+/* 8038F060 0038ACC0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038F064 0038ACC4 C0 05 00 D4 */ lfs f0, 0xd4(r5)
+/* 8038F068 0038ACC8 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038F06C 0038ACCC C0 25 00 F0 */ lfs f1, 0xf0(r5)
+/* 8038F070 0038ACD0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038F074 0038ACD4 C0 05 00 F4 */ lfs f0, 0xf4(r5)
+/* 8038F078 0038ACD8 38 A5 01 00 */ addi r5, r5, 0x100
+/* 8038F07C 0038ACDC D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038F080 0038ACE0 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038F084 0038ACE4 42 00 FF 78 */ bdnz lbl_8038EFFC
+lbl_8038F088:
+/* 8038F088 0038ACE8 54 C3 28 34 */ slwi r3, r6, 5
+/* 8038F08C 0038ACEC 7C 06 E8 50 */ subf r0, r6, r29
+/* 8038F090 0038ACF0 7C 9E 1A 14 */ add r4, r30, r3
+/* 8038F094 0038ACF4 3C 60 CC 01 */ lis r3, 0xcc01
+/* 8038F098 0038ACF8 7C 09 03 A6 */ mtctr r0
+/* 8038F09C 0038ACFC 7C 06 E8 00 */ cmpw r6, r29
+/* 8038F0A0 0038AD00 40 80 00 1C */ bge lbl_8038F0BC
+lbl_8038F0A4:
+/* 8038F0A4 0038AD04 C0 24 00 10 */ lfs f1, 0x10(r4)
+/* 8038F0A8 0038AD08 C0 04 00 14 */ lfs f0, 0x14(r4)
+/* 8038F0AC 0038AD0C 38 84 00 20 */ addi r4, r4, 0x20
+/* 8038F0B0 0038AD10 D0 23 80 00 */ stfs f1, -0x8000(r3)
+/* 8038F0B4 0038AD14 D0 03 80 00 */ stfs f0, -0x8000(r3)
+/* 8038F0B8 0038AD18 42 00 FF EC */ bdnz lbl_8038F0A4
+lbl_8038F0BC:
+/* 8038F0BC 0038AD1C 39 61 00 20 */ addi r11, r1, 0x20
+/* 8038F0C0 0038AD20 4B E3 80 B5 */ bl _restgpr_27
+/* 8038F0C4 0038AD24 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8038F0C8 0038AD28 7C 08 03 A6 */ mtlr r0
+/* 8038F0CC 0038AD2C 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038F0D0 0038AD30 4E 80 00 20 */ blr
+
+.global DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
+DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc:
+/* 8038F0D4 0038AD34 94 21 FF B0 */ stwu r1, -0x50(r1)
+/* 8038F0D8 0038AD38 7C 08 02 A6 */ mflr r0
+/* 8038F0DC 0038AD3C 90 01 00 54 */ stw r0, 0x54(r1)
+/* 8038F0E0 0038AD40 39 61 00 50 */ addi r11, r1, 0x50
+/* 8038F0E4 0038AD44 4B E3 80 35 */ bl _savegpr_23
+/* 8038F0E8 0038AD48 38 00 FF FF */ li r0, -1
+/* 8038F0EC 0038AD4C 2C 07 00 00 */ cmpwi r7, 0
+/* 8038F0F0 0038AD50 90 01 00 10 */ stw r0, 0x10(r1)
+/* 8038F0F4 0038AD54 7C 7A 1B 78 */ mr r26, r3
+/* 8038F0F8 0038AD58 7C 9B 23 78 */ mr r27, r4
+/* 8038F0FC 0038AD5C 7C BC 2B 78 */ mr r28, r5
+/* 8038F100 0038AD60 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038F104 0038AD64 7C DD 33 78 */ mr r29, r6
+/* 8038F108 0038AD68 7C FE 3B 78 */ mr r30, r7
+/* 8038F10C 0038AD6C 7D 1F 43 78 */ mr r31, r8
+/* 8038F110 0038AD70 90 01 00 18 */ stw r0, 0x18(r1)
+/* 8038F114 0038AD74 90 01 00 1C */ stw r0, 0x1c(r1)
+/* 8038F118 0038AD78 41 82 00 74 */ beq lbl_8038F18C
+/* 8038F11C 0038AD7C 7F D8 F3 78 */ mr r24, r30
+/* 8038F120 0038AD80 3A E1 00 10 */ addi r23, r1, 0x10
+/* 8038F124 0038AD84 3B 20 00 00 */ li r25, 0
+lbl_8038F128:
+/* 8038F128 0038AD88 88 18 00 00 */ lbz r0, 0(r24)
+/* 8038F12C 0038AD8C 7F E5 FB 78 */ mr r5, r31
+/* 8038F130 0038AD90 38 61 00 0C */ addi r3, r1, 0xc
+/* 8038F134 0038AD94 38 81 00 08 */ addi r4, r1, 8
+/* 8038F138 0038AD98 98 01 00 08 */ stb r0, 8(r1)
+/* 8038F13C 0038AD9C 88 18 00 01 */ lbz r0, 1(r24)
+/* 8038F140 0038ADA0 98 01 00 09 */ stb r0, 9(r1)
+/* 8038F144 0038ADA4 88 18 00 02 */ lbz r0, 2(r24)
+/* 8038F148 0038ADA8 98 01 00 0A */ stb r0, 0xa(r1)
+/* 8038F14C 0038ADAC 88 18 00 03 */ lbz r0, 3(r24)
+/* 8038F150 0038ADB0 98 01 00 0B */ stb r0, 0xb(r1)
+/* 8038F154 0038ADB4 4B FF F8 E9 */ bl MultipleAlpha__Q34nw4r3lyt6detailFQ34nw4r2ut5ColorUc
+/* 8038F158 0038ADB8 88 61 00 0C */ lbz r3, 0xc(r1)
+/* 8038F15C 0038ADBC 3B 39 00 01 */ addi r25, r25, 1
+/* 8038F160 0038ADC0 88 01 00 0D */ lbz r0, 0xd(r1)
+/* 8038F164 0038ADC4 2C 19 00 04 */ cmpwi r25, 4
+/* 8038F168 0038ADC8 98 77 00 00 */ stb r3, 0(r23)
+/* 8038F16C 0038ADCC 3B 18 00 04 */ addi r24, r24, 4
+/* 8038F170 0038ADD0 88 61 00 0E */ lbz r3, 0xe(r1)
+/* 8038F174 0038ADD4 98 17 00 01 */ stb r0, 1(r23)
+/* 8038F178 0038ADD8 88 01 00 0F */ lbz r0, 0xf(r1)
+/* 8038F17C 0038ADDC 98 77 00 02 */ stb r3, 2(r23)
+/* 8038F180 0038ADE0 98 17 00 03 */ stb r0, 3(r23)
+/* 8038F184 0038ADE4 3A F7 00 04 */ addi r23, r23, 4
+/* 8038F188 0038ADE8 41 80 FF A0 */ blt lbl_8038F128
+lbl_8038F18C:
+/* 8038F18C 0038ADEC 7C 7E 00 D0 */ neg r3, r30
+/* 8038F190 0038ADF0 38 01 00 10 */ addi r0, r1, 0x10
+/* 8038F194 0038ADF4 7C 64 F3 78 */ or r4, r3, r30
+/* 8038F198 0038ADF8 7F 85 E3 78 */ mr r5, r28
+/* 8038F19C 0038ADFC 7C 87 FE 70 */ srawi r7, r4, 0x1f
+/* 8038F1A0 0038AE00 7F 43 D3 78 */ mr r3, r26
+/* 8038F1A4 0038AE04 7F 64 DB 78 */ mr r4, r27
+/* 8038F1A8 0038AE08 7F A6 EB 78 */ mr r6, r29
+/* 8038F1AC 0038AE0C 7C 07 38 38 */ and r7, r0, r7
+/* 8038F1B0 0038AE10 4B FF F9 C5 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5Color
+/* 8038F1B4 0038AE14 39 61 00 50 */ addi r11, r1, 0x50
+/* 8038F1B8 0038AE18 4B E3 7F AD */ bl _restgpr_23
+/* 8038F1BC 0038AE1C 80 01 00 54 */ lwz r0, 0x54(r1)
+/* 8038F1C0 0038AE20 7C 08 03 A6 */ mtlr r0
+/* 8038F1C4 0038AE24 38 21 00 50 */ addi r1, r1, 0x50
+/* 8038F1C8 0038AE28 4E 80 00 20 */ blr
diff --git a/asm/nw4r/lyt/lyt_animation.s b/asm/nw4r/lyt/lyt_animation.s new file mode 100644 index 0000000..889e6af --- /dev/null +++ b/asm/nw4r/lyt/lyt_animation.s @@ -0,0 +1,855 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global GetStepCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res7StepKeyUl
+GetStepCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res7StepKeyUl:
+/* 8038D73C 0038939C 28 04 00 01 */ cmplwi r4, 1
+/* 8038D740 003893A0 41 82 00 14 */ beq lbl_8038D754
+/* 8038D744 003893A4 C0 03 00 00 */ lfs f0, 0(r3)
+/* 8038D748 003893A8 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8038D74C 003893AC 4C 40 13 82 */ cror 2, 0, 2
+/* 8038D750 003893B0 40 82 00 0C */ bne lbl_8038D75C
+lbl_8038D754:
+/* 8038D754 003893B4 A0 63 00 04 */ lhz r3, 4(r3)
+/* 8038D758 003893B8 4E 80 00 20 */ blr
+lbl_8038D75C:
+/* 8038D75C 003893BC 54 80 18 38 */ slwi r0, r4, 3
+/* 8038D760 003893C0 7C A3 02 14 */ add r5, r3, r0
+/* 8038D764 003893C4 C0 05 FF F8 */ lfs f0, -8(r5)
+/* 8038D768 003893C8 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8038D76C 003893CC 4C 41 13 82 */ cror 2, 1, 2
+/* 8038D770 003893D0 40 82 00 0C */ bne lbl_8038D77C
+/* 8038D774 003893D4 A0 65 FF FC */ lhz r3, -4(r5)
+/* 8038D778 003893D8 4E 80 00 20 */ blr
+lbl_8038D77C:
+/* 8038D77C 003893DC 38 C4 FF FF */ addi r6, r4, -1
+/* 8038D780 003893E0 38 A0 00 00 */ li r5, 0
+/* 8038D784 003893E4 48 00 00 3C */ b lbl_8038D7C0
+lbl_8038D788:
+/* 8038D788 003893E8 7C 85 32 14 */ add r4, r5, r6
+/* 8038D78C 003893EC 54 80 0F FE */ srwi r0, r4, 0x1f
+/* 8038D790 003893F0 7C 80 22 14 */ add r4, r0, r4
+/* 8038D794 003893F4 54 80 10 38 */ rlwinm r0, r4, 2, 0, 0x1c
+/* 8038D798 003893F8 7C 03 04 2E */ lfsx f0, r3, r0
+/* 8038D79C 003893FC 7C 84 0E 70 */ srawi r4, r4, 1
+/* 8038D7A0 00389400 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8038D7A4 00389404 7C 00 00 26 */ mfcr r0
+/* 8038D7A8 00389408 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f
+/* 8038D7AC 0038940C 41 82 00 08 */ beq lbl_8038D7B4
+/* 8038D7B0 00389410 7C 86 23 78 */ mr r6, r4
+lbl_8038D7B4:
+/* 8038D7B4 00389414 2C 00 00 00 */ cmpwi r0, 0
+/* 8038D7B8 00389418 40 82 00 08 */ bne lbl_8038D7C0
+/* 8038D7BC 0038941C 7C 85 23 78 */ mr r5, r4
+lbl_8038D7C0:
+/* 8038D7C0 00389420 38 06 FF FF */ addi r0, r6, -1
+/* 8038D7C4 00389424 7C 05 00 00 */ cmpw r5, r0
+/* 8038D7C8 00389428 41 82 00 0C */ beq lbl_8038D7D4
+/* 8038D7CC 0038942C 7C 05 30 00 */ cmpw r5, r6
+/* 8038D7D0 00389430 40 82 FF B8 */ bne lbl_8038D788
+lbl_8038D7D4:
+/* 8038D7D4 00389434 54 C4 18 38 */ slwi r4, r6, 3
+/* 8038D7D8 00389438 C0 02 A8 E0 */ lfs f0, lbl_80642EE0-_SDA2_BASE_(r2)
+/* 8038D7DC 0038943C 7C 43 24 2E */ lfsx f2, r3, r4
+/* 8038D7E0 00389440 38 00 00 00 */ li r0, 0
+/* 8038D7E4 00389444 EC 21 10 28 */ fsubs f1, f1, f2
+/* 8038D7E8 00389448 FC 00 08 40 */ fcmpo cr0, f0, f1
+/* 8038D7EC 0038944C 40 80 00 14 */ bge lbl_8038D800
+/* 8038D7F0 00389450 C0 02 A8 E4 */ lfs f0, lbl_80642EE4-_SDA2_BASE_(r2)
+/* 8038D7F4 00389454 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8038D7F8 00389458 40 80 00 08 */ bge lbl_8038D800
+/* 8038D7FC 0038945C 38 00 00 01 */ li r0, 1
+lbl_8038D800:
+/* 8038D800 00389460 2C 00 00 00 */ cmpwi r0, 0
+/* 8038D804 00389464 41 82 00 10 */ beq lbl_8038D814
+/* 8038D808 00389468 7C 63 22 14 */ add r3, r3, r4
+/* 8038D80C 0038946C A0 63 00 04 */ lhz r3, 4(r3)
+/* 8038D810 00389470 4E 80 00 20 */ blr
+lbl_8038D814:
+/* 8038D814 00389474 54 A0 18 38 */ slwi r0, r5, 3
+/* 8038D818 00389478 7C 63 02 14 */ add r3, r3, r0
+/* 8038D81C 0038947C A0 63 00 04 */ lhz r3, 4(r3)
+/* 8038D820 00389480 4E 80 00 20 */ blr
+
+.global GetHermiteCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res10HermiteKeyUl
+GetHermiteCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res10HermiteKeyUl:
+/* 8038D824 00389484 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038D828 00389488 DB E1 00 10 */ stfd f31, 0x10(r1)
+/* 8038D82C 0038948C F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0
+/* 8038D830 00389490 28 04 00 01 */ cmplwi r4, 1
+/* 8038D834 00389494 41 82 00 14 */ beq lbl_8038D848
+/* 8038D838 00389498 C0 03 00 00 */ lfs f0, 0(r3)
+/* 8038D83C 0038949C FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8038D840 003894A0 4C 40 13 82 */ cror 2, 0, 2
+/* 8038D844 003894A4 40 82 00 0C */ bne lbl_8038D850
+lbl_8038D848:
+/* 8038D848 003894A8 C0 23 00 04 */ lfs f1, 4(r3)
+/* 8038D84C 003894AC 48 00 01 84 */ b lbl_8038D9D0
+lbl_8038D850:
+/* 8038D850 003894B0 1C 04 00 0C */ mulli r0, r4, 0xc
+/* 8038D854 003894B4 7C A3 02 14 */ add r5, r3, r0
+/* 8038D858 003894B8 C0 05 FF F4 */ lfs f0, -0xc(r5)
+/* 8038D85C 003894BC FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8038D860 003894C0 4C 41 13 82 */ cror 2, 1, 2
+/* 8038D864 003894C4 40 82 00 0C */ bne lbl_8038D870
+/* 8038D868 003894C8 C0 25 FF F8 */ lfs f1, -8(r5)
+/* 8038D86C 003894CC 48 00 01 64 */ b lbl_8038D9D0
+lbl_8038D870:
+/* 8038D870 003894D0 38 E4 FF FF */ addi r7, r4, -1
+/* 8038D874 003894D4 38 C0 00 00 */ li r6, 0
+/* 8038D878 003894D8 48 00 00 40 */ b lbl_8038D8B8
+lbl_8038D87C:
+/* 8038D87C 003894DC 7C A6 3A 14 */ add r5, r6, r7
+/* 8038D880 003894E0 54 A0 0F FE */ srwi r0, r5, 0x1f
+/* 8038D884 003894E4 7C 00 2A 14 */ add r0, r0, r5
+/* 8038D888 003894E8 7C 05 0E 70 */ srawi r5, r0, 1
+/* 8038D88C 003894EC 1C 05 00 0C */ mulli r0, r5, 0xc
+/* 8038D890 003894F0 7C 03 04 2E */ lfsx f0, r3, r0
+/* 8038D894 003894F4 FC 01 00 40 */ fcmpo cr0, f1, f0
+/* 8038D898 003894F8 4C 40 13 82 */ cror 2, 0, 2
+/* 8038D89C 003894FC 7C 00 00 26 */ mfcr r0
+/* 8038D8A0 00389500 54 00 1F FF */ rlwinm. r0, r0, 3, 0x1f, 0x1f
+/* 8038D8A4 00389504 41 82 00 08 */ beq lbl_8038D8AC
+/* 8038D8A8 00389508 7C A7 2B 78 */ mr r7, r5
+lbl_8038D8AC:
+/* 8038D8AC 0038950C 2C 00 00 00 */ cmpwi r0, 0
+/* 8038D8B0 00389510 40 82 00 08 */ bne lbl_8038D8B8
+/* 8038D8B4 00389514 7C A6 2B 78 */ mr r6, r5
+lbl_8038D8B8:
+/* 8038D8B8 00389518 38 07 FF FF */ addi r0, r7, -1
+/* 8038D8BC 0038951C 7C 06 00 00 */ cmpw r6, r0
+/* 8038D8C0 00389520 41 82 00 0C */ beq lbl_8038D8CC
+/* 8038D8C4 00389524 7C 06 38 00 */ cmpw r6, r7
+/* 8038D8C8 00389528 40 82 FF B4 */ bne lbl_8038D87C
+lbl_8038D8CC:
+/* 8038D8CC 0038952C 1C A7 00 0C */ mulli r5, r7, 0xc
+/* 8038D8D0 00389530 C0 02 A8 E0 */ lfs f0, lbl_80642EE0-_SDA2_BASE_(r2)
+/* 8038D8D4 00389534 38 00 00 00 */ li r0, 0
+/* 8038D8D8 00389538 7C 43 2C 2E */ lfsx f2, r3, r5
+/* 8038D8DC 0038953C 7D 03 2A 14 */ add r8, r3, r5
+/* 8038D8E0 00389540 1C A6 00 0C */ mulli r5, r6, 0xc
+/* 8038D8E4 00389544 EC 41 10 28 */ fsubs f2, f1, f2
+/* 8038D8E8 00389548 7C A3 2A 14 */ add r5, r3, r5
+/* 8038D8EC 0038954C FC 00 10 40 */ fcmpo cr0, f0, f2
+/* 8038D8F0 00389550 40 80 00 14 */ bge lbl_8038D904
+/* 8038D8F4 00389554 C0 02 A8 E4 */ lfs f0, lbl_80642EE4-_SDA2_BASE_(r2)
+/* 8038D8F8 00389558 FC 02 00 40 */ fcmpo cr0, f2, f0
+/* 8038D8FC 0038955C 40 80 00 08 */ bge lbl_8038D904
+/* 8038D900 00389560 38 00 00 01 */ li r0, 1
+lbl_8038D904:
+/* 8038D904 00389564 2C 00 00 00 */ cmpwi r0, 0
+/* 8038D908 00389568 41 82 00 3C */ beq lbl_8038D944
+/* 8038D90C 0038956C 38 04 FF FF */ addi r0, r4, -1
+/* 8038D910 00389570 7C 07 00 40 */ cmplw r7, r0
+/* 8038D914 00389574 40 80 00 28 */ bge lbl_8038D93C
+/* 8038D918 00389578 38 07 00 01 */ addi r0, r7, 1
+/* 8038D91C 0038957C C0 28 00 00 */ lfs f1, 0(r8)
+/* 8038D920 00389580 1C 00 00 0C */ mulli r0, r0, 0xc
+/* 8038D924 00389584 7C 03 04 2E */ lfsx f0, r3, r0
+/* 8038D928 00389588 FC 01 00 00 */ fcmpu cr0, f1, f0
+/* 8038D92C 0038958C 40 82 00 10 */ bne lbl_8038D93C
+/* 8038D930 00389590 7C 63 02 14 */ add r3, r3, r0
+/* 8038D934 00389594 C0 23 00 04 */ lfs f1, 4(r3)
+/* 8038D938 00389598 48 00 00 98 */ b lbl_8038D9D0
+lbl_8038D93C:
+/* 8038D93C 0038959C C0 28 00 04 */ lfs f1, 4(r8)
+/* 8038D940 003895A0 48 00 00 90 */ b lbl_8038D9D0
+lbl_8038D944:
+/* 8038D944 003895A4 C0 45 00 00 */ lfs f2, 0(r5)
+/* 8038D948 003895A8 C0 08 00 00 */ lfs f0, 0(r8)
+/* 8038D94C 003895AC EC E1 10 28 */ fsubs f7, f1, f2
+/* 8038D950 003895B0 C0 C2 A8 E8 */ lfs f6, lbl_80642EE8-_SDA2_BASE_(r2)
+/* 8038D954 003895B4 EC 00 10 28 */ fsubs f0, f0, f2
+/* 8038D958 003895B8 C0 82 A8 EC */ lfs f4, lbl_80642EEC-_SDA2_BASE_(r2)
+/* 8038D95C 003895BC C0 22 A8 F0 */ lfs f1, lbl_80642EF0-_SDA2_BASE_(r2)
+/* 8038D960 003895C0 EC 47 01 F2 */ fmuls f2, f7, f7
+/* 8038D964 003895C4 EC A6 00 24 */ fdivs f5, f6, f0
+/* 8038D968 003895C8 C0 02 A8 F4 */ lfs f0, lbl_80642EF4-_SDA2_BASE_(r2)
+/* 8038D96C 003895CC C1 05 00 04 */ lfs f8, 4(r5)
+/* 8038D970 003895D0 C1 28 00 04 */ lfs f9, 4(r8)
+/* 8038D974 003895D4 C1 45 00 08 */ lfs f10, 8(r5)
+/* 8038D978 003895D8 C1 68 00 08 */ lfs f11, 8(r8)
+/* 8038D97C 003895DC ED 85 00 B2 */ fmuls f12, f5, f2
+/* 8038D980 003895E0 EC 4C 01 72 */ fmuls f2, f12, f5
+/* 8038D984 003895E4 EC 64 03 32 */ fmuls f3, f4, f12
+/* 8038D988 003895E8 ED A7 00 B2 */ fmuls f13, f7, f2
+/* 8038D98C 003895EC EC 41 00 B2 */ fmuls f2, f1, f2
+/* 8038D990 003895F0 EF ED 01 72 */ fmuls f31, f13, f5
+/* 8038D994 003895F4 EC 6D 18 28 */ fsubs f3, f13, f3
+/* 8038D998 003895F8 EC AD 60 28 */ fsubs f5, f13, f12
+/* 8038D99C 003895FC EC 24 07 F2 */ fmuls f1, f4, f31
+/* 8038D9A0 00389600 EC 00 07 F2 */ fmuls f0, f0, f31
+/* 8038D9A4 00389604 EC 67 18 2A */ fadds f3, f7, f3
+/* 8038D9A8 00389608 EC 21 10 28 */ fsubs f1, f1, f2
+/* 8038D9AC 0038960C EC 00 10 2A */ fadds f0, f0, f2
+/* 8038D9B0 00389610 EC 4A 00 F2 */ fmuls f2, f10, f3
+/* 8038D9B4 00389614 EC 26 08 2A */ fadds f1, f6, f1
+/* 8038D9B8 00389618 EC 09 00 32 */ fmuls f0, f9, f0
+/* 8038D9BC 0038961C EC 6B 01 72 */ fmuls f3, f11, f5
+/* 8038D9C0 00389620 EC 28 00 72 */ fmuls f1, f8, f1
+/* 8038D9C4 00389624 EC 01 00 2A */ fadds f0, f1, f0
+/* 8038D9C8 00389628 EC 02 00 2A */ fadds f0, f2, f0
+/* 8038D9CC 0038962C EC 23 00 2A */ fadds f1, f3, f0
+lbl_8038D9D0:
+/* 8038D9D0 00389630 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0
+/* 8038D9D4 00389634 CB E1 00 10 */ lfd f31, 0x10(r1)
+/* 8038D9D8 00389638 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038D9DC 0038963C 4E 80 00 20 */ blr
+
+.global GetFrameSize__Q34nw4r3lyt13AnimTransformCFv
+GetFrameSize__Q34nw4r3lyt13AnimTransformCFv:
+/* 8038D9E0 00389640 80 63 00 0C */ lwz r3, 0xc(r3)
+/* 8038D9E4 00389644 A0 63 00 08 */ lhz r3, 8(r3)
+/* 8038D9E8 00389648 4E 80 00 20 */ blr
+
+.global __ct__Q34nw4r3lyt18AnimTransformBasicFv
+__ct__Q34nw4r3lyt18AnimTransformBasicFv:
+/* 8038D9EC 0038964C C0 02 A8 F8 */ lfs f0, lbl_80642EF8-_SDA2_BASE_(r2)
+/* 8038D9F0 00389650 3C 80 80 45 */ lis r4, lbl_8044E560@ha
+/* 8038D9F4 00389654 38 00 00 00 */ li r0, 0
+/* 8038D9F8 00389658 38 84 E5 60 */ addi r4, r4, lbl_8044E560@l
+/* 8038D9FC 0038965C 90 03 00 04 */ stw r0, 4(r3)
+/* 8038DA00 00389660 90 03 00 08 */ stw r0, 8(r3)
+/* 8038DA04 00389664 90 03 00 0C */ stw r0, 0xc(r3)
+/* 8038DA08 00389668 D0 03 00 10 */ stfs f0, 0x10(r3)
+/* 8038DA0C 0038966C 90 83 00 00 */ stw r4, 0(r3)
+/* 8038DA10 00389670 90 03 00 14 */ stw r0, 0x14(r3)
+/* 8038DA14 00389674 90 03 00 18 */ stw r0, 0x18(r3)
+/* 8038DA18 00389678 B0 03 00 1C */ sth r0, 0x1c(r3)
+/* 8038DA1C 0038967C 4E 80 00 20 */ blr
+
+.global __dt__Q34nw4r3lyt18AnimTransformBasicFv
+__dt__Q34nw4r3lyt18AnimTransformBasicFv:
+/* 8038DA20 00389680 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8038DA24 00389684 7C 08 02 A6 */ mflr r0
+/* 8038DA28 00389688 2C 03 00 00 */ cmpwi r3, 0
+/* 8038DA2C 0038968C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038DA30 00389690 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8038DA34 00389694 7C 9F 23 78 */ mr r31, r4
+/* 8038DA38 00389698 93 C1 00 08 */ stw r30, 8(r1)
+/* 8038DA3C 0038969C 7C 7E 1B 78 */ mr r30, r3
+/* 8038DA40 003896A0 41 82 00 48 */ beq lbl_8038DA88
+/* 8038DA44 003896A4 80 83 00 18 */ lwz r4, 0x18(r3)
+/* 8038DA48 003896A8 3C A0 80 45 */ lis r5, lbl_8044E560@ha
+/* 8038DA4C 003896AC 38 A5 E5 60 */ addi r5, r5, lbl_8044E560@l
+/* 8038DA50 003896B0 2C 04 00 00 */ cmpwi r4, 0
+/* 8038DA54 003896B4 90 A3 00 00 */ stw r5, 0(r3)
+/* 8038DA58 003896B8 41 82 00 0C */ beq lbl_8038DA64
+/* 8038DA5C 003896BC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
+/* 8038DA60 003896C0 4B F0 9C D5 */ bl func_80297734
+lbl_8038DA64:
+/* 8038DA64 003896C4 80 9E 00 14 */ lwz r4, 0x14(r30)
+/* 8038DA68 003896C8 2C 04 00 00 */ cmpwi r4, 0
+/* 8038DA6C 003896CC 41 82 00 0C */ beq lbl_8038DA78
+/* 8038DA70 003896D0 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
+/* 8038DA74 003896D4 4B F0 9C C1 */ bl func_80297734
+lbl_8038DA78:
+/* 8038DA78 003896D8 2C 1F 00 00 */ cmpwi r31, 0
+/* 8038DA7C 003896DC 40 81 00 0C */ ble lbl_8038DA88
+/* 8038DA80 003896E0 7F C3 F3 78 */ mr r3, r30
+/* 8038DA84 003896E4 4B E4 D0 35 */ bl func_801DAAB8
+lbl_8038DA88:
+/* 8038DA88 003896E8 7F C3 F3 78 */ mr r3, r30
+/* 8038DA8C 003896EC 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8038DA90 003896F0 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8038DA94 003896F4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8038DA98 003896F8 7C 08 03 A6 */ mtlr r0
+/* 8038DA9C 003896FC 38 21 00 10 */ addi r1, r1, 0x10
+/* 8038DAA0 00389700 4E 80 00 20 */ blr
+
+.global SetResource__Q34nw4r3lyt18AnimTransformBasicFPCQ44nw4r3lyt3res14AnimationBlockPQ34nw4r3lyt16ResourceAccessor
+SetResource__Q34nw4r3lyt18AnimTransformBasicFPCQ44nw4r3lyt3res14AnimationBlockPQ34nw4r3lyt16ResourceAccessor:
+/* 8038DAA4 00389704 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 8038DAA8 00389708 7C 08 02 A6 */ mflr r0
+/* 8038DAAC 0038970C 90 01 00 34 */ stw r0, 0x34(r1)
+/* 8038DAB0 00389710 39 61 00 30 */ addi r11, r1, 0x30
+/* 8038DAB4 00389714 4B E3 96 69 */ bl _savegpr_24
+/* 8038DAB8 00389718 A0 C4 00 0C */ lhz r6, 0xc(r4)
+/* 8038DABC 0038971C 38 00 00 00 */ li r0, 0
+/* 8038DAC0 00389720 90 83 00 0C */ stw r4, 0xc(r3)
+/* 8038DAC4 00389724 7C 7E 1B 78 */ mr r30, r3
+/* 8038DAC8 00389728 2C 06 00 00 */ cmpwi r6, 0
+/* 8038DACC 0038972C 7C 9F 23 78 */ mr r31, r4
+/* 8038DAD0 00389730 90 03 00 14 */ stw r0, 0x14(r3)
+/* 8038DAD4 00389734 7C B8 2B 78 */ mr r24, r5
+/* 8038DAD8 00389738 41 82 00 80 */ beq lbl_8038DB58
+/* 8038DADC 0038973C 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
+/* 8038DAE0 00389740 54 C4 13 BA */ rlwinm r4, r6, 2, 0xe, 0x1d
+/* 8038DAE4 00389744 4B F0 9C 41 */ bl func_80297724
+/* 8038DAE8 00389748 2C 03 00 00 */ cmpwi r3, 0
+/* 8038DAEC 0038974C 90 7E 00 14 */ stw r3, 0x14(r30)
+/* 8038DAF0 00389750 41 82 00 68 */ beq lbl_8038DB58
+/* 8038DAF4 00389754 80 7E 00 0C */ lwz r3, 0xc(r30)
+/* 8038DAF8 00389758 3B 20 00 00 */ li r25, 0
+/* 8038DAFC 0038975C 3B 40 00 00 */ li r26, 0
+/* 8038DB00 00389760 3F A0 74 69 */ lis r29, 0x7469
+/* 8038DB04 00389764 3B 83 00 14 */ addi r28, r3, 0x14
+/* 8038DB08 00389768 7F 9B E3 78 */ mr r27, r28
+/* 8038DB0C 0038976C 48 00 00 3C */ b lbl_8038DB48
+lbl_8038DB10:
+/* 8038DB10 00389770 81 98 00 00 */ lwz r12, 0(r24)
+/* 8038DB14 00389774 7F 03 C3 78 */ mr r3, r24
+/* 8038DB18 00389778 80 1B 00 00 */ lwz r0, 0(r27)
+/* 8038DB1C 0038977C 38 9D 6D 67 */ addi r4, r29, 0x6d67
+/* 8038DB20 00389780 81 8C 00 0C */ lwz r12, 0xc(r12)
+/* 8038DB24 00389784 38 C0 00 00 */ li r6, 0
+/* 8038DB28 00389788 7C BC 02 14 */ add r5, r28, r0
+/* 8038DB2C 0038978C 7D 89 03 A6 */ mtctr r12
+/* 8038DB30 00389790 4E 80 04 21 */ bctrl
+/* 8038DB34 00389794 80 9E 00 14 */ lwz r4, 0x14(r30)
+/* 8038DB38 00389798 3B 7B 00 04 */ addi r27, r27, 4
+/* 8038DB3C 0038979C 3B 39 00 01 */ addi r25, r25, 1
+/* 8038DB40 003897A0 7C 64 D1 2E */ stwx r3, r4, r26
+/* 8038DB44 003897A4 3B 5A 00 04 */ addi r26, r26, 4
+lbl_8038DB48:
+/* 8038DB48 003897A8 80 7E 00 0C */ lwz r3, 0xc(r30)
+/* 8038DB4C 003897AC A0 03 00 0C */ lhz r0, 0xc(r3)
+/* 8038DB50 003897B0 7C 19 00 00 */ cmpw r25, r0
+/* 8038DB54 003897B4 41 80 FF BC */ blt lbl_8038DB10
+lbl_8038DB58:
+/* 8038DB58 003897B8 A0 1F 00 0E */ lhz r0, 0xe(r31)
+/* 8038DB5C 003897BC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
+/* 8038DB60 003897C0 54 04 20 36 */ slwi r4, r0, 4
+/* 8038DB64 003897C4 4B F0 9B C1 */ bl func_80297724
+/* 8038DB68 003897C8 2C 03 00 00 */ cmpwi r3, 0
+/* 8038DB6C 003897CC 90 7E 00 18 */ stw r3, 0x18(r30)
+/* 8038DB70 003897D0 41 82 00 5C */ beq lbl_8038DBCC
+/* 8038DB74 003897D4 A0 1F 00 0E */ lhz r0, 0xe(r31)
+/* 8038DB78 003897D8 38 80 00 00 */ li r4, 0
+/* 8038DB7C 003897DC B0 1E 00 1C */ sth r0, 0x1c(r30)
+/* 8038DB80 003897E0 54 05 20 36 */ slwi r5, r0, 4
+/* 8038DB84 003897E4 4B C7 65 81 */ bl memset
+/* 8038DB88 003897E8 38 A0 00 00 */ li r5, 0
+/* 8038DB8C 003897EC 38 80 00 00 */ li r4, 0
+/* 8038DB90 003897F0 48 00 00 2C */ b lbl_8038DBBC
+lbl_8038DB94:
+/* 8038DB94 003897F4 80 7E 00 18 */ lwz r3, 0x18(r30)
+/* 8038DB98 003897F8 54 A0 23 36 */ rlwinm r0, r5, 4, 0xc, 0x1b
+/* 8038DB9C 003897FC 7C 63 02 15 */ add. r3, r3, r0
+/* 8038DBA0 00389800 41 82 00 18 */ beq lbl_8038DBB8
+/* 8038DBA4 00389804 90 83 00 00 */ stw r4, 0(r3)
+/* 8038DBA8 00389808 90 83 00 04 */ stw r4, 4(r3)
+/* 8038DBAC 0038980C 98 83 00 0E */ stb r4, 0xe(r3)
+/* 8038DBB0 00389810 90 83 00 08 */ stw r4, 8(r3)
+/* 8038DBB4 00389814 B0 83 00 0C */ sth r4, 0xc(r3)
+lbl_8038DBB8:
+/* 8038DBB8 00389818 38 A5 00 01 */ addi r5, r5, 1
+lbl_8038DBBC:
+/* 8038DBBC 0038981C A0 1F 00 0E */ lhz r0, 0xe(r31)
+/* 8038DBC0 00389820 54 A3 04 3E */ clrlwi r3, r5, 0x10
+/* 8038DBC4 00389824 7C 03 00 40 */ cmplw r3, r0
+/* 8038DBC8 00389828 41 80 FF CC */ blt lbl_8038DB94
+lbl_8038DBCC:
+/* 8038DBCC 0038982C 39 61 00 30 */ addi r11, r1, 0x30
+/* 8038DBD0 00389830 4B E3 95 99 */ bl _restgpr_24
+/* 8038DBD4 00389834 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 8038DBD8 00389838 7C 08 03 A6 */ mtlr r0
+/* 8038DBDC 0038983C 38 21 00 30 */ addi r1, r1, 0x30
+/* 8038DBE0 00389840 4E 80 00 20 */ blr
+
+.global Bind__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt4Paneb
+Bind__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt4Paneb:
+/* 8038DBE4 00389844 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038DBE8 00389848 7C 08 02 A6 */ mflr r0
+/* 8038DBEC 0038984C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8038DBF0 00389850 39 61 00 20 */ addi r11, r1, 0x20
+/* 8038DBF4 00389854 4B E3 95 35 */ bl _savegpr_27
+/* 8038DBF8 00389858 80 C3 00 0C */ lwz r6, 0xc(r3)
+/* 8038DBFC 0038985C 7C 7B 1B 78 */ mr r27, r3
+/* 8038DC00 00389860 7C 9C 23 78 */ mr r28, r4
+/* 8038DC04 00389864 7C BD 2B 78 */ mr r29, r5
+/* 8038DC08 00389868 80 06 00 10 */ lwz r0, 0x10(r6)
+/* 8038DC0C 0038986C 3B C0 00 00 */ li r30, 0
+/* 8038DC10 00389870 7F E6 02 14 */ add r31, r6, r0
+/* 8038DC14 00389874 48 00 00 A4 */ b lbl_8038DCB8
+lbl_8038DC18:
+/* 8038DC18 00389878 57 C0 13 BA */ rlwinm r0, r30, 2, 0xe, 0x1d
+/* 8038DC1C 0038987C 7C 1F 00 2E */ lwzx r0, r31, r0
+/* 8038DC20 00389880 7C 84 02 14 */ add r4, r4, r0
+/* 8038DC24 00389884 88 04 00 15 */ lbz r0, 0x15(r4)
+/* 8038DC28 00389888 2C 00 00 00 */ cmpwi r0, 0
+/* 8038DC2C 0038988C 40 82 00 48 */ bne lbl_8038DC74
+/* 8038DC30 00389890 81 9C 00 00 */ lwz r12, 0(r28)
+/* 8038DC34 00389894 7F 83 E3 78 */ mr r3, r28
+/* 8038DC38 00389898 7F A5 EB 78 */ mr r5, r29
+/* 8038DC3C 0038989C 81 8C 00 3C */ lwz r12, 0x3c(r12)
+/* 8038DC40 003898A0 7D 89 03 A6 */ mtctr r12
+/* 8038DC44 003898A4 4E 80 04 21 */ bctrl
+/* 8038DC48 003898A8 2C 03 00 00 */ cmpwi r3, 0
+/* 8038DC4C 003898AC 41 82 00 68 */ beq lbl_8038DCB4
+/* 8038DC50 003898B0 80 1B 00 18 */ lwz r0, 0x18(r27)
+/* 8038DC54 003898B4 57 C5 23 36 */ rlwinm r5, r30, 4, 0xc, 0x1b
+/* 8038DC58 003898B8 7C 80 2A 14 */ add r4, r0, r5
+/* 8038DC5C 003898BC 93 64 00 08 */ stw r27, 8(r4)
+/* 8038DC60 003898C0 B3 C4 00 0C */ sth r30, 0xc(r4)
+/* 8038DC64 003898C4 80 1B 00 18 */ lwz r0, 0x18(r27)
+/* 8038DC68 003898C8 7C 80 2A 14 */ add r4, r0, r5
+/* 8038DC6C 003898CC 4B FF 7E 49 */ bl AddAnimationLink__Q34nw4r3lyt4PaneFPQ34nw4r3lyt13AnimationLink
+/* 8038DC70 003898D0 48 00 00 44 */ b lbl_8038DCB4
+lbl_8038DC74:
+/* 8038DC74 003898D4 81 9C 00 00 */ lwz r12, 0(r28)
+/* 8038DC78 003898D8 7F 83 E3 78 */ mr r3, r28
+/* 8038DC7C 003898DC 7F A5 EB 78 */ mr r5, r29
+/* 8038DC80 003898E0 81 8C 00 40 */ lwz r12, 0x40(r12)
+/* 8038DC84 003898E4 7D 89 03 A6 */ mtctr r12
+/* 8038DC88 003898E8 4E 80 04 21 */ bctrl
+/* 8038DC8C 003898EC 2C 03 00 00 */ cmpwi r3, 0
+/* 8038DC90 003898F0 41 82 00 24 */ beq lbl_8038DCB4
+/* 8038DC94 003898F4 80 1B 00 18 */ lwz r0, 0x18(r27)
+/* 8038DC98 003898F8 57 C5 23 36 */ rlwinm r5, r30, 4, 0xc, 0x1b
+/* 8038DC9C 003898FC 7C 80 2A 14 */ add r4, r0, r5
+/* 8038DCA0 00389900 93 64 00 08 */ stw r27, 8(r4)
+/* 8038DCA4 00389904 B3 C4 00 0C */ sth r30, 0xc(r4)
+/* 8038DCA8 00389908 80 1B 00 18 */ lwz r0, 0x18(r27)
+/* 8038DCAC 0038990C 7C 80 2A 14 */ add r4, r0, r5
+/* 8038DCB0 00389910 4B FF F5 E1 */ bl AddAnimationLink__Q34nw4r3lyt8MaterialFPQ34nw4r3lyt13AnimationLink
+lbl_8038DCB4:
+/* 8038DCB4 00389914 3B DE 00 01 */ addi r30, r30, 1
+lbl_8038DCB8:
+/* 8038DCB8 00389918 80 9B 00 0C */ lwz r4, 0xc(r27)
+/* 8038DCBC 0038991C 57 C3 04 3E */ clrlwi r3, r30, 0x10
+/* 8038DCC0 00389920 A0 04 00 0E */ lhz r0, 0xe(r4)
+/* 8038DCC4 00389924 7C 03 00 40 */ cmplw r3, r0
+/* 8038DCC8 00389928 41 80 FF 50 */ blt lbl_8038DC18
+/* 8038DCCC 0038992C 39 61 00 20 */ addi r11, r1, 0x20
+/* 8038DCD0 00389930 4B E3 94 A5 */ bl _restgpr_27
+/* 8038DCD4 00389934 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8038DCD8 00389938 7C 08 03 A6 */ mtlr r0
+/* 8038DCDC 0038993C 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038DCE0 00389940 4E 80 00 20 */ blr
+
+.global Bind__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt8Material
+Bind__Q34nw4r3lyt18AnimTransformBasicFPQ34nw4r3lyt8Material:
+/* 8038DCE4 00389944 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038DCE8 00389948 7C 08 02 A6 */ mflr r0
+/* 8038DCEC 0038994C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8038DCF0 00389950 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8038DCF4 00389954 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8038DCF8 00389958 3B C0 00 00 */ li r30, 0
+/* 8038DCFC 0038995C 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8038DD00 00389960 7C 9D 23 78 */ mr r29, r4
+/* 8038DD04 00389964 93 81 00 10 */ stw r28, 0x10(r1)
+/* 8038DD08 00389968 7C 7C 1B 78 */ mr r28, r3
+/* 8038DD0C 0038996C 80 A3 00 0C */ lwz r5, 0xc(r3)
+/* 8038DD10 00389970 80 05 00 10 */ lwz r0, 0x10(r5)
+/* 8038DD14 00389974 7F E5 02 14 */ add r31, r5, r0
+/* 8038DD18 00389978 48 00 00 58 */ b lbl_8038DD70
+lbl_8038DD1C:
+/* 8038DD1C 0038997C 57 C0 13 BA */ rlwinm r0, r30, 2, 0xe, 0x1d
+/* 8038DD20 00389980 7C 1F 00 2E */ lwzx r0, r31, r0
+/* 8038DD24 00389984 7C 84 02 14 */ add r4, r4, r0
+/* 8038DD28 00389988 88 04 00 15 */ lbz r0, 0x15(r4)
+/* 8038DD2C 0038998C 28 00 00 01 */ cmplwi r0, 1
+/* 8038DD30 00389990 40 82 00 3C */ bne lbl_8038DD6C
+/* 8038DD34 00389994 38 7D 00 44 */ addi r3, r29, 0x44
+/* 8038DD38 00389998 38 A0 00 14 */ li r5, 0x14
+/* 8038DD3C 0038999C 4B E4 08 2D */ bl strncmp
+/* 8038DD40 003899A0 2C 03 00 00 */ cmpwi r3, 0
+/* 8038DD44 003899A4 40 82 00 28 */ bne lbl_8038DD6C
+/* 8038DD48 003899A8 80 1C 00 18 */ lwz r0, 0x18(r28)
+/* 8038DD4C 003899AC 57 C5 23 36 */ rlwinm r5, r30, 4, 0xc, 0x1b
+/* 8038DD50 003899B0 7F A3 EB 78 */ mr r3, r29
+/* 8038DD54 003899B4 7C 80 2A 14 */ add r4, r0, r5
+/* 8038DD58 003899B8 93 84 00 08 */ stw r28, 8(r4)
+/* 8038DD5C 003899BC B3 C4 00 0C */ sth r30, 0xc(r4)
+/* 8038DD60 003899C0 80 1C 00 18 */ lwz r0, 0x18(r28)
+/* 8038DD64 003899C4 7C 80 2A 14 */ add r4, r0, r5
+/* 8038DD68 003899C8 4B FF F5 29 */ bl AddAnimationLink__Q34nw4r3lyt8MaterialFPQ34nw4r3lyt13AnimationLink
+lbl_8038DD6C:
+/* 8038DD6C 003899CC 3B DE 00 01 */ addi r30, r30, 1
+lbl_8038DD70:
+/* 8038DD70 003899D0 80 9C 00 0C */ lwz r4, 0xc(r28)
+/* 8038DD74 003899D4 57 C3 04 3E */ clrlwi r3, r30, 0x10
+/* 8038DD78 003899D8 A0 04 00 0E */ lhz r0, 0xe(r4)
+/* 8038DD7C 003899DC 7C 03 00 40 */ cmplw r3, r0
+/* 8038DD80 003899E0 41 80 FF 9C */ blt lbl_8038DD1C
+/* 8038DD84 003899E4 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8038DD88 003899E8 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8038DD8C 003899EC 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8038DD90 003899F0 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8038DD94 003899F4 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 8038DD98 003899F8 7C 08 03 A6 */ mtlr r0
+/* 8038DD9C 003899FC 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038DDA0 00389A00 4E 80 00 20 */ blr
+
+.global Animate__Q34nw4r3lyt18AnimTransformBasicFUlPQ34nw4r3lyt4Pane
+Animate__Q34nw4r3lyt18AnimTransformBasicFUlPQ34nw4r3lyt4Pane:
+/* 8038DDA4 00389A04 94 21 FF A0 */ stwu r1, -0x60(r1)
+/* 8038DDA8 00389A08 7C 08 02 A6 */ mflr r0
+/* 8038DDAC 00389A0C 90 01 00 64 */ stw r0, 0x64(r1)
+/* 8038DDB0 00389A10 DB E1 00 50 */ stfd f31, 0x50(r1)
+/* 8038DDB4 00389A14 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
+/* 8038DDB8 00389A18 DB C1 00 40 */ stfd f30, 0x40(r1)
+/* 8038DDBC 00389A1C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0
+/* 8038DDC0 00389A20 39 61 00 40 */ addi r11, r1, 0x40
+/* 8038DDC4 00389A24 4B E3 93 4D */ bl _savegpr_21
+/* 8038DDC8 00389A28 80 C3 00 0C */ lwz r6, 0xc(r3)
+/* 8038DDCC 00389A2C 3F E0 52 4C */ lis r31, 0x524C5643@ha
+/* 8038DDD0 00389A30 54 84 10 3A */ slwi r4, r4, 2
+/* 8038DDD4 00389A34 C3 E2 A8 FC */ lfs f31, lbl_80642EFC-_SDA2_BASE_(r2)
+/* 8038DDD8 00389A38 80 06 00 10 */ lwz r0, 0x10(r6)
+/* 8038DDDC 00389A3C 7C 76 1B 78 */ mr r22, r3
+/* 8038DDE0 00389A40 7C B7 2B 78 */ mr r23, r5
+/* 8038DDE4 00389A44 3B DF 56 43 */ addi r30, r31, 0x524C5643@l
+/* 8038DDE8 00389A48 7C 06 02 14 */ add r0, r6, r0
+/* 8038DDEC 00389A4C 3B 00 00 00 */ li r24, 0
+/* 8038DDF0 00389A50 7C 04 00 2E */ lwzx r0, r4, r0
+/* 8038DDF4 00389A54 7F 86 02 14 */ add r28, r6, r0
+/* 8038DDF8 00389A58 3B 5C 00 18 */ addi r26, r28, 0x18
+/* 8038DDFC 00389A5C 48 00 01 60 */ b lbl_8038DF5C
+lbl_8038DE00:
+/* 8038DE00 00389A60 80 1A 00 00 */ lwz r0, 0(r26)
+/* 8038DE04 00389A64 7C 7C 00 2E */ lwzx r3, r28, r0
+/* 8038DE08 00389A68 7F 7C 02 14 */ add r27, r28, r0
+/* 8038DE0C 00389A6C 3B 3B 00 08 */ addi r25, r27, 8
+/* 8038DE10 00389A70 7C 03 F0 00 */ cmpw r3, r30
+/* 8038DE14 00389A74 41 82 00 D4 */ beq lbl_8038DEE8
+/* 8038DE18 00389A78 40 80 00 14 */ bge lbl_8038DE2C
+/* 8038DE1C 00389A7C 38 1F 50 41 */ addi r0, r31, 0x5041
+/* 8038DE20 00389A80 7C 03 00 00 */ cmpw r3, r0
+/* 8038DE24 00389A84 41 82 00 18 */ beq lbl_8038DE3C
+/* 8038DE28 00389A88 48 00 01 2C */ b lbl_8038DF54
+lbl_8038DE2C:
+/* 8038DE2C 00389A8C 38 1F 56 49 */ addi r0, r31, 0x5649
+/* 8038DE30 00389A90 7C 03 00 00 */ cmpw r3, r0
+/* 8038DE34 00389A94 41 82 00 58 */ beq lbl_8038DE8C
+/* 8038DE38 00389A98 48 00 01 1C */ b lbl_8038DF54
+lbl_8038DE3C:
+/* 8038DE3C 00389A9C C3 D6 00 10 */ lfs f30, 0x10(r22)
+/* 8038DE40 00389AA0 3B A0 00 00 */ li r29, 0
+/* 8038DE44 00389AA4 48 00 00 38 */ b lbl_8038DE7C
+lbl_8038DE48:
+/* 8038DE48 00389AA8 80 19 00 00 */ lwz r0, 0(r25)
+/* 8038DE4C 00389AAC FC 20 F0 90 */ fmr f1, f30
+/* 8038DE50 00389AB0 7E BB 02 14 */ add r21, r27, r0
+/* 8038DE54 00389AB4 80 15 00 08 */ lwz r0, 8(r21)
+/* 8038DE58 00389AB8 A0 95 00 04 */ lhz r4, 4(r21)
+/* 8038DE5C 00389ABC 7C 75 02 14 */ add r3, r21, r0
+/* 8038DE60 00389AC0 4B FF F9 C5 */ bl GetHermiteCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res10HermiteKeyUl
+/* 8038DE64 00389AC4 88 15 00 01 */ lbz r0, 1(r21)
+/* 8038DE68 00389AC8 3B 39 00 04 */ addi r25, r25, 4
+/* 8038DE6C 00389ACC 3B BD 00 01 */ addi r29, r29, 1
+/* 8038DE70 00389AD0 54 00 10 3A */ slwi r0, r0, 2
+/* 8038DE74 00389AD4 7C 77 02 14 */ add r3, r23, r0
+/* 8038DE78 00389AD8 D0 23 00 2C */ stfs f1, 0x2c(r3)
+lbl_8038DE7C:
+/* 8038DE7C 00389ADC 88 1B 00 04 */ lbz r0, 4(r27)
+/* 8038DE80 00389AE0 7C 1D 00 00 */ cmpw r29, r0
+/* 8038DE84 00389AE4 41 80 FF C4 */ blt lbl_8038DE48
+/* 8038DE88 00389AE8 48 00 00 CC */ b lbl_8038DF54
+lbl_8038DE8C:
+/* 8038DE8C 00389AEC C3 D6 00 10 */ lfs f30, 0x10(r22)
+/* 8038DE90 00389AF0 3B A0 00 00 */ li r29, 0
+/* 8038DE94 00389AF4 48 00 00 44 */ b lbl_8038DED8
+lbl_8038DE98:
+/* 8038DE98 00389AF8 80 19 00 00 */ lwz r0, 0(r25)
+/* 8038DE9C 00389AFC FC 20 F0 90 */ fmr f1, f30
+/* 8038DEA0 00389B00 7C 7B 02 14 */ add r3, r27, r0
+/* 8038DEA4 00389B04 80 03 00 08 */ lwz r0, 8(r3)
+/* 8038DEA8 00389B08 A0 83 00 04 */ lhz r4, 4(r3)
+/* 8038DEAC 00389B0C 7C 63 02 14 */ add r3, r3, r0
+/* 8038DEB0 00389B10 4B FF F8 8D */ bl GetStepCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res7StepKeyUl
+/* 8038DEB4 00389B14 54 64 04 3E */ clrlwi r4, r3, 0x10
+/* 8038DEB8 00389B18 88 17 00 B7 */ lbz r0, 0xb7(r23)
+/* 8038DEBC 00389B1C 7C 64 00 D0 */ neg r3, r4
+/* 8038DEC0 00389B20 3B 39 00 04 */ addi r25, r25, 4
+/* 8038DEC4 00389B24 7C 63 23 78 */ or r3, r3, r4
+/* 8038DEC8 00389B28 54 00 06 3C */ rlwinm r0, r0, 0, 0x18, 0x1e
+/* 8038DECC 00389B2C 50 60 0F FE */ rlwimi r0, r3, 1, 0x1f, 0x1f
+/* 8038DED0 00389B30 3B BD 00 01 */ addi r29, r29, 1
+/* 8038DED4 00389B34 98 17 00 B7 */ stb r0, 0xb7(r23)
+lbl_8038DED8:
+/* 8038DED8 00389B38 88 1B 00 04 */ lbz r0, 4(r27)
+/* 8038DEDC 00389B3C 7C 1D 00 00 */ cmpw r29, r0
+/* 8038DEE0 00389B40 41 80 FF B8 */ blt lbl_8038DE98
+/* 8038DEE4 00389B44 48 00 00 70 */ b lbl_8038DF54
+lbl_8038DEE8:
+/* 8038DEE8 00389B48 88 1B 00 04 */ lbz r0, 4(r27)
+/* 8038DEEC 00389B4C 3B A0 00 00 */ li r29, 0
+/* 8038DEF0 00389B50 C3 D6 00 10 */ lfs f30, 0x10(r22)
+/* 8038DEF4 00389B54 2C 00 00 00 */ cmpwi r0, 0
+/* 8038DEF8 00389B58 40 81 00 5C */ ble lbl_8038DF54
+/* 8038DEFC 00389B5C 48 00 00 4C */ b lbl_8038DF48
+lbl_8038DF00:
+/* 8038DF00 00389B60 80 19 00 00 */ lwz r0, 0(r25)
+/* 8038DF04 00389B64 FC 20 F0 90 */ fmr f1, f30
+/* 8038DF08 00389B68 7E BB 02 14 */ add r21, r27, r0
+/* 8038DF0C 00389B6C 80 15 00 08 */ lwz r0, 8(r21)
+/* 8038DF10 00389B70 A0 95 00 04 */ lhz r4, 4(r21)
+/* 8038DF14 00389B74 7C 75 02 14 */ add r3, r21, r0
+/* 8038DF18 00389B78 4B FF F9 0D */ bl GetHermiteCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res10HermiteKeyUl
+/* 8038DF1C 00389B7C EC 01 F8 2A */ fadds f0, f1, f31
+/* 8038DF20 00389B80 F0 01 A0 08 */ psq_st f0, 8(r1), 1, qr2
+/* 8038DF24 00389B84 7E E3 BB 78 */ mr r3, r23
+/* 8038DF28 00389B88 81 97 00 00 */ lwz r12, 0(r23)
+/* 8038DF2C 00389B8C 88 A1 00 08 */ lbz r5, 8(r1)
+/* 8038DF30 00389B90 81 8C 00 30 */ lwz r12, 0x30(r12)
+/* 8038DF34 00389B94 88 95 00 01 */ lbz r4, 1(r21)
+/* 8038DF38 00389B98 7D 89 03 A6 */ mtctr r12
+/* 8038DF3C 00389B9C 4E 80 04 21 */ bctrl
+/* 8038DF40 00389BA0 3B 39 00 04 */ addi r25, r25, 4
+/* 8038DF44 00389BA4 3B BD 00 01 */ addi r29, r29, 1
+lbl_8038DF48:
+/* 8038DF48 00389BA8 88 1B 00 04 */ lbz r0, 4(r27)
+/* 8038DF4C 00389BAC 7C 1D 00 00 */ cmpw r29, r0
+/* 8038DF50 00389BB0 41 80 FF B0 */ blt lbl_8038DF00
+lbl_8038DF54:
+/* 8038DF54 00389BB4 3B 5A 00 04 */ addi r26, r26, 4
+/* 8038DF58 00389BB8 3B 18 00 01 */ addi r24, r24, 1
+lbl_8038DF5C:
+/* 8038DF5C 00389BBC 88 1C 00 14 */ lbz r0, 0x14(r28)
+/* 8038DF60 00389BC0 7C 18 00 00 */ cmpw r24, r0
+/* 8038DF64 00389BC4 41 80 FE 9C */ blt lbl_8038DE00
+/* 8038DF68 00389BC8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0
+/* 8038DF6C 00389BCC CB E1 00 50 */ lfd f31, 0x50(r1)
+/* 8038DF70 00389BD0 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0
+/* 8038DF74 00389BD4 39 61 00 40 */ addi r11, r1, 0x40
+/* 8038DF78 00389BD8 CB C1 00 40 */ lfd f30, 0x40(r1)
+/* 8038DF7C 00389BDC 4B E3 91 E1 */ bl _restgpr_21
+/* 8038DF80 00389BE0 80 01 00 64 */ lwz r0, 0x64(r1)
+/* 8038DF84 00389BE4 7C 08 03 A6 */ mtlr r0
+/* 8038DF88 00389BE8 38 21 00 60 */ addi r1, r1, 0x60
+/* 8038DF8C 00389BEC 4E 80 00 20 */ blr
+
+.global Animate__Q34nw4r3lyt18AnimTransformBasicFUlPQ34nw4r3lyt8Material
+Animate__Q34nw4r3lyt18AnimTransformBasicFUlPQ34nw4r3lyt8Material:
+/* 8038DF90 00389BF0 94 21 FF 70 */ stwu r1, -0x90(r1)
+/* 8038DF94 00389BF4 7C 08 02 A6 */ mflr r0
+/* 8038DF98 00389BF8 90 01 00 94 */ stw r0, 0x94(r1)
+/* 8038DF9C 00389BFC DB E1 00 80 */ stfd f31, 0x80(r1)
+/* 8038DFA0 00389C00 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0
+/* 8038DFA4 00389C04 DB C1 00 70 */ stfd f30, 0x70(r1)
+/* 8038DFA8 00389C08 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0
+/* 8038DFAC 00389C0C DB A1 00 60 */ stfd f29, 0x60(r1)
+/* 8038DFB0 00389C10 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0
+/* 8038DFB4 00389C14 39 61 00 60 */ addi r11, r1, 0x60
+/* 8038DFB8 00389C18 4B E3 91 55 */ bl _savegpr_20
+/* 8038DFBC 00389C1C 80 C3 00 0C */ lwz r6, 0xc(r3)
+/* 8038DFC0 00389C20 3F E0 52 4C */ lis r31, 0x524C5450@ha
+/* 8038DFC4 00389C24 54 84 10 3A */ slwi r4, r4, 2
+/* 8038DFC8 00389C28 C3 C2 A8 FC */ lfs f30, lbl_80642EFC-_SDA2_BASE_(r2)
+/* 8038DFCC 00389C2C 80 06 00 10 */ lwz r0, 0x10(r6)
+/* 8038DFD0 00389C30 7C 74 1B 78 */ mr r20, r3
+/* 8038DFD4 00389C34 7C B5 2B 78 */ mr r21, r5
+/* 8038DFD8 00389C38 3B DF 54 50 */ addi r30, r31, 0x524C5450@l
+/* 8038DFDC 00389C3C 7C 06 02 14 */ add r0, r6, r0
+/* 8038DFE0 00389C40 3A C0 00 00 */ li r22, 0
+/* 8038DFE4 00389C44 7C 04 00 2E */ lwzx r0, r4, r0
+/* 8038DFE8 00389C48 7F 86 02 14 */ add r28, r6, r0
+/* 8038DFEC 00389C4C 3B 3C 00 18 */ addi r25, r28, 0x18
+/* 8038DFF0 00389C50 48 00 02 80 */ b lbl_8038E270
+lbl_8038DFF4:
+/* 8038DFF4 00389C54 80 19 00 00 */ lwz r0, 0(r25)
+/* 8038DFF8 00389C58 7C 7C 00 2E */ lwzx r3, r28, r0
+/* 8038DFFC 00389C5C 7F 7C 02 14 */ add r27, r28, r0
+/* 8038E000 00389C60 3B 1B 00 08 */ addi r24, r27, 8
+/* 8038E004 00389C64 7C 03 F0 00 */ cmpw r3, r30
+/* 8038E008 00389C68 41 82 01 3C */ beq lbl_8038E144
+/* 8038E00C 00389C6C 40 80 00 24 */ bge lbl_8038E030
+/* 8038E010 00389C70 38 1F 4D 43 */ addi r0, r31, 0x4d43
+/* 8038E014 00389C74 7C 03 00 00 */ cmpw r3, r0
+/* 8038E018 00389C78 41 82 00 28 */ beq lbl_8038E040
+/* 8038E01C 00389C7C 40 80 02 4C */ bge lbl_8038E268
+/* 8038E020 00389C80 38 1F 49 4D */ addi r0, r31, 0x494d
+/* 8038E024 00389C84 7C 03 00 00 */ cmpw r3, r0
+/* 8038E028 00389C88 41 82 01 CC */ beq lbl_8038E1F4
+/* 8038E02C 00389C8C 48 00 02 3C */ b lbl_8038E268
+lbl_8038E030:
+/* 8038E030 00389C90 38 1F 54 53 */ addi r0, r31, 0x5453
+/* 8038E034 00389C94 7C 03 00 00 */ cmpw r3, r0
+/* 8038E038 00389C98 41 82 00 94 */ beq lbl_8038E0CC
+/* 8038E03C 00389C9C 48 00 02 2C */ b lbl_8038E268
+lbl_8038E040:
+/* 8038E040 00389CA0 88 1B 00 04 */ lbz r0, 4(r27)
+/* 8038E044 00389CA4 3A E0 00 00 */ li r23, 0
+/* 8038E048 00389CA8 C3 F4 00 10 */ lfs f31, 0x10(r20)
+/* 8038E04C 00389CAC 2C 00 00 00 */ cmpwi r0, 0
+/* 8038E050 00389CB0 40 81 02 18 */ ble lbl_8038E268
+/* 8038E054 00389CB4 48 00 00 68 */ b lbl_8038E0BC
+lbl_8038E058:
+/* 8038E058 00389CB8 80 18 00 00 */ lwz r0, 0(r24)
+/* 8038E05C 00389CBC FC 20 F8 90 */ fmr f1, f31
+/* 8038E060 00389CC0 7F 5B 02 14 */ add r26, r27, r0
+/* 8038E064 00389CC4 80 1A 00 08 */ lwz r0, 8(r26)
+/* 8038E068 00389CC8 A0 9A 00 04 */ lhz r4, 4(r26)
+/* 8038E06C 00389CCC 7C 7A 02 14 */ add r3, r26, r0
+/* 8038E070 00389CD0 4B FF F7 B5 */ bl GetHermiteCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res10HermiteKeyUl
+/* 8038E074 00389CD4 EC 01 F0 2A */ fadds f0, f1, f30
+/* 8038E078 00389CD8 F0 01 D0 08 */ psq_st f0, 8(r1), 1, qr5
+/* 8038E07C 00389CDC 38 C0 FC 00 */ li r6, -1024
+/* 8038E080 00389CE0 A8 01 00 08 */ lha r0, 8(r1)
+/* 8038E084 00389CE4 2C 00 FC 00 */ cmpwi r0, -1024
+/* 8038E088 00389CE8 41 80 00 08 */ blt lbl_8038E090
+/* 8038E08C 00389CEC 7C 06 03 78 */ mr r6, r0
+lbl_8038E090:
+/* 8038E090 00389CF0 7C C0 07 34 */ extsh r0, r6
+/* 8038E094 00389CF4 88 9A 00 01 */ lbz r4, 1(r26)
+/* 8038E098 00389CF8 2C 00 03 FF */ cmpwi r0, 0x3ff
+/* 8038E09C 00389CFC 7E A3 AB 78 */ mr r3, r21
+/* 8038E0A0 00389D00 38 A0 03 FF */ li r5, 0x3ff
+/* 8038E0A4 00389D04 41 81 00 08 */ bgt lbl_8038E0AC
+/* 8038E0A8 00389D08 7C C5 33 78 */ mr r5, r6
+lbl_8038E0AC:
+/* 8038E0AC 00389D0C 7C A5 07 34 */ extsh r5, r5
+/* 8038E0B0 00389D10 4B FF E0 39 */ bl SetColorElement__Q34nw4r3lyt8MaterialFUls
+/* 8038E0B4 00389D14 3B 18 00 04 */ addi r24, r24, 4
+/* 8038E0B8 00389D18 3A F7 00 01 */ addi r23, r23, 1
+lbl_8038E0BC:
+/* 8038E0BC 00389D1C 88 1B 00 04 */ lbz r0, 4(r27)
+/* 8038E0C0 00389D20 7C 17 00 00 */ cmpw r23, r0
+/* 8038E0C4 00389D24 41 80 FF 94 */ blt lbl_8038E058
+/* 8038E0C8 00389D28 48 00 01 A0 */ b lbl_8038E268
+lbl_8038E0CC:
+/* 8038E0CC 00389D2C C3 B4 00 10 */ lfs f29, 0x10(r20)
+/* 8038E0D0 00389D30 3B A0 00 00 */ li r29, 0
+/* 8038E0D4 00389D34 48 00 00 60 */ b lbl_8038E134
+lbl_8038E0D8:
+/* 8038E0D8 00389D38 80 78 00 00 */ lwz r3, 0(r24)
+/* 8038E0DC 00389D3C 80 15 00 38 */ lwz r0, 0x38(r21)
+/* 8038E0E0 00389D40 7F 5B 1A 14 */ add r26, r27, r3
+/* 8038E0E4 00389D44 7C 7B 18 AE */ lbzx r3, r27, r3
+/* 8038E0E8 00389D48 54 00 47 3E */ rlwinm r0, r0, 8, 0x1c, 0x1f
+/* 8038E0EC 00389D4C 7C 03 00 40 */ cmplw r3, r0
+/* 8038E0F0 00389D50 40 80 00 3C */ bge lbl_8038E12C
+/* 8038E0F4 00389D54 80 1A 00 08 */ lwz r0, 8(r26)
+/* 8038E0F8 00389D58 FC 20 E8 90 */ fmr f1, f29
+/* 8038E0FC 00389D5C A0 9A 00 04 */ lhz r4, 4(r26)
+/* 8038E100 00389D60 7C 7A 02 14 */ add r3, r26, r0
+/* 8038E104 00389D64 4B FF F7 21 */ bl GetHermiteCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res10HermiteKeyUl
+/* 8038E108 00389D68 FF E0 08 90 */ fmr f31, f1
+/* 8038E10C 00389D6C 8A FA 00 01 */ lbz r23, 1(r26)
+/* 8038E110 00389D70 8B 5A 00 00 */ lbz r26, 0(r26)
+/* 8038E114 00389D74 7E A3 AB 78 */ mr r3, r21
+/* 8038E118 00389D78 4B FF DE 21 */ bl GetTexSRTAry__Q34nw4r3lyt8MaterialFv
+/* 8038E11C 00389D7C 1C 9A 00 14 */ mulli r4, r26, 0x14
+/* 8038E120 00389D80 56 E0 10 3A */ slwi r0, r23, 2
+/* 8038E124 00389D84 7C 63 22 14 */ add r3, r3, r4
+/* 8038E128 00389D88 7F E3 05 2E */ stfsx f31, r3, r0
+lbl_8038E12C:
+/* 8038E12C 00389D8C 3B 18 00 04 */ addi r24, r24, 4
+/* 8038E130 00389D90 3B BD 00 01 */ addi r29, r29, 1
+lbl_8038E134:
+/* 8038E134 00389D94 88 1B 00 04 */ lbz r0, 4(r27)
+/* 8038E138 00389D98 7C 1D 00 00 */ cmpw r29, r0
+/* 8038E13C 00389D9C 41 80 FF 9C */ blt lbl_8038E0D8
+/* 8038E140 00389DA0 48 00 01 28 */ b lbl_8038E268
+lbl_8038E144:
+/* 8038E144 00389DA4 82 F4 00 14 */ lwz r23, 0x14(r20)
+/* 8038E148 00389DA8 2C 17 00 00 */ cmpwi r23, 0
+/* 8038E14C 00389DAC 41 82 01 1C */ beq lbl_8038E268
+/* 8038E150 00389DB0 C3 B4 00 10 */ lfs f29, 0x10(r20)
+/* 8038E154 00389DB4 3B A0 00 00 */ li r29, 0
+/* 8038E158 00389DB8 48 00 00 8C */ b lbl_8038E1E4
+lbl_8038E15C:
+/* 8038E15C 00389DBC 80 78 00 00 */ lwz r3, 0(r24)
+/* 8038E160 00389DC0 80 15 00 3C */ lwz r0, 0x3c(r21)
+/* 8038E164 00389DC4 7F 5B 1A 14 */ add r26, r27, r3
+/* 8038E168 00389DC8 7C 7B 18 AE */ lbzx r3, r27, r3
+/* 8038E16C 00389DCC 54 00 27 3E */ srwi r0, r0, 0x1c
+/* 8038E170 00389DD0 7C 03 00 40 */ cmplw r3, r0
+/* 8038E174 00389DD4 40 80 00 68 */ bge lbl_8038E1DC
+/* 8038E178 00389DD8 88 1A 00 01 */ lbz r0, 1(r26)
+/* 8038E17C 00389DDC 2C 00 00 00 */ cmpwi r0, 0
+/* 8038E180 00389DE0 40 82 00 5C */ bne lbl_8038E1DC
+/* 8038E184 00389DE4 80 1A 00 08 */ lwz r0, 8(r26)
+/* 8038E188 00389DE8 FC 20 E8 90 */ fmr f1, f29
+/* 8038E18C 00389DEC A0 9A 00 04 */ lhz r4, 4(r26)
+/* 8038E190 00389DF0 7C 7A 02 14 */ add r3, r26, r0
+/* 8038E194 00389DF4 4B FF F5 A9 */ bl GetStepCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res7StepKeyUl
+/* 8038E198 00389DF8 7C 60 1B 78 */ mr r0, r3
+/* 8038E19C 00389DFC 38 61 00 0C */ addi r3, r1, 0xc
+/* 8038E1A0 00389E00 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d
+/* 8038E1A4 00389E04 38 A0 00 00 */ li r5, 0
+/* 8038E1A8 00389E08 7C 97 00 2E */ lwzx r4, r23, r0
+/* 8038E1AC 00389E0C 4B FF F2 E5 */ bl Set__Q34nw4r3lyt6TexMapFP10TPLPaletteUl
+/* 8038E1B0 00389E10 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8038E1B4 00389E14 7E A3 AB 78 */ mr r3, r21
+/* 8038E1B8 00389E18 54 00 04 1C */ rlwinm r0, r0, 0, 0x10, 0xe
+/* 8038E1BC 00389E1C 54 00 04 E0 */ rlwinm r0, r0, 0, 0x13, 0x10
+/* 8038E1C0 00389E20 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8038E1C4 00389E24 8B 5A 00 00 */ lbz r26, 0(r26)
+/* 8038E1C8 00389E28 4B FF DD 69 */ bl GetTexMapAry__Q34nw4r3lyt8MaterialFv
+/* 8038E1CC 00389E2C 1C 1A 00 1C */ mulli r0, r26, 0x1c
+/* 8038E1D0 00389E30 38 81 00 0C */ addi r4, r1, 0xc
+/* 8038E1D4 00389E34 7C 63 02 14 */ add r3, r3, r0
+/* 8038E1D8 00389E38 4B FF F3 49 */ bl SetNoWrap__Q34nw4r3lyt6TexMapFRCQ34nw4r3lyt6TexMap
+lbl_8038E1DC:
+/* 8038E1DC 00389E3C 3B 18 00 04 */ addi r24, r24, 4
+/* 8038E1E0 00389E40 3B BD 00 01 */ addi r29, r29, 1
+lbl_8038E1E4:
+/* 8038E1E4 00389E44 88 1B 00 04 */ lbz r0, 4(r27)
+/* 8038E1E8 00389E48 7C 1D 00 00 */ cmpw r29, r0
+/* 8038E1EC 00389E4C 41 80 FF 70 */ blt lbl_8038E15C
+/* 8038E1F0 00389E50 48 00 00 78 */ b lbl_8038E268
+lbl_8038E1F4:
+/* 8038E1F4 00389E54 C3 B4 00 10 */ lfs f29, 0x10(r20)
+/* 8038E1F8 00389E58 3B A0 00 00 */ li r29, 0
+/* 8038E1FC 00389E5C 48 00 00 60 */ b lbl_8038E25C
+lbl_8038E200:
+/* 8038E200 00389E60 80 78 00 00 */ lwz r3, 0(r24)
+/* 8038E204 00389E64 80 15 00 38 */ lwz r0, 0x38(r21)
+/* 8038E208 00389E68 7F 5B 1A 14 */ add r26, r27, r3
+/* 8038E20C 00389E6C 7C 7B 18 AE */ lbzx r3, r27, r3
+/* 8038E210 00389E70 54 00 77 BE */ rlwinm r0, r0, 0xe, 0x1e, 0x1f
+/* 8038E214 00389E74 7C 03 00 40 */ cmplw r3, r0
+/* 8038E218 00389E78 40 80 00 3C */ bge lbl_8038E254
+/* 8038E21C 00389E7C 80 1A 00 08 */ lwz r0, 8(r26)
+/* 8038E220 00389E80 FC 20 E8 90 */ fmr f1, f29
+/* 8038E224 00389E84 A0 9A 00 04 */ lhz r4, 4(r26)
+/* 8038E228 00389E88 7C 7A 02 14 */ add r3, r26, r0
+/* 8038E22C 00389E8C 4B FF F5 F9 */ bl GetHermiteCurveValue__27$2unnamed$2lyt_animation_cpp$2FfPCQ44nw4r3lyt3res10HermiteKeyUl
+/* 8038E230 00389E90 FF E0 08 90 */ fmr f31, f1
+/* 8038E234 00389E94 8A FA 00 01 */ lbz r23, 1(r26)
+/* 8038E238 00389E98 8B 5A 00 00 */ lbz r26, 0(r26)
+/* 8038E23C 00389E9C 7E A3 AB 78 */ mr r3, r21
+/* 8038E240 00389EA0 4B FF DD 35 */ bl GetIndTexSRTAry__Q34nw4r3lyt8MaterialFv
+/* 8038E244 00389EA4 1C 9A 00 14 */ mulli r4, r26, 0x14
+/* 8038E248 00389EA8 56 E0 10 3A */ slwi r0, r23, 2
+/* 8038E24C 00389EAC 7C 63 22 14 */ add r3, r3, r4
+/* 8038E250 00389EB0 7F E3 05 2E */ stfsx f31, r3, r0
+lbl_8038E254:
+/* 8038E254 00389EB4 3B 18 00 04 */ addi r24, r24, 4
+/* 8038E258 00389EB8 3B BD 00 01 */ addi r29, r29, 1
+lbl_8038E25C:
+/* 8038E25C 00389EBC 88 1B 00 04 */ lbz r0, 4(r27)
+/* 8038E260 00389EC0 7C 1D 00 00 */ cmpw r29, r0
+/* 8038E264 00389EC4 41 80 FF 9C */ blt lbl_8038E200
+lbl_8038E268:
+/* 8038E268 00389EC8 3B 39 00 04 */ addi r25, r25, 4
+/* 8038E26C 00389ECC 3A D6 00 01 */ addi r22, r22, 1
+lbl_8038E270:
+/* 8038E270 00389ED0 88 1C 00 14 */ lbz r0, 0x14(r28)
+/* 8038E274 00389ED4 7C 16 00 00 */ cmpw r22, r0
+/* 8038E278 00389ED8 41 80 FD 7C */ blt lbl_8038DFF4
+/* 8038E27C 00389EDC E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0
+/* 8038E280 00389EE0 CB E1 00 80 */ lfd f31, 0x80(r1)
+/* 8038E284 00389EE4 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0
+/* 8038E288 00389EE8 CB C1 00 70 */ lfd f30, 0x70(r1)
+/* 8038E28C 00389EEC E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0
+/* 8038E290 00389EF0 39 61 00 60 */ addi r11, r1, 0x60
+/* 8038E294 00389EF4 CB A1 00 60 */ lfd f29, 0x60(r1)
+/* 8038E298 00389EF8 4B E3 8E C1 */ bl _restgpr_20
+/* 8038E29C 00389EFC 80 01 00 94 */ lwz r0, 0x94(r1)
+/* 8038E2A0 00389F00 7C 08 03 A6 */ mtlr r0
+/* 8038E2A4 00389F04 38 21 00 90 */ addi r1, r1, 0x90
+/* 8038E2A8 00389F08 4E 80 00 20 */ blr
+
+.global FindAnimationLink__Q34nw4r3lyt6detailFPQ34nw4r2ut38LinkList$0Q34nw4r3lyt13AnimationLink$40$1PQ34nw4r3lyt13AnimTransform
+FindAnimationLink__Q34nw4r3lyt6detailFPQ34nw4r2ut38LinkList$0Q34nw4r3lyt13AnimationLink$40$1PQ34nw4r3lyt13AnimTransform:
+/* 8038E2AC 00389F0C 80 A3 00 04 */ lwz r5, 4(r3)
+/* 8038E2B0 00389F10 38 03 00 04 */ addi r0, r3, 4
+/* 8038E2B4 00389F14 48 00 00 1C */ b lbl_8038E2D0
+lbl_8038E2B8:
+/* 8038E2B8 00389F18 80 65 00 08 */ lwz r3, 8(r5)
+/* 8038E2BC 00389F1C 7C 04 18 40 */ cmplw r4, r3
+/* 8038E2C0 00389F20 40 82 00 0C */ bne lbl_8038E2CC
+/* 8038E2C4 00389F24 7C A3 2B 78 */ mr r3, r5
+/* 8038E2C8 00389F28 4E 80 00 20 */ blr
+lbl_8038E2CC:
+/* 8038E2CC 00389F2C 80 A5 00 00 */ lwz r5, 0(r5)
+lbl_8038E2D0:
+/* 8038E2D0 00389F30 7C 05 00 40 */ cmplw r5, r0
+/* 8038E2D4 00389F34 40 82 FF E4 */ bne lbl_8038E2B8
+/* 8038E2D8 00389F38 38 60 00 00 */ li r3, 0
+/* 8038E2DC 00389F3C 4E 80 00 20 */ blr
diff --git a/asm/nw4r/lyt/lyt_arcResourceAccessor.s b/asm/nw4r/lyt/lyt_arcResourceAccessor.s new file mode 100644 index 0000000..515d9d6 --- /dev/null +++ b/asm/nw4r/lyt/lyt_arcResourceAccessor.s @@ -0,0 +1,290 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global FindNameResource__37$2unnamed$2lyt_arcResourceAccessor_cpp$2FP9ARCHandlePCc
+FindNameResource__37$2unnamed$2lyt_arcResourceAccessor_cpp$2FP9ARCHandlePCc:
+/* 8038E338 00389F98 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 8038E33C 00389F9C 7C 08 02 A6 */ mflr r0
+/* 8038E340 00389FA0 90 01 00 44 */ stw r0, 0x44(r1)
+/* 8038E344 00389FA4 38 A1 00 18 */ addi r5, r1, 0x18
+/* 8038E348 00389FA8 93 E1 00 3C */ stw r31, 0x3c(r1)
+/* 8038E34C 00389FAC 3B E0 FF FF */ li r31, -1
+/* 8038E350 00389FB0 93 C1 00 38 */ stw r30, 0x38(r1)
+/* 8038E354 00389FB4 7C 9E 23 78 */ mr r30, r4
+/* 8038E358 00389FB8 38 8D 95 40 */ addi r4, r13, lbl_8063E800-_SDA_BASE_
+/* 8038E35C 00389FBC 93 A1 00 34 */ stw r29, 0x34(r1)
+/* 8038E360 00389FC0 7C 7D 1B 78 */ mr r29, r3
+/* 8038E364 00389FC4 4B F5 ED 65 */ bl func_802ED0C8
+/* 8038E368 00389FC8 48 00 00 60 */ b lbl_8038E3C8
+lbl_8038E36C:
+/* 8038E36C 00389FCC 80 01 00 10 */ lwz r0, 0x10(r1)
+/* 8038E370 00389FD0 2C 00 00 00 */ cmpwi r0, 0
+/* 8038E374 00389FD4 41 82 00 38 */ beq lbl_8038E3AC
+/* 8038E378 00389FD8 80 81 00 14 */ lwz r4, 0x14(r1)
+/* 8038E37C 00389FDC 7F A3 EB 78 */ mr r3, r29
+/* 8038E380 00389FE0 4B F5 EC F1 */ bl func_802ED070
+/* 8038E384 00389FE4 7F A3 EB 78 */ mr r3, r29
+/* 8038E388 00389FE8 7F C4 F3 78 */ mr r4, r30
+/* 8038E38C 00389FEC 4B FF FF AD */ bl FindNameResource__37$2unnamed$2lyt_arcResourceAccessor_cpp$2FP9ARCHandlePCc
+/* 8038E390 00389FF0 7C 7F 1B 78 */ mr r31, r3
+/* 8038E394 00389FF4 7F A3 EB 78 */ mr r3, r29
+/* 8038E398 00389FF8 38 8D 95 44 */ addi r4, r13, lbl_8063E804-_SDA_BASE_
+/* 8038E39C 00389FFC 4B F5 EC D5 */ bl func_802ED070
+/* 8038E3A0 0038A000 2C 1F FF FF */ cmpwi r31, -1
+/* 8038E3A4 0038A004 40 82 00 38 */ bne lbl_8038E3DC
+/* 8038E3A8 0038A008 48 00 00 20 */ b lbl_8038E3C8
+lbl_8038E3AC:
+/* 8038E3AC 0038A00C 80 81 00 14 */ lwz r4, 0x14(r1)
+/* 8038E3B0 0038A010 7F C3 F3 78 */ mr r3, r30
+/* 8038E3B4 0038A014 4B E4 26 4D */ bl func_801D0A00
+/* 8038E3B8 0038A018 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E3BC 0038A01C 40 82 00 0C */ bne lbl_8038E3C8
+/* 8038E3C0 0038A020 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8038E3C4 0038A024 48 00 00 18 */ b lbl_8038E3DC
+lbl_8038E3C8:
+/* 8038E3C8 0038A028 38 61 00 18 */ addi r3, r1, 0x18
+/* 8038E3CC 0038A02C 38 81 00 08 */ addi r4, r1, 8
+/* 8038E3D0 0038A030 4B F5 ED 75 */ bl func_802ED144
+/* 8038E3D4 0038A034 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E3D8 0038A038 40 82 FF 94 */ bne lbl_8038E36C
+lbl_8038E3DC:
+/* 8038E3DC 0038A03C 38 61 00 18 */ addi r3, r1, 0x18
+/* 8038E3E0 0038A040 4B F5 EE 1D */ bl func_802ED1FC
+/* 8038E3E4 0038A044 7F E3 FB 78 */ mr r3, r31
+/* 8038E3E8 0038A048 83 E1 00 3C */ lwz r31, 0x3c(r1)
+/* 8038E3EC 0038A04C 83 C1 00 38 */ lwz r30, 0x38(r1)
+/* 8038E3F0 0038A050 83 A1 00 34 */ lwz r29, 0x34(r1)
+/* 8038E3F4 0038A054 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 8038E3F8 0038A058 7C 08 03 A6 */ mtlr r0
+/* 8038E3FC 0038A05C 38 21 00 40 */ addi r1, r1, 0x40
+/* 8038E400 0038A060 4E 80 00 20 */ blr
+
+.global GetResourceSub__37$2unnamed$2lyt_arcResourceAccessor_cpp$2FP9ARCHandlePCcUlPCcPUl
+GetResourceSub__37$2unnamed$2lyt_arcResourceAccessor_cpp$2FP9ARCHandlePCcUlPCcPUl:
+/* 8038E404 0038A064 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 8038E408 0038A068 7C 08 02 A6 */ mflr r0
+/* 8038E40C 0038A06C 90 01 00 44 */ stw r0, 0x44(r1)
+/* 8038E410 0038A070 39 61 00 40 */ addi r11, r1, 0x40
+/* 8038E414 0038A074 4B E3 8D 11 */ bl _savegpr_26
+/* 8038E418 0038A078 7C 7A 1B 78 */ mr r26, r3
+/* 8038E41C 0038A07C 7C 9B 23 78 */ mr r27, r4
+/* 8038E420 0038A080 7C BC 2B 78 */ mr r28, r5
+/* 8038E424 0038A084 7C DD 33 78 */ mr r29, r6
+/* 8038E428 0038A088 7C FE 3B 78 */ mr r30, r7
+/* 8038E42C 0038A08C 3B E0 FF FF */ li r31, -1
+/* 8038E430 0038A090 4B F5 E9 B9 */ bl func_802ECDE8
+/* 8038E434 0038A094 2C 03 FF FF */ cmpwi r3, -1
+/* 8038E438 0038A098 41 82 00 A8 */ beq lbl_8038E4E0
+/* 8038E43C 0038A09C 7F 43 D3 78 */ mr r3, r26
+/* 8038E440 0038A0A0 7F 64 DB 78 */ mr r4, r27
+/* 8038E444 0038A0A4 4B F5 EC 2D */ bl func_802ED070
+/* 8038E448 0038A0A8 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E44C 0038A0AC 41 82 00 94 */ beq lbl_8038E4E0
+/* 8038E450 0038A0B0 2C 1C 00 00 */ cmpwi r28, 0
+/* 8038E454 0038A0B4 40 82 00 18 */ bne lbl_8038E46C
+/* 8038E458 0038A0B8 7F 43 D3 78 */ mr r3, r26
+/* 8038E45C 0038A0BC 7F A4 EB 78 */ mr r4, r29
+/* 8038E460 0038A0C0 4B FF FE D9 */ bl FindNameResource__37$2unnamed$2lyt_arcResourceAccessor_cpp$2FP9ARCHandlePCc
+/* 8038E464 0038A0C4 7C 7F 1B 78 */ mr r31, r3
+/* 8038E468 0038A0C8 48 00 00 6C */ b lbl_8038E4D4
+lbl_8038E46C:
+/* 8038E46C 0038A0CC 57 83 46 3E */ srwi r3, r28, 0x18
+/* 8038E470 0038A0D0 57 86 84 3E */ srwi r6, r28, 0x10
+/* 8038E474 0038A0D4 57 85 C2 3E */ srwi r5, r28, 8
+/* 8038E478 0038A0D8 38 00 00 00 */ li r0, 0
+/* 8038E47C 0038A0DC 98 61 00 08 */ stb r3, 8(r1)
+/* 8038E480 0038A0E0 7F 43 D3 78 */ mr r3, r26
+/* 8038E484 0038A0E4 38 81 00 08 */ addi r4, r1, 8
+/* 8038E488 0038A0E8 98 C1 00 09 */ stb r6, 9(r1)
+/* 8038E48C 0038A0EC 98 A1 00 0A */ stb r5, 0xa(r1)
+/* 8038E490 0038A0F0 9B 81 00 0B */ stb r28, 0xb(r1)
+/* 8038E494 0038A0F4 98 01 00 0C */ stb r0, 0xc(r1)
+/* 8038E498 0038A0F8 4B F5 E9 51 */ bl func_802ECDE8
+/* 8038E49C 0038A0FC 2C 03 FF FF */ cmpwi r3, -1
+/* 8038E4A0 0038A100 41 82 00 34 */ beq lbl_8038E4D4
+/* 8038E4A4 0038A104 7F 43 D3 78 */ mr r3, r26
+/* 8038E4A8 0038A108 38 81 00 08 */ addi r4, r1, 8
+/* 8038E4AC 0038A10C 4B F5 EB C5 */ bl func_802ED070
+/* 8038E4B0 0038A110 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E4B4 0038A114 41 82 00 20 */ beq lbl_8038E4D4
+/* 8038E4B8 0038A118 7F 43 D3 78 */ mr r3, r26
+/* 8038E4BC 0038A11C 7F A4 EB 78 */ mr r4, r29
+/* 8038E4C0 0038A120 4B F5 E9 29 */ bl func_802ECDE8
+/* 8038E4C4 0038A124 7C 7F 1B 78 */ mr r31, r3
+/* 8038E4C8 0038A128 7F 43 D3 78 */ mr r3, r26
+/* 8038E4CC 0038A12C 38 8D 95 44 */ addi r4, r13, lbl_8063E804-_SDA_BASE_
+/* 8038E4D0 0038A130 4B F5 EB A1 */ bl func_802ED070
+lbl_8038E4D4:
+/* 8038E4D4 0038A134 7F 43 D3 78 */ mr r3, r26
+/* 8038E4D8 0038A138 38 8D 95 44 */ addi r4, r13, lbl_8063E804-_SDA_BASE_
+/* 8038E4DC 0038A13C 4B F5 EB 95 */ bl func_802ED070
+lbl_8038E4E0:
+/* 8038E4E0 0038A140 2C 1F FF FF */ cmpwi r31, -1
+/* 8038E4E4 0038A144 41 82 00 44 */ beq lbl_8038E528
+/* 8038E4E8 0038A148 7F 43 D3 78 */ mr r3, r26
+/* 8038E4EC 0038A14C 7F E4 FB 78 */ mr r4, r31
+/* 8038E4F0 0038A150 38 A1 00 10 */ addi r5, r1, 0x10
+/* 8038E4F4 0038A154 4B F5 E8 A5 */ bl func_802ECD98
+/* 8038E4F8 0038A158 38 61 00 10 */ addi r3, r1, 0x10
+/* 8038E4FC 0038A15C 4B F5 EB 51 */ bl func_802ED04C
+/* 8038E500 0038A160 2C 1E 00 00 */ cmpwi r30, 0
+/* 8038E504 0038A164 7C 7F 1B 78 */ mr r31, r3
+/* 8038E508 0038A168 41 82 00 10 */ beq lbl_8038E518
+/* 8038E50C 0038A16C 38 61 00 10 */ addi r3, r1, 0x10
+/* 8038E510 0038A170 4B F5 EB 51 */ bl func_802ED060
+/* 8038E514 0038A174 90 7E 00 00 */ stw r3, 0(r30)
+lbl_8038E518:
+/* 8038E518 0038A178 38 61 00 10 */ addi r3, r1, 0x10
+/* 8038E51C 0038A17C 4B F5 EB 4D */ bl func_802ED068
+/* 8038E520 0038A180 7F E3 FB 78 */ mr r3, r31
+/* 8038E524 0038A184 48 00 00 08 */ b lbl_8038E52C
+lbl_8038E528:
+/* 8038E528 0038A188 38 60 00 00 */ li r3, 0
+lbl_8038E52C:
+/* 8038E52C 0038A18C 39 61 00 40 */ addi r11, r1, 0x40
+/* 8038E530 0038A190 4B E3 8C 41 */ bl _restgpr_26
+/* 8038E534 0038A194 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 8038E538 0038A198 7C 08 03 A6 */ mtlr r0
+/* 8038E53C 0038A19C 38 21 00 40 */ addi r1, r1, 0x40
+/* 8038E540 0038A1A0 4E 80 00 20 */ blr
+
+.global __ct__Q34nw4r3lyt19ArcResourceAccessorFv
+__ct__Q34nw4r3lyt19ArcResourceAccessorFv:
+/* 8038E544 0038A1A4 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8038E548 0038A1A8 7C 08 02 A6 */ mflr r0
+/* 8038E54C 0038A1AC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038E550 0038A1B0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8038E554 0038A1B4 7C 7F 1B 78 */ mr r31, r3
+/* 8038E558 0038A1B8 4B FF FD C9 */ bl __ct__Q34nw4r3lyt16ResourceAccessorFv
+/* 8038E55C 0038A1BC 38 00 00 00 */ li r0, 0
+/* 8038E560 0038A1C0 3C 80 80 45 */ lis r4, lbl_8044E598@ha
+/* 8038E564 0038A1C4 90 1F 00 28 */ stw r0, 0x28(r31)
+/* 8038E568 0038A1C8 38 BF 00 28 */ addi r5, r31, 0x28
+/* 8038E56C 0038A1CC 38 84 E5 98 */ addi r4, r4, lbl_8044E598@l
+/* 8038E570 0038A1D0 7F E3 FB 78 */ mr r3, r31
+/* 8038E574 0038A1D4 90 1F 00 2C */ stw r0, 0x2c(r31)
+/* 8038E578 0038A1D8 90 9F 00 00 */ stw r4, 0(r31)
+/* 8038E57C 0038A1DC 90 1F 00 20 */ stw r0, 0x20(r31)
+/* 8038E580 0038A1E0 90 1F 00 24 */ stw r0, 0x24(r31)
+/* 8038E584 0038A1E4 90 BF 00 28 */ stw r5, 0x28(r31)
+/* 8038E588 0038A1E8 90 BF 00 2C */ stw r5, 0x2c(r31)
+/* 8038E58C 0038A1EC 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8038E590 0038A1F0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8038E594 0038A1F4 7C 08 03 A6 */ mtlr r0
+/* 8038E598 0038A1F8 38 21 00 10 */ addi r1, r1, 0x10
+/* 8038E59C 0038A1FC 4E 80 00 20 */ blr
+
+.global Attach__Q34nw4r3lyt19ArcResourceAccessorFPvPCc
+Attach__Q34nw4r3lyt19ArcResourceAccessorFPvPCc:
+/* 8038E5A0 0038A200 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038E5A4 0038A204 7C 08 02 A6 */ mflr r0
+/* 8038E5A8 0038A208 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8038E5AC 0038A20C 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8038E5B0 0038A210 7C BF 2B 78 */ mr r31, r5
+/* 8038E5B4 0038A214 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8038E5B8 0038A218 7C 9E 23 78 */ mr r30, r4
+/* 8038E5BC 0038A21C 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8038E5C0 0038A220 7C 7D 1B 78 */ mr r29, r3
+/* 8038E5C4 0038A224 7F C3 F3 78 */ mr r3, r30
+/* 8038E5C8 0038A228 38 9D 00 04 */ addi r4, r29, 4
+/* 8038E5CC 0038A22C 4B F5 E7 2D */ bl func_802ECCF8
+/* 8038E5D0 0038A230 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E5D4 0038A234 40 82 00 0C */ bne lbl_8038E5E0
+/* 8038E5D8 0038A238 38 60 00 00 */ li r3, 0
+/* 8038E5DC 0038A23C 48 00 00 24 */ b lbl_8038E600
+lbl_8038E5E0:
+/* 8038E5E0 0038A240 93 DD 00 20 */ stw r30, 0x20(r29)
+/* 8038E5E4 0038A244 7F E4 FB 78 */ mr r4, r31
+/* 8038E5E8 0038A248 38 7D 00 30 */ addi r3, r29, 0x30
+/* 8038E5EC 0038A24C 38 A0 00 7F */ li r5, 0x7f
+/* 8038E5F0 0038A250 4B E3 FD A1 */ bl strncpy
+/* 8038E5F4 0038A254 38 00 00 00 */ li r0, 0
+/* 8038E5F8 0038A258 38 60 00 01 */ li r3, 1
+/* 8038E5FC 0038A25C 98 1D 00 AF */ stb r0, 0xaf(r29)
+lbl_8038E600:
+/* 8038E600 0038A260 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8038E604 0038A264 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8038E608 0038A268 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8038E60C 0038A26C 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8038E610 0038A270 7C 08 03 A6 */ mtlr r0
+/* 8038E614 0038A274 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038E618 0038A278 4E 80 00 20 */ blr
+
+.global GetResource__Q34nw4r3lyt19ArcResourceAccessorFUlPCcPUl
+GetResource__Q34nw4r3lyt19ArcResourceAccessorFUlPCcPUl:
+/* 8038E61C 0038A27C 7C 88 23 78 */ mr r8, r4
+/* 8038E620 0038A280 7C A0 2B 78 */ mr r0, r5
+/* 8038E624 0038A284 7C C7 33 78 */ mr r7, r6
+/* 8038E628 0038A288 38 83 00 30 */ addi r4, r3, 0x30
+/* 8038E62C 0038A28C 7D 05 43 78 */ mr r5, r8
+/* 8038E630 0038A290 7C 06 03 78 */ mr r6, r0
+/* 8038E634 0038A294 38 63 00 04 */ addi r3, r3, 4
+/* 8038E638 0038A298 4B FF FD CC */ b GetResourceSub__37$2unnamed$2lyt_arcResourceAccessor_cpp$2FP9ARCHandlePCcUlPCcPUl
+
+.global GetFont__Q34nw4r3lyt19ArcResourceAccessorFPCc
+GetFont__Q34nw4r3lyt19ArcResourceAccessorFPCc:
+/* 8038E63C 0038A29C 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038E640 0038A2A0 7C 08 02 A6 */ mflr r0
+/* 8038E644 0038A2A4 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8038E648 0038A2A8 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8038E64C 0038A2AC 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8038E650 0038A2B0 3B C3 00 28 */ addi r30, r3, 0x28
+/* 8038E654 0038A2B4 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8038E658 0038A2B8 7C 9D 23 78 */ mr r29, r4
+/* 8038E65C 0038A2BC 83 E3 00 28 */ lwz r31, 0x28(r3)
+/* 8038E660 0038A2C0 48 00 00 24 */ b lbl_8038E684
+lbl_8038E664:
+/* 8038E664 0038A2C4 7F A3 EB 78 */ mr r3, r29
+/* 8038E668 0038A2C8 38 9F 00 08 */ addi r4, r31, 8
+/* 8038E66C 0038A2CC 4B E3 FD E1 */ bl strcmp
+/* 8038E670 0038A2D0 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E674 0038A2D4 40 82 00 0C */ bne lbl_8038E680
+/* 8038E678 0038A2D8 80 7F 00 88 */ lwz r3, 0x88(r31)
+/* 8038E67C 0038A2DC 48 00 00 14 */ b lbl_8038E690
+lbl_8038E680:
+/* 8038E680 0038A2E0 83 FF 00 00 */ lwz r31, 0(r31)
+lbl_8038E684:
+/* 8038E684 0038A2E4 7C 1F F0 40 */ cmplw r31, r30
+/* 8038E688 0038A2E8 40 82 FF DC */ bne lbl_8038E664
+/* 8038E68C 0038A2EC 38 60 00 00 */ li r3, 0
+lbl_8038E690:
+/* 8038E690 0038A2F0 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8038E694 0038A2F4 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8038E698 0038A2F8 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8038E69C 0038A2FC 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8038E6A0 0038A300 7C 08 03 A6 */ mtlr r0
+/* 8038E6A4 0038A304 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038E6A8 0038A308 4E 80 00 20 */ blr
+
+.global __dt__Q34nw4r3lyt19ArcResourceAccessorFv
+__dt__Q34nw4r3lyt19ArcResourceAccessorFv:
+/* 8038E6AC 0038A30C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8038E6B0 0038A310 7C 08 02 A6 */ mflr r0
+/* 8038E6B4 0038A314 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E6B8 0038A318 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038E6BC 0038A31C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8038E6C0 0038A320 7C 9F 23 78 */ mr r31, r4
+/* 8038E6C4 0038A324 93 C1 00 08 */ stw r30, 8(r1)
+/* 8038E6C8 0038A328 7C 7E 1B 78 */ mr r30, r3
+/* 8038E6CC 0038A32C 41 82 00 30 */ beq lbl_8038E6FC
+/* 8038E6D0 0038A330 34 63 00 24 */ addic. r3, r3, 0x24
+/* 8038E6D4 0038A334 41 82 00 0C */ beq lbl_8038E6E0
+/* 8038E6D8 0038A338 38 80 00 00 */ li r4, 0
+/* 8038E6DC 0038A33C 4B FD 44 5D */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv
+lbl_8038E6E0:
+/* 8038E6E0 0038A340 7F C3 F3 78 */ mr r3, r30
+/* 8038E6E4 0038A344 38 80 00 00 */ li r4, 0
+/* 8038E6E8 0038A348 4B FF FB F9 */ bl __dt__Q34nw4r3lyt16ResourceAccessorFv
+/* 8038E6EC 0038A34C 2C 1F 00 00 */ cmpwi r31, 0
+/* 8038E6F0 0038A350 40 81 00 0C */ ble lbl_8038E6FC
+/* 8038E6F4 0038A354 7F C3 F3 78 */ mr r3, r30
+/* 8038E6F8 0038A358 4B E4 C3 C1 */ bl func_801DAAB8
+lbl_8038E6FC:
+/* 8038E6FC 0038A35C 7F C3 F3 78 */ mr r3, r30
+/* 8038E700 0038A360 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8038E704 0038A364 83 C1 00 08 */ lwz r30, 8(r1)
+/* 8038E708 0038A368 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8038E70C 0038A36C 7C 08 03 A6 */ mtlr r0
+/* 8038E710 0038A370 38 21 00 10 */ addi r1, r1, 0x10
+/* 8038E714 0038A374 4E 80 00 20 */ blr
diff --git a/asm/nw4r/lyt/lyt_drawInfo.s b/asm/nw4r/lyt/lyt_drawInfo.s new file mode 100644 index 0000000..fde2b45 --- /dev/null +++ b/asm/nw4r/lyt/lyt_drawInfo.s @@ -0,0 +1,55 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __ct__Q34nw4r3lyt8DrawInfoFv
+__ct__Q34nw4r3lyt8DrawInfoFv:
+/* 8038D688 003892E8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8038D68C 003892EC 7C 08 02 A6 */ mflr r0
+/* 8038D690 003892F0 3C 80 80 45 */ lis r4, lbl_8044E550@ha
+/* 8038D694 003892F4 C0 22 A8 D8 */ lfs f1, lbl_80642ED8-_SDA2_BASE_(r2)
+/* 8038D698 003892F8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038D69C 003892FC 38 84 E5 50 */ addi r4, r4, lbl_8044E550@l
+/* 8038D6A0 00389300 C0 02 A8 DC */ lfs f0, lbl_80642EDC-_SDA2_BASE_(r2)
+/* 8038D6A4 00389304 38 A0 00 01 */ li r5, 1
+/* 8038D6A8 00389308 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8038D6AC 0038930C 7C 7F 1B 78 */ mr r31, r3
+/* 8038D6B0 00389310 90 83 00 00 */ stw r4, 0(r3)
+/* 8038D6B4 00389314 38 80 00 00 */ li r4, 0
+/* 8038D6B8 00389318 D0 23 00 34 */ stfs f1, 0x34(r3)
+/* 8038D6BC 0038931C D0 23 00 38 */ stfs f1, 0x38(r3)
+/* 8038D6C0 00389320 D0 23 00 3C */ stfs f1, 0x3c(r3)
+/* 8038D6C4 00389324 D0 23 00 40 */ stfs f1, 0x40(r3)
+/* 8038D6C8 00389328 D0 03 00 44 */ stfs f0, 0x44(r3)
+/* 8038D6CC 0038932C D0 03 00 48 */ stfs f0, 0x48(r3)
+/* 8038D6D0 00389330 D0 03 00 4C */ stfs f0, 0x4c(r3)
+/* 8038D6D4 00389334 38 63 00 50 */ addi r3, r3, 0x50
+/* 8038D6D8 00389338 4B C7 6A 2D */ bl memset
+/* 8038D6DC 0038933C 38 7F 00 04 */ addi r3, r31, 4
+/* 8038D6E0 00389340 4B EE E8 4D */ bl func_8027BF2C
+/* 8038D6E4 00389344 7F E3 FB 78 */ mr r3, r31
+/* 8038D6E8 00389348 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8038D6EC 0038934C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8038D6F0 00389350 7C 08 03 A6 */ mtlr r0
+/* 8038D6F4 00389354 38 21 00 10 */ addi r1, r1, 0x10
+/* 8038D6F8 00389358 4E 80 00 20 */ blr
+
+.global __dt__Q34nw4r3lyt8DrawInfoFv
+__dt__Q34nw4r3lyt8DrawInfoFv:
+/* 8038D6FC 0038935C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8038D700 00389360 7C 08 02 A6 */ mflr r0
+/* 8038D704 00389364 2C 03 00 00 */ cmpwi r3, 0
+/* 8038D708 00389368 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038D70C 0038936C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8038D710 00389370 7C 7F 1B 78 */ mr r31, r3
+/* 8038D714 00389374 41 82 00 10 */ beq lbl_8038D724
+/* 8038D718 00389378 2C 04 00 00 */ cmpwi r4, 0
+/* 8038D71C 0038937C 40 81 00 08 */ ble lbl_8038D724
+/* 8038D720 00389380 4B E4 D3 99 */ bl func_801DAAB8
+lbl_8038D724:
+/* 8038D724 00389384 7F E3 FB 78 */ mr r3, r31
+/* 8038D728 00389388 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8038D72C 0038938C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8038D730 00389390 7C 08 03 A6 */ mtlr r0
+/* 8038D734 00389394 38 21 00 10 */ addi r1, r1, 0x10
+/* 8038D738 00389398 4E 80 00 20 */ blr
diff --git a/asm/nw4r/lyt/lyt_group.s b/asm/nw4r/lyt/lyt_group.s index 2f34a5e..ecaa918 100644 --- a/asm/nw4r/lyt/lyt_group.s +++ b/asm/nw4r/lyt/lyt_group.s @@ -28,7 +28,7 @@ __ct__Q34nw4r3lyt5GroupFPCQ44nw4r3lyt3res5GroupPQ34nw4r3lyt4Pane: /* 80385E74 00381AD4 90 E3 00 14 */ stw r7, 0x14(r3)
/* 80385E78 00381AD8 9B C3 00 29 */ stb r30, 0x29(r3)
/* 80385E7C 00381ADC 38 63 00 18 */ addi r3, r3, 0x18
-/* 80385E80 00381AE0 4B E4 85 11 */ bl func_801CE390
+/* 80385E80 00381AE0 4B E4 85 11 */ bl strncpy
/* 80385E84 00381AE4 9B D8 00 28 */ stb r30, 0x28(r24)
/* 80385E88 00381AE8 3B 99 00 1C */ addi r28, r25, 0x1c
/* 80385E8C 00381AEC 3B 60 00 00 */ li r27, 0
@@ -213,7 +213,7 @@ lbl_803860F4: /* 803860F4 00381D54 3B BF FF FC */ addi r29, r31, -4
/* 803860F8 00381D58 7F 84 E3 78 */ mr r4, r28
/* 803860FC 00381D5C 38 7D 00 18 */ addi r3, r29, 0x18
-/* 80386100 00381D60 4B E4 83 4D */ bl func_801CE44C
+/* 80386100 00381D60 4B E4 83 4D */ bl strcmp
/* 80386104 00381D64 2C 03 00 00 */ cmpwi r3, 0
/* 80386108 00381D68 40 82 00 0C */ bne lbl_80386114
/* 8038610C 00381D6C 7F A3 EB 78 */ mr r3, r29
diff --git a/asm/nw4r/lyt/lyt_layout.s b/asm/nw4r/lyt/lyt_layout.s index ce5fa50..3ffcb2d 100644 --- a/asm/nw4r/lyt/lyt_layout.s +++ b/asm/nw4r/lyt/lyt_layout.s @@ -248,7 +248,7 @@ Build__Q34nw4r3lyt6LayoutFPCvPQ34nw4r3lyt16ResourceAccessor: /* 80386460 003820C0 7C AE 2B 78 */ mr r14, r5
/* 80386464 003820C4 38 84 59 54 */ addi r4, r4, 0x524C5954@l
/* 80386468 003820C8 7F E3 FB 78 */ mr r3, r31
-/* 8038646C 003820CC 48 00 82 D5 */ bl func_8038E740
+/* 8038646C 003820CC 48 00 82 D5 */ bl TestFileHeader__Q34nw4r3lyt6detailFRCQ44nw4r3lyt3res16BinaryFileHeaderUl
/* 80386470 003820D0 2C 03 00 00 */ cmpwi r3, 0
/* 80386474 003820D4 40 82 00 0C */ bne lbl_80386480
/* 80386478 003820D8 38 60 00 00 */ li r3, 0
@@ -469,7 +469,7 @@ CreateAnimTransform__Q34nw4r3lyt6LayoutFPCvPQ34nw4r3lyt16ResourceAccessor: /* 80386758 003823B8 7C 79 1B 78 */ mr r25, r3
/* 8038675C 003823BC 7C BA 2B 78 */ mr r26, r5
/* 80386760 003823C0 7F C3 F3 78 */ mr r3, r30
-/* 80386764 003823C4 48 00 7F B5 */ bl func_8038E718
+/* 80386764 003823C4 48 00 7F B5 */ bl TestFileHeader__Q34nw4r3lyt6detailFRCQ44nw4r3lyt3res16BinaryFileHeader
/* 80386768 003823C8 2C 03 00 00 */ cmpwi r3, 0
/* 8038676C 003823CC 40 82 00 0C */ bne lbl_80386778
/* 80386770 003823D0 38 60 00 00 */ li r3, 0
@@ -529,7 +529,7 @@ lbl_8038681C: /* 8038682C 0038248C 41 82 00 18 */ beq lbl_80386844
/* 80386830 00382490 7C 77 1B 78 */ mr r23, r3
/* 80386834 00382494 41 82 00 14 */ beq lbl_80386848
-/* 80386838 00382498 48 00 71 B5 */ bl func_8038D9EC
+/* 80386838 00382498 48 00 71 B5 */ bl __ct__Q34nw4r3lyt18AnimTransformBasicFv
/* 8038683C 0038249C 7C 77 1B 78 */ mr r23, r3
/* 80386840 003824A0 48 00 00 08 */ b lbl_80386848
lbl_80386844:
diff --git a/asm/nw4r/lyt/lyt_material.s b/asm/nw4r/lyt/lyt_material.s index c8def6b..5e17f57 100644 --- a/asm/nw4r/lyt/lyt_material.s +++ b/asm/nw4r/lyt/lyt_material.s @@ -263,7 +263,7 @@ __ct__Q34nw4r3lyt8MaterialFPCQ44nw4r3lyt3res8MaterialRCQ34nw4r3lyt11ResBlockSet: /* 8038A7AC 0038640C 90 0F 00 3C */ stw r0, 0x3c(r15)
/* 8038A7B0 00386410 99 CF 00 59 */ stb r14, 0x59(r15)
/* 8038A7B4 00386414 91 CF 00 40 */ stw r14, 0x40(r15)
-/* 8038A7B8 00386418 4B E4 3B D9 */ bl func_801CE390
+/* 8038A7B8 00386418 4B E4 3B D9 */ bl strncpy
/* 8038A7BC 0038641C 80 90 00 3C */ lwz r4, 0x3c(r16)
/* 8038A7C0 00386420 3A F0 00 40 */ addi r23, r16, 0x40
/* 8038A7C4 00386424 AB B0 00 14 */ lha r29, 0x14(r16)
@@ -442,7 +442,7 @@ lbl_8038AA18: /* 8038AA4C 003866AC 7C 64 1B 78 */ mr r4, r3
/* 8038AA50 003866B0 38 61 00 18 */ addi r3, r1, 0x18
/* 8038AA54 003866B4 38 A0 00 00 */ li r5, 0
-/* 8038AA58 003866B8 48 00 2A 39 */ bl func_8038D490
+/* 8038AA58 003866B8 48 00 2A 39 */ bl Set__Q34nw4r3lyt6TexMapFP10TPLPaletteUl
/* 8038AA5C 003866BC 80 61 00 30 */ lwz r3, 0x30(r1)
/* 8038AA60 003866C0 56 40 06 3E */ clrlwi r0, r18, 0x18
/* 8038AA64 003866C4 1F 20 00 1C */ mulli r25, r0, 0x1c
@@ -452,7 +452,7 @@ lbl_8038AA18: /* 8038AA74 003866D4 90 01 00 30 */ stw r0, 0x30(r1)
/* 8038AA78 003866D8 80 0F 00 40 */ lwz r0, 0x40(r15)
/* 8038AA7C 003866DC 7C 60 CA 14 */ add r3, r0, r25
-/* 8038AA80 003866E0 48 00 2A A1 */ bl func_8038D520
+/* 8038AA80 003866E0 48 00 2A A1 */ bl SetNoWrap__Q34nw4r3lyt6TexMapFRCQ34nw4r3lyt6TexMap
/* 8038AA84 003866E4 88 7A 00 02 */ lbz r3, 2(r26)
/* 8038AA88 003866E8 7C 93 CA 14 */ add r4, r19, r25
/* 8038AA8C 003866EC 80 04 00 18 */ lwz r0, 0x18(r4)
@@ -2232,7 +2232,7 @@ lbl_8038C45C: /* 8038C464 003880C4 38 61 00 24 */ addi r3, r1, 0x24
/* 8038C468 003880C8 38 81 00 28 */ addi r4, r1, 0x28
/* 8038C46C 003880CC 90 01 00 28 */ stw r0, 0x28(r1)
-/* 8038C470 003880D0 48 00 25 CD */ bl func_8038EA3C
+/* 8038C470 003880D0 48 00 25 CD */ bl MultipleAlpha__Q34nw4r3lyt6detailFQ34nw4r2ut5ColorUc
/* 8038C474 003880D4 88 E1 00 24 */ lbz r7, 0x24(r1)
/* 8038C478 003880D8 38 81 00 20 */ addi r4, r1, 0x20
/* 8038C47C 003880DC 88 C1 00 25 */ lbz r6, 0x25(r1)
@@ -2362,7 +2362,7 @@ lbl_8038C624: lbl_8038C644:
/* 8038C644 003882A4 7F 03 C3 78 */ mr r3, r24
/* 8038C648 003882A8 38 81 00 80 */ addi r4, r1, 0x80
-/* 8038C64C 003882AC 48 00 0D 3D */ bl func_8038D388
+/* 8038C64C 003882AC 48 00 0D 3D */ bl Get__Q34nw4r3lyt6TexMapCFP9_GXTexObj
/* 8038C650 003882B0 80 18 00 18 */ lwz r0, 0x18(r24)
/* 8038C654 003882B4 54 03 27 3E */ srwi r3, r0, 0x1c
/* 8038C658 003882B8 38 03 FF F8 */ addi r0, r3, -8
@@ -2382,7 +2382,7 @@ lbl_8038C680: /* 8038C688 003882E8 4B EF 63 B5 */ bl func_80282A3C
/* 8038C68C 003882EC 7F 03 C3 78 */ mr r3, r24
/* 8038C690 003882F0 38 81 00 50 */ addi r4, r1, 0x50
-/* 8038C694 003882F4 48 00 0D E1 */ bl func_8038D474
+/* 8038C694 003882F4 48 00 0D E1 */ bl Get__Q34nw4r3lyt6TexMapCFP10_GXTlutObj
/* 8038C698 003882F8 7F 84 E3 78 */ mr r4, r28
/* 8038C69C 003882FC 38 61 00 50 */ addi r3, r1, 0x50
/* 8038C6A0 00388300 4B EF 65 A1 */ bl func_80282C40
@@ -3225,7 +3225,7 @@ AddAnimationLink__Q34nw4r3lyt8MaterialFPQ34nw4r3lyt13AnimationLink: .global FindAnimationLink__Q34nw4r3lyt8MaterialFPQ34nw4r3lyt13AnimTransform
FindAnimationLink__Q34nw4r3lyt8MaterialFPQ34nw4r3lyt13AnimTransform:
/* 8038D2C4 00388F24 38 63 00 04 */ addi r3, r3, 4
-/* 8038D2C8 00388F28 48 00 0F E4 */ b func_8038E2AC
+/* 8038D2C8 00388F28 48 00 0F E4 */ b FindAnimationLink__Q34nw4r3lyt6detailFPQ34nw4r2ut38LinkList$0Q34nw4r3lyt13AnimationLink$40$1PQ34nw4r3lyt13AnimTransform
.global SetAnimationEnable__Q34nw4r3lyt8MaterialFPQ34nw4r3lyt13AnimTransformb
SetAnimationEnable__Q34nw4r3lyt8MaterialFPQ34nw4r3lyt13AnimTransformb:
diff --git a/asm/nw4r/lyt/lyt_pane.s b/asm/nw4r/lyt/lyt_pane.s index 1248afd..a655150 100644 --- a/asm/nw4r/lyt/lyt_pane.s +++ b/asm/nw4r/lyt/lyt_pane.s @@ -41,12 +41,12 @@ __ct__Q34nw4r3lyt4PaneFPCQ44nw4r3lyt3res4Pane: /* 80384FD4 00380C34 9B E3 00 D2 */ stb r31, 0xd2(r3)
/* 80384FD8 00380C38 98 03 00 B6 */ stb r0, 0xb6(r3)
/* 80384FDC 00380C3C 38 63 00 B8 */ addi r3, r3, 0xb8
-/* 80384FE0 00380C40 4B E4 93 B1 */ bl func_801CE390
+/* 80384FE0 00380C40 4B E4 93 B1 */ bl strncpy
/* 80384FE4 00380C44 9B FD 00 C8 */ stb r31, 0xc8(r29)
/* 80384FE8 00380C48 38 7D 00 C9 */ addi r3, r29, 0xc9
/* 80384FEC 00380C4C 38 9E 00 1C */ addi r4, r30, 0x1c
/* 80384FF0 00380C50 38 A0 00 08 */ li r5, 8
-/* 80384FF4 00380C54 4B E4 93 9D */ bl func_801CE390
+/* 80384FF4 00380C54 4B E4 93 9D */ bl strncpy
/* 80384FF8 00380C58 88 9E 00 0A */ lbz r4, 0xa(r30)
/* 80384FFC 00380C5C 7F A3 EB 78 */ mr r3, r29
/* 80385000 00380C60 C1 3E 00 24 */ lfs f9, 0x24(r30)
@@ -304,7 +304,7 @@ FindPaneByName__Q34nw4r3lyt4PaneFPCcb: /* 8038534C 00380FAC 93 81 00 10 */ stw r28, 0x10(r1)
/* 80385350 00380FB0 7C 7C 1B 78 */ mr r28, r3
/* 80385354 00380FB4 38 63 00 B8 */ addi r3, r3, 0xb8
-/* 80385358 00380FB8 4B E4 90 F5 */ bl func_801CE44C
+/* 80385358 00380FB8 4B E4 90 F5 */ bl strcmp
/* 8038535C 00380FBC 2C 03 00 00 */ cmpwi r3, 0
/* 80385360 00380FC0 40 82 00 0C */ bne lbl_8038536C
/* 80385364 00380FC4 7F 83 E3 78 */ mr r3, r28
@@ -359,7 +359,7 @@ FindMaterialByName__Q34nw4r3lyt4PaneFPCcb: /* 80385404 00381064 2C 1E 00 00 */ cmpwi r30, 0
/* 80385408 00381068 41 82 00 1C */ beq lbl_80385424
/* 8038540C 0038106C 38 7E 00 44 */ addi r3, r30, 0x44
-/* 80385410 00381070 4B E4 90 3D */ bl func_801CE44C
+/* 80385410 00381070 4B E4 90 3D */ bl strcmp
/* 80385414 00381074 2C 03 00 00 */ cmpwi r3, 0
/* 80385418 00381078 40 82 00 0C */ bne lbl_80385424
/* 8038541C 0038107C 7F C3 F3 78 */ mr r3, r30
@@ -875,7 +875,7 @@ FindAnimationLink__Q34nw4r3lyt4PaneFPQ34nw4r3lyt13AnimTransform: /* 80385AFC 0038175C 93 C1 00 08 */ stw r30, 8(r1)
/* 80385B00 00381760 7C 7E 1B 78 */ mr r30, r3
/* 80385B04 00381764 38 63 00 1C */ addi r3, r3, 0x1c
-/* 80385B08 00381768 48 00 87 A5 */ bl func_8038E2AC
+/* 80385B08 00381768 48 00 87 A5 */ bl FindAnimationLink__Q34nw4r3lyt6detailFPQ34nw4r2ut38LinkList$0Q34nw4r3lyt13AnimationLink$40$1PQ34nw4r3lyt13AnimTransform
/* 80385B0C 0038176C 2C 03 00 00 */ cmpwi r3, 0
/* 80385B10 00381770 41 82 00 08 */ beq lbl_80385B18
/* 80385B14 00381774 48 00 00 34 */ b lbl_80385B48
@@ -913,7 +913,7 @@ SetAnimationEnable__Q34nw4r3lyt4PaneFPQ34nw4r3lyt13AnimTransformbb: /* 80385B7C 003817DC 7C BC 2B 78 */ mr r28, r5
/* 80385B80 003817E0 7C DD 33 78 */ mr r29, r6
/* 80385B84 003817E4 38 63 00 1C */ addi r3, r3, 0x1c
-/* 80385B88 003817E8 48 00 87 25 */ bl func_8038E2AC
+/* 80385B88 003817E8 48 00 87 25 */ bl FindAnimationLink__Q34nw4r3lyt6detailFPQ34nw4r2ut38LinkList$0Q34nw4r3lyt13AnimationLink$40$1PQ34nw4r3lyt13AnimTransform
/* 80385B8C 003817EC 2C 03 00 00 */ cmpwi r3, 0
/* 80385B90 003817F0 41 82 00 10 */ beq lbl_80385BA0
/* 80385B94 003817F4 7F 80 00 34 */ cntlzw r0, r28
diff --git a/asm/nw4r/lyt/lyt_picture.s b/asm/nw4r/lyt/lyt_picture.s index b30e8ba..3806d35 100644 --- a/asm/nw4r/lyt/lyt_picture.s +++ b/asm/nw4r/lyt/lyt_picture.s @@ -33,7 +33,7 @@ __ct__Q34nw4r3lyt7PictureFPCQ44nw4r3lyt3res7PictureRCQ34nw4r3lyt11ResBlockSet: /* 80386E10 00382A70 38 E0 00 04 */ li r7, 4
/* 80386E14 00382A74 4B E4 00 55 */ bl __construct_array
/* 80386E18 00382A78 38 7C 00 E4 */ addi r3, r28, 0xe4
-/* 80386E1C 00382A7C 48 00 79 59 */ bl func_8038E774
+/* 80386E1C 00382A7C 48 00 79 59 */ bl __ct__Q44nw4r3lyt6detail11TexCoordAryFv
/* 80386E20 00382A80 88 1D 00 5E */ lbz r0, 0x5e(r29)
/* 80386E24 00382A84 3B E0 00 08 */ li r31, 8
/* 80386E28 00382A88 28 00 00 08 */ cmplwi r0, 8
@@ -43,7 +43,7 @@ lbl_80386E34: /* 80386E34 00382A94 57 E4 06 3F */ clrlwi. r4, r31, 0x18
/* 80386E38 00382A98 41 82 00 0C */ beq lbl_80386E44
/* 80386E3C 00382A9C 38 7C 00 E4 */ addi r3, r28, 0xe4
-/* 80386E40 00382AA0 48 00 79 95 */ bl func_8038E7D4
+/* 80386E40 00382AA0 48 00 79 95 */ bl Reserve__Q44nw4r3lyt6detail11TexCoordAryFUc
lbl_80386E44:
/* 80386E44 00382AA4 80 DD 00 4C */ lwz r6, 0x4c(r29)
/* 80386E48 00382AA8 57 E5 06 3F */ clrlwi. r5, r31, 0x18
@@ -60,7 +60,7 @@ lbl_80386E44: /* 80386E74 00382AD4 41 82 00 10 */ beq lbl_80386E84
/* 80386E78 00382AD8 38 7C 00 E4 */ addi r3, r28, 0xe4
/* 80386E7C 00382ADC 38 9D 00 60 */ addi r4, r29, 0x60
-/* 80386E80 00382AE0 48 00 7A C1 */ bl func_8038E940
+/* 80386E80 00382AE0 48 00 7A C1 */ bl Copy__Q44nw4r3lyt6detail11TexCoordAryFPCvUc
lbl_80386E84:
/* 80386E84 00382AE4 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80386E88 00382AE8 38 80 00 5C */ li r4, 0x5c
@@ -122,7 +122,7 @@ __dt__Q34nw4r3lyt7PictureFv: /* 80386F54 00382BB4 90 1E 00 28 */ stw r0, 0x28(r30)
lbl_80386F58:
/* 80386F58 00382BB8 38 7E 00 E4 */ addi r3, r30, 0xe4
-/* 80386F5C 00382BBC 48 00 78 2D */ bl func_8038E788
+/* 80386F5C 00382BBC 48 00 78 2D */ bl Free__Q44nw4r3lyt6detail11TexCoordAryFv
/* 80386F60 00382BC0 3C 80 80 36 */ lis r4, func_80362698@ha
/* 80386F64 00382BC4 38 7E 00 D4 */ addi r3, r30, 0xd4
/* 80386F68 00382BC8 38 84 26 98 */ addi r4, r4, func_80362698@l
@@ -224,7 +224,7 @@ lbl_80387000: /* 803870D4 00382D34 80 9E 00 28 */ lwz r4, 0x28(r30)
/* 803870D8 00382D38 80 04 00 3C */ lwz r0, 0x3c(r4)
/* 803870DC 00382D3C 54 04 27 3E */ srwi r4, r0, 0x1c
-/* 803870E0 00382D40 48 00 77 75 */ bl func_8038E854
+/* 803870E0 00382D40 48 00 77 75 */ bl SetSize__Q44nw4r3lyt6detail11TexCoordAryFUc
/* 803870E4 00382D44 C0 22 A8 68 */ lfs f1, lbl_80642E68-_SDA2_BASE_(r2)
/* 803870E8 00382D48 C0 1E 00 4C */ lfs f0, 0x4c(r30)
/* 803870EC 00382D4C D0 21 00 18 */ stfs f1, 0x18(r1)
@@ -326,7 +326,7 @@ DrawSelf__Q34nw4r3lyt7PictureFRCQ34nw4r3lyt8DrawInfo: /* 80387228 00382E88 8B BC 00 B5 */ lbz r29, 0xb5(r28)
/* 8038722C 00382E8C 38 7C 00 D4 */ addi r3, r28, 0xd4
/* 80387230 00382E90 7F A4 EB 78 */ mr r4, r29
-/* 80387234 00382E94 48 00 77 A1 */ bl func_8038E9D4
+/* 80387234 00382E94 48 00 77 A1 */ bl IsModulateVertexColor__Q34nw4r3lyt6detailFPQ34nw4r2ut5ColorUc
/* 80387238 00382E98 7C 64 1B 78 */ mr r4, r3
/* 8038723C 00382E9C 80 7C 00 28 */ lwz r3, 0x28(r28)
/* 80387240 00382EA0 7F A5 EB 78 */ mr r5, r29
@@ -336,7 +336,7 @@ DrawSelf__Q34nw4r3lyt7PictureFRCQ34nw4r3lyt8DrawInfo: /* 80387250 00382EB0 4E 80 04 21 */ bctrl
/* 80387254 00382EB4 88 9C 00 E5 */ lbz r4, 0xe5(r28)
/* 80387258 00382EB8 7C 7D 1B 78 */ mr r29, r3
-/* 8038725C 00382EBC 48 00 78 35 */ bl func_8038EA90
+/* 8038725C 00382EBC 48 00 78 35 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 80387260 00382EC0 2C 1D 00 00 */ cmpwi r29, 0
/* 80387264 00382EC4 41 82 00 0C */ beq lbl_80387270
/* 80387268 00382EC8 3B DC 00 D4 */ addi r30, r28, 0xd4
@@ -356,7 +356,7 @@ lbl_80387274: /* 80387298 00382EF8 38 61 00 08 */ addi r3, r1, 8
/* 8038729C 00382EFC 38 9C 00 4C */ addi r4, r28, 0x4c
/* 803872A0 00382F00 89 1C 00 B5 */ lbz r8, 0xb5(r28)
-/* 803872A4 00382F04 48 00 7E 31 */ bl func_8038F0D4
+/* 803872A4 00382F04 48 00 7E 31 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
lbl_803872A8:
/* 803872A8 00382F08 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803872AC 00382F0C 83 E1 00 1C */ lwz r31, 0x1c(r1)
diff --git a/asm/nw4r/lyt/lyt_resourceAccessor.s b/asm/nw4r/lyt/lyt_resourceAccessor.s new file mode 100644 index 0000000..1492303 --- /dev/null +++ b/asm/nw4r/lyt/lyt_resourceAccessor.s @@ -0,0 +1,35 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global __dt__Q34nw4r3lyt16ResourceAccessorFv
+__dt__Q34nw4r3lyt16ResourceAccessorFv:
+/* 8038E2E0 00389F40 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8038E2E4 00389F44 7C 08 02 A6 */ mflr r0
+/* 8038E2E8 00389F48 2C 03 00 00 */ cmpwi r3, 0
+/* 8038E2EC 00389F4C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038E2F0 00389F50 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8038E2F4 00389F54 7C 7F 1B 78 */ mr r31, r3
+/* 8038E2F8 00389F58 41 82 00 10 */ beq lbl_8038E308
+/* 8038E2FC 00389F5C 2C 04 00 00 */ cmpwi r4, 0
+/* 8038E300 00389F60 40 81 00 08 */ ble lbl_8038E308
+/* 8038E304 00389F64 4B E4 C7 B5 */ bl func_801DAAB8
+lbl_8038E308:
+/* 8038E308 00389F68 7F E3 FB 78 */ mr r3, r31
+/* 8038E30C 00389F6C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8038E310 00389F70 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8038E314 00389F74 7C 08 03 A6 */ mtlr r0
+/* 8038E318 00389F78 38 21 00 10 */ addi r1, r1, 0x10
+/* 8038E31C 00389F7C 4E 80 00 20 */ blr
+
+.global __ct__Q34nw4r3lyt16ResourceAccessorFv
+__ct__Q34nw4r3lyt16ResourceAccessorFv:
+/* 8038E320 00389F80 3C 80 80 45 */ lis r4, lbl_8044E580@ha
+/* 8038E324 00389F84 38 84 E5 80 */ addi r4, r4, lbl_8044E580@l
+/* 8038E328 00389F88 90 83 00 00 */ stw r4, 0(r3)
+/* 8038E32C 00389F8C 4E 80 00 20 */ blr
+
+.global GetFont__Q34nw4r3lyt16ResourceAccessorFPCc
+GetFont__Q34nw4r3lyt16ResourceAccessorFPCc:
+/* 8038E330 00389F90 38 60 00 00 */ li r3, 0
+/* 8038E334 00389F94 4E 80 00 20 */ blr
diff --git a/asm/nw4r/lyt/lyt_texMap.s b/asm/nw4r/lyt/lyt_texMap.s new file mode 100644 index 0000000..6717abb --- /dev/null +++ b/asm/nw4r/lyt/lyt_texMap.s @@ -0,0 +1,215 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global Get__Q34nw4r3lyt6TexMapCFP9_GXTexObj
+Get__Q34nw4r3lyt6TexMapCFP9_GXTexObj:
+/* 8038D388 00388FE8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038D38C 00388FEC 7C 08 02 A6 */ mflr r0
+/* 8038D390 00388FF0 81 43 00 18 */ lwz r10, 0x18(r3)
+/* 8038D394 00388FF4 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8038D398 00388FF8 55 47 27 3E */ srwi r7, r10, 0x1c
+/* 8038D39C 00388FFC 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8038D3A0 00389000 38 07 FF F8 */ addi r0, r7, -8
+/* 8038D3A4 00389004 28 00 00 02 */ cmplwi r0, 2
+/* 8038D3A8 00389008 7C 9F 23 78 */ mr r31, r4
+/* 8038D3AC 0038900C 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8038D3B0 00389010 7C 7E 1B 78 */ mr r30, r3
+/* 8038D3B4 00389014 41 81 00 3C */ bgt lbl_8038D3F0
+/* 8038D3B8 00389018 7F E3 FB 78 */ mr r3, r31
+/* 8038D3BC 0038901C 4B EF 56 9D */ bl func_80282A58
+/* 8038D3C0 00389020 80 1E 00 18 */ lwz r0, 0x18(r30)
+/* 8038D3C4 00389024 90 61 00 08 */ stw r3, 8(r1)
+/* 8038D3C8 00389028 7F E3 FB 78 */ mr r3, r31
+/* 8038D3CC 0038902C 80 9E 00 00 */ lwz r4, 0(r30)
+/* 8038D3D0 00389030 54 07 27 3E */ srwi r7, r0, 0x1c
+/* 8038D3D4 00389034 A0 BE 00 08 */ lhz r5, 8(r30)
+/* 8038D3D8 00389038 54 08 3F BE */ rlwinm r8, r0, 7, 0x1e, 0x1f
+/* 8038D3DC 0038903C A0 DE 00 0A */ lhz r6, 0xa(r30)
+/* 8038D3E0 00389040 54 09 4F BE */ rlwinm r9, r0, 9, 0x1e, 0x1f
+/* 8038D3E4 00389044 54 0A 2F FE */ rlwinm r10, r0, 5, 0x1f, 0x1f
+/* 8038D3E8 00389048 4B EF 54 F5 */ bl func_802828DC
+/* 8038D3EC 0038904C 48 00 00 24 */ b lbl_8038D410
+lbl_8038D3F0:
+/* 8038D3F0 00389050 80 9E 00 00 */ lwz r4, 0(r30)
+/* 8038D3F4 00389054 7F E3 FB 78 */ mr r3, r31
+/* 8038D3F8 00389058 A0 BE 00 08 */ lhz r5, 8(r30)
+/* 8038D3FC 0038905C 55 48 3F BE */ rlwinm r8, r10, 7, 0x1e, 0x1f
+/* 8038D400 00389060 55 49 4F BE */ rlwinm r9, r10, 9, 0x1e, 0x1f
+/* 8038D404 00389064 A0 DE 00 0A */ lhz r6, 0xa(r30)
+/* 8038D408 00389068 55 4A 2F FE */ rlwinm r10, r10, 5, 0x1f, 0x1f
+/* 8038D40C 0038906C 4B EF 52 C5 */ bl func_802826D0
+lbl_8038D410:
+/* 8038D410 00389070 A0 9E 00 14 */ lhz r4, 0x14(r30)
+/* 8038D414 00389074 3C A0 43 30 */ lis r5, 0x4330
+/* 8038D418 00389078 80 1E 00 18 */ lwz r0, 0x18(r30)
+/* 8038D41C 0038907C 7F E3 FB 78 */ mr r3, r31
+/* 8038D420 00389080 90 81 00 14 */ stw r4, 0x14(r1)
+/* 8038D424 00389084 C8 62 A8 C8 */ lfd f3, lbl_80642EC8-_SDA2_BASE_(r2)
+/* 8038D428 00389088 54 04 67 7E */ rlwinm r4, r0, 0xc, 0x1d, 0x1f
+/* 8038D42C 0038908C 90 A1 00 10 */ stw r5, 0x10(r1)
+/* 8038D430 00389090 54 05 7F 7E */ rlwinm r5, r0, 0xf, 0x1d, 0x1f
+/* 8038D434 00389094 C0 02 A8 C0 */ lfs f0, lbl_80642EC0-_SDA2_BASE_(r2)
+/* 8038D438 00389098 54 06 87 FE */ rlwinm r6, r0, 0x10, 0x1f, 0x1f
+/* 8038D43C 0038909C C8 21 00 10 */ lfd f1, 0x10(r1)
+/* 8038D440 003890A0 54 07 8F FE */ rlwinm r7, r0, 0x11, 0x1f, 0x1f
+/* 8038D444 003890A4 C0 5E 00 10 */ lfs f2, 0x10(r30)
+/* 8038D448 003890A8 54 08 9F BE */ rlwinm r8, r0, 0x13, 0x1e, 0x1f
+/* 8038D44C 003890AC EC 61 18 28 */ fsubs f3, f1, f3
+/* 8038D450 003890B0 C0 3E 00 0C */ lfs f1, 0xc(r30)
+/* 8038D454 003890B4 EC 63 00 32 */ fmuls f3, f3, f0
+/* 8038D458 003890B8 4B EF 54 CD */ bl func_80282924
+/* 8038D45C 003890BC 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8038D460 003890C0 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8038D464 003890C4 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8038D468 003890C8 7C 08 03 A6 */ mtlr r0
+/* 8038D46C 003890CC 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038D470 003890D0 4E 80 00 20 */ blr
+
+.global Get__Q34nw4r3lyt6TexMapCFP10_GXTlutObj
+Get__Q34nw4r3lyt6TexMapCFP10_GXTlutObj:
+/* 8038D474 003890D4 7C 65 1B 78 */ mr r5, r3
+/* 8038D478 003890D8 7C 83 23 78 */ mr r3, r4
+/* 8038D47C 003890DC 80 05 00 18 */ lwz r0, 0x18(r5)
+/* 8038D480 003890E0 80 85 00 04 */ lwz r4, 4(r5)
+/* 8038D484 003890E4 A0 C5 00 16 */ lhz r6, 0x16(r5)
+/* 8038D488 003890E8 54 05 AF BE */ rlwinm r5, r0, 0x15, 0x1e, 0x1f
+/* 8038D48C 003890EC 4B EF 57 8C */ b func_80282C18
+
+.global Set__Q34nw4r3lyt6TexMapFP10TPLPaletteUl
+Set__Q34nw4r3lyt6TexMapFP10TPLPaletteUl:
+/* 8038D490 003890F0 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038D494 003890F4 7C 08 02 A6 */ mflr r0
+/* 8038D498 003890F8 90 01 00 24 */ stw r0, 0x24(r1)
+/* 8038D49C 003890FC 3C 00 80 00 */ lis r0, 0x8000
+/* 8038D4A0 00389100 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 8038D4A4 00389104 7C BF 2B 78 */ mr r31, r5
+/* 8038D4A8 00389108 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 8038D4AC 0038910C 7C 9E 23 78 */ mr r30, r4
+/* 8038D4B0 00389110 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 8038D4B4 00389114 7C 7D 1B 78 */ mr r29, r3
+/* 8038D4B8 00389118 80 C4 00 08 */ lwz r6, 8(r4)
+/* 8038D4BC 0038911C 7C 06 00 40 */ cmplw r6, r0
+/* 8038D4C0 00389120 40 80 00 0C */ bge lbl_8038D4CC
+/* 8038D4C4 00389124 7F C3 F3 78 */ mr r3, r30
+/* 8038D4C8 00389128 4B F0 E4 51 */ bl func_8029B918
+lbl_8038D4CC:
+/* 8038D4CC 0038912C 7F C3 F3 78 */ mr r3, r30
+/* 8038D4D0 00389130 7F E4 FB 78 */ mr r4, r31
+/* 8038D4D4 00389134 4B F0 E5 59 */ bl func_8029BA2C
+/* 8038D4D8 00389138 7C 7F 1B 78 */ mr r31, r3
+/* 8038D4DC 0038913C 7F A3 EB 78 */ mr r3, r29
+/* 8038D4E0 00389140 7F E4 FB 78 */ mr r4, r31
+/* 8038D4E4 00389144 48 00 00 95 */ bl SetNoWrap__Q34nw4r3lyt6TexMapFPC13TPLDescriptor
+/* 8038D4E8 00389148 80 7F 00 00 */ lwz r3, 0(r31)
+/* 8038D4EC 0038914C 80 1D 00 18 */ lwz r0, 0x18(r29)
+/* 8038D4F0 00389150 80 83 00 0C */ lwz r4, 0xc(r3)
+/* 8038D4F4 00389154 80 63 00 10 */ lwz r3, 0x10(r3)
+/* 8038D4F8 00389158 50 80 C9 4C */ rlwimi r0, r4, 0x19, 5, 6
+/* 8038D4FC 0038915C 50 60 B9 D0 */ rlwimi r0, r3, 0x17, 7, 8
+/* 8038D500 00389160 90 1D 00 18 */ stw r0, 0x18(r29)
+/* 8038D504 00389164 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 8038D508 00389168 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8038D50C 0038916C 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 8038D510 00389170 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 8038D514 00389174 7C 08 03 A6 */ mtlr r0
+/* 8038D518 00389178 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038D51C 0038917C 4E 80 00 20 */ blr
+
+.global SetNoWrap__Q34nw4r3lyt6TexMapFRCQ34nw4r3lyt6TexMap
+SetNoWrap__Q34nw4r3lyt6TexMapFRCQ34nw4r3lyt6TexMap:
+/* 8038D520 00389180 80 A3 00 18 */ lwz r5, 0x18(r3)
+/* 8038D524 00389184 80 04 00 18 */ lwz r0, 0x18(r4)
+/* 8038D528 00389188 50 A0 01 4C */ rlwimi r0, r5, 0, 5, 6
+/* 8038D52C 0038918C 81 24 00 00 */ lwz r9, 0(r4)
+/* 8038D530 00389190 50 A0 01 D0 */ rlwimi r0, r5, 0, 7, 8
+/* 8038D534 00389194 81 04 00 04 */ lwz r8, 4(r4)
+/* 8038D538 00389198 A0 E4 00 08 */ lhz r7, 8(r4)
+/* 8038D53C 0038919C A0 C4 00 0A */ lhz r6, 0xa(r4)
+/* 8038D540 003891A0 C0 24 00 0C */ lfs f1, 0xc(r4)
+/* 8038D544 003891A4 C0 04 00 10 */ lfs f0, 0x10(r4)
+/* 8038D548 003891A8 A0 A4 00 14 */ lhz r5, 0x14(r4)
+/* 8038D54C 003891AC A0 84 00 16 */ lhz r4, 0x16(r4)
+/* 8038D550 003891B0 91 23 00 00 */ stw r9, 0(r3)
+/* 8038D554 003891B4 91 03 00 04 */ stw r8, 4(r3)
+/* 8038D558 003891B8 B0 E3 00 08 */ sth r7, 8(r3)
+/* 8038D55C 003891BC B0 C3 00 0A */ sth r6, 0xa(r3)
+/* 8038D560 003891C0 D0 23 00 0C */ stfs f1, 0xc(r3)
+/* 8038D564 003891C4 D0 03 00 10 */ stfs f0, 0x10(r3)
+/* 8038D568 003891C8 B0 A3 00 14 */ sth r5, 0x14(r3)
+/* 8038D56C 003891CC B0 83 00 16 */ sth r4, 0x16(r3)
+/* 8038D570 003891D0 90 03 00 18 */ stw r0, 0x18(r3)
+/* 8038D574 003891D4 4E 80 00 20 */ blr
+
+.global SetNoWrap__Q34nw4r3lyt6TexMapFPC13TPLDescriptor
+SetNoWrap__Q34nw4r3lyt6TexMapFPC13TPLDescriptor:
+/* 8038D578 003891D8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 8038D57C 003891DC 3C 00 43 30 */ lis r0, 0x4330
+/* 8038D580 003891E0 80 E4 00 00 */ lwz r7, 0(r4)
+/* 8038D584 003891E4 81 04 00 04 */ lwz r8, 4(r4)
+/* 8038D588 003891E8 80 87 00 08 */ lwz r4, 8(r7)
+/* 8038D58C 003891EC 80 C3 00 18 */ lwz r6, 0x18(r3)
+/* 8038D590 003891F0 2C 08 00 00 */ cmpwi r8, 0
+/* 8038D594 003891F4 90 83 00 00 */ stw r4, 0(r3)
+/* 8038D598 003891F8 C8 62 A8 C8 */ lfd f3, lbl_80642EC8-_SDA2_BASE_(r2)
+/* 8038D59C 003891FC A0 A7 00 00 */ lhz r5, 0(r7)
+/* 8038D5A0 00389200 A0 87 00 02 */ lhz r4, 2(r7)
+/* 8038D5A4 00389204 90 01 00 08 */ stw r0, 8(r1)
+/* 8038D5A8 00389208 C0 02 A8 D0 */ lfs f0, lbl_80642ED0-_SDA2_BASE_(r2)
+/* 8038D5AC 0038920C B0 83 00 08 */ sth r4, 8(r3)
+/* 8038D5B0 00389210 B0 A3 00 0A */ sth r5, 0xa(r3)
+/* 8038D5B4 00389214 80 87 00 04 */ lwz r4, 4(r7)
+/* 8038D5B8 00389218 90 01 00 10 */ stw r0, 0x10(r1)
+/* 8038D5BC 0038921C 50 86 E0 06 */ rlwimi r6, r4, 0x1c, 0, 3
+/* 8038D5C0 00389220 90 C3 00 18 */ stw r6, 0x18(r3)
+/* 8038D5C4 00389224 88 A7 00 21 */ lbz r5, 0x21(r7)
+/* 8038D5C8 00389228 88 07 00 22 */ lbz r0, 0x22(r7)
+/* 8038D5CC 0038922C 7C 85 00 50 */ subf r4, r5, r0
+/* 8038D5D0 00389230 7C 00 28 50 */ subf r0, r0, r5
+/* 8038D5D4 00389234 7C 80 03 78 */ or r0, r4, r0
+/* 8038D5D8 00389238 50 06 E1 08 */ rlwimi r6, r0, 0x1c, 4, 4
+/* 8038D5DC 0038923C 90 C3 00 18 */ stw r6, 0x18(r3)
+/* 8038D5E0 00389240 80 07 00 14 */ lwz r0, 0x14(r7)
+/* 8038D5E4 00389244 80 87 00 18 */ lwz r4, 0x18(r7)
+/* 8038D5E8 00389248 50 06 A2 56 */ rlwimi r6, r0, 0x14, 9, 0xb
+/* 8038D5EC 0038924C 50 86 8B 1C */ rlwimi r6, r4, 0x11, 0xc, 0xe
+/* 8038D5F0 00389250 90 C3 00 18 */ stw r6, 0x18(r3)
+/* 8038D5F4 00389254 88 87 00 22 */ lbz r4, 0x22(r7)
+/* 8038D5F8 00389258 88 07 00 21 */ lbz r0, 0x21(r7)
+/* 8038D5FC 0038925C 90 81 00 0C */ stw r4, 0xc(r1)
+/* 8038D600 00389260 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8038D604 00389264 C8 41 00 08 */ lfd f2, 8(r1)
+/* 8038D608 00389268 C8 21 00 10 */ lfd f1, 0x10(r1)
+/* 8038D60C 0038926C EC 42 18 28 */ fsubs f2, f2, f3
+/* 8038D610 00389270 EC 21 18 28 */ fsubs f1, f1, f3
+/* 8038D614 00389274 D0 43 00 10 */ stfs f2, 0x10(r3)
+/* 8038D618 00389278 D0 23 00 0C */ stfs f1, 0xc(r3)
+/* 8038D61C 0038927C C0 27 00 1C */ lfs f1, 0x1c(r7)
+/* 8038D620 00389280 EC 00 00 72 */ fmuls f0, f0, f1
+/* 8038D624 00389284 FC 00 00 1E */ fctiwz f0, f0
+/* 8038D628 00389288 D8 01 00 18 */ stfd f0, 0x18(r1)
+/* 8038D62C 0038928C 80 01 00 1C */ lwz r0, 0x1c(r1)
+/* 8038D630 00389290 B0 03 00 14 */ sth r0, 0x14(r3)
+/* 8038D634 00389294 88 87 00 20 */ lbz r4, 0x20(r7)
+/* 8038D638 00389298 7C 04 00 D0 */ neg r0, r4
+/* 8038D63C 0038929C 7C 00 23 78 */ or r0, r0, r4
+/* 8038D640 003892A0 50 06 84 20 */ rlwimi r6, r0, 0x10, 0x10, 0x10
+/* 8038D644 003892A4 90 C3 00 18 */ stw r6, 0x18(r3)
+/* 8038D648 003892A8 41 82 00 24 */ beq lbl_8038D66C
+/* 8038D64C 003892AC 80 08 00 08 */ lwz r0, 8(r8)
+/* 8038D650 003892B0 90 03 00 04 */ stw r0, 4(r3)
+/* 8038D654 003892B4 80 08 00 04 */ lwz r0, 4(r8)
+/* 8038D658 003892B8 50 06 5C E8 */ rlwimi r6, r0, 0xb, 0x13, 0x14
+/* 8038D65C 003892BC 90 C3 00 18 */ stw r6, 0x18(r3)
+/* 8038D660 003892C0 A0 08 00 00 */ lhz r0, 0(r8)
+/* 8038D664 003892C4 B0 03 00 16 */ sth r0, 0x16(r3)
+/* 8038D668 003892C8 48 00 00 18 */ b lbl_8038D680
+lbl_8038D66C:
+/* 8038D66C 003892CC 38 80 00 00 */ li r4, 0
+/* 8038D670 003892D0 54 C0 05 64 */ rlwinm r0, r6, 0, 0x15, 0x12
+/* 8038D674 003892D4 90 83 00 04 */ stw r4, 4(r3)
+/* 8038D678 003892D8 90 03 00 18 */ stw r0, 0x18(r3)
+/* 8038D67C 003892DC B0 83 00 16 */ sth r4, 0x16(r3)
+lbl_8038D680:
+/* 8038D680 003892E0 38 21 00 20 */ addi r1, r1, 0x20
+/* 8038D684 003892E4 4E 80 00 20 */ blr
diff --git a/asm/nw4r/lyt/lyt_textBox.s b/asm/nw4r/lyt/lyt_textBox.s index 4675c1a..6f27fc5 100644 --- a/asm/nw4r/lyt/lyt_textBox.s +++ b/asm/nw4r/lyt/lyt_textBox.s @@ -454,7 +454,7 @@ lbl_803878CC: /* 80387914 00383574 88 1F 00 DB */ lbz r0, 0xdb(r31)
/* 80387918 00383578 98 01 00 1F */ stb r0, 0x1f(r1)
/* 8038791C 0038357C 88 BF 00 B5 */ lbz r5, 0xb5(r31)
-/* 80387920 00383580 48 00 71 1D */ bl func_8038EA3C
+/* 80387920 00383580 48 00 71 1D */ bl MultipleAlpha__Q34nw4r3lyt6detailFQ34nw4r2ut5ColorUc
/* 80387924 00383584 88 1F 00 DC */ lbz r0, 0xdc(r31)
/* 80387928 00383588 38 61 00 28 */ addi r3, r1, 0x28
/* 8038792C 0038358C 38 81 00 18 */ addi r4, r1, 0x18
@@ -466,7 +466,7 @@ lbl_803878CC: /* 80387944 003835A4 88 1F 00 DF */ lbz r0, 0xdf(r31)
/* 80387948 003835A8 98 01 00 1B */ stb r0, 0x1b(r1)
/* 8038794C 003835AC 88 BF 00 B5 */ lbz r5, 0xb5(r31)
-/* 80387950 003835B0 48 00 70 ED */ bl func_8038EA3C
+/* 80387950 003835B0 48 00 70 ED */ bl MultipleAlpha__Q34nw4r3lyt6detailFQ34nw4r2ut5ColorUc
/* 80387954 003835B4 80 61 00 2C */ lwz r3, 0x2c(r1)
/* 80387958 003835B8 38 80 00 00 */ li r4, 0
/* 8038795C 003835BC 80 01 00 28 */ lwz r0, 0x28(r1)
diff --git a/asm/nw4r/lyt/lyt_window.s b/asm/nw4r/lyt/lyt_window.s index 99da531..ccb081f 100644 --- a/asm/nw4r/lyt/lyt_window.s +++ b/asm/nw4r/lyt/lyt_window.s @@ -26,7 +26,7 @@ __ct__Q34nw4r3lyt6WindowFPCQ44nw4r3lyt3res6WindowRCQ34nw4r3lyt11ResBlockSet: /* 80387F00 00383B60 38 E0 00 04 */ li r7, 4
/* 80387F04 00383B64 4B E3 EF 65 */ bl __construct_array
/* 80387F08 00383B68 38 7B 00 10 */ addi r3, r27, 0x10
-/* 80387F0C 00383B6C 48 00 68 69 */ bl func_8038E774
+/* 80387F0C 00383B6C 48 00 68 69 */ bl __ct__Q44nw4r3lyt6detail11TexCoordAryFv
/* 80387F10 00383B70 80 19 00 60 */ lwz r0, 0x60(r25)
/* 80387F14 00383B74 C0 79 00 4C */ lfs f3, 0x4c(r25)
/* 80387F18 00383B78 7F B9 02 14 */ add r29, r25, r0
@@ -57,14 +57,14 @@ __ct__Q34nw4r3lyt6WindowFPCQ44nw4r3lyt3res6WindowRCQ34nw4r3lyt11ResBlockSet: lbl_80387F7C:
/* 80387F7C 00383BDC 38 78 00 F4 */ addi r3, r24, 0xf4
/* 80387F80 00383BE0 57 64 06 3E */ clrlwi r4, r27, 0x18
-/* 80387F84 00383BE4 48 00 68 51 */ bl func_8038E7D4
+/* 80387F84 00383BE4 48 00 68 51 */ bl Reserve__Q44nw4r3lyt6detail11TexCoordAryFUc
/* 80387F88 00383BE8 88 18 00 F4 */ lbz r0, 0xf4(r24)
/* 80387F8C 00383BEC 2C 00 00 00 */ cmpwi r0, 0
/* 80387F90 00383BF0 41 82 00 14 */ beq lbl_80387FA4
/* 80387F94 00383BF4 38 78 00 F4 */ addi r3, r24, 0xf4
/* 80387F98 00383BF8 38 9D 00 14 */ addi r4, r29, 0x14
/* 80387F9C 00383BFC 57 65 06 3E */ clrlwi r5, r27, 0x18
-/* 80387FA0 00383C00 48 00 69 A1 */ bl func_8038E940
+/* 80387FA0 00383C00 48 00 69 A1 */ bl Copy__Q44nw4r3lyt6detail11TexCoordAryFPCvUc
lbl_80387FA4:
/* 80387FA4 00383C04 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13)
/* 80387FA8 00383C08 38 80 00 5C */ li r4, 0x5c
@@ -208,7 +208,7 @@ lbl_80388160: /* 8038819C 00383DFC 90 1C 00 28 */ stw r0, 0x28(r28)
lbl_803881A0:
/* 803881A0 00383E00 38 7C 00 F4 */ addi r3, r28, 0xf4
-/* 803881A4 00383E04 48 00 65 E5 */ bl func_8038E788
+/* 803881A4 00383E04 48 00 65 E5 */ bl Free__Q44nw4r3lyt6detail11TexCoordAryFv
/* 803881A8 00383E08 34 7C 00 E4 */ addic. r3, r28, 0xe4
/* 803881AC 00383E0C 41 82 00 18 */ beq lbl_803881C4
/* 803881B0 00383E10 3C 80 80 36 */ lis r4, func_80362698@ha
@@ -249,7 +249,7 @@ FindMaterialByName__Q34nw4r3lyt6WindowFPCcb: /* 80388228 00383E88 2C 1E 00 00 */ cmpwi r30, 0
/* 8038822C 00383E8C 41 82 00 1C */ beq lbl_80388248
/* 80388230 00383E90 38 7E 00 44 */ addi r3, r30, 0x44
-/* 80388234 00383E94 4B E4 62 19 */ bl func_801CE44C
+/* 80388234 00383E94 4B E4 62 19 */ bl strcmp
/* 80388238 00383E98 2C 03 00 00 */ cmpwi r3, 0
/* 8038823C 00383E9C 40 82 00 0C */ bne lbl_80388248
/* 80388240 00383EA0 7F C3 F3 78 */ mr r3, r30
@@ -265,7 +265,7 @@ lbl_80388258: /* 80388260 00383EC0 7C 7D F2 14 */ add r3, r29, r30
/* 80388264 00383EC4 80 63 00 04 */ lwz r3, 4(r3)
/* 80388268 00383EC8 38 63 00 44 */ addi r3, r3, 0x44
-/* 8038826C 00383ECC 4B E4 61 E1 */ bl func_801CE44C
+/* 8038826C 00383ECC 4B E4 61 E1 */ bl strcmp
/* 80388270 00383ED0 2C 03 00 00 */ cmpwi r3, 0
/* 80388274 00383ED4 40 82 00 14 */ bne lbl_80388288
/* 80388278 00383ED8 57 80 18 38 */ slwi r0, r28, 3
@@ -631,7 +631,7 @@ DrawContent__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt15WindowFrameSiz /* 8038873C 0038439C 7C BD 2B 78 */ mr r29, r5
/* 80388740 003843A0 7F C4 F3 78 */ mr r4, r30
/* 80388744 003843A4 38 63 00 E4 */ addi r3, r3, 0xe4
-/* 80388748 003843A8 48 00 62 8D */ bl func_8038E9D4
+/* 80388748 003843A8 48 00 62 8D */ bl IsModulateVertexColor__Q34nw4r3lyt6detailFPQ34nw4r2ut5ColorUc
/* 8038874C 003843AC 7C 64 1B 78 */ mr r4, r3
/* 80388750 003843B0 80 7B 00 28 */ lwz r3, 0x28(r27)
/* 80388754 003843B4 7F C5 F3 78 */ mr r5, r30
@@ -641,7 +641,7 @@ DrawContent__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt15WindowFrameSiz /* 80388764 003843C4 4E 80 04 21 */ bctrl
/* 80388768 003843C8 88 9B 00 F5 */ lbz r4, 0xf5(r27)
/* 8038876C 003843CC 7C 7F 1B 78 */ mr r31, r3
-/* 80388770 003843D0 48 00 63 21 */ bl func_8038EA90
+/* 80388770 003843D0 48 00 63 21 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 80388774 003843D4 2C 1F 00 00 */ cmpwi r31, 0
/* 80388778 003843D8 41 82 00 0C */ beq lbl_80388784
/* 8038877C 003843DC 38 FB 00 E4 */ addi r7, r27, 0xe4
@@ -684,7 +684,7 @@ lbl_80388788: /* 80388808 00384468 EC 01 00 28 */ fsubs f0, f1, f0
/* 8038880C 0038446C D0 41 00 14 */ stfs f2, 0x14(r1)
/* 80388810 00384470 D0 01 00 10 */ stfs f0, 0x10(r1)
-/* 80388814 00384474 48 00 68 C1 */ bl func_8038F0D4
+/* 80388814 00384474 48 00 68 C1 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80388818 00384478 39 61 00 30 */ addi r11, r1, 0x30
/* 8038881C 0038447C 4B E3 E9 59 */ bl _restgpr_27
/* 80388820 00384480 80 01 00 34 */ lwz r0, 0x34(r1)
@@ -711,7 +711,7 @@ DrawFrame__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2RCQ44nw4r3lyt6Window5FrameRCQ34 /* 80388868 003844C8 7C DD 33 78 */ mr r29, r6
/* 8038886C 003844CC 7F C4 F3 78 */ mr r4, r30
/* 80388870 003844D0 38 60 00 00 */ li r3, 0
-/* 80388874 003844D4 48 00 61 61 */ bl func_8038E9D4
+/* 80388874 003844D4 48 00 61 61 */ bl IsModulateVertexColor__Q34nw4r3lyt6detailFPQ34nw4r2ut5ColorUc
/* 80388878 003844D8 7C 64 1B 78 */ mr r4, r3
/* 8038887C 003844DC 80 74 00 04 */ lwz r3, 4(r20)
/* 80388880 003844E0 7F C5 F3 78 */ mr r5, r30
@@ -721,7 +721,7 @@ DrawFrame__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2RCQ44nw4r3lyt6Window5FrameRCQ34 /* 80388890 003844F0 4E 80 04 21 */ bctrl
/* 80388894 003844F4 7C 7F 1B 78 */ mr r31, r3
/* 80388898 003844F8 38 80 00 01 */ li r4, 1
-/* 8038889C 003844FC 48 00 61 F5 */ bl func_8038EA90
+/* 8038889C 003844FC 48 00 61 F5 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 803888A0 00384500 80 94 00 04 */ lwz r4, 4(r20)
/* 803888A4 00384504 38 61 00 50 */ addi r3, r1, 0x50
/* 803888A8 00384508 38 A0 00 00 */ li r5, 0
@@ -815,7 +815,7 @@ DrawFrame__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2RCQ44nw4r3lyt6Window5FrameRCQ34 /* 80388A08 00384668 7C 39 55 2E */ stfsx f1, r25, r10
/* 80388A0C 0038466C 7C 16 A5 2E */ stfsx f0, r22, r20
/* 80388A10 00384670 7C 19 A5 2E */ stfsx f0, r25, r20
-/* 80388A14 00384674 48 00 66 C1 */ bl func_8038F0D4
+/* 80388A14 00384674 48 00 66 C1 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80388A18 00384678 88 D5 00 13 */ lbz r6, 0x13(r21)
/* 80388A1C 0038467C 39 15 00 0A */ addi r8, r21, 0xa
/* 80388A20 00384680 88 F5 00 12 */ lbz r7, 0x12(r21)
@@ -896,7 +896,7 @@ DrawFrame__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2RCQ44nw4r3lyt6Window5FrameRCQ34 /* 80388B4C 003847AC 7C 56 55 2E */ stfsx f2, r22, r10
/* 80388B50 003847B0 7C 19 5D 2E */ stfsx f0, r25, r11
/* 80388B54 003847B4 7C 16 5D 2E */ stfsx f0, r22, r11
-/* 80388B58 003847B8 48 00 65 7D */ bl func_8038F0D4
+/* 80388B58 003847B8 48 00 65 7D */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80388B5C 003847BC 88 D5 00 31 */ lbz r6, 0x31(r21)
/* 80388B60 003847C0 38 95 00 28 */ addi r4, r21, 0x28
/* 80388B64 003847C4 C0 3C 00 04 */ lfs f1, 4(r28)
@@ -978,7 +978,7 @@ DrawFrame__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2RCQ44nw4r3lyt6Window5FrameRCQ34 /* 80388C94 003848F4 7C 57 55 2E */ stfsx f2, r23, r10
/* 80388C98 003848F8 7C 18 5D 2E */ stfsx f0, r24, r11
/* 80388C9C 003848FC 7C 17 5D 2E */ stfsx f0, r23, r11
-/* 80388CA0 00384900 48 00 64 35 */ bl func_8038F0D4
+/* 80388CA0 00384900 48 00 64 35 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80388CA4 00384904 88 D5 00 1D */ lbz r6, 0x1d(r21)
/* 80388CA8 00384908 38 F5 00 14 */ addi r7, r21, 0x14
/* 80388CAC 0038490C C1 3C 00 00 */ lfs f9, 0(r28)
@@ -1057,7 +1057,7 @@ DrawFrame__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2RCQ44nw4r3lyt6Window5FrameRCQ34 /* 80388DD0 00384A30 7C 58 05 2E */ stfsx f2, r24, r0
/* 80388DD4 00384A34 7C 17 4D 2E */ stfsx f0, r23, r9
/* 80388DD8 00384A38 7C 18 4D 2E */ stfsx f0, r24, r9
-/* 80388DDC 00384A3C 48 00 62 F9 */ bl func_8038F0D4
+/* 80388DDC 00384A3C 48 00 62 F9 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80388DE0 00384A40 E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0
/* 80388DE4 00384A44 39 61 00 D0 */ addi r11, r1, 0xd0
/* 80388DE8 00384A48 CB E1 00 D0 */ lfd f31, 0xd0(r1)
@@ -1092,7 +1092,7 @@ DrawFrame4__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80388E50 00384AB0 90 01 00 7C */ stw r0, 0x7c(r1)
/* 80388E54 00384AB4 D0 01 00 60 */ stfs f0, 0x60(r1)
/* 80388E58 00384AB8 D0 01 00 64 */ stfs f0, 0x64(r1)
-/* 80388E5C 00384ABC 48 00 5B 79 */ bl func_8038E9D4
+/* 80388E5C 00384ABC 48 00 5B 79 */ bl IsModulateVertexColor__Q34nw4r3lyt6detailFPQ34nw4r2ut5ColorUc
/* 80388E60 00384AC0 7C 74 1B 78 */ mr r20, r3
/* 80388E64 00384AC4 80 7D 00 04 */ lwz r3, 4(r29)
/* 80388E68 00384AC8 7E 84 A3 78 */ mr r4, r20
@@ -1183,7 +1183,7 @@ DrawFrame4__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80388FBC 00384C1C 7C 59 45 2E */ stfsx f2, r25, r8
/* 80388FC0 00384C20 7C 16 4D 2E */ stfsx f0, r22, r9
/* 80388FC4 00384C24 7C 19 4D 2E */ stfsx f0, r25, r9
-/* 80388FC8 00384C28 48 00 5A C9 */ bl func_8038EA90
+/* 80388FC8 00384C28 48 00 5A C9 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 80388FCC 00384C2C 7C 13 00 D0 */ neg r0, r19
/* 80388FD0 00384C30 3B 41 00 70 */ addi r26, r1, 0x70
/* 80388FD4 00384C34 7C 00 9B 78 */ or r0, r0, r19
@@ -1194,7 +1194,7 @@ DrawFrame4__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80388FE8 00384C48 38 81 00 60 */ addi r4, r1, 0x60
/* 80388FEC 00384C4C 7F 47 00 38 */ and r7, r26, r0
/* 80388FF0 00384C50 38 A0 00 01 */ li r5, 1
-/* 80388FF4 00384C54 48 00 60 E1 */ bl func_8038F0D4
+/* 80388FF4 00384C54 48 00 60 E1 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80388FF8 00384C58 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 80388FFC 00384C5C 7E 84 A3 78 */ mr r4, r20
/* 80389000 00384C60 7F E5 FB 78 */ mr r5, r31
@@ -1284,7 +1284,7 @@ DrawFrame4__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389150 00384DB0 7C 36 05 2E */ stfsx f1, r22, r0
/* 80389154 00384DB4 7C 19 2D 2E */ stfsx f0, r25, r5
/* 80389158 00384DB8 7C 16 2D 2E */ stfsx f0, r22, r5
-/* 8038915C 00384DBC 48 00 59 35 */ bl func_8038EA90
+/* 8038915C 00384DBC 48 00 59 35 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 80389160 00384DC0 7C 13 00 D0 */ neg r0, r19
/* 80389164 00384DC4 7E E6 BB 78 */ mr r6, r23
/* 80389168 00384DC8 7C 00 9B 78 */ or r0, r0, r19
@@ -1294,7 +1294,7 @@ DrawFrame4__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389178 00384DD8 38 81 00 60 */ addi r4, r1, 0x60
/* 8038917C 00384DDC 38 A0 00 01 */ li r5, 1
/* 80389180 00384DE0 7F 47 00 38 */ and r7, r26, r0
-/* 80389184 00384DE4 48 00 5F 51 */ bl func_8038F0D4
+/* 80389184 00384DE4 48 00 5F 51 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80389188 00384DE8 80 7D 00 1C */ lwz r3, 0x1c(r29)
/* 8038918C 00384DEC 7E 84 A3 78 */ mr r4, r20
/* 80389190 00384DF0 7F E5 FB 78 */ mr r5, r31
@@ -1385,7 +1385,7 @@ DrawFrame4__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 803892E4 00384F44 7C 37 55 2E */ stfsx f1, r23, r10
/* 803892E8 00384F48 7C 18 5D 2E */ stfsx f0, r24, r11
/* 803892EC 00384F4C 7C 17 5D 2E */ stfsx f0, r23, r11
-/* 803892F0 00384F50 48 00 57 A1 */ bl func_8038EA90
+/* 803892F0 00384F50 48 00 57 A1 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 803892F4 00384F54 7C 13 00 D0 */ neg r0, r19
/* 803892F8 00384F58 7E E6 BB 78 */ mr r6, r23
/* 803892FC 00384F5C 7C 00 9B 78 */ or r0, r0, r19
@@ -1395,7 +1395,7 @@ DrawFrame4__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 8038930C 00384F6C 38 81 00 60 */ addi r4, r1, 0x60
/* 80389310 00384F70 38 A0 00 01 */ li r5, 1
/* 80389314 00384F74 7F 47 00 38 */ and r7, r26, r0
-/* 80389318 00384F78 48 00 5D BD */ bl func_8038F0D4
+/* 80389318 00384F78 48 00 5D BD */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 8038931C 00384F7C 80 7D 00 14 */ lwz r3, 0x14(r29)
/* 80389320 00384F80 7E 84 A3 78 */ mr r4, r20
/* 80389324 00384F84 7F E5 FB 78 */ mr r5, r31
@@ -1483,7 +1483,7 @@ DrawFrame4__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 8038946C 003850CC 7C 78 55 2E */ stfsx f3, r24, r10
/* 80389470 003850D0 7C 17 4D 2E */ stfsx f0, r23, r9
/* 80389474 003850D4 7C 18 4D 2E */ stfsx f0, r24, r9
-/* 80389478 003850D8 48 00 56 19 */ bl func_8038EA90
+/* 80389478 003850D8 48 00 56 19 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 8038947C 003850DC 7C 13 00 D0 */ neg r0, r19
/* 80389480 003850E0 7E E6 BB 78 */ mr r6, r23
/* 80389484 003850E4 7C 00 9B 78 */ or r0, r0, r19
@@ -1493,7 +1493,7 @@ DrawFrame4__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389494 003850F4 38 81 00 60 */ addi r4, r1, 0x60
/* 80389498 003850F8 38 A0 00 01 */ li r5, 1
/* 8038949C 003850FC 7F 47 00 38 */ and r7, r26, r0
-/* 803894A0 00385100 48 00 5C 35 */ bl func_8038F0D4
+/* 803894A0 00385100 48 00 5C 35 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 803894A4 00385104 39 61 00 F0 */ addi r11, r1, 0xf0
/* 803894A8 00385108 4B E3 DC A9 */ bl _restgpr_18
/* 803894AC 0038510C 80 01 00 F4 */ lwz r0, 0xf4(r1)
@@ -1526,7 +1526,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 8038950C 0038516C 90 01 01 14 */ stw r0, 0x114(r1)
/* 80389510 00385170 D0 01 01 00 */ stfs f0, 0x100(r1)
/* 80389514 00385174 D0 01 01 04 */ stfs f0, 0x104(r1)
-/* 80389518 00385178 48 00 54 BD */ bl func_8038E9D4
+/* 80389518 00385178 48 00 54 BD */ bl IsModulateVertexColor__Q34nw4r3lyt6detailFPQ34nw4r2ut5ColorUc
/* 8038951C 0038517C 7C 74 1B 78 */ mr r20, r3
/* 80389520 00385180 80 7D 00 04 */ lwz r3, 4(r29)
/* 80389524 00385184 7E 84 A3 78 */ mr r4, r20
@@ -1613,7 +1613,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389668 003852C8 7C 59 45 2E */ stfsx f2, r25, r8
/* 8038966C 003852CC 7C 16 4D 2E */ stfsx f0, r22, r9
/* 80389670 003852D0 7C 19 4D 2E */ stfsx f0, r25, r9
-/* 80389674 003852D4 48 00 54 1D */ bl func_8038EA90
+/* 80389674 003852D4 48 00 54 1D */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 80389678 003852D8 7C 13 00 D0 */ neg r0, r19
/* 8038967C 003852DC 3B 41 01 08 */ addi r26, r1, 0x108
/* 80389680 003852E0 7C 00 9B 78 */ or r0, r0, r19
@@ -1624,7 +1624,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389694 003852F4 38 81 01 00 */ addi r4, r1, 0x100
/* 80389698 003852F8 7F 47 00 38 */ and r7, r26, r0
/* 8038969C 003852FC 38 A0 00 01 */ li r5, 1
-/* 803896A0 00385300 48 00 5A 35 */ bl func_8038F0D4
+/* 803896A0 00385300 48 00 5A 35 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 803896A4 00385304 80 7D 00 34 */ lwz r3, 0x34(r29)
/* 803896A8 00385308 7E 84 A3 78 */ mr r4, r20
/* 803896AC 0038530C 7F E5 FB 78 */ mr r5, r31
@@ -1709,7 +1709,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 803897E8 00385448 7C 39 4D 2E */ stfsx f1, r25, r9
/* 803897EC 0038544C 7C 16 55 2E */ stfsx f0, r22, r10
/* 803897F0 00385450 7C 19 55 2E */ stfsx f0, r25, r10
-/* 803897F4 00385454 48 00 52 9D */ bl func_8038EA90
+/* 803897F4 00385454 48 00 52 9D */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 803897F8 00385458 C0 3C 00 00 */ lfs f1, 0(r28)
/* 803897FC 0038545C 7C 13 00 D0 */ neg r0, r19
/* 80389800 00385460 C0 1E 00 00 */ lfs f0, 0(r30)
@@ -1725,7 +1725,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389828 00385488 D0 01 00 D8 */ stfs f0, 0xd8(r1)
/* 8038982C 0038548C 38 81 01 00 */ addi r4, r1, 0x100
/* 80389830 00385490 38 A0 00 01 */ li r5, 1
-/* 80389834 00385494 48 00 58 A1 */ bl func_8038F0D4
+/* 80389834 00385494 48 00 58 A1 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80389838 00385498 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 8038983C 0038549C 7E 84 A3 78 */ mr r4, r20
/* 80389840 003854A0 7F E5 FB 78 */ mr r5, r31
@@ -1806,7 +1806,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 8038996C 003855CC 7C 36 05 2E */ stfsx f1, r22, r0
/* 80389970 003855D0 7C 19 2D 2E */ stfsx f0, r25, r5
/* 80389974 003855D4 7C 16 2D 2E */ stfsx f0, r22, r5
-/* 80389978 003855D8 48 00 51 19 */ bl func_8038EA90
+/* 80389978 003855D8 48 00 51 19 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 8038997C 003855DC C0 3C 00 00 */ lfs f1, 0(r28)
/* 80389980 003855E0 7C 13 00 D0 */ neg r0, r19
/* 80389984 003855E4 C0 1B 00 4C */ lfs f0, 0x4c(r27)
@@ -1824,7 +1824,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 803899B4 00385614 38 81 01 00 */ addi r4, r1, 0x100
/* 803899B8 00385618 38 A0 00 01 */ li r5, 1
/* 803899BC 0038561C D0 01 00 C0 */ stfs f0, 0xc0(r1)
-/* 803899C0 00385620 48 00 57 15 */ bl func_8038F0D4
+/* 803899C0 00385620 48 00 57 15 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 803899C4 00385624 80 7D 00 2C */ lwz r3, 0x2c(r29)
/* 803899C8 00385628 7E 84 A3 78 */ mr r4, r20
/* 803899CC 0038562C 7F E5 FB 78 */ mr r5, r31
@@ -1909,7 +1909,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389B08 00385768 7C 36 05 2E */ stfsx f1, r22, r0
/* 80389B0C 0038576C 7C 19 2D 2E */ stfsx f0, r25, r5
/* 80389B10 00385770 7C 16 2D 2E */ stfsx f0, r22, r5
-/* 80389B14 00385774 48 00 4F 7D */ bl func_8038EA90
+/* 80389B14 00385774 48 00 4F 7D */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 80389B18 00385778 C0 3C 00 00 */ lfs f1, 0(r28)
/* 80389B1C 0038577C 7C 13 00 D0 */ neg r0, r19
/* 80389B20 00385780 C0 1B 00 4C */ lfs f0, 0x4c(r27)
@@ -1929,7 +1929,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389B58 003857B8 38 81 01 00 */ addi r4, r1, 0x100
/* 80389B5C 003857BC 38 A0 00 01 */ li r5, 1
/* 80389B60 003857C0 D0 01 00 A8 */ stfs f0, 0xa8(r1)
-/* 80389B64 003857C4 48 00 55 71 */ bl func_8038F0D4
+/* 80389B64 003857C4 48 00 55 71 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80389B68 003857C8 80 7D 00 1C */ lwz r3, 0x1c(r29)
/* 80389B6C 003857CC 7E 84 A3 78 */ mr r4, r20
/* 80389B70 003857D0 7F E5 FB 78 */ mr r5, r31
@@ -2010,7 +2010,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389C9C 003858FC 7C 37 55 2E */ stfsx f1, r23, r10
/* 80389CA0 00385900 7C 18 5D 2E */ stfsx f0, r24, r11
/* 80389CA4 00385904 7C 17 5D 2E */ stfsx f0, r23, r11
-/* 80389CA8 00385908 48 00 4D E9 */ bl func_8038EA90
+/* 80389CA8 00385908 48 00 4D E9 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 80389CAC 0038590C C0 7C 00 04 */ lfs f3, 4(r28)
/* 80389CB0 00385910 7C 13 00 D0 */ neg r0, r19
/* 80389CB4 00385914 C0 5B 00 50 */ lfs f2, 0x50(r27)
@@ -2032,7 +2032,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389CF4 00385954 38 81 01 00 */ addi r4, r1, 0x100
/* 80389CF8 00385958 38 A0 00 01 */ li r5, 1
/* 80389CFC 0038595C D0 01 00 90 */ stfs f0, 0x90(r1)
-/* 80389D00 00385960 48 00 53 D5 */ bl func_8038F0D4
+/* 80389D00 00385960 48 00 53 D5 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80389D04 00385964 80 7D 00 3C */ lwz r3, 0x3c(r29)
/* 80389D08 00385968 7E 84 A3 78 */ mr r4, r20
/* 80389D0C 0038596C 7F E5 FB 78 */ mr r5, r31
@@ -2117,7 +2117,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389E48 00385AA8 7C 37 55 2E */ stfsx f1, r23, r10
/* 80389E4C 00385AAC 7C 18 5D 2E */ stfsx f0, r24, r11
/* 80389E50 00385AB0 7C 17 5D 2E */ stfsx f0, r23, r11
-/* 80389E54 00385AB4 48 00 4C 3D */ bl func_8038EA90
+/* 80389E54 00385AB4 48 00 4C 3D */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 80389E58 00385AB8 C0 3C 00 04 */ lfs f1, 4(r28)
/* 80389E5C 00385ABC 7C 13 00 D0 */ neg r0, r19
/* 80389E60 00385AC0 C0 1B 00 50 */ lfs f0, 0x50(r27)
@@ -2137,7 +2137,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389E98 00385AF8 38 A0 00 01 */ li r5, 1
/* 80389E9C 00385AFC D0 41 00 7C */ stfs f2, 0x7c(r1)
/* 80389EA0 00385B00 D0 01 00 78 */ stfs f0, 0x78(r1)
-/* 80389EA4 00385B04 48 00 52 31 */ bl func_8038F0D4
+/* 80389EA4 00385B04 48 00 52 31 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 80389EA8 00385B08 80 7D 00 14 */ lwz r3, 0x14(r29)
/* 80389EAC 00385B0C 7E 84 A3 78 */ mr r4, r20
/* 80389EB0 00385B10 7F E5 FB 78 */ mr r5, r31
@@ -2218,7 +2218,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 80389FDC 00385C3C 7C 78 55 2E */ stfsx f3, r24, r10
/* 80389FE0 00385C40 7C 17 4D 2E */ stfsx f0, r23, r9
/* 80389FE4 00385C44 7C 18 4D 2E */ stfsx f0, r24, r9
-/* 80389FE8 00385C48 48 00 4A A9 */ bl func_8038EA90
+/* 80389FE8 00385C48 48 00 4A A9 */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 80389FEC 00385C4C C0 3C 00 04 */ lfs f1, 4(r28)
/* 80389FF0 00385C50 7C 13 00 D0 */ neg r0, r19
/* 80389FF4 00385C54 C0 1B 00 50 */ lfs f0, 0x50(r27)
@@ -2236,7 +2236,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 8038A024 00385C84 38 81 01 00 */ addi r4, r1, 0x100
/* 8038A028 00385C88 38 A0 00 01 */ li r5, 1
/* 8038A02C 00385C8C D0 01 00 64 */ stfs f0, 0x64(r1)
-/* 8038A030 00385C90 48 00 50 A5 */ bl func_8038F0D4
+/* 8038A030 00385C90 48 00 50 A5 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 8038A034 00385C94 80 7D 00 24 */ lwz r3, 0x24(r29)
/* 8038A038 00385C98 7E 84 A3 78 */ mr r4, r20
/* 8038A03C 00385C9C 7F E5 FB 78 */ mr r5, r31
@@ -2321,7 +2321,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 8038A178 00385DD8 7C 78 55 2E */ stfsx f3, r24, r10
/* 8038A17C 00385DDC 7C 17 4D 2E */ stfsx f0, r23, r9
/* 8038A180 00385DE0 7C 18 4D 2E */ stfsx f0, r24, r9
-/* 8038A184 00385DE4 48 00 49 0D */ bl func_8038EA90
+/* 8038A184 00385DE4 48 00 49 0D */ bl SetVertexFormat__Q34nw4r3lyt6detailFbUc
/* 8038A188 00385DE8 C0 3C 00 04 */ lfs f1, 4(r28)
/* 8038A18C 00385DEC 7C 13 00 D0 */ neg r0, r19
/* 8038A190 00385DF0 C0 1E 00 08 */ lfs f0, 8(r30)
@@ -2337,7 +2337,7 @@ DrawFrame8__Q34nw4r3lyt6WindowFRCQ34nw4r4math4VEC2PCQ44nw4r3lyt6Window5FrameRCQ3 /* 8038A1B8 00385E18 D0 01 00 4C */ stfs f0, 0x4c(r1)
/* 8038A1BC 00385E1C 38 81 01 00 */ addi r4, r1, 0x100
/* 8038A1C0 00385E20 38 A0 00 01 */ li r5, 1
-/* 8038A1C4 00385E24 48 00 4F 11 */ bl func_8038F0D4
+/* 8038A1C4 00385E24 48 00 4F 11 */ bl DrawQuad__Q34nw4r3lyt6detailFRCQ34nw4r4math4VEC2RCQ34nw4r3lyt4SizeUcPA4_CQ34nw4r4math4VEC2PCQ34nw4r2ut5ColorUc
/* 8038A1C8 00385E28 39 61 01 80 */ addi r11, r1, 0x180
/* 8038A1CC 00385E2C 4B E3 CF 85 */ bl _restgpr_18
/* 8038A1D0 00385E30 80 01 01 84 */ lwz r0, 0x184(r1)
diff --git a/asm/nw4r/snd/detail/snd_SoundArchive.s b/asm/nw4r/snd/detail/snd_SoundArchive.s index 7e112d9..5676a71 100644 --- a/asm/nw4r/snd/detail/snd_SoundArchive.s +++ b/asm/nw4r/snd/detail/snd_SoundArchive.s @@ -180,11 +180,11 @@ lbl_80377134: /* 80377134 00372D94 38 61 01 50 */ addi r3, r1, 0x150
/* 80377138 00372D98 38 9D 00 08 */ addi r4, r29, 8
/* 8037713C 00372D9C 38 A5 00 01 */ addi r5, r5, 1
-/* 80377140 00372DA0 4B E5 72 51 */ bl func_801CE390
+/* 80377140 00372DA0 4B E5 72 51 */ bl strncpy
/* 80377144 00372DA4 7F 64 DB 78 */ mr r4, r27
/* 80377148 00372DA8 38 61 01 50 */ addi r3, r1, 0x150
/* 8037714C 00372DAC 38 BC 00 01 */ addi r5, r28, 1
-/* 80377150 00372DB0 4B E5 72 B1 */ bl func_801CE400
+/* 80377150 00372DB0 4B E5 72 B1 */ bl strncat
/* 80377154 00372DB4 3B 61 01 50 */ addi r27, r1, 0x150
lbl_80377158:
/* 80377158 00372DB8 81 9D 00 00 */ lwz r12, 0(r29)
@@ -255,11 +255,11 @@ lbl_80377244: /* 80377244 00372EA4 38 61 00 50 */ addi r3, r1, 0x50
/* 80377248 00372EA8 38 9D 00 08 */ addi r4, r29, 8
/* 8037724C 00372EAC 38 A5 00 01 */ addi r5, r5, 1
-/* 80377250 00372EB0 4B E5 71 41 */ bl func_801CE390
+/* 80377250 00372EB0 4B E5 71 41 */ bl strncpy
/* 80377254 00372EB4 7F 64 DB 78 */ mr r4, r27
/* 80377258 00372EB8 38 61 00 50 */ addi r3, r1, 0x50
/* 8037725C 00372EBC 38 BC 00 01 */ addi r5, r28, 1
-/* 80377260 00372EC0 4B E5 71 A1 */ bl func_801CE400
+/* 80377260 00372EC0 4B E5 71 A1 */ bl strncat
/* 80377264 00372EC4 3B 61 00 50 */ addi r27, r1, 0x50
lbl_80377268:
/* 80377268 00372EC8 81 9D 00 00 */ lwz r12, 0(r29)
@@ -334,11 +334,11 @@ lbl_8037735C: /* 8037735C 00372FBC 38 61 00 20 */ addi r3, r1, 0x20
/* 80377360 00372FC0 38 99 00 08 */ addi r4, r25, 8
/* 80377364 00372FC4 38 A5 00 01 */ addi r5, r5, 1
-/* 80377368 00372FC8 4B E5 70 29 */ bl func_801CE390
+/* 80377368 00372FC8 4B E5 70 29 */ bl strncpy
/* 8037736C 00372FCC 7F 84 E3 78 */ mr r4, r28
/* 80377370 00372FD0 38 61 00 20 */ addi r3, r1, 0x20
/* 80377374 00372FD4 38 BF 00 01 */ addi r5, r31, 1
-/* 80377378 00372FD8 4B E5 70 89 */ bl func_801CE400
+/* 80377378 00372FD8 4B E5 70 89 */ bl strncat
/* 8037737C 00372FDC 3B 81 00 20 */ addi r28, r1, 0x20
lbl_80377380:
/* 80377380 00372FE0 81 99 00 00 */ lwz r12, 0(r25)
@@ -413,11 +413,11 @@ lbl_80377474: /* 80377474 003730D4 38 61 00 20 */ addi r3, r1, 0x20
/* 80377478 003730D8 38 99 00 08 */ addi r4, r25, 8
/* 8037747C 003730DC 38 A5 00 01 */ addi r5, r5, 1
-/* 80377480 003730E0 4B E5 6F 11 */ bl func_801CE390
+/* 80377480 003730E0 4B E5 6F 11 */ bl strncpy
/* 80377484 003730E4 7F 84 E3 78 */ mr r4, r28
/* 80377488 003730E8 38 61 00 20 */ addi r3, r1, 0x20
/* 8037748C 003730EC 38 BF 00 01 */ addi r5, r31, 1
-/* 80377490 003730F0 4B E5 6F 71 */ bl func_801CE400
+/* 80377490 003730F0 4B E5 6F 71 */ bl strncat
/* 80377494 003730F4 3B 81 00 20 */ addi r28, r1, 0x20
lbl_80377498:
/* 80377498 003730F8 81 99 00 00 */ lwz r12, 0(r25)
@@ -476,7 +476,7 @@ lbl_80377548: /* 80377554 003731B4 7C 65 1B 78 */ mr r5, r3
/* 80377558 003731B8 7F E4 FB 78 */ mr r4, r31
/* 8037755C 003731BC 38 7E 00 08 */ addi r3, r30, 8
-/* 80377560 003731C0 4B E5 6E 31 */ bl func_801CE390
+/* 80377560 003731C0 4B E5 6E 31 */ bl strncpy
/* 80377564 003731C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80377568 003731C8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8037756C 003731CC 83 C1 00 08 */ lwz r30, 8(r1)
diff --git a/asm/nw4r/snd/detail/snd_SoundArchiveFile.s b/asm/nw4r/snd/detail/snd_SoundArchiveFile.s index 06f7ef2..72835c4 100644 --- a/asm/nw4r/snd/detail/snd_SoundArchiveFile.s +++ b/asm/nw4r/snd/detail/snd_SoundArchiveFile.s @@ -953,7 +953,7 @@ lbl_8037821C: /* 8037821C 00373E7C 7C 80 22 14 */ add r4, r0, r4
lbl_80378220:
/* 80378220 00373E80 7F C3 F3 78 */ mr r3, r30
-/* 80378224 00373E84 4B E5 62 29 */ bl func_801CE44C
+/* 80378224 00373E84 4B E5 62 29 */ bl strcmp
/* 80378228 00373E88 2C 03 00 00 */ cmpwi r3, 0
/* 8037822C 00373E8C 40 82 00 0C */ bne lbl_80378238
/* 80378230 00373E90 80 7F 00 10 */ lwz r3, 0x10(r31)
diff --git a/asm/nw4r/snd/snd_DvdSoundArchive.s b/asm/nw4r/snd/snd_DvdSoundArchive.s index 03a4a45..cbddf51 100644 --- a/asm/nw4r/snd/snd_DvdSoundArchive.s +++ b/asm/nw4r/snd/snd_DvdSoundArchive.s @@ -139,7 +139,7 @@ lbl_8036F85C: /* 8036F85C 0036B4BC 7F A4 EB 78 */ mr r4, r29
/* 8036F860 0036B4C0 7F C5 F3 78 */ mr r5, r30
/* 8036F864 0036B4C4 38 61 00 70 */ addi r3, r1, 0x70
-/* 8036F868 0036B4C8 4B E5 EB 29 */ bl func_801CE390
+/* 8036F868 0036B4C8 4B E5 EB 29 */ bl strncpy
/* 8036F86C 0036B4CC 38 81 00 70 */ addi r4, r1, 0x70
/* 8036F870 0036B4D0 38 00 00 00 */ li r0, 0
/* 8036F874 0036B4D4 7C 04 F1 AE */ stbx r0, r4, r30
diff --git a/asm/text_1.s b/asm/text_1.s index 2880b0f..366e5a8 100644 --- a/asm/text_1.s +++ b/asm/text_1.s @@ -3809,7 +3809,7 @@ func_80009E04: /* 80009E30 00005A90 93 81 00 30 */ stw r28, 0x30(r1) /* 80009E34 00005A94 7C 7C 1B 78 */ mr r28, r3 /* 80009E38 00005A98 38 61 00 08 */ addi r3, r1, 8 -/* 80009E3C 00005A9C 48 1C 44 95 */ bl func_801CE2D0 +/* 80009E3C 00005A9C 48 1C 44 95 */ bl strcpy /* 80009E40 00005AA0 48 2E 26 09 */ bl func_802EC448 /* 80009E44 00005AA4 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 80009E48 00005AA8 28 00 00 06 */ cmplwi r0, 6 @@ -3826,49 +3826,49 @@ func_80009E04: lbl_80009E6C: /* 80009E6C 00005ACC 38 61 00 08 */ addi r3, r1, 8 /* 80009E70 00005AD0 38 9E 00 00 */ addi r4, r30, 0 -/* 80009E74 00005AD4 48 1C 45 61 */ bl func_801CE3D4 +/* 80009E74 00005AD4 48 1C 45 61 */ bl strcat /* 80009E78 00005AD8 48 00 00 78 */ b lbl_80009EF0 .global lbl_80009E7C lbl_80009E7C: /* 80009E7C 00005ADC 38 61 00 08 */ addi r3, r1, 8 /* 80009E80 00005AE0 38 9E 00 10 */ addi r4, r30, 0x10 -/* 80009E84 00005AE4 48 1C 45 51 */ bl func_801CE3D4 +/* 80009E84 00005AE4 48 1C 45 51 */ bl strcat /* 80009E88 00005AE8 48 00 00 68 */ b lbl_80009EF0 .global lbl_80009E8C lbl_80009E8C: /* 80009E8C 00005AEC 38 61 00 08 */ addi r3, r1, 8 /* 80009E90 00005AF0 38 9E 00 24 */ addi r4, r30, 0x24 -/* 80009E94 00005AF4 48 1C 45 41 */ bl func_801CE3D4 +/* 80009E94 00005AF4 48 1C 45 41 */ bl strcat /* 80009E98 00005AF8 48 00 00 58 */ b lbl_80009EF0 .global lbl_80009E9C lbl_80009E9C: /* 80009E9C 00005AFC 38 61 00 08 */ addi r3, r1, 8 /* 80009EA0 00005B00 38 9E 00 38 */ addi r4, r30, 0x38 -/* 80009EA4 00005B04 48 1C 45 31 */ bl func_801CE3D4 +/* 80009EA4 00005B04 48 1C 45 31 */ bl strcat /* 80009EA8 00005B08 48 00 00 48 */ b lbl_80009EF0 .global lbl_80009EAC lbl_80009EAC: /* 80009EAC 00005B0C 38 61 00 08 */ addi r3, r1, 8 /* 80009EB0 00005B10 38 9E 00 4C */ addi r4, r30, 0x4c -/* 80009EB4 00005B14 48 1C 45 21 */ bl func_801CE3D4 +/* 80009EB4 00005B14 48 1C 45 21 */ bl strcat /* 80009EB8 00005B18 48 00 00 38 */ b lbl_80009EF0 .global lbl_80009EBC lbl_80009EBC: /* 80009EBC 00005B1C 38 61 00 08 */ addi r3, r1, 8 /* 80009EC0 00005B20 38 9E 00 60 */ addi r4, r30, 0x60 -/* 80009EC4 00005B24 48 1C 45 11 */ bl func_801CE3D4 +/* 80009EC4 00005B24 48 1C 45 11 */ bl strcat /* 80009EC8 00005B28 48 00 00 28 */ b lbl_80009EF0 .global lbl_80009ECC lbl_80009ECC: /* 80009ECC 00005B2C 38 61 00 08 */ addi r3, r1, 8 /* 80009ED0 00005B30 38 9E 00 74 */ addi r4, r30, 0x74 -/* 80009ED4 00005B34 48 1C 45 01 */ bl func_801CE3D4 +/* 80009ED4 00005B34 48 1C 45 01 */ bl strcat /* 80009ED8 00005B38 48 00 00 18 */ b lbl_80009EF0 lbl_80009EDC: @@ -3876,7 +3876,7 @@ lbl_80009EDC: /* 80009EE0 00005B40 38 61 00 08 */ addi r3, r1, 8 /* 80009EE4 00005B44 90 1D 00 1C */ stw r0, 0x1c(r29) /* 80009EE8 00005B48 38 9E 00 00 */ addi r4, r30, 0 -/* 80009EEC 00005B4C 48 1C 44 E9 */ bl func_801CE3D4 +/* 80009EEC 00005B4C 48 1C 44 E9 */ bl strcat lbl_80009EF0: /* 80009EF0 00005B50 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13) /* 80009EF4 00005B54 38 61 00 08 */ addi r3, r1, 8 @@ -3886,10 +3886,10 @@ lbl_80009EF0: /* 80009F04 00005B64 3F E0 80 40 */ lis r31, lbl_803FB718@ha /* 80009F08 00005B68 38 61 00 08 */ addi r3, r1, 8 /* 80009F0C 00005B6C 38 9F B7 18 */ addi r4, r31, lbl_803FB718@l -/* 80009F10 00005B70 48 1C 43 C1 */ bl func_801CE2D0 +/* 80009F10 00005B70 48 1C 43 C1 */ bl strcpy /* 80009F14 00005B74 38 61 00 08 */ addi r3, r1, 8 /* 80009F18 00005B78 38 9E 00 88 */ addi r4, r30, 0x88 -/* 80009F1C 00005B7C 48 1C 44 B9 */ bl func_801CE3D4 +/* 80009F1C 00005B7C 48 1C 44 B9 */ bl strcat /* 80009F20 00005B80 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13) /* 80009F24 00005B84 38 61 00 08 */ addi r3, r1, 8 /* 80009F28 00005B88 38 A0 00 00 */ li r5, 0 @@ -3897,10 +3897,10 @@ lbl_80009EF0: /* 80009F30 00005B90 90 7D 00 04 */ stw r3, 4(r29) /* 80009F34 00005B94 38 61 00 08 */ addi r3, r1, 8 /* 80009F38 00005B98 38 9F B7 18 */ addi r4, r31, -18664 -/* 80009F3C 00005B9C 48 1C 43 95 */ bl func_801CE2D0 +/* 80009F3C 00005B9C 48 1C 43 95 */ bl strcpy /* 80009F40 00005BA0 38 61 00 08 */ addi r3, r1, 8 /* 80009F44 00005BA4 38 9E 00 98 */ addi r4, r30, 0x98 -/* 80009F48 00005BA8 48 1C 44 8D */ bl func_801CE3D4 +/* 80009F48 00005BA8 48 1C 44 8D */ bl strcat /* 80009F4C 00005BAC 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13) /* 80009F50 00005BB0 38 61 00 08 */ addi r3, r1, 8 /* 80009F54 00005BB4 38 A0 00 00 */ li r5, 0 @@ -3908,10 +3908,10 @@ lbl_80009EF0: /* 80009F5C 00005BBC 90 7D 00 08 */ stw r3, 8(r29) /* 80009F60 00005BC0 38 61 00 08 */ addi r3, r1, 8 /* 80009F64 00005BC4 38 9F B7 18 */ addi r4, r31, -18664 -/* 80009F68 00005BC8 48 1C 43 69 */ bl func_801CE2D0 +/* 80009F68 00005BC8 48 1C 43 69 */ bl strcpy /* 80009F6C 00005BCC 38 61 00 08 */ addi r3, r1, 8 /* 80009F70 00005BD0 38 9E 00 A4 */ addi r4, r30, 0xa4 -/* 80009F74 00005BD4 48 1C 44 61 */ bl func_801CE3D4 +/* 80009F74 00005BD4 48 1C 44 61 */ bl strcat /* 80009F78 00005BD8 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13) /* 80009F7C 00005BDC 38 61 00 08 */ addi r3, r1, 8 /* 80009F80 00005BE0 38 A0 00 00 */ li r5, 0 @@ -3930,10 +3930,10 @@ lbl_80009EF0: /* 80009FB4 00005C14 D0 3D 00 34 */ stfs f1, 0x34(r29) /* 80009FB8 00005C18 D0 1D 00 38 */ stfs f0, 0x38(r29) /* 80009FBC 00005C1C D0 1D 00 30 */ stfs f0, 0x30(r29) -/* 80009FC0 00005C20 48 1C 43 11 */ bl func_801CE2D0 +/* 80009FC0 00005C20 48 1C 43 11 */ bl strcpy /* 80009FC4 00005C24 38 61 00 08 */ addi r3, r1, 8 /* 80009FC8 00005C28 38 9E 00 B0 */ addi r4, r30, 0xb0 -/* 80009FCC 00005C2C 48 1C 44 09 */ bl func_801CE3D4 +/* 80009FCC 00005C2C 48 1C 44 09 */ bl strcat /* 80009FD0 00005C30 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13) /* 80009FD4 00005C34 38 61 00 08 */ addi r3, r1, 8 /* 80009FD8 00005C38 38 A0 00 00 */ li r5, 0 @@ -3957,11 +3957,11 @@ func_8000A008: /* 8000A014 00005C74 90 01 00 34 */ stw r0, 0x34(r1) /* 8000A018 00005C78 38 61 00 08 */ addi r3, r1, 8 /* 8000A01C 00005C7C 38 84 B7 28 */ addi r4, r4, lbl_803FB728@l -/* 8000A020 00005C80 48 1C 42 B1 */ bl func_801CE2D0 +/* 8000A020 00005C80 48 1C 42 B1 */ bl strcpy /* 8000A024 00005C84 3C 80 80 40 */ lis r4, lbl_80405E80@ha /* 8000A028 00005C88 38 61 00 08 */ addi r3, r1, 8 /* 8000A02C 00005C8C 38 84 5E 80 */ addi r4, r4, lbl_80405E80@l -/* 8000A030 00005C90 48 1C 43 A5 */ bl func_801CE3D4 +/* 8000A030 00005C90 48 1C 43 A5 */ bl strcat /* 8000A034 00005C94 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13) /* 8000A038 00005C98 3C 80 00 08 */ lis r4, 8 /* 8000A03C 00005C9C 48 1D 0C C5 */ bl func_801DAD00 @@ -34908,7 +34908,7 @@ func_80025048: /* 80025084 00020CE4 41 82 00 18 */ beq lbl_8002509C /* 80025088 00020CE8 38 8D 80 80 */ addi r4, r13, lbl_8063D340-_SDA_BASE_ /* 8002508C 00020CEC 38 A0 00 04 */ li r5, 4 -/* 80025090 00020CF0 48 1A 53 09 */ bl func_801CA398 +/* 80025090 00020CF0 48 1A 53 09 */ bl memcmp /* 80025094 00020CF4 2C 03 00 00 */ cmpwi r3, 0 /* 80025098 00020CF8 40 82 00 30 */ bne lbl_800250C8 lbl_8002509C: @@ -35255,7 +35255,7 @@ func_800254EC: /* 80025528 00021188 41 82 00 60 */ beq lbl_80025588 /* 8002552C 0002118C 38 8D 80 88 */ addi r4, r13, lbl_8063D348-_SDA_BASE_ /* 80025530 00021190 38 A0 00 04 */ li r5, 4 -/* 80025534 00021194 48 1A 4E 65 */ bl func_801CA398 +/* 80025534 00021194 48 1A 4E 65 */ bl memcmp /* 80025538 00021198 2C 03 00 00 */ cmpwi r3, 0 /* 8002553C 0002119C 41 82 00 08 */ beq lbl_80025544 /* 80025540 000211A0 48 00 00 48 */ b lbl_80025588 @@ -38132,7 +38132,7 @@ lbl_80027CA0: /* 80027CA0 00023900 7F 63 DB 78 */ mr r3, r27 /* 80027CA4 00023904 38 8D 80 98 */ addi r4, r13, lbl_8063D358-_SDA_BASE_ /* 80027CA8 00023908 4C C6 31 82 */ crclr 6 -/* 80027CAC 0002390C 48 1A 4E 51 */ bl func_801CCAFC +/* 80027CAC 0002390C 48 1A 4E 51 */ bl sprintf /* 80027CB0 00023910 48 00 01 C0 */ b lbl_80027E70 lbl_80027CB4: /* 80027CB4 00023914 A8 1C 00 00 */ lha r0, 0(r28) @@ -38157,7 +38157,7 @@ lbl_80027CF0: /* 80027CF0 00023950 7F 63 DB 78 */ mr r3, r27 /* 80027CF4 00023954 38 8D 80 9C */ addi r4, r13, lbl_8063D35C-_SDA_BASE_ /* 80027CF8 00023958 4C C6 31 82 */ crclr 6 -/* 80027CFC 0002395C 48 1A 4E 01 */ bl func_801CCAFC +/* 80027CFC 0002395C 48 1A 4E 01 */ bl sprintf /* 80027D00 00023960 48 00 01 70 */ b lbl_80027E70 lbl_80027D04: /* 80027D04 00023964 A8 1C 00 00 */ lha r0, 0(r28) @@ -38182,7 +38182,7 @@ lbl_80027D44: /* 80027D44 000239A4 7F 63 DB 78 */ mr r3, r27 /* 80027D48 000239A8 38 8D 80 A4 */ addi r4, r13, lbl_8063D364-_SDA_BASE_ /* 80027D4C 000239AC 4C C6 32 42 */ crset 6 -/* 80027D50 000239B0 48 1A 4D AD */ bl func_801CCAFC +/* 80027D50 000239B0 48 1A 4D AD */ bl sprintf /* 80027D54 000239B4 48 00 01 1C */ b lbl_80027E70 lbl_80027D58: /* 80027D58 000239B8 A8 1C 00 00 */ lha r0, 0(r28) @@ -38199,7 +38199,7 @@ lbl_80027D78: /* 80027D7C 000239DC 7F 63 DB 78 */ mr r3, r27 /* 80027D80 000239E0 38 8D 80 AC */ addi r4, r13, lbl_8063D36C-_SDA_BASE_ /* 80027D84 000239E4 4C C6 31 82 */ crclr 6 -/* 80027D88 000239E8 48 1A 4D 75 */ bl func_801CCAFC +/* 80027D88 000239E8 48 1A 4D 75 */ bl sprintf /* 80027D8C 000239EC 48 00 00 E4 */ b lbl_80027E70 lbl_80027D90: /* 80027D90 000239F0 A8 1C 00 00 */ lha r0, 0(r28) @@ -38225,7 +38225,7 @@ lbl_80027DCC: /* 80027DD0 00023A30 7C 05 07 74 */ extsb r5, r0 /* 80027DD4 00023A34 38 8D 80 B0 */ addi r4, r13, lbl_8063D370-_SDA_BASE_ /* 80027DD8 00023A38 4C C6 31 82 */ crclr 6 -/* 80027DDC 00023A3C 48 1A 4D 21 */ bl func_801CCAFC +/* 80027DDC 00023A3C 48 1A 4D 21 */ bl sprintf /* 80027DE0 00023A40 48 00 00 90 */ b lbl_80027E70 lbl_80027DE4: /* 80027DE4 00023A44 A8 1C 00 00 */ lha r0, 0(r28) @@ -38245,7 +38245,7 @@ lbl_80027E08: /* 80027E14 00023A74 38 98 96 5C */ addi r4, r24, -27044 /* 80027E18 00023A78 C0 65 00 08 */ lfs f3, 8(r5) /* 80027E1C 00023A7C 4C C6 32 42 */ crset 6 -/* 80027E20 00023A80 48 1A 4C DD */ bl func_801CCAFC +/* 80027E20 00023A80 48 1A 4C DD */ bl sprintf /* 80027E24 00023A84 48 00 00 4C */ b lbl_80027E70 lbl_80027E28: /* 80027E28 00023A88 A8 BC 00 00 */ lha r5, 0(r28) @@ -38258,13 +38258,13 @@ lbl_80027E38: /* 80027E40 00023AA0 38 8D 80 AC */ addi r4, r13, lbl_8063D36C-_SDA_BASE_ /* 80027E44 00023AA4 38 A5 0D 94 */ addi r5, r5, 0xd94 /* 80027E48 00023AA8 4C C6 31 82 */ crclr 6 -/* 80027E4C 00023AAC 48 1A 4C B1 */ bl func_801CCAFC +/* 80027E4C 00023AAC 48 1A 4C B1 */ bl sprintf /* 80027E50 00023AB0 48 00 00 20 */ b lbl_80027E70 lbl_80027E54: /* 80027E54 00023AB4 7F 63 DB 78 */ mr r3, r27 /* 80027E58 00023AB8 38 99 96 6C */ addi r4, r25, -27028 /* 80027E5C 00023ABC 4C C6 31 82 */ crclr 6 -/* 80027E60 00023AC0 48 1A 4C 9D */ bl func_801CCAFC +/* 80027E60 00023AC0 48 1A 4C 9D */ bl sprintf /* 80027E64 00023AC4 48 00 00 0C */ b lbl_80027E70 lbl_80027E68: /* 80027E68 00023AC8 38 60 00 00 */ li r3, 0 @@ -38653,7 +38653,7 @@ func_800283B0: /* 800283D4 00024034 7F E3 FB 78 */ mr r3, r31 /* 800283D8 00024038 38 8D 80 98 */ addi r4, r13, lbl_8063D358-_SDA_BASE_ /* 800283DC 0002403C 4C C6 31 82 */ crclr 6 -/* 800283E0 00024040 48 1A 47 1D */ bl func_801CCAFC +/* 800283E0 00024040 48 1A 47 1D */ bl sprintf /* 800283E4 00024044 7F E3 FB 78 */ mr r3, r31 /* 800283E8 00024048 48 00 00 94 */ b lbl_8002847C lbl_800283EC: @@ -38663,7 +38663,7 @@ lbl_800283EC: /* 800283F8 00024058 7F E3 FB 78 */ mr r3, r31 /* 800283FC 0002405C 38 8D 80 A4 */ addi r4, r13, lbl_8063D364-_SDA_BASE_ /* 80028400 00024060 4C C6 32 42 */ crset 6 -/* 80028404 00024064 48 1A 46 F9 */ bl func_801CCAFC +/* 80028404 00024064 48 1A 46 F9 */ bl sprintf /* 80028408 00024068 7F E3 FB 78 */ mr r3, r31 /* 8002840C 0002406C 48 00 00 70 */ b lbl_8002847C lbl_80028410: @@ -38677,7 +38677,7 @@ lbl_80028410: /* 8002842C 0002408C C0 45 00 04 */ lfs f2, 4(r5) /* 80028430 00024090 C0 65 00 08 */ lfs f3, 8(r5) /* 80028434 00024094 4C C6 32 42 */ crset 6 -/* 80028438 00024098 48 1A 46 C5 */ bl func_801CCAFC +/* 80028438 00024098 48 1A 46 C5 */ bl sprintf /* 8002843C 0002409C 7F E3 FB 78 */ mr r3, r31 /* 80028440 000240A0 48 00 00 3C */ b lbl_8002847C lbl_80028444: @@ -38686,7 +38686,7 @@ lbl_80028444: /* 8002844C 000240AC 80 83 00 04 */ lwz r4, 4(r3) /* 80028450 000240B0 7F E3 FB 78 */ mr r3, r31 /* 80028454 000240B4 38 84 0D 94 */ addi r4, r4, 0xd94 -/* 80028458 000240B8 48 1A 5E 79 */ bl func_801CE2D0 +/* 80028458 000240B8 48 1A 5E 79 */ bl strcpy /* 8002845C 000240BC 7F E3 FB 78 */ mr r3, r31 /* 80028460 000240C0 48 00 00 1C */ b lbl_8002847C lbl_80028464: @@ -48811,7 +48811,7 @@ lbl_800311C8: /* 800311D0 0002CE30 38 61 00 08 */ addi r3, r1, 8 /* 800311D4 0002CE34 38 84 A0 48 */ addi r4, r4, lbl_8040A048@l /* 800311D8 0002CE38 4C C6 31 82 */ crclr 6 -/* 800311DC 0002CE3C 48 19 B9 21 */ bl func_801CCAFC +/* 800311DC 0002CE3C 48 19 B9 21 */ bl sprintf /* 800311E0 0002CE40 7F E3 FB 78 */ mr r3, r31 /* 800311E4 0002CE44 38 81 00 08 */ addi r4, r1, 8 /* 800311E8 0002CE48 48 01 69 95 */ bl func_80047B7C @@ -56381,7 +56381,7 @@ func_8003775C: /* 80037788 000333E8 7F C6 F3 78 */ mr r6, r30 /* 8003778C 000333EC 38 84 A4 04 */ addi r4, r4, lbl_8040A404@l /* 80037790 000333F0 4C C6 31 82 */ crclr 6 -/* 80037794 000333F4 48 19 53 69 */ bl func_801CCAFC +/* 80037794 000333F4 48 19 53 69 */ bl sprintf /* 80037798 000333F8 48 1A 37 61 */ bl func_801DAEF8 /* 8003779C 000333FC 38 61 00 28 */ addi r3, r1, 0x28 /* 800377A0 00033400 38 81 00 08 */ addi r4, r1, 8 @@ -57371,7 +57371,7 @@ func_80038518: /* 8003851C 0003417C 4D 82 00 20 */ beqlr /* 80038520 00034180 38 A0 00 1F */ li r5, 0x1f /* 80038524 00034184 38 63 0D 94 */ addi r3, r3, 0xd94 -/* 80038528 00034188 48 19 5E 68 */ b func_801CE390 +/* 80038528 00034188 48 19 5E 68 */ b strncpy /* 8003852C 0003418C 4E 80 00 20 */ blr .global func_80038530 @@ -61737,7 +61737,7 @@ lbl_8003C0BC: /* 8003C0C4 00037D24 80 63 00 00 */ lwz r3, 0(r3) /* 8003C0C8 00037D28 38 8D 80 E0 */ addi r4, r13, lbl_8063D3A0-_SDA_BASE_ /* 8003C0CC 00037D2C 38 A0 00 03 */ li r5, 3 -/* 8003C0D0 00037D30 48 19 24 99 */ bl func_801CE568 +/* 8003C0D0 00037D30 48 19 24 99 */ bl strncmp /* 8003C0D4 00037D34 2C 03 00 00 */ cmpwi r3, 0 /* 8003C0D8 00037D38 40 82 00 8C */ bne lbl_8003C164 /* 8003C0DC 00037D3C 57 E4 04 3E */ clrlwi r4, r31, 0x10 @@ -68516,13 +68516,13 @@ lbl_80041C08: /* 80041C08 0003D868 C3 62 82 B0 */ lfs f27, lbl_806408B0-_SDA2_BASE_(r2) lbl_80041C0C: /* 80041C0C 0003D86C FC 20 D8 90 */ fmr f1, f27 -/* 80041C10 0003D870 48 18 8A A5 */ bl func_801CA6B4 +/* 80041C10 0003D870 48 18 8A A5 */ bl __fpclassifyf /* 80041C14 0003D874 2C 03 00 02 */ cmpwi r3, 2 /* 80041C18 0003D878 40 82 00 08 */ bne lbl_80041C20 /* 80041C1C 0003D87C C3 62 82 B0 */ lfs f27, lbl_806408B0-_SDA2_BASE_(r2) lbl_80041C20: /* 80041C20 0003D880 FC 20 D8 90 */ fmr f1, f27 -/* 80041C24 0003D884 48 18 8A 91 */ bl func_801CA6B4 +/* 80041C24 0003D884 48 18 8A 91 */ bl __fpclassifyf /* 80041C28 0003D888 2C 03 00 01 */ cmpwi r3, 1 /* 80041C2C 0003D88C 40 82 00 08 */ bne lbl_80041C34 /* 80041C30 0003D890 C3 62 82 B0 */ lfs f27, lbl_806408B0-_SDA2_BASE_(r2) @@ -71173,75 +71173,75 @@ lbl_8004421C: /* 80044250 0003FEB0 D0 61 00 44 */ stfs f3, 0x44(r1) /* 80044254 0003FEB4 D0 41 00 48 */ stfs f2, 0x48(r1) /* 80044258 0003FEB8 D0 01 00 4C */ stfs f0, 0x4c(r1) -/* 8004425C 0003FEBC 48 18 64 59 */ bl func_801CA6B4 +/* 8004425C 0003FEBC 48 18 64 59 */ bl __fpclassifyf /* 80044260 0003FEC0 2C 03 00 01 */ cmpwi r3, 1 /* 80044264 0003FEC4 41 82 01 14 */ beq lbl_80044378 /* 80044268 0003FEC8 C0 21 00 50 */ lfs f1, 0x50(r1) -/* 8004426C 0003FECC 48 18 64 49 */ bl func_801CA6B4 +/* 8004426C 0003FECC 48 18 64 49 */ bl __fpclassifyf /* 80044270 0003FED0 2C 03 00 02 */ cmpwi r3, 2 /* 80044274 0003FED4 41 82 01 04 */ beq lbl_80044378 /* 80044278 0003FED8 C0 21 00 54 */ lfs f1, 0x54(r1) -/* 8004427C 0003FEDC 48 18 64 39 */ bl func_801CA6B4 +/* 8004427C 0003FEDC 48 18 64 39 */ bl __fpclassifyf /* 80044280 0003FEE0 2C 03 00 01 */ cmpwi r3, 1 /* 80044284 0003FEE4 41 82 00 F4 */ beq lbl_80044378 /* 80044288 0003FEE8 C0 21 00 54 */ lfs f1, 0x54(r1) -/* 8004428C 0003FEEC 48 18 64 29 */ bl func_801CA6B4 +/* 8004428C 0003FEEC 48 18 64 29 */ bl __fpclassifyf /* 80044290 0003FEF0 2C 03 00 02 */ cmpwi r3, 2 /* 80044294 0003FEF4 41 82 00 E4 */ beq lbl_80044378 /* 80044298 0003FEF8 C0 21 00 58 */ lfs f1, 0x58(r1) -/* 8004429C 0003FEFC 48 18 64 19 */ bl func_801CA6B4 +/* 8004429C 0003FEFC 48 18 64 19 */ bl __fpclassifyf /* 800442A0 0003FF00 2C 03 00 01 */ cmpwi r3, 1 /* 800442A4 0003FF04 41 82 00 D4 */ beq lbl_80044378 /* 800442A8 0003FF08 C0 21 00 58 */ lfs f1, 0x58(r1) -/* 800442AC 0003FF0C 48 18 64 09 */ bl func_801CA6B4 +/* 800442AC 0003FF0C 48 18 64 09 */ bl __fpclassifyf /* 800442B0 0003FF10 2C 03 00 02 */ cmpwi r3, 2 /* 800442B4 0003FF14 41 82 00 C4 */ beq lbl_80044378 /* 800442B8 0003FF18 C0 21 00 44 */ lfs f1, 0x44(r1) -/* 800442BC 0003FF1C 48 18 63 F9 */ bl func_801CA6B4 +/* 800442BC 0003FF1C 48 18 63 F9 */ bl __fpclassifyf /* 800442C0 0003FF20 2C 03 00 01 */ cmpwi r3, 1 /* 800442C4 0003FF24 41 82 00 B4 */ beq lbl_80044378 /* 800442C8 0003FF28 C0 21 00 44 */ lfs f1, 0x44(r1) -/* 800442CC 0003FF2C 48 18 63 E9 */ bl func_801CA6B4 +/* 800442CC 0003FF2C 48 18 63 E9 */ bl __fpclassifyf /* 800442D0 0003FF30 2C 03 00 02 */ cmpwi r3, 2 /* 800442D4 0003FF34 41 82 00 A4 */ beq lbl_80044378 /* 800442D8 0003FF38 C0 21 00 48 */ lfs f1, 0x48(r1) -/* 800442DC 0003FF3C 48 18 63 D9 */ bl func_801CA6B4 +/* 800442DC 0003FF3C 48 18 63 D9 */ bl __fpclassifyf /* 800442E0 0003FF40 2C 03 00 01 */ cmpwi r3, 1 /* 800442E4 0003FF44 41 82 00 94 */ beq lbl_80044378 /* 800442E8 0003FF48 C0 21 00 48 */ lfs f1, 0x48(r1) -/* 800442EC 0003FF4C 48 18 63 C9 */ bl func_801CA6B4 +/* 800442EC 0003FF4C 48 18 63 C9 */ bl __fpclassifyf /* 800442F0 0003FF50 2C 03 00 02 */ cmpwi r3, 2 /* 800442F4 0003FF54 41 82 00 84 */ beq lbl_80044378 /* 800442F8 0003FF58 C0 21 00 4C */ lfs f1, 0x4c(r1) -/* 800442FC 0003FF5C 48 18 63 B9 */ bl func_801CA6B4 +/* 800442FC 0003FF5C 48 18 63 B9 */ bl __fpclassifyf /* 80044300 0003FF60 2C 03 00 01 */ cmpwi r3, 1 /* 80044304 0003FF64 41 82 00 74 */ beq lbl_80044378 /* 80044308 0003FF68 C0 21 00 4C */ lfs f1, 0x4c(r1) -/* 8004430C 0003FF6C 48 18 63 A9 */ bl func_801CA6B4 +/* 8004430C 0003FF6C 48 18 63 A9 */ bl __fpclassifyf /* 80044310 0003FF70 2C 03 00 02 */ cmpwi r3, 2 /* 80044314 0003FF74 41 82 00 64 */ beq lbl_80044378 /* 80044318 0003FF78 C0 21 00 88 */ lfs f1, 0x88(r1) -/* 8004431C 0003FF7C 48 18 63 99 */ bl func_801CA6B4 +/* 8004431C 0003FF7C 48 18 63 99 */ bl __fpclassifyf /* 80044320 0003FF80 2C 03 00 01 */ cmpwi r3, 1 /* 80044324 0003FF84 41 82 00 54 */ beq lbl_80044378 /* 80044328 0003FF88 C0 21 00 88 */ lfs f1, 0x88(r1) -/* 8004432C 0003FF8C 48 18 63 89 */ bl func_801CA6B4 +/* 8004432C 0003FF8C 48 18 63 89 */ bl __fpclassifyf /* 80044330 0003FF90 2C 03 00 02 */ cmpwi r3, 2 /* 80044334 0003FF94 41 82 00 44 */ beq lbl_80044378 /* 80044338 0003FF98 C0 21 00 8C */ lfs f1, 0x8c(r1) -/* 8004433C 0003FF9C 48 18 63 79 */ bl func_801CA6B4 +/* 8004433C 0003FF9C 48 18 63 79 */ bl __fpclassifyf /* 80044340 0003FFA0 2C 03 00 01 */ cmpwi r3, 1 /* 80044344 0003FFA4 41 82 00 34 */ beq lbl_80044378 /* 80044348 0003FFA8 C0 21 00 8C */ lfs f1, 0x8c(r1) -/* 8004434C 0003FFAC 48 18 63 69 */ bl func_801CA6B4 +/* 8004434C 0003FFAC 48 18 63 69 */ bl __fpclassifyf /* 80044350 0003FFB0 2C 03 00 02 */ cmpwi r3, 2 /* 80044354 0003FFB4 41 82 00 24 */ beq lbl_80044378 /* 80044358 0003FFB8 C0 21 00 90 */ lfs f1, 0x90(r1) -/* 8004435C 0003FFBC 48 18 63 59 */ bl func_801CA6B4 +/* 8004435C 0003FFBC 48 18 63 59 */ bl __fpclassifyf /* 80044360 0003FFC0 2C 03 00 01 */ cmpwi r3, 1 /* 80044364 0003FFC4 41 82 00 14 */ beq lbl_80044378 /* 80044368 0003FFC8 C0 21 00 90 */ lfs f1, 0x90(r1) -/* 8004436C 0003FFCC 48 18 63 49 */ bl func_801CA6B4 +/* 8004436C 0003FFCC 48 18 63 49 */ bl __fpclassifyf /* 80044370 0003FFD0 2C 03 00 02 */ cmpwi r3, 2 /* 80044374 0003FFD4 40 82 00 38 */ bne lbl_800443AC lbl_80044378: @@ -71260,11 +71260,11 @@ lbl_80044378: /* 800443A8 00040008 D0 21 00 90 */ stfs f1, 0x90(r1) lbl_800443AC: /* 800443AC 0004000C C0 3E 04 E0 */ lfs f1, 0x4e0(r30) -/* 800443B0 00040010 48 18 63 05 */ bl func_801CA6B4 +/* 800443B0 00040010 48 18 63 05 */ bl __fpclassifyf /* 800443B4 00040014 2C 03 00 01 */ cmpwi r3, 1 /* 800443B8 00040018 41 82 00 14 */ beq lbl_800443CC /* 800443BC 0004001C C0 3E 04 E0 */ lfs f1, 0x4e0(r30) -/* 800443C0 00040020 48 18 62 F5 */ bl func_801CA6B4 +/* 800443C0 00040020 48 18 62 F5 */ bl __fpclassifyf /* 800443C4 00040024 2C 03 00 02 */ cmpwi r3, 2 /* 800443C8 00040028 40 82 00 0C */ bne lbl_800443D4 lbl_800443CC: @@ -76401,7 +76401,7 @@ lbl_800488C0: /* 800488D8 00044538 7F C4 F3 78 */ mr r4, r30 /* 800488DC 0004453C 38 7D 00 08 */ addi r3, r29, 8 /* 800488E0 00044540 38 A0 00 80 */ li r5, 0x80 -/* 800488E4 00044544 48 18 5A AD */ bl func_801CE390 +/* 800488E4 00044544 48 18 5A AD */ bl strncpy /* 800488E8 00044548 7F E3 FB 78 */ mr r3, r31 lbl_800488EC: /* 800488EC 0004454C 80 01 00 24 */ lwz r0, 0x24(r1) @@ -76451,7 +76451,7 @@ lbl_8004896C: /* 80048988 000445E8 38 7C 00 08 */ addi r3, r28, 8 /* 8004898C 000445EC 38 84 A4 68 */ addi r4, r4, lbl_8040A468@l /* 80048990 000445F0 4C C6 31 82 */ crclr 6 -/* 80048994 000445F4 48 18 41 69 */ bl func_801CCAFC +/* 80048994 000445F4 48 18 41 69 */ bl sprintf /* 80048998 000445F8 93 BC 00 8C */ stw r29, 0x8c(r28) /* 8004899C 000445FC 7F E3 FB 78 */ mr r3, r31 /* 800489A0 00044600 93 DC 00 90 */ stw r30, 0x90(r28) @@ -77244,7 +77244,7 @@ lbl_800493D4: /* 800493D4 00045034 7F 03 C3 78 */ mr r3, r24 /* 800493D8 00045038 7F E5 FB 78 */ mr r5, r31 /* 800493DC 0004503C 38 9B A4 D0 */ addi r4, r27, -23344 -/* 800493E0 00045040 48 18 51 89 */ bl func_801CE568 +/* 800493E0 00045040 48 18 51 89 */ bl strncmp /* 800493E4 00045044 2C 03 00 00 */ cmpwi r3, 0 /* 800493E8 00045048 40 82 00 74 */ bne lbl_8004945C /* 800493EC 0004504C 2C 1D 00 00 */ cmpwi r29, 0 @@ -77413,7 +77413,7 @@ lbl_80049628: /* 80049628 00045288 90 1F 00 30 */ stw r0, 0x30(r31) /* 8004962C 0004528C 38 8D 80 E8 */ addi r4, r13, lbl_8063D3A8-_SDA_BASE_ /* 80049630 00045290 80 7A 00 2C */ lwz r3, 0x2c(r26) -/* 80049634 00045294 48 18 4E 19 */ bl func_801CE44C +/* 80049634 00045294 48 18 4E 19 */ bl strcmp /* 80049638 00045298 2C 03 00 00 */ cmpwi r3, 0 /* 8004963C 0004529C 40 82 00 0C */ bne lbl_80049648 /* 80049640 000452A0 38 00 00 01 */ li r0, 1 @@ -77452,7 +77452,7 @@ lbl_800496AC: /* 800496AC 0004530C 38 60 00 00 */ li r3, 0 lbl_800496B0: /* 800496B0 00045310 38 9E A4 DC */ addi r4, r30, -23332 -/* 800496B4 00045314 48 18 4D 99 */ bl func_801CE44C +/* 800496B4 00045314 48 18 4D 99 */ bl strcmp /* 800496B8 00045318 2C 03 00 00 */ cmpwi r3, 0 /* 800496BC 0004531C 40 82 00 0C */ bne lbl_800496C8 /* 800496C0 00045320 93 9F 00 34 */ stw r28, 0x34(r31) @@ -77531,7 +77531,7 @@ lbl_800497B0: /* 800497BC 0004541C 7F 43 D3 78 */ mr r3, r26 /* 800497C0 00045420 7F 25 CB 78 */ mr r5, r25 /* 800497C4 00045424 38 9D A4 D0 */ addi r4, r29, -23344 -/* 800497C8 00045428 48 18 4D A1 */ bl func_801CE568 +/* 800497C8 00045428 48 18 4D A1 */ bl strncmp /* 800497CC 0004542C 2C 03 00 00 */ cmpwi r3, 0 /* 800497D0 00045430 40 82 00 6C */ bne lbl_8004983C /* 800497D4 00045434 7C 9A CA 14 */ add r4, r26, r25 @@ -82211,7 +82211,7 @@ lbl_8004DAB8: /* 8004DAC0 00049720 41 82 00 2C */ beq lbl_8004DAEC /* 8004DAC4 00049724 7F A4 EB 78 */ mr r4, r29 /* 8004DAC8 00049728 38 7E 00 08 */ addi r3, r30, 8 -/* 8004DACC 0004972C 48 18 09 81 */ bl func_801CE44C +/* 8004DACC 0004972C 48 18 09 81 */ bl strcmp /* 8004DAD0 00049730 2C 03 00 00 */ cmpwi r3, 0 /* 8004DAD4 00049734 40 82 00 18 */ bne lbl_8004DAEC /* 8004DAD8 00049738 80 9E 00 88 */ lwz r4, 0x88(r30) @@ -82654,7 +82654,7 @@ func_8004E044: /* 8004E068 00049CC8 38 85 AA F8 */ addi r4, r5, lbl_8040AAF8@l /* 8004E06C 00049CCC 38 AD 81 90 */ addi r5, r13, lbl_8063D450-_SDA_BASE_ /* 8004E070 00049CD0 4C C6 31 82 */ crclr 6 -/* 8004E074 00049CD4 48 17 EA 89 */ bl func_801CCAFC +/* 8004E074 00049CD4 48 17 EA 89 */ bl sprintf /* 8004E078 00049CD8 38 61 00 10 */ addi r3, r1, 0x10 /* 8004E07C 00049CDC 38 81 00 08 */ addi r4, r1, 8 /* 8004E080 00049CE0 48 18 EB 41 */ bl func_801DCBC0 diff --git a/asm/text_10.s b/asm/text_10.s index d1fac54..9facf56 100644 --- a/asm/text_10.s +++ b/asm/text_10.s @@ -29,7 +29,7 @@ lbl_80328BBC: lbl_80328BC0: /* 80328BC0 00324820 38 61 00 08 */ addi r3, r1, 8 /* 80328BC4 00324824 38 8D 8E 04 */ addi r4, r13, lbl_8063E0C4-_SDA_BASE_ -/* 80328BC8 00324828 4B EA 57 09 */ bl func_801CE2D0 +/* 80328BC8 00324828 4B EA 57 09 */ bl strcpy /* 80328BCC 0032482C 57 C0 16 3A */ rlwinm r0, r30, 2, 0x18, 0x1d /* 80328BD0 00324830 3C 60 03 00 */ lis r3, 0x300 /* 80328BD4 00324834 90 61 00 0C */ stw r3, 0xc(r1) @@ -101,14 +101,14 @@ func_80328CAC: /* 80328CC8 00324928 7C BD 2B 78 */ mr r29, r5 /* 80328CCC 0032492C 38 80 00 00 */ li r4, 0 /* 80328CD0 00324930 7F 83 E3 78 */ mr r3, r28 -/* 80328CD4 00324934 4B EA 58 D5 */ bl func_801CE5A8 +/* 80328CD4 00324934 4B EA 58 D5 */ bl strchr /* 80328CD8 00324938 7C 7F 1B 78 */ mr r31, r3 /* 80328CDC 0032493C 3B C0 00 00 */ li r30, 0 /* 80328CE0 00324940 48 00 00 28 */ b lbl_80328D08 lbl_80328CE4: /* 80328CE4 00324944 7F 83 E3 78 */ mr r3, r28 /* 80328CE8 00324948 38 80 00 2F */ li r4, 0x2f -/* 80328CEC 0032494C 4B EA 58 BD */ bl func_801CE5A8 +/* 80328CEC 0032494C 4B EA 58 BD */ bl strchr /* 80328CF0 00324950 2C 03 00 00 */ cmpwi r3, 0 /* 80328CF4 00324954 40 82 00 0C */ bne lbl_80328D00 /* 80328CF8 00324958 38 60 FF FF */ li r3, -1 @@ -121,7 +121,7 @@ lbl_80328D08: /* 80328D0C 0032496C 41 80 FF D8 */ blt lbl_80328CE4 /* 80328D10 00324970 7F 83 E3 78 */ mr r3, r28 /* 80328D14 00324974 38 80 00 2F */ li r4, 0x2f -/* 80328D18 00324978 4B EA 58 91 */ bl func_801CE5A8 +/* 80328D18 00324978 4B EA 58 91 */ bl strchr /* 80328D1C 0032497C 2C 03 00 00 */ cmpwi r3, 0 /* 80328D20 00324980 40 82 00 08 */ bne lbl_80328D28 /* 80328D24 00324984 7F E3 FB 78 */ mr r3, r31 @@ -3973,7 +3973,7 @@ lbl_8032C3FC: /* 8032C408 00328068 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 8032C40C 0032806C 38 C6 00 01 */ addi r6, r6, 1 /* 8032C410 00328070 4C C6 31 82 */ crclr 6 -/* 8032C414 00328074 4B EA 06 11 */ bl func_801CCA24 +/* 8032C414 00328074 4B EA 06 11 */ bl snprintf /* 8032C418 00328078 38 81 00 0C */ addi r4, r1, 0xc /* 8032C41C 0032807C 38 A1 00 18 */ addi r5, r1, 0x18 /* 8032C420 00328080 38 6D 8D AC */ addi r3, r13, lbl_8063E06C-_SDA_BASE_ @@ -3986,7 +3986,7 @@ lbl_8032C3FC: /* 8032C43C 0032809C 88 C6 00 0D */ lbz r6, 0xd(r6) /* 8032C440 003280A0 38 C6 00 01 */ addi r6, r6, 1 /* 8032C444 003280A4 4C C6 31 82 */ crclr 6 -/* 8032C448 003280A8 4B EA 05 DD */ bl func_801CCA24 +/* 8032C448 003280A8 4B EA 05 DD */ bl snprintf /* 8032C44C 003280AC 38 81 00 0C */ addi r4, r1, 0xc /* 8032C450 003280B0 38 A1 00 18 */ addi r5, r1, 0x18 /* 8032C454 003280B4 38 6D 8D B0 */ addi r3, r13, lbl_8063E070-_SDA_BASE_ @@ -3997,7 +3997,7 @@ lbl_8032C3FC: /* 8032C468 003280C8 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 8032C46C 003280CC 38 C0 00 03 */ li r6, 3 /* 8032C470 003280D0 4C C6 31 82 */ crclr 6 -/* 8032C474 003280D4 4B EA 05 B1 */ bl func_801CCA24 +/* 8032C474 003280D4 4B EA 05 B1 */ bl snprintf /* 8032C478 003280D8 38 81 00 0C */ addi r4, r1, 0xc /* 8032C47C 003280DC 38 A1 00 18 */ addi r5, r1, 0x18 /* 8032C480 003280E0 38 6D 8D B4 */ addi r3, r13, lbl_8063E074-_SDA_BASE_ @@ -8364,7 +8364,7 @@ lbl_8033014C: /* 803301AC 0032BE0C 54 00 80 3E */ rotlwi r0, r0, 0x10 /* 803301B0 0032BE10 90 C1 00 0C */ stw r6, 0xc(r1) /* 803301B4 0032BE14 90 01 00 18 */ stw r0, 0x18(r1) -/* 803301B8 0032BE18 4B E9 E3 B1 */ bl func_801CE568 +/* 803301B8 0032BE18 4B E9 E3 B1 */ bl strncmp /* 803301BC 0032BE1C 2C 03 00 00 */ cmpwi r3, 0 /* 803301C0 0032BE20 41 82 00 18 */ beq lbl_803301D8 /* 803301C4 0032BE24 38 9F 16 E4 */ addi r4, r31, 0x16e4 @@ -8549,7 +8549,7 @@ lbl_8033040C: /* 80330458 0032C0B8 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 8033045C 0032C0BC 80 C6 02 10 */ lwz r6, 0x210(r6) /* 80330460 0032C0C0 4C C6 31 82 */ crclr 6 -/* 80330464 0032C0C4 4B E9 C5 C1 */ bl func_801CCA24 +/* 80330464 0032C0C4 4B E9 C5 C1 */ bl snprintf /* 80330468 0032C0C8 83 2D B0 68 */ lwz r25, lbl_80640328-_SDA_BASE_(r13) /* 8033046C 0032C0CC 38 A0 00 00 */ li r5, 0 /* 80330470 0032C0D0 7C 79 EA 14 */ add r3, r25, r29 @@ -9126,7 +9126,7 @@ lbl_80330C7C: /* 80330C94 0032C8F4 93 BF 00 00 */ stw r29, 0(r31) /* 80330C98 0032C8F8 90 1F 00 0C */ stw r0, 0xc(r31) /* 80330C9C 0032C8FC 93 DF 00 14 */ stw r30, 0x14(r31) -/* 80330CA0 0032C900 4B E9 D6 F1 */ bl func_801CE390 +/* 80330CA0 0032C900 4B E9 D6 F1 */ bl strncpy /* 80330CA4 0032C904 57 C4 C2 1E */ rlwinm r4, r30, 0x18, 8, 0xf /* 80330CA8 0032C908 57 C0 40 0E */ rlwinm r0, r30, 8, 0, 7 /* 80330CAC 0032C90C 53 C4 C6 3E */ rlwimi r4, r30, 0x18, 0x18, 0x1f @@ -9729,7 +9729,7 @@ lbl_803314C8: /* 803314D8 0032D138 38 61 00 0E */ addi r3, r1, 0xe /* 803314DC 0032D13C 38 8D 8E 18 */ addi r4, r13, lbl_8063E0D8-_SDA_BASE_ /* 803314E0 0032D140 38 A0 00 02 */ li r5, 2 -/* 803314E4 0032D144 4B E9 8E B5 */ bl func_801CA398 +/* 803314E4 0032D144 4B E9 8E B5 */ bl memcmp /* 803314E8 0032D148 2C 03 00 00 */ cmpwi r3, 0 /* 803314EC 0032D14C 40 82 00 18 */ bne lbl_80331504 /* 803314F0 0032D150 A0 61 00 0C */ lhz r3, 0xc(r1) @@ -9838,7 +9838,7 @@ func_80331618: /* 80331658 0032D2B8 38 61 00 0E */ addi r3, r1, 0xe /* 8033165C 0032D2BC 38 8D 8E 18 */ addi r4, r13, lbl_8063E0D8-_SDA_BASE_ /* 80331660 0032D2C0 38 A0 00 02 */ li r5, 2 -/* 80331664 0032D2C4 4B E9 8D 35 */ bl func_801CA398 +/* 80331664 0032D2C4 4B E9 8D 35 */ bl memcmp /* 80331668 0032D2C8 2C 03 00 00 */ cmpwi r3, 0 /* 8033166C 0032D2CC 40 82 00 18 */ bne lbl_80331684 /* 80331670 0032D2D0 A0 61 00 0C */ lhz r3, 0xc(r1) @@ -11433,7 +11433,7 @@ func_80332CA8: /* 80332E08 0032EA68 9B 61 00 17 */ stb r27, 0x17(r1) /* 80332E0C 0032EA6C 90 01 00 08 */ stw r0, 8(r1) /* 80332E10 0032EA70 4C C6 31 82 */ crclr 6 -/* 80332E14 0032EA74 4B E9 9C 11 */ bl func_801CCA24 +/* 80332E14 0032EA74 4B E9 9C 11 */ bl snprintf /* 80332E18 0032EA78 39 61 00 60 */ addi r11, r1, 0x60 /* 80332E1C 0032EA7C 4B E9 43 59 */ bl _restgpr_27 /* 80332E20 0032EA80 80 01 00 64 */ lwz r0, 0x64(r1) @@ -12420,7 +12420,7 @@ func_80333AC4: /* 80333C24 0032F884 9B 41 00 2F */ stb r26, 0x2f(r1) /* 80333C28 0032F888 91 61 00 08 */ stw r11, 8(r1) /* 80333C2C 0032F88C 4C C6 31 82 */ crclr 6 -/* 80333C30 0032F890 4B E9 8D F5 */ bl func_801CCA24 +/* 80333C30 0032F890 4B E9 8D F5 */ bl snprintf /* 80333C34 0032F894 39 61 00 60 */ addi r11, r1, 0x60 /* 80333C38 0032F898 4B E9 35 39 */ bl _restgpr_26 /* 80333C3C 0032F89C 80 01 00 64 */ lwz r0, 0x64(r1) @@ -12528,7 +12528,7 @@ lbl_80333D84: /* 80333D98 0032F9F8 38 80 00 0D */ li r4, 0xd /* 80333D9C 0032F9FC 38 AD 8E 20 */ addi r5, r13, lbl_8063E0E0-_SDA_BASE_ /* 80333DA0 0032FA00 4C C6 31 82 */ crclr 6 -/* 80333DA4 0032FA04 4B E9 8C 81 */ bl func_801CCA24 +/* 80333DA4 0032FA04 4B E9 8C 81 */ bl snprintf /* 80333DA8 0032FA08 38 9F 00 70 */ addi r4, r31, 0x70 /* 80333DAC 0032FA0C 38 A1 00 10 */ addi r5, r1, 0x10 /* 80333DB0 0032FA10 38 60 FF FF */ li r3, -1 @@ -12621,7 +12621,7 @@ lbl_80333DC0: /* 80333F08 0032FB68 9B 01 00 3F */ stb r24, 0x3f(r1) /* 80333F0C 0032FB6C 91 61 00 08 */ stw r11, 8(r1) /* 80333F10 0032FB70 4C C6 31 82 */ crclr 6 -/* 80333F14 0032FB74 4B E9 8B 11 */ bl func_801CCA24 +/* 80333F14 0032FB74 4B E9 8B 11 */ bl snprintf /* 80333F18 0032FB78 38 9F 00 80 */ addi r4, r31, 0x80 /* 80333F1C 0032FB7C 38 A1 00 50 */ addi r5, r1, 0x50 /* 80333F20 0032FB80 38 60 FF FF */ li r3, -1 @@ -12810,7 +12810,7 @@ lbl_803341A8: /* 803341C0 0032FE20 7F 44 D3 78 */ mr r4, r26 /* 803341C4 0032FE24 38 A0 00 0C */ li r5, 0xc /* 803341C8 0032FE28 38 63 41 B2 */ addi r3, r3, 0x41b2 -/* 803341CC 0032FE2C 4B E9 A1 C5 */ bl func_801CE390 +/* 803341CC 0032FE2C 4B E9 A1 C5 */ bl strncpy /* 803341D0 0032FE30 80 6D B0 8C */ lwz r3, lbl_8064034C-_SDA_BASE_(r13) /* 803341D4 0032FE34 3B 80 00 01 */ li r28, 1 /* 803341D8 0032FE38 3F A0 80 61 */ lis r29, lbl_806104E0@ha @@ -13398,10 +13398,10 @@ func_80334A28: /* 80334A40 003306A0 93 C1 00 08 */ stw r30, 8(r1) /* 80334A44 003306A4 7C 9E 23 78 */ mr r30, r4 /* 80334A48 003306A8 38 9F 00 04 */ addi r4, r31, 4 -/* 80334A4C 003306AC 4B E9 98 85 */ bl func_801CE2D0 +/* 80334A4C 003306AC 4B E9 98 85 */ bl strcpy /* 80334A50 003306B0 7F C3 F3 78 */ mr r3, r30 /* 80334A54 003306B4 38 9F 01 31 */ addi r4, r31, 0x131 -/* 80334A58 003306B8 4B E9 98 79 */ bl func_801CE2D0 +/* 80334A58 003306B8 4B E9 98 79 */ bl strcpy /* 80334A5C 003306BC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80334A60 003306C0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80334A64 003306C4 83 C1 00 08 */ lwz r30, 8(r1) @@ -13507,15 +13507,15 @@ lbl_80334B90: /* 80334BBC 0033081C 38 8D 8E 2C */ addi r4, r13, lbl_8063E0EC-_SDA_BASE_ /* 80334BC0 00330820 54 00 10 3A */ slwi r0, r0, 2 /* 80334BC4 00330824 7C 63 00 2E */ lwzx r3, r3, r0 -/* 80334BC8 00330828 4B E9 9B D9 */ bl func_801CE7A0 +/* 80334BC8 00330828 4B E9 9B D9 */ bl strstr /* 80334BCC 0033082C 7C 64 1B 78 */ mr r4, r3 /* 80334BD0 00330830 3E C0 80 61 */ lis r22, lbl_80610824@ha /* 80334BD4 00330834 38 76 08 24 */ addi r3, r22, lbl_80610824@l /* 80334BD8 00330838 38 84 00 02 */ addi r4, r4, 2 -/* 80334BDC 0033083C 4B E9 96 F5 */ bl func_801CE2D0 +/* 80334BDC 0033083C 4B E9 96 F5 */ bl strcpy /* 80334BE0 00330840 38 76 08 24 */ addi r3, r22, 0x824 /* 80334BE4 00330844 38 8D 8E 30 */ addi r4, r13, lbl_8063E0F0-_SDA_BASE_ -/* 80334BE8 00330848 4B E9 9B B9 */ bl func_801CE7A0 +/* 80334BE8 00330848 4B E9 9B B9 */ bl strstr /* 80334BEC 0033084C 3A E0 00 00 */ li r23, 0 /* 80334BF0 00330850 38 B6 08 24 */ addi r5, r22, 0x824 /* 80334BF4 00330854 9A E3 00 00 */ stb r23, 0(r3) @@ -13608,7 +13608,7 @@ lbl_80334CA4: /* 80334D44 003309A4 38 61 00 88 */ addi r3, r1, 0x88 /* 80334D48 003309A8 38 8D 8E 58 */ addi r4, r13, lbl_8063E118-_SDA_BASE_ /* 80334D4C 003309AC 4C C6 31 82 */ crclr 6 -/* 80334D50 003309B0 4B E9 7D AD */ bl func_801CCAFC +/* 80334D50 003309B0 4B E9 7D AD */ bl sprintf /* 80334D54 003309B4 38 61 00 88 */ addi r3, r1, 0x88 /* 80334D58 003309B8 4B E9 1E 0D */ bl strlen /* 80334D5C 003309BC 7C 64 1B 78 */ mr r4, r3 @@ -13691,7 +13691,7 @@ lbl_80334DE0: /* 80334E8C 00330AEC 38 61 00 88 */ addi r3, r1, 0x88 /* 80334E90 00330AF0 38 8D 8E 58 */ addi r4, r13, lbl_8063E118-_SDA_BASE_ /* 80334E94 00330AF4 4C C6 31 82 */ crclr 6 -/* 80334E98 00330AF8 4B E9 7C 65 */ bl func_801CCAFC +/* 80334E98 00330AF8 4B E9 7C 65 */ bl sprintf /* 80334E9C 00330AFC 38 61 00 88 */ addi r3, r1, 0x88 /* 80334EA0 00330B00 4B E9 1C C5 */ bl strlen /* 80334EA4 00330B04 7C 64 1B 78 */ mr r4, r3 @@ -13759,7 +13759,7 @@ lbl_80334EEC: /* 80334F98 00330BF8 38 61 00 88 */ addi r3, r1, 0x88 /* 80334F9C 00330BFC 38 8D 8E 8C */ addi r4, r13, lbl_8063E14C-_SDA_BASE_ /* 80334FA0 00330C00 38 A0 00 03 */ li r5, 3 -/* 80334FA4 00330C04 4B E9 93 ED */ bl func_801CE390 +/* 80334FA4 00330C04 4B E9 93 ED */ bl strncpy /* 80334FA8 00330C08 48 00 00 6C */ b lbl_80335014 lbl_80334FAC: /* 80334FAC 00330C0C 38 61 00 88 */ addi r3, r1, 0x88 @@ -13767,7 +13767,7 @@ lbl_80334FAC: /* 80334FB4 00330C14 54 06 06 3E */ clrlwi r6, r0, 0x18 /* 80334FB8 00330C18 38 8D 8E 90 */ addi r4, r13, lbl_8063E150-_SDA_BASE_ /* 80334FBC 00330C1C 4C C6 31 82 */ crclr 6 -/* 80334FC0 00330C20 4B E9 7B 3D */ bl func_801CCAFC +/* 80334FC0 00330C20 4B E9 7B 3D */ bl sprintf /* 80334FC4 00330C24 48 00 00 50 */ b lbl_80335014 lbl_80334FC8: /* 80334FC8 00330C28 7C 65 1B 78 */ mr r5, r3 @@ -13778,7 +13778,7 @@ lbl_80334FC8: /* 80334FDC 00330C3C 38 61 00 88 */ addi r3, r1, 0x88 /* 80334FE0 00330C40 38 8D 8E 98 */ addi r4, r13, lbl_8063E158-_SDA_BASE_ /* 80334FE4 00330C44 38 A0 00 03 */ li r5, 3 -/* 80334FE8 00330C48 4B E9 93 A9 */ bl func_801CE390 +/* 80334FE8 00330C48 4B E9 93 A9 */ bl strncpy /* 80334FEC 00330C4C 48 00 00 28 */ b lbl_80335014 lbl_80334FF0: /* 80334FF0 00330C50 7C 65 1B 78 */ mr r5, r3 @@ -13789,7 +13789,7 @@ lbl_80334FF0: /* 80335004 00330C64 38 61 00 88 */ addi r3, r1, 0x88 /* 80335008 00330C68 38 8D 8E 98 */ addi r4, r13, lbl_8063E158-_SDA_BASE_ /* 8033500C 00330C6C 38 A0 00 03 */ li r5, 3 -/* 80335010 00330C70 4B E9 93 81 */ bl func_801CE390 +/* 80335010 00330C70 4B E9 93 81 */ bl strncpy lbl_80335014: /* 80335014 00330C74 38 61 00 88 */ addi r3, r1, 0x88 /* 80335018 00330C78 4B E9 1B 4D */ bl strlen @@ -13837,7 +13837,7 @@ lbl_80335014: /* 803350C0 00330D20 89 21 00 1C */ lbz r9, 0x1c(r1) /* 803350C4 00330D24 89 41 00 1D */ lbz r10, 0x1d(r1) /* 803350C8 00330D28 4C C6 31 82 */ crclr 6 -/* 803350CC 00330D2C 4B E9 7A 31 */ bl func_801CCAFC +/* 803350CC 00330D2C 4B E9 7A 31 */ bl sprintf /* 803350D0 00330D30 38 61 00 88 */ addi r3, r1, 0x88 /* 803350D4 00330D34 4B E9 1A 91 */ bl strlen /* 803350D8 00330D38 7C 64 1B 78 */ mr r4, r3 @@ -13862,7 +13862,7 @@ lbl_80335014: /* 80335124 00330D84 38 61 00 88 */ addi r3, r1, 0x88 /* 80335128 00330D88 38 8D 8E BC */ addi r4, r13, lbl_8063E17C-_SDA_BASE_ /* 8033512C 00330D8C 4C C6 31 82 */ crclr 6 -/* 80335130 00330D90 4B E9 79 CD */ bl func_801CCAFC +/* 80335130 00330D90 4B E9 79 CD */ bl sprintf /* 80335134 00330D94 38 9E 03 CC */ addi r4, r30, 0x3cc /* 80335138 00330D98 38 A1 00 88 */ addi r5, r1, 0x88 /* 8033513C 00330D9C 3C 60 01 00 */ lis r3, 0x100 @@ -13903,7 +13903,7 @@ lbl_80335014: /* 803351C8 00330E28 1C 00 00 64 */ mulli r0, r0, 0x64 /* 803351CC 00330E2C 7C A0 60 50 */ subf r5, r0, r12 /* 803351D0 00330E30 4C C6 31 82 */ crclr 6 -/* 803351D4 00330E34 4B E9 79 29 */ bl func_801CCAFC +/* 803351D4 00330E34 4B E9 79 29 */ bl sprintf /* 803351D8 00330E38 38 61 00 88 */ addi r3, r1, 0x88 /* 803351DC 00330E3C 4B E9 19 89 */ bl strlen /* 803351E0 00330E40 7C 64 1B 78 */ mr r4, r3 @@ -13931,7 +13931,7 @@ lbl_80335014: /* 80335238 00330E98 38 61 00 88 */ addi r3, r1, 0x88 /* 8033523C 00330E9C 38 8D 8E BC */ addi r4, r13, lbl_8063E17C-_SDA_BASE_ /* 80335240 00330EA0 4C C6 31 82 */ crclr 6 -/* 80335244 00330EA4 4B E9 78 B9 */ bl func_801CCAFC +/* 80335244 00330EA4 4B E9 78 B9 */ bl sprintf /* 80335248 00330EA8 38 9E 04 08 */ addi r4, r30, 0x408 /* 8033524C 00330EAC 38 A1 00 88 */ addi r5, r1, 0x88 /* 80335250 00330EB0 3C 60 01 00 */ lis r3, 0x100 @@ -13965,7 +13965,7 @@ lbl_80335294: /* 803352BC 00330F1C 38 61 00 88 */ addi r3, r1, 0x88 /* 803352C0 00330F20 38 8D 8E D8 */ addi r4, r13, lbl_8063E198-_SDA_BASE_ /* 803352C4 00330F24 4C C6 31 82 */ crclr 6 -/* 803352C8 00330F28 4B E9 78 35 */ bl func_801CCAFC +/* 803352C8 00330F28 4B E9 78 35 */ bl sprintf /* 803352CC 00330F2C 38 9E 04 28 */ addi r4, r30, 0x428 /* 803352D0 00330F30 38 A1 00 88 */ addi r5, r1, 0x88 /* 803352D4 00330F34 3C 60 01 00 */ lis r3, 0x100 @@ -13993,7 +13993,7 @@ lbl_8033531C: /* 80335328 00330F88 38 61 00 88 */ addi r3, r1, 0x88 /* 8033532C 00330F8C 38 8D 8E E8 */ addi r4, r13, lbl_8063E1A8-_SDA_BASE_ /* 80335330 00330F90 4C C6 31 82 */ crclr 6 -/* 80335334 00330F94 4B E9 77 C9 */ bl func_801CCAFC +/* 80335334 00330F94 4B E9 77 C9 */ bl sprintf /* 80335338 00330F98 38 9E 04 38 */ addi r4, r30, 0x438 /* 8033533C 00330F9C 38 A1 00 88 */ addi r5, r1, 0x88 /* 80335340 00330FA0 3C 60 01 00 */ lis r3, 0x100 @@ -14019,7 +14019,7 @@ lbl_8033531C: /* 80335390 00330FF0 38 61 00 88 */ addi r3, r1, 0x88 /* 80335394 00330FF4 38 8D 8E BC */ addi r4, r13, lbl_8063E17C-_SDA_BASE_ /* 80335398 00330FF8 4C C6 31 82 */ crclr 6 -/* 8033539C 00330FFC 4B E9 77 61 */ bl func_801CCAFC +/* 8033539C 00330FFC 4B E9 77 61 */ bl sprintf /* 803353A0 00331000 38 9E 04 44 */ addi r4, r30, 0x444 /* 803353A4 00331004 38 A1 00 88 */ addi r5, r1, 0x88 /* 803353A8 00331008 3C 60 01 00 */ lis r3, 0x100 @@ -14134,7 +14134,7 @@ lbl_8033552C: /* 80335544 003311A4 40 81 06 08 */ ble lbl_80335B4C /* 80335548 003311A8 80 61 00 0C */ lwz r3, 0xc(r1) /* 8033554C 003311AC 7F 04 C3 78 */ mr r4, r24 -/* 80335550 003311B0 4B E9 91 2D */ bl func_801CE67C +/* 80335550 003311B0 4B E9 91 2D */ bl strtok /* 80335554 003311B4 3F C0 80 61 */ lis r30, lbl_806106B0@ha /* 80335558 003311B8 3B A1 00 38 */ addi r29, r1, 0x38 /* 8033555C 003311BC 7C 79 1B 78 */ mr r25, r3 @@ -14147,7 +14147,7 @@ lbl_8033556C: /* 80335574 003311D4 7C 65 1B 78 */ mr r5, r3 /* 80335578 003311D8 7F 23 CB 78 */ mr r3, r25 /* 8033557C 003311DC 38 8D 8F 00 */ addi r4, r13, lbl_8063E1C0-_SDA_BASE_ -/* 80335580 003311E0 4B E9 8F E9 */ bl func_801CE568 +/* 80335580 003311E0 4B E9 8F E9 */ bl strncmp /* 80335584 003311E4 2C 03 00 00 */ cmpwi r3, 0 /* 80335588 003311E8 40 82 00 58 */ bne lbl_803355E0 /* 8033558C 003311EC 7F 23 CB 78 */ mr r3, r25 @@ -14177,7 +14177,7 @@ lbl_803355E0: /* 803355E8 00331248 7C 65 1B 78 */ mr r5, r3 /* 803355EC 0033124C 7F 23 CB 78 */ mr r3, r25 /* 803355F0 00331250 38 9A 04 E0 */ addi r4, r26, 0x4e0 -/* 803355F4 00331254 4B E9 8F 75 */ bl func_801CE568 +/* 803355F4 00331254 4B E9 8F 75 */ bl strncmp /* 803355F8 00331258 2C 03 00 00 */ cmpwi r3, 0 /* 803355FC 0033125C 40 82 00 6C */ bne lbl_80335668 /* 80335600 00331260 7F 23 CB 78 */ mr r3, r25 @@ -14197,7 +14197,7 @@ lbl_803355E0: /* 80335638 00331298 7C 75 1B 78 */ mr r21, r3 /* 8033563C 0033129C 7F A4 EB 78 */ mr r4, r29 /* 80335640 003312A0 38 61 00 08 */ addi r3, r1, 8 -/* 80335644 003312A4 4B E9 8C 8D */ bl func_801CE2D0 +/* 80335644 003312A4 4B E9 8C 8D */ bl strcpy /* 80335648 003312A8 7E A5 AB 78 */ mr r5, r21 /* 8033564C 003312AC 7F A6 EB 78 */ mr r6, r29 /* 80335650 003312B0 38 9A 04 EC */ addi r4, r26, 0x4ec @@ -14212,7 +14212,7 @@ lbl_80335668: /* 80335670 003312D0 7C 65 1B 78 */ mr r5, r3 /* 80335674 003312D4 7F 23 CB 78 */ mr r3, r25 /* 80335678 003312D8 38 9A 05 00 */ addi r4, r26, 0x500 -/* 8033567C 003312DC 4B E9 8E ED */ bl func_801CE568 +/* 8033567C 003312DC 4B E9 8E ED */ bl strncmp /* 80335680 003312E0 2C 03 00 00 */ cmpwi r3, 0 /* 80335684 003312E4 40 82 00 EC */ bne lbl_80335770 /* 80335688 003312E8 7F 23 CB 78 */ mr r3, r25 @@ -14239,7 +14239,7 @@ lbl_80335668: /* 803356DC 0033133C 39 21 00 14 */ addi r9, r1, 0x14 /* 803356E0 00331340 39 41 00 10 */ addi r10, r1, 0x10 /* 803356E4 00331344 4C C6 31 82 */ crclr 6 -/* 803356E8 00331348 4B E9 8B 21 */ bl func_801CE208 +/* 803356E8 00331348 4B E9 8B 21 */ bl sscanf /* 803356EC 0033134C 2C 03 00 06 */ cmpwi r3, 6 /* 803356F0 00331350 41 82 00 24 */ beq lbl_80335714 /* 803356F4 00331354 7F A5 EB 78 */ mr r5, r29 @@ -14281,7 +14281,7 @@ lbl_80335770: /* 80335778 003313D8 7C 65 1B 78 */ mr r5, r3 /* 8033577C 003313DC 7F 23 CB 78 */ mr r3, r25 /* 80335780 003313E0 38 9A 05 58 */ addi r4, r26, 0x558 -/* 80335784 003313E4 4B E9 8D E5 */ bl func_801CE568 +/* 80335784 003313E4 4B E9 8D E5 */ bl strncmp /* 80335788 003313E8 2C 03 00 00 */ cmpwi r3, 0 /* 8033578C 003313EC 40 82 00 68 */ bne lbl_803357F4 /* 80335790 003313F0 7F 23 CB 78 */ mr r3, r25 @@ -14301,7 +14301,7 @@ lbl_80335770: /* 803357C8 00331428 7C 76 1B 78 */ mr r22, r3 /* 803357CC 0033142C 7F A4 EB 78 */ mr r4, r29 /* 803357D0 00331430 38 7B 01 7B */ addi r3, r27, 0x17b -/* 803357D4 00331434 4B E9 8A FD */ bl func_801CE2D0 +/* 803357D4 00331434 4B E9 8A FD */ bl strcpy /* 803357D8 00331438 7E C5 B3 78 */ mr r5, r22 /* 803357DC 0033143C 7F A6 EB 78 */ mr r6, r29 /* 803357E0 00331440 38 9A 05 64 */ addi r4, r26, 0x564 @@ -14315,7 +14315,7 @@ lbl_803357F4: /* 803357FC 0033145C 7C 65 1B 78 */ mr r5, r3 /* 80335800 00331460 7F 23 CB 78 */ mr r3, r25 /* 80335804 00331464 38 8D 8F 08 */ addi r4, r13, lbl_8063E1C8-_SDA_BASE_ -/* 80335808 00331468 4B E9 8D 61 */ bl func_801CE568 +/* 80335808 00331468 4B E9 8D 61 */ bl strncmp /* 8033580C 0033146C 2C 03 00 00 */ cmpwi r3, 0 /* 80335810 00331470 40 82 00 68 */ bne lbl_80335878 /* 80335814 00331474 7F 23 CB 78 */ mr r3, r25 @@ -14335,7 +14335,7 @@ lbl_803357F4: /* 8033584C 003314AC 7C 76 1B 78 */ mr r22, r3 /* 80335850 003314B0 7F A4 EB 78 */ mr r4, r29 /* 80335854 003314B4 38 7B 00 04 */ addi r3, r27, 4 -/* 80335858 003314B8 4B E9 8A 79 */ bl func_801CE2D0 +/* 80335858 003314B8 4B E9 8A 79 */ bl strcpy /* 8033585C 003314BC 7E C5 B3 78 */ mr r5, r22 /* 80335860 003314C0 7F A6 EB 78 */ mr r6, r29 /* 80335864 003314C4 38 9A 05 78 */ addi r4, r26, 0x578 @@ -14349,7 +14349,7 @@ lbl_80335878: /* 80335880 003314E0 7C 65 1B 78 */ mr r5, r3 /* 80335884 003314E4 7F 23 CB 78 */ mr r3, r25 /* 80335888 003314E8 38 9A 05 88 */ addi r4, r26, 0x588 -/* 8033588C 003314EC 4B E9 8C DD */ bl func_801CE568 +/* 8033588C 003314EC 4B E9 8C DD */ bl strncmp /* 80335890 003314F0 2C 03 00 00 */ cmpwi r3, 0 /* 80335894 003314F4 40 82 00 68 */ bne lbl_803358FC /* 80335898 003314F8 7F 23 CB 78 */ mr r3, r25 @@ -14369,7 +14369,7 @@ lbl_80335878: /* 803358D0 00331530 7C 76 1B 78 */ mr r22, r3 /* 803358D4 00331534 7F A4 EB 78 */ mr r4, r29 /* 803358D8 00331538 38 7B 01 31 */ addi r3, r27, 0x131 -/* 803358DC 0033153C 4B E9 89 F5 */ bl func_801CE2D0 +/* 803358DC 0033153C 4B E9 89 F5 */ bl strcpy /* 803358E0 00331540 7E C5 B3 78 */ mr r5, r22 /* 803358E4 00331544 7F A6 EB 78 */ mr r6, r29 /* 803358E8 00331548 38 9A 05 94 */ addi r4, r26, 0x594 @@ -14383,7 +14383,7 @@ lbl_803358FC: /* 80335904 00331564 7C 65 1B 78 */ mr r5, r3 /* 80335908 00331568 7F 23 CB 78 */ mr r3, r25 /* 8033590C 0033156C 38 8D 8F 10 */ addi r4, r13, lbl_8063E1D0-_SDA_BASE_ -/* 80335910 00331570 4B E9 8C 59 */ bl func_801CE568 +/* 80335910 00331570 4B E9 8C 59 */ bl strncmp /* 80335914 00331574 2C 03 00 00 */ cmpwi r3, 0 /* 80335918 00331578 40 82 00 74 */ bne lbl_8033598C /* 8033591C 0033157C 7F 23 CB 78 */ mr r3, r25 @@ -14405,7 +14405,7 @@ lbl_803358FC: /* 8033595C 003315BC 38 BB 01 B0 */ addi r5, r27, 0x1b0 /* 80335960 003315C0 38 8D 8F 18 */ addi r4, r13, lbl_8063E1D8-_SDA_BASE_ /* 80335964 003315C4 4C C6 31 82 */ crclr 6 -/* 80335968 003315C8 4B E9 88 A1 */ bl func_801CE208 +/* 80335968 003315C8 4B E9 88 A1 */ bl sscanf /* 8033596C 003315CC 80 FB 01 B0 */ lwz r7, 0x1b0(r27) /* 80335970 003315D0 7E C5 B3 78 */ mr r5, r22 /* 80335974 003315D4 81 1B 01 B4 */ lwz r8, 0x1b4(r27) @@ -14420,7 +14420,7 @@ lbl_8033598C: /* 80335994 003315F4 7C 65 1B 78 */ mr r5, r3 /* 80335998 003315F8 7F 23 CB 78 */ mr r3, r25 /* 8033599C 003315FC 38 9A 05 BC */ addi r4, r26, 0x5bc -/* 803359A0 00331600 4B E9 8B C9 */ bl func_801CE568 +/* 803359A0 00331600 4B E9 8B C9 */ bl strncmp /* 803359A4 00331604 2C 03 00 00 */ cmpwi r3, 0 /* 803359A8 00331608 40 82 00 68 */ bne lbl_80335A10 /* 803359AC 0033160C 7F 23 CB 78 */ mr r3, r25 @@ -14440,7 +14440,7 @@ lbl_8033598C: /* 803359E4 00331644 7C 76 1B 78 */ mr r22, r3 /* 803359E8 00331648 7F A4 EB 78 */ mr r4, r29 /* 803359EC 0033164C 38 7F 00 04 */ addi r3, r31, 4 -/* 803359F0 00331650 4B E9 88 E1 */ bl func_801CE2D0 +/* 803359F0 00331650 4B E9 88 E1 */ bl strcpy /* 803359F4 00331654 7E C5 B3 78 */ mr r5, r22 /* 803359F8 00331658 7F A6 EB 78 */ mr r6, r29 /* 803359FC 0033165C 38 9A 05 C8 */ addi r4, r26, 0x5c8 @@ -14454,7 +14454,7 @@ lbl_80335A10: /* 80335A18 00331678 7C 65 1B 78 */ mr r5, r3 /* 80335A1C 0033167C 7F 23 CB 78 */ mr r3, r25 /* 80335A20 00331680 38 9A 05 DC */ addi r4, r26, 0x5dc -/* 80335A24 00331684 4B E9 8B 45 */ bl func_801CE568 +/* 80335A24 00331684 4B E9 8B 45 */ bl strncmp /* 80335A28 00331688 2C 03 00 00 */ cmpwi r3, 0 /* 80335A2C 0033168C 40 82 00 68 */ bne lbl_80335A94 /* 80335A30 00331690 7F 23 CB 78 */ mr r3, r25 @@ -14474,7 +14474,7 @@ lbl_80335A10: /* 80335A68 003316C8 7C 76 1B 78 */ mr r22, r3 /* 80335A6C 003316CC 7F A4 EB 78 */ mr r4, r29 /* 80335A70 003316D0 38 7F 00 45 */ addi r3, r31, 0x45 -/* 80335A74 003316D4 4B E9 88 5D */ bl func_801CE2D0 +/* 80335A74 003316D4 4B E9 88 5D */ bl strcpy /* 80335A78 003316D8 7E C5 B3 78 */ mr r5, r22 /* 80335A7C 003316DC 7F A6 EB 78 */ mr r6, r29 /* 80335A80 003316E0 38 9A 05 EC */ addi r4, r26, 0x5ec @@ -14488,7 +14488,7 @@ lbl_80335A94: /* 80335A9C 003316FC 7C 65 1B 78 */ mr r5, r3 /* 80335AA0 00331700 7F 23 CB 78 */ mr r3, r25 /* 80335AA4 00331704 38 9A 06 04 */ addi r4, r26, 0x604 -/* 80335AA8 00331708 4B E9 8A C1 */ bl func_801CE568 +/* 80335AA8 00331708 4B E9 8A C1 */ bl strncmp /* 80335AAC 0033170C 2C 03 00 00 */ cmpwi r3, 0 /* 80335AB0 00331710 40 82 00 70 */ bne lbl_80335B20 /* 80335AB4 00331714 7F 23 CB 78 */ mr r3, r25 @@ -14527,7 +14527,7 @@ lbl_80335B20: lbl_80335B34: /* 80335B34 00331794 7F 04 C3 78 */ mr r4, r24 /* 80335B38 00331798 38 60 00 00 */ li r3, 0 -/* 80335B3C 0033179C 4B E9 8B 41 */ bl func_801CE67C +/* 80335B3C 0033179C 4B E9 8B 41 */ bl strtok /* 80335B40 003317A0 7C 79 1B 78 */ mr r25, r3 lbl_80335B44: /* 80335B44 003317A4 2C 19 00 00 */ cmpwi r25, 0 diff --git a/asm/text_11.s b/asm/text_11.s index e886d76..adc0332 100644 --- a/asm/text_11.s +++ b/asm/text_11.s @@ -2,2175 +2,6 @@ .section .text, "ax" # 0x80006980 - 0x803E1E60 -.global func_8038D388 -func_8038D388: -/* 8038D388 00388FE8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038D38C 00388FEC 7C 08 02 A6 */ mflr r0 -/* 8038D390 00388FF0 81 43 00 18 */ lwz r10, 0x18(r3) -/* 8038D394 00388FF4 90 01 00 24 */ stw r0, 0x24(r1) -/* 8038D398 00388FF8 55 47 27 3E */ srwi r7, r10, 0x1c -/* 8038D39C 00388FFC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8038D3A0 00389000 38 07 FF F8 */ addi r0, r7, -8 -/* 8038D3A4 00389004 28 00 00 02 */ cmplwi r0, 2 -/* 8038D3A8 00389008 7C 9F 23 78 */ mr r31, r4 -/* 8038D3AC 0038900C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8038D3B0 00389010 7C 7E 1B 78 */ mr r30, r3 -/* 8038D3B4 00389014 41 81 00 3C */ bgt lbl_8038D3F0 -/* 8038D3B8 00389018 7F E3 FB 78 */ mr r3, r31 -/* 8038D3BC 0038901C 4B EF 56 9D */ bl func_80282A58 -/* 8038D3C0 00389020 80 1E 00 18 */ lwz r0, 0x18(r30) -/* 8038D3C4 00389024 90 61 00 08 */ stw r3, 8(r1) -/* 8038D3C8 00389028 7F E3 FB 78 */ mr r3, r31 -/* 8038D3CC 0038902C 80 9E 00 00 */ lwz r4, 0(r30) -/* 8038D3D0 00389030 54 07 27 3E */ srwi r7, r0, 0x1c -/* 8038D3D4 00389034 A0 BE 00 08 */ lhz r5, 8(r30) -/* 8038D3D8 00389038 54 08 3F BE */ rlwinm r8, r0, 7, 0x1e, 0x1f -/* 8038D3DC 0038903C A0 DE 00 0A */ lhz r6, 0xa(r30) -/* 8038D3E0 00389040 54 09 4F BE */ rlwinm r9, r0, 9, 0x1e, 0x1f -/* 8038D3E4 00389044 54 0A 2F FE */ rlwinm r10, r0, 5, 0x1f, 0x1f -/* 8038D3E8 00389048 4B EF 54 F5 */ bl func_802828DC -/* 8038D3EC 0038904C 48 00 00 24 */ b lbl_8038D410 -lbl_8038D3F0: -/* 8038D3F0 00389050 80 9E 00 00 */ lwz r4, 0(r30) -/* 8038D3F4 00389054 7F E3 FB 78 */ mr r3, r31 -/* 8038D3F8 00389058 A0 BE 00 08 */ lhz r5, 8(r30) -/* 8038D3FC 0038905C 55 48 3F BE */ rlwinm r8, r10, 7, 0x1e, 0x1f -/* 8038D400 00389060 55 49 4F BE */ rlwinm r9, r10, 9, 0x1e, 0x1f -/* 8038D404 00389064 A0 DE 00 0A */ lhz r6, 0xa(r30) -/* 8038D408 00389068 55 4A 2F FE */ rlwinm r10, r10, 5, 0x1f, 0x1f -/* 8038D40C 0038906C 4B EF 52 C5 */ bl func_802826D0 -lbl_8038D410: -/* 8038D410 00389070 A0 9E 00 14 */ lhz r4, 0x14(r30) -/* 8038D414 00389074 3C A0 43 30 */ lis r5, 0x4330 -/* 8038D418 00389078 80 1E 00 18 */ lwz r0, 0x18(r30) -/* 8038D41C 0038907C 7F E3 FB 78 */ mr r3, r31 -/* 8038D420 00389080 90 81 00 14 */ stw r4, 0x14(r1) -/* 8038D424 00389084 C8 62 A8 C8 */ lfd f3, lbl_80642EC8-_SDA2_BASE_(r2) -/* 8038D428 00389088 54 04 67 7E */ rlwinm r4, r0, 0xc, 0x1d, 0x1f -/* 8038D42C 0038908C 90 A1 00 10 */ stw r5, 0x10(r1) -/* 8038D430 00389090 54 05 7F 7E */ rlwinm r5, r0, 0xf, 0x1d, 0x1f -/* 8038D434 00389094 C0 02 A8 C0 */ lfs f0, lbl_80642EC0-_SDA2_BASE_(r2) -/* 8038D438 00389098 54 06 87 FE */ rlwinm r6, r0, 0x10, 0x1f, 0x1f -/* 8038D43C 0038909C C8 21 00 10 */ lfd f1, 0x10(r1) -/* 8038D440 003890A0 54 07 8F FE */ rlwinm r7, r0, 0x11, 0x1f, 0x1f -/* 8038D444 003890A4 C0 5E 00 10 */ lfs f2, 0x10(r30) -/* 8038D448 003890A8 54 08 9F BE */ rlwinm r8, r0, 0x13, 0x1e, 0x1f -/* 8038D44C 003890AC EC 61 18 28 */ fsubs f3, f1, f3 -/* 8038D450 003890B0 C0 3E 00 0C */ lfs f1, 0xc(r30) -/* 8038D454 003890B4 EC 63 00 32 */ fmuls f3, f3, f0 -/* 8038D458 003890B8 4B EF 54 CD */ bl func_80282924 -/* 8038D45C 003890BC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8038D460 003890C0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8038D464 003890C4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8038D468 003890C8 7C 08 03 A6 */ mtlr r0 -/* 8038D46C 003890CC 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038D470 003890D0 4E 80 00 20 */ blr - -.global func_8038D474 -func_8038D474: -/* 8038D474 003890D4 7C 65 1B 78 */ mr r5, r3 -/* 8038D478 003890D8 7C 83 23 78 */ mr r3, r4 -/* 8038D47C 003890DC 80 05 00 18 */ lwz r0, 0x18(r5) -/* 8038D480 003890E0 80 85 00 04 */ lwz r4, 4(r5) -/* 8038D484 003890E4 A0 C5 00 16 */ lhz r6, 0x16(r5) -/* 8038D488 003890E8 54 05 AF BE */ rlwinm r5, r0, 0x15, 0x1e, 0x1f -/* 8038D48C 003890EC 4B EF 57 8C */ b func_80282C18 - -.global func_8038D490 -func_8038D490: -/* 8038D490 003890F0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038D494 003890F4 7C 08 02 A6 */ mflr r0 -/* 8038D498 003890F8 90 01 00 24 */ stw r0, 0x24(r1) -/* 8038D49C 003890FC 3C 00 80 00 */ lis r0, 0x8000 -/* 8038D4A0 00389100 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8038D4A4 00389104 7C BF 2B 78 */ mr r31, r5 -/* 8038D4A8 00389108 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8038D4AC 0038910C 7C 9E 23 78 */ mr r30, r4 -/* 8038D4B0 00389110 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8038D4B4 00389114 7C 7D 1B 78 */ mr r29, r3 -/* 8038D4B8 00389118 80 C4 00 08 */ lwz r6, 8(r4) -/* 8038D4BC 0038911C 7C 06 00 40 */ cmplw r6, r0 -/* 8038D4C0 00389120 40 80 00 0C */ bge lbl_8038D4CC -/* 8038D4C4 00389124 7F C3 F3 78 */ mr r3, r30 -/* 8038D4C8 00389128 4B F0 E4 51 */ bl func_8029B918 -lbl_8038D4CC: -/* 8038D4CC 0038912C 7F C3 F3 78 */ mr r3, r30 -/* 8038D4D0 00389130 7F E4 FB 78 */ mr r4, r31 -/* 8038D4D4 00389134 4B F0 E5 59 */ bl func_8029BA2C -/* 8038D4D8 00389138 7C 7F 1B 78 */ mr r31, r3 -/* 8038D4DC 0038913C 7F A3 EB 78 */ mr r3, r29 -/* 8038D4E0 00389140 7F E4 FB 78 */ mr r4, r31 -/* 8038D4E4 00389144 48 00 00 95 */ bl func_8038D578 -/* 8038D4E8 00389148 80 7F 00 00 */ lwz r3, 0(r31) -/* 8038D4EC 0038914C 80 1D 00 18 */ lwz r0, 0x18(r29) -/* 8038D4F0 00389150 80 83 00 0C */ lwz r4, 0xc(r3) -/* 8038D4F4 00389154 80 63 00 10 */ lwz r3, 0x10(r3) -/* 8038D4F8 00389158 50 80 C9 4C */ rlwimi r0, r4, 0x19, 5, 6 -/* 8038D4FC 0038915C 50 60 B9 D0 */ rlwimi r0, r3, 0x17, 7, 8 -/* 8038D500 00389160 90 1D 00 18 */ stw r0, 0x18(r29) -/* 8038D504 00389164 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8038D508 00389168 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8038D50C 0038916C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8038D510 00389170 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8038D514 00389174 7C 08 03 A6 */ mtlr r0 -/* 8038D518 00389178 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038D51C 0038917C 4E 80 00 20 */ blr - -.global func_8038D520 -func_8038D520: -/* 8038D520 00389180 80 A3 00 18 */ lwz r5, 0x18(r3) -/* 8038D524 00389184 80 04 00 18 */ lwz r0, 0x18(r4) -/* 8038D528 00389188 50 A0 01 4C */ rlwimi r0, r5, 0, 5, 6 -/* 8038D52C 0038918C 81 24 00 00 */ lwz r9, 0(r4) -/* 8038D530 00389190 50 A0 01 D0 */ rlwimi r0, r5, 0, 7, 8 -/* 8038D534 00389194 81 04 00 04 */ lwz r8, 4(r4) -/* 8038D538 00389198 A0 E4 00 08 */ lhz r7, 8(r4) -/* 8038D53C 0038919C A0 C4 00 0A */ lhz r6, 0xa(r4) -/* 8038D540 003891A0 C0 24 00 0C */ lfs f1, 0xc(r4) -/* 8038D544 003891A4 C0 04 00 10 */ lfs f0, 0x10(r4) -/* 8038D548 003891A8 A0 A4 00 14 */ lhz r5, 0x14(r4) -/* 8038D54C 003891AC A0 84 00 16 */ lhz r4, 0x16(r4) -/* 8038D550 003891B0 91 23 00 00 */ stw r9, 0(r3) -/* 8038D554 003891B4 91 03 00 04 */ stw r8, 4(r3) -/* 8038D558 003891B8 B0 E3 00 08 */ sth r7, 8(r3) -/* 8038D55C 003891BC B0 C3 00 0A */ sth r6, 0xa(r3) -/* 8038D560 003891C0 D0 23 00 0C */ stfs f1, 0xc(r3) -/* 8038D564 003891C4 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 8038D568 003891C8 B0 A3 00 14 */ sth r5, 0x14(r3) -/* 8038D56C 003891CC B0 83 00 16 */ sth r4, 0x16(r3) -/* 8038D570 003891D0 90 03 00 18 */ stw r0, 0x18(r3) -/* 8038D574 003891D4 4E 80 00 20 */ blr - -.global func_8038D578 -func_8038D578: -/* 8038D578 003891D8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038D57C 003891DC 3C 00 43 30 */ lis r0, 0x4330 -/* 8038D580 003891E0 80 E4 00 00 */ lwz r7, 0(r4) -/* 8038D584 003891E4 81 04 00 04 */ lwz r8, 4(r4) -/* 8038D588 003891E8 80 87 00 08 */ lwz r4, 8(r7) -/* 8038D58C 003891EC 80 C3 00 18 */ lwz r6, 0x18(r3) -/* 8038D590 003891F0 2C 08 00 00 */ cmpwi r8, 0 -/* 8038D594 003891F4 90 83 00 00 */ stw r4, 0(r3) -/* 8038D598 003891F8 C8 62 A8 C8 */ lfd f3, lbl_80642EC8-_SDA2_BASE_(r2) -/* 8038D59C 003891FC A0 A7 00 00 */ lhz r5, 0(r7) -/* 8038D5A0 00389200 A0 87 00 02 */ lhz r4, 2(r7) -/* 8038D5A4 00389204 90 01 00 08 */ stw r0, 8(r1) -/* 8038D5A8 00389208 C0 02 A8 D0 */ lfs f0, lbl_80642ED0-_SDA2_BASE_(r2) -/* 8038D5AC 0038920C B0 83 00 08 */ sth r4, 8(r3) -/* 8038D5B0 00389210 B0 A3 00 0A */ sth r5, 0xa(r3) -/* 8038D5B4 00389214 80 87 00 04 */ lwz r4, 4(r7) -/* 8038D5B8 00389218 90 01 00 10 */ stw r0, 0x10(r1) -/* 8038D5BC 0038921C 50 86 E0 06 */ rlwimi r6, r4, 0x1c, 0, 3 -/* 8038D5C0 00389220 90 C3 00 18 */ stw r6, 0x18(r3) -/* 8038D5C4 00389224 88 A7 00 21 */ lbz r5, 0x21(r7) -/* 8038D5C8 00389228 88 07 00 22 */ lbz r0, 0x22(r7) -/* 8038D5CC 0038922C 7C 85 00 50 */ subf r4, r5, r0 -/* 8038D5D0 00389230 7C 00 28 50 */ subf r0, r0, r5 -/* 8038D5D4 00389234 7C 80 03 78 */ or r0, r4, r0 -/* 8038D5D8 00389238 50 06 E1 08 */ rlwimi r6, r0, 0x1c, 4, 4 -/* 8038D5DC 0038923C 90 C3 00 18 */ stw r6, 0x18(r3) -/* 8038D5E0 00389240 80 07 00 14 */ lwz r0, 0x14(r7) -/* 8038D5E4 00389244 80 87 00 18 */ lwz r4, 0x18(r7) -/* 8038D5E8 00389248 50 06 A2 56 */ rlwimi r6, r0, 0x14, 9, 0xb -/* 8038D5EC 0038924C 50 86 8B 1C */ rlwimi r6, r4, 0x11, 0xc, 0xe -/* 8038D5F0 00389250 90 C3 00 18 */ stw r6, 0x18(r3) -/* 8038D5F4 00389254 88 87 00 22 */ lbz r4, 0x22(r7) -/* 8038D5F8 00389258 88 07 00 21 */ lbz r0, 0x21(r7) -/* 8038D5FC 0038925C 90 81 00 0C */ stw r4, 0xc(r1) -/* 8038D600 00389260 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038D604 00389264 C8 41 00 08 */ lfd f2, 8(r1) -/* 8038D608 00389268 C8 21 00 10 */ lfd f1, 0x10(r1) -/* 8038D60C 0038926C EC 42 18 28 */ fsubs f2, f2, f3 -/* 8038D610 00389270 EC 21 18 28 */ fsubs f1, f1, f3 -/* 8038D614 00389274 D0 43 00 10 */ stfs f2, 0x10(r3) -/* 8038D618 00389278 D0 23 00 0C */ stfs f1, 0xc(r3) -/* 8038D61C 0038927C C0 27 00 1C */ lfs f1, 0x1c(r7) -/* 8038D620 00389280 EC 00 00 72 */ fmuls f0, f0, f1 -/* 8038D624 00389284 FC 00 00 1E */ fctiwz f0, f0 -/* 8038D628 00389288 D8 01 00 18 */ stfd f0, 0x18(r1) -/* 8038D62C 0038928C 80 01 00 1C */ lwz r0, 0x1c(r1) -/* 8038D630 00389290 B0 03 00 14 */ sth r0, 0x14(r3) -/* 8038D634 00389294 88 87 00 20 */ lbz r4, 0x20(r7) -/* 8038D638 00389298 7C 04 00 D0 */ neg r0, r4 -/* 8038D63C 0038929C 7C 00 23 78 */ or r0, r0, r4 -/* 8038D640 003892A0 50 06 84 20 */ rlwimi r6, r0, 0x10, 0x10, 0x10 -/* 8038D644 003892A4 90 C3 00 18 */ stw r6, 0x18(r3) -/* 8038D648 003892A8 41 82 00 24 */ beq lbl_8038D66C -/* 8038D64C 003892AC 80 08 00 08 */ lwz r0, 8(r8) -/* 8038D650 003892B0 90 03 00 04 */ stw r0, 4(r3) -/* 8038D654 003892B4 80 08 00 04 */ lwz r0, 4(r8) -/* 8038D658 003892B8 50 06 5C E8 */ rlwimi r6, r0, 0xb, 0x13, 0x14 -/* 8038D65C 003892BC 90 C3 00 18 */ stw r6, 0x18(r3) -/* 8038D660 003892C0 A0 08 00 00 */ lhz r0, 0(r8) -/* 8038D664 003892C4 B0 03 00 16 */ sth r0, 0x16(r3) -/* 8038D668 003892C8 48 00 00 18 */ b lbl_8038D680 -lbl_8038D66C: -/* 8038D66C 003892CC 38 80 00 00 */ li r4, 0 -/* 8038D670 003892D0 54 C0 05 64 */ rlwinm r0, r6, 0, 0x15, 0x12 -/* 8038D674 003892D4 90 83 00 04 */ stw r4, 4(r3) -/* 8038D678 003892D8 90 03 00 18 */ stw r0, 0x18(r3) -/* 8038D67C 003892DC B0 83 00 16 */ sth r4, 0x16(r3) -lbl_8038D680: -/* 8038D680 003892E0 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038D684 003892E4 4E 80 00 20 */ blr - -.global func_8038D688 -func_8038D688: -/* 8038D688 003892E8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8038D68C 003892EC 7C 08 02 A6 */ mflr r0 -/* 8038D690 003892F0 3C 80 80 45 */ lis r4, lbl_8044E550@ha -/* 8038D694 003892F4 C0 22 A8 D8 */ lfs f1, lbl_80642ED8-_SDA2_BASE_(r2) -/* 8038D698 003892F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038D69C 003892FC 38 84 E5 50 */ addi r4, r4, lbl_8044E550@l -/* 8038D6A0 00389300 C0 02 A8 DC */ lfs f0, lbl_80642EDC-_SDA2_BASE_(r2) -/* 8038D6A4 00389304 38 A0 00 01 */ li r5, 1 -/* 8038D6A8 00389308 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8038D6AC 0038930C 7C 7F 1B 78 */ mr r31, r3 -/* 8038D6B0 00389310 90 83 00 00 */ stw r4, 0(r3) -/* 8038D6B4 00389314 38 80 00 00 */ li r4, 0 -/* 8038D6B8 00389318 D0 23 00 34 */ stfs f1, 0x34(r3) -/* 8038D6BC 0038931C D0 23 00 38 */ stfs f1, 0x38(r3) -/* 8038D6C0 00389320 D0 23 00 3C */ stfs f1, 0x3c(r3) -/* 8038D6C4 00389324 D0 23 00 40 */ stfs f1, 0x40(r3) -/* 8038D6C8 00389328 D0 03 00 44 */ stfs f0, 0x44(r3) -/* 8038D6CC 0038932C D0 03 00 48 */ stfs f0, 0x48(r3) -/* 8038D6D0 00389330 D0 03 00 4C */ stfs f0, 0x4c(r3) -/* 8038D6D4 00389334 38 63 00 50 */ addi r3, r3, 0x50 -/* 8038D6D8 00389338 4B C7 6A 2D */ bl memset -/* 8038D6DC 0038933C 38 7F 00 04 */ addi r3, r31, 4 -/* 8038D6E0 00389340 4B EE E8 4D */ bl func_8027BF2C -/* 8038D6E4 00389344 7F E3 FB 78 */ mr r3, r31 -/* 8038D6E8 00389348 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8038D6EC 0038934C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8038D6F0 00389350 7C 08 03 A6 */ mtlr r0 -/* 8038D6F4 00389354 38 21 00 10 */ addi r1, r1, 0x10 -/* 8038D6F8 00389358 4E 80 00 20 */ blr - -.global func_8038D6FC -func_8038D6FC: -/* 8038D6FC 0038935C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8038D700 00389360 7C 08 02 A6 */ mflr r0 -/* 8038D704 00389364 2C 03 00 00 */ cmpwi r3, 0 -/* 8038D708 00389368 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038D70C 0038936C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8038D710 00389370 7C 7F 1B 78 */ mr r31, r3 -/* 8038D714 00389374 41 82 00 10 */ beq lbl_8038D724 -/* 8038D718 00389378 2C 04 00 00 */ cmpwi r4, 0 -/* 8038D71C 0038937C 40 81 00 08 */ ble lbl_8038D724 -/* 8038D720 00389380 4B E4 D3 99 */ bl func_801DAAB8 -lbl_8038D724: -/* 8038D724 00389384 7F E3 FB 78 */ mr r3, r31 -/* 8038D728 00389388 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8038D72C 0038938C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8038D730 00389390 7C 08 03 A6 */ mtlr r0 -/* 8038D734 00389394 38 21 00 10 */ addi r1, r1, 0x10 -/* 8038D738 00389398 4E 80 00 20 */ blr - -.global func_8038D73C -func_8038D73C: -/* 8038D73C 0038939C 28 04 00 01 */ cmplwi r4, 1 -/* 8038D740 003893A0 41 82 00 14 */ beq lbl_8038D754 -/* 8038D744 003893A4 C0 03 00 00 */ lfs f0, 0(r3) -/* 8038D748 003893A8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8038D74C 003893AC 4C 40 13 82 */ cror 2, 0, 2 -/* 8038D750 003893B0 40 82 00 0C */ bne lbl_8038D75C -lbl_8038D754: -/* 8038D754 003893B4 A0 63 00 04 */ lhz r3, 4(r3) -/* 8038D758 003893B8 4E 80 00 20 */ blr -lbl_8038D75C: -/* 8038D75C 003893BC 54 80 18 38 */ slwi r0, r4, 3 -/* 8038D760 003893C0 7C A3 02 14 */ add r5, r3, r0 -/* 8038D764 003893C4 C0 05 FF F8 */ lfs f0, -8(r5) -/* 8038D768 003893C8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8038D76C 003893CC 4C 41 13 82 */ cror 2, 1, 2 -/* 8038D770 003893D0 40 82 00 0C */ bne lbl_8038D77C -/* 8038D774 003893D4 A0 65 FF FC */ lhz r3, -4(r5) -/* 8038D778 003893D8 4E 80 00 20 */ blr -lbl_8038D77C: -/* 8038D77C 003893DC 38 C4 FF FF */ addi r6, r4, -1 -/* 8038D780 003893E0 38 A0 00 00 */ li r5, 0 -/* 8038D784 003893E4 48 00 00 3C */ b lbl_8038D7C0 -lbl_8038D788: -/* 8038D788 003893E8 7C 85 32 14 */ add r4, r5, r6 -/* 8038D78C 003893EC 54 80 0F FE */ srwi r0, r4, 0x1f -/* 8038D790 003893F0 7C 80 22 14 */ add r4, r0, r4 -/* 8038D794 003893F4 54 80 10 38 */ rlwinm r0, r4, 2, 0, 0x1c -/* 8038D798 003893F8 7C 03 04 2E */ lfsx f0, r3, r0 -/* 8038D79C 003893FC 7C 84 0E 70 */ srawi r4, r4, 1 -/* 8038D7A0 00389400 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8038D7A4 00389404 7C 00 00 26 */ mfcr r0 -/* 8038D7A8 00389408 54 00 0F FF */ rlwinm. r0, r0, 1, 0x1f, 0x1f -/* 8038D7AC 0038940C 41 82 00 08 */ beq lbl_8038D7B4 -/* 8038D7B0 00389410 7C 86 23 78 */ mr r6, r4 -lbl_8038D7B4: -/* 8038D7B4 00389414 2C 00 00 00 */ cmpwi r0, 0 -/* 8038D7B8 00389418 40 82 00 08 */ bne lbl_8038D7C0 -/* 8038D7BC 0038941C 7C 85 23 78 */ mr r5, r4 -lbl_8038D7C0: -/* 8038D7C0 00389420 38 06 FF FF */ addi r0, r6, -1 -/* 8038D7C4 00389424 7C 05 00 00 */ cmpw r5, r0 -/* 8038D7C8 00389428 41 82 00 0C */ beq lbl_8038D7D4 -/* 8038D7CC 0038942C 7C 05 30 00 */ cmpw r5, r6 -/* 8038D7D0 00389430 40 82 FF B8 */ bne lbl_8038D788 -lbl_8038D7D4: -/* 8038D7D4 00389434 54 C4 18 38 */ slwi r4, r6, 3 -/* 8038D7D8 00389438 C0 02 A8 E0 */ lfs f0, lbl_80642EE0-_SDA2_BASE_(r2) -/* 8038D7DC 0038943C 7C 43 24 2E */ lfsx f2, r3, r4 -/* 8038D7E0 00389440 38 00 00 00 */ li r0, 0 -/* 8038D7E4 00389444 EC 21 10 28 */ fsubs f1, f1, f2 -/* 8038D7E8 00389448 FC 00 08 40 */ fcmpo cr0, f0, f1 -/* 8038D7EC 0038944C 40 80 00 14 */ bge lbl_8038D800 -/* 8038D7F0 00389450 C0 02 A8 E4 */ lfs f0, lbl_80642EE4-_SDA2_BASE_(r2) -/* 8038D7F4 00389454 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8038D7F8 00389458 40 80 00 08 */ bge lbl_8038D800 -/* 8038D7FC 0038945C 38 00 00 01 */ li r0, 1 -lbl_8038D800: -/* 8038D800 00389460 2C 00 00 00 */ cmpwi r0, 0 -/* 8038D804 00389464 41 82 00 10 */ beq lbl_8038D814 -/* 8038D808 00389468 7C 63 22 14 */ add r3, r3, r4 -/* 8038D80C 0038946C A0 63 00 04 */ lhz r3, 4(r3) -/* 8038D810 00389470 4E 80 00 20 */ blr -lbl_8038D814: -/* 8038D814 00389474 54 A0 18 38 */ slwi r0, r5, 3 -/* 8038D818 00389478 7C 63 02 14 */ add r3, r3, r0 -/* 8038D81C 0038947C A0 63 00 04 */ lhz r3, 4(r3) -/* 8038D820 00389480 4E 80 00 20 */ blr - -.global func_8038D824 -func_8038D824: -/* 8038D824 00389484 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038D828 00389488 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 8038D82C 0038948C F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 -/* 8038D830 00389490 28 04 00 01 */ cmplwi r4, 1 -/* 8038D834 00389494 41 82 00 14 */ beq lbl_8038D848 -/* 8038D838 00389498 C0 03 00 00 */ lfs f0, 0(r3) -/* 8038D83C 0038949C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8038D840 003894A0 4C 40 13 82 */ cror 2, 0, 2 -/* 8038D844 003894A4 40 82 00 0C */ bne lbl_8038D850 -lbl_8038D848: -/* 8038D848 003894A8 C0 23 00 04 */ lfs f1, 4(r3) -/* 8038D84C 003894AC 48 00 01 84 */ b lbl_8038D9D0 -lbl_8038D850: -/* 8038D850 003894B0 1C 04 00 0C */ mulli r0, r4, 0xc -/* 8038D854 003894B4 7C A3 02 14 */ add r5, r3, r0 -/* 8038D858 003894B8 C0 05 FF F4 */ lfs f0, -0xc(r5) -/* 8038D85C 003894BC FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8038D860 003894C0 4C 41 13 82 */ cror 2, 1, 2 -/* 8038D864 003894C4 40 82 00 0C */ bne lbl_8038D870 -/* 8038D868 003894C8 C0 25 FF F8 */ lfs f1, -8(r5) -/* 8038D86C 003894CC 48 00 01 64 */ b lbl_8038D9D0 -lbl_8038D870: -/* 8038D870 003894D0 38 E4 FF FF */ addi r7, r4, -1 -/* 8038D874 003894D4 38 C0 00 00 */ li r6, 0 -/* 8038D878 003894D8 48 00 00 40 */ b lbl_8038D8B8 -lbl_8038D87C: -/* 8038D87C 003894DC 7C A6 3A 14 */ add r5, r6, r7 -/* 8038D880 003894E0 54 A0 0F FE */ srwi r0, r5, 0x1f -/* 8038D884 003894E4 7C 00 2A 14 */ add r0, r0, r5 -/* 8038D888 003894E8 7C 05 0E 70 */ srawi r5, r0, 1 -/* 8038D88C 003894EC 1C 05 00 0C */ mulli r0, r5, 0xc -/* 8038D890 003894F0 7C 03 04 2E */ lfsx f0, r3, r0 -/* 8038D894 003894F4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 8038D898 003894F8 4C 40 13 82 */ cror 2, 0, 2 -/* 8038D89C 003894FC 7C 00 00 26 */ mfcr r0 -/* 8038D8A0 00389500 54 00 1F FF */ rlwinm. r0, r0, 3, 0x1f, 0x1f -/* 8038D8A4 00389504 41 82 00 08 */ beq lbl_8038D8AC -/* 8038D8A8 00389508 7C A7 2B 78 */ mr r7, r5 -lbl_8038D8AC: -/* 8038D8AC 0038950C 2C 00 00 00 */ cmpwi r0, 0 -/* 8038D8B0 00389510 40 82 00 08 */ bne lbl_8038D8B8 -/* 8038D8B4 00389514 7C A6 2B 78 */ mr r6, r5 -lbl_8038D8B8: -/* 8038D8B8 00389518 38 07 FF FF */ addi r0, r7, -1 -/* 8038D8BC 0038951C 7C 06 00 00 */ cmpw r6, r0 -/* 8038D8C0 00389520 41 82 00 0C */ beq lbl_8038D8CC -/* 8038D8C4 00389524 7C 06 38 00 */ cmpw r6, r7 -/* 8038D8C8 00389528 40 82 FF B4 */ bne lbl_8038D87C -lbl_8038D8CC: -/* 8038D8CC 0038952C 1C A7 00 0C */ mulli r5, r7, 0xc -/* 8038D8D0 00389530 C0 02 A8 E0 */ lfs f0, lbl_80642EE0-_SDA2_BASE_(r2) -/* 8038D8D4 00389534 38 00 00 00 */ li r0, 0 -/* 8038D8D8 00389538 7C 43 2C 2E */ lfsx f2, r3, r5 -/* 8038D8DC 0038953C 7D 03 2A 14 */ add r8, r3, r5 -/* 8038D8E0 00389540 1C A6 00 0C */ mulli r5, r6, 0xc -/* 8038D8E4 00389544 EC 41 10 28 */ fsubs f2, f1, f2 -/* 8038D8E8 00389548 7C A3 2A 14 */ add r5, r3, r5 -/* 8038D8EC 0038954C FC 00 10 40 */ fcmpo cr0, f0, f2 -/* 8038D8F0 00389550 40 80 00 14 */ bge lbl_8038D904 -/* 8038D8F4 00389554 C0 02 A8 E4 */ lfs f0, lbl_80642EE4-_SDA2_BASE_(r2) -/* 8038D8F8 00389558 FC 02 00 40 */ fcmpo cr0, f2, f0 -/* 8038D8FC 0038955C 40 80 00 08 */ bge lbl_8038D904 -/* 8038D900 00389560 38 00 00 01 */ li r0, 1 -lbl_8038D904: -/* 8038D904 00389564 2C 00 00 00 */ cmpwi r0, 0 -/* 8038D908 00389568 41 82 00 3C */ beq lbl_8038D944 -/* 8038D90C 0038956C 38 04 FF FF */ addi r0, r4, -1 -/* 8038D910 00389570 7C 07 00 40 */ cmplw r7, r0 -/* 8038D914 00389574 40 80 00 28 */ bge lbl_8038D93C -/* 8038D918 00389578 38 07 00 01 */ addi r0, r7, 1 -/* 8038D91C 0038957C C0 28 00 00 */ lfs f1, 0(r8) -/* 8038D920 00389580 1C 00 00 0C */ mulli r0, r0, 0xc -/* 8038D924 00389584 7C 03 04 2E */ lfsx f0, r3, r0 -/* 8038D928 00389588 FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 8038D92C 0038958C 40 82 00 10 */ bne lbl_8038D93C -/* 8038D930 00389590 7C 63 02 14 */ add r3, r3, r0 -/* 8038D934 00389594 C0 23 00 04 */ lfs f1, 4(r3) -/* 8038D938 00389598 48 00 00 98 */ b lbl_8038D9D0 -lbl_8038D93C: -/* 8038D93C 0038959C C0 28 00 04 */ lfs f1, 4(r8) -/* 8038D940 003895A0 48 00 00 90 */ b lbl_8038D9D0 -lbl_8038D944: -/* 8038D944 003895A4 C0 45 00 00 */ lfs f2, 0(r5) -/* 8038D948 003895A8 C0 08 00 00 */ lfs f0, 0(r8) -/* 8038D94C 003895AC EC E1 10 28 */ fsubs f7, f1, f2 -/* 8038D950 003895B0 C0 C2 A8 E8 */ lfs f6, lbl_80642EE8-_SDA2_BASE_(r2) -/* 8038D954 003895B4 EC 00 10 28 */ fsubs f0, f0, f2 -/* 8038D958 003895B8 C0 82 A8 EC */ lfs f4, lbl_80642EEC-_SDA2_BASE_(r2) -/* 8038D95C 003895BC C0 22 A8 F0 */ lfs f1, lbl_80642EF0-_SDA2_BASE_(r2) -/* 8038D960 003895C0 EC 47 01 F2 */ fmuls f2, f7, f7 -/* 8038D964 003895C4 EC A6 00 24 */ fdivs f5, f6, f0 -/* 8038D968 003895C8 C0 02 A8 F4 */ lfs f0, lbl_80642EF4-_SDA2_BASE_(r2) -/* 8038D96C 003895CC C1 05 00 04 */ lfs f8, 4(r5) -/* 8038D970 003895D0 C1 28 00 04 */ lfs f9, 4(r8) -/* 8038D974 003895D4 C1 45 00 08 */ lfs f10, 8(r5) -/* 8038D978 003895D8 C1 68 00 08 */ lfs f11, 8(r8) -/* 8038D97C 003895DC ED 85 00 B2 */ fmuls f12, f5, f2 -/* 8038D980 003895E0 EC 4C 01 72 */ fmuls f2, f12, f5 -/* 8038D984 003895E4 EC 64 03 32 */ fmuls f3, f4, f12 -/* 8038D988 003895E8 ED A7 00 B2 */ fmuls f13, f7, f2 -/* 8038D98C 003895EC EC 41 00 B2 */ fmuls f2, f1, f2 -/* 8038D990 003895F0 EF ED 01 72 */ fmuls f31, f13, f5 -/* 8038D994 003895F4 EC 6D 18 28 */ fsubs f3, f13, f3 -/* 8038D998 003895F8 EC AD 60 28 */ fsubs f5, f13, f12 -/* 8038D99C 003895FC EC 24 07 F2 */ fmuls f1, f4, f31 -/* 8038D9A0 00389600 EC 00 07 F2 */ fmuls f0, f0, f31 -/* 8038D9A4 00389604 EC 67 18 2A */ fadds f3, f7, f3 -/* 8038D9A8 00389608 EC 21 10 28 */ fsubs f1, f1, f2 -/* 8038D9AC 0038960C EC 00 10 2A */ fadds f0, f0, f2 -/* 8038D9B0 00389610 EC 4A 00 F2 */ fmuls f2, f10, f3 -/* 8038D9B4 00389614 EC 26 08 2A */ fadds f1, f6, f1 -/* 8038D9B8 00389618 EC 09 00 32 */ fmuls f0, f9, f0 -/* 8038D9BC 0038961C EC 6B 01 72 */ fmuls f3, f11, f5 -/* 8038D9C0 00389620 EC 28 00 72 */ fmuls f1, f8, f1 -/* 8038D9C4 00389624 EC 01 00 2A */ fadds f0, f1, f0 -/* 8038D9C8 00389628 EC 02 00 2A */ fadds f0, f2, f0 -/* 8038D9CC 0038962C EC 23 00 2A */ fadds f1, f3, f0 -lbl_8038D9D0: -/* 8038D9D0 00389630 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 -/* 8038D9D4 00389634 CB E1 00 10 */ lfd f31, 0x10(r1) -/* 8038D9D8 00389638 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038D9DC 0038963C 4E 80 00 20 */ blr - -.global func_8038D9E0 -func_8038D9E0: -/* 8038D9E0 00389640 80 63 00 0C */ lwz r3, 0xc(r3) -/* 8038D9E4 00389644 A0 63 00 08 */ lhz r3, 8(r3) -/* 8038D9E8 00389648 4E 80 00 20 */ blr - -.global func_8038D9EC -func_8038D9EC: -/* 8038D9EC 0038964C C0 02 A8 F8 */ lfs f0, lbl_80642EF8-_SDA2_BASE_(r2) -/* 8038D9F0 00389650 3C 80 80 45 */ lis r4, lbl_8044E560@ha -/* 8038D9F4 00389654 38 00 00 00 */ li r0, 0 -/* 8038D9F8 00389658 38 84 E5 60 */ addi r4, r4, lbl_8044E560@l -/* 8038D9FC 0038965C 90 03 00 04 */ stw r0, 4(r3) -/* 8038DA00 00389660 90 03 00 08 */ stw r0, 8(r3) -/* 8038DA04 00389664 90 03 00 0C */ stw r0, 0xc(r3) -/* 8038DA08 00389668 D0 03 00 10 */ stfs f0, 0x10(r3) -/* 8038DA0C 0038966C 90 83 00 00 */ stw r4, 0(r3) -/* 8038DA10 00389670 90 03 00 14 */ stw r0, 0x14(r3) -/* 8038DA14 00389674 90 03 00 18 */ stw r0, 0x18(r3) -/* 8038DA18 00389678 B0 03 00 1C */ sth r0, 0x1c(r3) -/* 8038DA1C 0038967C 4E 80 00 20 */ blr -/* 8038DA20 00389680 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8038DA24 00389684 7C 08 02 A6 */ mflr r0 -/* 8038DA28 00389688 2C 03 00 00 */ cmpwi r3, 0 -/* 8038DA2C 0038968C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038DA30 00389690 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8038DA34 00389694 7C 9F 23 78 */ mr r31, r4 -/* 8038DA38 00389698 93 C1 00 08 */ stw r30, 8(r1) -/* 8038DA3C 0038969C 7C 7E 1B 78 */ mr r30, r3 -/* 8038DA40 003896A0 41 82 00 48 */ beq lbl_8038DA88 -/* 8038DA44 003896A4 80 83 00 18 */ lwz r4, 0x18(r3) -/* 8038DA48 003896A8 3C A0 80 45 */ lis r5, lbl_8044E560@ha -/* 8038DA4C 003896AC 38 A5 E5 60 */ addi r5, r5, lbl_8044E560@l -/* 8038DA50 003896B0 2C 04 00 00 */ cmpwi r4, 0 -/* 8038DA54 003896B4 90 A3 00 00 */ stw r5, 0(r3) -/* 8038DA58 003896B8 41 82 00 0C */ beq lbl_8038DA64 -/* 8038DA5C 003896BC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13) -/* 8038DA60 003896C0 4B F0 9C D5 */ bl func_80297734 -lbl_8038DA64: -/* 8038DA64 003896C4 80 9E 00 14 */ lwz r4, 0x14(r30) -/* 8038DA68 003896C8 2C 04 00 00 */ cmpwi r4, 0 -/* 8038DA6C 003896CC 41 82 00 0C */ beq lbl_8038DA78 -/* 8038DA70 003896D0 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13) -/* 8038DA74 003896D4 4B F0 9C C1 */ bl func_80297734 -lbl_8038DA78: -/* 8038DA78 003896D8 2C 1F 00 00 */ cmpwi r31, 0 -/* 8038DA7C 003896DC 40 81 00 0C */ ble lbl_8038DA88 -/* 8038DA80 003896E0 7F C3 F3 78 */ mr r3, r30 -/* 8038DA84 003896E4 4B E4 D0 35 */ bl func_801DAAB8 -lbl_8038DA88: -/* 8038DA88 003896E8 7F C3 F3 78 */ mr r3, r30 -/* 8038DA8C 003896EC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8038DA90 003896F0 83 C1 00 08 */ lwz r30, 8(r1) -/* 8038DA94 003896F4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8038DA98 003896F8 7C 08 03 A6 */ mtlr r0 -/* 8038DA9C 003896FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8038DAA0 00389700 4E 80 00 20 */ blr -/* 8038DAA4 00389704 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 8038DAA8 00389708 7C 08 02 A6 */ mflr r0 -/* 8038DAAC 0038970C 90 01 00 34 */ stw r0, 0x34(r1) -/* 8038DAB0 00389710 39 61 00 30 */ addi r11, r1, 0x30 -/* 8038DAB4 00389714 4B E3 96 69 */ bl _savegpr_24 -/* 8038DAB8 00389718 A0 C4 00 0C */ lhz r6, 0xc(r4) -/* 8038DABC 0038971C 38 00 00 00 */ li r0, 0 -/* 8038DAC0 00389720 90 83 00 0C */ stw r4, 0xc(r3) -/* 8038DAC4 00389724 7C 7E 1B 78 */ mr r30, r3 -/* 8038DAC8 00389728 2C 06 00 00 */ cmpwi r6, 0 -/* 8038DACC 0038972C 7C 9F 23 78 */ mr r31, r4 -/* 8038DAD0 00389730 90 03 00 14 */ stw r0, 0x14(r3) -/* 8038DAD4 00389734 7C B8 2B 78 */ mr r24, r5 -/* 8038DAD8 00389738 41 82 00 80 */ beq lbl_8038DB58 -/* 8038DADC 0038973C 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13) -/* 8038DAE0 00389740 54 C4 13 BA */ rlwinm r4, r6, 2, 0xe, 0x1d -/* 8038DAE4 00389744 4B F0 9C 41 */ bl func_80297724 -/* 8038DAE8 00389748 2C 03 00 00 */ cmpwi r3, 0 -/* 8038DAEC 0038974C 90 7E 00 14 */ stw r3, 0x14(r30) -/* 8038DAF0 00389750 41 82 00 68 */ beq lbl_8038DB58 -/* 8038DAF4 00389754 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 8038DAF8 00389758 3B 20 00 00 */ li r25, 0 -/* 8038DAFC 0038975C 3B 40 00 00 */ li r26, 0 -/* 8038DB00 00389760 3F A0 74 69 */ lis r29, 0x7469 -/* 8038DB04 00389764 3B 83 00 14 */ addi r28, r3, 0x14 -/* 8038DB08 00389768 7F 9B E3 78 */ mr r27, r28 -/* 8038DB0C 0038976C 48 00 00 3C */ b lbl_8038DB48 -lbl_8038DB10: -/* 8038DB10 00389770 81 98 00 00 */ lwz r12, 0(r24) -/* 8038DB14 00389774 7F 03 C3 78 */ mr r3, r24 -/* 8038DB18 00389778 80 1B 00 00 */ lwz r0, 0(r27) -/* 8038DB1C 0038977C 38 9D 6D 67 */ addi r4, r29, 0x6d67 -/* 8038DB20 00389780 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8038DB24 00389784 38 C0 00 00 */ li r6, 0 -/* 8038DB28 00389788 7C BC 02 14 */ add r5, r28, r0 -/* 8038DB2C 0038978C 7D 89 03 A6 */ mtctr r12 -/* 8038DB30 00389790 4E 80 04 21 */ bctrl -/* 8038DB34 00389794 80 9E 00 14 */ lwz r4, 0x14(r30) -/* 8038DB38 00389798 3B 7B 00 04 */ addi r27, r27, 4 -/* 8038DB3C 0038979C 3B 39 00 01 */ addi r25, r25, 1 -/* 8038DB40 003897A0 7C 64 D1 2E */ stwx r3, r4, r26 -/* 8038DB44 003897A4 3B 5A 00 04 */ addi r26, r26, 4 -lbl_8038DB48: -/* 8038DB48 003897A8 80 7E 00 0C */ lwz r3, 0xc(r30) -/* 8038DB4C 003897AC A0 03 00 0C */ lhz r0, 0xc(r3) -/* 8038DB50 003897B0 7C 19 00 00 */ cmpw r25, r0 -/* 8038DB54 003897B4 41 80 FF BC */ blt lbl_8038DB10 -lbl_8038DB58: -/* 8038DB58 003897B8 A0 1F 00 0E */ lhz r0, 0xe(r31) -/* 8038DB5C 003897BC 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13) -/* 8038DB60 003897C0 54 04 20 36 */ slwi r4, r0, 4 -/* 8038DB64 003897C4 4B F0 9B C1 */ bl func_80297724 -/* 8038DB68 003897C8 2C 03 00 00 */ cmpwi r3, 0 -/* 8038DB6C 003897CC 90 7E 00 18 */ stw r3, 0x18(r30) -/* 8038DB70 003897D0 41 82 00 5C */ beq lbl_8038DBCC -/* 8038DB74 003897D4 A0 1F 00 0E */ lhz r0, 0xe(r31) -/* 8038DB78 003897D8 38 80 00 00 */ li r4, 0 -/* 8038DB7C 003897DC B0 1E 00 1C */ sth r0, 0x1c(r30) -/* 8038DB80 003897E0 54 05 20 36 */ slwi r5, r0, 4 -/* 8038DB84 003897E4 4B C7 65 81 */ bl memset -/* 8038DB88 003897E8 38 A0 00 00 */ li r5, 0 -/* 8038DB8C 003897EC 38 80 00 00 */ li r4, 0 -/* 8038DB90 003897F0 48 00 00 2C */ b lbl_8038DBBC -lbl_8038DB94: -/* 8038DB94 003897F4 80 7E 00 18 */ lwz r3, 0x18(r30) -/* 8038DB98 003897F8 54 A0 23 36 */ rlwinm r0, r5, 4, 0xc, 0x1b -/* 8038DB9C 003897FC 7C 63 02 15 */ add. r3, r3, r0 -/* 8038DBA0 00389800 41 82 00 18 */ beq lbl_8038DBB8 -/* 8038DBA4 00389804 90 83 00 00 */ stw r4, 0(r3) -/* 8038DBA8 00389808 90 83 00 04 */ stw r4, 4(r3) -/* 8038DBAC 0038980C 98 83 00 0E */ stb r4, 0xe(r3) -/* 8038DBB0 00389810 90 83 00 08 */ stw r4, 8(r3) -/* 8038DBB4 00389814 B0 83 00 0C */ sth r4, 0xc(r3) -lbl_8038DBB8: -/* 8038DBB8 00389818 38 A5 00 01 */ addi r5, r5, 1 -lbl_8038DBBC: -/* 8038DBBC 0038981C A0 1F 00 0E */ lhz r0, 0xe(r31) -/* 8038DBC0 00389820 54 A3 04 3E */ clrlwi r3, r5, 0x10 -/* 8038DBC4 00389824 7C 03 00 40 */ cmplw r3, r0 -/* 8038DBC8 00389828 41 80 FF CC */ blt lbl_8038DB94 -lbl_8038DBCC: -/* 8038DBCC 0038982C 39 61 00 30 */ addi r11, r1, 0x30 -/* 8038DBD0 00389830 4B E3 95 99 */ bl _restgpr_24 -/* 8038DBD4 00389834 80 01 00 34 */ lwz r0, 0x34(r1) -/* 8038DBD8 00389838 7C 08 03 A6 */ mtlr r0 -/* 8038DBDC 0038983C 38 21 00 30 */ addi r1, r1, 0x30 -/* 8038DBE0 00389840 4E 80 00 20 */ blr -/* 8038DBE4 00389844 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038DBE8 00389848 7C 08 02 A6 */ mflr r0 -/* 8038DBEC 0038984C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8038DBF0 00389850 39 61 00 20 */ addi r11, r1, 0x20 -/* 8038DBF4 00389854 4B E3 95 35 */ bl _savegpr_27 -/* 8038DBF8 00389858 80 C3 00 0C */ lwz r6, 0xc(r3) -/* 8038DBFC 0038985C 7C 7B 1B 78 */ mr r27, r3 -/* 8038DC00 00389860 7C 9C 23 78 */ mr r28, r4 -/* 8038DC04 00389864 7C BD 2B 78 */ mr r29, r5 -/* 8038DC08 00389868 80 06 00 10 */ lwz r0, 0x10(r6) -/* 8038DC0C 0038986C 3B C0 00 00 */ li r30, 0 -/* 8038DC10 00389870 7F E6 02 14 */ add r31, r6, r0 -/* 8038DC14 00389874 48 00 00 A4 */ b lbl_8038DCB8 -lbl_8038DC18: -/* 8038DC18 00389878 57 C0 13 BA */ rlwinm r0, r30, 2, 0xe, 0x1d -/* 8038DC1C 0038987C 7C 1F 00 2E */ lwzx r0, r31, r0 -/* 8038DC20 00389880 7C 84 02 14 */ add r4, r4, r0 -/* 8038DC24 00389884 88 04 00 15 */ lbz r0, 0x15(r4) -/* 8038DC28 00389888 2C 00 00 00 */ cmpwi r0, 0 -/* 8038DC2C 0038988C 40 82 00 48 */ bne lbl_8038DC74 -/* 8038DC30 00389890 81 9C 00 00 */ lwz r12, 0(r28) -/* 8038DC34 00389894 7F 83 E3 78 */ mr r3, r28 -/* 8038DC38 00389898 7F A5 EB 78 */ mr r5, r29 -/* 8038DC3C 0038989C 81 8C 00 3C */ lwz r12, 0x3c(r12) -/* 8038DC40 003898A0 7D 89 03 A6 */ mtctr r12 -/* 8038DC44 003898A4 4E 80 04 21 */ bctrl -/* 8038DC48 003898A8 2C 03 00 00 */ cmpwi r3, 0 -/* 8038DC4C 003898AC 41 82 00 68 */ beq lbl_8038DCB4 -/* 8038DC50 003898B0 80 1B 00 18 */ lwz r0, 0x18(r27) -/* 8038DC54 003898B4 57 C5 23 36 */ rlwinm r5, r30, 4, 0xc, 0x1b -/* 8038DC58 003898B8 7C 80 2A 14 */ add r4, r0, r5 -/* 8038DC5C 003898BC 93 64 00 08 */ stw r27, 8(r4) -/* 8038DC60 003898C0 B3 C4 00 0C */ sth r30, 0xc(r4) -/* 8038DC64 003898C4 80 1B 00 18 */ lwz r0, 0x18(r27) -/* 8038DC68 003898C8 7C 80 2A 14 */ add r4, r0, r5 -/* 8038DC6C 003898CC 4B FF 7E 49 */ bl AddAnimationLink__Q34nw4r3lyt4PaneFPQ34nw4r3lyt13AnimationLink -/* 8038DC70 003898D0 48 00 00 44 */ b lbl_8038DCB4 -lbl_8038DC74: -/* 8038DC74 003898D4 81 9C 00 00 */ lwz r12, 0(r28) -/* 8038DC78 003898D8 7F 83 E3 78 */ mr r3, r28 -/* 8038DC7C 003898DC 7F A5 EB 78 */ mr r5, r29 -/* 8038DC80 003898E0 81 8C 00 40 */ lwz r12, 0x40(r12) -/* 8038DC84 003898E4 7D 89 03 A6 */ mtctr r12 -/* 8038DC88 003898E8 4E 80 04 21 */ bctrl -/* 8038DC8C 003898EC 2C 03 00 00 */ cmpwi r3, 0 -/* 8038DC90 003898F0 41 82 00 24 */ beq lbl_8038DCB4 -/* 8038DC94 003898F4 80 1B 00 18 */ lwz r0, 0x18(r27) -/* 8038DC98 003898F8 57 C5 23 36 */ rlwinm r5, r30, 4, 0xc, 0x1b -/* 8038DC9C 003898FC 7C 80 2A 14 */ add r4, r0, r5 -/* 8038DCA0 00389900 93 64 00 08 */ stw r27, 8(r4) -/* 8038DCA4 00389904 B3 C4 00 0C */ sth r30, 0xc(r4) -/* 8038DCA8 00389908 80 1B 00 18 */ lwz r0, 0x18(r27) -/* 8038DCAC 0038990C 7C 80 2A 14 */ add r4, r0, r5 -/* 8038DCB0 00389910 4B FF F5 E1 */ bl AddAnimationLink__Q34nw4r3lyt8MaterialFPQ34nw4r3lyt13AnimationLink -lbl_8038DCB4: -/* 8038DCB4 00389914 3B DE 00 01 */ addi r30, r30, 1 -lbl_8038DCB8: -/* 8038DCB8 00389918 80 9B 00 0C */ lwz r4, 0xc(r27) -/* 8038DCBC 0038991C 57 C3 04 3E */ clrlwi r3, r30, 0x10 -/* 8038DCC0 00389920 A0 04 00 0E */ lhz r0, 0xe(r4) -/* 8038DCC4 00389924 7C 03 00 40 */ cmplw r3, r0 -/* 8038DCC8 00389928 41 80 FF 50 */ blt lbl_8038DC18 -/* 8038DCCC 0038992C 39 61 00 20 */ addi r11, r1, 0x20 -/* 8038DCD0 00389930 4B E3 94 A5 */ bl _restgpr_27 -/* 8038DCD4 00389934 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8038DCD8 00389938 7C 08 03 A6 */ mtlr r0 -/* 8038DCDC 0038993C 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038DCE0 00389940 4E 80 00 20 */ blr -/* 8038DCE4 00389944 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038DCE8 00389948 7C 08 02 A6 */ mflr r0 -/* 8038DCEC 0038994C 90 01 00 24 */ stw r0, 0x24(r1) -/* 8038DCF0 00389950 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8038DCF4 00389954 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8038DCF8 00389958 3B C0 00 00 */ li r30, 0 -/* 8038DCFC 0038995C 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8038DD00 00389960 7C 9D 23 78 */ mr r29, r4 -/* 8038DD04 00389964 93 81 00 10 */ stw r28, 0x10(r1) -/* 8038DD08 00389968 7C 7C 1B 78 */ mr r28, r3 -/* 8038DD0C 0038996C 80 A3 00 0C */ lwz r5, 0xc(r3) -/* 8038DD10 00389970 80 05 00 10 */ lwz r0, 0x10(r5) -/* 8038DD14 00389974 7F E5 02 14 */ add r31, r5, r0 -/* 8038DD18 00389978 48 00 00 58 */ b lbl_8038DD70 -lbl_8038DD1C: -/* 8038DD1C 0038997C 57 C0 13 BA */ rlwinm r0, r30, 2, 0xe, 0x1d -/* 8038DD20 00389980 7C 1F 00 2E */ lwzx r0, r31, r0 -/* 8038DD24 00389984 7C 84 02 14 */ add r4, r4, r0 -/* 8038DD28 00389988 88 04 00 15 */ lbz r0, 0x15(r4) -/* 8038DD2C 0038998C 28 00 00 01 */ cmplwi r0, 1 -/* 8038DD30 00389990 40 82 00 3C */ bne lbl_8038DD6C -/* 8038DD34 00389994 38 7D 00 44 */ addi r3, r29, 0x44 -/* 8038DD38 00389998 38 A0 00 14 */ li r5, 0x14 -/* 8038DD3C 0038999C 4B E4 08 2D */ bl func_801CE568 -/* 8038DD40 003899A0 2C 03 00 00 */ cmpwi r3, 0 -/* 8038DD44 003899A4 40 82 00 28 */ bne lbl_8038DD6C -/* 8038DD48 003899A8 80 1C 00 18 */ lwz r0, 0x18(r28) -/* 8038DD4C 003899AC 57 C5 23 36 */ rlwinm r5, r30, 4, 0xc, 0x1b -/* 8038DD50 003899B0 7F A3 EB 78 */ mr r3, r29 -/* 8038DD54 003899B4 7C 80 2A 14 */ add r4, r0, r5 -/* 8038DD58 003899B8 93 84 00 08 */ stw r28, 8(r4) -/* 8038DD5C 003899BC B3 C4 00 0C */ sth r30, 0xc(r4) -/* 8038DD60 003899C0 80 1C 00 18 */ lwz r0, 0x18(r28) -/* 8038DD64 003899C4 7C 80 2A 14 */ add r4, r0, r5 -/* 8038DD68 003899C8 4B FF F5 29 */ bl AddAnimationLink__Q34nw4r3lyt8MaterialFPQ34nw4r3lyt13AnimationLink -lbl_8038DD6C: -/* 8038DD6C 003899CC 3B DE 00 01 */ addi r30, r30, 1 -lbl_8038DD70: -/* 8038DD70 003899D0 80 9C 00 0C */ lwz r4, 0xc(r28) -/* 8038DD74 003899D4 57 C3 04 3E */ clrlwi r3, r30, 0x10 -/* 8038DD78 003899D8 A0 04 00 0E */ lhz r0, 0xe(r4) -/* 8038DD7C 003899DC 7C 03 00 40 */ cmplw r3, r0 -/* 8038DD80 003899E0 41 80 FF 9C */ blt lbl_8038DD1C -/* 8038DD84 003899E4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8038DD88 003899E8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8038DD8C 003899EC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8038DD90 003899F0 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8038DD94 003899F4 83 81 00 10 */ lwz r28, 0x10(r1) -/* 8038DD98 003899F8 7C 08 03 A6 */ mtlr r0 -/* 8038DD9C 003899FC 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038DDA0 00389A00 4E 80 00 20 */ blr -/* 8038DDA4 00389A04 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 8038DDA8 00389A08 7C 08 02 A6 */ mflr r0 -/* 8038DDAC 00389A0C 90 01 00 64 */ stw r0, 0x64(r1) -/* 8038DDB0 00389A10 DB E1 00 50 */ stfd f31, 0x50(r1) -/* 8038DDB4 00389A14 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 8038DDB8 00389A18 DB C1 00 40 */ stfd f30, 0x40(r1) -/* 8038DDBC 00389A1C F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 -/* 8038DDC0 00389A20 39 61 00 40 */ addi r11, r1, 0x40 -/* 8038DDC4 00389A24 4B E3 93 4D */ bl _savegpr_21 -/* 8038DDC8 00389A28 80 C3 00 0C */ lwz r6, 0xc(r3) -/* 8038DDCC 00389A2C 3F E0 52 4C */ lis r31, 0x524C5643@ha -/* 8038DDD0 00389A30 54 84 10 3A */ slwi r4, r4, 2 -/* 8038DDD4 00389A34 C3 E2 A8 FC */ lfs f31, lbl_80642EFC-_SDA2_BASE_(r2) -/* 8038DDD8 00389A38 80 06 00 10 */ lwz r0, 0x10(r6) -/* 8038DDDC 00389A3C 7C 76 1B 78 */ mr r22, r3 -/* 8038DDE0 00389A40 7C B7 2B 78 */ mr r23, r5 -/* 8038DDE4 00389A44 3B DF 56 43 */ addi r30, r31, 0x524C5643@l -/* 8038DDE8 00389A48 7C 06 02 14 */ add r0, r6, r0 -/* 8038DDEC 00389A4C 3B 00 00 00 */ li r24, 0 -/* 8038DDF0 00389A50 7C 04 00 2E */ lwzx r0, r4, r0 -/* 8038DDF4 00389A54 7F 86 02 14 */ add r28, r6, r0 -/* 8038DDF8 00389A58 3B 5C 00 18 */ addi r26, r28, 0x18 -/* 8038DDFC 00389A5C 48 00 01 60 */ b lbl_8038DF5C -lbl_8038DE00: -/* 8038DE00 00389A60 80 1A 00 00 */ lwz r0, 0(r26) -/* 8038DE04 00389A64 7C 7C 00 2E */ lwzx r3, r28, r0 -/* 8038DE08 00389A68 7F 7C 02 14 */ add r27, r28, r0 -/* 8038DE0C 00389A6C 3B 3B 00 08 */ addi r25, r27, 8 -/* 8038DE10 00389A70 7C 03 F0 00 */ cmpw r3, r30 -/* 8038DE14 00389A74 41 82 00 D4 */ beq lbl_8038DEE8 -/* 8038DE18 00389A78 40 80 00 14 */ bge lbl_8038DE2C -/* 8038DE1C 00389A7C 38 1F 50 41 */ addi r0, r31, 0x5041 -/* 8038DE20 00389A80 7C 03 00 00 */ cmpw r3, r0 -/* 8038DE24 00389A84 41 82 00 18 */ beq lbl_8038DE3C -/* 8038DE28 00389A88 48 00 01 2C */ b lbl_8038DF54 -lbl_8038DE2C: -/* 8038DE2C 00389A8C 38 1F 56 49 */ addi r0, r31, 0x5649 -/* 8038DE30 00389A90 7C 03 00 00 */ cmpw r3, r0 -/* 8038DE34 00389A94 41 82 00 58 */ beq lbl_8038DE8C -/* 8038DE38 00389A98 48 00 01 1C */ b lbl_8038DF54 -lbl_8038DE3C: -/* 8038DE3C 00389A9C C3 D6 00 10 */ lfs f30, 0x10(r22) -/* 8038DE40 00389AA0 3B A0 00 00 */ li r29, 0 -/* 8038DE44 00389AA4 48 00 00 38 */ b lbl_8038DE7C -lbl_8038DE48: -/* 8038DE48 00389AA8 80 19 00 00 */ lwz r0, 0(r25) -/* 8038DE4C 00389AAC FC 20 F0 90 */ fmr f1, f30 -/* 8038DE50 00389AB0 7E BB 02 14 */ add r21, r27, r0 -/* 8038DE54 00389AB4 80 15 00 08 */ lwz r0, 8(r21) -/* 8038DE58 00389AB8 A0 95 00 04 */ lhz r4, 4(r21) -/* 8038DE5C 00389ABC 7C 75 02 14 */ add r3, r21, r0 -/* 8038DE60 00389AC0 4B FF F9 C5 */ bl func_8038D824 -/* 8038DE64 00389AC4 88 15 00 01 */ lbz r0, 1(r21) -/* 8038DE68 00389AC8 3B 39 00 04 */ addi r25, r25, 4 -/* 8038DE6C 00389ACC 3B BD 00 01 */ addi r29, r29, 1 -/* 8038DE70 00389AD0 54 00 10 3A */ slwi r0, r0, 2 -/* 8038DE74 00389AD4 7C 77 02 14 */ add r3, r23, r0 -/* 8038DE78 00389AD8 D0 23 00 2C */ stfs f1, 0x2c(r3) -lbl_8038DE7C: -/* 8038DE7C 00389ADC 88 1B 00 04 */ lbz r0, 4(r27) -/* 8038DE80 00389AE0 7C 1D 00 00 */ cmpw r29, r0 -/* 8038DE84 00389AE4 41 80 FF C4 */ blt lbl_8038DE48 -/* 8038DE88 00389AE8 48 00 00 CC */ b lbl_8038DF54 -lbl_8038DE8C: -/* 8038DE8C 00389AEC C3 D6 00 10 */ lfs f30, 0x10(r22) -/* 8038DE90 00389AF0 3B A0 00 00 */ li r29, 0 -/* 8038DE94 00389AF4 48 00 00 44 */ b lbl_8038DED8 -lbl_8038DE98: -/* 8038DE98 00389AF8 80 19 00 00 */ lwz r0, 0(r25) -/* 8038DE9C 00389AFC FC 20 F0 90 */ fmr f1, f30 -/* 8038DEA0 00389B00 7C 7B 02 14 */ add r3, r27, r0 -/* 8038DEA4 00389B04 80 03 00 08 */ lwz r0, 8(r3) -/* 8038DEA8 00389B08 A0 83 00 04 */ lhz r4, 4(r3) -/* 8038DEAC 00389B0C 7C 63 02 14 */ add r3, r3, r0 -/* 8038DEB0 00389B10 4B FF F8 8D */ bl func_8038D73C -/* 8038DEB4 00389B14 54 64 04 3E */ clrlwi r4, r3, 0x10 -/* 8038DEB8 00389B18 88 17 00 B7 */ lbz r0, 0xb7(r23) -/* 8038DEBC 00389B1C 7C 64 00 D0 */ neg r3, r4 -/* 8038DEC0 00389B20 3B 39 00 04 */ addi r25, r25, 4 -/* 8038DEC4 00389B24 7C 63 23 78 */ or r3, r3, r4 -/* 8038DEC8 00389B28 54 00 06 3C */ rlwinm r0, r0, 0, 0x18, 0x1e -/* 8038DECC 00389B2C 50 60 0F FE */ rlwimi r0, r3, 1, 0x1f, 0x1f -/* 8038DED0 00389B30 3B BD 00 01 */ addi r29, r29, 1 -/* 8038DED4 00389B34 98 17 00 B7 */ stb r0, 0xb7(r23) -lbl_8038DED8: -/* 8038DED8 00389B38 88 1B 00 04 */ lbz r0, 4(r27) -/* 8038DEDC 00389B3C 7C 1D 00 00 */ cmpw r29, r0 -/* 8038DEE0 00389B40 41 80 FF B8 */ blt lbl_8038DE98 -/* 8038DEE4 00389B44 48 00 00 70 */ b lbl_8038DF54 -lbl_8038DEE8: -/* 8038DEE8 00389B48 88 1B 00 04 */ lbz r0, 4(r27) -/* 8038DEEC 00389B4C 3B A0 00 00 */ li r29, 0 -/* 8038DEF0 00389B50 C3 D6 00 10 */ lfs f30, 0x10(r22) -/* 8038DEF4 00389B54 2C 00 00 00 */ cmpwi r0, 0 -/* 8038DEF8 00389B58 40 81 00 5C */ ble lbl_8038DF54 -/* 8038DEFC 00389B5C 48 00 00 4C */ b lbl_8038DF48 -lbl_8038DF00: -/* 8038DF00 00389B60 80 19 00 00 */ lwz r0, 0(r25) -/* 8038DF04 00389B64 FC 20 F0 90 */ fmr f1, f30 -/* 8038DF08 00389B68 7E BB 02 14 */ add r21, r27, r0 -/* 8038DF0C 00389B6C 80 15 00 08 */ lwz r0, 8(r21) -/* 8038DF10 00389B70 A0 95 00 04 */ lhz r4, 4(r21) -/* 8038DF14 00389B74 7C 75 02 14 */ add r3, r21, r0 -/* 8038DF18 00389B78 4B FF F9 0D */ bl func_8038D824 -/* 8038DF1C 00389B7C EC 01 F8 2A */ fadds f0, f1, f31 -/* 8038DF20 00389B80 F0 01 A0 08 */ psq_st f0, 8(r1), 1, qr2 -/* 8038DF24 00389B84 7E E3 BB 78 */ mr r3, r23 -/* 8038DF28 00389B88 81 97 00 00 */ lwz r12, 0(r23) -/* 8038DF2C 00389B8C 88 A1 00 08 */ lbz r5, 8(r1) -/* 8038DF30 00389B90 81 8C 00 30 */ lwz r12, 0x30(r12) -/* 8038DF34 00389B94 88 95 00 01 */ lbz r4, 1(r21) -/* 8038DF38 00389B98 7D 89 03 A6 */ mtctr r12 -/* 8038DF3C 00389B9C 4E 80 04 21 */ bctrl -/* 8038DF40 00389BA0 3B 39 00 04 */ addi r25, r25, 4 -/* 8038DF44 00389BA4 3B BD 00 01 */ addi r29, r29, 1 -lbl_8038DF48: -/* 8038DF48 00389BA8 88 1B 00 04 */ lbz r0, 4(r27) -/* 8038DF4C 00389BAC 7C 1D 00 00 */ cmpw r29, r0 -/* 8038DF50 00389BB0 41 80 FF B0 */ blt lbl_8038DF00 -lbl_8038DF54: -/* 8038DF54 00389BB4 3B 5A 00 04 */ addi r26, r26, 4 -/* 8038DF58 00389BB8 3B 18 00 01 */ addi r24, r24, 1 -lbl_8038DF5C: -/* 8038DF5C 00389BBC 88 1C 00 14 */ lbz r0, 0x14(r28) -/* 8038DF60 00389BC0 7C 18 00 00 */ cmpw r24, r0 -/* 8038DF64 00389BC4 41 80 FE 9C */ blt lbl_8038DE00 -/* 8038DF68 00389BC8 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 8038DF6C 00389BCC CB E1 00 50 */ lfd f31, 0x50(r1) -/* 8038DF70 00389BD0 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 -/* 8038DF74 00389BD4 39 61 00 40 */ addi r11, r1, 0x40 -/* 8038DF78 00389BD8 CB C1 00 40 */ lfd f30, 0x40(r1) -/* 8038DF7C 00389BDC 4B E3 91 E1 */ bl _restgpr_21 -/* 8038DF80 00389BE0 80 01 00 64 */ lwz r0, 0x64(r1) -/* 8038DF84 00389BE4 7C 08 03 A6 */ mtlr r0 -/* 8038DF88 00389BE8 38 21 00 60 */ addi r1, r1, 0x60 -/* 8038DF8C 00389BEC 4E 80 00 20 */ blr -/* 8038DF90 00389BF0 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 8038DF94 00389BF4 7C 08 02 A6 */ mflr r0 -/* 8038DF98 00389BF8 90 01 00 94 */ stw r0, 0x94(r1) -/* 8038DF9C 00389BFC DB E1 00 80 */ stfd f31, 0x80(r1) -/* 8038DFA0 00389C00 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 -/* 8038DFA4 00389C04 DB C1 00 70 */ stfd f30, 0x70(r1) -/* 8038DFA8 00389C08 F3 C1 00 78 */ psq_st f30, 120(r1), 0, qr0 -/* 8038DFAC 00389C0C DB A1 00 60 */ stfd f29, 0x60(r1) -/* 8038DFB0 00389C10 F3 A1 00 68 */ psq_st f29, 104(r1), 0, qr0 -/* 8038DFB4 00389C14 39 61 00 60 */ addi r11, r1, 0x60 -/* 8038DFB8 00389C18 4B E3 91 55 */ bl _savegpr_20 -/* 8038DFBC 00389C1C 80 C3 00 0C */ lwz r6, 0xc(r3) -/* 8038DFC0 00389C20 3F E0 52 4C */ lis r31, 0x524C5450@ha -/* 8038DFC4 00389C24 54 84 10 3A */ slwi r4, r4, 2 -/* 8038DFC8 00389C28 C3 C2 A8 FC */ lfs f30, lbl_80642EFC-_SDA2_BASE_(r2) -/* 8038DFCC 00389C2C 80 06 00 10 */ lwz r0, 0x10(r6) -/* 8038DFD0 00389C30 7C 74 1B 78 */ mr r20, r3 -/* 8038DFD4 00389C34 7C B5 2B 78 */ mr r21, r5 -/* 8038DFD8 00389C38 3B DF 54 50 */ addi r30, r31, 0x524C5450@l -/* 8038DFDC 00389C3C 7C 06 02 14 */ add r0, r6, r0 -/* 8038DFE0 00389C40 3A C0 00 00 */ li r22, 0 -/* 8038DFE4 00389C44 7C 04 00 2E */ lwzx r0, r4, r0 -/* 8038DFE8 00389C48 7F 86 02 14 */ add r28, r6, r0 -/* 8038DFEC 00389C4C 3B 3C 00 18 */ addi r25, r28, 0x18 -/* 8038DFF0 00389C50 48 00 02 80 */ b lbl_8038E270 -lbl_8038DFF4: -/* 8038DFF4 00389C54 80 19 00 00 */ lwz r0, 0(r25) -/* 8038DFF8 00389C58 7C 7C 00 2E */ lwzx r3, r28, r0 -/* 8038DFFC 00389C5C 7F 7C 02 14 */ add r27, r28, r0 -/* 8038E000 00389C60 3B 1B 00 08 */ addi r24, r27, 8 -/* 8038E004 00389C64 7C 03 F0 00 */ cmpw r3, r30 -/* 8038E008 00389C68 41 82 01 3C */ beq lbl_8038E144 -/* 8038E00C 00389C6C 40 80 00 24 */ bge lbl_8038E030 -/* 8038E010 00389C70 38 1F 4D 43 */ addi r0, r31, 0x4d43 -/* 8038E014 00389C74 7C 03 00 00 */ cmpw r3, r0 -/* 8038E018 00389C78 41 82 00 28 */ beq lbl_8038E040 -/* 8038E01C 00389C7C 40 80 02 4C */ bge lbl_8038E268 -/* 8038E020 00389C80 38 1F 49 4D */ addi r0, r31, 0x494d -/* 8038E024 00389C84 7C 03 00 00 */ cmpw r3, r0 -/* 8038E028 00389C88 41 82 01 CC */ beq lbl_8038E1F4 -/* 8038E02C 00389C8C 48 00 02 3C */ b lbl_8038E268 -lbl_8038E030: -/* 8038E030 00389C90 38 1F 54 53 */ addi r0, r31, 0x5453 -/* 8038E034 00389C94 7C 03 00 00 */ cmpw r3, r0 -/* 8038E038 00389C98 41 82 00 94 */ beq lbl_8038E0CC -/* 8038E03C 00389C9C 48 00 02 2C */ b lbl_8038E268 -lbl_8038E040: -/* 8038E040 00389CA0 88 1B 00 04 */ lbz r0, 4(r27) -/* 8038E044 00389CA4 3A E0 00 00 */ li r23, 0 -/* 8038E048 00389CA8 C3 F4 00 10 */ lfs f31, 0x10(r20) -/* 8038E04C 00389CAC 2C 00 00 00 */ cmpwi r0, 0 -/* 8038E050 00389CB0 40 81 02 18 */ ble lbl_8038E268 -/* 8038E054 00389CB4 48 00 00 68 */ b lbl_8038E0BC -lbl_8038E058: -/* 8038E058 00389CB8 80 18 00 00 */ lwz r0, 0(r24) -/* 8038E05C 00389CBC FC 20 F8 90 */ fmr f1, f31 -/* 8038E060 00389CC0 7F 5B 02 14 */ add r26, r27, r0 -/* 8038E064 00389CC4 80 1A 00 08 */ lwz r0, 8(r26) -/* 8038E068 00389CC8 A0 9A 00 04 */ lhz r4, 4(r26) -/* 8038E06C 00389CCC 7C 7A 02 14 */ add r3, r26, r0 -/* 8038E070 00389CD0 4B FF F7 B5 */ bl func_8038D824 -/* 8038E074 00389CD4 EC 01 F0 2A */ fadds f0, f1, f30 -/* 8038E078 00389CD8 F0 01 D0 08 */ psq_st f0, 8(r1), 1, qr5 -/* 8038E07C 00389CDC 38 C0 FC 00 */ li r6, -1024 -/* 8038E080 00389CE0 A8 01 00 08 */ lha r0, 8(r1) -/* 8038E084 00389CE4 2C 00 FC 00 */ cmpwi r0, -1024 -/* 8038E088 00389CE8 41 80 00 08 */ blt lbl_8038E090 -/* 8038E08C 00389CEC 7C 06 03 78 */ mr r6, r0 -lbl_8038E090: -/* 8038E090 00389CF0 7C C0 07 34 */ extsh r0, r6 -/* 8038E094 00389CF4 88 9A 00 01 */ lbz r4, 1(r26) -/* 8038E098 00389CF8 2C 00 03 FF */ cmpwi r0, 0x3ff -/* 8038E09C 00389CFC 7E A3 AB 78 */ mr r3, r21 -/* 8038E0A0 00389D00 38 A0 03 FF */ li r5, 0x3ff -/* 8038E0A4 00389D04 41 81 00 08 */ bgt lbl_8038E0AC -/* 8038E0A8 00389D08 7C C5 33 78 */ mr r5, r6 -lbl_8038E0AC: -/* 8038E0AC 00389D0C 7C A5 07 34 */ extsh r5, r5 -/* 8038E0B0 00389D10 4B FF E0 39 */ bl SetColorElement__Q34nw4r3lyt8MaterialFUls -/* 8038E0B4 00389D14 3B 18 00 04 */ addi r24, r24, 4 -/* 8038E0B8 00389D18 3A F7 00 01 */ addi r23, r23, 1 -lbl_8038E0BC: -/* 8038E0BC 00389D1C 88 1B 00 04 */ lbz r0, 4(r27) -/* 8038E0C0 00389D20 7C 17 00 00 */ cmpw r23, r0 -/* 8038E0C4 00389D24 41 80 FF 94 */ blt lbl_8038E058 -/* 8038E0C8 00389D28 48 00 01 A0 */ b lbl_8038E268 -lbl_8038E0CC: -/* 8038E0CC 00389D2C C3 B4 00 10 */ lfs f29, 0x10(r20) -/* 8038E0D0 00389D30 3B A0 00 00 */ li r29, 0 -/* 8038E0D4 00389D34 48 00 00 60 */ b lbl_8038E134 -lbl_8038E0D8: -/* 8038E0D8 00389D38 80 78 00 00 */ lwz r3, 0(r24) -/* 8038E0DC 00389D3C 80 15 00 38 */ lwz r0, 0x38(r21) -/* 8038E0E0 00389D40 7F 5B 1A 14 */ add r26, r27, r3 -/* 8038E0E4 00389D44 7C 7B 18 AE */ lbzx r3, r27, r3 -/* 8038E0E8 00389D48 54 00 47 3E */ rlwinm r0, r0, 8, 0x1c, 0x1f -/* 8038E0EC 00389D4C 7C 03 00 40 */ cmplw r3, r0 -/* 8038E0F0 00389D50 40 80 00 3C */ bge lbl_8038E12C -/* 8038E0F4 00389D54 80 1A 00 08 */ lwz r0, 8(r26) -/* 8038E0F8 00389D58 FC 20 E8 90 */ fmr f1, f29 -/* 8038E0FC 00389D5C A0 9A 00 04 */ lhz r4, 4(r26) -/* 8038E100 00389D60 7C 7A 02 14 */ add r3, r26, r0 -/* 8038E104 00389D64 4B FF F7 21 */ bl func_8038D824 -/* 8038E108 00389D68 FF E0 08 90 */ fmr f31, f1 -/* 8038E10C 00389D6C 8A FA 00 01 */ lbz r23, 1(r26) -/* 8038E110 00389D70 8B 5A 00 00 */ lbz r26, 0(r26) -/* 8038E114 00389D74 7E A3 AB 78 */ mr r3, r21 -/* 8038E118 00389D78 4B FF DE 21 */ bl GetTexSRTAry__Q34nw4r3lyt8MaterialFv -/* 8038E11C 00389D7C 1C 9A 00 14 */ mulli r4, r26, 0x14 -/* 8038E120 00389D80 56 E0 10 3A */ slwi r0, r23, 2 -/* 8038E124 00389D84 7C 63 22 14 */ add r3, r3, r4 -/* 8038E128 00389D88 7F E3 05 2E */ stfsx f31, r3, r0 -lbl_8038E12C: -/* 8038E12C 00389D8C 3B 18 00 04 */ addi r24, r24, 4 -/* 8038E130 00389D90 3B BD 00 01 */ addi r29, r29, 1 -lbl_8038E134: -/* 8038E134 00389D94 88 1B 00 04 */ lbz r0, 4(r27) -/* 8038E138 00389D98 7C 1D 00 00 */ cmpw r29, r0 -/* 8038E13C 00389D9C 41 80 FF 9C */ blt lbl_8038E0D8 -/* 8038E140 00389DA0 48 00 01 28 */ b lbl_8038E268 -lbl_8038E144: -/* 8038E144 00389DA4 82 F4 00 14 */ lwz r23, 0x14(r20) -/* 8038E148 00389DA8 2C 17 00 00 */ cmpwi r23, 0 -/* 8038E14C 00389DAC 41 82 01 1C */ beq lbl_8038E268 -/* 8038E150 00389DB0 C3 B4 00 10 */ lfs f29, 0x10(r20) -/* 8038E154 00389DB4 3B A0 00 00 */ li r29, 0 -/* 8038E158 00389DB8 48 00 00 8C */ b lbl_8038E1E4 -lbl_8038E15C: -/* 8038E15C 00389DBC 80 78 00 00 */ lwz r3, 0(r24) -/* 8038E160 00389DC0 80 15 00 3C */ lwz r0, 0x3c(r21) -/* 8038E164 00389DC4 7F 5B 1A 14 */ add r26, r27, r3 -/* 8038E168 00389DC8 7C 7B 18 AE */ lbzx r3, r27, r3 -/* 8038E16C 00389DCC 54 00 27 3E */ srwi r0, r0, 0x1c -/* 8038E170 00389DD0 7C 03 00 40 */ cmplw r3, r0 -/* 8038E174 00389DD4 40 80 00 68 */ bge lbl_8038E1DC -/* 8038E178 00389DD8 88 1A 00 01 */ lbz r0, 1(r26) -/* 8038E17C 00389DDC 2C 00 00 00 */ cmpwi r0, 0 -/* 8038E180 00389DE0 40 82 00 5C */ bne lbl_8038E1DC -/* 8038E184 00389DE4 80 1A 00 08 */ lwz r0, 8(r26) -/* 8038E188 00389DE8 FC 20 E8 90 */ fmr f1, f29 -/* 8038E18C 00389DEC A0 9A 00 04 */ lhz r4, 4(r26) -/* 8038E190 00389DF0 7C 7A 02 14 */ add r3, r26, r0 -/* 8038E194 00389DF4 4B FF F5 A9 */ bl func_8038D73C -/* 8038E198 00389DF8 7C 60 1B 78 */ mr r0, r3 -/* 8038E19C 00389DFC 38 61 00 0C */ addi r3, r1, 0xc -/* 8038E1A0 00389E00 54 00 13 BA */ rlwinm r0, r0, 2, 0xe, 0x1d -/* 8038E1A4 00389E04 38 A0 00 00 */ li r5, 0 -/* 8038E1A8 00389E08 7C 97 00 2E */ lwzx r4, r23, r0 -/* 8038E1AC 00389E0C 4B FF F2 E5 */ bl func_8038D490 -/* 8038E1B0 00389E10 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8038E1B4 00389E14 7E A3 AB 78 */ mr r3, r21 -/* 8038E1B8 00389E18 54 00 04 1C */ rlwinm r0, r0, 0, 0x10, 0xe -/* 8038E1BC 00389E1C 54 00 04 E0 */ rlwinm r0, r0, 0, 0x13, 0x10 -/* 8038E1C0 00389E20 90 01 00 24 */ stw r0, 0x24(r1) -/* 8038E1C4 00389E24 8B 5A 00 00 */ lbz r26, 0(r26) -/* 8038E1C8 00389E28 4B FF DD 69 */ bl GetTexMapAry__Q34nw4r3lyt8MaterialFv -/* 8038E1CC 00389E2C 1C 1A 00 1C */ mulli r0, r26, 0x1c -/* 8038E1D0 00389E30 38 81 00 0C */ addi r4, r1, 0xc -/* 8038E1D4 00389E34 7C 63 02 14 */ add r3, r3, r0 -/* 8038E1D8 00389E38 4B FF F3 49 */ bl func_8038D520 -lbl_8038E1DC: -/* 8038E1DC 00389E3C 3B 18 00 04 */ addi r24, r24, 4 -/* 8038E1E0 00389E40 3B BD 00 01 */ addi r29, r29, 1 -lbl_8038E1E4: -/* 8038E1E4 00389E44 88 1B 00 04 */ lbz r0, 4(r27) -/* 8038E1E8 00389E48 7C 1D 00 00 */ cmpw r29, r0 -/* 8038E1EC 00389E4C 41 80 FF 70 */ blt lbl_8038E15C -/* 8038E1F0 00389E50 48 00 00 78 */ b lbl_8038E268 -lbl_8038E1F4: -/* 8038E1F4 00389E54 C3 B4 00 10 */ lfs f29, 0x10(r20) -/* 8038E1F8 00389E58 3B A0 00 00 */ li r29, 0 -/* 8038E1FC 00389E5C 48 00 00 60 */ b lbl_8038E25C -lbl_8038E200: -/* 8038E200 00389E60 80 78 00 00 */ lwz r3, 0(r24) -/* 8038E204 00389E64 80 15 00 38 */ lwz r0, 0x38(r21) -/* 8038E208 00389E68 7F 5B 1A 14 */ add r26, r27, r3 -/* 8038E20C 00389E6C 7C 7B 18 AE */ lbzx r3, r27, r3 -/* 8038E210 00389E70 54 00 77 BE */ rlwinm r0, r0, 0xe, 0x1e, 0x1f -/* 8038E214 00389E74 7C 03 00 40 */ cmplw r3, r0 -/* 8038E218 00389E78 40 80 00 3C */ bge lbl_8038E254 -/* 8038E21C 00389E7C 80 1A 00 08 */ lwz r0, 8(r26) -/* 8038E220 00389E80 FC 20 E8 90 */ fmr f1, f29 -/* 8038E224 00389E84 A0 9A 00 04 */ lhz r4, 4(r26) -/* 8038E228 00389E88 7C 7A 02 14 */ add r3, r26, r0 -/* 8038E22C 00389E8C 4B FF F5 F9 */ bl func_8038D824 -/* 8038E230 00389E90 FF E0 08 90 */ fmr f31, f1 -/* 8038E234 00389E94 8A FA 00 01 */ lbz r23, 1(r26) -/* 8038E238 00389E98 8B 5A 00 00 */ lbz r26, 0(r26) -/* 8038E23C 00389E9C 7E A3 AB 78 */ mr r3, r21 -/* 8038E240 00389EA0 4B FF DD 35 */ bl GetIndTexSRTAry__Q34nw4r3lyt8MaterialFv -/* 8038E244 00389EA4 1C 9A 00 14 */ mulli r4, r26, 0x14 -/* 8038E248 00389EA8 56 E0 10 3A */ slwi r0, r23, 2 -/* 8038E24C 00389EAC 7C 63 22 14 */ add r3, r3, r4 -/* 8038E250 00389EB0 7F E3 05 2E */ stfsx f31, r3, r0 -lbl_8038E254: -/* 8038E254 00389EB4 3B 18 00 04 */ addi r24, r24, 4 -/* 8038E258 00389EB8 3B BD 00 01 */ addi r29, r29, 1 -lbl_8038E25C: -/* 8038E25C 00389EBC 88 1B 00 04 */ lbz r0, 4(r27) -/* 8038E260 00389EC0 7C 1D 00 00 */ cmpw r29, r0 -/* 8038E264 00389EC4 41 80 FF 9C */ blt lbl_8038E200 -lbl_8038E268: -/* 8038E268 00389EC8 3B 39 00 04 */ addi r25, r25, 4 -/* 8038E26C 00389ECC 3A D6 00 01 */ addi r22, r22, 1 -lbl_8038E270: -/* 8038E270 00389ED0 88 1C 00 14 */ lbz r0, 0x14(r28) -/* 8038E274 00389ED4 7C 16 00 00 */ cmpw r22, r0 -/* 8038E278 00389ED8 41 80 FD 7C */ blt lbl_8038DFF4 -/* 8038E27C 00389EDC E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 -/* 8038E280 00389EE0 CB E1 00 80 */ lfd f31, 0x80(r1) -/* 8038E284 00389EE4 E3 C1 00 78 */ psq_l f30, 120(r1), 0, qr0 -/* 8038E288 00389EE8 CB C1 00 70 */ lfd f30, 0x70(r1) -/* 8038E28C 00389EEC E3 A1 00 68 */ psq_l f29, 104(r1), 0, qr0 -/* 8038E290 00389EF0 39 61 00 60 */ addi r11, r1, 0x60 -/* 8038E294 00389EF4 CB A1 00 60 */ lfd f29, 0x60(r1) -/* 8038E298 00389EF8 4B E3 8E C1 */ bl _restgpr_20 -/* 8038E29C 00389EFC 80 01 00 94 */ lwz r0, 0x94(r1) -/* 8038E2A0 00389F00 7C 08 03 A6 */ mtlr r0 -/* 8038E2A4 00389F04 38 21 00 90 */ addi r1, r1, 0x90 -/* 8038E2A8 00389F08 4E 80 00 20 */ blr - -.global func_8038E2AC -func_8038E2AC: -/* 8038E2AC 00389F0C 80 A3 00 04 */ lwz r5, 4(r3) -/* 8038E2B0 00389F10 38 03 00 04 */ addi r0, r3, 4 -/* 8038E2B4 00389F14 48 00 00 1C */ b lbl_8038E2D0 -lbl_8038E2B8: -/* 8038E2B8 00389F18 80 65 00 08 */ lwz r3, 8(r5) -/* 8038E2BC 00389F1C 7C 04 18 40 */ cmplw r4, r3 -/* 8038E2C0 00389F20 40 82 00 0C */ bne lbl_8038E2CC -/* 8038E2C4 00389F24 7C A3 2B 78 */ mr r3, r5 -/* 8038E2C8 00389F28 4E 80 00 20 */ blr -lbl_8038E2CC: -/* 8038E2CC 00389F2C 80 A5 00 00 */ lwz r5, 0(r5) -lbl_8038E2D0: -/* 8038E2D0 00389F30 7C 05 00 40 */ cmplw r5, r0 -/* 8038E2D4 00389F34 40 82 FF E4 */ bne lbl_8038E2B8 -/* 8038E2D8 00389F38 38 60 00 00 */ li r3, 0 -/* 8038E2DC 00389F3C 4E 80 00 20 */ blr - -.global func_8038E2E0 -func_8038E2E0: -/* 8038E2E0 00389F40 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8038E2E4 00389F44 7C 08 02 A6 */ mflr r0 -/* 8038E2E8 00389F48 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E2EC 00389F4C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038E2F0 00389F50 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8038E2F4 00389F54 7C 7F 1B 78 */ mr r31, r3 -/* 8038E2F8 00389F58 41 82 00 10 */ beq lbl_8038E308 -/* 8038E2FC 00389F5C 2C 04 00 00 */ cmpwi r4, 0 -/* 8038E300 00389F60 40 81 00 08 */ ble lbl_8038E308 -/* 8038E304 00389F64 4B E4 C7 B5 */ bl func_801DAAB8 -lbl_8038E308: -/* 8038E308 00389F68 7F E3 FB 78 */ mr r3, r31 -/* 8038E30C 00389F6C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8038E310 00389F70 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8038E314 00389F74 7C 08 03 A6 */ mtlr r0 -/* 8038E318 00389F78 38 21 00 10 */ addi r1, r1, 0x10 -/* 8038E31C 00389F7C 4E 80 00 20 */ blr - -.global func_8038E320 -func_8038E320: -/* 8038E320 00389F80 3C 80 80 45 */ lis r4, lbl_8044E580@ha -/* 8038E324 00389F84 38 84 E5 80 */ addi r4, r4, lbl_8044E580@l -/* 8038E328 00389F88 90 83 00 00 */ stw r4, 0(r3) -/* 8038E32C 00389F8C 4E 80 00 20 */ blr -/* 8038E330 00389F90 38 60 00 00 */ li r3, 0 -/* 8038E334 00389F94 4E 80 00 20 */ blr - -.global func_8038E338 -func_8038E338: -/* 8038E338 00389F98 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8038E33C 00389F9C 7C 08 02 A6 */ mflr r0 -/* 8038E340 00389FA0 90 01 00 44 */ stw r0, 0x44(r1) -/* 8038E344 00389FA4 38 A1 00 18 */ addi r5, r1, 0x18 -/* 8038E348 00389FA8 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 8038E34C 00389FAC 3B E0 FF FF */ li r31, -1 -/* 8038E350 00389FB0 93 C1 00 38 */ stw r30, 0x38(r1) -/* 8038E354 00389FB4 7C 9E 23 78 */ mr r30, r4 -/* 8038E358 00389FB8 38 8D 95 40 */ addi r4, r13, lbl_8063E800-_SDA_BASE_ -/* 8038E35C 00389FBC 93 A1 00 34 */ stw r29, 0x34(r1) -/* 8038E360 00389FC0 7C 7D 1B 78 */ mr r29, r3 -/* 8038E364 00389FC4 4B F5 ED 65 */ bl func_802ED0C8 -/* 8038E368 00389FC8 48 00 00 60 */ b lbl_8038E3C8 -lbl_8038E36C: -/* 8038E36C 00389FCC 80 01 00 10 */ lwz r0, 0x10(r1) -/* 8038E370 00389FD0 2C 00 00 00 */ cmpwi r0, 0 -/* 8038E374 00389FD4 41 82 00 38 */ beq lbl_8038E3AC -/* 8038E378 00389FD8 80 81 00 14 */ lwz r4, 0x14(r1) -/* 8038E37C 00389FDC 7F A3 EB 78 */ mr r3, r29 -/* 8038E380 00389FE0 4B F5 EC F1 */ bl func_802ED070 -/* 8038E384 00389FE4 7F A3 EB 78 */ mr r3, r29 -/* 8038E388 00389FE8 7F C4 F3 78 */ mr r4, r30 -/* 8038E38C 00389FEC 4B FF FF AD */ bl func_8038E338 -/* 8038E390 00389FF0 7C 7F 1B 78 */ mr r31, r3 -/* 8038E394 00389FF4 7F A3 EB 78 */ mr r3, r29 -/* 8038E398 00389FF8 38 8D 95 44 */ addi r4, r13, lbl_8063E804-_SDA_BASE_ -/* 8038E39C 00389FFC 4B F5 EC D5 */ bl func_802ED070 -/* 8038E3A0 0038A000 2C 1F FF FF */ cmpwi r31, -1 -/* 8038E3A4 0038A004 40 82 00 38 */ bne lbl_8038E3DC -/* 8038E3A8 0038A008 48 00 00 20 */ b lbl_8038E3C8 -lbl_8038E3AC: -/* 8038E3AC 0038A00C 80 81 00 14 */ lwz r4, 0x14(r1) -/* 8038E3B0 0038A010 7F C3 F3 78 */ mr r3, r30 -/* 8038E3B4 0038A014 4B E4 26 4D */ bl func_801D0A00 -/* 8038E3B8 0038A018 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E3BC 0038A01C 40 82 00 0C */ bne lbl_8038E3C8 -/* 8038E3C0 0038A020 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8038E3C4 0038A024 48 00 00 18 */ b lbl_8038E3DC -lbl_8038E3C8: -/* 8038E3C8 0038A028 38 61 00 18 */ addi r3, r1, 0x18 -/* 8038E3CC 0038A02C 38 81 00 08 */ addi r4, r1, 8 -/* 8038E3D0 0038A030 4B F5 ED 75 */ bl func_802ED144 -/* 8038E3D4 0038A034 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E3D8 0038A038 40 82 FF 94 */ bne lbl_8038E36C -lbl_8038E3DC: -/* 8038E3DC 0038A03C 38 61 00 18 */ addi r3, r1, 0x18 -/* 8038E3E0 0038A040 4B F5 EE 1D */ bl func_802ED1FC -/* 8038E3E4 0038A044 7F E3 FB 78 */ mr r3, r31 -/* 8038E3E8 0038A048 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 8038E3EC 0038A04C 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 8038E3F0 0038A050 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 8038E3F4 0038A054 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8038E3F8 0038A058 7C 08 03 A6 */ mtlr r0 -/* 8038E3FC 0038A05C 38 21 00 40 */ addi r1, r1, 0x40 -/* 8038E400 0038A060 4E 80 00 20 */ blr -lbl_8038E404: -/* 8038E404 0038A064 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 8038E408 0038A068 7C 08 02 A6 */ mflr r0 -/* 8038E40C 0038A06C 90 01 00 44 */ stw r0, 0x44(r1) -/* 8038E410 0038A070 39 61 00 40 */ addi r11, r1, 0x40 -/* 8038E414 0038A074 4B E3 8D 11 */ bl _savegpr_26 -/* 8038E418 0038A078 7C 7A 1B 78 */ mr r26, r3 -/* 8038E41C 0038A07C 7C 9B 23 78 */ mr r27, r4 -/* 8038E420 0038A080 7C BC 2B 78 */ mr r28, r5 -/* 8038E424 0038A084 7C DD 33 78 */ mr r29, r6 -/* 8038E428 0038A088 7C FE 3B 78 */ mr r30, r7 -/* 8038E42C 0038A08C 3B E0 FF FF */ li r31, -1 -/* 8038E430 0038A090 4B F5 E9 B9 */ bl func_802ECDE8 -/* 8038E434 0038A094 2C 03 FF FF */ cmpwi r3, -1 -/* 8038E438 0038A098 41 82 00 A8 */ beq lbl_8038E4E0 -/* 8038E43C 0038A09C 7F 43 D3 78 */ mr r3, r26 -/* 8038E440 0038A0A0 7F 64 DB 78 */ mr r4, r27 -/* 8038E444 0038A0A4 4B F5 EC 2D */ bl func_802ED070 -/* 8038E448 0038A0A8 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E44C 0038A0AC 41 82 00 94 */ beq lbl_8038E4E0 -/* 8038E450 0038A0B0 2C 1C 00 00 */ cmpwi r28, 0 -/* 8038E454 0038A0B4 40 82 00 18 */ bne lbl_8038E46C -/* 8038E458 0038A0B8 7F 43 D3 78 */ mr r3, r26 -/* 8038E45C 0038A0BC 7F A4 EB 78 */ mr r4, r29 -/* 8038E460 0038A0C0 4B FF FE D9 */ bl func_8038E338 -/* 8038E464 0038A0C4 7C 7F 1B 78 */ mr r31, r3 -/* 8038E468 0038A0C8 48 00 00 6C */ b lbl_8038E4D4 -lbl_8038E46C: -/* 8038E46C 0038A0CC 57 83 46 3E */ srwi r3, r28, 0x18 -/* 8038E470 0038A0D0 57 86 84 3E */ srwi r6, r28, 0x10 -/* 8038E474 0038A0D4 57 85 C2 3E */ srwi r5, r28, 8 -/* 8038E478 0038A0D8 38 00 00 00 */ li r0, 0 -/* 8038E47C 0038A0DC 98 61 00 08 */ stb r3, 8(r1) -/* 8038E480 0038A0E0 7F 43 D3 78 */ mr r3, r26 -/* 8038E484 0038A0E4 38 81 00 08 */ addi r4, r1, 8 -/* 8038E488 0038A0E8 98 C1 00 09 */ stb r6, 9(r1) -/* 8038E48C 0038A0EC 98 A1 00 0A */ stb r5, 0xa(r1) -/* 8038E490 0038A0F0 9B 81 00 0B */ stb r28, 0xb(r1) -/* 8038E494 0038A0F4 98 01 00 0C */ stb r0, 0xc(r1) -/* 8038E498 0038A0F8 4B F5 E9 51 */ bl func_802ECDE8 -/* 8038E49C 0038A0FC 2C 03 FF FF */ cmpwi r3, -1 -/* 8038E4A0 0038A100 41 82 00 34 */ beq lbl_8038E4D4 -/* 8038E4A4 0038A104 7F 43 D3 78 */ mr r3, r26 -/* 8038E4A8 0038A108 38 81 00 08 */ addi r4, r1, 8 -/* 8038E4AC 0038A10C 4B F5 EB C5 */ bl func_802ED070 -/* 8038E4B0 0038A110 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E4B4 0038A114 41 82 00 20 */ beq lbl_8038E4D4 -/* 8038E4B8 0038A118 7F 43 D3 78 */ mr r3, r26 -/* 8038E4BC 0038A11C 7F A4 EB 78 */ mr r4, r29 -/* 8038E4C0 0038A120 4B F5 E9 29 */ bl func_802ECDE8 -/* 8038E4C4 0038A124 7C 7F 1B 78 */ mr r31, r3 -/* 8038E4C8 0038A128 7F 43 D3 78 */ mr r3, r26 -/* 8038E4CC 0038A12C 38 8D 95 44 */ addi r4, r13, lbl_8063E804-_SDA_BASE_ -/* 8038E4D0 0038A130 4B F5 EB A1 */ bl func_802ED070 -lbl_8038E4D4: -/* 8038E4D4 0038A134 7F 43 D3 78 */ mr r3, r26 -/* 8038E4D8 0038A138 38 8D 95 44 */ addi r4, r13, lbl_8063E804-_SDA_BASE_ -/* 8038E4DC 0038A13C 4B F5 EB 95 */ bl func_802ED070 -lbl_8038E4E0: -/* 8038E4E0 0038A140 2C 1F FF FF */ cmpwi r31, -1 -/* 8038E4E4 0038A144 41 82 00 44 */ beq lbl_8038E528 -/* 8038E4E8 0038A148 7F 43 D3 78 */ mr r3, r26 -/* 8038E4EC 0038A14C 7F E4 FB 78 */ mr r4, r31 -/* 8038E4F0 0038A150 38 A1 00 10 */ addi r5, r1, 0x10 -/* 8038E4F4 0038A154 4B F5 E8 A5 */ bl func_802ECD98 -/* 8038E4F8 0038A158 38 61 00 10 */ addi r3, r1, 0x10 -/* 8038E4FC 0038A15C 4B F5 EB 51 */ bl func_802ED04C -/* 8038E500 0038A160 2C 1E 00 00 */ cmpwi r30, 0 -/* 8038E504 0038A164 7C 7F 1B 78 */ mr r31, r3 -/* 8038E508 0038A168 41 82 00 10 */ beq lbl_8038E518 -/* 8038E50C 0038A16C 38 61 00 10 */ addi r3, r1, 0x10 -/* 8038E510 0038A170 4B F5 EB 51 */ bl func_802ED060 -/* 8038E514 0038A174 90 7E 00 00 */ stw r3, 0(r30) -lbl_8038E518: -/* 8038E518 0038A178 38 61 00 10 */ addi r3, r1, 0x10 -/* 8038E51C 0038A17C 4B F5 EB 4D */ bl func_802ED068 -/* 8038E520 0038A180 7F E3 FB 78 */ mr r3, r31 -/* 8038E524 0038A184 48 00 00 08 */ b lbl_8038E52C -lbl_8038E528: -/* 8038E528 0038A188 38 60 00 00 */ li r3, 0 -lbl_8038E52C: -/* 8038E52C 0038A18C 39 61 00 40 */ addi r11, r1, 0x40 -/* 8038E530 0038A190 4B E3 8C 41 */ bl _restgpr_26 -/* 8038E534 0038A194 80 01 00 44 */ lwz r0, 0x44(r1) -/* 8038E538 0038A198 7C 08 03 A6 */ mtlr r0 -/* 8038E53C 0038A19C 38 21 00 40 */ addi r1, r1, 0x40 -/* 8038E540 0038A1A0 4E 80 00 20 */ blr - -.global func_8038E544 -func_8038E544: -/* 8038E544 0038A1A4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8038E548 0038A1A8 7C 08 02 A6 */ mflr r0 -/* 8038E54C 0038A1AC 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038E550 0038A1B0 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8038E554 0038A1B4 7C 7F 1B 78 */ mr r31, r3 -/* 8038E558 0038A1B8 4B FF FD C9 */ bl func_8038E320 -/* 8038E55C 0038A1BC 38 00 00 00 */ li r0, 0 -/* 8038E560 0038A1C0 3C 80 80 45 */ lis r4, lbl_8044E598@ha -/* 8038E564 0038A1C4 90 1F 00 28 */ stw r0, 0x28(r31) -/* 8038E568 0038A1C8 38 BF 00 28 */ addi r5, r31, 0x28 -/* 8038E56C 0038A1CC 38 84 E5 98 */ addi r4, r4, lbl_8044E598@l -/* 8038E570 0038A1D0 7F E3 FB 78 */ mr r3, r31 -/* 8038E574 0038A1D4 90 1F 00 2C */ stw r0, 0x2c(r31) -/* 8038E578 0038A1D8 90 9F 00 00 */ stw r4, 0(r31) -/* 8038E57C 0038A1DC 90 1F 00 20 */ stw r0, 0x20(r31) -/* 8038E580 0038A1E0 90 1F 00 24 */ stw r0, 0x24(r31) -/* 8038E584 0038A1E4 90 BF 00 28 */ stw r5, 0x28(r31) -/* 8038E588 0038A1E8 90 BF 00 2C */ stw r5, 0x2c(r31) -/* 8038E58C 0038A1EC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8038E590 0038A1F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8038E594 0038A1F4 7C 08 03 A6 */ mtlr r0 -/* 8038E598 0038A1F8 38 21 00 10 */ addi r1, r1, 0x10 -/* 8038E59C 0038A1FC 4E 80 00 20 */ blr - -.global func_8038E5A0 -func_8038E5A0: -/* 8038E5A0 0038A200 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038E5A4 0038A204 7C 08 02 A6 */ mflr r0 -/* 8038E5A8 0038A208 90 01 00 24 */ stw r0, 0x24(r1) -/* 8038E5AC 0038A20C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8038E5B0 0038A210 7C BF 2B 78 */ mr r31, r5 -/* 8038E5B4 0038A214 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8038E5B8 0038A218 7C 9E 23 78 */ mr r30, r4 -/* 8038E5BC 0038A21C 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8038E5C0 0038A220 7C 7D 1B 78 */ mr r29, r3 -/* 8038E5C4 0038A224 7F C3 F3 78 */ mr r3, r30 -/* 8038E5C8 0038A228 38 9D 00 04 */ addi r4, r29, 4 -/* 8038E5CC 0038A22C 4B F5 E7 2D */ bl func_802ECCF8 -/* 8038E5D0 0038A230 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E5D4 0038A234 40 82 00 0C */ bne lbl_8038E5E0 -/* 8038E5D8 0038A238 38 60 00 00 */ li r3, 0 -/* 8038E5DC 0038A23C 48 00 00 24 */ b lbl_8038E600 -lbl_8038E5E0: -/* 8038E5E0 0038A240 93 DD 00 20 */ stw r30, 0x20(r29) -/* 8038E5E4 0038A244 7F E4 FB 78 */ mr r4, r31 -/* 8038E5E8 0038A248 38 7D 00 30 */ addi r3, r29, 0x30 -/* 8038E5EC 0038A24C 38 A0 00 7F */ li r5, 0x7f -/* 8038E5F0 0038A250 4B E3 FD A1 */ bl func_801CE390 -/* 8038E5F4 0038A254 38 00 00 00 */ li r0, 0 -/* 8038E5F8 0038A258 38 60 00 01 */ li r3, 1 -/* 8038E5FC 0038A25C 98 1D 00 AF */ stb r0, 0xaf(r29) -lbl_8038E600: -/* 8038E600 0038A260 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8038E604 0038A264 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8038E608 0038A268 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8038E60C 0038A26C 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8038E610 0038A270 7C 08 03 A6 */ mtlr r0 -/* 8038E614 0038A274 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038E618 0038A278 4E 80 00 20 */ blr -/* 8038E61C 0038A27C 7C 88 23 78 */ mr r8, r4 -/* 8038E620 0038A280 7C A0 2B 78 */ mr r0, r5 -/* 8038E624 0038A284 7C C7 33 78 */ mr r7, r6 -/* 8038E628 0038A288 38 83 00 30 */ addi r4, r3, 0x30 -/* 8038E62C 0038A28C 7D 05 43 78 */ mr r5, r8 -/* 8038E630 0038A290 7C 06 03 78 */ mr r6, r0 -/* 8038E634 0038A294 38 63 00 04 */ addi r3, r3, 4 -/* 8038E638 0038A298 4B FF FD CC */ b lbl_8038E404 -/* 8038E63C 0038A29C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038E640 0038A2A0 7C 08 02 A6 */ mflr r0 -/* 8038E644 0038A2A4 90 01 00 24 */ stw r0, 0x24(r1) -/* 8038E648 0038A2A8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8038E64C 0038A2AC 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8038E650 0038A2B0 3B C3 00 28 */ addi r30, r3, 0x28 -/* 8038E654 0038A2B4 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8038E658 0038A2B8 7C 9D 23 78 */ mr r29, r4 -/* 8038E65C 0038A2BC 83 E3 00 28 */ lwz r31, 0x28(r3) -/* 8038E660 0038A2C0 48 00 00 24 */ b lbl_8038E684 -lbl_8038E664: -/* 8038E664 0038A2C4 7F A3 EB 78 */ mr r3, r29 -/* 8038E668 0038A2C8 38 9F 00 08 */ addi r4, r31, 8 -/* 8038E66C 0038A2CC 4B E3 FD E1 */ bl func_801CE44C -/* 8038E670 0038A2D0 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E674 0038A2D4 40 82 00 0C */ bne lbl_8038E680 -/* 8038E678 0038A2D8 80 7F 00 88 */ lwz r3, 0x88(r31) -/* 8038E67C 0038A2DC 48 00 00 14 */ b lbl_8038E690 -lbl_8038E680: -/* 8038E680 0038A2E0 83 FF 00 00 */ lwz r31, 0(r31) -lbl_8038E684: -/* 8038E684 0038A2E4 7C 1F F0 40 */ cmplw r31, r30 -/* 8038E688 0038A2E8 40 82 FF DC */ bne lbl_8038E664 -/* 8038E68C 0038A2EC 38 60 00 00 */ li r3, 0 -lbl_8038E690: -/* 8038E690 0038A2F0 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8038E694 0038A2F4 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8038E698 0038A2F8 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8038E69C 0038A2FC 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8038E6A0 0038A300 7C 08 03 A6 */ mtlr r0 -/* 8038E6A4 0038A304 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038E6A8 0038A308 4E 80 00 20 */ blr -/* 8038E6AC 0038A30C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8038E6B0 0038A310 7C 08 02 A6 */ mflr r0 -/* 8038E6B4 0038A314 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E6B8 0038A318 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038E6BC 0038A31C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8038E6C0 0038A320 7C 9F 23 78 */ mr r31, r4 -/* 8038E6C4 0038A324 93 C1 00 08 */ stw r30, 8(r1) -/* 8038E6C8 0038A328 7C 7E 1B 78 */ mr r30, r3 -/* 8038E6CC 0038A32C 41 82 00 30 */ beq lbl_8038E6FC -/* 8038E6D0 0038A330 34 63 00 24 */ addic. r3, r3, 0x24 -/* 8038E6D4 0038A334 41 82 00 0C */ beq lbl_8038E6E0 -/* 8038E6D8 0038A338 38 80 00 00 */ li r4, 0 -/* 8038E6DC 0038A33C 4B FD 44 5D */ bl __dt__Q44nw4r2ut6detail12LinkListImplFv -lbl_8038E6E0: -/* 8038E6E0 0038A340 7F C3 F3 78 */ mr r3, r30 -/* 8038E6E4 0038A344 38 80 00 00 */ li r4, 0 -/* 8038E6E8 0038A348 4B FF FB F9 */ bl func_8038E2E0 -/* 8038E6EC 0038A34C 2C 1F 00 00 */ cmpwi r31, 0 -/* 8038E6F0 0038A350 40 81 00 0C */ ble lbl_8038E6FC -/* 8038E6F4 0038A354 7F C3 F3 78 */ mr r3, r30 -/* 8038E6F8 0038A358 4B E4 C3 C1 */ bl func_801DAAB8 -lbl_8038E6FC: -/* 8038E6FC 0038A35C 7F C3 F3 78 */ mr r3, r30 -/* 8038E700 0038A360 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8038E704 0038A364 83 C1 00 08 */ lwz r30, 8(r1) -/* 8038E708 0038A368 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8038E70C 0038A36C 7C 08 03 A6 */ mtlr r0 -/* 8038E710 0038A370 38 21 00 10 */ addi r1, r1, 0x10 -/* 8038E714 0038A374 4E 80 00 20 */ blr - -.global func_8038E718 -func_8038E718: -/* 8038E718 0038A378 A0 03 00 04 */ lhz r0, 4(r3) -/* 8038E71C 0038A37C 38 80 00 00 */ li r4, 0 -/* 8038E720 0038A380 28 00 FE FF */ cmplwi r0, 0xfeff -/* 8038E724 0038A384 40 82 00 14 */ bne lbl_8038E738 -/* 8038E728 0038A388 A0 03 00 06 */ lhz r0, 6(r3) -/* 8038E72C 0038A38C 28 00 00 08 */ cmplwi r0, 8 -/* 8038E730 0038A390 40 82 00 08 */ bne lbl_8038E738 -/* 8038E734 0038A394 38 80 00 01 */ li r4, 1 -lbl_8038E738: -/* 8038E738 0038A398 7C 83 23 78 */ mr r3, r4 -/* 8038E73C 0038A39C 4E 80 00 20 */ blr - -.global func_8038E740 -func_8038E740: -/* 8038E740 0038A3A0 80 03 00 00 */ lwz r0, 0(r3) -/* 8038E744 0038A3A4 38 A0 00 00 */ li r5, 0 -/* 8038E748 0038A3A8 7C 04 00 40 */ cmplw r4, r0 -/* 8038E74C 0038A3AC 40 82 00 20 */ bne lbl_8038E76C -/* 8038E750 0038A3B0 A0 03 00 04 */ lhz r0, 4(r3) -/* 8038E754 0038A3B4 28 00 FE FF */ cmplwi r0, 0xfeff -/* 8038E758 0038A3B8 40 82 00 14 */ bne lbl_8038E76C -/* 8038E75C 0038A3BC A0 03 00 06 */ lhz r0, 6(r3) -/* 8038E760 0038A3C0 28 00 00 08 */ cmplwi r0, 8 -/* 8038E764 0038A3C4 40 82 00 08 */ bne lbl_8038E76C -/* 8038E768 0038A3C8 38 A0 00 01 */ li r5, 1 -lbl_8038E76C: -/* 8038E76C 0038A3CC 7C A3 2B 78 */ mr r3, r5 -/* 8038E770 0038A3D0 4E 80 00 20 */ blr - -.global func_8038E774 -func_8038E774: -/* 8038E774 0038A3D4 38 00 00 00 */ li r0, 0 -/* 8038E778 0038A3D8 98 03 00 00 */ stb r0, 0(r3) -/* 8038E77C 0038A3DC 98 03 00 01 */ stb r0, 1(r3) -/* 8038E780 0038A3E0 90 03 00 04 */ stw r0, 4(r3) -/* 8038E784 0038A3E4 4E 80 00 20 */ blr - -.global func_8038E788 -func_8038E788: -/* 8038E788 0038A3E8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8038E78C 0038A3EC 7C 08 02 A6 */ mflr r0 -/* 8038E790 0038A3F0 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038E794 0038A3F4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8038E798 0038A3F8 7C 7F 1B 78 */ mr r31, r3 -/* 8038E79C 0038A3FC 80 83 00 04 */ lwz r4, 4(r3) -/* 8038E7A0 0038A400 2C 04 00 00 */ cmpwi r4, 0 -/* 8038E7A4 0038A404 41 82 00 1C */ beq lbl_8038E7C0 -/* 8038E7A8 0038A408 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13) -/* 8038E7AC 0038A40C 4B F0 8F 89 */ bl func_80297734 -/* 8038E7B0 0038A410 38 00 00 00 */ li r0, 0 -/* 8038E7B4 0038A414 90 1F 00 04 */ stw r0, 4(r31) -/* 8038E7B8 0038A418 98 1F 00 00 */ stb r0, 0(r31) -/* 8038E7BC 0038A41C 98 1F 00 01 */ stb r0, 1(r31) -lbl_8038E7C0: -/* 8038E7C0 0038A420 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8038E7C4 0038A424 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8038E7C8 0038A428 7C 08 03 A6 */ mtlr r0 -/* 8038E7CC 0038A42C 38 21 00 10 */ addi r1, r1, 0x10 -/* 8038E7D0 0038A430 4E 80 00 20 */ blr - -.global func_8038E7D4 -func_8038E7D4: -/* 8038E7D4 0038A434 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8038E7D8 0038A438 7C 08 02 A6 */ mflr r0 -/* 8038E7DC 0038A43C 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038E7E0 0038A440 93 E1 00 0C */ stw r31, 0xc(r1) -/* 8038E7E4 0038A444 7C 9F 23 78 */ mr r31, r4 -/* 8038E7E8 0038A448 93 C1 00 08 */ stw r30, 8(r1) -/* 8038E7EC 0038A44C 7C 7E 1B 78 */ mr r30, r3 -/* 8038E7F0 0038A450 88 03 00 00 */ lbz r0, 0(r3) -/* 8038E7F4 0038A454 7C 00 20 40 */ cmplw r0, r4 -/* 8038E7F8 0038A458 40 80 00 44 */ bge lbl_8038E83C -/* 8038E7FC 0038A45C 80 83 00 04 */ lwz r4, 4(r3) -/* 8038E800 0038A460 2C 04 00 00 */ cmpwi r4, 0 -/* 8038E804 0038A464 41 82 00 1C */ beq lbl_8038E820 -/* 8038E808 0038A468 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13) -/* 8038E80C 0038A46C 4B F0 8F 29 */ bl func_80297734 -/* 8038E810 0038A470 38 00 00 00 */ li r0, 0 -/* 8038E814 0038A474 90 1E 00 04 */ stw r0, 4(r30) -/* 8038E818 0038A478 98 1E 00 00 */ stb r0, 0(r30) -/* 8038E81C 0038A47C 98 1E 00 01 */ stb r0, 1(r30) -lbl_8038E820: -/* 8038E820 0038A480 80 6D B2 B0 */ lwz r3, lbl_80640570-_SDA_BASE_(r13) -/* 8038E824 0038A484 57 E4 2C F4 */ rlwinm r4, r31, 5, 0x13, 0x1a -/* 8038E828 0038A488 4B F0 8E FD */ bl func_80297724 -/* 8038E82C 0038A48C 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E830 0038A490 90 7E 00 04 */ stw r3, 4(r30) -/* 8038E834 0038A494 41 82 00 08 */ beq lbl_8038E83C -/* 8038E838 0038A498 9B FE 00 00 */ stb r31, 0(r30) -lbl_8038E83C: -/* 8038E83C 0038A49C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 8038E840 0038A4A0 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8038E844 0038A4A4 83 C1 00 08 */ lwz r30, 8(r1) -/* 8038E848 0038A4A8 7C 08 03 A6 */ mtlr r0 -/* 8038E84C 0038A4AC 38 21 00 10 */ addi r1, r1, 0x10 -/* 8038E850 0038A4B0 4E 80 00 20 */ blr - -.global func_8038E854 -func_8038E854: -/* 8038E854 0038A4B4 80 03 00 04 */ lwz r0, 4(r3) -/* 8038E858 0038A4B8 2C 00 00 00 */ cmpwi r0, 0 -/* 8038E85C 0038A4BC 4D 82 00 20 */ beqlr -/* 8038E860 0038A4C0 88 03 00 00 */ lbz r0, 0(r3) -/* 8038E864 0038A4C4 7C 04 00 40 */ cmplw r4, r0 -/* 8038E868 0038A4C8 4D 81 00 20 */ bgtlr -/* 8038E86C 0038A4CC 88 0D B2 D8 */ lbz r0, lbl_80640598-_SDA_BASE_(r13) -/* 8038E870 0038A4D0 7C 00 07 75 */ extsb. r0, r0 -/* 8038E874 0038A4D4 40 82 00 3C */ bne lbl_8038E8B0 -/* 8038E878 0038A4D8 3C C0 80 64 */ lis r6, lbl_8063CE08@ha -/* 8038E87C 0038A4DC C0 22 A9 00 */ lfs f1, lbl_80642F00-_SDA2_BASE_(r2) -/* 8038E880 0038A4E0 38 A6 CE 08 */ addi r5, r6, lbl_8063CE08@l -/* 8038E884 0038A4E4 C0 02 A9 04 */ lfs f0, lbl_80642F04-_SDA2_BASE_(r2) -/* 8038E888 0038A4E8 38 00 00 01 */ li r0, 1 -/* 8038E88C 0038A4EC D0 26 CE 08 */ stfs f1, -0x31f8(r6) -/* 8038E890 0038A4F0 D0 25 00 04 */ stfs f1, 4(r5) -/* 8038E894 0038A4F4 D0 05 00 08 */ stfs f0, 8(r5) -/* 8038E898 0038A4F8 D0 25 00 0C */ stfs f1, 0xc(r5) -/* 8038E89C 0038A4FC D0 25 00 10 */ stfs f1, 0x10(r5) -/* 8038E8A0 0038A500 D0 05 00 14 */ stfs f0, 0x14(r5) -/* 8038E8A4 0038A504 D0 05 00 18 */ stfs f0, 0x18(r5) -/* 8038E8A8 0038A508 D0 05 00 1C */ stfs f0, 0x1c(r5) -/* 8038E8AC 0038A50C 98 0D B2 D8 */ stb r0, lbl_80640598-_SDA_BASE_(r13) -lbl_8038E8B0: -/* 8038E8B0 0038A510 88 E3 00 01 */ lbz r7, 1(r3) -/* 8038E8B4 0038A514 3C C0 80 64 */ lis r6, lbl_8063CE08@ha -/* 8038E8B8 0038A518 38 A6 CE 08 */ addi r5, r6, lbl_8063CE08@l -/* 8038E8BC 0038A51C C0 E6 CE 08 */ lfs f7, -0x31f8(r6) -/* 8038E8C0 0038A520 7C 07 20 50 */ subf r0, r7, r4 -/* 8038E8C4 0038A524 54 E6 28 34 */ slwi r6, r7, 5 -/* 8038E8C8 0038A528 C0 C5 00 04 */ lfs f6, 4(r5) -/* 8038E8CC 0038A52C C0 A5 00 08 */ lfs f5, 8(r5) -/* 8038E8D0 0038A530 C0 85 00 0C */ lfs f4, 0xc(r5) -/* 8038E8D4 0038A534 C0 65 00 10 */ lfs f3, 0x10(r5) -/* 8038E8D8 0038A538 C0 45 00 14 */ lfs f2, 0x14(r5) -/* 8038E8DC 0038A53C C0 25 00 18 */ lfs f1, 0x18(r5) -/* 8038E8E0 0038A540 C0 05 00 1C */ lfs f0, 0x1c(r5) -/* 8038E8E4 0038A544 7C 09 03 A6 */ mtctr r0 -/* 8038E8E8 0038A548 7C 07 20 00 */ cmpw r7, r4 -/* 8038E8EC 0038A54C 40 80 00 4C */ bge lbl_8038E938 -lbl_8038E8F0: -/* 8038E8F0 0038A550 80 03 00 04 */ lwz r0, 4(r3) -/* 8038E8F4 0038A554 7C E6 05 2E */ stfsx f7, r6, r0 -/* 8038E8F8 0038A558 7C A0 32 14 */ add r5, r0, r6 -/* 8038E8FC 0038A55C D0 C5 00 04 */ stfs f6, 4(r5) -/* 8038E900 0038A560 80 03 00 04 */ lwz r0, 4(r3) -/* 8038E904 0038A564 7C A0 32 14 */ add r5, r0, r6 -/* 8038E908 0038A568 D0 A5 00 08 */ stfs f5, 8(r5) -/* 8038E90C 0038A56C D0 85 00 0C */ stfs f4, 0xc(r5) -/* 8038E910 0038A570 80 03 00 04 */ lwz r0, 4(r3) -/* 8038E914 0038A574 7C A0 32 14 */ add r5, r0, r6 -/* 8038E918 0038A578 D0 65 00 10 */ stfs f3, 0x10(r5) -/* 8038E91C 0038A57C D0 45 00 14 */ stfs f2, 0x14(r5) -/* 8038E920 0038A580 80 03 00 04 */ lwz r0, 4(r3) -/* 8038E924 0038A584 7C A0 32 14 */ add r5, r0, r6 -/* 8038E928 0038A588 38 C6 00 20 */ addi r6, r6, 0x20 -/* 8038E92C 0038A58C D0 25 00 18 */ stfs f1, 0x18(r5) -/* 8038E930 0038A590 D0 05 00 1C */ stfs f0, 0x1c(r5) -/* 8038E934 0038A594 42 00 FF BC */ bdnz lbl_8038E8F0 -lbl_8038E938: -/* 8038E938 0038A598 98 83 00 01 */ stb r4, 1(r3) -/* 8038E93C 0038A59C 4E 80 00 20 */ blr - -.global func_8038E940 -func_8038E940: -/* 8038E940 0038A5A0 88 03 00 01 */ lbz r0, 1(r3) -/* 8038E944 0038A5A4 7C 00 28 40 */ cmplw r0, r5 -/* 8038E948 0038A5A8 40 80 00 08 */ bge lbl_8038E950 -/* 8038E94C 0038A5AC 7C A0 2B 78 */ mr r0, r5 -lbl_8038E950: -/* 8038E950 0038A5B0 98 03 00 01 */ stb r0, 1(r3) -/* 8038E954 0038A5B4 38 C0 00 00 */ li r6, 0 -/* 8038E958 0038A5B8 7C A9 03 A6 */ mtctr r5 -/* 8038E95C 0038A5BC 2C 05 00 00 */ cmpwi r5, 0 -/* 8038E960 0038A5C0 4C 81 00 20 */ blelr -lbl_8038E964: -/* 8038E964 0038A5C4 80 03 00 04 */ lwz r0, 4(r3) -/* 8038E968 0038A5C8 C0 24 00 00 */ lfs f1, 0(r4) -/* 8038E96C 0038A5CC C0 04 00 04 */ lfs f0, 4(r4) -/* 8038E970 0038A5D0 7C A0 32 14 */ add r5, r0, r6 -/* 8038E974 0038A5D4 7C 26 05 2E */ stfsx f1, r6, r0 -/* 8038E978 0038A5D8 C0 24 00 08 */ lfs f1, 8(r4) -/* 8038E97C 0038A5DC D0 05 00 04 */ stfs f0, 4(r5) -/* 8038E980 0038A5E0 C0 04 00 0C */ lfs f0, 0xc(r4) -/* 8038E984 0038A5E4 80 03 00 04 */ lwz r0, 4(r3) -/* 8038E988 0038A5E8 C0 64 00 10 */ lfs f3, 0x10(r4) -/* 8038E98C 0038A5EC 7C A0 32 14 */ add r5, r0, r6 -/* 8038E990 0038A5F0 C0 44 00 14 */ lfs f2, 0x14(r4) -/* 8038E994 0038A5F4 D0 25 00 08 */ stfs f1, 8(r5) -/* 8038E998 0038A5F8 C0 24 00 18 */ lfs f1, 0x18(r4) -/* 8038E99C 0038A5FC D0 05 00 0C */ stfs f0, 0xc(r5) -/* 8038E9A0 0038A600 C0 04 00 1C */ lfs f0, 0x1c(r4) -/* 8038E9A4 0038A604 38 84 00 20 */ addi r4, r4, 0x20 -/* 8038E9A8 0038A608 80 03 00 04 */ lwz r0, 4(r3) -/* 8038E9AC 0038A60C 7C A0 32 14 */ add r5, r0, r6 -/* 8038E9B0 0038A610 D0 65 00 10 */ stfs f3, 0x10(r5) -/* 8038E9B4 0038A614 D0 45 00 14 */ stfs f2, 0x14(r5) -/* 8038E9B8 0038A618 80 03 00 04 */ lwz r0, 4(r3) -/* 8038E9BC 0038A61C 7C A0 32 14 */ add r5, r0, r6 -/* 8038E9C0 0038A620 38 C6 00 20 */ addi r6, r6, 0x20 -/* 8038E9C4 0038A624 D0 25 00 18 */ stfs f1, 0x18(r5) -/* 8038E9C8 0038A628 D0 05 00 1C */ stfs f0, 0x1c(r5) -/* 8038E9CC 0038A62C 42 00 FF 98 */ bdnz lbl_8038E964 -/* 8038E9D0 0038A630 4E 80 00 20 */ blr - -.global func_8038E9D4 -func_8038E9D4: -/* 8038E9D4 0038A634 28 04 00 FF */ cmplwi r4, 0xff -/* 8038E9D8 0038A638 41 82 00 0C */ beq lbl_8038E9E4 -/* 8038E9DC 0038A63C 38 60 00 01 */ li r3, 1 -/* 8038E9E0 0038A640 4E 80 00 20 */ blr -lbl_8038E9E4: -/* 8038E9E4 0038A644 2C 03 00 00 */ cmpwi r3, 0 -/* 8038E9E8 0038A648 41 82 00 4C */ beq lbl_8038EA34 -/* 8038E9EC 0038A64C 80 83 00 00 */ lwz r4, 0(r3) -/* 8038E9F0 0038A650 3C 04 00 01 */ addis r0, r4, 1 -/* 8038E9F4 0038A654 28 00 FF FF */ cmplwi r0, 0xffff -/* 8038E9F8 0038A658 40 82 00 34 */ bne lbl_8038EA2C -/* 8038E9FC 0038A65C 80 83 00 04 */ lwz r4, 4(r3) -/* 8038EA00 0038A660 3C 04 00 01 */ addis r0, r4, 1 -/* 8038EA04 0038A664 28 00 FF FF */ cmplwi r0, 0xffff -/* 8038EA08 0038A668 40 82 00 24 */ bne lbl_8038EA2C -/* 8038EA0C 0038A66C 80 83 00 08 */ lwz r4, 8(r3) -/* 8038EA10 0038A670 3C 04 00 01 */ addis r0, r4, 1 -/* 8038EA14 0038A674 28 00 FF FF */ cmplwi r0, 0xffff -/* 8038EA18 0038A678 40 82 00 14 */ bne lbl_8038EA2C -/* 8038EA1C 0038A67C 80 63 00 0C */ lwz r3, 0xc(r3) -/* 8038EA20 0038A680 3C 03 00 01 */ addis r0, r3, 1 -/* 8038EA24 0038A684 28 00 FF FF */ cmplwi r0, 0xffff -/* 8038EA28 0038A688 41 82 00 0C */ beq lbl_8038EA34 -lbl_8038EA2C: -/* 8038EA2C 0038A68C 38 60 00 01 */ li r3, 1 -/* 8038EA30 0038A690 4E 80 00 20 */ blr -lbl_8038EA34: -/* 8038EA34 0038A694 38 60 00 00 */ li r3, 0 -/* 8038EA38 0038A698 4E 80 00 20 */ blr - -.global func_8038EA3C -func_8038EA3C: -/* 8038EA3C 0038A69C 89 04 00 00 */ lbz r8, 0(r4) -/* 8038EA40 0038A6A0 28 05 00 FF */ cmplwi r5, 0xff -/* 8038EA44 0038A6A4 88 E4 00 01 */ lbz r7, 1(r4) -/* 8038EA48 0038A6A8 88 C4 00 02 */ lbz r6, 2(r4) -/* 8038EA4C 0038A6AC 88 04 00 03 */ lbz r0, 3(r4) -/* 8038EA50 0038A6B0 99 03 00 00 */ stb r8, 0(r3) -/* 8038EA54 0038A6B4 98 E3 00 01 */ stb r7, 1(r3) -/* 8038EA58 0038A6B8 98 C3 00 02 */ stb r6, 2(r3) -/* 8038EA5C 0038A6BC 98 03 00 03 */ stb r0, 3(r3) -/* 8038EA60 0038A6C0 4D 82 00 20 */ beqlr -/* 8038EA64 0038A6C4 88 04 00 03 */ lbz r0, 3(r4) -/* 8038EA68 0038A6C8 3C 80 80 81 */ lis r4, 0x80808081@ha -/* 8038EA6C 0038A6CC 38 84 80 81 */ addi r4, r4, 0x80808081@l -/* 8038EA70 0038A6D0 7C 00 29 D6 */ mullw r0, r0, r5 -/* 8038EA74 0038A6D4 7C 84 00 96 */ mulhw r4, r4, r0 -/* 8038EA78 0038A6D8 7C 04 02 14 */ add r0, r4, r0 -/* 8038EA7C 0038A6DC 7C 00 3E 70 */ srawi r0, r0, 7 -/* 8038EA80 0038A6E0 54 04 0F FE */ srwi r4, r0, 0x1f -/* 8038EA84 0038A6E4 7C 00 22 14 */ add r0, r0, r4 -/* 8038EA88 0038A6E8 98 03 00 03 */ stb r0, 3(r3) -/* 8038EA8C 0038A6EC 4E 80 00 20 */ blr - -.global func_8038EA90 -func_8038EA90: -/* 8038EA90 0038A6F0 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038EA94 0038A6F4 7C 08 02 A6 */ mflr r0 -/* 8038EA98 0038A6F8 90 01 00 24 */ stw r0, 0x24(r1) -/* 8038EA9C 0038A6FC 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8038EAA0 0038A700 93 C1 00 18 */ stw r30, 0x18(r1) -/* 8038EAA4 0038A704 7C 9E 23 78 */ mr r30, r4 -/* 8038EAA8 0038A708 93 A1 00 14 */ stw r29, 0x14(r1) -/* 8038EAAC 0038A70C 7C 7D 1B 78 */ mr r29, r3 -/* 8038EAB0 0038A710 4B EF 11 D5 */ bl func_8027FC84 -/* 8038EAB4 0038A714 38 60 00 09 */ li r3, 9 -/* 8038EAB8 0038A718 38 80 00 01 */ li r4, 1 -/* 8038EABC 0038A71C 4B EF 09 39 */ bl func_8027F3F4 -/* 8038EAC0 0038A720 2C 1D 00 00 */ cmpwi r29, 0 -/* 8038EAC4 0038A724 41 82 00 10 */ beq lbl_8038EAD4 -/* 8038EAC8 0038A728 38 60 00 0B */ li r3, 0xb -/* 8038EACC 0038A72C 38 80 00 01 */ li r4, 1 -/* 8038EAD0 0038A730 4B EF 09 25 */ bl func_8027F3F4 -lbl_8038EAD4: -/* 8038EAD4 0038A734 3B E0 00 00 */ li r31, 0 -/* 8038EAD8 0038A738 48 00 00 14 */ b lbl_8038EAEC -lbl_8038EADC: -/* 8038EADC 0038A73C 38 7F 00 0D */ addi r3, r31, 0xd -/* 8038EAE0 0038A740 38 80 00 01 */ li r4, 1 -/* 8038EAE4 0038A744 4B EF 09 11 */ bl func_8027F3F4 -/* 8038EAE8 0038A748 3B FF 00 01 */ addi r31, r31, 1 -lbl_8038EAEC: -/* 8038EAEC 0038A74C 7C 1F F0 00 */ cmpw r31, r30 -/* 8038EAF0 0038A750 41 80 FF EC */ blt lbl_8038EADC -/* 8038EAF4 0038A754 38 60 00 00 */ li r3, 0 -/* 8038EAF8 0038A758 38 80 00 09 */ li r4, 9 -/* 8038EAFC 0038A75C 38 A0 00 00 */ li r5, 0 -/* 8038EB00 0038A760 38 C0 00 04 */ li r6, 4 -/* 8038EB04 0038A764 38 E0 00 00 */ li r7, 0 -/* 8038EB08 0038A768 4B EF 11 B1 */ bl func_8027FCB8 -/* 8038EB0C 0038A76C 2C 1D 00 00 */ cmpwi r29, 0 -/* 8038EB10 0038A770 41 82 00 1C */ beq lbl_8038EB2C -/* 8038EB14 0038A774 38 60 00 00 */ li r3, 0 -/* 8038EB18 0038A778 38 80 00 0B */ li r4, 0xb -/* 8038EB1C 0038A77C 38 A0 00 01 */ li r5, 1 -/* 8038EB20 0038A780 38 C0 00 05 */ li r6, 5 -/* 8038EB24 0038A784 38 E0 00 00 */ li r7, 0 -/* 8038EB28 0038A788 4B EF 11 91 */ bl func_8027FCB8 -lbl_8038EB2C: -/* 8038EB2C 0038A78C 3B E0 00 00 */ li r31, 0 -/* 8038EB30 0038A790 48 00 00 20 */ b lbl_8038EB50 -lbl_8038EB34: -/* 8038EB34 0038A794 38 9F 00 0D */ addi r4, r31, 0xd -/* 8038EB38 0038A798 38 60 00 00 */ li r3, 0 -/* 8038EB3C 0038A79C 38 A0 00 01 */ li r5, 1 -/* 8038EB40 0038A7A0 38 C0 00 04 */ li r6, 4 -/* 8038EB44 0038A7A4 38 E0 00 00 */ li r7, 0 -/* 8038EB48 0038A7A8 4B EF 11 71 */ bl func_8027FCB8 -/* 8038EB4C 0038A7AC 3B FF 00 01 */ addi r31, r31, 1 -lbl_8038EB50: -/* 8038EB50 0038A7B0 7C 1F F0 00 */ cmpw r31, r30 -/* 8038EB54 0038A7B4 41 80 FF E0 */ blt lbl_8038EB34 -/* 8038EB58 0038A7B8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8038EB5C 0038A7BC 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 8038EB60 0038A7C0 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 8038EB64 0038A7C4 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 8038EB68 0038A7C8 7C 08 03 A6 */ mtlr r0 -/* 8038EB6C 0038A7CC 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038EB70 0038A7D0 4E 80 00 20 */ blr - -.global func_8038EB74 -func_8038EB74: -/* 8038EB74 0038A7D4 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 8038EB78 0038A7D8 7C 08 02 A6 */ mflr r0 -/* 8038EB7C 0038A7DC 90 01 00 24 */ stw r0, 0x24(r1) -/* 8038EB80 0038A7E0 39 61 00 20 */ addi r11, r1, 0x20 -/* 8038EB84 0038A7E4 4B E3 85 A5 */ bl _savegpr_27 -/* 8038EB88 0038A7E8 7C 7B 1B 78 */ mr r27, r3 -/* 8038EB8C 0038A7EC 7C 9C 23 78 */ mr r28, r4 -/* 8038EB90 0038A7F0 7C BD 2B 78 */ mr r29, r5 -/* 8038EB94 0038A7F4 7C DE 33 78 */ mr r30, r6 -/* 8038EB98 0038A7F8 7C FF 3B 78 */ mr r31, r7 -/* 8038EB9C 0038A7FC 38 60 00 80 */ li r3, 0x80 -/* 8038EBA0 0038A800 38 80 00 00 */ li r4, 0 -/* 8038EBA4 0038A804 38 A0 00 04 */ li r5, 4 -/* 8038EBA8 0038A808 4B EF 25 A1 */ bl func_80281148 -/* 8038EBAC 0038A80C C0 1B 00 00 */ lfs f0, 0(r27) -/* 8038EBB0 0038A810 3C 60 CC 01 */ lis r3, 0xCC008000@ha -/* 8038EBB4 0038A814 C0 3B 00 04 */ lfs f1, 4(r27) -/* 8038EBB8 0038A818 2C 1F 00 00 */ cmpwi r31, 0 -/* 8038EBBC 0038A81C D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) -/* 8038EBC0 0038A820 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EBC4 0038A824 41 82 00 0C */ beq lbl_8038EBD0 -/* 8038EBC8 0038A828 80 1F 00 00 */ lwz r0, 0(r31) -/* 8038EBCC 0038A82C 90 03 80 00 */ stw r0, -0x8000(r3) -lbl_8038EBD0: -/* 8038EBD0 0038A830 2C 9D 00 00 */ cmpwi cr1, r29, 0 -/* 8038EBD4 0038A834 38 C0 00 00 */ li r6, 0 -/* 8038EBD8 0038A838 40 85 01 10 */ ble cr1, lbl_8038ECE8 -/* 8038EBDC 0038A83C 2C 1D 00 08 */ cmpwi r29, 8 -/* 8038EBE0 0038A840 38 9D FF F8 */ addi r4, r29, -8 -/* 8038EBE4 0038A844 40 81 00 D0 */ ble lbl_8038ECB4 -/* 8038EBE8 0038A848 38 A0 00 00 */ li r5, 0 -/* 8038EBEC 0038A84C 41 84 00 18 */ blt cr1, lbl_8038EC04 -/* 8038EBF0 0038A850 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha -/* 8038EBF4 0038A854 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l -/* 8038EBF8 0038A858 7C 1D 00 00 */ cmpw r29, r0 -/* 8038EBFC 0038A85C 41 81 00 08 */ bgt lbl_8038EC04 -/* 8038EC00 0038A860 38 A0 00 01 */ li r5, 1 -lbl_8038EC04: -/* 8038EC04 0038A864 2C 05 00 00 */ cmpwi r5, 0 -/* 8038EC08 0038A868 41 82 00 AC */ beq lbl_8038ECB4 -/* 8038EC0C 0038A86C 38 04 00 07 */ addi r0, r4, 7 -/* 8038EC10 0038A870 7F C5 F3 78 */ mr r5, r30 -/* 8038EC14 0038A874 54 00 E8 FE */ srwi r0, r0, 3 -/* 8038EC18 0038A878 3C 60 CC 01 */ lis r3, 0xcc01 -/* 8038EC1C 0038A87C 7C 09 03 A6 */ mtctr r0 -/* 8038EC20 0038A880 2C 04 00 00 */ cmpwi r4, 0 -/* 8038EC24 0038A884 40 81 00 90 */ ble lbl_8038ECB4 -lbl_8038EC28: -/* 8038EC28 0038A888 C0 05 00 00 */ lfs f0, 0(r5) -/* 8038EC2C 0038A88C 38 C6 00 08 */ addi r6, r6, 8 -/* 8038EC30 0038A890 C0 25 00 04 */ lfs f1, 4(r5) -/* 8038EC34 0038A894 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EC38 0038A898 C0 45 00 20 */ lfs f2, 0x20(r5) -/* 8038EC3C 0038A89C D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EC40 0038A8A0 C0 05 00 24 */ lfs f0, 0x24(r5) -/* 8038EC44 0038A8A4 D0 43 80 00 */ stfs f2, -0x8000(r3) -/* 8038EC48 0038A8A8 C0 25 00 40 */ lfs f1, 0x40(r5) -/* 8038EC4C 0038A8AC D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EC50 0038A8B0 C0 05 00 44 */ lfs f0, 0x44(r5) -/* 8038EC54 0038A8B4 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EC58 0038A8B8 C0 25 00 60 */ lfs f1, 0x60(r5) -/* 8038EC5C 0038A8BC D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EC60 0038A8C0 C0 05 00 64 */ lfs f0, 0x64(r5) -/* 8038EC64 0038A8C4 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EC68 0038A8C8 C0 25 00 80 */ lfs f1, 0x80(r5) -/* 8038EC6C 0038A8CC D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EC70 0038A8D0 C0 05 00 84 */ lfs f0, 0x84(r5) -/* 8038EC74 0038A8D4 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EC78 0038A8D8 C0 25 00 A0 */ lfs f1, 0xa0(r5) -/* 8038EC7C 0038A8DC D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EC80 0038A8E0 C0 05 00 A4 */ lfs f0, 0xa4(r5) -/* 8038EC84 0038A8E4 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EC88 0038A8E8 C0 25 00 C0 */ lfs f1, 0xc0(r5) -/* 8038EC8C 0038A8EC D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EC90 0038A8F0 C0 05 00 C4 */ lfs f0, 0xc4(r5) -/* 8038EC94 0038A8F4 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EC98 0038A8F8 C0 25 00 E0 */ lfs f1, 0xe0(r5) -/* 8038EC9C 0038A8FC D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038ECA0 0038A900 C0 05 00 E4 */ lfs f0, 0xe4(r5) -/* 8038ECA4 0038A904 38 A5 01 00 */ addi r5, r5, 0x100 -/* 8038ECA8 0038A908 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038ECAC 0038A90C D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038ECB0 0038A910 42 00 FF 78 */ bdnz lbl_8038EC28 -lbl_8038ECB4: -/* 8038ECB4 0038A914 54 C3 28 34 */ slwi r3, r6, 5 -/* 8038ECB8 0038A918 7C 06 E8 50 */ subf r0, r6, r29 -/* 8038ECBC 0038A91C 7C 9E 1A 14 */ add r4, r30, r3 -/* 8038ECC0 0038A920 3C 60 CC 01 */ lis r3, 0xcc01 -/* 8038ECC4 0038A924 7C 09 03 A6 */ mtctr r0 -/* 8038ECC8 0038A928 7C 06 E8 00 */ cmpw r6, r29 -/* 8038ECCC 0038A92C 40 80 00 1C */ bge lbl_8038ECE8 -lbl_8038ECD0: -/* 8038ECD0 0038A930 C0 24 00 00 */ lfs f1, 0(r4) -/* 8038ECD4 0038A934 C0 04 00 04 */ lfs f0, 4(r4) -/* 8038ECD8 0038A938 38 84 00 20 */ addi r4, r4, 0x20 -/* 8038ECDC 0038A93C D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038ECE0 0038A940 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038ECE4 0038A944 42 00 FF EC */ bdnz lbl_8038ECD0 -lbl_8038ECE8: -/* 8038ECE8 0038A948 C0 3B 00 00 */ lfs f1, 0(r27) -/* 8038ECEC 0038A94C 3C 60 CC 01 */ lis r3, 0xCC008000@ha -/* 8038ECF0 0038A950 C0 1C 00 00 */ lfs f0, 0(r28) -/* 8038ECF4 0038A954 2C 1F 00 00 */ cmpwi r31, 0 -/* 8038ECF8 0038A958 C0 5B 00 04 */ lfs f2, 4(r27) -/* 8038ECFC 0038A95C EC 01 00 2A */ fadds f0, f1, f0 -/* 8038ED00 0038A960 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3) -/* 8038ED04 0038A964 D0 43 80 00 */ stfs f2, -0x8000(r3) -/* 8038ED08 0038A968 41 82 00 0C */ beq lbl_8038ED14 -/* 8038ED0C 0038A96C 80 1F 00 04 */ lwz r0, 4(r31) -/* 8038ED10 0038A970 90 03 80 00 */ stw r0, -0x8000(r3) -lbl_8038ED14: -/* 8038ED14 0038A974 2C 9D 00 00 */ cmpwi cr1, r29, 0 -/* 8038ED18 0038A978 38 C0 00 00 */ li r6, 0 -/* 8038ED1C 0038A97C 40 85 01 10 */ ble cr1, lbl_8038EE2C -/* 8038ED20 0038A980 2C 1D 00 08 */ cmpwi r29, 8 -/* 8038ED24 0038A984 38 9D FF F8 */ addi r4, r29, -8 -/* 8038ED28 0038A988 40 81 00 D0 */ ble lbl_8038EDF8 -/* 8038ED2C 0038A98C 38 A0 00 00 */ li r5, 0 -/* 8038ED30 0038A990 41 84 00 18 */ blt cr1, lbl_8038ED48 -/* 8038ED34 0038A994 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha -/* 8038ED38 0038A998 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l -/* 8038ED3C 0038A99C 7C 1D 00 00 */ cmpw r29, r0 -/* 8038ED40 0038A9A0 41 81 00 08 */ bgt lbl_8038ED48 -/* 8038ED44 0038A9A4 38 A0 00 01 */ li r5, 1 -lbl_8038ED48: -/* 8038ED48 0038A9A8 2C 05 00 00 */ cmpwi r5, 0 -/* 8038ED4C 0038A9AC 41 82 00 AC */ beq lbl_8038EDF8 -/* 8038ED50 0038A9B0 38 04 00 07 */ addi r0, r4, 7 -/* 8038ED54 0038A9B4 7F C5 F3 78 */ mr r5, r30 -/* 8038ED58 0038A9B8 54 00 E8 FE */ srwi r0, r0, 3 -/* 8038ED5C 0038A9BC 3C 60 CC 01 */ lis r3, 0xcc01 -/* 8038ED60 0038A9C0 7C 09 03 A6 */ mtctr r0 -/* 8038ED64 0038A9C4 2C 04 00 00 */ cmpwi r4, 0 -/* 8038ED68 0038A9C8 40 81 00 90 */ ble lbl_8038EDF8 -lbl_8038ED6C: -/* 8038ED6C 0038A9CC C0 05 00 08 */ lfs f0, 8(r5) -/* 8038ED70 0038A9D0 38 C6 00 08 */ addi r6, r6, 8 -/* 8038ED74 0038A9D4 C0 25 00 0C */ lfs f1, 0xc(r5) -/* 8038ED78 0038A9D8 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038ED7C 0038A9DC C0 45 00 28 */ lfs f2, 0x28(r5) -/* 8038ED80 0038A9E0 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038ED84 0038A9E4 C0 05 00 2C */ lfs f0, 0x2c(r5) -/* 8038ED88 0038A9E8 D0 43 80 00 */ stfs f2, -0x8000(r3) -/* 8038ED8C 0038A9EC C0 25 00 48 */ lfs f1, 0x48(r5) -/* 8038ED90 0038A9F0 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038ED94 0038A9F4 C0 05 00 4C */ lfs f0, 0x4c(r5) -/* 8038ED98 0038A9F8 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038ED9C 0038A9FC C0 25 00 68 */ lfs f1, 0x68(r5) -/* 8038EDA0 0038AA00 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EDA4 0038AA04 C0 05 00 6C */ lfs f0, 0x6c(r5) -/* 8038EDA8 0038AA08 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EDAC 0038AA0C C0 25 00 88 */ lfs f1, 0x88(r5) -/* 8038EDB0 0038AA10 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EDB4 0038AA14 C0 05 00 8C */ lfs f0, 0x8c(r5) -/* 8038EDB8 0038AA18 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EDBC 0038AA1C C0 25 00 A8 */ lfs f1, 0xa8(r5) -/* 8038EDC0 0038AA20 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EDC4 0038AA24 C0 05 00 AC */ lfs f0, 0xac(r5) -/* 8038EDC8 0038AA28 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EDCC 0038AA2C C0 25 00 C8 */ lfs f1, 0xc8(r5) -/* 8038EDD0 0038AA30 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EDD4 0038AA34 C0 05 00 CC */ lfs f0, 0xcc(r5) -/* 8038EDD8 0038AA38 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EDDC 0038AA3C C0 25 00 E8 */ lfs f1, 0xe8(r5) -/* 8038EDE0 0038AA40 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EDE4 0038AA44 C0 05 00 EC */ lfs f0, 0xec(r5) -/* 8038EDE8 0038AA48 38 A5 01 00 */ addi r5, r5, 0x100 -/* 8038EDEC 0038AA4C D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EDF0 0038AA50 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EDF4 0038AA54 42 00 FF 78 */ bdnz lbl_8038ED6C -lbl_8038EDF8: -/* 8038EDF8 0038AA58 54 C3 28 34 */ slwi r3, r6, 5 -/* 8038EDFC 0038AA5C 7C 06 E8 50 */ subf r0, r6, r29 -/* 8038EE00 0038AA60 7C 9E 1A 14 */ add r4, r30, r3 -/* 8038EE04 0038AA64 3C 60 CC 01 */ lis r3, 0xcc01 -/* 8038EE08 0038AA68 7C 09 03 A6 */ mtctr r0 -/* 8038EE0C 0038AA6C 7C 06 E8 00 */ cmpw r6, r29 -/* 8038EE10 0038AA70 40 80 00 1C */ bge lbl_8038EE2C -lbl_8038EE14: -/* 8038EE14 0038AA74 C0 24 00 08 */ lfs f1, 8(r4) -/* 8038EE18 0038AA78 C0 04 00 0C */ lfs f0, 0xc(r4) -/* 8038EE1C 0038AA7C 38 84 00 20 */ addi r4, r4, 0x20 -/* 8038EE20 0038AA80 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EE24 0038AA84 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EE28 0038AA88 42 00 FF EC */ bdnz lbl_8038EE14 -lbl_8038EE2C: -/* 8038EE2C 0038AA8C C0 3B 00 00 */ lfs f1, 0(r27) -/* 8038EE30 0038AA90 3C 60 CC 01 */ lis r3, 0xCC008000@ha -/* 8038EE34 0038AA94 C0 1C 00 00 */ lfs f0, 0(r28) -/* 8038EE38 0038AA98 2C 1F 00 00 */ cmpwi r31, 0 -/* 8038EE3C 0038AA9C C0 5B 00 04 */ lfs f2, 4(r27) -/* 8038EE40 0038AAA0 EC 21 00 2A */ fadds f1, f1, f0 -/* 8038EE44 0038AAA4 C0 1C 00 04 */ lfs f0, 4(r28) -/* 8038EE48 0038AAA8 EC 02 00 2A */ fadds f0, f2, f0 -/* 8038EE4C 0038AAAC D0 23 80 00 */ stfs f1, 0xCC008000@l(r3) -/* 8038EE50 0038AAB0 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EE54 0038AAB4 41 82 00 0C */ beq lbl_8038EE60 -/* 8038EE58 0038AAB8 80 1F 00 0C */ lwz r0, 0xc(r31) -/* 8038EE5C 0038AABC 90 03 80 00 */ stw r0, -0x8000(r3) -lbl_8038EE60: -/* 8038EE60 0038AAC0 2C 9D 00 00 */ cmpwi cr1, r29, 0 -/* 8038EE64 0038AAC4 38 C0 00 00 */ li r6, 0 -/* 8038EE68 0038AAC8 40 85 01 10 */ ble cr1, lbl_8038EF78 -/* 8038EE6C 0038AACC 2C 1D 00 08 */ cmpwi r29, 8 -/* 8038EE70 0038AAD0 38 9D FF F8 */ addi r4, r29, -8 -/* 8038EE74 0038AAD4 40 81 00 D0 */ ble lbl_8038EF44 -/* 8038EE78 0038AAD8 38 A0 00 00 */ li r5, 0 -/* 8038EE7C 0038AADC 41 84 00 18 */ blt cr1, lbl_8038EE94 -/* 8038EE80 0038AAE0 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha -/* 8038EE84 0038AAE4 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l -/* 8038EE88 0038AAE8 7C 1D 00 00 */ cmpw r29, r0 -/* 8038EE8C 0038AAEC 41 81 00 08 */ bgt lbl_8038EE94 -/* 8038EE90 0038AAF0 38 A0 00 01 */ li r5, 1 -lbl_8038EE94: -/* 8038EE94 0038AAF4 2C 05 00 00 */ cmpwi r5, 0 -/* 8038EE98 0038AAF8 41 82 00 AC */ beq lbl_8038EF44 -/* 8038EE9C 0038AAFC 38 04 00 07 */ addi r0, r4, 7 -/* 8038EEA0 0038AB00 7F C5 F3 78 */ mr r5, r30 -/* 8038EEA4 0038AB04 54 00 E8 FE */ srwi r0, r0, 3 -/* 8038EEA8 0038AB08 3C 60 CC 01 */ lis r3, 0xcc01 -/* 8038EEAC 0038AB0C 7C 09 03 A6 */ mtctr r0 -/* 8038EEB0 0038AB10 2C 04 00 00 */ cmpwi r4, 0 -/* 8038EEB4 0038AB14 40 81 00 90 */ ble lbl_8038EF44 -lbl_8038EEB8: -/* 8038EEB8 0038AB18 C0 05 00 18 */ lfs f0, 0x18(r5) -/* 8038EEBC 0038AB1C 38 C6 00 08 */ addi r6, r6, 8 -/* 8038EEC0 0038AB20 C0 25 00 1C */ lfs f1, 0x1c(r5) -/* 8038EEC4 0038AB24 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EEC8 0038AB28 C0 45 00 38 */ lfs f2, 0x38(r5) -/* 8038EECC 0038AB2C D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EED0 0038AB30 C0 05 00 3C */ lfs f0, 0x3c(r5) -/* 8038EED4 0038AB34 D0 43 80 00 */ stfs f2, -0x8000(r3) -/* 8038EED8 0038AB38 C0 25 00 58 */ lfs f1, 0x58(r5) -/* 8038EEDC 0038AB3C D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EEE0 0038AB40 C0 05 00 5C */ lfs f0, 0x5c(r5) -/* 8038EEE4 0038AB44 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EEE8 0038AB48 C0 25 00 78 */ lfs f1, 0x78(r5) -/* 8038EEEC 0038AB4C D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EEF0 0038AB50 C0 05 00 7C */ lfs f0, 0x7c(r5) -/* 8038EEF4 0038AB54 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EEF8 0038AB58 C0 25 00 98 */ lfs f1, 0x98(r5) -/* 8038EEFC 0038AB5C D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EF00 0038AB60 C0 05 00 9C */ lfs f0, 0x9c(r5) -/* 8038EF04 0038AB64 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EF08 0038AB68 C0 25 00 B8 */ lfs f1, 0xb8(r5) -/* 8038EF0C 0038AB6C D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EF10 0038AB70 C0 05 00 BC */ lfs f0, 0xbc(r5) -/* 8038EF14 0038AB74 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EF18 0038AB78 C0 25 00 D8 */ lfs f1, 0xd8(r5) -/* 8038EF1C 0038AB7C D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EF20 0038AB80 C0 05 00 DC */ lfs f0, 0xdc(r5) -/* 8038EF24 0038AB84 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EF28 0038AB88 C0 25 00 F8 */ lfs f1, 0xf8(r5) -/* 8038EF2C 0038AB8C D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EF30 0038AB90 C0 05 00 FC */ lfs f0, 0xfc(r5) -/* 8038EF34 0038AB94 38 A5 01 00 */ addi r5, r5, 0x100 -/* 8038EF38 0038AB98 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EF3C 0038AB9C D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EF40 0038ABA0 42 00 FF 78 */ bdnz lbl_8038EEB8 -lbl_8038EF44: -/* 8038EF44 0038ABA4 54 C3 28 34 */ slwi r3, r6, 5 -/* 8038EF48 0038ABA8 7C 06 E8 50 */ subf r0, r6, r29 -/* 8038EF4C 0038ABAC 7C 9E 1A 14 */ add r4, r30, r3 -/* 8038EF50 0038ABB0 3C 60 CC 01 */ lis r3, 0xcc01 -/* 8038EF54 0038ABB4 7C 09 03 A6 */ mtctr r0 -/* 8038EF58 0038ABB8 7C 06 E8 00 */ cmpw r6, r29 -/* 8038EF5C 0038ABBC 40 80 00 1C */ bge lbl_8038EF78 -lbl_8038EF60: -/* 8038EF60 0038ABC0 C0 24 00 18 */ lfs f1, 0x18(r4) -/* 8038EF64 0038ABC4 C0 04 00 1C */ lfs f0, 0x1c(r4) -/* 8038EF68 0038ABC8 38 84 00 20 */ addi r4, r4, 0x20 -/* 8038EF6C 0038ABCC D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038EF70 0038ABD0 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EF74 0038ABD4 42 00 FF EC */ bdnz lbl_8038EF60 -lbl_8038EF78: -/* 8038EF78 0038ABD8 C0 3B 00 04 */ lfs f1, 4(r27) -/* 8038EF7C 0038ABDC 3C 60 CC 01 */ lis r3, 0xCC008000@ha -/* 8038EF80 0038ABE0 C0 1C 00 04 */ lfs f0, 4(r28) -/* 8038EF84 0038ABE4 2C 1F 00 00 */ cmpwi r31, 0 -/* 8038EF88 0038ABE8 C0 5B 00 00 */ lfs f2, 0(r27) -/* 8038EF8C 0038ABEC EC 01 00 2A */ fadds f0, f1, f0 -/* 8038EF90 0038ABF0 D0 43 80 00 */ stfs f2, 0xCC008000@l(r3) -/* 8038EF94 0038ABF4 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038EF98 0038ABF8 41 82 00 0C */ beq lbl_8038EFA4 -/* 8038EF9C 0038ABFC 80 1F 00 08 */ lwz r0, 8(r31) -/* 8038EFA0 0038AC00 90 03 80 00 */ stw r0, -0x8000(r3) -lbl_8038EFA4: -/* 8038EFA4 0038AC04 2C 9D 00 00 */ cmpwi cr1, r29, 0 -/* 8038EFA8 0038AC08 38 C0 00 00 */ li r6, 0 -/* 8038EFAC 0038AC0C 40 85 01 10 */ ble cr1, lbl_8038F0BC -/* 8038EFB0 0038AC10 2C 1D 00 08 */ cmpwi r29, 8 -/* 8038EFB4 0038AC14 38 9D FF F8 */ addi r4, r29, -8 -/* 8038EFB8 0038AC18 40 81 00 D0 */ ble lbl_8038F088 -/* 8038EFBC 0038AC1C 38 A0 00 00 */ li r5, 0 -/* 8038EFC0 0038AC20 41 84 00 18 */ blt cr1, lbl_8038EFD8 -/* 8038EFC4 0038AC24 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha -/* 8038EFC8 0038AC28 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l -/* 8038EFCC 0038AC2C 7C 1D 00 00 */ cmpw r29, r0 -/* 8038EFD0 0038AC30 41 81 00 08 */ bgt lbl_8038EFD8 -/* 8038EFD4 0038AC34 38 A0 00 01 */ li r5, 1 -lbl_8038EFD8: -/* 8038EFD8 0038AC38 2C 05 00 00 */ cmpwi r5, 0 -/* 8038EFDC 0038AC3C 41 82 00 AC */ beq lbl_8038F088 -/* 8038EFE0 0038AC40 38 04 00 07 */ addi r0, r4, 7 -/* 8038EFE4 0038AC44 7F C5 F3 78 */ mr r5, r30 -/* 8038EFE8 0038AC48 54 00 E8 FE */ srwi r0, r0, 3 -/* 8038EFEC 0038AC4C 3C 60 CC 01 */ lis r3, 0xcc01 -/* 8038EFF0 0038AC50 7C 09 03 A6 */ mtctr r0 -/* 8038EFF4 0038AC54 2C 04 00 00 */ cmpwi r4, 0 -/* 8038EFF8 0038AC58 40 81 00 90 */ ble lbl_8038F088 -lbl_8038EFFC: -/* 8038EFFC 0038AC5C C0 05 00 10 */ lfs f0, 0x10(r5) -/* 8038F000 0038AC60 38 C6 00 08 */ addi r6, r6, 8 -/* 8038F004 0038AC64 C0 25 00 14 */ lfs f1, 0x14(r5) -/* 8038F008 0038AC68 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038F00C 0038AC6C C0 45 00 30 */ lfs f2, 0x30(r5) -/* 8038F010 0038AC70 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038F014 0038AC74 C0 05 00 34 */ lfs f0, 0x34(r5) -/* 8038F018 0038AC78 D0 43 80 00 */ stfs f2, -0x8000(r3) -/* 8038F01C 0038AC7C C0 25 00 50 */ lfs f1, 0x50(r5) -/* 8038F020 0038AC80 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038F024 0038AC84 C0 05 00 54 */ lfs f0, 0x54(r5) -/* 8038F028 0038AC88 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038F02C 0038AC8C C0 25 00 70 */ lfs f1, 0x70(r5) -/* 8038F030 0038AC90 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038F034 0038AC94 C0 05 00 74 */ lfs f0, 0x74(r5) -/* 8038F038 0038AC98 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038F03C 0038AC9C C0 25 00 90 */ lfs f1, 0x90(r5) -/* 8038F040 0038ACA0 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038F044 0038ACA4 C0 05 00 94 */ lfs f0, 0x94(r5) -/* 8038F048 0038ACA8 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038F04C 0038ACAC C0 25 00 B0 */ lfs f1, 0xb0(r5) -/* 8038F050 0038ACB0 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038F054 0038ACB4 C0 05 00 B4 */ lfs f0, 0xb4(r5) -/* 8038F058 0038ACB8 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038F05C 0038ACBC C0 25 00 D0 */ lfs f1, 0xd0(r5) -/* 8038F060 0038ACC0 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038F064 0038ACC4 C0 05 00 D4 */ lfs f0, 0xd4(r5) -/* 8038F068 0038ACC8 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038F06C 0038ACCC C0 25 00 F0 */ lfs f1, 0xf0(r5) -/* 8038F070 0038ACD0 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038F074 0038ACD4 C0 05 00 F4 */ lfs f0, 0xf4(r5) -/* 8038F078 0038ACD8 38 A5 01 00 */ addi r5, r5, 0x100 -/* 8038F07C 0038ACDC D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038F080 0038ACE0 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038F084 0038ACE4 42 00 FF 78 */ bdnz lbl_8038EFFC -lbl_8038F088: -/* 8038F088 0038ACE8 54 C3 28 34 */ slwi r3, r6, 5 -/* 8038F08C 0038ACEC 7C 06 E8 50 */ subf r0, r6, r29 -/* 8038F090 0038ACF0 7C 9E 1A 14 */ add r4, r30, r3 -/* 8038F094 0038ACF4 3C 60 CC 01 */ lis r3, 0xcc01 -/* 8038F098 0038ACF8 7C 09 03 A6 */ mtctr r0 -/* 8038F09C 0038ACFC 7C 06 E8 00 */ cmpw r6, r29 -/* 8038F0A0 0038AD00 40 80 00 1C */ bge lbl_8038F0BC -lbl_8038F0A4: -/* 8038F0A4 0038AD04 C0 24 00 10 */ lfs f1, 0x10(r4) -/* 8038F0A8 0038AD08 C0 04 00 14 */ lfs f0, 0x14(r4) -/* 8038F0AC 0038AD0C 38 84 00 20 */ addi r4, r4, 0x20 -/* 8038F0B0 0038AD10 D0 23 80 00 */ stfs f1, -0x8000(r3) -/* 8038F0B4 0038AD14 D0 03 80 00 */ stfs f0, -0x8000(r3) -/* 8038F0B8 0038AD18 42 00 FF EC */ bdnz lbl_8038F0A4 -lbl_8038F0BC: -/* 8038F0BC 0038AD1C 39 61 00 20 */ addi r11, r1, 0x20 -/* 8038F0C0 0038AD20 4B E3 80 B5 */ bl _restgpr_27 -/* 8038F0C4 0038AD24 80 01 00 24 */ lwz r0, 0x24(r1) -/* 8038F0C8 0038AD28 7C 08 03 A6 */ mtlr r0 -/* 8038F0CC 0038AD2C 38 21 00 20 */ addi r1, r1, 0x20 -/* 8038F0D0 0038AD30 4E 80 00 20 */ blr - -.global func_8038F0D4 -func_8038F0D4: -/* 8038F0D4 0038AD34 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 8038F0D8 0038AD38 7C 08 02 A6 */ mflr r0 -/* 8038F0DC 0038AD3C 90 01 00 54 */ stw r0, 0x54(r1) -/* 8038F0E0 0038AD40 39 61 00 50 */ addi r11, r1, 0x50 -/* 8038F0E4 0038AD44 4B E3 80 35 */ bl _savegpr_23 -/* 8038F0E8 0038AD48 38 00 FF FF */ li r0, -1 -/* 8038F0EC 0038AD4C 2C 07 00 00 */ cmpwi r7, 0 -/* 8038F0F0 0038AD50 90 01 00 10 */ stw r0, 0x10(r1) -/* 8038F0F4 0038AD54 7C 7A 1B 78 */ mr r26, r3 -/* 8038F0F8 0038AD58 7C 9B 23 78 */ mr r27, r4 -/* 8038F0FC 0038AD5C 7C BC 2B 78 */ mr r28, r5 -/* 8038F100 0038AD60 90 01 00 14 */ stw r0, 0x14(r1) -/* 8038F104 0038AD64 7C DD 33 78 */ mr r29, r6 -/* 8038F108 0038AD68 7C FE 3B 78 */ mr r30, r7 -/* 8038F10C 0038AD6C 7D 1F 43 78 */ mr r31, r8 -/* 8038F110 0038AD70 90 01 00 18 */ stw r0, 0x18(r1) -/* 8038F114 0038AD74 90 01 00 1C */ stw r0, 0x1c(r1) -/* 8038F118 0038AD78 41 82 00 74 */ beq lbl_8038F18C -/* 8038F11C 0038AD7C 7F D8 F3 78 */ mr r24, r30 -/* 8038F120 0038AD80 3A E1 00 10 */ addi r23, r1, 0x10 -/* 8038F124 0038AD84 3B 20 00 00 */ li r25, 0 -lbl_8038F128: -/* 8038F128 0038AD88 88 18 00 00 */ lbz r0, 0(r24) -/* 8038F12C 0038AD8C 7F E5 FB 78 */ mr r5, r31 -/* 8038F130 0038AD90 38 61 00 0C */ addi r3, r1, 0xc -/* 8038F134 0038AD94 38 81 00 08 */ addi r4, r1, 8 -/* 8038F138 0038AD98 98 01 00 08 */ stb r0, 8(r1) -/* 8038F13C 0038AD9C 88 18 00 01 */ lbz r0, 1(r24) -/* 8038F140 0038ADA0 98 01 00 09 */ stb r0, 9(r1) -/* 8038F144 0038ADA4 88 18 00 02 */ lbz r0, 2(r24) -/* 8038F148 0038ADA8 98 01 00 0A */ stb r0, 0xa(r1) -/* 8038F14C 0038ADAC 88 18 00 03 */ lbz r0, 3(r24) -/* 8038F150 0038ADB0 98 01 00 0B */ stb r0, 0xb(r1) -/* 8038F154 0038ADB4 4B FF F8 E9 */ bl func_8038EA3C -/* 8038F158 0038ADB8 88 61 00 0C */ lbz r3, 0xc(r1) -/* 8038F15C 0038ADBC 3B 39 00 01 */ addi r25, r25, 1 -/* 8038F160 0038ADC0 88 01 00 0D */ lbz r0, 0xd(r1) -/* 8038F164 0038ADC4 2C 19 00 04 */ cmpwi r25, 4 -/* 8038F168 0038ADC8 98 77 00 00 */ stb r3, 0(r23) -/* 8038F16C 0038ADCC 3B 18 00 04 */ addi r24, r24, 4 -/* 8038F170 0038ADD0 88 61 00 0E */ lbz r3, 0xe(r1) -/* 8038F174 0038ADD4 98 17 00 01 */ stb r0, 1(r23) -/* 8038F178 0038ADD8 88 01 00 0F */ lbz r0, 0xf(r1) -/* 8038F17C 0038ADDC 98 77 00 02 */ stb r3, 2(r23) -/* 8038F180 0038ADE0 98 17 00 03 */ stb r0, 3(r23) -/* 8038F184 0038ADE4 3A F7 00 04 */ addi r23, r23, 4 -/* 8038F188 0038ADE8 41 80 FF A0 */ blt lbl_8038F128 -lbl_8038F18C: -/* 8038F18C 0038ADEC 7C 7E 00 D0 */ neg r3, r30 -/* 8038F190 0038ADF0 38 01 00 10 */ addi r0, r1, 0x10 -/* 8038F194 0038ADF4 7C 64 F3 78 */ or r4, r3, r30 -/* 8038F198 0038ADF8 7F 85 E3 78 */ mr r5, r28 -/* 8038F19C 0038ADFC 7C 87 FE 70 */ srawi r7, r4, 0x1f -/* 8038F1A0 0038AE00 7F 43 D3 78 */ mr r3, r26 -/* 8038F1A4 0038AE04 7F 64 DB 78 */ mr r4, r27 -/* 8038F1A8 0038AE08 7F A6 EB 78 */ mr r6, r29 -/* 8038F1AC 0038AE0C 7C 07 38 38 */ and r7, r0, r7 -/* 8038F1B0 0038AE10 4B FF F9 C5 */ bl func_8038EB74 -/* 8038F1B4 0038AE14 39 61 00 50 */ addi r11, r1, 0x50 -/* 8038F1B8 0038AE18 4B E3 7F AD */ bl _restgpr_23 -/* 8038F1BC 0038AE1C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 8038F1C0 0038AE20 7C 08 03 A6 */ mtlr r0 -/* 8038F1C4 0038AE24 38 21 00 50 */ addi r1, r1, 0x50 -/* 8038F1C8 0038AE28 4E 80 00 20 */ blr - .global func_8038F1CC func_8038F1CC: /* 8038F1CC 0038AE2C 94 21 FF E0 */ stwu r1, -0x20(r1) @@ -16600,7 +14431,7 @@ func_8039A598: /* 8039A5C0 00396220 93 E3 01 E8 */ stw r31, 0x1e8(r3) /* 8039A5C4 00396224 93 E3 02 00 */ stw r31, 0x200(r3) /* 8039A5C8 00396228 38 63 02 08 */ addi r3, r3, 0x208 -/* 8039A5CC 0039622C 4B FF 30 BD */ bl func_8038D688 +/* 8039A5CC 0039622C 4B FF 30 BD */ bl __ct__Q34nw4r3lyt8DrawInfoFv /* 8039A5D0 00396230 38 00 FF FF */ li r0, -1 /* 8039A5D4 00396234 38 80 00 1E */ li r4, 0x1e /* 8039A5D8 00396238 38 60 00 02 */ li r3, 2 @@ -16818,7 +14649,7 @@ lbl_8039A8D0: /* 8039A8F8 00396558 4B EC F1 81 */ bl OSCancelAlarm /* 8039A8FC 0039655C 38 7E 02 08 */ addi r3, r30, 0x208 /* 8039A900 00396560 38 80 FF FF */ li r4, -1 -/* 8039A904 00396564 4B FF 2D F9 */ bl func_8038D6FC +/* 8039A904 00396564 4B FF 2D F9 */ bl __dt__Q34nw4r3lyt8DrawInfoFv /* 8039A908 00396568 2C 1F 00 00 */ cmpwi r31, 0 /* 8039A90C 0039656C 40 81 00 0C */ ble lbl_8039A918 /* 8039A910 00396570 7F C3 F3 78 */ mr r3, r30 @@ -16857,7 +14688,7 @@ func_8039A934: /* 8039A984 003965E4 2C 03 00 00 */ cmpwi r3, 0 /* 8039A988 003965E8 41 82 00 10 */ beq lbl_8039A998 /* 8039A98C 003965EC 41 82 00 08 */ beq lbl_8039A994 -/* 8039A990 003965F0 4B FF 3B B5 */ bl func_8038E544 +/* 8039A990 003965F0 4B FF 3B B5 */ bl __ct__Q34nw4r3lyt19ArcResourceAccessorFv lbl_8039A994: /* 8039A994 003965F4 90 7F 01 FC */ stw r3, 0x1fc(r31) lbl_8039A998: @@ -16865,7 +14696,7 @@ lbl_8039A998: /* 8039A99C 003965FC 38 AD 95 F8 */ addi r5, r13, lbl_8063E8B8-_SDA_BASE_ /* 8039A9A0 00396600 80 7F 01 FC */ lwz r3, 0x1fc(r31) /* 8039A9A4 00396604 80 84 00 00 */ lwz r4, 0(r4) -/* 8039A9A8 00396608 4B FF 3B F9 */ bl func_8038E5A0 +/* 8039A9A8 00396608 4B FF 3B F9 */ bl Attach__Q34nw4r3lyt19ArcResourceAccessorFPvPCc /* 8039A9AC 0039660C 80 7F 00 04 */ lwz r3, 4(r31) /* 8039A9B0 00396610 80 03 00 20 */ lwz r0, 0x20(r3) /* 8039A9B4 00396614 2C 00 00 00 */ cmpwi r0, 0 @@ -16938,7 +14769,7 @@ lbl_8039AA58: lbl_8039AAA8: /* 8039AAA8 00396708 38 79 00 B4 */ addi r3, r25, 0xb4 /* 8039AAAC 0039670C 38 8D 96 00 */ addi r4, r13, lbl_8063E8C0-_SDA_BASE_ -/* 8039AAB0 00396710 4B E3 39 9D */ bl func_801CE44C +/* 8039AAB0 00396710 4B E3 39 9D */ bl strcmp /* 8039AAB4 00396714 2C 03 00 00 */ cmpwi r3, 0 /* 8039AAB8 00396718 40 82 00 1C */ bne lbl_8039AAD4 /* 8039AABC 0039671C C0 02 A9 30 */ lfs f0, lbl_80642F30-_SDA2_BASE_(r2) @@ -16965,12 +14796,12 @@ lbl_8039AAE0: lbl_8039AB04: /* 8039AB04 00396764 80 9F 00 AC */ lwz r4, 0xac(r31) /* 8039AB08 00396768 38 61 00 48 */ addi r3, r1, 0x48 -/* 8039AB0C 0039676C 4B E3 37 C5 */ bl func_801CE2D0 +/* 8039AB0C 0039676C 4B E3 37 C5 */ bl strcpy /* 8039AB10 00396770 80 1B 00 04 */ lwz r0, 4(r27) /* 8039AB14 00396774 38 61 00 48 */ addi r3, r1, 0x48 /* 8039AB18 00396778 54 00 10 3A */ slwi r0, r0, 2 /* 8039AB1C 0039677C 7C 9D 00 2E */ lwzx r4, r29, r0 -/* 8039AB20 00396780 4B E3 38 B5 */ bl func_801CE3D4 +/* 8039AB20 00396780 4B E3 38 B5 */ bl strcat /* 8039AB24 00396784 80 7F 01 FC */ lwz r3, 0x1fc(r31) /* 8039AB28 00396788 38 A1 00 48 */ addi r5, r1, 0x48 /* 8039AB2C 0039678C 38 80 00 00 */ li r4, 0 @@ -17027,7 +14858,7 @@ lbl_8039ABE4: /* 8039ABE8 00396848 40 82 FF D8 */ bne lbl_8039ABC0 /* 8039ABEC 0039684C 80 7A 02 70 */ lwz r3, 0x270(r26) /* 8039ABF0 00396850 80 63 00 24 */ lwz r3, 0x24(r3) -/* 8039ABF4 00396854 4B FF 2D ED */ bl func_8038D9E0 +/* 8039ABF4 00396854 4B FF 2D ED */ bl GetFrameSize__Q34nw4r3lyt13AnimTransformCFv /* 8039ABF8 00396858 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8039ABFC 0039685C 80 BF 00 04 */ lwz r5, 4(r31) /* 8039AC00 00396860 90 01 00 8C */ stw r0, 0x8c(r1) @@ -17057,12 +14888,12 @@ lbl_8039AC30: lbl_8039AC5C: /* 8039AC5C 003968BC 80 9F 00 AC */ lwz r4, 0xac(r31) /* 8039AC60 003968C0 38 61 00 48 */ addi r3, r1, 0x48 -/* 8039AC64 003968C4 4B E3 36 6D */ bl func_801CE2D0 +/* 8039AC64 003968C4 4B E3 36 6D */ bl strcpy /* 8039AC68 003968C8 80 1B 00 04 */ lwz r0, 4(r27) /* 8039AC6C 003968CC 38 61 00 48 */ addi r3, r1, 0x48 /* 8039AC70 003968D0 54 00 10 3A */ slwi r0, r0, 2 /* 8039AC74 003968D4 7C 9E 00 2E */ lwzx r4, r30, r0 -/* 8039AC78 003968D8 4B E3 37 5D */ bl func_801CE3D4 +/* 8039AC78 003968D8 4B E3 37 5D */ bl strcat /* 8039AC7C 003968DC 80 7F 01 FC */ lwz r3, 0x1fc(r31) /* 8039AC80 003968E0 38 A1 00 48 */ addi r5, r1, 0x48 /* 8039AC84 003968E4 38 80 00 00 */ li r4, 0 @@ -17119,7 +14950,7 @@ lbl_8039AD3C: /* 8039AD40 003969A0 40 82 FF D8 */ bne lbl_8039AD18 /* 8039AD44 003969A4 80 7D 02 A0 */ lwz r3, 0x2a0(r29) /* 8039AD48 003969A8 80 63 00 24 */ lwz r3, 0x24(r3) -/* 8039AD4C 003969AC 4B FF 2C 95 */ bl func_8038D9E0 +/* 8039AD4C 003969AC 4B FF 2C 95 */ bl GetFrameSize__Q34nw4r3lyt13AnimTransformCFv /* 8039AD50 003969B0 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8039AD54 003969B4 80 BF 00 04 */ lwz r5, 4(r31) /* 8039AD58 003969B8 90 01 00 8C */ stw r0, 0x8c(r1) @@ -17145,10 +14976,10 @@ lbl_8039AD3C: lbl_8039ADA8: /* 8039ADA8 00396A08 80 9F 00 AC */ lwz r4, 0xac(r31) /* 8039ADAC 00396A0C 38 61 00 48 */ addi r3, r1, 0x48 -/* 8039ADB0 00396A10 4B E3 35 21 */ bl func_801CE2D0 +/* 8039ADB0 00396A10 4B E3 35 21 */ bl strcpy /* 8039ADB4 00396A14 80 9B 00 00 */ lwz r4, 0(r27) /* 8039ADB8 00396A18 38 61 00 48 */ addi r3, r1, 0x48 -/* 8039ADBC 00396A1C 4B E3 36 19 */ bl func_801CE3D4 +/* 8039ADBC 00396A1C 4B E3 36 19 */ bl strcat /* 8039ADC0 00396A20 80 7F 01 FC */ lwz r3, 0x1fc(r31) /* 8039ADC4 00396A24 38 A1 00 48 */ addi r5, r1, 0x48 /* 8039ADC8 00396A28 38 80 00 00 */ li r4, 0 @@ -17203,7 +15034,7 @@ lbl_8039AE78: /* 8039AE7C 00396ADC 40 82 FF D8 */ bne lbl_8039AE54 /* 8039AE80 00396AE0 80 7D 03 C8 */ lwz r3, 0x3c8(r29) /* 8039AE84 00396AE4 80 63 00 24 */ lwz r3, 0x24(r3) -/* 8039AE88 00396AE8 4B FF 2B 59 */ bl func_8038D9E0 +/* 8039AE88 00396AE8 4B FF 2B 59 */ bl GetFrameSize__Q34nw4r3lyt13AnimTransformCFv /* 8039AE8C 00396AEC 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 8039AE90 00396AF0 80 BF 00 04 */ lwz r5, 4(r31) /* 8039AE94 00396AF4 90 01 00 8C */ stw r0, 0x8c(r1) @@ -17516,7 +15347,7 @@ lbl_8039B2E4: /* 8039B2F0 00396F50 90 7E 00 A8 */ stw r3, 0xa8(r30) /* 8039B2F4 00396F54 7F E4 FB 78 */ mr r4, r31 /* 8039B2F8 00396F58 7F A5 EB 78 */ mr r5, r29 -/* 8039B2FC 00396F5C 4B E3 30 95 */ bl func_801CE390 +/* 8039B2FC 00396F5C 4B E3 30 95 */ bl strncpy /* 8039B300 00396F60 80 9E 00 A8 */ lwz r4, 0xa8(r30) /* 8039B304 00396F64 7C 7D FA 14 */ add r3, r29, r31 /* 8039B308 00396F68 38 00 00 00 */ li r0, 0 @@ -17542,7 +15373,7 @@ lbl_8039B340: /* 8039B34C 00396FAC 90 7E 00 AC */ stw r3, 0xac(r30) /* 8039B350 00396FB0 7F E4 FB 78 */ mr r4, r31 /* 8039B354 00396FB4 7F 85 E3 78 */ mr r5, r28 -/* 8039B358 00396FB8 4B E3 30 39 */ bl func_801CE390 +/* 8039B358 00396FB8 4B E3 30 39 */ bl strncpy /* 8039B35C 00396FBC 80 7E 00 AC */ lwz r3, 0xac(r30) /* 8039B360 00396FC0 38 80 00 00 */ li r4, 0 /* 8039B364 00396FC4 7F C5 F3 78 */ mr r5, r30 @@ -26140,7 +23971,7 @@ func_803A2DC0: lbl_803A2DF0: /* 803A2DF0 0039EA50 80 9F 00 00 */ lwz r4, 0(r31) /* 803A2DF4 0039EA54 7F 63 DB 78 */ mr r3, r27 -/* 803A2DF8 0039EA58 4B E2 B6 55 */ bl func_801CE44C +/* 803A2DF8 0039EA58 4B E2 B6 55 */ bl strcmp /* 803A2DFC 0039EA5C 2C 03 00 00 */ cmpwi r3, 0 /* 803A2E00 0039EA60 40 82 00 0C */ bne lbl_803A2E0C /* 803A2E04 0039EA64 7F 9D E3 78 */ mr r29, r28 @@ -26158,7 +23989,7 @@ lbl_803A2E1C: lbl_803A2E28: /* 803A2E28 0039EA88 80 9F 00 00 */ lwz r4, 0(r31) /* 803A2E2C 0039EA8C 7F 63 DB 78 */ mr r3, r27 -/* 803A2E30 0039EA90 4B E2 B6 1D */ bl func_801CE44C +/* 803A2E30 0039EA90 4B E2 B6 1D */ bl strcmp /* 803A2E34 0039EA94 2C 03 00 00 */ cmpwi r3, 0 /* 803A2E38 0039EA98 40 82 00 0C */ bne lbl_803A2E44 /* 803A2E3C 0039EA9C 7F BC F2 14 */ add r29, r28, r30 diff --git a/asm/text_4.s b/asm/text_4.s index b31c9f3..a3acf66 100644 --- a/asm/text_4.s +++ b/asm/text_4.s @@ -37973,7 +37973,7 @@ lbl_8013AE3C: /* 8013AE40 00136AA0 38 9C D2 10 */ addi r4, r28, lbl_8041D210@l /* 8013AE44 00136AA4 38 BA 00 01 */ addi r5, r26, 1 /* 8013AE48 00136AA8 4C C6 31 82 */ crclr 6 -/* 8013AE4C 00136AAC 48 09 1C B1 */ bl func_801CCAFC +/* 8013AE4C 00136AAC 48 09 1C B1 */ bl sprintf /* 8013AE50 00136AB0 38 7B 38 00 */ addi r3, r27, 0x3800 /* 8013AE54 00136AB4 38 81 00 14 */ addi r4, r1, 0x14 /* 8013AE58 00136AB8 48 1B 1F 91 */ bl func_802ECDE8 @@ -84299,7 +84299,7 @@ lbl_80164154: /* 80164170 0015FDD0 38 66 00 0C */ addi r3, r6, 0xc /* 80164174 0015FDD4 B0 86 00 02 */ sth r4, 2(r6) /* 80164178 0015FDD8 7C A4 2B 78 */ mr r4, r5 -/* 8016417C 0015FDDC 48 06 A1 55 */ bl func_801CE2D0 +/* 8016417C 0015FDDC 48 06 A1 55 */ bl strcpy /* 80164180 0015FDE0 7C 9F F2 14 */ add r4, r31, r30 /* 80164184 0015FDE4 38 60 00 00 */ li r3, 0 /* 80164188 0015FDE8 93 84 00 08 */ stw r28, 8(r4) @@ -86352,7 +86352,7 @@ lbl_80165CA0: /* 80165CA8 00161908 7E F8 1A 14 */ add r23, r24, r3 /* 80165CAC 0016190C 7F 03 C3 78 */ mr r3, r24 /* 80165CB0 00161910 38 80 00 3B */ li r4, 0x3b -/* 80165CB4 00161914 48 06 88 F5 */ bl func_801CE5A8 +/* 80165CB4 00161914 48 06 88 F5 */ bl strchr /* 80165CB8 00161918 2C 03 00 00 */ cmpwi r3, 0 /* 80165CBC 0016191C 7C 7B 1B 78 */ mr r27, r3 /* 80165CC0 00161920 41 82 00 08 */ beq lbl_80165CC8 @@ -86364,7 +86364,7 @@ lbl_80165CC8: /* 80165CD4 00161934 38 77 FF FD */ addi r3, r23, -3 /* 80165CD8 00161938 38 8D 83 38 */ addi r4, r13, lbl_8063D5F8-_SDA_BASE_ /* 80165CDC 0016193C 38 A0 00 03 */ li r5, 3 -/* 80165CE0 00161940 48 06 88 89 */ bl func_801CE568 +/* 80165CE0 00161940 48 06 88 89 */ bl strncmp /* 80165CE4 00161944 2C 03 00 00 */ cmpwi r3, 0 /* 80165CE8 00161948 40 82 00 0C */ bne lbl_80165CF4 /* 80165CEC 0016194C 3B A0 00 01 */ li r29, 1 @@ -86373,7 +86373,7 @@ lbl_80165CF4: /* 80165CF4 00161954 38 77 FF FD */ addi r3, r23, -3 /* 80165CF8 00161958 38 8D 83 3C */ addi r4, r13, lbl_8063D5FC-_SDA_BASE_ /* 80165CFC 0016195C 38 A0 00 03 */ li r5, 3 -/* 80165D00 00161960 48 06 88 69 */ bl func_801CE568 +/* 80165D00 00161960 48 06 88 69 */ bl strncmp /* 80165D04 00161964 7C 60 00 34 */ cntlzw r0, r3 /* 80165D08 00161968 54 00 DF FE */ rlwinm r0, r0, 0x1b, 0x1f, 0x1f /* 80165D0C 0016196C 7C 00 00 D0 */ neg r0, r0 @@ -86383,7 +86383,7 @@ lbl_80165D18: /* 80165D18 00161978 38 7B 00 01 */ addi r3, r27, 1 /* 80165D1C 0016197C 38 8D 83 40 */ addi r4, r13, lbl_8063D600-_SDA_BASE_ /* 80165D20 00161980 38 A0 00 05 */ li r5, 5 -/* 80165D24 00161984 48 06 88 45 */ bl func_801CE568 +/* 80165D24 00161984 48 06 88 45 */ bl strncmp /* 80165D28 00161988 2C 03 00 00 */ cmpwi r3, 0 /* 80165D2C 0016198C 40 82 00 64 */ bne lbl_80165D90 /* 80165D30 00161990 38 DB 00 06 */ addi r6, r27, 6 @@ -86419,7 +86419,7 @@ lbl_80165D88: lbl_80165D90: /* 80165D90 001619F0 38 7B 00 01 */ addi r3, r27, 1 /* 80165D94 001619F4 38 80 00 3B */ li r4, 0x3b -/* 80165D98 001619F8 48 06 88 11 */ bl func_801CE5A8 +/* 80165D98 001619F8 48 06 88 11 */ bl strchr /* 80165D9C 001619FC 7C 7B 1B 78 */ mr r27, r3 lbl_80165DA0: /* 80165DA0 00161A00 2C 1B 00 00 */ cmpwi r27, 0 @@ -88039,7 +88039,7 @@ func_80167278: /* 801672BC 00162F1C 93 A1 00 14 */ stw r29, 0x14(r1) /* 801672C0 00162F20 7C 9D 23 78 */ mr r29, r4 /* 801672C4 00162F24 80 8D 80 10 */ lwz r4, lbl_8063D2D0-_SDA_BASE_(r13) -/* 801672C8 00162F28 48 06 70 09 */ bl func_801CE2D0 +/* 801672C8 00162F28 48 06 70 09 */ bl strcpy /* 801672CC 00162F2C 38 7F C9 28 */ addi r3, r31, -14040 /* 801672D0 00162F30 48 05 F8 95 */ bl strlen /* 801672D4 00162F34 3B FF C9 28 */ addi r31, r31, -14040 @@ -88050,7 +88050,7 @@ func_80167278: /* 801672E8 00162F48 7F C3 F3 78 */ mr r3, r30 /* 801672EC 00162F4C 38 84 F3 90 */ addi r4, r4, lbl_8041F390@l /* 801672F0 00162F50 4C C6 31 82 */ crclr 6 -/* 801672F4 00162F54 48 06 58 09 */ bl func_801CCAFC +/* 801672F4 00162F54 48 06 58 09 */ bl sprintf /* 801672F8 00162F58 7F E3 FB 78 */ mr r3, r31 /* 801672FC 00162F5C 48 05 F8 69 */ bl strlen /* 80167300 00162F60 7F DF 1A 14 */ add r30, r31, r3 @@ -88060,7 +88060,7 @@ func_80167278: /* 80167310 00162F70 7F C3 F3 78 */ mr r3, r30 /* 80167314 00162F74 38 84 F3 9C */ addi r4, r4, lbl_8041F39C@l /* 80167318 00162F78 4C C6 31 82 */ crclr 6 -/* 8016731C 00162F7C 48 06 57 E1 */ bl func_801CCAFC +/* 8016731C 00162F7C 48 06 57 E1 */ bl sprintf /* 80167320 00162F80 7F E3 FB 78 */ mr r3, r31 /* 80167324 00162F84 48 05 F8 41 */ bl strlen /* 80167328 00162F88 38 63 00 01 */ addi r3, r3, 1 @@ -88201,7 +88201,7 @@ lbl_80167528: lbl_80167538: /* 80167538 00163198 80 9F 00 00 */ lwz r4, 0(r31) /* 8016753C 0016319C 7F 83 E3 78 */ mr r3, r28 -/* 80167540 001631A0 48 06 6F 0D */ bl func_801CE44C +/* 80167540 001631A0 48 06 6F 0D */ bl strcmp /* 80167544 001631A4 2C 03 00 00 */ cmpwi r3, 0 /* 80167548 001631A8 40 82 00 40 */ bne lbl_80167588 /* 8016754C 001631AC 1C 1E 00 0C */ mulli r0, r30, 0xc @@ -88251,7 +88251,7 @@ lbl_801675A0: lbl_801675EC: /* 801675EC 0016324C 80 9F 00 00 */ lwz r4, 0(r31) /* 801675F0 00163250 7F 63 DB 78 */ mr r3, r27 -/* 801675F4 00163254 48 06 6E 59 */ bl func_801CE44C +/* 801675F4 00163254 48 06 6E 59 */ bl strcmp /* 801675F8 00163258 2C 03 00 00 */ cmpwi r3, 0 /* 801675FC 0016325C 40 82 00 44 */ bne lbl_80167640 /* 80167600 00163260 1C 1E 00 0C */ mulli r0, r30, 0xc @@ -88301,12 +88301,12 @@ lbl_8016769C: /* 8016769C 001632FC 83 DF 00 00 */ lwz r30, 0(r31) /* 801676A0 00163300 7F 63 DB 78 */ mr r3, r27 /* 801676A4 00163304 7F C4 F3 78 */ mr r4, r30 -/* 801676A8 00163308 48 06 6D A5 */ bl func_801CE44C +/* 801676A8 00163308 48 06 6D A5 */ bl strcmp /* 801676AC 0016330C 2C 03 00 00 */ cmpwi r3, 0 /* 801676B0 00163310 41 82 00 18 */ beq lbl_801676C8 /* 801676B4 00163314 7F C4 F3 78 */ mr r4, r30 /* 801676B8 00163318 38 6D 83 58 */ addi r3, r13, lbl_8063D618-_SDA_BASE_ -/* 801676BC 0016331C 48 06 6D 91 */ bl func_801CE44C +/* 801676BC 0016331C 48 06 6D 91 */ bl strcmp /* 801676C0 00163320 2C 03 00 00 */ cmpwi r3, 0 /* 801676C4 00163324 40 82 00 40 */ bne lbl_80167704 lbl_801676C8: @@ -88357,12 +88357,12 @@ lbl_80167764: /* 80167764 001633C4 83 DF 00 00 */ lwz r30, 0(r31) /* 80167768 001633C8 7F 43 D3 78 */ mr r3, r26 /* 8016776C 001633CC 7F C4 F3 78 */ mr r4, r30 -/* 80167770 001633D0 48 06 6C DD */ bl func_801CE44C +/* 80167770 001633D0 48 06 6C DD */ bl strcmp /* 80167774 001633D4 2C 03 00 00 */ cmpwi r3, 0 /* 80167778 001633D8 41 82 00 18 */ beq lbl_80167790 /* 8016777C 001633DC 7F C4 F3 78 */ mr r4, r30 /* 80167780 001633E0 38 6D 83 58 */ addi r3, r13, lbl_8063D618-_SDA_BASE_ -/* 80167784 001633E4 48 06 6C C9 */ bl func_801CE44C +/* 80167784 001633E4 48 06 6C C9 */ bl strcmp /* 80167788 001633E8 2C 03 00 00 */ cmpwi r3, 0 /* 8016778C 001633EC 40 82 00 44 */ bne lbl_801677D0 lbl_80167790: @@ -97214,11 +97214,11 @@ lbl_8016F010: /* 8016F01C 0016AC7C 41 82 00 10 */ beq lbl_8016F02C /* 8016F020 0016AC80 7C A4 2B 78 */ mr r4, r5 /* 8016F024 0016AC84 38 61 00 10 */ addi r3, r1, 0x10 -/* 8016F028 0016AC88 48 05 F2 A9 */ bl func_801CE2D0 +/* 8016F028 0016AC88 48 05 F2 A9 */ bl strcpy lbl_8016F02C: /* 8016F02C 0016AC8C 7F E4 FB 78 */ mr r4, r31 /* 8016F030 0016AC90 38 61 00 10 */ addi r3, r1, 0x10 -/* 8016F034 0016AC94 48 05 F3 A1 */ bl func_801CE3D4 +/* 8016F034 0016AC94 48 05 F3 A1 */ bl strcat /* 8016F038 0016AC98 38 61 00 10 */ addi r3, r1, 0x10 /* 8016F03C 0016AC9C 38 81 00 08 */ addi r4, r1, 8 /* 8016F040 0016ACA0 48 06 DB 81 */ bl func_801DCBC0 diff --git a/asm/text_6.s b/asm/text_6.s index 56acd5f..d48c8eb 100644 --- a/asm/text_6.s +++ b/asm/text_6.s @@ -2,4766 +2,6 @@ .section .text, "ax" # 0x80006980 - 0x803E1E60 -.global func_801CA7B0 -func_801CA7B0: -/* 801CA7B0 001C6410 3C 60 80 1C */ lis r3, func_801C7894@ha -/* 801CA7B4 001C6414 38 63 78 94 */ addi r3, r3, func_801C7894@l -/* 801CA7B8 001C6418 90 6D 9F D8 */ stw r3, lbl_8063F298-_SDA_BASE_(r13) -/* 801CA7BC 001C641C 4E 80 00 20 */ blr - -.global func_801CA7C0 -func_801CA7C0: -/* 801CA7C0 001C6420 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801CA7C4 001C6424 7C 08 02 A6 */ mflr r0 -/* 801CA7C8 001C6428 38 E0 00 00 */ li r7, 0 -/* 801CA7CC 001C642C 88 C3 00 01 */ lbz r6, 1(r3) -/* 801CA7D0 001C6430 90 01 00 34 */ stw r0, 0x34(r1) -/* 801CA7D4 001C6434 39 00 00 01 */ li r8, 1 -/* 801CA7D8 001C6438 7C C6 07 74 */ extsb r6, r6 -/* 801CA7DC 001C643C 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 801CA7E0 001C6440 2C 06 00 25 */ cmpwi r6, 0x25 -/* 801CA7E4 001C6444 3B E3 00 01 */ addi r31, r3, 1 -/* 801CA7E8 001C6448 93 C1 00 28 */ stw r30, 0x28(r1) -/* 801CA7EC 001C644C 7C BE 2B 78 */ mr r30, r5 -/* 801CA7F0 001C6450 93 A1 00 24 */ stw r29, 0x24(r1) -/* 801CA7F4 001C6454 7C 9D 23 78 */ mr r29, r4 -/* 801CA7F8 001C6458 98 E1 00 09 */ stb r7, 9(r1) -/* 801CA7FC 001C645C 99 01 00 08 */ stb r8, 8(r1) -/* 801CA800 001C6460 98 E1 00 0A */ stb r7, 0xa(r1) -/* 801CA804 001C6464 98 E1 00 0B */ stb r7, 0xb(r1) -/* 801CA808 001C6468 98 E1 00 0C */ stb r7, 0xc(r1) -/* 801CA80C 001C646C 90 E1 00 10 */ stw r7, 0x10(r1) -/* 801CA810 001C6470 90 E1 00 14 */ stw r7, 0x14(r1) -/* 801CA814 001C6474 40 82 00 28 */ bne lbl_801CA83C -/* 801CA818 001C6478 98 C1 00 0D */ stb r6, 0xd(r1) -/* 801CA81C 001C647C 38 7F 00 01 */ addi r3, r31, 1 -/* 801CA820 001C6480 80 81 00 08 */ lwz r4, 8(r1) -/* 801CA824 001C6484 80 01 00 0C */ lwz r0, 0xc(r1) -/* 801CA828 001C6488 90 85 00 00 */ stw r4, 0(r5) -/* 801CA82C 001C648C 90 05 00 04 */ stw r0, 4(r5) -/* 801CA830 001C6490 90 E5 00 08 */ stw r7, 8(r5) -/* 801CA834 001C6494 90 E5 00 0C */ stw r7, 0xc(r5) -/* 801CA838 001C6498 48 00 05 68 */ b lbl_801CADA0 -lbl_801CA83C: -/* 801CA83C 001C649C 3C 80 80 42 */ lis r4, 0x8042 -/* 801CA840 001C64A0 38 00 00 02 */ li r0, 2 -lbl_801CA844: -/* 801CA844 001C64A4 38 A6 FF E0 */ addi r5, r6, -32 -/* 801CA848 001C64A8 39 20 00 01 */ li r9, 1 -/* 801CA84C 001C64AC 28 05 00 10 */ cmplwi r5, 0x10 -/* 801CA850 001C64B0 41 81 00 58 */ bgt lbl_801CA8A8 -/* 801CA854 001C64B4 38 64 2E 70 */ addi r3, r4, 0x2e70 -/* 801CA858 001C64B8 54 A5 10 3A */ slwi r5, r5, 2 -/* 801CA85C 001C64BC 7C 63 28 2E */ lwzx r3, r3, r5 -/* 801CA860 001C64C0 7C 69 03 A6 */ mtctr r3 -/* 801CA864 001C64C4 4E 80 04 20 */ bctr -/* 801CA868 001C64C8 98 E1 00 08 */ stb r7, 8(r1) -/* 801CA86C 001C64CC 48 00 00 40 */ b lbl_801CA8AC -/* 801CA870 001C64D0 99 01 00 09 */ stb r8, 9(r1) -/* 801CA874 001C64D4 48 00 00 38 */ b lbl_801CA8AC -/* 801CA878 001C64D8 88 61 00 09 */ lbz r3, 9(r1) -/* 801CA87C 001C64DC 28 03 00 01 */ cmplwi r3, 1 -/* 801CA880 001C64E0 41 82 00 2C */ beq lbl_801CA8AC -/* 801CA884 001C64E4 98 01 00 09 */ stb r0, 9(r1) -/* 801CA888 001C64E8 48 00 00 24 */ b lbl_801CA8AC -/* 801CA88C 001C64EC 99 01 00 0B */ stb r8, 0xb(r1) -/* 801CA890 001C64F0 48 00 00 1C */ b lbl_801CA8AC -/* 801CA894 001C64F4 88 61 00 08 */ lbz r3, 8(r1) -/* 801CA898 001C64F8 2C 03 00 00 */ cmpwi r3, 0 -/* 801CA89C 001C64FC 41 82 00 10 */ beq lbl_801CA8AC -/* 801CA8A0 001C6500 98 01 00 08 */ stb r0, 8(r1) -/* 801CA8A4 001C6504 48 00 00 08 */ b lbl_801CA8AC -lbl_801CA8A8: -/* 801CA8A8 001C6508 39 20 00 00 */ li r9, 0 -lbl_801CA8AC: -/* 801CA8AC 001C650C 2C 09 00 00 */ cmpwi r9, 0 -/* 801CA8B0 001C6510 41 82 00 10 */ beq lbl_801CA8C0 -/* 801CA8B4 001C6514 8C DF 00 01 */ lbzu r6, 1(r31) -/* 801CA8B8 001C6518 7C C6 07 74 */ extsb r6, r6 -/* 801CA8BC 001C651C 4B FF FF 88 */ b lbl_801CA844 -lbl_801CA8C0: -/* 801CA8C0 001C6520 2C 06 00 2A */ cmpwi r6, 0x2a -/* 801CA8C4 001C6524 40 82 00 3C */ bne lbl_801CA900 -/* 801CA8C8 001C6528 7F A3 EB 78 */ mr r3, r29 -/* 801CA8CC 001C652C 38 80 00 01 */ li r4, 1 -/* 801CA8D0 001C6530 4B FF C2 B1 */ bl __va_arg -/* 801CA8D4 001C6534 80 03 00 00 */ lwz r0, 0(r3) -/* 801CA8D8 001C6538 2C 00 00 00 */ cmpwi r0, 0 -/* 801CA8DC 001C653C 90 01 00 10 */ stw r0, 0x10(r1) -/* 801CA8E0 001C6540 40 80 00 14 */ bge lbl_801CA8F4 -/* 801CA8E4 001C6544 7C 00 00 D0 */ neg r0, r0 -/* 801CA8E8 001C6548 38 60 00 00 */ li r3, 0 -/* 801CA8EC 001C654C 98 61 00 08 */ stb r3, 8(r1) -/* 801CA8F0 001C6550 90 01 00 10 */ stw r0, 0x10(r1) -lbl_801CA8F4: -/* 801CA8F4 001C6554 8C DF 00 01 */ lbzu r6, 1(r31) -/* 801CA8F8 001C6558 7C C6 07 74 */ extsb r6, r6 -/* 801CA8FC 001C655C 48 00 00 70 */ b lbl_801CA96C -lbl_801CA900: -/* 801CA900 001C6560 3C 60 80 42 */ lis r3, lbl_80422D48@ha -/* 801CA904 001C6564 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l -/* 801CA908 001C6568 80 83 00 38 */ lwz r4, 0x38(r3) -/* 801CA90C 001C656C 48 00 00 20 */ b lbl_801CA92C -lbl_801CA910: -/* 801CA910 001C6570 80 01 00 10 */ lwz r0, 0x10(r1) -/* 801CA914 001C6574 1C 00 00 0A */ mulli r0, r0, 0xa -/* 801CA918 001C6578 7C 66 02 14 */ add r3, r6, r0 -/* 801CA91C 001C657C 8C DF 00 01 */ lbzu r6, 1(r31) -/* 801CA920 001C6580 38 03 FF D0 */ addi r0, r3, -48 -/* 801CA924 001C6584 90 01 00 10 */ stw r0, 0x10(r1) -/* 801CA928 001C6588 7C C6 07 74 */ extsb r6, r6 -lbl_801CA92C: -/* 801CA92C 001C658C 2C 06 00 00 */ cmpwi r6, 0 -/* 801CA930 001C6590 38 00 00 00 */ li r0, 0 -/* 801CA934 001C6594 41 80 00 0C */ blt lbl_801CA940 -/* 801CA938 001C6598 2C 06 01 00 */ cmpwi r6, 0x100 -/* 801CA93C 001C659C 41 80 00 08 */ blt lbl_801CA944 -lbl_801CA940: -/* 801CA940 001C65A0 38 00 00 01 */ li r0, 1 -lbl_801CA944: -/* 801CA944 001C65A4 2C 00 00 00 */ cmpwi r0, 0 -/* 801CA948 001C65A8 41 82 00 0C */ beq lbl_801CA954 -/* 801CA94C 001C65AC 38 00 00 00 */ li r0, 0 -/* 801CA950 001C65B0 48 00 00 14 */ b lbl_801CA964 -lbl_801CA954: -/* 801CA954 001C65B4 80 64 00 08 */ lwz r3, 8(r4) -/* 801CA958 001C65B8 54 C0 08 3C */ slwi r0, r6, 1 -/* 801CA95C 001C65BC 7C 03 02 2E */ lhzx r0, r3, r0 -/* 801CA960 001C65C0 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c -lbl_801CA964: -/* 801CA964 001C65C4 2C 00 00 00 */ cmpwi r0, 0 -/* 801CA968 001C65C8 40 82 FF A8 */ bne lbl_801CA910 -lbl_801CA96C: -/* 801CA96C 001C65CC 80 E1 00 10 */ lwz r7, 0x10(r1) -/* 801CA970 001C65D0 2C 07 01 FD */ cmpwi r7, 0x1fd -/* 801CA974 001C65D4 40 81 00 30 */ ble lbl_801CA9A4 -/* 801CA978 001C65D8 38 00 00 FF */ li r0, 0xff -/* 801CA97C 001C65DC 80 A1 00 08 */ lwz r5, 8(r1) -/* 801CA980 001C65E0 98 01 00 0D */ stb r0, 0xd(r1) -/* 801CA984 001C65E4 38 7F 00 01 */ addi r3, r31, 1 -/* 801CA988 001C65E8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801CA98C 001C65EC 80 81 00 0C */ lwz r4, 0xc(r1) -/* 801CA990 001C65F0 90 BE 00 00 */ stw r5, 0(r30) -/* 801CA994 001C65F4 90 9E 00 04 */ stw r4, 4(r30) -/* 801CA998 001C65F8 90 FE 00 08 */ stw r7, 8(r30) -/* 801CA99C 001C65FC 90 1E 00 0C */ stw r0, 0xc(r30) -/* 801CA9A0 001C6600 48 00 04 00 */ b lbl_801CADA0 -lbl_801CA9A4: -/* 801CA9A4 001C6604 2C 06 00 2E */ cmpwi r6, 0x2e -/* 801CA9A8 001C6608 40 82 00 B8 */ bne lbl_801CAA60 -/* 801CA9AC 001C660C 8C DF 00 01 */ lbzu r6, 1(r31) -/* 801CA9B0 001C6610 38 00 00 01 */ li r0, 1 -/* 801CA9B4 001C6614 98 01 00 0A */ stb r0, 0xa(r1) -/* 801CA9B8 001C6618 7C C6 07 74 */ extsb r6, r6 -/* 801CA9BC 001C661C 2C 06 00 2A */ cmpwi r6, 0x2a -/* 801CA9C0 001C6620 40 82 00 34 */ bne lbl_801CA9F4 -/* 801CA9C4 001C6624 7F A3 EB 78 */ mr r3, r29 -/* 801CA9C8 001C6628 38 80 00 01 */ li r4, 1 -/* 801CA9CC 001C662C 4B FF C1 B5 */ bl __va_arg -/* 801CA9D0 001C6630 80 03 00 00 */ lwz r0, 0(r3) -/* 801CA9D4 001C6634 2C 00 00 00 */ cmpwi r0, 0 -/* 801CA9D8 001C6638 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CA9DC 001C663C 40 80 00 0C */ bge lbl_801CA9E8 -/* 801CA9E0 001C6640 38 00 00 00 */ li r0, 0 -/* 801CA9E4 001C6644 98 01 00 0A */ stb r0, 0xa(r1) -lbl_801CA9E8: -/* 801CA9E8 001C6648 8C DF 00 01 */ lbzu r6, 1(r31) -/* 801CA9EC 001C664C 7C C6 07 74 */ extsb r6, r6 -/* 801CA9F0 001C6650 48 00 00 70 */ b lbl_801CAA60 -lbl_801CA9F4: -/* 801CA9F4 001C6654 3C 60 80 42 */ lis r3, lbl_80422D48@ha -/* 801CA9F8 001C6658 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l -/* 801CA9FC 001C665C 80 83 00 38 */ lwz r4, 0x38(r3) -/* 801CAA00 001C6660 48 00 00 20 */ b lbl_801CAA20 -lbl_801CAA04: -/* 801CAA04 001C6664 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801CAA08 001C6668 1C 00 00 0A */ mulli r0, r0, 0xa -/* 801CAA0C 001C666C 7C 66 02 14 */ add r3, r6, r0 -/* 801CAA10 001C6670 8C DF 00 01 */ lbzu r6, 1(r31) -/* 801CAA14 001C6674 38 03 FF D0 */ addi r0, r3, -48 -/* 801CAA18 001C6678 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CAA1C 001C667C 7C C6 07 74 */ extsb r6, r6 -lbl_801CAA20: -/* 801CAA20 001C6680 2C 06 00 00 */ cmpwi r6, 0 -/* 801CAA24 001C6684 38 00 00 00 */ li r0, 0 -/* 801CAA28 001C6688 41 80 00 0C */ blt lbl_801CAA34 -/* 801CAA2C 001C668C 2C 06 01 00 */ cmpwi r6, 0x100 -/* 801CAA30 001C6690 41 80 00 08 */ blt lbl_801CAA38 -lbl_801CAA34: -/* 801CAA34 001C6694 38 00 00 01 */ li r0, 1 -lbl_801CAA38: -/* 801CAA38 001C6698 2C 00 00 00 */ cmpwi r0, 0 -/* 801CAA3C 001C669C 41 82 00 0C */ beq lbl_801CAA48 -/* 801CAA40 001C66A0 38 00 00 00 */ li r0, 0 -/* 801CAA44 001C66A4 48 00 00 14 */ b lbl_801CAA58 -lbl_801CAA48: -/* 801CAA48 001C66A8 80 64 00 08 */ lwz r3, 8(r4) -/* 801CAA4C 001C66AC 54 C0 08 3C */ slwi r0, r6, 1 -/* 801CAA50 001C66B0 7C 03 02 2E */ lhzx r0, r3, r0 -/* 801CAA54 001C66B4 54 00 07 38 */ rlwinm r0, r0, 0, 0x1c, 0x1c -lbl_801CAA58: -/* 801CAA58 001C66B8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CAA5C 001C66BC 40 82 FF A8 */ bne lbl_801CAA04 -lbl_801CAA60: -/* 801CAA60 001C66C0 2C 06 00 6B */ cmpwi r6, 0x6b -/* 801CAA64 001C66C4 38 80 00 01 */ li r4, 1 -/* 801CAA68 001C66C8 41 82 00 D8 */ beq lbl_801CAB40 -/* 801CAA6C 001C66CC 40 80 00 28 */ bge lbl_801CAA94 -/* 801CAA70 001C66D0 2C 06 00 68 */ cmpwi r6, 0x68 -/* 801CAA74 001C66D4 41 82 00 44 */ beq lbl_801CAAB8 -/* 801CAA78 001C66D8 40 80 00 10 */ bge lbl_801CAA88 -/* 801CAA7C 001C66DC 2C 06 00 4C */ cmpwi r6, 0x4c -/* 801CAA80 001C66E0 41 82 00 90 */ beq lbl_801CAB10 -/* 801CAA84 001C66E4 48 00 00 BC */ b lbl_801CAB40 -lbl_801CAA88: -/* 801CAA88 001C66E8 2C 06 00 6A */ cmpwi r6, 0x6a -/* 801CAA8C 001C66EC 40 80 00 90 */ bge lbl_801CAB1C -/* 801CAA90 001C66F0 48 00 00 B0 */ b lbl_801CAB40 -lbl_801CAA94: -/* 801CAA94 001C66F4 2C 06 00 74 */ cmpwi r6, 0x74 -/* 801CAA98 001C66F8 41 82 00 90 */ beq lbl_801CAB28 -/* 801CAA9C 001C66FC 40 80 00 10 */ bge lbl_801CAAAC -/* 801CAAA0 001C6700 2C 06 00 6D */ cmpwi r6, 0x6d -/* 801CAAA4 001C6704 40 80 00 9C */ bge lbl_801CAB40 -/* 801CAAA8 001C6708 48 00 00 3C */ b lbl_801CAAE4 -lbl_801CAAAC: -/* 801CAAAC 001C670C 2C 06 00 7A */ cmpwi r6, 0x7a -/* 801CAAB0 001C6710 41 82 00 84 */ beq lbl_801CAB34 -/* 801CAAB4 001C6714 48 00 00 8C */ b lbl_801CAB40 -lbl_801CAAB8: -/* 801CAAB8 001C6718 88 1F 00 01 */ lbz r0, 1(r31) -/* 801CAABC 001C671C 38 60 00 02 */ li r3, 2 -/* 801CAAC0 001C6720 98 61 00 0C */ stb r3, 0xc(r1) -/* 801CAAC4 001C6724 7C 03 07 74 */ extsb r3, r0 -/* 801CAAC8 001C6728 2C 03 00 68 */ cmpwi r3, 0x68 -/* 801CAACC 001C672C 40 82 00 78 */ bne lbl_801CAB44 -/* 801CAAD0 001C6730 38 00 00 01 */ li r0, 1 -/* 801CAAD4 001C6734 7C 66 1B 78 */ mr r6, r3 -/* 801CAAD8 001C6738 98 01 00 0C */ stb r0, 0xc(r1) -/* 801CAADC 001C673C 3B FF 00 01 */ addi r31, r31, 1 -/* 801CAAE0 001C6740 48 00 00 64 */ b lbl_801CAB44 -lbl_801CAAE4: -/* 801CAAE4 001C6744 88 1F 00 01 */ lbz r0, 1(r31) -/* 801CAAE8 001C6748 38 60 00 03 */ li r3, 3 -/* 801CAAEC 001C674C 98 61 00 0C */ stb r3, 0xc(r1) -/* 801CAAF0 001C6750 7C 03 07 74 */ extsb r3, r0 -/* 801CAAF4 001C6754 2C 03 00 6C */ cmpwi r3, 0x6c -/* 801CAAF8 001C6758 40 82 00 4C */ bne lbl_801CAB44 -/* 801CAAFC 001C675C 38 00 00 04 */ li r0, 4 -/* 801CAB00 001C6760 7C 66 1B 78 */ mr r6, r3 -/* 801CAB04 001C6764 98 01 00 0C */ stb r0, 0xc(r1) -/* 801CAB08 001C6768 3B FF 00 01 */ addi r31, r31, 1 -/* 801CAB0C 001C676C 48 00 00 38 */ b lbl_801CAB44 -lbl_801CAB10: -/* 801CAB10 001C6770 38 00 00 09 */ li r0, 9 -/* 801CAB14 001C6774 98 01 00 0C */ stb r0, 0xc(r1) -/* 801CAB18 001C6778 48 00 00 2C */ b lbl_801CAB44 -lbl_801CAB1C: -/* 801CAB1C 001C677C 38 00 00 06 */ li r0, 6 -/* 801CAB20 001C6780 98 01 00 0C */ stb r0, 0xc(r1) -/* 801CAB24 001C6784 48 00 00 20 */ b lbl_801CAB44 -lbl_801CAB28: -/* 801CAB28 001C6788 38 00 00 08 */ li r0, 8 -/* 801CAB2C 001C678C 98 01 00 0C */ stb r0, 0xc(r1) -/* 801CAB30 001C6790 48 00 00 14 */ b lbl_801CAB44 -lbl_801CAB34: -/* 801CAB34 001C6794 38 00 00 07 */ li r0, 7 -/* 801CAB38 001C6798 98 01 00 0C */ stb r0, 0xc(r1) -/* 801CAB3C 001C679C 48 00 00 08 */ b lbl_801CAB44 -lbl_801CAB40: -/* 801CAB40 001C67A0 38 80 00 00 */ li r4, 0 -lbl_801CAB44: -/* 801CAB44 001C67A4 2C 04 00 00 */ cmpwi r4, 0 -/* 801CAB48 001C67A8 41 82 00 0C */ beq lbl_801CAB54 -/* 801CAB4C 001C67AC 8C DF 00 01 */ lbzu r6, 1(r31) -/* 801CAB50 001C67B0 7C C6 07 74 */ extsb r6, r6 -lbl_801CAB54: -/* 801CAB54 001C67B4 38 06 FF BF */ addi r0, r6, -65 -/* 801CAB58 001C67B8 98 C1 00 0D */ stb r6, 0xd(r1) -/* 801CAB5C 001C67BC 28 00 00 37 */ cmplwi r0, 0x37 -/* 801CAB60 001C67C0 41 81 02 14 */ bgt lbl_801CAD74 -/* 801CAB64 001C67C4 3C 60 80 42 */ lis r3, lbl_80422D90@ha -/* 801CAB68 001C67C8 54 00 10 3A */ slwi r0, r0, 2 -/* 801CAB6C 001C67CC 38 63 2D 90 */ addi r3, r3, lbl_80422D90@l -/* 801CAB70 001C67D0 7C 63 00 2E */ lwzx r3, r3, r0 -/* 801CAB74 001C67D4 7C 69 03 A6 */ mtctr r3 -/* 801CAB78 001C67D8 4E 80 04 20 */ bctr -/* 801CAB7C 001C67DC 88 01 00 0C */ lbz r0, 0xc(r1) -/* 801CAB80 001C67E0 28 00 00 09 */ cmplwi r0, 9 -/* 801CAB84 001C67E4 40 82 00 10 */ bne lbl_801CAB94 -/* 801CAB88 001C67E8 38 00 00 FF */ li r0, 0xff -/* 801CAB8C 001C67EC 98 01 00 0D */ stb r0, 0xd(r1) -/* 801CAB90 001C67F0 48 00 01 EC */ b lbl_801CAD7C -lbl_801CAB94: -/* 801CAB94 001C67F4 88 01 00 0A */ lbz r0, 0xa(r1) -/* 801CAB98 001C67F8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CAB9C 001C67FC 40 82 00 10 */ bne lbl_801CABAC -/* 801CABA0 001C6800 38 00 00 01 */ li r0, 1 -/* 801CABA4 001C6804 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CABA8 001C6808 48 00 01 D4 */ b lbl_801CAD7C -lbl_801CABAC: -/* 801CABAC 001C680C 88 01 00 08 */ lbz r0, 8(r1) -/* 801CABB0 001C6810 28 00 00 02 */ cmplwi r0, 2 -/* 801CABB4 001C6814 40 82 01 C8 */ bne lbl_801CAD7C -/* 801CABB8 001C6818 38 00 00 01 */ li r0, 1 -/* 801CABBC 001C681C 98 01 00 08 */ stb r0, 8(r1) -/* 801CABC0 001C6820 48 00 01 BC */ b lbl_801CAD7C -/* 801CABC4 001C6824 88 01 00 0C */ lbz r0, 0xc(r1) -/* 801CABC8 001C6828 28 00 00 02 */ cmplwi r0, 2 -/* 801CABCC 001C682C 41 82 00 24 */ beq lbl_801CABF0 -/* 801CABD0 001C6830 28 00 00 06 */ cmplwi r0, 6 -/* 801CABD4 001C6834 41 82 00 1C */ beq lbl_801CABF0 -/* 801CABD8 001C6838 28 00 00 07 */ cmplwi r0, 7 -/* 801CABDC 001C683C 41 82 00 14 */ beq lbl_801CABF0 -/* 801CABE0 001C6840 28 00 00 08 */ cmplwi r0, 8 -/* 801CABE4 001C6844 41 82 00 0C */ beq lbl_801CABF0 -/* 801CABE8 001C6848 28 00 00 04 */ cmplwi r0, 4 -/* 801CABEC 001C684C 40 82 00 10 */ bne lbl_801CABFC -lbl_801CABF0: -/* 801CABF0 001C6850 38 00 00 FF */ li r0, 0xff -/* 801CABF4 001C6854 98 01 00 0D */ stb r0, 0xd(r1) -/* 801CABF8 001C6858 48 00 01 84 */ b lbl_801CAD7C -lbl_801CABFC: -/* 801CABFC 001C685C 88 01 00 0A */ lbz r0, 0xa(r1) -/* 801CAC00 001C6860 2C 00 00 00 */ cmpwi r0, 0 -/* 801CAC04 001C6864 40 82 01 78 */ bne lbl_801CAD7C -/* 801CAC08 001C6868 38 00 00 06 */ li r0, 6 -/* 801CAC0C 001C686C 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CAC10 001C6870 48 00 01 6C */ b lbl_801CAD7C -/* 801CAC14 001C6874 88 01 00 0A */ lbz r0, 0xa(r1) -/* 801CAC18 001C6878 2C 00 00 00 */ cmpwi r0, 0 -/* 801CAC1C 001C687C 40 82 00 0C */ bne lbl_801CAC28 -/* 801CAC20 001C6880 38 00 00 0D */ li r0, 0xd -/* 801CAC24 001C6884 90 01 00 14 */ stw r0, 0x14(r1) -lbl_801CAC28: -/* 801CAC28 001C6888 88 01 00 0C */ lbz r0, 0xc(r1) -/* 801CAC2C 001C688C 28 00 00 02 */ cmplwi r0, 2 -/* 801CAC30 001C6890 41 82 00 2C */ beq lbl_801CAC5C -/* 801CAC34 001C6894 28 00 00 06 */ cmplwi r0, 6 -/* 801CAC38 001C6898 41 82 00 24 */ beq lbl_801CAC5C -/* 801CAC3C 001C689C 28 00 00 07 */ cmplwi r0, 7 -/* 801CAC40 001C68A0 41 82 00 1C */ beq lbl_801CAC5C -/* 801CAC44 001C68A4 28 00 00 08 */ cmplwi r0, 8 -/* 801CAC48 001C68A8 41 82 00 14 */ beq lbl_801CAC5C -/* 801CAC4C 001C68AC 28 00 00 04 */ cmplwi r0, 4 -/* 801CAC50 001C68B0 41 82 00 0C */ beq lbl_801CAC5C -/* 801CAC54 001C68B4 28 00 00 01 */ cmplwi r0, 1 -/* 801CAC58 001C68B8 40 82 01 24 */ bne lbl_801CAD7C -lbl_801CAC5C: -/* 801CAC5C 001C68BC 38 00 00 FF */ li r0, 0xff -/* 801CAC60 001C68C0 98 01 00 0D */ stb r0, 0xd(r1) -/* 801CAC64 001C68C4 48 00 01 18 */ b lbl_801CAD7C -/* 801CAC68 001C68C8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801CAC6C 001C68CC 2C 00 00 00 */ cmpwi r0, 0 -/* 801CAC70 001C68D0 40 82 00 0C */ bne lbl_801CAC7C -/* 801CAC74 001C68D4 38 00 00 01 */ li r0, 1 -/* 801CAC78 001C68D8 90 01 00 14 */ stw r0, 0x14(r1) -lbl_801CAC7C: -/* 801CAC7C 001C68DC 88 01 00 0C */ lbz r0, 0xc(r1) -/* 801CAC80 001C68E0 28 00 00 02 */ cmplwi r0, 2 -/* 801CAC84 001C68E4 41 82 00 2C */ beq lbl_801CACB0 -/* 801CAC88 001C68E8 28 00 00 06 */ cmplwi r0, 6 -/* 801CAC8C 001C68EC 41 82 00 24 */ beq lbl_801CACB0 -/* 801CAC90 001C68F0 28 00 00 07 */ cmplwi r0, 7 -/* 801CAC94 001C68F4 41 82 00 1C */ beq lbl_801CACB0 -/* 801CAC98 001C68F8 28 00 00 08 */ cmplwi r0, 8 -/* 801CAC9C 001C68FC 41 82 00 14 */ beq lbl_801CACB0 -/* 801CACA0 001C6900 28 00 00 04 */ cmplwi r0, 4 -/* 801CACA4 001C6904 41 82 00 0C */ beq lbl_801CACB0 -/* 801CACA8 001C6908 28 00 00 01 */ cmplwi r0, 1 -/* 801CACAC 001C690C 40 82 00 10 */ bne lbl_801CACBC -lbl_801CACB0: -/* 801CACB0 001C6910 38 00 00 FF */ li r0, 0xff -/* 801CACB4 001C6914 98 01 00 0D */ stb r0, 0xd(r1) -/* 801CACB8 001C6918 48 00 00 C4 */ b lbl_801CAD7C -lbl_801CACBC: -/* 801CACBC 001C691C 88 01 00 0A */ lbz r0, 0xa(r1) -/* 801CACC0 001C6920 2C 00 00 00 */ cmpwi r0, 0 -/* 801CACC4 001C6924 40 82 00 B8 */ bne lbl_801CAD7C -/* 801CACC8 001C6928 38 00 00 06 */ li r0, 6 -/* 801CACCC 001C692C 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CACD0 001C6930 48 00 00 AC */ b lbl_801CAD7C -/* 801CACD4 001C6934 38 A0 00 78 */ li r5, 0x78 -/* 801CACD8 001C6938 38 80 00 01 */ li r4, 1 -/* 801CACDC 001C693C 38 60 00 03 */ li r3, 3 -/* 801CACE0 001C6940 38 00 00 08 */ li r0, 8 -/* 801CACE4 001C6944 98 A1 00 0D */ stb r5, 0xd(r1) -/* 801CACE8 001C6948 98 81 00 0B */ stb r4, 0xb(r1) -/* 801CACEC 001C694C 98 61 00 0C */ stb r3, 0xc(r1) -/* 801CACF0 001C6950 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CACF4 001C6954 48 00 00 88 */ b lbl_801CAD7C -/* 801CACF8 001C6958 88 61 00 0C */ lbz r3, 0xc(r1) -/* 801CACFC 001C695C 28 03 00 03 */ cmplwi r3, 3 -/* 801CAD00 001C6960 40 82 00 10 */ bne lbl_801CAD10 -/* 801CAD04 001C6964 38 00 00 05 */ li r0, 5 -/* 801CAD08 001C6968 98 01 00 0C */ stb r0, 0xc(r1) -/* 801CAD0C 001C696C 48 00 00 70 */ b lbl_801CAD7C -lbl_801CAD10: -/* 801CAD10 001C6970 88 01 00 0A */ lbz r0, 0xa(r1) -/* 801CAD14 001C6974 2C 00 00 00 */ cmpwi r0, 0 -/* 801CAD18 001C6978 40 82 00 0C */ bne lbl_801CAD24 -/* 801CAD1C 001C697C 2C 03 00 00 */ cmpwi r3, 0 -/* 801CAD20 001C6980 41 82 00 5C */ beq lbl_801CAD7C -lbl_801CAD24: -/* 801CAD24 001C6984 38 00 00 FF */ li r0, 0xff -/* 801CAD28 001C6988 98 01 00 0D */ stb r0, 0xd(r1) -/* 801CAD2C 001C698C 48 00 00 50 */ b lbl_801CAD7C -/* 801CAD30 001C6990 88 01 00 0C */ lbz r0, 0xc(r1) -/* 801CAD34 001C6994 28 00 00 03 */ cmplwi r0, 3 -/* 801CAD38 001C6998 40 82 00 10 */ bne lbl_801CAD48 -/* 801CAD3C 001C699C 38 00 00 05 */ li r0, 5 -/* 801CAD40 001C69A0 98 01 00 0C */ stb r0, 0xc(r1) -/* 801CAD44 001C69A4 48 00 00 38 */ b lbl_801CAD7C -lbl_801CAD48: -/* 801CAD48 001C69A8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CAD4C 001C69AC 41 82 00 30 */ beq lbl_801CAD7C -/* 801CAD50 001C69B0 38 00 00 FF */ li r0, 0xff -/* 801CAD54 001C69B4 98 01 00 0D */ stb r0, 0xd(r1) -/* 801CAD58 001C69B8 48 00 00 24 */ b lbl_801CAD7C -/* 801CAD5C 001C69BC 88 01 00 0C */ lbz r0, 0xc(r1) -/* 801CAD60 001C69C0 28 00 00 09 */ cmplwi r0, 9 -/* 801CAD64 001C69C4 40 82 00 18 */ bne lbl_801CAD7C -/* 801CAD68 001C69C8 38 00 00 FF */ li r0, 0xff -/* 801CAD6C 001C69CC 98 01 00 0D */ stb r0, 0xd(r1) -/* 801CAD70 001C69D0 48 00 00 0C */ b lbl_801CAD7C -lbl_801CAD74: -/* 801CAD74 001C69D4 38 00 00 FF */ li r0, 0xff -/* 801CAD78 001C69D8 98 01 00 0D */ stb r0, 0xd(r1) -lbl_801CAD7C: -/* 801CAD7C 001C69DC 80 C1 00 08 */ lwz r6, 8(r1) -/* 801CAD80 001C69E0 38 7F 00 01 */ addi r3, r31, 1 -/* 801CAD84 001C69E4 80 A1 00 0C */ lwz r5, 0xc(r1) -/* 801CAD88 001C69E8 80 81 00 10 */ lwz r4, 0x10(r1) -/* 801CAD8C 001C69EC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801CAD90 001C69F0 90 DE 00 00 */ stw r6, 0(r30) -/* 801CAD94 001C69F4 90 BE 00 04 */ stw r5, 4(r30) -/* 801CAD98 001C69F8 90 9E 00 08 */ stw r4, 8(r30) -/* 801CAD9C 001C69FC 90 1E 00 0C */ stw r0, 0xc(r30) -lbl_801CADA0: -/* 801CADA0 001C6A00 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801CADA4 001C6A04 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801CADA8 001C6A08 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 801CADAC 001C6A0C 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 801CADB0 001C6A10 7C 08 03 A6 */ mtlr r0 -/* 801CADB4 001C6A14 38 21 00 30 */ addi r1, r1, 0x30 -/* 801CADB8 001C6A18 4E 80 00 20 */ blr - -.global func_801CADBC -func_801CADBC: -/* 801CADBC 001C6A1C 39 00 00 00 */ li r8, 0 -/* 801CADC0 001C6A20 2C 03 00 00 */ cmpwi r3, 0 -/* 801CADC4 001C6A24 99 04 FF FF */ stb r8, -1(r4) -/* 801CADC8 001C6A28 38 C4 FF FF */ addi r6, r4, -1 -/* 801CADCC 001C6A2C 38 E0 00 00 */ li r7, 0 -/* 801CADD0 001C6A30 40 82 00 30 */ bne lbl_801CAE00 -/* 801CADD4 001C6A34 80 05 00 0C */ lwz r0, 0xc(r5) -/* 801CADD8 001C6A38 2C 00 00 00 */ cmpwi r0, 0 -/* 801CADDC 001C6A3C 40 82 00 24 */ bne lbl_801CAE00 -/* 801CADE0 001C6A40 88 05 00 03 */ lbz r0, 3(r5) -/* 801CADE4 001C6A44 2C 00 00 00 */ cmpwi r0, 0 -/* 801CADE8 001C6A48 41 82 00 10 */ beq lbl_801CADF8 -/* 801CADEC 001C6A4C 88 05 00 05 */ lbz r0, 5(r5) -/* 801CADF0 001C6A50 28 00 00 6F */ cmplwi r0, 0x6f -/* 801CADF4 001C6A54 41 82 00 0C */ beq lbl_801CAE00 -lbl_801CADF8: -/* 801CADF8 001C6A58 7C C3 33 78 */ mr r3, r6 -/* 801CADFC 001C6A5C 4E 80 00 20 */ blr -lbl_801CAE00: -/* 801CAE00 001C6A60 89 25 00 05 */ lbz r9, 5(r5) -/* 801CAE04 001C6A64 39 49 FF A8 */ addi r10, r9, -88 -/* 801CAE08 001C6A68 28 0A 00 20 */ cmplwi r10, 0x20 -/* 801CAE0C 001C6A6C 41 81 00 6C */ bgt lbl_801CAE78 -/* 801CAE10 001C6A70 3D 20 80 42 */ lis r9, lbl_80422EB4@ha -/* 801CAE14 001C6A74 55 4A 10 3A */ slwi r10, r10, 2 -/* 801CAE18 001C6A78 39 29 2E B4 */ addi r9, r9, lbl_80422EB4@l -/* 801CAE1C 001C6A7C 7D 29 50 2E */ lwzx r9, r9, r10 -/* 801CAE20 001C6A80 7D 29 03 A6 */ mtctr r9 -/* 801CAE24 001C6A84 4E 80 04 20 */ bctr -/* 801CAE28 001C6A88 2C 03 00 00 */ cmpwi r3, 0 -/* 801CAE2C 001C6A8C 38 00 00 0A */ li r0, 0xa -/* 801CAE30 001C6A90 40 80 00 48 */ bge lbl_801CAE78 -/* 801CAE34 001C6A94 3D 03 80 00 */ addis r8, r3, 0x8000 -/* 801CAE38 001C6A98 28 08 00 00 */ cmplwi r8, 0 -/* 801CAE3C 001C6A9C 41 82 00 08 */ beq lbl_801CAE44 -/* 801CAE40 001C6AA0 7C 63 00 D0 */ neg r3, r3 -lbl_801CAE44: -/* 801CAE44 001C6AA4 39 00 00 01 */ li r8, 1 -/* 801CAE48 001C6AA8 48 00 00 30 */ b lbl_801CAE78 -/* 801CAE4C 001C6AAC 39 20 00 00 */ li r9, 0 -/* 801CAE50 001C6AB0 38 00 00 08 */ li r0, 8 -/* 801CAE54 001C6AB4 99 25 00 01 */ stb r9, 1(r5) -/* 801CAE58 001C6AB8 48 00 00 20 */ b lbl_801CAE78 -/* 801CAE5C 001C6ABC 39 20 00 00 */ li r9, 0 -/* 801CAE60 001C6AC0 38 00 00 0A */ li r0, 0xa -/* 801CAE64 001C6AC4 99 25 00 01 */ stb r9, 1(r5) -/* 801CAE68 001C6AC8 48 00 00 10 */ b lbl_801CAE78 -/* 801CAE6C 001C6ACC 39 20 00 00 */ li r9, 0 -/* 801CAE70 001C6AD0 38 00 00 10 */ li r0, 0x10 -/* 801CAE74 001C6AD4 99 25 00 01 */ stb r9, 1(r5) -lbl_801CAE78: -/* 801CAE78 001C6AD8 7D 23 03 96 */ divwu r9, r3, r0 -/* 801CAE7C 001C6ADC 7D 29 01 D6 */ mullw r9, r9, r0 -/* 801CAE80 001C6AE0 7D 69 18 50 */ subf r11, r9, r3 -/* 801CAE84 001C6AE4 7C 63 03 96 */ divwu r3, r3, r0 -/* 801CAE88 001C6AE8 2C 0B 00 0A */ cmpwi r11, 0xa -/* 801CAE8C 001C6AEC 40 80 00 0C */ bge lbl_801CAE98 -/* 801CAE90 001C6AF0 39 6B 00 30 */ addi r11, r11, 0x30 -/* 801CAE94 001C6AF4 48 00 00 1C */ b lbl_801CAEB0 -lbl_801CAE98: -/* 801CAE98 001C6AF8 89 25 00 05 */ lbz r9, 5(r5) -/* 801CAE9C 001C6AFC 39 4B 00 37 */ addi r10, r11, 0x37 -/* 801CAEA0 001C6B00 28 09 00 78 */ cmplwi r9, 0x78 -/* 801CAEA4 001C6B04 40 82 00 08 */ bne lbl_801CAEAC -/* 801CAEA8 001C6B08 39 4B 00 57 */ addi r10, r11, 0x57 -lbl_801CAEAC: -/* 801CAEAC 001C6B0C 7D 4B 53 78 */ mr r11, r10 -lbl_801CAEB0: -/* 801CAEB0 001C6B10 2C 03 00 00 */ cmpwi r3, 0 -/* 801CAEB4 001C6B14 99 66 FF FF */ stb r11, -1(r6) -/* 801CAEB8 001C6B18 38 C6 FF FF */ addi r6, r6, -1 -/* 801CAEBC 001C6B1C 38 E7 00 01 */ addi r7, r7, 1 -/* 801CAEC0 001C6B20 40 82 FF B8 */ bne lbl_801CAE78 -/* 801CAEC4 001C6B24 28 00 00 08 */ cmplwi r0, 8 -/* 801CAEC8 001C6B28 40 82 00 28 */ bne lbl_801CAEF0 -/* 801CAECC 001C6B2C 88 65 00 03 */ lbz r3, 3(r5) -/* 801CAED0 001C6B30 2C 03 00 00 */ cmpwi r3, 0 -/* 801CAED4 001C6B34 41 82 00 1C */ beq lbl_801CAEF0 -/* 801CAED8 001C6B38 88 66 00 00 */ lbz r3, 0(r6) -/* 801CAEDC 001C6B3C 2C 03 00 30 */ cmpwi r3, 0x30 -/* 801CAEE0 001C6B40 41 82 00 10 */ beq lbl_801CAEF0 -/* 801CAEE4 001C6B44 38 60 00 30 */ li r3, 0x30 -/* 801CAEE8 001C6B48 38 E7 00 01 */ addi r7, r7, 1 -/* 801CAEEC 001C6B4C 9C 66 FF FF */ stbu r3, -1(r6) -lbl_801CAEF0: -/* 801CAEF0 001C6B50 88 65 00 00 */ lbz r3, 0(r5) -/* 801CAEF4 001C6B54 28 03 00 02 */ cmplwi r3, 2 -/* 801CAEF8 001C6B58 40 82 00 4C */ bne lbl_801CAF44 -/* 801CAEFC 001C6B5C 80 65 00 08 */ lwz r3, 8(r5) -/* 801CAF00 001C6B60 2C 08 00 00 */ cmpwi r8, 0 -/* 801CAF04 001C6B64 90 65 00 0C */ stw r3, 0xc(r5) -/* 801CAF08 001C6B68 40 82 00 10 */ bne lbl_801CAF18 -/* 801CAF0C 001C6B6C 88 65 00 01 */ lbz r3, 1(r5) -/* 801CAF10 001C6B70 2C 03 00 00 */ cmpwi r3, 0 -/* 801CAF14 001C6B74 41 82 00 10 */ beq lbl_801CAF24 -lbl_801CAF18: -/* 801CAF18 001C6B78 80 65 00 0C */ lwz r3, 0xc(r5) -/* 801CAF1C 001C6B7C 38 63 FF FF */ addi r3, r3, -1 -/* 801CAF20 001C6B80 90 65 00 0C */ stw r3, 0xc(r5) -lbl_801CAF24: -/* 801CAF24 001C6B84 28 00 00 10 */ cmplwi r0, 0x10 -/* 801CAF28 001C6B88 40 82 00 1C */ bne lbl_801CAF44 -/* 801CAF2C 001C6B8C 88 65 00 03 */ lbz r3, 3(r5) -/* 801CAF30 001C6B90 2C 03 00 00 */ cmpwi r3, 0 -/* 801CAF34 001C6B94 41 82 00 10 */ beq lbl_801CAF44 -/* 801CAF38 001C6B98 80 65 00 0C */ lwz r3, 0xc(r5) -/* 801CAF3C 001C6B9C 38 63 FF FE */ addi r3, r3, -2 -/* 801CAF40 001C6BA0 90 65 00 0C */ stw r3, 0xc(r5) -lbl_801CAF44: -/* 801CAF44 001C6BA4 81 25 00 0C */ lwz r9, 0xc(r5) -/* 801CAF48 001C6BA8 7C 66 20 50 */ subf r3, r6, r4 -/* 801CAF4C 001C6BAC 7C 69 1A 14 */ add r3, r9, r3 -/* 801CAF50 001C6BB0 2C 03 01 FD */ cmpwi r3, 0x1fd -/* 801CAF54 001C6BB4 40 81 00 0C */ ble lbl_801CAF60 -/* 801CAF58 001C6BB8 38 60 00 00 */ li r3, 0 -/* 801CAF5C 001C6BBC 4E 80 00 20 */ blr -lbl_801CAF60: -/* 801CAF60 001C6BC0 38 80 00 30 */ li r4, 0x30 -/* 801CAF64 001C6BC4 48 00 00 0C */ b lbl_801CAF70 -lbl_801CAF68: -/* 801CAF68 001C6BC8 9C 86 FF FF */ stbu r4, -1(r6) -/* 801CAF6C 001C6BCC 38 E7 00 01 */ addi r7, r7, 1 -lbl_801CAF70: -/* 801CAF70 001C6BD0 80 65 00 0C */ lwz r3, 0xc(r5) -/* 801CAF74 001C6BD4 7C 07 18 00 */ cmpw r7, r3 -/* 801CAF78 001C6BD8 41 80 FF F0 */ blt lbl_801CAF68 -/* 801CAF7C 001C6BDC 28 00 00 10 */ cmplwi r0, 0x10 -/* 801CAF80 001C6BE0 40 82 00 20 */ bne lbl_801CAFA0 -/* 801CAF84 001C6BE4 88 05 00 03 */ lbz r0, 3(r5) -/* 801CAF88 001C6BE8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CAF8C 001C6BEC 41 82 00 14 */ beq lbl_801CAFA0 -/* 801CAF90 001C6BF0 88 65 00 05 */ lbz r3, 5(r5) -/* 801CAF94 001C6BF4 38 00 00 30 */ li r0, 0x30 -/* 801CAF98 001C6BF8 98 66 FF FF */ stb r3, -1(r6) -/* 801CAF9C 001C6BFC 9C 06 FF FE */ stbu r0, -2(r6) -lbl_801CAFA0: -/* 801CAFA0 001C6C00 2C 08 00 00 */ cmpwi r8, 0 -/* 801CAFA4 001C6C04 41 82 00 10 */ beq lbl_801CAFB4 -/* 801CAFA8 001C6C08 38 00 00 2D */ li r0, 0x2d -/* 801CAFAC 001C6C0C 9C 06 FF FF */ stbu r0, -1(r6) -/* 801CAFB0 001C6C10 48 00 00 2C */ b lbl_801CAFDC -lbl_801CAFB4: -/* 801CAFB4 001C6C14 88 05 00 01 */ lbz r0, 1(r5) -/* 801CAFB8 001C6C18 28 00 00 01 */ cmplwi r0, 1 -/* 801CAFBC 001C6C1C 40 82 00 10 */ bne lbl_801CAFCC -/* 801CAFC0 001C6C20 38 00 00 2B */ li r0, 0x2b -/* 801CAFC4 001C6C24 9C 06 FF FF */ stbu r0, -1(r6) -/* 801CAFC8 001C6C28 48 00 00 14 */ b lbl_801CAFDC -lbl_801CAFCC: -/* 801CAFCC 001C6C2C 28 00 00 02 */ cmplwi r0, 2 -/* 801CAFD0 001C6C30 40 82 00 0C */ bne lbl_801CAFDC -/* 801CAFD4 001C6C34 38 00 00 20 */ li r0, 0x20 -/* 801CAFD8 001C6C38 9C 06 FF FF */ stbu r0, -1(r6) -lbl_801CAFDC: -/* 801CAFDC 001C6C3C 7C C3 33 78 */ mr r3, r6 -/* 801CAFE0 001C6C40 4E 80 00 20 */ blr - -.global func_801CAFE4 -func_801CAFE4: -/* 801CAFE4 001C6C44 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801CAFE8 001C6C48 7C 08 02 A6 */ mflr r0 -/* 801CAFEC 001C6C4C 90 01 00 34 */ stw r0, 0x34(r1) -/* 801CAFF0 001C6C50 7C 80 1B 79 */ or. r0, r4, r3 -/* 801CAFF4 001C6C54 BE C1 00 08 */ stmw r22, 8(r1) -/* 801CAFF8 001C6C58 3B 20 00 00 */ li r25, 0 -/* 801CAFFC 001C6C5C 7C 7F 1B 78 */ mr r31, r3 -/* 801CB000 001C6C60 7C 9E 23 78 */ mr r30, r4 -/* 801CB004 001C6C64 7C B7 2B 78 */ mr r23, r5 -/* 801CB008 001C6C68 7C D8 33 78 */ mr r24, r6 -/* 801CB00C 001C6C6C 3B 65 FF FF */ addi r27, r5, -1 -/* 801CB010 001C6C70 3B 40 00 00 */ li r26, 0 -/* 801CB014 001C6C74 9B 25 FF FF */ stb r25, -1(r5) -/* 801CB018 001C6C78 40 82 00 30 */ bne lbl_801CB048 -/* 801CB01C 001C6C7C 80 06 00 0C */ lwz r0, 0xc(r6) -/* 801CB020 001C6C80 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB024 001C6C84 40 82 00 24 */ bne lbl_801CB048 -/* 801CB028 001C6C88 88 06 00 03 */ lbz r0, 3(r6) -/* 801CB02C 001C6C8C 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB030 001C6C90 41 82 00 10 */ beq lbl_801CB040 -/* 801CB034 001C6C94 88 06 00 05 */ lbz r0, 5(r6) -/* 801CB038 001C6C98 28 00 00 6F */ cmplwi r0, 0x6f -/* 801CB03C 001C6C9C 41 82 00 0C */ beq lbl_801CB048 -lbl_801CB040: -/* 801CB040 001C6CA0 7F 63 DB 78 */ mr r3, r27 -/* 801CB044 001C6CA4 48 00 02 2C */ b lbl_801CB270 -lbl_801CB048: -/* 801CB048 001C6CA8 88 A6 00 05 */ lbz r5, 5(r6) -/* 801CB04C 001C6CAC 38 05 FF A8 */ addi r0, r5, -88 -/* 801CB050 001C6CB0 28 00 00 20 */ cmplwi r0, 0x20 -/* 801CB054 001C6CB4 41 81 00 8C */ bgt lbl_801CB0E0 -/* 801CB058 001C6CB8 3C A0 80 42 */ lis r5, lbl_80422F38@ha -/* 801CB05C 001C6CBC 54 00 10 3A */ slwi r0, r0, 2 -/* 801CB060 001C6CC0 38 A5 2F 38 */ addi r5, r5, lbl_80422F38@l -/* 801CB064 001C6CC4 7C A5 00 2E */ lwzx r5, r5, r0 -/* 801CB068 001C6CC8 7C A9 03 A6 */ mtctr r5 -/* 801CB06C 001C6CCC 4E 80 04 20 */ bctr -/* 801CB070 001C6CD0 3B A0 00 00 */ li r29, 0 -/* 801CB074 001C6CD4 6C 60 80 00 */ xoris r0, r3, 0x8000 -/* 801CB078 001C6CD8 6F A6 80 00 */ xoris r6, r29, 0x8000 -/* 801CB07C 001C6CDC 3B 80 00 0A */ li r28, 0xa -/* 801CB080 001C6CE0 7C BD 20 10 */ subfc r5, r29, r4 -/* 801CB084 001C6CE4 7C C6 01 10 */ subfe r6, r6, r0 -/* 801CB088 001C6CE8 7C C0 01 10 */ subfe r6, r0, r0 -/* 801CB08C 001C6CEC 7C C6 00 D1 */ neg. r6, r6 -/* 801CB090 001C6CF0 41 82 00 50 */ beq lbl_801CB0E0 -/* 801CB094 001C6CF4 3C 00 80 00 */ lis r0, 0x8000 -/* 801CB098 001C6CF8 7C 60 02 78 */ xor r0, r3, r0 -/* 801CB09C 001C6CFC 7C 80 03 79 */ or. r0, r4, r0 -/* 801CB0A0 001C6D00 41 82 00 0C */ beq lbl_801CB0AC -/* 801CB0A4 001C6D04 23 C4 00 00 */ subfic r30, r4, 0 -/* 801CB0A8 001C6D08 7F E3 01 90 */ subfze r31, r3 -lbl_801CB0AC: -/* 801CB0AC 001C6D0C 3B 20 00 01 */ li r25, 1 -/* 801CB0B0 001C6D10 48 00 00 30 */ b lbl_801CB0E0 -/* 801CB0B4 001C6D14 3B A0 00 00 */ li r29, 0 -/* 801CB0B8 001C6D18 3B 80 00 08 */ li r28, 8 -/* 801CB0BC 001C6D1C 9B A6 00 01 */ stb r29, 1(r6) -/* 801CB0C0 001C6D20 48 00 00 20 */ b lbl_801CB0E0 -/* 801CB0C4 001C6D24 3B A0 00 00 */ li r29, 0 -/* 801CB0C8 001C6D28 3B 80 00 0A */ li r28, 0xa -/* 801CB0CC 001C6D2C 9B A6 00 01 */ stb r29, 1(r6) -/* 801CB0D0 001C6D30 48 00 00 10 */ b lbl_801CB0E0 -/* 801CB0D4 001C6D34 3B A0 00 00 */ li r29, 0 -/* 801CB0D8 001C6D38 3B 80 00 10 */ li r28, 0x10 -/* 801CB0DC 001C6D3C 9B A6 00 01 */ stb r29, 1(r6) -lbl_801CB0E0: -/* 801CB0E0 001C6D40 7F E3 FB 78 */ mr r3, r31 -/* 801CB0E4 001C6D44 7F C4 F3 78 */ mr r4, r30 -/* 801CB0E8 001C6D48 7F A5 EB 78 */ mr r5, r29 -/* 801CB0EC 001C6D4C 7F 86 E3 78 */ mr r6, r28 -/* 801CB0F0 001C6D50 4B FF C2 C1 */ bl __mod2u -/* 801CB0F4 001C6D54 7C 96 23 78 */ mr r22, r4 -/* 801CB0F8 001C6D58 7F E3 FB 78 */ mr r3, r31 -/* 801CB0FC 001C6D5C 7F C4 F3 78 */ mr r4, r30 -/* 801CB100 001C6D60 7F A5 EB 78 */ mr r5, r29 -/* 801CB104 001C6D64 7F 86 E3 78 */ mr r6, r28 -/* 801CB108 001C6D68 4B FF C0 85 */ bl __div2u -/* 801CB10C 001C6D6C 2C 16 00 0A */ cmpwi r22, 0xa -/* 801CB110 001C6D70 7C 9E 23 78 */ mr r30, r4 -/* 801CB114 001C6D74 7C 7F 1B 78 */ mr r31, r3 -/* 801CB118 001C6D78 40 80 00 0C */ bge lbl_801CB124 -/* 801CB11C 001C6D7C 38 B6 00 30 */ addi r5, r22, 0x30 -/* 801CB120 001C6D80 48 00 00 18 */ b lbl_801CB138 -lbl_801CB124: -/* 801CB124 001C6D84 88 18 00 05 */ lbz r0, 5(r24) -/* 801CB128 001C6D88 38 B6 00 37 */ addi r5, r22, 0x37 -/* 801CB12C 001C6D8C 28 00 00 78 */ cmplwi r0, 0x78 -/* 801CB130 001C6D90 40 82 00 08 */ bne lbl_801CB138 -/* 801CB134 001C6D94 38 B6 00 57 */ addi r5, r22, 0x57 -lbl_801CB138: -/* 801CB138 001C6D98 7C 80 1B 79 */ or. r0, r4, r3 -/* 801CB13C 001C6D9C 9C BB FF FF */ stbu r5, -1(r27) -/* 801CB140 001C6DA0 3B 5A 00 01 */ addi r26, r26, 1 -/* 801CB144 001C6DA4 40 82 FF 9C */ bne lbl_801CB0E0 -/* 801CB148 001C6DA8 6B 80 00 08 */ xori r0, r28, 8 -/* 801CB14C 001C6DAC 7C 00 EB 79 */ or. r0, r0, r29 -/* 801CB150 001C6DB0 40 82 00 28 */ bne lbl_801CB178 -/* 801CB154 001C6DB4 88 18 00 03 */ lbz r0, 3(r24) -/* 801CB158 001C6DB8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB15C 001C6DBC 41 82 00 1C */ beq lbl_801CB178 -/* 801CB160 001C6DC0 88 1B 00 00 */ lbz r0, 0(r27) -/* 801CB164 001C6DC4 2C 00 00 30 */ cmpwi r0, 0x30 -/* 801CB168 001C6DC8 41 82 00 10 */ beq lbl_801CB178 -/* 801CB16C 001C6DCC 38 00 00 30 */ li r0, 0x30 -/* 801CB170 001C6DD0 3B 5A 00 01 */ addi r26, r26, 1 -/* 801CB174 001C6DD4 9C 1B FF FF */ stbu r0, -1(r27) -lbl_801CB178: -/* 801CB178 001C6DD8 88 18 00 00 */ lbz r0, 0(r24) -/* 801CB17C 001C6DDC 28 00 00 02 */ cmplwi r0, 2 -/* 801CB180 001C6DE0 40 82 00 50 */ bne lbl_801CB1D0 -/* 801CB184 001C6DE4 80 18 00 08 */ lwz r0, 8(r24) -/* 801CB188 001C6DE8 2C 19 00 00 */ cmpwi r25, 0 -/* 801CB18C 001C6DEC 90 18 00 0C */ stw r0, 0xc(r24) -/* 801CB190 001C6DF0 40 82 00 10 */ bne lbl_801CB1A0 -/* 801CB194 001C6DF4 88 18 00 01 */ lbz r0, 1(r24) -/* 801CB198 001C6DF8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB19C 001C6DFC 41 82 00 10 */ beq lbl_801CB1AC -lbl_801CB1A0: -/* 801CB1A0 001C6E00 80 78 00 0C */ lwz r3, 0xc(r24) -/* 801CB1A4 001C6E04 38 03 FF FF */ addi r0, r3, -1 -/* 801CB1A8 001C6E08 90 18 00 0C */ stw r0, 0xc(r24) -lbl_801CB1AC: -/* 801CB1AC 001C6E0C 6B 80 00 10 */ xori r0, r28, 0x10 -/* 801CB1B0 001C6E10 7C 00 EB 79 */ or. r0, r0, r29 -/* 801CB1B4 001C6E14 40 82 00 1C */ bne lbl_801CB1D0 -/* 801CB1B8 001C6E18 88 18 00 03 */ lbz r0, 3(r24) -/* 801CB1BC 001C6E1C 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB1C0 001C6E20 41 82 00 10 */ beq lbl_801CB1D0 -/* 801CB1C4 001C6E24 80 78 00 0C */ lwz r3, 0xc(r24) -/* 801CB1C8 001C6E28 38 03 FF FE */ addi r0, r3, -2 -/* 801CB1CC 001C6E2C 90 18 00 0C */ stw r0, 0xc(r24) -lbl_801CB1D0: -/* 801CB1D0 001C6E30 80 78 00 0C */ lwz r3, 0xc(r24) -/* 801CB1D4 001C6E34 7C 1B B8 50 */ subf r0, r27, r23 -/* 801CB1D8 001C6E38 7C 03 02 14 */ add r0, r3, r0 -/* 801CB1DC 001C6E3C 2C 00 01 FD */ cmpwi r0, 0x1fd -/* 801CB1E0 001C6E40 40 81 00 0C */ ble lbl_801CB1EC -/* 801CB1E4 001C6E44 38 60 00 00 */ li r3, 0 -/* 801CB1E8 001C6E48 48 00 00 88 */ b lbl_801CB270 -lbl_801CB1EC: -/* 801CB1EC 001C6E4C 38 60 00 30 */ li r3, 0x30 -/* 801CB1F0 001C6E50 48 00 00 0C */ b lbl_801CB1FC -lbl_801CB1F4: -/* 801CB1F4 001C6E54 9C 7B FF FF */ stbu r3, -1(r27) -/* 801CB1F8 001C6E58 3B 5A 00 01 */ addi r26, r26, 1 -lbl_801CB1FC: -/* 801CB1FC 001C6E5C 80 18 00 0C */ lwz r0, 0xc(r24) -/* 801CB200 001C6E60 7C 1A 00 00 */ cmpw r26, r0 -/* 801CB204 001C6E64 41 80 FF F0 */ blt lbl_801CB1F4 -/* 801CB208 001C6E68 6B 80 00 10 */ xori r0, r28, 0x10 -/* 801CB20C 001C6E6C 7C 00 EB 79 */ or. r0, r0, r29 -/* 801CB210 001C6E70 40 82 00 20 */ bne lbl_801CB230 -/* 801CB214 001C6E74 88 18 00 03 */ lbz r0, 3(r24) -/* 801CB218 001C6E78 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB21C 001C6E7C 41 82 00 14 */ beq lbl_801CB230 -/* 801CB220 001C6E80 88 78 00 05 */ lbz r3, 5(r24) -/* 801CB224 001C6E84 38 00 00 30 */ li r0, 0x30 -/* 801CB228 001C6E88 98 7B FF FF */ stb r3, -1(r27) -/* 801CB22C 001C6E8C 9C 1B FF FE */ stbu r0, -2(r27) -lbl_801CB230: -/* 801CB230 001C6E90 2C 19 00 00 */ cmpwi r25, 0 -/* 801CB234 001C6E94 41 82 00 10 */ beq lbl_801CB244 -/* 801CB238 001C6E98 38 00 00 2D */ li r0, 0x2d -/* 801CB23C 001C6E9C 9C 1B FF FF */ stbu r0, -1(r27) -/* 801CB240 001C6EA0 48 00 00 2C */ b lbl_801CB26C -lbl_801CB244: -/* 801CB244 001C6EA4 88 18 00 01 */ lbz r0, 1(r24) -/* 801CB248 001C6EA8 28 00 00 01 */ cmplwi r0, 1 -/* 801CB24C 001C6EAC 40 82 00 10 */ bne lbl_801CB25C -/* 801CB250 001C6EB0 38 00 00 2B */ li r0, 0x2b -/* 801CB254 001C6EB4 9C 1B FF FF */ stbu r0, -1(r27) -/* 801CB258 001C6EB8 48 00 00 14 */ b lbl_801CB26C -lbl_801CB25C: -/* 801CB25C 001C6EBC 28 00 00 02 */ cmplwi r0, 2 -/* 801CB260 001C6EC0 40 82 00 0C */ bne lbl_801CB26C -/* 801CB264 001C6EC4 38 00 00 20 */ li r0, 0x20 -/* 801CB268 001C6EC8 9C 1B FF FF */ stbu r0, -1(r27) -lbl_801CB26C: -/* 801CB26C 001C6ECC 7F 63 DB 78 */ mr r3, r27 -lbl_801CB270: -/* 801CB270 001C6ED0 BA C1 00 08 */ lmw r22, 8(r1) -/* 801CB274 001C6ED4 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801CB278 001C6ED8 7C 08 03 A6 */ mtlr r0 -/* 801CB27C 001C6EDC 38 21 00 30 */ addi r1, r1, 0x30 -/* 801CB280 001C6EE0 4E 80 00 20 */ blr - -.global func_801CB284 -func_801CB284: -/* 801CB284 001C6EE4 94 21 FF 70 */ stwu r1, -0x90(r1) -/* 801CB288 001C6EE8 7C 08 02 A6 */ mflr r0 -/* 801CB28C 001C6EEC 90 01 00 94 */ stw r0, 0x94(r1) -/* 801CB290 001C6EF0 DB E1 00 80 */ stfd f31, 0x80(r1) -/* 801CB294 001C6EF4 F3 E1 00 88 */ psq_st f31, 136(r1), 0, qr0 -/* 801CB298 001C6EF8 3C A0 80 42 */ lis r5, lbl_80422B98@ha -/* 801CB29C 001C6EFC 80 04 00 0C */ lwz r0, 0xc(r4) -/* 801CB2A0 001C6F00 FF E0 08 90 */ fmr f31, f1 -/* 801CB2A4 001C6F04 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 801CB2A8 001C6F08 2C 00 01 FD */ cmpwi r0, 0x1fd -/* 801CB2AC 001C6F0C 93 C1 00 78 */ stw r30, 0x78(r1) -/* 801CB2B0 001C6F10 7C 9E 23 78 */ mr r30, r4 -/* 801CB2B4 001C6F14 93 A1 00 74 */ stw r29, 0x74(r1) -/* 801CB2B8 001C6F18 93 81 00 70 */ stw r28, 0x70(r1) -/* 801CB2BC 001C6F1C 7C 7C 1B 78 */ mr r28, r3 -/* 801CB2C0 001C6F20 80 A5 2B 98 */ lwz r5, lbl_80422B98@l(r5) -/* 801CB2C4 001C6F24 D8 21 00 08 */ stfd f1, 8(r1) -/* 801CB2C8 001C6F28 8B E5 00 00 */ lbz r31, 0(r5) -/* 801CB2CC 001C6F2C 40 81 00 0C */ ble lbl_801CB2D8 -/* 801CB2D0 001C6F30 38 60 00 00 */ li r3, 0 -/* 801CB2D4 001C6F34 48 00 03 50 */ b lbl_801CB624 -lbl_801CB2D8: -/* 801CB2D8 001C6F38 3B A0 00 00 */ li r29, 0 -/* 801CB2DC 001C6F3C 38 00 00 20 */ li r0, 0x20 -/* 801CB2E0 001C6F40 9B A1 00 10 */ stb r29, 0x10(r1) -/* 801CB2E4 001C6F44 38 61 00 10 */ addi r3, r1, 0x10 -/* 801CB2E8 001C6F48 38 81 00 38 */ addi r4, r1, 0x38 -/* 801CB2EC 001C6F4C B0 01 00 12 */ sth r0, 0x12(r1) -/* 801CB2F0 001C6F50 4B FF D7 59 */ bl func_801C8A48 -/* 801CB2F4 001C6F54 FC 20 FA 10 */ fabs f1, f31 -/* 801CB2F8 001C6F58 C8 02 91 48 */ lfd f0, lbl_80641748-_SDA2_BASE_(r2) -/* 801CB2FC 001C6F5C FC 00 08 00 */ fcmpu cr0, f0, f1 -/* 801CB300 001C6F60 40 82 00 20 */ bne lbl_801CB320 -/* 801CB304 001C6F64 3B BC FF FA */ addi r29, r28, -6 -/* 801CB308 001C6F68 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB30C 001C6F6C 7F A3 EB 78 */ mr r3, r29 -/* 801CB310 001C6F70 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB314 001C6F74 48 00 2F BD */ bl func_801CE2D0 -/* 801CB318 001C6F78 7F A3 EB 78 */ mr r3, r29 -/* 801CB31C 001C6F7C 48 00 03 08 */ b lbl_801CB624 -lbl_801CB320: -/* 801CB320 001C6F80 88 01 00 3D */ lbz r0, 0x3d(r1) -/* 801CB324 001C6F84 28 00 00 49 */ cmplwi r0, 0x49 -/* 801CB328 001C6F88 40 82 00 94 */ bne lbl_801CB3BC -/* 801CB32C 001C6F8C 88 01 00 38 */ lbz r0, 0x38(r1) -/* 801CB330 001C6F90 7C 00 07 75 */ extsb. r0, r0 -/* 801CB334 001C6F94 41 82 00 44 */ beq lbl_801CB378 -/* 801CB338 001C6F98 88 1E 00 05 */ lbz r0, 5(r30) -/* 801CB33C 001C6F9C 3B BC FF FB */ addi r29, r28, -5 -/* 801CB340 001C6FA0 28 00 00 41 */ cmplwi r0, 0x41 -/* 801CB344 001C6FA4 40 82 00 1C */ bne lbl_801CB360 -/* 801CB348 001C6FA8 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB34C 001C6FAC 7F A3 EB 78 */ mr r3, r29 -/* 801CB350 001C6FB0 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB354 001C6FB4 38 84 00 06 */ addi r4, r4, 6 -/* 801CB358 001C6FB8 48 00 2F 79 */ bl func_801CE2D0 -/* 801CB35C 001C6FBC 48 00 00 58 */ b lbl_801CB3B4 -lbl_801CB360: -/* 801CB360 001C6FC0 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB364 001C6FC4 7F A3 EB 78 */ mr r3, r29 -/* 801CB368 001C6FC8 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB36C 001C6FCC 38 84 00 0B */ addi r4, r4, 0xb -/* 801CB370 001C6FD0 48 00 2F 61 */ bl func_801CE2D0 -/* 801CB374 001C6FD4 48 00 00 40 */ b lbl_801CB3B4 -lbl_801CB378: -/* 801CB378 001C6FD8 88 1E 00 05 */ lbz r0, 5(r30) -/* 801CB37C 001C6FDC 3B BC FF FC */ addi r29, r28, -4 -/* 801CB380 001C6FE0 28 00 00 41 */ cmplwi r0, 0x41 -/* 801CB384 001C6FE4 40 82 00 1C */ bne lbl_801CB3A0 -/* 801CB388 001C6FE8 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB38C 001C6FEC 7F A3 EB 78 */ mr r3, r29 -/* 801CB390 001C6FF0 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB394 001C6FF4 38 84 00 10 */ addi r4, r4, 0x10 -/* 801CB398 001C6FF8 48 00 2F 39 */ bl func_801CE2D0 -/* 801CB39C 001C6FFC 48 00 00 18 */ b lbl_801CB3B4 -lbl_801CB3A0: -/* 801CB3A0 001C7000 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB3A4 001C7004 7F A3 EB 78 */ mr r3, r29 -/* 801CB3A8 001C7008 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB3AC 001C700C 38 84 00 14 */ addi r4, r4, 0x14 -/* 801CB3B0 001C7010 48 00 2F 21 */ bl func_801CE2D0 -lbl_801CB3B4: -/* 801CB3B4 001C7014 7F A3 EB 78 */ mr r3, r29 -/* 801CB3B8 001C7018 48 00 02 6C */ b lbl_801CB624 -lbl_801CB3BC: -/* 801CB3BC 001C701C 28 00 00 4E */ cmplwi r0, 0x4e -/* 801CB3C0 001C7020 40 82 00 94 */ bne lbl_801CB454 -/* 801CB3C4 001C7024 88 01 00 38 */ lbz r0, 0x38(r1) -/* 801CB3C8 001C7028 7C 00 07 75 */ extsb. r0, r0 -/* 801CB3CC 001C702C 41 82 00 44 */ beq lbl_801CB410 -/* 801CB3D0 001C7030 88 1E 00 05 */ lbz r0, 5(r30) -/* 801CB3D4 001C7034 3B BC FF FB */ addi r29, r28, -5 -/* 801CB3D8 001C7038 28 00 00 41 */ cmplwi r0, 0x41 -/* 801CB3DC 001C703C 40 82 00 1C */ bne lbl_801CB3F8 -/* 801CB3E0 001C7040 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB3E4 001C7044 7F A3 EB 78 */ mr r3, r29 -/* 801CB3E8 001C7048 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB3EC 001C704C 38 84 00 18 */ addi r4, r4, 0x18 -/* 801CB3F0 001C7050 48 00 2E E1 */ bl func_801CE2D0 -/* 801CB3F4 001C7054 48 00 00 58 */ b lbl_801CB44C -lbl_801CB3F8: -/* 801CB3F8 001C7058 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB3FC 001C705C 7F A3 EB 78 */ mr r3, r29 -/* 801CB400 001C7060 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB404 001C7064 38 84 00 1D */ addi r4, r4, 0x1d -/* 801CB408 001C7068 48 00 2E C9 */ bl func_801CE2D0 -/* 801CB40C 001C706C 48 00 00 40 */ b lbl_801CB44C -lbl_801CB410: -/* 801CB410 001C7070 88 1E 00 05 */ lbz r0, 5(r30) -/* 801CB414 001C7074 3B BC FF FC */ addi r29, r28, -4 -/* 801CB418 001C7078 28 00 00 41 */ cmplwi r0, 0x41 -/* 801CB41C 001C707C 40 82 00 1C */ bne lbl_801CB438 -/* 801CB420 001C7080 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB424 001C7084 7F A3 EB 78 */ mr r3, r29 -/* 801CB428 001C7088 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB42C 001C708C 38 84 00 22 */ addi r4, r4, 0x22 -/* 801CB430 001C7090 48 00 2E A1 */ bl func_801CE2D0 -/* 801CB434 001C7094 48 00 00 18 */ b lbl_801CB44C -lbl_801CB438: -/* 801CB438 001C7098 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB43C 001C709C 7F A3 EB 78 */ mr r3, r29 -/* 801CB440 001C70A0 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB444 001C70A4 38 84 00 26 */ addi r4, r4, 0x26 -/* 801CB448 001C70A8 48 00 2E 89 */ bl func_801CE2D0 -lbl_801CB44C: -/* 801CB44C 001C70AC 7F A3 EB 78 */ mr r3, r29 -/* 801CB450 001C70B0 48 00 01 D4 */ b lbl_801CB624 -lbl_801CB454: -/* 801CB454 001C70B4 39 00 00 01 */ li r8, 1 -/* 801CB458 001C70B8 38 E0 00 64 */ li r7, 0x64 -/* 801CB45C 001C70BC 88 01 00 09 */ lbz r0, 9(r1) -/* 801CB460 001C70C0 7F 84 E3 78 */ mr r4, r28 -/* 801CB464 001C70C4 88 61 00 08 */ lbz r3, 8(r1) -/* 801CB468 001C70C8 38 A1 00 18 */ addi r5, r1, 0x18 -/* 801CB46C 001C70CC 54 00 88 1C */ slwi r0, r0, 0x11 -/* 801CB470 001C70D0 99 01 00 28 */ stb r8, 0x28(r1) -/* 801CB474 001C70D4 50 60 C8 0C */ rlwimi r0, r3, 0x19, 0, 6 -/* 801CB478 001C70D8 54 03 5D 7E */ srwi r3, r0, 0x15 -/* 801CB47C 001C70DC 99 01 00 29 */ stb r8, 0x29(r1) -/* 801CB480 001C70E0 38 63 FC 01 */ addi r3, r3, -1023 -/* 801CB484 001C70E4 9B A1 00 2A */ stb r29, 0x2a(r1) -/* 801CB488 001C70E8 9B A1 00 2B */ stb r29, 0x2b(r1) -/* 801CB48C 001C70EC 80 C1 00 28 */ lwz r6, 0x28(r1) -/* 801CB490 001C70F0 9B A1 00 2C */ stb r29, 0x2c(r1) -/* 801CB494 001C70F4 98 E1 00 2D */ stb r7, 0x2d(r1) -/* 801CB498 001C70F8 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 801CB49C 001C70FC 93 A1 00 30 */ stw r29, 0x30(r1) -/* 801CB4A0 001C7100 91 01 00 34 */ stw r8, 0x34(r1) -/* 801CB4A4 001C7104 90 C1 00 18 */ stw r6, 0x18(r1) -/* 801CB4A8 001C7108 90 01 00 1C */ stw r0, 0x1c(r1) -/* 801CB4AC 001C710C 93 A1 00 20 */ stw r29, 0x20(r1) -/* 801CB4B0 001C7110 91 01 00 24 */ stw r8, 0x24(r1) -/* 801CB4B4 001C7114 4B FF F9 09 */ bl func_801CADBC -/* 801CB4B8 001C7118 88 1E 00 05 */ lbz r0, 5(r30) -/* 801CB4BC 001C711C 28 00 00 61 */ cmplwi r0, 0x61 -/* 801CB4C0 001C7120 40 82 00 14 */ bne lbl_801CB4D4 -/* 801CB4C4 001C7124 38 00 00 70 */ li r0, 0x70 -/* 801CB4C8 001C7128 38 83 FF FF */ addi r4, r3, -1 -/* 801CB4CC 001C712C 98 03 FF FF */ stb r0, -1(r3) -/* 801CB4D0 001C7130 48 00 00 10 */ b lbl_801CB4E0 -lbl_801CB4D4: -/* 801CB4D4 001C7134 38 00 00 50 */ li r0, 0x50 -/* 801CB4D8 001C7138 38 83 FF FF */ addi r4, r3, -1 -/* 801CB4DC 001C713C 98 03 FF FF */ stb r0, -1(r3) -lbl_801CB4E0: -/* 801CB4E0 001C7140 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 801CB4E4 001C7144 39 01 00 08 */ addi r8, r1, 8 -/* 801CB4E8 001C7148 54 03 10 3A */ slwi r3, r0, 2 -/* 801CB4EC 001C714C 39 23 00 0B */ addi r9, r3, 0xb -/* 801CB4F0 001C7150 7C 09 03 A6 */ mtctr r0 -/* 801CB4F4 001C7154 2C 00 00 01 */ cmpwi r0, 1 -/* 801CB4F8 001C7158 41 80 00 9C */ blt lbl_801CB594 -lbl_801CB4FC: -/* 801CB4FC 001C715C 2C 09 00 40 */ cmpwi r9, 0x40 -/* 801CB500 001C7160 40 80 00 84 */ bge lbl_801CB584 -/* 801CB504 001C7164 7D 23 1E 70 */ srawi r3, r9, 3 -/* 801CB508 001C7168 38 09 FF FC */ addi r0, r9, -4 -/* 801CB50C 001C716C 7C E8 1A 14 */ add r7, r8, r3 -/* 801CB510 001C7170 55 26 07 7E */ clrlwi r6, r9, 0x1d -/* 801CB514 001C7174 55 23 00 38 */ rlwinm r3, r9, 0, 0, 0x1c -/* 801CB518 001C7178 54 00 00 38 */ rlwinm r0, r0, 0, 0, 0x1c -/* 801CB51C 001C717C 88 A7 00 00 */ lbz r5, 0(r7) -/* 801CB520 001C7180 20 C6 00 07 */ subfic r6, r6, 7 -/* 801CB524 001C7184 7C 03 00 00 */ cmpw r3, r0 -/* 801CB528 001C7188 7C A0 36 30 */ sraw r0, r5, r6 -/* 801CB52C 001C718C 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 801CB530 001C7190 41 82 00 18 */ beq lbl_801CB548 -/* 801CB534 001C7194 88 07 FF FF */ lbz r0, -1(r7) -/* 801CB538 001C7198 54 00 40 2E */ slwi r0, r0, 8 -/* 801CB53C 001C719C 7C 00 36 30 */ sraw r0, r0, r6 -/* 801CB540 001C71A0 7C 60 03 78 */ or r0, r3, r0 -/* 801CB544 001C71A4 54 03 06 3E */ clrlwi r3, r0, 0x18 -lbl_801CB548: -/* 801CB548 001C71A8 54 63 07 3E */ clrlwi r3, r3, 0x1c -/* 801CB54C 001C71AC 28 03 00 0A */ cmplwi r3, 0xa -/* 801CB550 001C71B0 40 80 00 10 */ bge lbl_801CB560 -/* 801CB554 001C71B4 38 03 00 30 */ addi r0, r3, 0x30 -/* 801CB558 001C71B8 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 801CB55C 001C71BC 48 00 00 2C */ b lbl_801CB588 -lbl_801CB560: -/* 801CB560 001C71C0 88 1E 00 05 */ lbz r0, 5(r30) -/* 801CB564 001C71C4 28 00 00 61 */ cmplwi r0, 0x61 -/* 801CB568 001C71C8 40 82 00 10 */ bne lbl_801CB578 -/* 801CB56C 001C71CC 38 03 00 57 */ addi r0, r3, 0x57 -/* 801CB570 001C71D0 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 801CB574 001C71D4 48 00 00 14 */ b lbl_801CB588 -lbl_801CB578: -/* 801CB578 001C71D8 38 03 00 37 */ addi r0, r3, 0x37 -/* 801CB57C 001C71DC 54 03 06 3E */ clrlwi r3, r0, 0x18 -/* 801CB580 001C71E0 48 00 00 08 */ b lbl_801CB588 -lbl_801CB584: -/* 801CB584 001C71E4 38 60 00 30 */ li r3, 0x30 -lbl_801CB588: -/* 801CB588 001C71E8 9C 64 FF FF */ stbu r3, -1(r4) -/* 801CB58C 001C71EC 39 29 FF FC */ addi r9, r9, -4 -/* 801CB590 001C71F0 42 00 FF 6C */ bdnz lbl_801CB4FC -lbl_801CB594: -/* 801CB594 001C71F4 80 1E 00 0C */ lwz r0, 0xc(r30) -/* 801CB598 001C71F8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB59C 001C71FC 40 82 00 10 */ bne lbl_801CB5AC -/* 801CB5A0 001C7200 88 1E 00 03 */ lbz r0, 3(r30) -/* 801CB5A4 001C7204 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB5A8 001C7208 41 82 00 08 */ beq lbl_801CB5B0 -lbl_801CB5AC: -/* 801CB5AC 001C720C 9F E4 FF FF */ stbu r31, -1(r4) -lbl_801CB5B0: -/* 801CB5B0 001C7210 88 1E 00 05 */ lbz r0, 5(r30) -/* 801CB5B4 001C7214 38 60 00 31 */ li r3, 0x31 -/* 801CB5B8 001C7218 98 64 FF FF */ stb r3, -1(r4) -/* 801CB5BC 001C721C 28 00 00 61 */ cmplwi r0, 0x61 -/* 801CB5C0 001C7220 40 82 00 10 */ bne lbl_801CB5D0 -/* 801CB5C4 001C7224 38 00 00 78 */ li r0, 0x78 -/* 801CB5C8 001C7228 9C 04 FF FE */ stbu r0, -2(r4) -/* 801CB5CC 001C722C 48 00 00 0C */ b lbl_801CB5D8 -lbl_801CB5D0: -/* 801CB5D0 001C7230 38 00 00 58 */ li r0, 0x58 -/* 801CB5D4 001C7234 9C 04 FF FE */ stbu r0, -2(r4) -lbl_801CB5D8: -/* 801CB5D8 001C7238 38 00 00 30 */ li r0, 0x30 -/* 801CB5DC 001C723C 9C 04 FF FF */ stbu r0, -1(r4) -/* 801CB5E0 001C7240 88 01 00 38 */ lbz r0, 0x38(r1) -/* 801CB5E4 001C7244 7C 00 07 75 */ extsb. r0, r0 -/* 801CB5E8 001C7248 41 82 00 10 */ beq lbl_801CB5F8 -/* 801CB5EC 001C724C 38 00 00 2D */ li r0, 0x2d -/* 801CB5F0 001C7250 9C 04 FF FF */ stbu r0, -1(r4) -/* 801CB5F4 001C7254 48 00 00 2C */ b lbl_801CB620 -lbl_801CB5F8: -/* 801CB5F8 001C7258 88 1E 00 01 */ lbz r0, 1(r30) -/* 801CB5FC 001C725C 28 00 00 01 */ cmplwi r0, 1 -/* 801CB600 001C7260 40 82 00 10 */ bne lbl_801CB610 -/* 801CB604 001C7264 38 00 00 2B */ li r0, 0x2b -/* 801CB608 001C7268 9C 04 FF FF */ stbu r0, -1(r4) -/* 801CB60C 001C726C 48 00 00 14 */ b lbl_801CB620 -lbl_801CB610: -/* 801CB610 001C7270 28 00 00 02 */ cmplwi r0, 2 -/* 801CB614 001C7274 40 82 00 0C */ bne lbl_801CB620 -/* 801CB618 001C7278 38 00 00 20 */ li r0, 0x20 -/* 801CB61C 001C727C 9C 04 FF FF */ stbu r0, -1(r4) -lbl_801CB620: -/* 801CB620 001C7280 7C 83 23 78 */ mr r3, r4 -lbl_801CB624: -/* 801CB624 001C7284 E3 E1 00 88 */ psq_l f31, 136(r1), 0, qr0 -/* 801CB628 001C7288 80 01 00 94 */ lwz r0, 0x94(r1) -/* 801CB62C 001C728C CB E1 00 80 */ lfd f31, 0x80(r1) -/* 801CB630 001C7290 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 801CB634 001C7294 83 C1 00 78 */ lwz r30, 0x78(r1) -/* 801CB638 001C7298 83 A1 00 74 */ lwz r29, 0x74(r1) -/* 801CB63C 001C729C 83 81 00 70 */ lwz r28, 0x70(r1) -/* 801CB640 001C72A0 7C 08 03 A6 */ mtlr r0 -/* 801CB644 001C72A4 38 21 00 90 */ addi r1, r1, 0x90 -/* 801CB648 001C72A8 4E 80 00 20 */ blr - -.global func_801CB64C -func_801CB64C: -/* 801CB64C 001C72AC 2C 04 00 00 */ cmpwi r4, 0 -/* 801CB650 001C72B0 40 80 00 20 */ bge lbl_801CB670 -lbl_801CB654: -/* 801CB654 001C72B4 38 A0 00 00 */ li r5, 0 -/* 801CB658 001C72B8 38 80 00 01 */ li r4, 1 -/* 801CB65C 001C72BC 38 00 00 30 */ li r0, 0x30 -/* 801CB660 001C72C0 B0 A3 00 02 */ sth r5, 2(r3) -/* 801CB664 001C72C4 98 83 00 04 */ stb r4, 4(r3) -/* 801CB668 001C72C8 98 03 00 05 */ stb r0, 5(r3) -/* 801CB66C 001C72CC 4E 80 00 20 */ blr -lbl_801CB670: -/* 801CB670 001C72D0 88 E3 00 04 */ lbz r7, 4(r3) -/* 801CB674 001C72D4 7C 04 38 00 */ cmpw r4, r7 -/* 801CB678 001C72D8 4C 80 00 20 */ bgelr -/* 801CB67C 001C72DC 7C C3 22 14 */ add r6, r3, r4 -/* 801CB680 001C72E0 88 A6 00 05 */ lbz r5, 5(r6) -/* 801CB684 001C72E4 39 06 00 05 */ addi r8, r6, 5 -/* 801CB688 001C72E8 38 05 FF D0 */ addi r0, r5, -48 -/* 801CB68C 001C72EC 7C 06 07 74 */ extsb r6, r0 -/* 801CB690 001C72F0 2C 06 00 05 */ cmpwi r6, 5 -/* 801CB694 001C72F4 40 82 00 40 */ bne lbl_801CB6D4 -/* 801CB698 001C72F8 7C A3 3A 14 */ add r5, r3, r7 -/* 801CB69C 001C72FC 38 A5 00 05 */ addi r5, r5, 5 -lbl_801CB6A0: -/* 801CB6A0 001C7300 38 A5 FF FF */ addi r5, r5, -1 -/* 801CB6A4 001C7304 7C 05 40 40 */ cmplw r5, r8 -/* 801CB6A8 001C7308 40 81 00 10 */ ble lbl_801CB6B8 -/* 801CB6AC 001C730C 88 05 00 00 */ lbz r0, 0(r5) -/* 801CB6B0 001C7310 2C 00 00 30 */ cmpwi r0, 0x30 -/* 801CB6B4 001C7314 41 82 FF EC */ beq lbl_801CB6A0 -lbl_801CB6B8: -/* 801CB6B8 001C7318 7C 05 40 40 */ cmplw r5, r8 -/* 801CB6BC 001C731C 40 82 00 10 */ bne lbl_801CB6CC -/* 801CB6C0 001C7320 88 08 FF FF */ lbz r0, -1(r8) -/* 801CB6C4 001C7324 54 05 07 FE */ clrlwi r5, r0, 0x1f -/* 801CB6C8 001C7328 48 00 00 20 */ b lbl_801CB6E8 -lbl_801CB6CC: -/* 801CB6CC 001C732C 38 A0 00 01 */ li r5, 1 -/* 801CB6D0 001C7330 48 00 00 18 */ b lbl_801CB6E8 -lbl_801CB6D4: -/* 801CB6D4 001C7334 68 C0 00 05 */ xori r0, r6, 5 -/* 801CB6D8 001C7338 7C 05 0E 70 */ srawi r5, r0, 1 -/* 801CB6DC 001C733C 7C 00 30 38 */ and r0, r0, r6 -/* 801CB6E0 001C7340 7C 00 28 50 */ subf r0, r0, r5 -/* 801CB6E4 001C7344 54 05 0F FE */ srwi r5, r0, 0x1f -lbl_801CB6E8: -/* 801CB6E8 001C7348 7C 89 03 A6 */ mtctr r4 -/* 801CB6EC 001C734C 2C 04 00 00 */ cmpwi r4, 0 -/* 801CB6F0 001C7350 41 82 00 4C */ beq lbl_801CB73C -lbl_801CB6F4: -/* 801CB6F4 001C7354 8C 08 FF FF */ lbzu r0, -1(r8) -/* 801CB6F8 001C7358 7C A0 2A 14 */ add r5, r0, r5 -/* 801CB6FC 001C735C 38 05 FF D0 */ addi r0, r5, -48 -/* 801CB700 001C7360 7C 06 07 74 */ extsb r6, r0 -/* 801CB704 001C7364 68 C0 00 09 */ xori r0, r6, 9 -/* 801CB708 001C7368 7C 05 0E 70 */ srawi r5, r0, 1 -/* 801CB70C 001C736C 7C 00 30 38 */ and r0, r0, r6 -/* 801CB710 001C7370 7C 00 28 50 */ subf r0, r0, r5 -/* 801CB714 001C7374 54 05 0F FF */ rlwinm. r5, r0, 1, 0x1f, 0x1f -/* 801CB718 001C7378 40 82 00 0C */ bne lbl_801CB724 -/* 801CB71C 001C737C 2C 06 00 00 */ cmpwi r6, 0 -/* 801CB720 001C7380 40 82 00 0C */ bne lbl_801CB72C -lbl_801CB724: -/* 801CB724 001C7384 38 84 FF FF */ addi r4, r4, -1 -/* 801CB728 001C7388 48 00 00 10 */ b lbl_801CB738 -lbl_801CB72C: -/* 801CB72C 001C738C 38 06 00 30 */ addi r0, r6, 0x30 -/* 801CB730 001C7390 98 08 00 00 */ stb r0, 0(r8) -/* 801CB734 001C7394 48 00 00 08 */ b lbl_801CB73C -lbl_801CB738: -/* 801CB738 001C7398 42 00 FF BC */ bdnz lbl_801CB6F4 -lbl_801CB73C: -/* 801CB73C 001C739C 2C 05 00 00 */ cmpwi r5, 0 -/* 801CB740 001C73A0 41 82 00 24 */ beq lbl_801CB764 -/* 801CB744 001C73A4 A8 A3 00 02 */ lha r5, 2(r3) -/* 801CB748 001C73A8 38 80 00 01 */ li r4, 1 -/* 801CB74C 001C73AC 38 00 00 31 */ li r0, 0x31 -/* 801CB750 001C73B0 98 83 00 04 */ stb r4, 4(r3) -/* 801CB754 001C73B4 38 85 00 01 */ addi r4, r5, 1 -/* 801CB758 001C73B8 B0 83 00 02 */ sth r4, 2(r3) -/* 801CB75C 001C73BC 98 03 00 05 */ stb r0, 5(r3) -/* 801CB760 001C73C0 4E 80 00 20 */ blr -lbl_801CB764: -/* 801CB764 001C73C4 2C 04 00 00 */ cmpwi r4, 0 -/* 801CB768 001C73C8 41 82 FE EC */ beq lbl_801CB654 -/* 801CB76C 001C73CC 98 83 00 04 */ stb r4, 4(r3) -/* 801CB770 001C73D0 4E 80 00 20 */ blr - -.global func_801CB774 -func_801CB774: -/* 801CB774 001C73D4 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 801CB778 001C73D8 7C 08 02 A6 */ mflr r0 -/* 801CB77C 001C73DC 3C A0 80 42 */ lis r5, lbl_80422B98@ha -/* 801CB780 001C73E0 90 01 00 54 */ stw r0, 0x54(r1) -/* 801CB784 001C73E4 80 04 00 0C */ lwz r0, 0xc(r4) -/* 801CB788 001C73E8 DB E1 00 48 */ stfd f31, 0x48(r1) -/* 801CB78C 001C73EC FF E0 08 90 */ fmr f31, f1 -/* 801CB790 001C73F0 2C 00 01 FD */ cmpwi r0, 0x1fd -/* 801CB794 001C73F4 93 E1 00 44 */ stw r31, 0x44(r1) -/* 801CB798 001C73F8 93 C1 00 40 */ stw r30, 0x40(r1) -/* 801CB79C 001C73FC 93 A1 00 3C */ stw r29, 0x3c(r1) -/* 801CB7A0 001C7400 7C 9D 23 78 */ mr r29, r4 -/* 801CB7A4 001C7404 93 81 00 38 */ stw r28, 0x38(r1) -/* 801CB7A8 001C7408 7C 7C 1B 78 */ mr r28, r3 -/* 801CB7AC 001C740C 80 A5 2B 98 */ lwz r5, lbl_80422B98@l(r5) -/* 801CB7B0 001C7410 8B C5 00 00 */ lbz r30, 0(r5) -/* 801CB7B4 001C7414 40 81 00 0C */ ble lbl_801CB7C0 -/* 801CB7B8 001C7418 38 60 00 00 */ li r3, 0 -/* 801CB7BC 001C741C 48 00 07 64 */ b lbl_801CBF20 -lbl_801CB7C0: -/* 801CB7C0 001C7420 38 60 00 00 */ li r3, 0 -/* 801CB7C4 001C7424 38 00 00 20 */ li r0, 0x20 -/* 801CB7C8 001C7428 98 61 00 08 */ stb r3, 8(r1) -/* 801CB7CC 001C742C 38 61 00 08 */ addi r3, r1, 8 -/* 801CB7D0 001C7430 38 81 00 0C */ addi r4, r1, 0xc -/* 801CB7D4 001C7434 B0 01 00 0A */ sth r0, 0xa(r1) -/* 801CB7D8 001C7438 4B FF D2 71 */ bl func_801C8A48 -/* 801CB7DC 001C743C 88 01 00 10 */ lbz r0, 0x10(r1) -/* 801CB7E0 001C7440 38 A1 00 11 */ addi r5, r1, 0x11 -/* 801CB7E4 001C7444 7C A5 02 14 */ add r5, r5, r0 -/* 801CB7E8 001C7448 48 00 00 1C */ b lbl_801CB804 -lbl_801CB7EC: -/* 801CB7EC 001C744C 88 81 00 10 */ lbz r4, 0x10(r1) -/* 801CB7F0 001C7450 A8 61 00 0E */ lha r3, 0xe(r1) -/* 801CB7F4 001C7454 38 84 FF FF */ addi r4, r4, -1 -/* 801CB7F8 001C7458 38 03 00 01 */ addi r0, r3, 1 -/* 801CB7FC 001C745C 98 81 00 10 */ stb r4, 0x10(r1) -/* 801CB800 001C7460 B0 01 00 0E */ sth r0, 0xe(r1) -lbl_801CB804: -/* 801CB804 001C7464 88 01 00 10 */ lbz r0, 0x10(r1) -/* 801CB808 001C7468 28 00 00 01 */ cmplwi r0, 1 -/* 801CB80C 001C746C 40 81 00 10 */ ble lbl_801CB81C -/* 801CB810 001C7470 8C 05 FF FF */ lbzu r0, -1(r5) -/* 801CB814 001C7474 2C 00 00 30 */ cmpwi r0, 0x30 -/* 801CB818 001C7478 41 82 FF D4 */ beq lbl_801CB7EC -lbl_801CB81C: -/* 801CB81C 001C747C 88 01 00 11 */ lbz r0, 0x11(r1) -/* 801CB820 001C7480 2C 00 00 49 */ cmpwi r0, 0x49 -/* 801CB824 001C7484 41 82 00 2C */ beq lbl_801CB850 -/* 801CB828 001C7488 40 80 00 10 */ bge lbl_801CB838 -/* 801CB82C 001C748C 2C 00 00 30 */ cmpwi r0, 0x30 -/* 801CB830 001C7490 41 82 00 14 */ beq lbl_801CB844 -/* 801CB834 001C7494 48 00 02 4C */ b lbl_801CBA80 -lbl_801CB838: -/* 801CB838 001C7498 2C 00 00 4E */ cmpwi r0, 0x4e -/* 801CB83C 001C749C 41 82 01 2C */ beq lbl_801CB968 -/* 801CB840 001C74A0 48 00 02 40 */ b lbl_801CBA80 -lbl_801CB844: -/* 801CB844 001C74A4 38 00 00 00 */ li r0, 0 -/* 801CB848 001C74A8 B0 01 00 0E */ sth r0, 0xe(r1) -/* 801CB84C 001C74AC 48 00 02 34 */ b lbl_801CBA80 -lbl_801CB850: -/* 801CB850 001C74B0 C8 02 91 48 */ lfd f0, lbl_80641748-_SDA2_BASE_(r2) -/* 801CB854 001C74B4 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 801CB858 001C74B8 40 80 00 88 */ bge lbl_801CB8E0 -/* 801CB85C 001C74BC 88 9D 00 05 */ lbz r4, 5(r29) -/* 801CB860 001C74C0 3B FC FF FB */ addi r31, r28, -5 -/* 801CB864 001C74C4 38 00 00 00 */ li r0, 0 -/* 801CB868 001C74C8 2C 04 00 00 */ cmpwi r4, 0 -/* 801CB86C 001C74CC 41 80 00 0C */ blt lbl_801CB878 -/* 801CB870 001C74D0 2C 04 01 00 */ cmpwi r4, 0x100 -/* 801CB874 001C74D4 41 80 00 08 */ blt lbl_801CB87C -lbl_801CB878: -/* 801CB878 001C74D8 38 00 00 01 */ li r0, 1 -lbl_801CB87C: -/* 801CB87C 001C74DC 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB880 001C74E0 41 82 00 0C */ beq lbl_801CB88C -/* 801CB884 001C74E4 38 00 00 00 */ li r0, 0 -/* 801CB888 001C74E8 48 00 00 20 */ b lbl_801CB8A8 -lbl_801CB88C: -/* 801CB88C 001C74EC 3C 60 80 42 */ lis r3, lbl_80422D48@ha -/* 801CB890 001C74F0 54 80 08 3C */ slwi r0, r4, 1 -/* 801CB894 001C74F4 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l -/* 801CB898 001C74F8 80 63 00 38 */ lwz r3, 0x38(r3) -/* 801CB89C 001C74FC 80 63 00 08 */ lwz r3, 8(r3) -/* 801CB8A0 001C7500 7C 03 02 2E */ lhzx r0, r3, r0 -/* 801CB8A4 001C7504 54 00 05 AC */ rlwinm r0, r0, 0, 0x16, 0x16 -lbl_801CB8A8: -/* 801CB8A8 001C7508 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB8AC 001C750C 41 82 00 1C */ beq lbl_801CB8C8 -/* 801CB8B0 001C7510 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB8B4 001C7514 7F E3 FB 78 */ mr r3, r31 -/* 801CB8B8 001C7518 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB8BC 001C751C 38 84 00 06 */ addi r4, r4, 6 -/* 801CB8C0 001C7520 48 00 2A 11 */ bl func_801CE2D0 -/* 801CB8C4 001C7524 48 00 00 9C */ b lbl_801CB960 -lbl_801CB8C8: -/* 801CB8C8 001C7528 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB8CC 001C752C 7F E3 FB 78 */ mr r3, r31 -/* 801CB8D0 001C7530 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB8D4 001C7534 38 84 00 0B */ addi r4, r4, 0xb -/* 801CB8D8 001C7538 48 00 29 F9 */ bl func_801CE2D0 -/* 801CB8DC 001C753C 48 00 00 84 */ b lbl_801CB960 -lbl_801CB8E0: -/* 801CB8E0 001C7540 88 9D 00 05 */ lbz r4, 5(r29) -/* 801CB8E4 001C7544 3B FC FF FC */ addi r31, r28, -4 -/* 801CB8E8 001C7548 38 00 00 00 */ li r0, 0 -/* 801CB8EC 001C754C 2C 04 00 00 */ cmpwi r4, 0 -/* 801CB8F0 001C7550 41 80 00 0C */ blt lbl_801CB8FC -/* 801CB8F4 001C7554 2C 04 01 00 */ cmpwi r4, 0x100 -/* 801CB8F8 001C7558 41 80 00 08 */ blt lbl_801CB900 -lbl_801CB8FC: -/* 801CB8FC 001C755C 38 00 00 01 */ li r0, 1 -lbl_801CB900: -/* 801CB900 001C7560 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB904 001C7564 41 82 00 0C */ beq lbl_801CB910 -/* 801CB908 001C7568 38 00 00 00 */ li r0, 0 -/* 801CB90C 001C756C 48 00 00 20 */ b lbl_801CB92C -lbl_801CB910: -/* 801CB910 001C7570 3C 60 80 42 */ lis r3, lbl_80422D48@ha -/* 801CB914 001C7574 54 80 08 3C */ slwi r0, r4, 1 -/* 801CB918 001C7578 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l -/* 801CB91C 001C757C 80 63 00 38 */ lwz r3, 0x38(r3) -/* 801CB920 001C7580 80 63 00 08 */ lwz r3, 8(r3) -/* 801CB924 001C7584 7C 03 02 2E */ lhzx r0, r3, r0 -/* 801CB928 001C7588 54 00 05 AC */ rlwinm r0, r0, 0, 0x16, 0x16 -lbl_801CB92C: -/* 801CB92C 001C758C 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB930 001C7590 41 82 00 1C */ beq lbl_801CB94C -/* 801CB934 001C7594 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB938 001C7598 7F E3 FB 78 */ mr r3, r31 -/* 801CB93C 001C759C 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB940 001C75A0 38 84 00 10 */ addi r4, r4, 0x10 -/* 801CB944 001C75A4 48 00 29 8D */ bl func_801CE2D0 -/* 801CB948 001C75A8 48 00 00 18 */ b lbl_801CB960 -lbl_801CB94C: -/* 801CB94C 001C75AC 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB950 001C75B0 7F E3 FB 78 */ mr r3, r31 -/* 801CB954 001C75B4 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB958 001C75B8 38 84 00 14 */ addi r4, r4, 0x14 -/* 801CB95C 001C75BC 48 00 29 75 */ bl func_801CE2D0 -lbl_801CB960: -/* 801CB960 001C75C0 7F E3 FB 78 */ mr r3, r31 -/* 801CB964 001C75C4 48 00 05 BC */ b lbl_801CBF20 -lbl_801CB968: -/* 801CB968 001C75C8 88 01 00 0C */ lbz r0, 0xc(r1) -/* 801CB96C 001C75CC 7C 00 07 75 */ extsb. r0, r0 -/* 801CB970 001C75D0 41 82 00 88 */ beq lbl_801CB9F8 -/* 801CB974 001C75D4 88 9D 00 05 */ lbz r4, 5(r29) -/* 801CB978 001C75D8 3B FC FF FB */ addi r31, r28, -5 -/* 801CB97C 001C75DC 38 00 00 00 */ li r0, 0 -/* 801CB980 001C75E0 2C 04 00 00 */ cmpwi r4, 0 -/* 801CB984 001C75E4 41 80 00 0C */ blt lbl_801CB990 -/* 801CB988 001C75E8 2C 04 01 00 */ cmpwi r4, 0x100 -/* 801CB98C 001C75EC 41 80 00 08 */ blt lbl_801CB994 -lbl_801CB990: -/* 801CB990 001C75F0 38 00 00 01 */ li r0, 1 -lbl_801CB994: -/* 801CB994 001C75F4 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB998 001C75F8 41 82 00 0C */ beq lbl_801CB9A4 -/* 801CB99C 001C75FC 38 00 00 00 */ li r0, 0 -/* 801CB9A0 001C7600 48 00 00 20 */ b lbl_801CB9C0 -lbl_801CB9A4: -/* 801CB9A4 001C7604 3C 60 80 42 */ lis r3, lbl_80422D48@ha -/* 801CB9A8 001C7608 54 80 08 3C */ slwi r0, r4, 1 -/* 801CB9AC 001C760C 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l -/* 801CB9B0 001C7610 80 63 00 38 */ lwz r3, 0x38(r3) -/* 801CB9B4 001C7614 80 63 00 08 */ lwz r3, 8(r3) -/* 801CB9B8 001C7618 7C 03 02 2E */ lhzx r0, r3, r0 -/* 801CB9BC 001C761C 54 00 05 AC */ rlwinm r0, r0, 0, 0x16, 0x16 -lbl_801CB9C0: -/* 801CB9C0 001C7620 2C 00 00 00 */ cmpwi r0, 0 -/* 801CB9C4 001C7624 41 82 00 1C */ beq lbl_801CB9E0 -/* 801CB9C8 001C7628 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB9CC 001C762C 7F E3 FB 78 */ mr r3, r31 -/* 801CB9D0 001C7630 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB9D4 001C7634 38 84 00 18 */ addi r4, r4, 0x18 -/* 801CB9D8 001C7638 48 00 28 F9 */ bl func_801CE2D0 -/* 801CB9DC 001C763C 48 00 00 9C */ b lbl_801CBA78 -lbl_801CB9E0: -/* 801CB9E0 001C7640 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CB9E4 001C7644 7F E3 FB 78 */ mr r3, r31 -/* 801CB9E8 001C7648 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CB9EC 001C764C 38 84 00 1D */ addi r4, r4, 0x1d -/* 801CB9F0 001C7650 48 00 28 E1 */ bl func_801CE2D0 -/* 801CB9F4 001C7654 48 00 00 84 */ b lbl_801CBA78 -lbl_801CB9F8: -/* 801CB9F8 001C7658 88 9D 00 05 */ lbz r4, 5(r29) -/* 801CB9FC 001C765C 3B FC FF FC */ addi r31, r28, -4 -/* 801CBA00 001C7660 38 00 00 00 */ li r0, 0 -/* 801CBA04 001C7664 2C 04 00 00 */ cmpwi r4, 0 -/* 801CBA08 001C7668 41 80 00 0C */ blt lbl_801CBA14 -/* 801CBA0C 001C766C 2C 04 01 00 */ cmpwi r4, 0x100 -/* 801CBA10 001C7670 41 80 00 08 */ blt lbl_801CBA18 -lbl_801CBA14: -/* 801CBA14 001C7674 38 00 00 01 */ li r0, 1 -lbl_801CBA18: -/* 801CBA18 001C7678 2C 00 00 00 */ cmpwi r0, 0 -/* 801CBA1C 001C767C 41 82 00 0C */ beq lbl_801CBA28 -/* 801CBA20 001C7680 38 00 00 00 */ li r0, 0 -/* 801CBA24 001C7684 48 00 00 20 */ b lbl_801CBA44 -lbl_801CBA28: -/* 801CBA28 001C7688 3C 60 80 42 */ lis r3, lbl_80422D48@ha -/* 801CBA2C 001C768C 54 80 08 3C */ slwi r0, r4, 1 -/* 801CBA30 001C7690 38 63 2D 48 */ addi r3, r3, lbl_80422D48@l -/* 801CBA34 001C7694 80 63 00 38 */ lwz r3, 0x38(r3) -/* 801CBA38 001C7698 80 63 00 08 */ lwz r3, 8(r3) -/* 801CBA3C 001C769C 7C 03 02 2E */ lhzx r0, r3, r0 -/* 801CBA40 001C76A0 54 00 05 AC */ rlwinm r0, r0, 0, 0x16, 0x16 -lbl_801CBA44: -/* 801CBA44 001C76A4 2C 00 00 00 */ cmpwi r0, 0 -/* 801CBA48 001C76A8 41 82 00 1C */ beq lbl_801CBA64 -/* 801CBA4C 001C76AC 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CBA50 001C76B0 7F E3 FB 78 */ mr r3, r31 -/* 801CBA54 001C76B4 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CBA58 001C76B8 38 84 00 22 */ addi r4, r4, 0x22 -/* 801CBA5C 001C76BC 48 00 28 75 */ bl func_801CE2D0 -/* 801CBA60 001C76C0 48 00 00 18 */ b lbl_801CBA78 -lbl_801CBA64: -/* 801CBA64 001C76C4 3C 80 80 40 */ lis r4, lbl_803FCCC0@ha -/* 801CBA68 001C76C8 7F E3 FB 78 */ mr r3, r31 -/* 801CBA6C 001C76CC 38 84 CC C0 */ addi r4, r4, lbl_803FCCC0@l -/* 801CBA70 001C76D0 38 84 00 26 */ addi r4, r4, 0x26 -/* 801CBA74 001C76D4 48 00 28 5D */ bl func_801CE2D0 -lbl_801CBA78: -/* 801CBA78 001C76D8 7F E3 FB 78 */ mr r3, r31 -/* 801CBA7C 001C76DC 48 00 04 A4 */ b lbl_801CBF20 -lbl_801CBA80: -/* 801CBA80 001C76E0 A8 A1 00 0E */ lha r5, 0xe(r1) -/* 801CBA84 001C76E4 38 60 00 00 */ li r3, 0 -/* 801CBA88 001C76E8 88 81 00 10 */ lbz r4, 0x10(r1) -/* 801CBA8C 001C76EC 3B FC FF FF */ addi r31, r28, -1 -/* 801CBA90 001C76F0 88 1D 00 05 */ lbz r0, 5(r29) -/* 801CBA94 001C76F4 7C 84 2A 14 */ add r4, r4, r5 -/* 801CBA98 001C76F8 38 84 FF FF */ addi r4, r4, -1 -/* 801CBA9C 001C76FC 2C 00 00 65 */ cmpwi r0, 0x65 -/* 801CBAA0 001C7700 B0 81 00 0E */ sth r4, 0xe(r1) -/* 801CBAA4 001C7704 98 7C FF FF */ stb r3, -1(r28) -/* 801CBAA8 001C7708 41 82 00 F4 */ beq lbl_801CBB9C -/* 801CBAAC 001C770C 40 80 00 28 */ bge lbl_801CBAD4 -/* 801CBAB0 001C7710 2C 00 00 46 */ cmpwi r0, 0x46 -/* 801CBAB4 001C7714 41 82 02 4C */ beq lbl_801CBD00 -/* 801CBAB8 001C7718 40 80 00 10 */ bge lbl_801CBAC8 -/* 801CBABC 001C771C 2C 00 00 45 */ cmpwi r0, 0x45 -/* 801CBAC0 001C7720 40 80 00 DC */ bge lbl_801CBB9C -/* 801CBAC4 001C7724 48 00 04 58 */ b lbl_801CBF1C -lbl_801CBAC8: -/* 801CBAC8 001C7728 2C 00 00 48 */ cmpwi r0, 0x48 -/* 801CBACC 001C772C 40 80 04 50 */ bge lbl_801CBF1C -/* 801CBAD0 001C7730 48 00 00 14 */ b lbl_801CBAE4 -lbl_801CBAD4: -/* 801CBAD4 001C7734 2C 00 00 67 */ cmpwi r0, 0x67 -/* 801CBAD8 001C7738 41 82 00 0C */ beq lbl_801CBAE4 -/* 801CBADC 001C773C 40 80 04 40 */ bge lbl_801CBF1C -/* 801CBAE0 001C7740 48 00 02 20 */ b lbl_801CBD00 -lbl_801CBAE4: -/* 801CBAE4 001C7744 80 9D 00 0C */ lwz r4, 0xc(r29) -/* 801CBAE8 001C7748 88 01 00 10 */ lbz r0, 0x10(r1) -/* 801CBAEC 001C774C 7C 00 20 00 */ cmpw r0, r4 -/* 801CBAF0 001C7750 40 81 00 0C */ ble lbl_801CBAFC -/* 801CBAF4 001C7754 38 61 00 0C */ addi r3, r1, 0xc -/* 801CBAF8 001C7758 4B FF FB 55 */ bl func_801CB64C -lbl_801CBAFC: -/* 801CBAFC 001C775C A8 81 00 0E */ lha r4, 0xe(r1) -/* 801CBB00 001C7760 2C 04 FF FC */ cmpwi r4, -4 -/* 801CBB04 001C7764 41 80 00 10 */ blt lbl_801CBB14 -/* 801CBB08 001C7768 80 7D 00 0C */ lwz r3, 0xc(r29) -/* 801CBB0C 001C776C 7C 04 18 00 */ cmpw r4, r3 -/* 801CBB10 001C7770 41 80 00 50 */ blt lbl_801CBB60 -lbl_801CBB14: -/* 801CBB14 001C7774 88 1D 00 03 */ lbz r0, 3(r29) -/* 801CBB18 001C7778 2C 00 00 00 */ cmpwi r0, 0 -/* 801CBB1C 001C777C 41 82 00 14 */ beq lbl_801CBB30 -/* 801CBB20 001C7780 80 7D 00 0C */ lwz r3, 0xc(r29) -/* 801CBB24 001C7784 38 03 FF FF */ addi r0, r3, -1 -/* 801CBB28 001C7788 90 1D 00 0C */ stw r0, 0xc(r29) -/* 801CBB2C 001C778C 48 00 00 10 */ b lbl_801CBB3C -lbl_801CBB30: -/* 801CBB30 001C7790 88 61 00 10 */ lbz r3, 0x10(r1) -/* 801CBB34 001C7794 38 03 FF FF */ addi r0, r3, -1 -/* 801CBB38 001C7798 90 1D 00 0C */ stw r0, 0xc(r29) -lbl_801CBB3C: -/* 801CBB3C 001C779C 88 1D 00 05 */ lbz r0, 5(r29) -/* 801CBB40 001C77A0 28 00 00 67 */ cmplwi r0, 0x67 -/* 801CBB44 001C77A4 40 82 00 10 */ bne lbl_801CBB54 -/* 801CBB48 001C77A8 38 00 00 65 */ li r0, 0x65 -/* 801CBB4C 001C77AC 98 1D 00 05 */ stb r0, 5(r29) -/* 801CBB50 001C77B0 48 00 00 4C */ b lbl_801CBB9C -lbl_801CBB54: -/* 801CBB54 001C77B4 38 00 00 45 */ li r0, 0x45 -/* 801CBB58 001C77B8 98 1D 00 05 */ stb r0, 5(r29) -/* 801CBB5C 001C77BC 48 00 00 40 */ b lbl_801CBB9C -lbl_801CBB60: -/* 801CBB60 001C77C0 88 1D 00 03 */ lbz r0, 3(r29) -/* 801CBB64 001C77C4 2C 00 00 00 */ cmpwi r0, 0 -/* 801CBB68 001C77C8 41 82 00 14 */ beq lbl_801CBB7C -/* 801CBB6C 001C77CC 38 04 00 01 */ addi r0, r4, 1 -/* 801CBB70 001C77D0 7C 00 18 50 */ subf r0, r0, r3 -/* 801CBB74 001C77D4 90 1D 00 0C */ stw r0, 0xc(r29) -/* 801CBB78 001C77D8 48 00 01 88 */ b lbl_801CBD00 -lbl_801CBB7C: -/* 801CBB7C 001C77DC 88 01 00 10 */ lbz r0, 0x10(r1) -/* 801CBB80 001C77E0 38 64 00 01 */ addi r3, r4, 1 -/* 801CBB84 001C77E4 7C 03 00 51 */ subf. r0, r3, r0 -/* 801CBB88 001C77E8 90 1D 00 0C */ stw r0, 0xc(r29) -/* 801CBB8C 001C77EC 40 80 01 74 */ bge lbl_801CBD00 -/* 801CBB90 001C77F0 38 00 00 00 */ li r0, 0 -/* 801CBB94 001C77F4 90 1D 00 0C */ stw r0, 0xc(r29) -/* 801CBB98 001C77F8 48 00 01 68 */ b lbl_801CBD00 -lbl_801CBB9C: -/* 801CBB9C 001C77FC 80 7D 00 0C */ lwz r3, 0xc(r29) -/* 801CBBA0 001C7800 88 01 00 10 */ lbz r0, 0x10(r1) -/* 801CBBA4 001C7804 38 83 00 01 */ addi r4, r3, 1 -/* 801CBBA8 001C7808 7C 00 20 00 */ cmpw r0, r4 -/* 801CBBAC 001C780C 40 81 00 0C */ ble lbl_801CBBB8 -/* 801CBBB0 001C7810 38 61 00 0C */ addi r3, r1, 0xc -/* 801CBBB4 001C7814 4B FF FA 99 */ bl func_801CB64C -lbl_801CBBB8: -/* 801CBBB8 001C7818 A8 C1 00 0E */ lha r6, 0xe(r1) -/* 801CBBBC 001C781C 39 00 00 2B */ li r8, 0x2b -/* 801CBBC0 001C7820 2C 06 00 00 */ cmpwi r6, 0 -/* 801CBBC4 001C7824 40 80 00 0C */ bge lbl_801CBBD0 -/* 801CBBC8 001C7828 7C C6 00 D0 */ neg r6, r6 -/* 801CBBCC 001C782C 39 00 00 2D */ li r8, 0x2d -lbl_801CBBD0: -/* 801CBBD0 001C7830 3C 60 66 66 */ lis r3, 0x66666667@ha -/* 801CBBD4 001C7834 38 E0 00 00 */ li r7, 0 -/* 801CBBD8 001C7838 38 A3 66 67 */ addi r5, r3, 0x66666667@l -/* 801CBBDC 001C783C 48 00 00 38 */ b lbl_801CBC14 -lbl_801CBBE0: -/* 801CBBE0 001C7840 7C 05 30 96 */ mulhw r0, r5, r6 -/* 801CBBE4 001C7844 38 E7 00 01 */ addi r7, r7, 1 -/* 801CBBE8 001C7848 7C 03 16 70 */ srawi r3, r0, 2 -/* 801CBBEC 001C784C 54 64 0F FE */ srwi r4, r3, 0x1f -/* 801CBBF0 001C7850 7C 00 16 70 */ srawi r0, r0, 2 -/* 801CBBF4 001C7854 7C 63 22 14 */ add r3, r3, r4 -/* 801CBBF8 001C7858 1C 83 00 0A */ mulli r4, r3, 0xa -/* 801CBBFC 001C785C 54 03 0F FE */ srwi r3, r0, 0x1f -/* 801CBC00 001C7860 7C 84 30 50 */ subf r4, r4, r6 -/* 801CBC04 001C7864 7C C0 1A 14 */ add r6, r0, r3 -/* 801CBC08 001C7868 38 04 00 30 */ addi r0, r4, 0x30 -/* 801CBC0C 001C786C 98 1F FF FF */ stb r0, -1(r31) -/* 801CBC10 001C7870 3B FF FF FF */ addi r31, r31, -1 -lbl_801CBC14: -/* 801CBC14 001C7874 2C 06 00 00 */ cmpwi r6, 0 -/* 801CBC18 001C7878 40 82 FF C8 */ bne lbl_801CBBE0 -/* 801CBC1C 001C787C 2C 07 00 02 */ cmpwi r7, 2 -/* 801CBC20 001C7880 41 80 FF C0 */ blt lbl_801CBBE0 -/* 801CBC24 001C7884 99 1F FF FF */ stb r8, -1(r31) -/* 801CBC28 001C7888 88 1D 00 05 */ lbz r0, 5(r29) -/* 801CBC2C 001C788C 80 7D 00 0C */ lwz r3, 0xc(r29) -/* 801CBC30 001C7890 9C 1F FF FE */ stbu r0, -2(r31) -/* 801CBC34 001C7894 7C 1F E0 50 */ subf r0, r31, r28 -/* 801CBC38 001C7898 7C 03 02 14 */ add r0, r3, r0 -/* 801CBC3C 001C789C 2C 00 01 FD */ cmpwi r0, 0x1fd -/* 801CBC40 001C78A0 40 81 00 0C */ ble lbl_801CBC4C -/* 801CBC44 001C78A4 38 60 00 00 */ li r3, 0 -/* 801CBC48 001C78A8 48 00 02 D8 */ b lbl_801CBF20 -lbl_801CBC4C: -/* 801CBC4C 001C78AC 88 81 00 10 */ lbz r4, 0x10(r1) -/* 801CBC50 001C78B0 38 03 00 01 */ addi r0, r3, 1 -/* 801CBC54 001C78B4 7C 04 00 00 */ cmpw r4, r0 -/* 801CBC58 001C78B8 40 80 00 20 */ bge lbl_801CBC78 -/* 801CBC5C 001C78BC 38 63 00 02 */ addi r3, r3, 2 -/* 801CBC60 001C78C0 38 00 00 30 */ li r0, 0x30 -/* 801CBC64 001C78C4 7C 64 18 50 */ subf r3, r4, r3 -/* 801CBC68 001C78C8 48 00 00 08 */ b lbl_801CBC70 -lbl_801CBC6C: -/* 801CBC6C 001C78CC 9C 1F FF FF */ stbu r0, -1(r31) -lbl_801CBC70: -/* 801CBC70 001C78D0 34 63 FF FF */ addic. r3, r3, -1 -/* 801CBC74 001C78D4 40 82 FF F8 */ bne lbl_801CBC6C -lbl_801CBC78: -/* 801CBC78 001C78D8 88 61 00 10 */ lbz r3, 0x10(r1) -/* 801CBC7C 001C78DC 38 81 00 11 */ addi r4, r1, 0x11 -/* 801CBC80 001C78E0 7C 84 1A 14 */ add r4, r4, r3 -/* 801CBC84 001C78E4 48 00 00 0C */ b lbl_801CBC90 -lbl_801CBC88: -/* 801CBC88 001C78E8 8C 04 FF FF */ lbzu r0, -1(r4) -/* 801CBC8C 001C78EC 9C 1F FF FF */ stbu r0, -1(r31) -lbl_801CBC90: -/* 801CBC90 001C78F0 34 63 FF FF */ addic. r3, r3, -1 -/* 801CBC94 001C78F4 40 82 FF F4 */ bne lbl_801CBC88 -/* 801CBC98 001C78F8 80 1D 00 0C */ lwz r0, 0xc(r29) -/* 801CBC9C 001C78FC 2C 00 00 00 */ cmpwi r0, 0 -/* 801CBCA0 001C7900 40 82 00 10 */ bne lbl_801CBCB0 -/* 801CBCA4 001C7904 88 1D 00 03 */ lbz r0, 3(r29) -/* 801CBCA8 001C7908 2C 00 00 00 */ cmpwi r0, 0 -/* 801CBCAC 001C790C 41 82 00 08 */ beq lbl_801CBCB4 -lbl_801CBCB0: -/* 801CBCB0 001C7910 9F DF FF FF */ stbu r30, -1(r31) -lbl_801CBCB4: -/* 801CBCB4 001C7914 88 01 00 11 */ lbz r0, 0x11(r1) -/* 801CBCB8 001C7918 9C 1F FF FF */ stbu r0, -1(r31) -/* 801CBCBC 001C791C 88 01 00 0C */ lbz r0, 0xc(r1) -/* 801CBCC0 001C7920 7C 00 07 75 */ extsb. r0, r0 -/* 801CBCC4 001C7924 41 82 00 10 */ beq lbl_801CBCD4 -/* 801CBCC8 001C7928 38 00 00 2D */ li r0, 0x2d -/* 801CBCCC 001C792C 9C 1F FF FF */ stbu r0, -1(r31) -/* 801CBCD0 001C7930 48 00 02 4C */ b lbl_801CBF1C -lbl_801CBCD4: -/* 801CBCD4 001C7934 88 1D 00 01 */ lbz r0, 1(r29) -/* 801CBCD8 001C7938 28 00 00 01 */ cmplwi r0, 1 -/* 801CBCDC 001C793C 40 82 00 10 */ bne lbl_801CBCEC -/* 801CBCE0 001C7940 38 00 00 2B */ li r0, 0x2b -/* 801CBCE4 001C7944 9C 1F FF FF */ stbu r0, -1(r31) -/* 801CBCE8 001C7948 48 00 02 34 */ b lbl_801CBF1C -lbl_801CBCEC: -/* 801CBCEC 001C794C 28 00 00 02 */ cmplwi r0, 2 -/* 801CBCF0 001C7950 40 82 02 2C */ bne lbl_801CBF1C -/* 801CBCF4 001C7954 38 00 00 20 */ li r0, 0x20 -/* 801CBCF8 001C7958 9C 1F FF FF */ stbu r0, -1(r31) -/* 801CBCFC 001C795C 48 00 02 20 */ b lbl_801CBF1C -lbl_801CBD00: -/* 801CBD00 001C7960 88 81 00 10 */ lbz r4, 0x10(r1) -/* 801CBD04 001C7964 A8 A1 00 0E */ lha r5, 0xe(r1) -/* 801CBD08 001C7968 7C 65 20 50 */ subf r3, r5, r4 -/* 801CBD0C 001C796C 35 03 FF FF */ addic. r8, r3, -1 -/* 801CBD10 001C7970 40 80 00 08 */ bge lbl_801CBD18 -/* 801CBD14 001C7974 39 00 00 00 */ li r8, 0 -lbl_801CBD18: -/* 801CBD18 001C7978 80 1D 00 0C */ lwz r0, 0xc(r29) -/* 801CBD1C 001C797C 7C 08 00 00 */ cmpw r8, r0 -/* 801CBD20 001C7980 40 81 00 2C */ ble lbl_801CBD4C -/* 801CBD24 001C7984 7C 00 40 50 */ subf r0, r0, r8 -/* 801CBD28 001C7988 38 61 00 0C */ addi r3, r1, 0xc -/* 801CBD2C 001C798C 7C 80 20 50 */ subf r4, r0, r4 -/* 801CBD30 001C7990 4B FF F9 1D */ bl func_801CB64C -/* 801CBD34 001C7994 88 81 00 10 */ lbz r4, 0x10(r1) -/* 801CBD38 001C7998 A8 A1 00 0E */ lha r5, 0xe(r1) -/* 801CBD3C 001C799C 7C 65 20 50 */ subf r3, r5, r4 -/* 801CBD40 001C79A0 35 03 FF FF */ addic. r8, r3, -1 -/* 801CBD44 001C79A4 40 80 00 08 */ bge lbl_801CBD4C -/* 801CBD48 001C79A8 39 00 00 00 */ li r8, 0 -lbl_801CBD4C: -/* 801CBD4C 001C79AC 34 E5 00 01 */ addic. r7, r5, 1 -/* 801CBD50 001C79B0 40 80 00 08 */ bge lbl_801CBD58 -/* 801CBD54 001C79B4 38 E0 00 00 */ li r7, 0 -lbl_801CBD58: -/* 801CBD58 001C79B8 7C 07 42 14 */ add r0, r7, r8 -/* 801CBD5C 001C79BC 2C 00 01 FD */ cmpwi r0, 0x1fd -/* 801CBD60 001C79C0 40 81 00 0C */ ble lbl_801CBD6C -/* 801CBD64 001C79C4 38 60 00 00 */ li r3, 0 -/* 801CBD68 001C79C8 48 00 01 B8 */ b lbl_801CBF20 -lbl_801CBD6C: -/* 801CBD6C 001C79CC 38 C1 00 11 */ addi r6, r1, 0x11 -/* 801CBD70 001C79D0 38 A0 00 00 */ li r5, 0 -/* 801CBD74 001C79D4 7C C6 22 14 */ add r6, r6, r4 -/* 801CBD78 001C79D8 38 60 00 30 */ li r3, 0x30 -/* 801CBD7C 001C79DC 48 00 00 0C */ b lbl_801CBD88 -lbl_801CBD80: -/* 801CBD80 001C79E0 9C 7F FF FF */ stbu r3, -1(r31) -/* 801CBD84 001C79E4 38 A5 00 01 */ addi r5, r5, 1 -lbl_801CBD88: -/* 801CBD88 001C79E8 80 1D 00 0C */ lwz r0, 0xc(r29) -/* 801CBD8C 001C79EC 7C 08 00 50 */ subf r0, r8, r0 -/* 801CBD90 001C79F0 7C 05 00 00 */ cmpw r5, r0 -/* 801CBD94 001C79F4 41 80 FF EC */ blt lbl_801CBD80 -/* 801CBD98 001C79F8 38 60 00 00 */ li r3, 0 -/* 801CBD9C 001C79FC 48 00 00 10 */ b lbl_801CBDAC -lbl_801CBDA0: -/* 801CBDA0 001C7A00 8C 06 FF FF */ lbzu r0, -1(r6) -/* 801CBDA4 001C7A04 38 63 00 01 */ addi r3, r3, 1 -/* 801CBDA8 001C7A08 9C 1F FF FF */ stbu r0, -1(r31) -lbl_801CBDAC: -/* 801CBDAC 001C7A0C 7C 03 40 00 */ cmpw r3, r8 -/* 801CBDB0 001C7A10 40 80 00 10 */ bge lbl_801CBDC0 -/* 801CBDB4 001C7A14 88 01 00 10 */ lbz r0, 0x10(r1) -/* 801CBDB8 001C7A18 7C 03 00 00 */ cmpw r3, r0 -/* 801CBDBC 001C7A1C 41 80 FF E4 */ blt lbl_801CBDA0 -lbl_801CBDC0: -/* 801CBDC0 001C7A20 7C 03 40 00 */ cmpw r3, r8 -/* 801CBDC4 001C7A24 7C 63 40 50 */ subf r3, r3, r8 -/* 801CBDC8 001C7A28 38 80 00 30 */ li r4, 0x30 -/* 801CBDCC 001C7A2C 40 80 00 48 */ bge lbl_801CBE14 -/* 801CBDD0 001C7A30 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f -/* 801CBDD4 001C7A34 7C 09 03 A6 */ mtctr r0 -/* 801CBDD8 001C7A38 41 82 00 30 */ beq lbl_801CBE08 -lbl_801CBDDC: -/* 801CBDDC 001C7A3C 98 9F FF FF */ stb r4, -1(r31) -/* 801CBDE0 001C7A40 98 9F FF FE */ stb r4, -2(r31) -/* 801CBDE4 001C7A44 98 9F FF FD */ stb r4, -3(r31) -/* 801CBDE8 001C7A48 98 9F FF FC */ stb r4, -4(r31) -/* 801CBDEC 001C7A4C 98 9F FF FB */ stb r4, -5(r31) -/* 801CBDF0 001C7A50 98 9F FF FA */ stb r4, -6(r31) -/* 801CBDF4 001C7A54 98 9F FF F9 */ stb r4, -7(r31) -/* 801CBDF8 001C7A58 9C 9F FF F8 */ stbu r4, -8(r31) -/* 801CBDFC 001C7A5C 42 00 FF E0 */ bdnz lbl_801CBDDC -/* 801CBE00 001C7A60 70 63 00 07 */ andi. r3, r3, 7 -/* 801CBE04 001C7A64 41 82 00 10 */ beq lbl_801CBE14 -lbl_801CBE08: -/* 801CBE08 001C7A68 7C 69 03 A6 */ mtctr r3 -lbl_801CBE0C: -/* 801CBE0C 001C7A6C 9C 9F FF FF */ stbu r4, -1(r31) -/* 801CBE10 001C7A70 42 00 FF FC */ bdnz lbl_801CBE0C -lbl_801CBE14: -/* 801CBE14 001C7A74 80 1D 00 0C */ lwz r0, 0xc(r29) -/* 801CBE18 001C7A78 2C 00 00 00 */ cmpwi r0, 0 -/* 801CBE1C 001C7A7C 40 82 00 10 */ bne lbl_801CBE2C -/* 801CBE20 001C7A80 88 1D 00 03 */ lbz r0, 3(r29) -/* 801CBE24 001C7A84 2C 00 00 00 */ cmpwi r0, 0 -/* 801CBE28 001C7A88 41 82 00 08 */ beq lbl_801CBE30 -lbl_801CBE2C: -/* 801CBE2C 001C7A8C 9F DF FF FF */ stbu r30, -1(r31) -lbl_801CBE30: -/* 801CBE30 001C7A90 2C 07 00 00 */ cmpwi r7, 0 -/* 801CBE34 001C7A94 41 82 00 A0 */ beq lbl_801CBED4 -/* 801CBE38 001C7A98 38 80 00 00 */ li r4, 0 -/* 801CBE3C 001C7A9C 38 60 00 30 */ li r3, 0x30 -/* 801CBE40 001C7AA0 48 00 00 0C */ b lbl_801CBE4C -lbl_801CBE44: -/* 801CBE44 001C7AA4 9C 7F FF FF */ stbu r3, -1(r31) -/* 801CBE48 001C7AA8 38 84 00 01 */ addi r4, r4, 1 -lbl_801CBE4C: -/* 801CBE4C 001C7AAC 88 01 00 10 */ lbz r0, 0x10(r1) -/* 801CBE50 001C7AB0 7C 00 38 50 */ subf r0, r0, r7 -/* 801CBE54 001C7AB4 7C 04 00 00 */ cmpw r4, r0 -/* 801CBE58 001C7AB8 41 80 FF EC */ blt lbl_801CBE44 -/* 801CBE5C 001C7ABC 7C 04 38 00 */ cmpw r4, r7 -/* 801CBE60 001C7AC0 7C 64 38 50 */ subf r3, r4, r7 -/* 801CBE64 001C7AC4 40 80 00 78 */ bge lbl_801CBEDC -/* 801CBE68 001C7AC8 54 60 E8 FF */ rlwinm. r0, r3, 0x1d, 3, 0x1f -/* 801CBE6C 001C7ACC 7C 09 03 A6 */ mtctr r0 -/* 801CBE70 001C7AD0 41 82 00 50 */ beq lbl_801CBEC0 -lbl_801CBE74: -/* 801CBE74 001C7AD4 88 06 FF FF */ lbz r0, -1(r6) -/* 801CBE78 001C7AD8 98 1F FF FF */ stb r0, -1(r31) -/* 801CBE7C 001C7ADC 88 06 FF FE */ lbz r0, -2(r6) -/* 801CBE80 001C7AE0 98 1F FF FE */ stb r0, -2(r31) -/* 801CBE84 001C7AE4 88 06 FF FD */ lbz r0, -3(r6) -/* 801CBE88 001C7AE8 98 1F FF FD */ stb r0, -3(r31) -/* 801CBE8C 001C7AEC 88 06 FF FC */ lbz r0, -4(r6) -/* 801CBE90 001C7AF0 98 1F FF FC */ stb r0, -4(r31) -/* 801CBE94 001C7AF4 88 06 FF FB */ lbz r0, -5(r6) -/* 801CBE98 001C7AF8 98 1F FF FB */ stb r0, -5(r31) -/* 801CBE9C 001C7AFC 88 06 FF FA */ lbz r0, -6(r6) -/* 801CBEA0 001C7B00 98 1F FF FA */ stb r0, -6(r31) -/* 801CBEA4 001C7B04 88 06 FF F9 */ lbz r0, -7(r6) -/* 801CBEA8 001C7B08 98 1F FF F9 */ stb r0, -7(r31) -/* 801CBEAC 001C7B0C 8C 06 FF F8 */ lbzu r0, -8(r6) -/* 801CBEB0 001C7B10 9C 1F FF F8 */ stbu r0, -8(r31) -/* 801CBEB4 001C7B14 42 00 FF C0 */ bdnz lbl_801CBE74 -/* 801CBEB8 001C7B18 70 63 00 07 */ andi. r3, r3, 7 -/* 801CBEBC 001C7B1C 41 82 00 20 */ beq lbl_801CBEDC -lbl_801CBEC0: -/* 801CBEC0 001C7B20 7C 69 03 A6 */ mtctr r3 -lbl_801CBEC4: -/* 801CBEC4 001C7B24 8C 06 FF FF */ lbzu r0, -1(r6) -/* 801CBEC8 001C7B28 9C 1F FF FF */ stbu r0, -1(r31) -/* 801CBECC 001C7B2C 42 00 FF F8 */ bdnz lbl_801CBEC4 -/* 801CBED0 001C7B30 48 00 00 0C */ b lbl_801CBEDC -lbl_801CBED4: -/* 801CBED4 001C7B34 38 00 00 30 */ li r0, 0x30 -/* 801CBED8 001C7B38 9C 1F FF FF */ stbu r0, -1(r31) -lbl_801CBEDC: -/* 801CBEDC 001C7B3C 88 01 00 0C */ lbz r0, 0xc(r1) -/* 801CBEE0 001C7B40 7C 00 07 75 */ extsb. r0, r0 -/* 801CBEE4 001C7B44 41 82 00 10 */ beq lbl_801CBEF4 -/* 801CBEE8 001C7B48 38 00 00 2D */ li r0, 0x2d -/* 801CBEEC 001C7B4C 9C 1F FF FF */ stbu r0, -1(r31) -/* 801CBEF0 001C7B50 48 00 00 2C */ b lbl_801CBF1C -lbl_801CBEF4: -/* 801CBEF4 001C7B54 88 1D 00 01 */ lbz r0, 1(r29) -/* 801CBEF8 001C7B58 28 00 00 01 */ cmplwi r0, 1 -/* 801CBEFC 001C7B5C 40 82 00 10 */ bne lbl_801CBF0C -/* 801CBF00 001C7B60 38 00 00 2B */ li r0, 0x2b -/* 801CBF04 001C7B64 9C 1F FF FF */ stbu r0, -1(r31) -/* 801CBF08 001C7B68 48 00 00 14 */ b lbl_801CBF1C -lbl_801CBF0C: -/* 801CBF0C 001C7B6C 28 00 00 02 */ cmplwi r0, 2 -/* 801CBF10 001C7B70 40 82 00 0C */ bne lbl_801CBF1C -/* 801CBF14 001C7B74 38 00 00 20 */ li r0, 0x20 -/* 801CBF18 001C7B78 9C 1F FF FF */ stbu r0, -1(r31) -lbl_801CBF1C: -/* 801CBF1C 001C7B7C 7F E3 FB 78 */ mr r3, r31 -lbl_801CBF20: -/* 801CBF20 001C7B80 80 01 00 54 */ lwz r0, 0x54(r1) -/* 801CBF24 001C7B84 CB E1 00 48 */ lfd f31, 0x48(r1) -/* 801CBF28 001C7B88 83 E1 00 44 */ lwz r31, 0x44(r1) -/* 801CBF2C 001C7B8C 83 C1 00 40 */ lwz r30, 0x40(r1) -/* 801CBF30 001C7B90 83 A1 00 3C */ lwz r29, 0x3c(r1) -/* 801CBF34 001C7B94 83 81 00 38 */ lwz r28, 0x38(r1) -/* 801CBF38 001C7B98 7C 08 03 A6 */ mtlr r0 -/* 801CBF3C 001C7B9C 38 21 00 50 */ addi r1, r1, 0x50 -/* 801CBF40 001C7BA0 4E 80 00 20 */ blr - -.global func_801CBF44 -func_801CBF44: -/* 801CBF44 001C7BA4 94 21 FD 40 */ stwu r1, -0x2c0(r1) -/* 801CBF48 001C7BA8 7C 08 02 A6 */ mflr r0 -/* 801CBF4C 001C7BAC 90 01 02 C4 */ stw r0, 0x2c4(r1) -/* 801CBF50 001C7BB0 BE 01 02 80 */ stmw r16, 0x280(r1) -/* 801CBF54 001C7BB4 3A 00 00 20 */ li r16, 0x20 -/* 801CBF58 001C7BB8 3F A0 80 40 */ lis r29, lbl_803FCCC0@ha -/* 801CBF5C 001C7BBC 7C 71 1B 78 */ mr r17, r3 -/* 801CBF60 001C7BC0 7C 92 23 78 */ mr r18, r4 -/* 801CBF64 001C7BC4 7C B7 2B 78 */ mr r23, r5 -/* 801CBF68 001C7BC8 7C D3 33 78 */ mr r19, r6 -/* 801CBF6C 001C7BCC 3B BD CC C0 */ addi r29, r29, lbl_803FCCC0@l -/* 801CBF70 001C7BD0 3B 81 02 7F */ addi r28, r1, 0x27f -/* 801CBF74 001C7BD4 3B 20 00 00 */ li r25, 0 -/* 801CBF78 001C7BD8 3B E0 00 25 */ li r31, 0x25 -/* 801CBF7C 001C7BDC 3F C0 80 42 */ lis r30, 0x8042 -/* 801CBF80 001C7BE0 9A 01 00 09 */ stb r16, 9(r1) -/* 801CBF84 001C7BE4 48 00 07 F8 */ b lbl_801CC77C -lbl_801CBF88: -/* 801CBF88 001C7BE8 7E E3 BB 78 */ mr r3, r23 -/* 801CBF8C 001C7BEC 38 80 00 25 */ li r4, 0x25 -/* 801CBF90 001C7BF0 48 00 26 19 */ bl func_801CE5A8 -/* 801CBF94 001C7BF4 2C 03 00 00 */ cmpwi r3, 0 -/* 801CBF98 001C7BF8 7C 78 1B 78 */ mr r24, r3 -/* 801CBF9C 001C7BFC 40 82 00 40 */ bne lbl_801CBFDC -/* 801CBFA0 001C7C00 7E E3 BB 78 */ mr r3, r23 -/* 801CBFA4 001C7C04 4B FF AB C1 */ bl strlen -/* 801CBFA8 001C7C08 2C 03 00 00 */ cmpwi r3, 0 -/* 801CBFAC 001C7C0C 7C 65 1B 78 */ mr r5, r3 -/* 801CBFB0 001C7C10 7F 39 1A 14 */ add r25, r25, r3 -/* 801CBFB4 001C7C14 41 82 07 D4 */ beq lbl_801CC788 -/* 801CBFB8 001C7C18 7E 2C 8B 78 */ mr r12, r17 -/* 801CBFBC 001C7C1C 7E 43 93 78 */ mr r3, r18 -/* 801CBFC0 001C7C20 7E E4 BB 78 */ mr r4, r23 -/* 801CBFC4 001C7C24 7D 89 03 A6 */ mtctr r12 -/* 801CBFC8 001C7C28 4E 80 04 21 */ bctrl -/* 801CBFCC 001C7C2C 2C 03 00 00 */ cmpwi r3, 0 -/* 801CBFD0 001C7C30 40 82 07 B8 */ bne lbl_801CC788 -/* 801CBFD4 001C7C34 38 60 FF FF */ li r3, -1 -/* 801CBFD8 001C7C38 48 00 07 B4 */ b lbl_801CC78C -lbl_801CBFDC: -/* 801CBFDC 001C7C3C 7C B7 18 51 */ subf. r5, r23, r3 -/* 801CBFE0 001C7C40 7F 39 2A 14 */ add r25, r25, r5 -/* 801CBFE4 001C7C44 41 82 00 28 */ beq lbl_801CC00C -/* 801CBFE8 001C7C48 7E 2C 8B 78 */ mr r12, r17 -/* 801CBFEC 001C7C4C 7E 43 93 78 */ mr r3, r18 -/* 801CBFF0 001C7C50 7E E4 BB 78 */ mr r4, r23 -/* 801CBFF4 001C7C54 7D 89 03 A6 */ mtctr r12 -/* 801CBFF8 001C7C58 4E 80 04 21 */ bctrl -/* 801CBFFC 001C7C5C 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC000 001C7C60 40 82 00 0C */ bne lbl_801CC00C -/* 801CC004 001C7C64 38 60 FF FF */ li r3, -1 -/* 801CC008 001C7C68 48 00 07 84 */ b lbl_801CC78C -lbl_801CC00C: -/* 801CC00C 001C7C6C 7F 03 C3 78 */ mr r3, r24 -/* 801CC010 001C7C70 7E 64 9B 78 */ mr r4, r19 -/* 801CC014 001C7C74 38 A1 00 70 */ addi r5, r1, 0x70 -/* 801CC018 001C7C78 4B FF E7 A9 */ bl func_801CA7C0 -/* 801CC01C 001C7C7C 88 01 00 75 */ lbz r0, 0x75(r1) -/* 801CC020 001C7C80 7C 77 1B 78 */ mr r23, r3 -/* 801CC024 001C7C84 2C 00 00 68 */ cmpwi r0, 0x68 -/* 801CC028 001C7C88 41 82 05 D4 */ beq lbl_801CC5FC -/* 801CC02C 001C7C8C 40 80 00 60 */ bge lbl_801CC08C -/* 801CC030 001C7C90 2C 00 00 58 */ cmpwi r0, 0x58 -/* 801CC034 001C7C94 41 82 02 10 */ beq lbl_801CC244 -/* 801CC038 001C7C98 40 80 00 30 */ bge lbl_801CC068 -/* 801CC03C 001C7C9C 2C 00 00 41 */ cmpwi r0, 0x41 -/* 801CC040 001C7CA0 41 82 03 D0 */ beq lbl_801CC410 -/* 801CC044 001C7CA4 40 80 00 10 */ bge lbl_801CC054 -/* 801CC048 001C7CA8 2C 00 00 25 */ cmpwi r0, 0x25 -/* 801CC04C 001C7CAC 41 82 05 A0 */ beq lbl_801CC5EC -/* 801CC050 001C7CB0 48 00 05 AC */ b lbl_801CC5FC -lbl_801CC054: -/* 801CC054 001C7CB4 2C 00 00 48 */ cmpwi r0, 0x48 -/* 801CC058 001C7CB8 40 80 05 A4 */ bge lbl_801CC5FC -/* 801CC05C 001C7CBC 2C 00 00 45 */ cmpwi r0, 0x45 -/* 801CC060 001C7CC0 40 80 03 40 */ bge lbl_801CC3A0 -/* 801CC064 001C7CC4 48 00 05 98 */ b lbl_801CC5FC -lbl_801CC068: -/* 801CC068 001C7CC8 2C 00 00 63 */ cmpwi r0, 0x63 -/* 801CC06C 001C7CCC 41 82 05 60 */ beq lbl_801CC5CC -/* 801CC070 001C7CD0 40 80 00 10 */ bge lbl_801CC080 -/* 801CC074 001C7CD4 2C 00 00 61 */ cmpwi r0, 0x61 -/* 801CC078 001C7CD8 41 82 03 98 */ beq lbl_801CC410 -/* 801CC07C 001C7CDC 48 00 05 80 */ b lbl_801CC5FC -lbl_801CC080: -/* 801CC080 001C7CE0 2C 00 00 65 */ cmpwi r0, 0x65 -/* 801CC084 001C7CE4 40 80 03 1C */ bge lbl_801CC3A0 -/* 801CC088 001C7CE8 48 00 00 60 */ b lbl_801CC0E8 -lbl_801CC08C: -/* 801CC08C 001C7CEC 2C 00 00 74 */ cmpwi r0, 0x74 -/* 801CC090 001C7CF0 41 82 05 6C */ beq lbl_801CC5FC -/* 801CC094 001C7CF4 40 80 00 30 */ bge lbl_801CC0C4 -/* 801CC098 001C7CF8 2C 00 00 6F */ cmpwi r0, 0x6f -/* 801CC09C 001C7CFC 41 82 01 A8 */ beq lbl_801CC244 -/* 801CC0A0 001C7D00 40 80 00 18 */ bge lbl_801CC0B8 -/* 801CC0A4 001C7D04 2C 00 00 6E */ cmpwi r0, 0x6e -/* 801CC0A8 001C7D08 40 80 04 AC */ bge lbl_801CC554 -/* 801CC0AC 001C7D0C 2C 00 00 6A */ cmpwi r0, 0x6a -/* 801CC0B0 001C7D10 40 80 05 4C */ bge lbl_801CC5FC -/* 801CC0B4 001C7D14 48 00 00 34 */ b lbl_801CC0E8 -lbl_801CC0B8: -/* 801CC0B8 001C7D18 2C 00 00 73 */ cmpwi r0, 0x73 -/* 801CC0BC 001C7D1C 40 80 03 C4 */ bge lbl_801CC480 -/* 801CC0C0 001C7D20 48 00 05 3C */ b lbl_801CC5FC -lbl_801CC0C4: -/* 801CC0C4 001C7D24 2C 00 00 78 */ cmpwi r0, 0x78 -/* 801CC0C8 001C7D28 41 82 01 7C */ beq lbl_801CC244 -/* 801CC0CC 001C7D2C 40 80 00 10 */ bge lbl_801CC0DC -/* 801CC0D0 001C7D30 2C 00 00 76 */ cmpwi r0, 0x76 -/* 801CC0D4 001C7D34 40 80 05 28 */ bge lbl_801CC5FC -/* 801CC0D8 001C7D38 48 00 01 6C */ b lbl_801CC244 -lbl_801CC0DC: -/* 801CC0DC 001C7D3C 2C 00 00 FF */ cmpwi r0, 0xff -/* 801CC0E0 001C7D40 41 82 05 1C */ beq lbl_801CC5FC -/* 801CC0E4 001C7D44 48 00 05 18 */ b lbl_801CC5FC -lbl_801CC0E8: -/* 801CC0E8 001C7D48 88 01 00 74 */ lbz r0, 0x74(r1) -/* 801CC0EC 001C7D4C 28 00 00 03 */ cmplwi r0, 3 -/* 801CC0F0 001C7D50 40 82 00 18 */ bne lbl_801CC108 -/* 801CC0F4 001C7D54 7E 63 9B 78 */ mr r3, r19 -/* 801CC0F8 001C7D58 38 80 00 01 */ li r4, 1 -/* 801CC0FC 001C7D5C 4B FF AA 85 */ bl __va_arg -/* 801CC100 001C7D60 82 C3 00 00 */ lwz r22, 0(r3) -/* 801CC104 001C7D64 48 00 00 8C */ b lbl_801CC190 -lbl_801CC108: -/* 801CC108 001C7D68 28 00 00 04 */ cmplwi r0, 4 -/* 801CC10C 001C7D6C 40 82 00 1C */ bne lbl_801CC128 -/* 801CC110 001C7D70 7E 63 9B 78 */ mr r3, r19 -/* 801CC114 001C7D74 38 80 00 02 */ li r4, 2 -/* 801CC118 001C7D78 4B FF AA 69 */ bl __va_arg -/* 801CC11C 001C7D7C 82 A3 00 00 */ lwz r21, 0(r3) -/* 801CC120 001C7D80 82 83 00 04 */ lwz r20, 4(r3) -/* 801CC124 001C7D84 48 00 00 6C */ b lbl_801CC190 -lbl_801CC128: -/* 801CC128 001C7D88 28 00 00 06 */ cmplwi r0, 6 -/* 801CC12C 001C7D8C 40 82 00 1C */ bne lbl_801CC148 -/* 801CC130 001C7D90 7E 63 9B 78 */ mr r3, r19 -/* 801CC134 001C7D94 38 80 00 02 */ li r4, 2 -/* 801CC138 001C7D98 4B FF AA 49 */ bl __va_arg -/* 801CC13C 001C7D9C 82 A3 00 00 */ lwz r21, 0(r3) -/* 801CC140 001C7DA0 82 83 00 04 */ lwz r20, 4(r3) -/* 801CC144 001C7DA4 48 00 00 4C */ b lbl_801CC190 -lbl_801CC148: -/* 801CC148 001C7DA8 28 00 00 07 */ cmplwi r0, 7 -/* 801CC14C 001C7DAC 40 82 00 18 */ bne lbl_801CC164 -/* 801CC150 001C7DB0 7E 63 9B 78 */ mr r3, r19 -/* 801CC154 001C7DB4 38 80 00 01 */ li r4, 1 -/* 801CC158 001C7DB8 4B FF AA 29 */ bl __va_arg -/* 801CC15C 001C7DBC 82 C3 00 00 */ lwz r22, 0(r3) -/* 801CC160 001C7DC0 48 00 00 30 */ b lbl_801CC190 -lbl_801CC164: -/* 801CC164 001C7DC4 28 00 00 08 */ cmplwi r0, 8 -/* 801CC168 001C7DC8 40 82 00 18 */ bne lbl_801CC180 -/* 801CC16C 001C7DCC 7E 63 9B 78 */ mr r3, r19 -/* 801CC170 001C7DD0 38 80 00 01 */ li r4, 1 -/* 801CC174 001C7DD4 4B FF AA 0D */ bl __va_arg -/* 801CC178 001C7DD8 82 C3 00 00 */ lwz r22, 0(r3) -/* 801CC17C 001C7DDC 48 00 00 14 */ b lbl_801CC190 -lbl_801CC180: -/* 801CC180 001C7DE0 7E 63 9B 78 */ mr r3, r19 -/* 801CC184 001C7DE4 38 80 00 01 */ li r4, 1 -/* 801CC188 001C7DE8 4B FF A9 F9 */ bl __va_arg -/* 801CC18C 001C7DEC 82 C3 00 00 */ lwz r22, 0(r3) -lbl_801CC190: -/* 801CC190 001C7DF0 88 01 00 74 */ lbz r0, 0x74(r1) -/* 801CC194 001C7DF4 28 00 00 02 */ cmplwi r0, 2 -/* 801CC198 001C7DF8 40 82 00 08 */ bne lbl_801CC1A0 -/* 801CC19C 001C7DFC 7E D6 07 34 */ extsh r22, r22 -lbl_801CC1A0: -/* 801CC1A0 001C7E00 28 00 00 01 */ cmplwi r0, 1 -/* 801CC1A4 001C7E04 40 82 00 08 */ bne lbl_801CC1AC -/* 801CC1A8 001C7E08 7E D6 07 74 */ extsb r22, r22 -lbl_801CC1AC: -/* 801CC1AC 001C7E0C 28 00 00 04 */ cmplwi r0, 4 -/* 801CC1B0 001C7E10 41 82 00 0C */ beq lbl_801CC1BC -/* 801CC1B4 001C7E14 28 00 00 06 */ cmplwi r0, 6 -/* 801CC1B8 001C7E18 40 82 00 48 */ bne lbl_801CC200 -lbl_801CC1BC: -/* 801CC1BC 001C7E1C 81 21 00 70 */ lwz r9, 0x70(r1) -/* 801CC1C0 001C7E20 7E 84 A3 78 */ mr r4, r20 -/* 801CC1C4 001C7E24 81 01 00 74 */ lwz r8, 0x74(r1) -/* 801CC1C8 001C7E28 7E A3 AB 78 */ mr r3, r21 -/* 801CC1CC 001C7E2C 80 E1 00 78 */ lwz r7, 0x78(r1) -/* 801CC1D0 001C7E30 38 A1 02 80 */ addi r5, r1, 0x280 -/* 801CC1D4 001C7E34 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 801CC1D8 001C7E38 38 C1 00 60 */ addi r6, r1, 0x60 -/* 801CC1DC 001C7E3C 91 21 00 60 */ stw r9, 0x60(r1) -/* 801CC1E0 001C7E40 91 01 00 64 */ stw r8, 0x64(r1) -/* 801CC1E4 001C7E44 90 E1 00 68 */ stw r7, 0x68(r1) -/* 801CC1E8 001C7E48 90 01 00 6C */ stw r0, 0x6c(r1) -/* 801CC1EC 001C7E4C 4B FF ED F9 */ bl func_801CAFE4 -/* 801CC1F0 001C7E50 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC1F4 001C7E54 7C 7A 1B 78 */ mr r26, r3 -/* 801CC1F8 001C7E58 41 82 04 04 */ beq lbl_801CC5FC -/* 801CC1FC 001C7E5C 48 00 00 40 */ b lbl_801CC23C -lbl_801CC200: -/* 801CC200 001C7E60 81 01 00 70 */ lwz r8, 0x70(r1) -/* 801CC204 001C7E64 7E C3 B3 78 */ mr r3, r22 -/* 801CC208 001C7E68 80 E1 00 74 */ lwz r7, 0x74(r1) -/* 801CC20C 001C7E6C 38 81 02 80 */ addi r4, r1, 0x280 -/* 801CC210 001C7E70 80 C1 00 78 */ lwz r6, 0x78(r1) -/* 801CC214 001C7E74 38 A1 00 50 */ addi r5, r1, 0x50 -/* 801CC218 001C7E78 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 801CC21C 001C7E7C 91 01 00 50 */ stw r8, 0x50(r1) -/* 801CC220 001C7E80 90 E1 00 54 */ stw r7, 0x54(r1) -/* 801CC224 001C7E84 90 C1 00 58 */ stw r6, 0x58(r1) -/* 801CC228 001C7E88 90 01 00 5C */ stw r0, 0x5c(r1) -/* 801CC22C 001C7E8C 4B FF EB 91 */ bl func_801CADBC -/* 801CC230 001C7E90 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC234 001C7E94 7C 7A 1B 78 */ mr r26, r3 -/* 801CC238 001C7E98 41 82 03 C4 */ beq lbl_801CC5FC -lbl_801CC23C: -/* 801CC23C 001C7E9C 7F 7A E0 50 */ subf r27, r26, r28 -/* 801CC240 001C7EA0 48 00 04 00 */ b lbl_801CC640 -lbl_801CC244: -/* 801CC244 001C7EA4 88 01 00 74 */ lbz r0, 0x74(r1) -/* 801CC248 001C7EA8 28 00 00 03 */ cmplwi r0, 3 -/* 801CC24C 001C7EAC 40 82 00 18 */ bne lbl_801CC264 -/* 801CC250 001C7EB0 7E 63 9B 78 */ mr r3, r19 -/* 801CC254 001C7EB4 38 80 00 01 */ li r4, 1 -/* 801CC258 001C7EB8 4B FF A9 29 */ bl __va_arg -/* 801CC25C 001C7EBC 82 C3 00 00 */ lwz r22, 0(r3) -/* 801CC260 001C7EC0 48 00 00 8C */ b lbl_801CC2EC -lbl_801CC264: -/* 801CC264 001C7EC4 28 00 00 04 */ cmplwi r0, 4 -/* 801CC268 001C7EC8 40 82 00 1C */ bne lbl_801CC284 -/* 801CC26C 001C7ECC 7E 63 9B 78 */ mr r3, r19 -/* 801CC270 001C7ED0 38 80 00 02 */ li r4, 2 -/* 801CC274 001C7ED4 4B FF A9 0D */ bl __va_arg -/* 801CC278 001C7ED8 82 A3 00 00 */ lwz r21, 0(r3) -/* 801CC27C 001C7EDC 82 83 00 04 */ lwz r20, 4(r3) -/* 801CC280 001C7EE0 48 00 00 6C */ b lbl_801CC2EC -lbl_801CC284: -/* 801CC284 001C7EE4 28 00 00 06 */ cmplwi r0, 6 -/* 801CC288 001C7EE8 40 82 00 1C */ bne lbl_801CC2A4 -/* 801CC28C 001C7EEC 7E 63 9B 78 */ mr r3, r19 -/* 801CC290 001C7EF0 38 80 00 02 */ li r4, 2 -/* 801CC294 001C7EF4 4B FF A8 ED */ bl __va_arg -/* 801CC298 001C7EF8 82 A3 00 00 */ lwz r21, 0(r3) -/* 801CC29C 001C7EFC 82 83 00 04 */ lwz r20, 4(r3) -/* 801CC2A0 001C7F00 48 00 00 4C */ b lbl_801CC2EC -lbl_801CC2A4: -/* 801CC2A4 001C7F04 28 00 00 07 */ cmplwi r0, 7 -/* 801CC2A8 001C7F08 40 82 00 18 */ bne lbl_801CC2C0 -/* 801CC2AC 001C7F0C 7E 63 9B 78 */ mr r3, r19 -/* 801CC2B0 001C7F10 38 80 00 01 */ li r4, 1 -/* 801CC2B4 001C7F14 4B FF A8 CD */ bl __va_arg -/* 801CC2B8 001C7F18 82 C3 00 00 */ lwz r22, 0(r3) -/* 801CC2BC 001C7F1C 48 00 00 30 */ b lbl_801CC2EC -lbl_801CC2C0: -/* 801CC2C0 001C7F20 28 00 00 08 */ cmplwi r0, 8 -/* 801CC2C4 001C7F24 40 82 00 18 */ bne lbl_801CC2DC -/* 801CC2C8 001C7F28 7E 63 9B 78 */ mr r3, r19 -/* 801CC2CC 001C7F2C 38 80 00 01 */ li r4, 1 -/* 801CC2D0 001C7F30 4B FF A8 B1 */ bl __va_arg -/* 801CC2D4 001C7F34 82 C3 00 00 */ lwz r22, 0(r3) -/* 801CC2D8 001C7F38 48 00 00 14 */ b lbl_801CC2EC -lbl_801CC2DC: -/* 801CC2DC 001C7F3C 7E 63 9B 78 */ mr r3, r19 -/* 801CC2E0 001C7F40 38 80 00 01 */ li r4, 1 -/* 801CC2E4 001C7F44 4B FF A8 9D */ bl __va_arg -/* 801CC2E8 001C7F48 82 C3 00 00 */ lwz r22, 0(r3) -lbl_801CC2EC: -/* 801CC2EC 001C7F4C 88 01 00 74 */ lbz r0, 0x74(r1) -/* 801CC2F0 001C7F50 28 00 00 02 */ cmplwi r0, 2 -/* 801CC2F4 001C7F54 40 82 00 08 */ bne lbl_801CC2FC -/* 801CC2F8 001C7F58 56 D6 04 3E */ clrlwi r22, r22, 0x10 -lbl_801CC2FC: -/* 801CC2FC 001C7F5C 28 00 00 01 */ cmplwi r0, 1 -/* 801CC300 001C7F60 40 82 00 08 */ bne lbl_801CC308 -/* 801CC304 001C7F64 56 D6 06 3E */ clrlwi r22, r22, 0x18 -lbl_801CC308: -/* 801CC308 001C7F68 28 00 00 04 */ cmplwi r0, 4 -/* 801CC30C 001C7F6C 41 82 00 0C */ beq lbl_801CC318 -/* 801CC310 001C7F70 28 00 00 06 */ cmplwi r0, 6 -/* 801CC314 001C7F74 40 82 00 48 */ bne lbl_801CC35C -lbl_801CC318: -/* 801CC318 001C7F78 81 21 00 70 */ lwz r9, 0x70(r1) -/* 801CC31C 001C7F7C 7E 84 A3 78 */ mr r4, r20 -/* 801CC320 001C7F80 81 01 00 74 */ lwz r8, 0x74(r1) -/* 801CC324 001C7F84 7E A3 AB 78 */ mr r3, r21 -/* 801CC328 001C7F88 80 E1 00 78 */ lwz r7, 0x78(r1) -/* 801CC32C 001C7F8C 38 A1 02 80 */ addi r5, r1, 0x280 -/* 801CC330 001C7F90 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 801CC334 001C7F94 38 C1 00 40 */ addi r6, r1, 0x40 -/* 801CC338 001C7F98 91 21 00 40 */ stw r9, 0x40(r1) -/* 801CC33C 001C7F9C 91 01 00 44 */ stw r8, 0x44(r1) -/* 801CC340 001C7FA0 90 E1 00 48 */ stw r7, 0x48(r1) -/* 801CC344 001C7FA4 90 01 00 4C */ stw r0, 0x4c(r1) -/* 801CC348 001C7FA8 4B FF EC 9D */ bl func_801CAFE4 -/* 801CC34C 001C7FAC 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC350 001C7FB0 7C 7A 1B 78 */ mr r26, r3 -/* 801CC354 001C7FB4 41 82 02 A8 */ beq lbl_801CC5FC -/* 801CC358 001C7FB8 48 00 00 40 */ b lbl_801CC398 -lbl_801CC35C: -/* 801CC35C 001C7FBC 81 01 00 70 */ lwz r8, 0x70(r1) -/* 801CC360 001C7FC0 7E C3 B3 78 */ mr r3, r22 -/* 801CC364 001C7FC4 80 E1 00 74 */ lwz r7, 0x74(r1) -/* 801CC368 001C7FC8 38 81 02 80 */ addi r4, r1, 0x280 -/* 801CC36C 001C7FCC 80 C1 00 78 */ lwz r6, 0x78(r1) -/* 801CC370 001C7FD0 38 A1 00 30 */ addi r5, r1, 0x30 -/* 801CC374 001C7FD4 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 801CC378 001C7FD8 91 01 00 30 */ stw r8, 0x30(r1) -/* 801CC37C 001C7FDC 90 E1 00 34 */ stw r7, 0x34(r1) -/* 801CC380 001C7FE0 90 C1 00 38 */ stw r6, 0x38(r1) -/* 801CC384 001C7FE4 90 01 00 3C */ stw r0, 0x3c(r1) -/* 801CC388 001C7FE8 4B FF EA 35 */ bl func_801CADBC -/* 801CC38C 001C7FEC 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC390 001C7FF0 7C 7A 1B 78 */ mr r26, r3 -/* 801CC394 001C7FF4 41 82 02 68 */ beq lbl_801CC5FC -lbl_801CC398: -/* 801CC398 001C7FF8 7F 7A E0 50 */ subf r27, r26, r28 -/* 801CC39C 001C7FFC 48 00 02 A4 */ b lbl_801CC640 -lbl_801CC3A0: -/* 801CC3A0 001C8000 88 01 00 74 */ lbz r0, 0x74(r1) -/* 801CC3A4 001C8004 28 00 00 09 */ cmplwi r0, 9 -/* 801CC3A8 001C8008 40 82 00 18 */ bne lbl_801CC3C0 -/* 801CC3AC 001C800C 7E 63 9B 78 */ mr r3, r19 -/* 801CC3B0 001C8010 38 80 00 03 */ li r4, 3 -/* 801CC3B4 001C8014 4B FF A7 CD */ bl __va_arg -/* 801CC3B8 001C8018 C8 23 00 00 */ lfd f1, 0(r3) -/* 801CC3BC 001C801C 48 00 00 14 */ b lbl_801CC3D0 -lbl_801CC3C0: -/* 801CC3C0 001C8020 7E 63 9B 78 */ mr r3, r19 -/* 801CC3C4 001C8024 38 80 00 03 */ li r4, 3 -/* 801CC3C8 001C8028 4B FF A7 B9 */ bl __va_arg -/* 801CC3CC 001C802C C8 23 00 00 */ lfd f1, 0(r3) -lbl_801CC3D0: -/* 801CC3D0 001C8030 80 E1 00 70 */ lwz r7, 0x70(r1) -/* 801CC3D4 001C8034 38 61 02 80 */ addi r3, r1, 0x280 -/* 801CC3D8 001C8038 80 C1 00 74 */ lwz r6, 0x74(r1) -/* 801CC3DC 001C803C 38 81 00 20 */ addi r4, r1, 0x20 -/* 801CC3E0 001C8040 80 A1 00 78 */ lwz r5, 0x78(r1) -/* 801CC3E4 001C8044 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 801CC3E8 001C8048 90 E1 00 20 */ stw r7, 0x20(r1) -/* 801CC3EC 001C804C 90 C1 00 24 */ stw r6, 0x24(r1) -/* 801CC3F0 001C8050 90 A1 00 28 */ stw r5, 0x28(r1) -/* 801CC3F4 001C8054 90 01 00 2C */ stw r0, 0x2c(r1) -/* 801CC3F8 001C8058 4B FF F3 7D */ bl func_801CB774 -/* 801CC3FC 001C805C 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC400 001C8060 7C 7A 1B 78 */ mr r26, r3 -/* 801CC404 001C8064 41 82 01 F8 */ beq lbl_801CC5FC -/* 801CC408 001C8068 7F 63 E0 50 */ subf r27, r3, r28 -/* 801CC40C 001C806C 48 00 02 34 */ b lbl_801CC640 -lbl_801CC410: -/* 801CC410 001C8070 88 01 00 74 */ lbz r0, 0x74(r1) -/* 801CC414 001C8074 28 00 00 09 */ cmplwi r0, 9 -/* 801CC418 001C8078 40 82 00 18 */ bne lbl_801CC430 -/* 801CC41C 001C807C 7E 63 9B 78 */ mr r3, r19 -/* 801CC420 001C8080 38 80 00 03 */ li r4, 3 -/* 801CC424 001C8084 4B FF A7 5D */ bl __va_arg -/* 801CC428 001C8088 C8 23 00 00 */ lfd f1, 0(r3) -/* 801CC42C 001C808C 48 00 00 14 */ b lbl_801CC440 -lbl_801CC430: -/* 801CC430 001C8090 7E 63 9B 78 */ mr r3, r19 -/* 801CC434 001C8094 38 80 00 03 */ li r4, 3 -/* 801CC438 001C8098 4B FF A7 49 */ bl __va_arg -/* 801CC43C 001C809C C8 23 00 00 */ lfd f1, 0(r3) -lbl_801CC440: -/* 801CC440 001C80A0 80 E1 00 70 */ lwz r7, 0x70(r1) -/* 801CC444 001C80A4 38 61 02 80 */ addi r3, r1, 0x280 -/* 801CC448 001C80A8 80 C1 00 74 */ lwz r6, 0x74(r1) -/* 801CC44C 001C80AC 38 81 00 10 */ addi r4, r1, 0x10 -/* 801CC450 001C80B0 80 A1 00 78 */ lwz r5, 0x78(r1) -/* 801CC454 001C80B4 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 801CC458 001C80B8 90 E1 00 10 */ stw r7, 0x10(r1) -/* 801CC45C 001C80BC 90 C1 00 14 */ stw r6, 0x14(r1) -/* 801CC460 001C80C0 90 A1 00 18 */ stw r5, 0x18(r1) -/* 801CC464 001C80C4 90 01 00 1C */ stw r0, 0x1c(r1) -/* 801CC468 001C80C8 4B FF EE 1D */ bl func_801CB284 -/* 801CC46C 001C80CC 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC470 001C80D0 7C 7A 1B 78 */ mr r26, r3 -/* 801CC474 001C80D4 41 82 01 88 */ beq lbl_801CC5FC -/* 801CC478 001C80D8 7F 63 E0 50 */ subf r27, r3, r28 -/* 801CC47C 001C80DC 48 00 01 C4 */ b lbl_801CC640 -lbl_801CC480: -/* 801CC480 001C80E0 88 01 00 74 */ lbz r0, 0x74(r1) -/* 801CC484 001C80E4 28 00 00 05 */ cmplwi r0, 5 -/* 801CC488 001C80E8 40 82 00 3C */ bne lbl_801CC4C4 -/* 801CC48C 001C80EC 7E 63 9B 78 */ mr r3, r19 -/* 801CC490 001C80F0 38 80 00 01 */ li r4, 1 -/* 801CC494 001C80F4 4B FF A6 ED */ bl __va_arg -/* 801CC498 001C80F8 80 83 00 00 */ lwz r4, 0(r3) -/* 801CC49C 001C80FC 2C 04 00 00 */ cmpwi r4, 0 -/* 801CC4A0 001C8100 40 82 00 08 */ bne lbl_801CC4A8 -/* 801CC4A4 001C8104 38 8D 83 E0 */ addi r4, r13, lbl_8063D6A0-_SDA_BASE_ -lbl_801CC4A8: -/* 801CC4A8 001C8108 38 61 00 80 */ addi r3, r1, 0x80 -/* 801CC4AC 001C810C 38 A0 02 00 */ li r5, 0x200 -/* 801CC4B0 001C8110 4B FF DD 0D */ bl func_801CA1BC -/* 801CC4B4 001C8114 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC4B8 001C8118 41 80 01 44 */ blt lbl_801CC5FC -/* 801CC4BC 001C811C 3B 41 00 80 */ addi r26, r1, 0x80 -/* 801CC4C0 001C8120 48 00 00 14 */ b lbl_801CC4D4 -lbl_801CC4C4: -/* 801CC4C4 001C8124 7E 63 9B 78 */ mr r3, r19 -/* 801CC4C8 001C8128 38 80 00 01 */ li r4, 1 -/* 801CC4CC 001C812C 4B FF A6 B5 */ bl __va_arg -/* 801CC4D0 001C8130 83 43 00 00 */ lwz r26, 0(r3) -lbl_801CC4D4: -/* 801CC4D4 001C8134 2C 1A 00 00 */ cmpwi r26, 0 -/* 801CC4D8 001C8138 40 82 00 08 */ bne lbl_801CC4E0 -/* 801CC4DC 001C813C 3B 5D 00 2A */ addi r26, r29, 0x2a -lbl_801CC4E0: -/* 801CC4E0 001C8140 88 01 00 73 */ lbz r0, 0x73(r1) -/* 801CC4E4 001C8144 2C 00 00 00 */ cmpwi r0, 0 -/* 801CC4E8 001C8148 41 82 00 2C */ beq lbl_801CC514 -/* 801CC4EC 001C814C 88 01 00 72 */ lbz r0, 0x72(r1) -/* 801CC4F0 001C8150 8B 7A 00 00 */ lbz r27, 0(r26) -/* 801CC4F4 001C8154 3B 5A 00 01 */ addi r26, r26, 1 -/* 801CC4F8 001C8158 2C 00 00 00 */ cmpwi r0, 0 -/* 801CC4FC 001C815C 41 82 01 44 */ beq lbl_801CC640 -/* 801CC500 001C8160 80 01 00 7C */ lwz r0, 0x7c(r1) -/* 801CC504 001C8164 7C 1B 00 00 */ cmpw r27, r0 -/* 801CC508 001C8168 40 81 01 38 */ ble lbl_801CC640 -/* 801CC50C 001C816C 7C 1B 03 78 */ mr r27, r0 -/* 801CC510 001C8170 48 00 01 30 */ b lbl_801CC640 -lbl_801CC514: -/* 801CC514 001C8174 88 01 00 72 */ lbz r0, 0x72(r1) -/* 801CC518 001C8178 2C 00 00 00 */ cmpwi r0, 0 -/* 801CC51C 001C817C 41 82 00 28 */ beq lbl_801CC544 -/* 801CC520 001C8180 83 61 00 7C */ lwz r27, 0x7c(r1) -/* 801CC524 001C8184 7F 43 D3 78 */ mr r3, r26 -/* 801CC528 001C8188 38 80 00 00 */ li r4, 0 -/* 801CC52C 001C818C 7F 65 DB 78 */ mr r5, r27 -/* 801CC530 001C8190 4B FF DE 11 */ bl memchr -/* 801CC534 001C8194 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC538 001C8198 41 82 01 08 */ beq lbl_801CC640 -/* 801CC53C 001C819C 7F 7A 18 50 */ subf r27, r26, r3 -/* 801CC540 001C81A0 48 00 01 00 */ b lbl_801CC640 -lbl_801CC544: -/* 801CC544 001C81A4 7F 43 D3 78 */ mr r3, r26 -/* 801CC548 001C81A8 4B FF A6 1D */ bl strlen -/* 801CC54C 001C81AC 7C 7B 1B 78 */ mr r27, r3 -/* 801CC550 001C81B0 48 00 00 F0 */ b lbl_801CC640 -lbl_801CC554: -/* 801CC554 001C81B4 7E 63 9B 78 */ mr r3, r19 -/* 801CC558 001C81B8 38 80 00 01 */ li r4, 1 -/* 801CC55C 001C81BC 4B FF A6 25 */ bl __va_arg -/* 801CC560 001C81C0 88 01 00 74 */ lbz r0, 0x74(r1) -/* 801CC564 001C81C4 80 83 00 00 */ lwz r4, 0(r3) -/* 801CC568 001C81C8 28 00 00 08 */ cmplwi r0, 8 -/* 801CC56C 001C81CC 41 81 02 10 */ bgt lbl_801CC77C -/* 801CC570 001C81D0 38 7E 2F BC */ addi r3, r30, 0x2fbc -/* 801CC574 001C81D4 54 00 10 3A */ slwi r0, r0, 2 -/* 801CC578 001C81D8 7C 63 00 2E */ lwzx r3, r3, r0 -/* 801CC57C 001C81DC 7C 69 03 A6 */ mtctr r3 -/* 801CC580 001C81E0 4E 80 04 20 */ bctr -/* 801CC584 001C81E4 93 24 00 00 */ stw r25, 0(r4) -/* 801CC588 001C81E8 48 00 01 F4 */ b lbl_801CC77C -/* 801CC58C 001C81EC B3 24 00 00 */ sth r25, 0(r4) -/* 801CC590 001C81F0 48 00 01 EC */ b lbl_801CC77C -/* 801CC594 001C81F4 93 24 00 00 */ stw r25, 0(r4) -/* 801CC598 001C81F8 48 00 01 E4 */ b lbl_801CC77C -/* 801CC59C 001C81FC 93 24 00 04 */ stw r25, 4(r4) -/* 801CC5A0 001C8200 7F 20 FE 70 */ srawi r0, r25, 0x1f -/* 801CC5A4 001C8204 90 04 00 00 */ stw r0, 0(r4) -/* 801CC5A8 001C8208 48 00 01 D4 */ b lbl_801CC77C -/* 801CC5AC 001C820C 93 24 00 00 */ stw r25, 0(r4) -/* 801CC5B0 001C8210 48 00 01 CC */ b lbl_801CC77C -/* 801CC5B4 001C8214 93 24 00 00 */ stw r25, 0(r4) -/* 801CC5B8 001C8218 48 00 01 C4 */ b lbl_801CC77C -/* 801CC5BC 001C821C 93 24 00 04 */ stw r25, 4(r4) -/* 801CC5C0 001C8220 7F 20 FE 70 */ srawi r0, r25, 0x1f -/* 801CC5C4 001C8224 90 04 00 00 */ stw r0, 0(r4) -/* 801CC5C8 001C8228 48 00 01 B4 */ b lbl_801CC77C -lbl_801CC5CC: -/* 801CC5CC 001C822C 7E 63 9B 78 */ mr r3, r19 -/* 801CC5D0 001C8230 3B 41 00 80 */ addi r26, r1, 0x80 -/* 801CC5D4 001C8234 38 80 00 01 */ li r4, 1 -/* 801CC5D8 001C8238 4B FF A5 A9 */ bl __va_arg -/* 801CC5DC 001C823C 80 03 00 00 */ lwz r0, 0(r3) -/* 801CC5E0 001C8240 3B 60 00 01 */ li r27, 1 -/* 801CC5E4 001C8244 98 01 00 80 */ stb r0, 0x80(r1) -/* 801CC5E8 001C8248 48 00 00 58 */ b lbl_801CC640 -lbl_801CC5EC: -/* 801CC5EC 001C824C 9B E1 00 80 */ stb r31, 0x80(r1) -/* 801CC5F0 001C8250 3B 41 00 80 */ addi r26, r1, 0x80 -/* 801CC5F4 001C8254 3B 60 00 01 */ li r27, 1 -/* 801CC5F8 001C8258 48 00 00 48 */ b lbl_801CC640 -lbl_801CC5FC: -/* 801CC5FC 001C825C 7F 03 C3 78 */ mr r3, r24 -/* 801CC600 001C8260 4B FF A5 65 */ bl strlen -/* 801CC604 001C8264 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC608 001C8268 7C 65 1B 78 */ mr r5, r3 -/* 801CC60C 001C826C 7F 39 1A 14 */ add r25, r25, r3 -/* 801CC610 001C8270 41 82 00 28 */ beq lbl_801CC638 -/* 801CC614 001C8274 7E 2C 8B 78 */ mr r12, r17 -/* 801CC618 001C8278 7E 43 93 78 */ mr r3, r18 -/* 801CC61C 001C827C 7F 04 C3 78 */ mr r4, r24 -/* 801CC620 001C8280 7D 89 03 A6 */ mtctr r12 -/* 801CC624 001C8284 4E 80 04 21 */ bctrl -/* 801CC628 001C8288 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC62C 001C828C 40 82 00 0C */ bne lbl_801CC638 -/* 801CC630 001C8290 38 60 FF FF */ li r3, -1 -/* 801CC634 001C8294 48 00 01 58 */ b lbl_801CC78C -lbl_801CC638: -/* 801CC638 001C8298 7F 23 CB 78 */ mr r3, r25 -/* 801CC63C 001C829C 48 00 01 50 */ b lbl_801CC78C -lbl_801CC640: -/* 801CC640 001C82A0 88 01 00 70 */ lbz r0, 0x70(r1) -/* 801CC644 001C82A4 7F 78 DB 78 */ mr r24, r27 -/* 801CC648 001C82A8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CC64C 001C82AC 41 82 00 B0 */ beq lbl_801CC6FC -/* 801CC650 001C82B0 28 00 00 02 */ cmplwi r0, 2 -/* 801CC654 001C82B4 38 60 00 20 */ li r3, 0x20 -/* 801CC658 001C82B8 40 82 00 08 */ bne lbl_801CC660 -/* 801CC65C 001C82BC 38 60 00 30 */ li r3, 0x30 -lbl_801CC660: -/* 801CC660 001C82C0 98 61 00 09 */ stb r3, 9(r1) -/* 801CC664 001C82C4 88 1A 00 00 */ lbz r0, 0(r26) -/* 801CC668 001C82C8 7C 00 07 74 */ extsb r0, r0 -/* 801CC66C 001C82CC 2C 00 00 2B */ cmpwi r0, 0x2b -/* 801CC670 001C82D0 41 82 00 14 */ beq lbl_801CC684 -/* 801CC674 001C82D4 2C 00 00 2D */ cmpwi r0, 0x2d -/* 801CC678 001C82D8 41 82 00 0C */ beq lbl_801CC684 -/* 801CC67C 001C82DC 2C 00 00 20 */ cmpwi r0, 0x20 -/* 801CC680 001C82E0 40 82 00 70 */ bne lbl_801CC6F0 -lbl_801CC684: -/* 801CC684 001C82E4 7C 60 07 74 */ extsb r0, r3 -/* 801CC688 001C82E8 2C 00 00 30 */ cmpwi r0, 0x30 -/* 801CC68C 001C82EC 40 82 00 64 */ bne lbl_801CC6F0 -/* 801CC690 001C82F0 7E 2C 8B 78 */ mr r12, r17 -/* 801CC694 001C82F4 7E 43 93 78 */ mr r3, r18 -/* 801CC698 001C82F8 7F 44 D3 78 */ mr r4, r26 -/* 801CC69C 001C82FC 38 A0 00 01 */ li r5, 1 -/* 801CC6A0 001C8300 7D 89 03 A6 */ mtctr r12 -/* 801CC6A4 001C8304 4E 80 04 21 */ bctrl -/* 801CC6A8 001C8308 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC6AC 001C830C 40 82 00 0C */ bne lbl_801CC6B8 -/* 801CC6B0 001C8310 38 60 FF FF */ li r3, -1 -/* 801CC6B4 001C8314 48 00 00 D8 */ b lbl_801CC78C -lbl_801CC6B8: -/* 801CC6B8 001C8318 3B 5A 00 01 */ addi r26, r26, 1 -/* 801CC6BC 001C831C 3B 7B FF FF */ addi r27, r27, -1 -/* 801CC6C0 001C8320 48 00 00 30 */ b lbl_801CC6F0 -lbl_801CC6C4: -/* 801CC6C4 001C8324 7E 2C 8B 78 */ mr r12, r17 -/* 801CC6C8 001C8328 7E 43 93 78 */ mr r3, r18 -/* 801CC6CC 001C832C 38 81 00 09 */ addi r4, r1, 9 -/* 801CC6D0 001C8330 38 A0 00 01 */ li r5, 1 -/* 801CC6D4 001C8334 7D 89 03 A6 */ mtctr r12 -/* 801CC6D8 001C8338 4E 80 04 21 */ bctrl -/* 801CC6DC 001C833C 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC6E0 001C8340 40 82 00 0C */ bne lbl_801CC6EC -/* 801CC6E4 001C8344 38 60 FF FF */ li r3, -1 -/* 801CC6E8 001C8348 48 00 00 A4 */ b lbl_801CC78C -lbl_801CC6EC: -/* 801CC6EC 001C834C 3B 18 00 01 */ addi r24, r24, 1 -lbl_801CC6F0: -/* 801CC6F0 001C8350 80 01 00 78 */ lwz r0, 0x78(r1) -/* 801CC6F4 001C8354 7C 18 00 00 */ cmpw r24, r0 -/* 801CC6F8 001C8358 41 80 FF CC */ blt lbl_801CC6C4 -lbl_801CC6FC: -/* 801CC6FC 001C835C 2C 1B 00 00 */ cmpwi r27, 0 -/* 801CC700 001C8360 41 82 00 2C */ beq lbl_801CC72C -/* 801CC704 001C8364 7E 2C 8B 78 */ mr r12, r17 -/* 801CC708 001C8368 7E 43 93 78 */ mr r3, r18 -/* 801CC70C 001C836C 7F 44 D3 78 */ mr r4, r26 -/* 801CC710 001C8370 7F 65 DB 78 */ mr r5, r27 -/* 801CC714 001C8374 7D 89 03 A6 */ mtctr r12 -/* 801CC718 001C8378 4E 80 04 21 */ bctrl -/* 801CC71C 001C837C 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC720 001C8380 40 82 00 0C */ bne lbl_801CC72C -/* 801CC724 001C8384 38 60 FF FF */ li r3, -1 -/* 801CC728 001C8388 48 00 00 64 */ b lbl_801CC78C -lbl_801CC72C: -/* 801CC72C 001C838C 88 01 00 70 */ lbz r0, 0x70(r1) -/* 801CC730 001C8390 2C 00 00 00 */ cmpwi r0, 0 -/* 801CC734 001C8394 40 82 00 44 */ bne lbl_801CC778 -/* 801CC738 001C8398 48 00 00 34 */ b lbl_801CC76C -lbl_801CC73C: -/* 801CC73C 001C839C 7E 2C 8B 78 */ mr r12, r17 -/* 801CC740 001C83A0 7E 43 93 78 */ mr r3, r18 -/* 801CC744 001C83A4 9A 01 00 08 */ stb r16, 8(r1) -/* 801CC748 001C83A8 38 81 00 08 */ addi r4, r1, 8 -/* 801CC74C 001C83AC 38 A0 00 01 */ li r5, 1 -/* 801CC750 001C83B0 7D 89 03 A6 */ mtctr r12 -/* 801CC754 001C83B4 4E 80 04 21 */ bctrl -/* 801CC758 001C83B8 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC75C 001C83BC 40 82 00 0C */ bne lbl_801CC768 -/* 801CC760 001C83C0 38 60 FF FF */ li r3, -1 -/* 801CC764 001C83C4 48 00 00 28 */ b lbl_801CC78C -lbl_801CC768: -/* 801CC768 001C83C8 3B 18 00 01 */ addi r24, r24, 1 -lbl_801CC76C: -/* 801CC76C 001C83CC 80 01 00 78 */ lwz r0, 0x78(r1) -/* 801CC770 001C83D0 7C 18 00 00 */ cmpw r24, r0 -/* 801CC774 001C83D4 41 80 FF C8 */ blt lbl_801CC73C -lbl_801CC778: -/* 801CC778 001C83D8 7F 39 C2 14 */ add r25, r25, r24 -lbl_801CC77C: -/* 801CC77C 001C83DC 88 17 00 00 */ lbz r0, 0(r23) -/* 801CC780 001C83E0 7C 00 07 75 */ extsb. r0, r0 -/* 801CC784 001C83E4 40 82 F8 04 */ bne lbl_801CBF88 -lbl_801CC788: -/* 801CC788 001C83E8 7F 23 CB 78 */ mr r3, r25 -lbl_801CC78C: -/* 801CC78C 001C83EC BA 01 02 80 */ lmw r16, 0x280(r1) -/* 801CC790 001C83F0 80 01 02 C4 */ lwz r0, 0x2c4(r1) -/* 801CC794 001C83F4 7C 08 03 A6 */ mtlr r0 -/* 801CC798 001C83F8 38 21 02 C0 */ addi r1, r1, 0x2c0 -/* 801CC79C 001C83FC 4E 80 00 20 */ blr -lbl_801CC7A0: -/* 801CC7A0 001C8400 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801CC7A4 001C8404 7C 08 02 A6 */ mflr r0 -/* 801CC7A8 001C8408 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CC7AC 001C840C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801CC7B0 001C8410 7C BF 2B 78 */ mr r31, r5 -/* 801CC7B4 001C8414 93 C1 00 08 */ stw r30, 8(r1) -/* 801CC7B8 001C8418 7C 7E 1B 78 */ mr r30, r3 -/* 801CC7BC 001C841C 7C 83 23 78 */ mr r3, r4 -/* 801CC7C0 001C8420 38 80 00 01 */ li r4, 1 -/* 801CC7C4 001C8424 7F C6 F3 78 */ mr r6, r30 -/* 801CC7C8 001C8428 4B FF D1 01 */ bl func_801C98C8 -/* 801CC7CC 001C842C 7C 1F 18 40 */ cmplw r31, r3 -/* 801CC7D0 001C8430 40 82 00 08 */ bne lbl_801CC7D8 -/* 801CC7D4 001C8434 48 00 00 08 */ b lbl_801CC7DC -lbl_801CC7D8: -/* 801CC7D8 001C8438 3B C0 00 00 */ li r30, 0 -lbl_801CC7DC: -/* 801CC7DC 001C843C 7F C3 F3 78 */ mr r3, r30 -/* 801CC7E0 001C8440 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801CC7E4 001C8444 83 C1 00 08 */ lwz r30, 8(r1) -/* 801CC7E8 001C8448 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801CC7EC 001C844C 7C 08 03 A6 */ mtlr r0 -/* 801CC7F0 001C8450 38 21 00 10 */ addi r1, r1, 0x10 -/* 801CC7F4 001C8454 4E 80 00 20 */ blr -lbl_801CC7F8: -/* 801CC7F8 001C8458 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 801CC7FC 001C845C 7C 08 02 A6 */ mflr r0 -/* 801CC800 001C8460 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CC804 001C8464 93 E1 00 0C */ stw r31, 0xc(r1) -/* 801CC808 001C8468 93 C1 00 08 */ stw r30, 8(r1) -/* 801CC80C 001C846C 7C 7E 1B 78 */ mr r30, r3 -/* 801CC810 001C8470 80 C3 00 08 */ lwz r6, 8(r3) -/* 801CC814 001C8474 80 E3 00 04 */ lwz r7, 4(r3) -/* 801CC818 001C8478 7C 06 2A 14 */ add r0, r6, r5 -/* 801CC81C 001C847C 7C 00 38 40 */ cmplw r0, r7 -/* 801CC820 001C8480 7F E6 38 50 */ subf r31, r6, r7 -/* 801CC824 001C8484 41 81 00 08 */ bgt lbl_801CC82C -/* 801CC828 001C8488 7C BF 2B 78 */ mr r31, r5 -lbl_801CC82C: -/* 801CC82C 001C848C 80 03 00 00 */ lwz r0, 0(r3) -/* 801CC830 001C8490 7F E5 FB 78 */ mr r5, r31 -/* 801CC834 001C8494 7C 60 32 14 */ add r3, r0, r6 -/* 801CC838 001C8498 4B E3 77 C9 */ bl memcpy -/* 801CC83C 001C849C 80 1E 00 08 */ lwz r0, 8(r30) -/* 801CC840 001C84A0 38 60 00 01 */ li r3, 1 -/* 801CC844 001C84A4 7C 00 FA 14 */ add r0, r0, r31 -/* 801CC848 001C84A8 90 1E 00 08 */ stw r0, 8(r30) -/* 801CC84C 001C84AC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 801CC850 001C84B0 83 C1 00 08 */ lwz r30, 8(r1) -/* 801CC854 001C84B4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 801CC858 001C84B8 7C 08 03 A6 */ mtlr r0 -/* 801CC85C 001C84BC 38 21 00 10 */ addi r1, r1, 0x10 -/* 801CC860 001C84C0 4E 80 00 20 */ blr - -.global func_801CC864 -func_801CC864: -/* 801CC864 001C84C4 94 21 FF 80 */ stwu r1, -0x80(r1) -/* 801CC868 001C84C8 7C 08 02 A6 */ mflr r0 -/* 801CC86C 001C84CC 90 01 00 84 */ stw r0, 0x84(r1) -/* 801CC870 001C84D0 93 E1 00 7C */ stw r31, 0x7c(r1) -/* 801CC874 001C84D4 93 C1 00 78 */ stw r30, 0x78(r1) -/* 801CC878 001C84D8 7C 7E 1B 78 */ mr r30, r3 -/* 801CC87C 001C84DC 40 86 00 24 */ bne cr1, lbl_801CC8A0 -/* 801CC880 001C84E0 D8 21 00 28 */ stfd f1, 0x28(r1) -/* 801CC884 001C84E4 D8 41 00 30 */ stfd f2, 0x30(r1) -/* 801CC888 001C84E8 D8 61 00 38 */ stfd f3, 0x38(r1) -/* 801CC88C 001C84EC D8 81 00 40 */ stfd f4, 0x40(r1) -/* 801CC890 001C84F0 D8 A1 00 48 */ stfd f5, 0x48(r1) -/* 801CC894 001C84F4 D8 C1 00 50 */ stfd f6, 0x50(r1) -/* 801CC898 001C84F8 D8 E1 00 58 */ stfd f7, 0x58(r1) -/* 801CC89C 001C84FC D9 01 00 60 */ stfd f8, 0x60(r1) -lbl_801CC8A0: -/* 801CC8A0 001C8500 3F E0 80 42 */ lis r31, lbl_804228F0@ha -/* 801CC8A4 001C8504 90 81 00 0C */ stw r4, 0xc(r1) -/* 801CC8A8 001C8508 3B FF 28 F0 */ addi r31, r31, lbl_804228F0@l -/* 801CC8AC 001C850C 38 80 FF FF */ li r4, -1 -/* 801CC8B0 001C8510 90 61 00 08 */ stw r3, 8(r1) -/* 801CC8B4 001C8514 38 7F 00 50 */ addi r3, r31, 0x50 -/* 801CC8B8 001C8518 90 A1 00 10 */ stw r5, 0x10(r1) -/* 801CC8BC 001C851C 90 C1 00 14 */ stw r6, 0x14(r1) -/* 801CC8C0 001C8520 90 E1 00 18 */ stw r7, 0x18(r1) -/* 801CC8C4 001C8524 91 01 00 1C */ stw r8, 0x1c(r1) -/* 801CC8C8 001C8528 91 21 00 20 */ stw r9, 0x20(r1) -/* 801CC8CC 001C852C 91 41 00 24 */ stw r10, 0x24(r1) -/* 801CC8D0 001C8530 48 00 3F 95 */ bl func_801D0864 -/* 801CC8D4 001C8534 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC8D8 001C8538 41 80 00 0C */ blt lbl_801CC8E4 -/* 801CC8DC 001C853C 38 60 FF FF */ li r3, -1 -/* 801CC8E0 001C8540 48 00 00 34 */ b lbl_801CC914 -lbl_801CC8E4: -/* 801CC8E4 001C8544 38 81 00 88 */ addi r4, r1, 0x88 -/* 801CC8E8 001C8548 38 01 00 08 */ addi r0, r1, 8 -/* 801CC8EC 001C854C 3C A0 01 00 */ lis r5, 0x100 -/* 801CC8F0 001C8550 3C 60 80 1D */ lis r3, lbl_801CC7A0@ha -/* 801CC8F4 001C8554 90 A1 00 68 */ stw r5, 0x68(r1) -/* 801CC8F8 001C8558 38 C1 00 68 */ addi r6, r1, 0x68 -/* 801CC8FC 001C855C 7F C5 F3 78 */ mr r5, r30 -/* 801CC900 001C8560 38 63 C7 A0 */ addi r3, r3, lbl_801CC7A0@l -/* 801CC904 001C8564 90 81 00 6C */ stw r4, 0x6c(r1) -/* 801CC908 001C8568 38 9F 00 50 */ addi r4, r31, 0x50 -/* 801CC90C 001C856C 90 01 00 70 */ stw r0, 0x70(r1) -/* 801CC910 001C8570 4B FF F6 35 */ bl func_801CBF44 -lbl_801CC914: -/* 801CC914 001C8574 80 01 00 84 */ lwz r0, 0x84(r1) -/* 801CC918 001C8578 83 E1 00 7C */ lwz r31, 0x7c(r1) -/* 801CC91C 001C857C 83 C1 00 78 */ lwz r30, 0x78(r1) -/* 801CC920 001C8580 7C 08 03 A6 */ mtlr r0 -/* 801CC924 001C8584 38 21 00 80 */ addi r1, r1, 0x80 -/* 801CC928 001C8588 4E 80 00 20 */ blr - -.global func_801CC92C -func_801CC92C: -/* 801CC92C 001C858C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 801CC930 001C8590 7C 08 02 A6 */ mflr r0 -/* 801CC934 001C8594 90 01 00 24 */ stw r0, 0x24(r1) -/* 801CC938 001C8598 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 801CC93C 001C859C 3F E0 80 42 */ lis r31, lbl_804228F0@ha -/* 801CC940 001C85A0 3B FF 28 F0 */ addi r31, r31, lbl_804228F0@l -/* 801CC944 001C85A4 93 C1 00 18 */ stw r30, 0x18(r1) -/* 801CC948 001C85A8 7C 9E 23 78 */ mr r30, r4 -/* 801CC94C 001C85AC 38 80 FF FF */ li r4, -1 -/* 801CC950 001C85B0 93 A1 00 14 */ stw r29, 0x14(r1) -/* 801CC954 001C85B4 7C 7D 1B 78 */ mr r29, r3 -/* 801CC958 001C85B8 38 7F 00 50 */ addi r3, r31, 0x50 -/* 801CC95C 001C85BC 48 00 3F 09 */ bl func_801D0864 -/* 801CC960 001C85C0 2C 03 00 00 */ cmpwi r3, 0 -/* 801CC964 001C85C4 41 80 00 0C */ blt lbl_801CC970 -/* 801CC968 001C85C8 38 60 FF FF */ li r3, -1 -/* 801CC96C 001C85CC 48 00 00 1C */ b lbl_801CC988 -lbl_801CC970: -/* 801CC970 001C85D0 3C 60 80 1D */ lis r3, lbl_801CC7A0@ha -/* 801CC974 001C85D4 7F A5 EB 78 */ mr r5, r29 -/* 801CC978 001C85D8 7F C6 F3 78 */ mr r6, r30 -/* 801CC97C 001C85DC 38 9F 00 50 */ addi r4, r31, 0x50 -/* 801CC980 001C85E0 38 63 C7 A0 */ addi r3, r3, lbl_801CC7A0@l -/* 801CC984 001C85E4 4B FF F5 C1 */ bl func_801CBF44 -lbl_801CC988: -/* 801CC988 001C85E8 80 01 00 24 */ lwz r0, 0x24(r1) -/* 801CC98C 001C85EC 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 801CC990 001C85F0 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 801CC994 001C85F4 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 801CC998 001C85F8 7C 08 03 A6 */ mtlr r0 -/* 801CC99C 001C85FC 38 21 00 20 */ addi r1, r1, 0x20 -/* 801CC9A0 001C8600 4E 80 00 20 */ blr - -.global func_801CC9A4 -func_801CC9A4: -/* 801CC9A4 001C8604 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801CC9A8 001C8608 7C 08 02 A6 */ mflr r0 -/* 801CC9AC 001C860C 7C A6 2B 78 */ mr r6, r5 -/* 801CC9B0 001C8610 7C 85 23 78 */ mr r5, r4 -/* 801CC9B4 001C8614 90 01 00 34 */ stw r0, 0x34(r1) -/* 801CC9B8 001C8618 3C E0 80 1D */ lis r7, lbl_801CC7F8@ha -/* 801CC9BC 001C861C 38 81 00 08 */ addi r4, r1, 8 -/* 801CC9C0 001C8620 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 801CC9C4 001C8624 3B E0 00 00 */ li r31, 0 -/* 801CC9C8 001C8628 93 C1 00 28 */ stw r30, 0x28(r1) -/* 801CC9CC 001C862C 3B C0 FF FF */ li r30, -1 -/* 801CC9D0 001C8630 93 A1 00 24 */ stw r29, 0x24(r1) -/* 801CC9D4 001C8634 7C 7D 1B 78 */ mr r29, r3 -/* 801CC9D8 001C8638 90 61 00 08 */ stw r3, 8(r1) -/* 801CC9DC 001C863C 38 67 C7 F8 */ addi r3, r7, lbl_801CC7F8@l -/* 801CC9E0 001C8640 93 C1 00 0C */ stw r30, 0xc(r1) -/* 801CC9E4 001C8644 93 E1 00 10 */ stw r31, 0x10(r1) -/* 801CC9E8 001C8648 4B FF F5 5D */ bl func_801CBF44 -/* 801CC9EC 001C864C 2C 1D 00 00 */ cmpwi r29, 0 -/* 801CC9F0 001C8650 41 82 00 18 */ beq lbl_801CCA08 -/* 801CC9F4 001C8654 7C 03 F0 40 */ cmplw r3, r30 -/* 801CC9F8 001C8658 40 80 00 0C */ bge lbl_801CCA04 -/* 801CC9FC 001C865C 7F FD 19 AE */ stbx r31, r29, r3 -/* 801CCA00 001C8660 48 00 00 08 */ b lbl_801CCA08 -lbl_801CCA04: -/* 801CCA04 001C8664 9B FD FF FE */ stb r31, -2(r29) -lbl_801CCA08: -/* 801CCA08 001C8668 80 01 00 34 */ lwz r0, 0x34(r1) -/* 801CCA0C 001C866C 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 801CCA10 001C8670 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 801CCA14 001C8674 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 801CCA18 001C8678 7C 08 03 A6 */ mtlr r0 -/* 801CCA1C 001C867C 38 21 00 30 */ addi r1, r1, 0x30 -/* 801CCA20 001C8680 4E 80 00 20 */ blr - -.global func_801CCA24 -func_801CCA24: -/* 801CCA24 001C8684 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 801CCA28 001C8688 7C 08 02 A6 */ mflr r0 -/* 801CCA2C 001C868C 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 801CCA30 001C8690 BF 61 00 8C */ stmw r27, 0x8c(r1) -/* 801CCA34 001C8694 7C 7B 1B 78 */ mr r27, r3 -/* 801CCA38 001C8698 7C 9C 23 78 */ mr r28, r4 -/* 801CCA3C 001C869C 40 86 00 24 */ bne cr1, lbl_801CCA60 -/* 801CCA40 001C86A0 D8 21 00 28 */ stfd f1, 0x28(r1) -/* 801CCA44 001C86A4 D8 41 00 30 */ stfd f2, 0x30(r1) -/* 801CCA48 001C86A8 D8 61 00 38 */ stfd f3, 0x38(r1) -/* 801CCA4C 001C86AC D8 81 00 40 */ stfd f4, 0x40(r1) -/* 801CCA50 001C86B0 D8 A1 00 48 */ stfd f5, 0x48(r1) -/* 801CCA54 001C86B4 D8 C1 00 50 */ stfd f6, 0x50(r1) -/* 801CCA58 001C86B8 D8 E1 00 58 */ stfd f7, 0x58(r1) -/* 801CCA5C 001C86BC D9 01 00 60 */ stfd f8, 0x60(r1) -lbl_801CCA60: -/* 801CCA60 001C86C0 39 81 00 A8 */ addi r12, r1, 0xa8 -/* 801CCA64 001C86C4 38 01 00 08 */ addi r0, r1, 8 -/* 801CCA68 001C86C8 3F C0 03 00 */ lis r30, 0x300 -/* 801CCA6C 001C86CC 3B E0 00 00 */ li r31, 0 -/* 801CCA70 001C86D0 90 A1 00 10 */ stw r5, 0x10(r1) -/* 801CCA74 001C86D4 3B A1 00 74 */ addi r29, r1, 0x74 -/* 801CCA78 001C86D8 3D 60 80 1D */ lis r11, lbl_801CC7F8@ha -/* 801CCA7C 001C86DC 90 C1 00 14 */ stw r6, 0x14(r1) -/* 801CCA80 001C86E0 7F A6 EB 78 */ mr r6, r29 -/* 801CCA84 001C86E4 90 61 00 08 */ stw r3, 8(r1) -/* 801CCA88 001C86E8 90 61 00 68 */ stw r3, 0x68(r1) -/* 801CCA8C 001C86EC 38 6B C7 F8 */ addi r3, r11, lbl_801CC7F8@l -/* 801CCA90 001C86F0 90 81 00 0C */ stw r4, 0xc(r1) -/* 801CCA94 001C86F4 90 81 00 6C */ stw r4, 0x6c(r1) -/* 801CCA98 001C86F8 38 81 00 68 */ addi r4, r1, 0x68 -/* 801CCA9C 001C86FC 90 E1 00 18 */ stw r7, 0x18(r1) -/* 801CCAA0 001C8700 91 01 00 1C */ stw r8, 0x1c(r1) -/* 801CCAA4 001C8704 91 21 00 20 */ stw r9, 0x20(r1) -/* 801CCAA8 001C8708 91 41 00 24 */ stw r10, 0x24(r1) -/* 801CCAAC 001C870C 93 C1 00 74 */ stw r30, 0x74(r1) -/* 801CCAB0 001C8710 91 81 00 78 */ stw r12, 0x78(r1) -/* 801CCAB4 001C8714 90 01 00 7C */ stw r0, 0x7c(r1) -/* 801CCAB8 001C8718 93 E1 00 70 */ stw r31, 0x70(r1) -/* 801CCABC 001C871C 4B FF F4 89 */ bl func_801CBF44 -/* 801CCAC0 001C8720 2C 1B 00 00 */ cmpwi r27, 0 -/* 801CCAC4 001C8724 41 82 00 24 */ beq lbl_801CCAE8 -/* 801CCAC8 001C8728 7C 03 E0 40 */ cmplw r3, r28 -/* 801CCACC 001C872C 40 80 00 0C */ bge lbl_801CCAD8 -/* 801CCAD0 001C8730 7F FB 19 AE */ stbx r31, r27, r3 -/* 801CCAD4 001C8734 48 00 00 14 */ b lbl_801CCAE8 -lbl_801CCAD8: -/* 801CCAD8 001C8738 2C 1C 00 00 */ cmpwi r28, 0 -/* 801CCADC 001C873C 41 82 00 0C */ beq lbl_801CCAE8 -/* 801CCAE0 001C8740 7C 9B E2 14 */ add r4, r27, r28 -/* 801CCAE4 001C8744 9B E4 FF FF */ stb r31, -1(r4) -lbl_801CCAE8: -/* 801CCAE8 001C8748 BB 61 00 8C */ lmw r27, 0x8c(r1) -/* 801CCAEC 001C874C 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 801CCAF0 001C8750 7C 08 03 A6 */ mtlr r0 -/* 801CCAF4 001C8754 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 801CCAF8 001C8758 4E 80 00 20 */ blr - -.global func_801CCAFC -func_801CCAFC: -/* 801CCAFC 001C875C 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 801CCB00 001C8760 7C 08 02 A6 */ mflr r0 -/* 801CCB04 001C8764 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 801CCB08 001C8768 BF 61 00 8C */ stmw r27, 0x8c(r1) -/* 801CCB0C 001C876C 7C 7B 1B 78 */ mr r27, r3 -/* 801CCB10 001C8770 40 86 00 24 */ bne cr1, lbl_801CCB34 -/* 801CCB14 001C8774 D8 21 00 28 */ stfd f1, 0x28(r1) -/* 801CCB18 001C8778 D8 41 00 30 */ stfd f2, 0x30(r1) -/* 801CCB1C 001C877C D8 61 00 38 */ stfd f3, 0x38(r1) -/* 801CCB20 001C8780 D8 81 00 40 */ stfd f4, 0x40(r1) -/* 801CCB24 001C8784 D8 A1 00 48 */ stfd f5, 0x48(r1) -/* 801CCB28 001C8788 D8 C1 00 50 */ stfd f6, 0x50(r1) -/* 801CCB2C 001C878C D8 E1 00 58 */ stfd f7, 0x58(r1) -/* 801CCB30 001C8790 D9 01 00 60 */ stfd f8, 0x60(r1) -lbl_801CCB34: -/* 801CCB34 001C8794 39 81 00 A8 */ addi r12, r1, 0xa8 -/* 801CCB38 001C8798 38 01 00 08 */ addi r0, r1, 8 -/* 801CCB3C 001C879C 3F A0 02 00 */ lis r29, 0x200 -/* 801CCB40 001C87A0 3B C0 FF FF */ li r30, -1 -/* 801CCB44 001C87A4 3B E0 00 00 */ li r31, 0 -/* 801CCB48 001C87A8 90 A1 00 10 */ stw r5, 0x10(r1) -/* 801CCB4C 001C87AC 3B 81 00 74 */ addi r28, r1, 0x74 -/* 801CCB50 001C87B0 3D 60 80 1D */ lis r11, lbl_801CC7F8@ha -/* 801CCB54 001C87B4 90 C1 00 14 */ stw r6, 0x14(r1) -/* 801CCB58 001C87B8 7C 85 23 78 */ mr r5, r4 -/* 801CCB5C 001C87BC 7F 86 E3 78 */ mr r6, r28 -/* 801CCB60 001C87C0 90 81 00 0C */ stw r4, 0xc(r1) -/* 801CCB64 001C87C4 38 81 00 68 */ addi r4, r1, 0x68 -/* 801CCB68 001C87C8 90 61 00 08 */ stw r3, 8(r1) -/* 801CCB6C 001C87CC 90 61 00 68 */ stw r3, 0x68(r1) -/* 801CCB70 001C87D0 38 6B C7 F8 */ addi r3, r11, lbl_801CC7F8@l -/* 801CCB74 001C87D4 90 E1 00 18 */ stw r7, 0x18(r1) -/* 801CCB78 001C87D8 91 01 00 1C */ stw r8, 0x1c(r1) -/* 801CCB7C 001C87DC 91 21 00 20 */ stw r9, 0x20(r1) -/* 801CCB80 001C87E0 91 41 00 24 */ stw r10, 0x24(r1) -/* 801CCB84 001C87E4 93 A1 00 74 */ stw r29, 0x74(r1) -/* 801CCB88 001C87E8 91 81 00 78 */ stw r12, 0x78(r1) -/* 801CCB8C 001C87EC 90 01 00 7C */ stw r0, 0x7c(r1) -/* 801CCB90 001C87F0 93 C1 00 6C */ stw r30, 0x6c(r1) -/* 801CCB94 001C87F4 93 E1 00 70 */ stw r31, 0x70(r1) -/* 801CCB98 001C87F8 4B FF F3 AD */ bl func_801CBF44 -/* 801CCB9C 001C87FC 2C 1B 00 00 */ cmpwi r27, 0 -/* 801CCBA0 001C8800 41 82 00 18 */ beq lbl_801CCBB8 -/* 801CCBA4 001C8804 7C 03 F0 40 */ cmplw r3, r30 -/* 801CCBA8 001C8808 40 80 00 0C */ bge lbl_801CCBB4 -/* 801CCBAC 001C880C 7F FB 19 AE */ stbx r31, r27, r3 -/* 801CCBB0 001C8810 48 00 00 08 */ b lbl_801CCBB8 -lbl_801CCBB4: -/* 801CCBB4 001C8814 9B FB FF FE */ stb r31, -2(r27) -lbl_801CCBB8: -/* 801CCBB8 001C8818 BB 61 00 8C */ lmw r27, 0x8c(r1) -/* 801CCBBC 001C881C 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 801CCBC0 001C8820 7C 08 03 A6 */ mtlr r0 -/* 801CCBC4 001C8824 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 801CCBC8 001C8828 4E 80 00 20 */ blr - -.global qsort -qsort: -/* 801CCBCC 001C882C 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 801CCBD0 001C8830 7C 08 02 A6 */ mflr r0 -/* 801CCBD4 001C8834 28 04 00 02 */ cmplwi r4, 2 -/* 801CCBD8 001C8838 90 01 00 44 */ stw r0, 0x44(r1) -/* 801CCBDC 001C883C BE 61 00 0C */ stmw r19, 0xc(r1) -/* 801CCBE0 001C8840 7C 7B 1B 78 */ mr r27, r3 -/* 801CCBE4 001C8844 7C BC 2B 78 */ mr r28, r5 -/* 801CCBE8 001C8848 7C DD 33 78 */ mr r29, r6 -/* 801CCBEC 001C884C 41 80 01 3C */ blt lbl_801CCD28 -/* 801CCBF0 001C8850 54 87 F8 7E */ srwi r7, r4, 1 -/* 801CCBF4 001C8854 54 A0 08 3C */ slwi r0, r5, 1 -/* 801CCBF8 001C8858 3B E7 00 01 */ addi r31, r7, 1 -/* 801CCBFC 001C885C 38 C4 FF FF */ addi r6, r4, -1 -/* 801CCC00 001C8860 38 FF FF FF */ addi r7, r31, -1 -/* 801CCC04 001C8864 7C 9E 23 78 */ mr r30, r4 -/* 801CCC08 001C8868 7C 85 39 D6 */ mullw r4, r5, r7 -/* 801CCC0C 001C886C 7F 20 28 50 */ subf r25, r0, r5 -/* 801CCC10 001C8870 7C 05 31 D6 */ mullw r0, r5, r6 -/* 801CCC14 001C8874 7E E3 22 14 */ add r23, r3, r4 -/* 801CCC18 001C8878 7F 5F 29 D6 */ mullw r26, r31, r5 -/* 801CCC1C 001C887C 7E C3 02 14 */ add r22, r3, r0 -lbl_801CCC20: -/* 801CCC20 001C8880 28 1F 00 01 */ cmplwi r31, 1 -/* 801CCC24 001C8884 40 81 00 14 */ ble lbl_801CCC38 -/* 801CCC28 001C8888 7F 5C D0 50 */ subf r26, r28, r26 -/* 801CCC2C 001C888C 7E FC B8 50 */ subf r23, r28, r23 -/* 801CCC30 001C8890 3B FF FF FF */ addi r31, r31, -1 -/* 801CCC34 001C8894 48 00 00 40 */ b lbl_801CCC74 -lbl_801CCC38: -/* 801CCC38 001C8898 38 76 FF FF */ addi r3, r22, -1 -/* 801CCC3C 001C889C 38 97 FF FF */ addi r4, r23, -1 -/* 801CCC40 001C88A0 38 BC 00 01 */ addi r5, r28, 1 -/* 801CCC44 001C88A4 48 00 00 18 */ b lbl_801CCC5C -lbl_801CCC48: -/* 801CCC48 001C88A8 88 C4 00 01 */ lbz r6, 1(r4) -/* 801CCC4C 001C88AC 88 03 00 01 */ lbz r0, 1(r3) -/* 801CCC50 001C88B0 7C C6 07 74 */ extsb r6, r6 -/* 801CCC54 001C88B4 9C 04 00 01 */ stbu r0, 1(r4) -/* 801CCC58 001C88B8 9C C3 00 01 */ stbu r6, 1(r3) -lbl_801CCC5C: -/* 801CCC5C 001C88BC 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CCC60 001C88C0 40 82 FF E8 */ bne lbl_801CCC48 -/* 801CCC64 001C88C4 3B DE FF FF */ addi r30, r30, -1 -/* 801CCC68 001C88C8 28 1E 00 01 */ cmplwi r30, 1 -/* 801CCC6C 001C88CC 41 82 00 BC */ beq lbl_801CCD28 -/* 801CCC70 001C88D0 7E DC B0 50 */ subf r22, r28, r22 -lbl_801CCC74: -/* 801CCC74 001C88D4 7C 1A CA 14 */ add r0, r26, r25 -/* 801CCC78 001C88D8 7F F8 FB 78 */ mr r24, r31 -/* 801CCC7C 001C88DC 7E 9B 02 14 */ add r20, r27, r0 -/* 801CCC80 001C88E0 48 00 00 98 */ b lbl_801CCD18 -lbl_801CCC84: -/* 801CCC84 001C88E4 57 18 08 3C */ slwi r24, r24, 1 -/* 801CCC88 001C88E8 7E 95 A3 78 */ mr r21, r20 -/* 801CCC8C 001C88EC 38 18 FF FF */ addi r0, r24, -1 -/* 801CCC90 001C88F0 7C 1C 01 D6 */ mullw r0, r28, r0 -/* 801CCC94 001C88F4 7C 18 F0 40 */ cmplw r24, r30 -/* 801CCC98 001C88F8 7E 9B 02 14 */ add r20, r27, r0 -/* 801CCC9C 001C88FC 40 80 00 2C */ bge lbl_801CCCC8 -/* 801CCCA0 001C8900 7E 74 E2 14 */ add r19, r20, r28 -/* 801CCCA4 001C8904 7F AC EB 78 */ mr r12, r29 -/* 801CCCA8 001C8908 7E 83 A3 78 */ mr r3, r20 -/* 801CCCAC 001C890C 7E 64 9B 78 */ mr r4, r19 -/* 801CCCB0 001C8910 7D 89 03 A6 */ mtctr r12 -/* 801CCCB4 001C8914 4E 80 04 21 */ bctrl -/* 801CCCB8 001C8918 2C 03 00 00 */ cmpwi r3, 0 -/* 801CCCBC 001C891C 40 80 00 0C */ bge lbl_801CCCC8 -/* 801CCCC0 001C8920 7E 74 9B 78 */ mr r20, r19 -/* 801CCCC4 001C8924 3B 18 00 01 */ addi r24, r24, 1 -lbl_801CCCC8: -/* 801CCCC8 001C8928 7F AC EB 78 */ mr r12, r29 -/* 801CCCCC 001C892C 7E A3 AB 78 */ mr r3, r21 -/* 801CCCD0 001C8930 7E 84 A3 78 */ mr r4, r20 -/* 801CCCD4 001C8934 7D 89 03 A6 */ mtctr r12 -/* 801CCCD8 001C8938 4E 80 04 21 */ bctrl -/* 801CCCDC 001C893C 2C 03 00 00 */ cmpwi r3, 0 -/* 801CCCE0 001C8940 40 80 FF 40 */ bge lbl_801CCC20 -/* 801CCCE4 001C8944 38 74 FF FF */ addi r3, r20, -1 -/* 801CCCE8 001C8948 38 95 FF FF */ addi r4, r21, -1 -/* 801CCCEC 001C894C 38 BC 00 01 */ addi r5, r28, 1 -/* 801CCCF0 001C8950 48 00 00 20 */ b lbl_801CCD10 -lbl_801CCCF4: -/* 801CCCF4 001C8954 88 C4 00 01 */ lbz r6, 1(r4) -/* 801CCCF8 001C8958 88 03 00 01 */ lbz r0, 1(r3) -/* 801CCCFC 001C895C 7C C6 07 74 */ extsb r6, r6 -/* 801CCD00 001C8960 98 04 00 01 */ stb r0, 1(r4) -/* 801CCD04 001C8964 38 84 00 01 */ addi r4, r4, 1 -/* 801CCD08 001C8968 98 C3 00 01 */ stb r6, 1(r3) -/* 801CCD0C 001C896C 38 63 00 01 */ addi r3, r3, 1 -lbl_801CCD10: -/* 801CCD10 001C8970 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CCD14 001C8974 40 82 FF E0 */ bne lbl_801CCCF4 -lbl_801CCD18: -/* 801CCD18 001C8978 57 00 08 3C */ slwi r0, r24, 1 -/* 801CCD1C 001C897C 7C 00 F0 40 */ cmplw r0, r30 -/* 801CCD20 001C8980 40 81 FF 64 */ ble lbl_801CCC84 -/* 801CCD24 001C8984 4B FF FE FC */ b lbl_801CCC20 -lbl_801CCD28: -/* 801CCD28 001C8988 BA 61 00 0C */ lmw r19, 0xc(r1) -/* 801CCD2C 001C898C 80 01 00 44 */ lwz r0, 0x44(r1) -/* 801CCD30 001C8990 7C 08 03 A6 */ mtlr r0 -/* 801CCD34 001C8994 38 21 00 40 */ addi r1, r1, 0x40 -/* 801CCD38 001C8998 4E 80 00 20 */ blr - -.global func_801CCD3C -func_801CCD3C: -/* 801CCD3C 001C899C 3C 60 41 C6 */ lis r3, 0x41C64E6D@ha -/* 801CCD40 001C89A0 80 8D 83 E8 */ lwz r4, lbl_8063D6A8-_SDA_BASE_(r13) -/* 801CCD44 001C89A4 38 03 4E 6D */ addi r0, r3, 0x41C64E6D@l -/* 801CCD48 001C89A8 7C 64 01 D6 */ mullw r3, r4, r0 -/* 801CCD4C 001C89AC 38 03 30 39 */ addi r0, r3, 0x3039 -/* 801CCD50 001C89B0 90 0D 83 E8 */ stw r0, lbl_8063D6A8-_SDA_BASE_(r13) -/* 801CCD54 001C89B4 54 03 84 7E */ rlwinm r3, r0, 0x10, 0x11, 0x1f -/* 801CCD58 001C89B8 4E 80 00 20 */ blr - -.global func_801CCD5C -func_801CCD5C: -/* 801CCD5C 001C89BC 90 6D 83 E8 */ stw r3, lbl_8063D6A8-_SDA_BASE_(r13) -/* 801CCD60 001C89C0 4E 80 00 20 */ blr - -.global func_801CCD64 -func_801CCD64: -/* 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 func_801CD418 -func_801CD418: -/* 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 func_801CCD64 -/* 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 func_801CA13C -/* 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 func_801CA13C -/* 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 -lbl_801CE178: -/* 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 func_801CE208 -func_801CE208: -/* 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, lbl_801CE178@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, lbl_801CE178@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 func_801CD418 -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 - -.global func_801CE2D0 -func_801CE2D0: -/* 801CE2D0 001C9F30 54 60 07 BE */ clrlwi r0, r3, 0x1e -/* 801CE2D4 001C9F34 54 85 07 BE */ clrlwi r5, r4, 0x1e -/* 801CE2D8 001C9F38 7C 00 28 40 */ cmplw r0, r5 -/* 801CE2DC 001C9F3C 7C 67 1B 78 */ mr r7, r3 -/* 801CE2E0 001C9F40 40 82 00 8C */ bne lbl_801CE36C -/* 801CE2E4 001C9F44 2C 05 00 00 */ cmpwi r5, 0 -/* 801CE2E8 001C9F48 41 82 00 40 */ beq lbl_801CE328 -/* 801CE2EC 001C9F4C 88 04 00 00 */ lbz r0, 0(r4) -/* 801CE2F0 001C9F50 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE2F4 001C9F54 98 03 00 00 */ stb r0, 0(r3) -/* 801CE2F8 001C9F58 4D 82 00 20 */ beqlr -/* 801CE2FC 001C9F5C 20 05 00 03 */ subfic r0, r5, 3 -/* 801CE300 001C9F60 7C 09 03 A6 */ mtctr r0 -/* 801CE304 001C9F64 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE308 001C9F68 41 82 00 18 */ beq lbl_801CE320 -lbl_801CE30C: -/* 801CE30C 001C9F6C 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CE310 001C9F70 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE314 001C9F74 9C 07 00 01 */ stbu r0, 1(r7) -/* 801CE318 001C9F78 4D 82 00 20 */ beqlr -/* 801CE31C 001C9F7C 42 00 FF F0 */ bdnz lbl_801CE30C -lbl_801CE320: -/* 801CE320 001C9F80 38 E7 00 01 */ addi r7, r7, 1 -/* 801CE324 001C9F84 38 84 00 01 */ addi r4, r4, 1 -lbl_801CE328: -/* 801CE328 001C9F88 81 04 00 00 */ lwz r8, 0(r4) -/* 801CE32C 001C9F8C 3C A0 80 81 */ lis r5, 0x80808080@ha -/* 801CE330 001C9F90 38 A5 80 80 */ addi r5, r5, 0x80808080@l -/* 801CE334 001C9F94 3C C8 FE FF */ addis r6, r8, 0xfeff -/* 801CE338 001C9F98 38 C6 FE FF */ addi r6, r6, -257 -/* 801CE33C 001C9F9C 7C C6 40 78 */ andc r6, r6, r8 -/* 801CE340 001C9FA0 7C C0 28 39 */ and. r0, r6, r5 -/* 801CE344 001C9FA4 40 82 00 28 */ bne lbl_801CE36C -/* 801CE348 001C9FA8 38 E7 FF FC */ addi r7, r7, -4 -lbl_801CE34C: -/* 801CE34C 001C9FAC 95 07 00 04 */ stwu r8, 4(r7) -/* 801CE350 001C9FB0 85 04 00 04 */ lwzu r8, 4(r4) -/* 801CE354 001C9FB4 3C C8 FE FF */ addis r6, r8, 0xfeff -/* 801CE358 001C9FB8 38 C6 FE FF */ addi r6, r6, -257 -/* 801CE35C 001C9FBC 7C C6 40 78 */ andc r6, r6, r8 -/* 801CE360 001C9FC0 7C C0 28 39 */ and. r0, r6, r5 -/* 801CE364 001C9FC4 41 82 FF E8 */ beq lbl_801CE34C -/* 801CE368 001C9FC8 38 E7 00 04 */ addi r7, r7, 4 -lbl_801CE36C: -/* 801CE36C 001C9FCC 88 04 00 00 */ lbz r0, 0(r4) -/* 801CE370 001C9FD0 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE374 001C9FD4 98 07 00 00 */ stb r0, 0(r7) -/* 801CE378 001C9FD8 4D 82 00 20 */ beqlr -lbl_801CE37C: -/* 801CE37C 001C9FDC 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CE380 001C9FE0 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE384 001C9FE4 9C 07 00 01 */ stbu r0, 1(r7) -/* 801CE388 001C9FE8 40 82 FF F4 */ bne lbl_801CE37C -/* 801CE38C 001C9FEC 4E 80 00 20 */ blr - -.global func_801CE390 -func_801CE390: -/* 801CE390 001C9FF0 38 84 FF FF */ addi r4, r4, -1 -/* 801CE394 001C9FF4 38 C3 FF FF */ addi r6, r3, -1 -/* 801CE398 001C9FF8 38 A5 00 01 */ addi r5, r5, 1 -/* 801CE39C 001C9FFC 48 00 00 2C */ b lbl_801CE3C8 -lbl_801CE3A0: -/* 801CE3A0 001CA000 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CE3A4 001CA004 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE3A8 001CA008 9C 06 00 01 */ stbu r0, 1(r6) -/* 801CE3AC 001CA00C 40 82 00 1C */ bne lbl_801CE3C8 -/* 801CE3B0 001CA010 38 00 00 00 */ li r0, 0 -/* 801CE3B4 001CA014 48 00 00 08 */ b lbl_801CE3BC -lbl_801CE3B8: -/* 801CE3B8 001CA018 9C 06 00 01 */ stbu r0, 1(r6) -lbl_801CE3BC: -/* 801CE3BC 001CA01C 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CE3C0 001CA020 40 82 FF F8 */ bne lbl_801CE3B8 -/* 801CE3C4 001CA024 4E 80 00 20 */ blr -lbl_801CE3C8: -/* 801CE3C8 001CA028 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CE3CC 001CA02C 40 82 FF D4 */ bne lbl_801CE3A0 -/* 801CE3D0 001CA030 4E 80 00 20 */ blr - -.global func_801CE3D4 -func_801CE3D4: -/* 801CE3D4 001CA034 38 84 FF FF */ addi r4, r4, -1 -/* 801CE3D8 001CA038 38 A3 FF FF */ addi r5, r3, -1 -lbl_801CE3DC: -/* 801CE3DC 001CA03C 8C 05 00 01 */ lbzu r0, 1(r5) -/* 801CE3E0 001CA040 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE3E4 001CA044 40 82 FF F8 */ bne lbl_801CE3DC -/* 801CE3E8 001CA048 38 A5 FF FF */ addi r5, r5, -1 -lbl_801CE3EC: -/* 801CE3EC 001CA04C 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CE3F0 001CA050 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE3F4 001CA054 9C 05 00 01 */ stbu r0, 1(r5) -/* 801CE3F8 001CA058 40 82 FF F4 */ bne lbl_801CE3EC -/* 801CE3FC 001CA05C 4E 80 00 20 */ blr - -.global func_801CE400 -func_801CE400: -/* 801CE400 001CA060 38 84 FF FF */ addi r4, r4, -1 -/* 801CE404 001CA064 38 C3 FF FF */ addi r6, r3, -1 -lbl_801CE408: -/* 801CE408 001CA068 8C 06 00 01 */ lbzu r0, 1(r6) -/* 801CE40C 001CA06C 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE410 001CA070 40 82 FF F8 */ bne lbl_801CE408 -/* 801CE414 001CA074 38 C6 FF FF */ addi r6, r6, -1 -/* 801CE418 001CA078 38 A5 00 01 */ addi r5, r5, 1 -/* 801CE41C 001CA07C 48 00 00 1C */ b lbl_801CE438 -lbl_801CE420: -/* 801CE420 001CA080 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CE424 001CA084 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE428 001CA088 9C 06 00 01 */ stbu r0, 1(r6) -/* 801CE42C 001CA08C 40 82 00 0C */ bne lbl_801CE438 -/* 801CE430 001CA090 38 C6 FF FF */ addi r6, r6, -1 -/* 801CE434 001CA094 48 00 00 0C */ b lbl_801CE440 -lbl_801CE438: -/* 801CE438 001CA098 34 A5 FF FF */ addic. r5, r5, -1 -/* 801CE43C 001CA09C 40 82 FF E4 */ bne lbl_801CE420 -lbl_801CE440: -/* 801CE440 001CA0A0 38 00 00 00 */ li r0, 0 -/* 801CE444 001CA0A4 98 06 00 01 */ stb r0, 1(r6) -/* 801CE448 001CA0A8 4E 80 00 20 */ blr - -.global func_801CE44C -func_801CE44C: -/* 801CE44C 001CA0AC 88 A3 00 00 */ lbz r5, 0(r3) -/* 801CE450 001CA0B0 88 04 00 00 */ lbz r0, 0(r4) -/* 801CE454 001CA0B4 7C 00 28 51 */ subf. r0, r0, r5 -/* 801CE458 001CA0B8 41 82 00 0C */ beq lbl_801CE464 -/* 801CE45C 001CA0BC 7C 03 03 78 */ mr r3, r0 -/* 801CE460 001CA0C0 4E 80 00 20 */ blr -lbl_801CE464: -/* 801CE464 001CA0C4 54 80 07 BE */ clrlwi r0, r4, 0x1e -/* 801CE468 001CA0C8 54 66 07 BE */ clrlwi r6, r3, 0x1e -/* 801CE46C 001CA0CC 7C 00 30 40 */ cmplw r0, r6 -/* 801CE470 001CA0D0 40 82 00 C0 */ bne lbl_801CE530 -/* 801CE474 001CA0D4 2C 06 00 00 */ cmpwi r6, 0 -/* 801CE478 001CA0D8 41 82 00 58 */ beq lbl_801CE4D0 -/* 801CE47C 001CA0DC 2C 05 00 00 */ cmpwi r5, 0 -/* 801CE480 001CA0E0 40 82 00 0C */ bne lbl_801CE48C -/* 801CE484 001CA0E4 38 60 00 00 */ li r3, 0 -/* 801CE488 001CA0E8 4E 80 00 20 */ blr -lbl_801CE48C: -/* 801CE48C 001CA0EC 20 06 00 03 */ subfic r0, r6, 3 -/* 801CE490 001CA0F0 7C 09 03 A6 */ mtctr r0 -/* 801CE494 001CA0F4 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE498 001CA0F8 41 82 00 30 */ beq lbl_801CE4C8 -lbl_801CE49C: -/* 801CE49C 001CA0FC 8C A3 00 01 */ lbzu r5, 1(r3) -/* 801CE4A0 001CA100 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CE4A4 001CA104 7C 00 28 51 */ subf. r0, r0, r5 -/* 801CE4A8 001CA108 41 82 00 0C */ beq lbl_801CE4B4 -/* 801CE4AC 001CA10C 7C 03 03 78 */ mr r3, r0 -/* 801CE4B0 001CA110 4E 80 00 20 */ blr -lbl_801CE4B4: -/* 801CE4B4 001CA114 2C 05 00 00 */ cmpwi r5, 0 -/* 801CE4B8 001CA118 40 82 00 0C */ bne lbl_801CE4C4 -/* 801CE4BC 001CA11C 38 60 00 00 */ li r3, 0 -/* 801CE4C0 001CA120 4E 80 00 20 */ blr -lbl_801CE4C4: -/* 801CE4C4 001CA124 42 00 FF D8 */ bdnz lbl_801CE49C -lbl_801CE4C8: -/* 801CE4C8 001CA128 38 63 00 01 */ addi r3, r3, 1 -/* 801CE4CC 001CA12C 38 84 00 01 */ addi r4, r4, 1 -lbl_801CE4D0: -/* 801CE4D0 001CA130 80 E3 00 00 */ lwz r7, 0(r3) -/* 801CE4D4 001CA134 3C A0 80 81 */ lis r5, 0x80808080@ha -/* 801CE4D8 001CA138 38 C5 80 80 */ addi r6, r5, 0x80808080@l -/* 801CE4DC 001CA13C 81 04 00 00 */ lwz r8, 0(r4) -/* 801CE4E0 001CA140 3C A7 FE FF */ addis r5, r7, 0xfeff -/* 801CE4E4 001CA144 38 A5 FE FF */ addi r5, r5, -257 -/* 801CE4E8 001CA148 7C A5 38 78 */ andc r5, r5, r7 -/* 801CE4EC 001CA14C 7C A0 30 39 */ and. r0, r5, r6 -/* 801CE4F0 001CA150 40 82 00 28 */ bne lbl_801CE518 -/* 801CE4F4 001CA154 48 00 00 1C */ b lbl_801CE510 -lbl_801CE4F8: -/* 801CE4F8 001CA158 84 E3 00 04 */ lwzu r7, 4(r3) -/* 801CE4FC 001CA15C 85 04 00 04 */ lwzu r8, 4(r4) -/* 801CE500 001CA160 3C A7 FE FF */ addis r5, r7, 0xfeff -/* 801CE504 001CA164 38 05 FE FF */ addi r0, r5, -257 -/* 801CE508 001CA168 7C 00 30 39 */ and. r0, r0, r6 -/* 801CE50C 001CA16C 40 82 00 0C */ bne lbl_801CE518 -lbl_801CE510: -/* 801CE510 001CA170 7C 07 40 40 */ cmplw r7, r8 -/* 801CE514 001CA174 41 82 FF E4 */ beq lbl_801CE4F8 -lbl_801CE518: -/* 801CE518 001CA178 88 A3 00 00 */ lbz r5, 0(r3) -/* 801CE51C 001CA17C 88 04 00 00 */ lbz r0, 0(r4) -/* 801CE520 001CA180 7C 00 28 51 */ subf. r0, r0, r5 -/* 801CE524 001CA184 41 82 00 0C */ beq lbl_801CE530 -/* 801CE528 001CA188 7C 03 03 78 */ mr r3, r0 -/* 801CE52C 001CA18C 4E 80 00 20 */ blr -lbl_801CE530: -/* 801CE530 001CA190 2C 05 00 00 */ cmpwi r5, 0 -/* 801CE534 001CA194 40 82 00 0C */ bne lbl_801CE540 -/* 801CE538 001CA198 38 60 00 00 */ li r3, 0 -/* 801CE53C 001CA19C 4E 80 00 20 */ blr -lbl_801CE540: -/* 801CE540 001CA1A0 8C A3 00 01 */ lbzu r5, 1(r3) -/* 801CE544 001CA1A4 8C 04 00 01 */ lbzu r0, 1(r4) -/* 801CE548 001CA1A8 7C 00 28 51 */ subf. r0, r0, r5 -/* 801CE54C 001CA1AC 41 82 00 0C */ beq lbl_801CE558 -/* 801CE550 001CA1B0 7C 03 03 78 */ mr r3, r0 -/* 801CE554 001CA1B4 4E 80 00 20 */ blr -lbl_801CE558: -/* 801CE558 001CA1B8 2C 05 00 00 */ cmpwi r5, 0 -/* 801CE55C 001CA1BC 40 82 FF E4 */ bne lbl_801CE540 -/* 801CE560 001CA1C0 38 60 00 00 */ li r3, 0 -/* 801CE564 001CA1C4 4E 80 00 20 */ blr - -.global func_801CE568 -func_801CE568: -/* 801CE568 001CA1C8 38 63 FF FF */ addi r3, r3, -1 -/* 801CE56C 001CA1CC 38 84 FF FF */ addi r4, r4, -1 -/* 801CE570 001CA1D0 38 C5 00 01 */ addi r6, r5, 1 -/* 801CE574 001CA1D4 48 00 00 24 */ b lbl_801CE598 -lbl_801CE578: -/* 801CE578 001CA1D8 8C 03 00 01 */ lbzu r0, 1(r3) -/* 801CE57C 001CA1DC 8C A4 00 01 */ lbzu r5, 1(r4) -/* 801CE580 001CA1E0 7C 00 28 40 */ cmplw r0, r5 -/* 801CE584 001CA1E4 41 82 00 0C */ beq lbl_801CE590 -/* 801CE588 001CA1E8 7C 65 00 50 */ subf r3, r5, r0 -/* 801CE58C 001CA1EC 4E 80 00 20 */ blr -lbl_801CE590: -/* 801CE590 001CA1F0 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE594 001CA1F4 41 82 00 0C */ beq lbl_801CE5A0 -lbl_801CE598: -/* 801CE598 001CA1F8 34 C6 FF FF */ addic. r6, r6, -1 -/* 801CE59C 001CA1FC 40 82 FF DC */ bne lbl_801CE578 -lbl_801CE5A0: -/* 801CE5A0 001CA200 38 60 00 00 */ li r3, 0 -/* 801CE5A4 001CA204 4E 80 00 20 */ blr - -.global func_801CE5A8 -func_801CE5A8: -/* 801CE5A8 001CA208 38 63 FF FF */ addi r3, r3, -1 -/* 801CE5AC 001CA20C 54 80 06 3E */ clrlwi r0, r4, 0x18 -/* 801CE5B0 001CA210 48 00 00 0C */ b lbl_801CE5BC -lbl_801CE5B4: -/* 801CE5B4 001CA214 7C 04 00 40 */ cmplw r4, r0 -/* 801CE5B8 001CA218 4D 82 00 20 */ beqlr -lbl_801CE5BC: -/* 801CE5BC 001CA21C 8C 83 00 01 */ lbzu r4, 1(r3) -/* 801CE5C0 001CA220 2C 04 00 00 */ cmpwi r4, 0 -/* 801CE5C4 001CA224 40 82 FF F0 */ bne lbl_801CE5B4 -/* 801CE5C8 001CA228 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE5CC 001CA22C 4D 82 00 20 */ beqlr -/* 801CE5D0 001CA230 38 60 00 00 */ li r3, 0 -/* 801CE5D4 001CA234 4E 80 00 20 */ blr - -.global func_801CE5D8 -func_801CE5D8: -/* 801CE5D8 001CA238 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801CE5DC 001CA23C 38 00 00 00 */ li r0, 0 -/* 801CE5E0 001CA240 39 04 FF FF */ addi r8, r4, -1 -/* 801CE5E4 001CA244 38 80 00 01 */ li r4, 1 -/* 801CE5E8 001CA248 90 01 00 08 */ stw r0, 8(r1) -/* 801CE5EC 001CA24C 38 C1 00 08 */ addi r6, r1, 8 -/* 801CE5F0 001CA250 90 01 00 0C */ stw r0, 0xc(r1) -/* 801CE5F4 001CA254 90 01 00 10 */ stw r0, 0x10(r1) -/* 801CE5F8 001CA258 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CE5FC 001CA25C 90 01 00 18 */ stw r0, 0x18(r1) -/* 801CE600 001CA260 90 01 00 1C */ stw r0, 0x1c(r1) -/* 801CE604 001CA264 90 01 00 20 */ stw r0, 0x20(r1) -/* 801CE608 001CA268 90 01 00 24 */ stw r0, 0x24(r1) -/* 801CE60C 001CA26C 48 00 00 20 */ b lbl_801CE62C -lbl_801CE610: -/* 801CE610 001CA270 54 07 EE FE */ rlwinm r7, r0, 0x1d, 0x1b, 0x1f -/* 801CE614 001CA274 54 00 07 7E */ clrlwi r0, r0, 0x1d -/* 801CE618 001CA278 7C 80 00 30 */ slw r0, r4, r0 -/* 801CE61C 001CA27C 7C A6 38 AE */ lbzx r5, r6, r7 -/* 801CE620 001CA280 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 801CE624 001CA284 7C A0 03 78 */ or r0, r5, r0 -/* 801CE628 001CA288 7C 06 39 AE */ stbx r0, r6, r7 -lbl_801CE62C: -/* 801CE62C 001CA28C 8C 08 00 01 */ lbzu r0, 1(r8) -/* 801CE630 001CA290 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE634 001CA294 40 82 FF DC */ bne lbl_801CE610 -/* 801CE638 001CA298 38 E3 FF FF */ addi r7, r3, -1 -/* 801CE63C 001CA29C 38 C1 00 08 */ addi r6, r1, 8 -/* 801CE640 001CA2A0 38 80 00 01 */ li r4, 1 -/* 801CE644 001CA2A4 48 00 00 20 */ b lbl_801CE664 -lbl_801CE648: -/* 801CE648 001CA2A8 54 05 EE FE */ rlwinm r5, r0, 0x1d, 0x1b, 0x1f -/* 801CE64C 001CA2AC 54 00 07 7E */ clrlwi r0, r0, 0x1d -/* 801CE650 001CA2B0 7C 80 00 30 */ slw r0, r4, r0 -/* 801CE654 001CA2B4 7C A6 28 AE */ lbzx r5, r6, r5 -/* 801CE658 001CA2B8 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 801CE65C 001CA2BC 7C A0 00 39 */ and. r0, r5, r0 -/* 801CE660 001CA2C0 40 82 00 10 */ bne lbl_801CE670 -lbl_801CE664: -/* 801CE664 001CA2C4 8C 07 00 01 */ lbzu r0, 1(r7) -/* 801CE668 001CA2C8 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE66C 001CA2CC 40 82 FF DC */ bne lbl_801CE648 -lbl_801CE670: -/* 801CE670 001CA2D0 7C 63 38 50 */ subf r3, r3, r7 -/* 801CE674 001CA2D4 38 21 00 30 */ addi r1, r1, 0x30 -/* 801CE678 001CA2D8 4E 80 00 20 */ blr - -.global func_801CE67C -func_801CE67C: -/* 801CE67C 001CA2DC 94 21 FF D0 */ stwu r1, -0x30(r1) -/* 801CE680 001CA2E0 38 00 00 00 */ li r0, 0 -/* 801CE684 001CA2E4 2C 03 00 00 */ cmpwi r3, 0 -/* 801CE688 001CA2E8 90 01 00 08 */ stw r0, 8(r1) -/* 801CE68C 001CA2EC 90 01 00 0C */ stw r0, 0xc(r1) -/* 801CE690 001CA2F0 90 01 00 10 */ stw r0, 0x10(r1) -/* 801CE694 001CA2F4 90 01 00 14 */ stw r0, 0x14(r1) -/* 801CE698 001CA2F8 90 01 00 18 */ stw r0, 0x18(r1) -/* 801CE69C 001CA2FC 90 01 00 1C */ stw r0, 0x1c(r1) -/* 801CE6A0 001CA300 90 01 00 20 */ stw r0, 0x20(r1) -/* 801CE6A4 001CA304 90 01 00 24 */ stw r0, 0x24(r1) -/* 801CE6A8 001CA308 41 82 00 08 */ beq lbl_801CE6B0 -/* 801CE6AC 001CA30C 90 6D 83 F4 */ stw r3, lbl_8063D6B4-_SDA_BASE_(r13) -lbl_801CE6B0: -/* 801CE6B0 001CA310 38 E4 FF FF */ addi r7, r4, -1 -/* 801CE6B4 001CA314 38 A1 00 08 */ addi r5, r1, 8 -/* 801CE6B8 001CA318 38 60 00 01 */ li r3, 1 -/* 801CE6BC 001CA31C 48 00 00 20 */ b lbl_801CE6DC -lbl_801CE6C0: -/* 801CE6C0 001CA320 54 06 EE FE */ rlwinm r6, r0, 0x1d, 0x1b, 0x1f -/* 801CE6C4 001CA324 54 00 07 7E */ clrlwi r0, r0, 0x1d -/* 801CE6C8 001CA328 7C 60 00 30 */ slw r0, r3, r0 -/* 801CE6CC 001CA32C 7C 85 30 AE */ lbzx r4, r5, r6 -/* 801CE6D0 001CA330 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 801CE6D4 001CA334 7C 80 03 78 */ or r0, r4, r0 -/* 801CE6D8 001CA338 7C 05 31 AE */ stbx r0, r5, r6 -lbl_801CE6DC: -/* 801CE6DC 001CA33C 8C 07 00 01 */ lbzu r0, 1(r7) -/* 801CE6E0 001CA340 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE6E4 001CA344 40 82 FF DC */ bne lbl_801CE6C0 -/* 801CE6E8 001CA348 80 8D 83 F4 */ lwz r4, lbl_8063D6B4-_SDA_BASE_(r13) -/* 801CE6EC 001CA34C 38 A1 00 08 */ addi r5, r1, 8 -/* 801CE6F0 001CA350 38 60 00 01 */ li r3, 1 -/* 801CE6F4 001CA354 38 E4 FF FF */ addi r7, r4, -1 -/* 801CE6F8 001CA358 48 00 00 20 */ b lbl_801CE718 -lbl_801CE6FC: -/* 801CE6FC 001CA35C 54 C4 EE FE */ rlwinm r4, r6, 0x1d, 0x1b, 0x1f -/* 801CE700 001CA360 54 C0 07 7E */ clrlwi r0, r6, 0x1d -/* 801CE704 001CA364 7C 60 00 30 */ slw r0, r3, r0 -/* 801CE708 001CA368 7C 85 20 AE */ lbzx r4, r5, r4 -/* 801CE70C 001CA36C 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 801CE710 001CA370 7C 80 00 39 */ and. r0, r4, r0 -/* 801CE714 001CA374 41 82 00 10 */ beq lbl_801CE724 -lbl_801CE718: -/* 801CE718 001CA378 8C C7 00 01 */ lbzu r6, 1(r7) -/* 801CE71C 001CA37C 2C 06 00 00 */ cmpwi r6, 0 -/* 801CE720 001CA380 40 82 FF DC */ bne lbl_801CE6FC -lbl_801CE724: -/* 801CE724 001CA384 2C 06 00 00 */ cmpwi r6, 0 -/* 801CE728 001CA388 40 82 00 14 */ bne lbl_801CE73C -/* 801CE72C 001CA38C 80 0D 83 F0 */ lwz r0, lbl_8063D6B0-_SDA_BASE_(r13) -/* 801CE730 001CA390 38 60 00 00 */ li r3, 0 -/* 801CE734 001CA394 90 0D 83 F4 */ stw r0, lbl_8063D6B4-_SDA_BASE_(r13) -/* 801CE738 001CA398 48 00 00 60 */ b lbl_801CE798 -lbl_801CE73C: -/* 801CE73C 001CA39C 7C E3 3B 78 */ mr r3, r7 -/* 801CE740 001CA3A0 38 C1 00 08 */ addi r6, r1, 8 -/* 801CE744 001CA3A4 38 80 00 01 */ li r4, 1 -/* 801CE748 001CA3A8 48 00 00 20 */ b lbl_801CE768 -lbl_801CE74C: -/* 801CE74C 001CA3AC 55 05 EE FE */ rlwinm r5, r8, 0x1d, 0x1b, 0x1f -/* 801CE750 001CA3B0 55 00 07 7E */ clrlwi r0, r8, 0x1d -/* 801CE754 001CA3B4 7C 80 00 30 */ slw r0, r4, r0 -/* 801CE758 001CA3B8 7C A6 28 AE */ lbzx r5, r6, r5 -/* 801CE75C 001CA3BC 54 00 06 3E */ clrlwi r0, r0, 0x18 -/* 801CE760 001CA3C0 7C A0 00 39 */ and. r0, r5, r0 -/* 801CE764 001CA3C4 40 82 00 10 */ bne lbl_801CE774 -lbl_801CE768: -/* 801CE768 001CA3C8 8D 07 00 01 */ lbzu r8, 1(r7) -/* 801CE76C 001CA3CC 2C 08 00 00 */ cmpwi r8, 0 -/* 801CE770 001CA3D0 40 82 FF DC */ bne lbl_801CE74C -lbl_801CE774: -/* 801CE774 001CA3D4 2C 08 00 00 */ cmpwi r8, 0 -/* 801CE778 001CA3D8 40 82 00 10 */ bne lbl_801CE788 -/* 801CE77C 001CA3DC 80 0D 83 F0 */ lwz r0, lbl_8063D6B0-_SDA_BASE_(r13) -/* 801CE780 001CA3E0 90 0D 83 F4 */ stw r0, lbl_8063D6B4-_SDA_BASE_(r13) -/* 801CE784 001CA3E4 48 00 00 14 */ b lbl_801CE798 -lbl_801CE788: -/* 801CE788 001CA3E8 38 87 00 01 */ addi r4, r7, 1 -/* 801CE78C 001CA3EC 38 00 00 00 */ li r0, 0 -/* 801CE790 001CA3F0 90 8D 83 F4 */ stw r4, lbl_8063D6B4-_SDA_BASE_(r13) -/* 801CE794 001CA3F4 98 07 00 00 */ stb r0, 0(r7) -lbl_801CE798: -/* 801CE798 001CA3F8 38 21 00 30 */ addi r1, r1, 0x30 -/* 801CE79C 001CA3FC 4E 80 00 20 */ blr - -.global func_801CE7A0 -func_801CE7A0: -/* 801CE7A0 001CA400 2C 04 00 00 */ cmpwi r4, 0 -/* 801CE7A4 001CA404 38 A3 FF FF */ addi r5, r3, -1 -/* 801CE7A8 001CA408 4D 82 00 20 */ beqlr -/* 801CE7AC 001CA40C 88 C4 00 00 */ lbz r6, 0(r4) -/* 801CE7B0 001CA410 2C 06 00 00 */ cmpwi r6, 0 -/* 801CE7B4 001CA414 40 82 00 44 */ bne lbl_801CE7F8 -/* 801CE7B8 001CA418 4E 80 00 20 */ blr -/* 801CE7BC 001CA41C 48 00 00 3C */ b lbl_801CE7F8 -lbl_801CE7C0: -/* 801CE7C0 001CA420 7C 00 30 40 */ cmplw r0, r6 -/* 801CE7C4 001CA424 40 82 00 34 */ bne lbl_801CE7F8 -/* 801CE7C8 001CA428 38 E5 FF FF */ addi r7, r5, -1 -/* 801CE7CC 001CA42C 39 04 FF FF */ addi r8, r4, -1 -lbl_801CE7D0: -/* 801CE7D0 001CA430 8C 07 00 01 */ lbzu r0, 1(r7) -/* 801CE7D4 001CA434 8C 68 00 01 */ lbzu r3, 1(r8) -/* 801CE7D8 001CA438 7C 00 18 40 */ cmplw r0, r3 -/* 801CE7DC 001CA43C 40 82 00 0C */ bne lbl_801CE7E8 -/* 801CE7E0 001CA440 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE7E4 001CA444 40 82 FF EC */ bne lbl_801CE7D0 -lbl_801CE7E8: -/* 801CE7E8 001CA448 2C 03 00 00 */ cmpwi r3, 0 -/* 801CE7EC 001CA44C 40 82 00 0C */ bne lbl_801CE7F8 -/* 801CE7F0 001CA450 7C A3 2B 78 */ mr r3, r5 -/* 801CE7F4 001CA454 4E 80 00 20 */ blr -lbl_801CE7F8: -/* 801CE7F8 001CA458 8C 05 00 01 */ lbzu r0, 1(r5) -/* 801CE7FC 001CA45C 2C 00 00 00 */ cmpwi r0, 0 -/* 801CE800 001CA460 40 82 FF C0 */ bne lbl_801CE7C0 -/* 801CE804 001CA464 38 60 00 00 */ li r3, 0 -/* 801CE808 001CA468 4E 80 00 20 */ blr - .global func_801CE80C func_801CE80C: /* 801CE80C 001CA46C 94 21 FF 20 */ stwu r1, -0xe0(r1) @@ -6117,7 +1357,7 @@ lbl_801CF9FC: lbl_801CFA08: /* 801CFA08 001CB668 B3 A1 00 5A */ sth r29, 0x5a(r1) /* 801CFA0C 001CB66C 38 61 00 58 */ addi r3, r1, 0x58 -/* 801CFA10 001CB670 4B FF 91 D9 */ bl func_801C8BE8 +/* 801CFA10 001CB670 4B FF 91 D9 */ bl __dec2num /* 801CFA14 001CB674 C8 02 91 60 */ lfd f0, lbl_80641760-_SDA2_BASE_(r2) /* 801CFA18 001CB678 FC 00 08 00 */ fcmpu cr0, f0, f1 /* 801CFA1C 001CB67C 41 82 00 1C */ beq lbl_801CFA38 @@ -6260,10 +1500,10 @@ lbl_801CFBE8: func_801CFC00: /* 801CFC00 001CB860 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801CFC04 001CB864 7C 08 02 A6 */ mflr r0 -/* 801CFC08 001CB868 3C 80 80 1D */ lis r4, lbl_801CE178@ha +/* 801CFC08 001CB868 3C 80 80 1D */ lis r4, __StringRead@ha /* 801CFC0C 001CB86C 90 01 00 24 */ stw r0, 0x24(r1) /* 801CFC10 001CB870 38 00 00 00 */ li r0, 0 -/* 801CFC14 001CB874 38 84 E1 78 */ addi r4, r4, lbl_801CE178@l +/* 801CFC14 001CB874 38 84 E1 78 */ addi r4, r4, __StringRead@l /* 801CFC18 001CB878 38 A1 00 10 */ addi r5, r1, 0x10 /* 801CFC1C 001CB87C 90 61 00 10 */ stw r3, 0x10(r1) /* 801CFC20 001CB880 3C 60 80 00 */ lis r3, 0x7FFFFFFF@ha @@ -6972,7 +2212,7 @@ func_801D0578: /* 801D0578 001CC1D8 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801D057C 001CC1DC 7C 08 02 A6 */ mflr r0 /* 801D0580 001CC1E0 3C E0 80 00 */ lis r7, 0x7FFFFFFF@ha -/* 801D0584 001CC1E4 3C C0 80 1D */ lis r6, lbl_801CE178@ha +/* 801D0584 001CC1E4 3C C0 80 1D */ lis r6, __StringRead@ha /* 801D0588 001CC1E8 90 01 00 34 */ stw r0, 0x34(r1) /* 801D058C 001CC1EC 38 00 00 00 */ li r0, 0 /* 801D0590 001CC1F0 39 01 00 0C */ addi r8, r1, 0xc @@ -6984,7 +2224,7 @@ func_801D0578: /* 801D05A8 001CC208 93 C1 00 28 */ stw r30, 0x28(r1) /* 801D05AC 001CC20C 7C 7E 1B 78 */ mr r30, r3 /* 801D05B0 001CC210 7C A3 2B 78 */ mr r3, r5 -/* 801D05B4 001CC214 38 A6 E1 78 */ addi r5, r6, lbl_801CE178@l +/* 801D05B4 001CC214 38 A6 E1 78 */ addi r5, r6, __StringRead@l /* 801D05B8 001CC218 93 C1 00 18 */ stw r30, 0x18(r1) /* 801D05BC 001CC21C 38 C1 00 18 */ addi r6, r1, 0x18 /* 801D05C0 001CC220 90 01 00 1C */ stw r0, 0x1c(r1) @@ -7020,7 +2260,7 @@ func_801D0620: /* 801D0620 001CC280 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801D0624 001CC284 7C 08 02 A6 */ mflr r0 /* 801D0628 001CC288 3C E0 80 00 */ lis r7, 0x7FFFFFFF@ha -/* 801D062C 001CC28C 3C C0 80 1D */ lis r6, lbl_801CE178@ha +/* 801D062C 001CC28C 3C C0 80 1D */ lis r6, __StringRead@ha /* 801D0630 001CC290 90 01 00 34 */ stw r0, 0x34(r1) /* 801D0634 001CC294 38 00 00 00 */ li r0, 0 /* 801D0638 001CC298 39 01 00 0C */ addi r8, r1, 0xc @@ -7032,7 +2272,7 @@ func_801D0620: /* 801D0650 001CC2B0 93 C1 00 28 */ stw r30, 0x28(r1) /* 801D0654 001CC2B4 7C 7E 1B 78 */ mr r30, r3 /* 801D0658 001CC2B8 7C A3 2B 78 */ mr r3, r5 -/* 801D065C 001CC2BC 38 A6 E1 78 */ addi r5, r6, lbl_801CE178@l +/* 801D065C 001CC2BC 38 A6 E1 78 */ addi r5, r6, __StringRead@l /* 801D0660 001CC2C0 93 C1 00 18 */ stw r30, 0x18(r1) /* 801D0664 001CC2C4 38 C1 00 18 */ addi r6, r1, 0x18 /* 801D0668 001CC2C8 90 01 00 1C */ stw r0, 0x1c(r1) @@ -7086,10 +2326,10 @@ lbl_801D06F4: func_801D070C: /* 801D070C 001CC36C 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801D0710 001CC370 7C 08 02 A6 */ mflr r0 -/* 801D0714 001CC374 3C A0 80 1D */ lis r5, lbl_801CE178@ha +/* 801D0714 001CC374 3C A0 80 1D */ lis r5, __StringRead@ha /* 801D0718 001CC378 90 01 00 34 */ stw r0, 0x34(r1) /* 801D071C 001CC37C 38 00 00 00 */ li r0, 0 -/* 801D0720 001CC380 38 A5 E1 78 */ addi r5, r5, lbl_801CE178@l +/* 801D0720 001CC380 38 A5 E1 78 */ addi r5, r5, __StringRead@l /* 801D0724 001CC384 38 C1 00 18 */ addi r6, r1, 0x18 /* 801D0728 001CC388 93 E1 00 2C */ stw r31, 0x2c(r1) /* 801D072C 001CC38C 3F E0 80 00 */ lis r31, 0x7FFFFFFF@ha @@ -7373,7 +2613,7 @@ lbl_801D0A98: .global func_801D0AA8 func_801D0AA8: -/* 801D0AA8 001CC708 4B FF 93 18 */ b func_801C9DC0 +/* 801D0AA8 001CC708 4B FF 93 18 */ b __msl_strnicmp .global func_801D0AAC func_801D0AAC: @@ -11384,7 +6624,7 @@ func_801D4318: /* 801D432C 001CFF8C 93 E1 00 14 */ stw r31, 0x14(r1) /* 801D4330 001CFF90 7C 7F 1B 78 */ mr r31, r3 /* 801D4334 001CFF94 D8 21 00 08 */ stfd f1, 8(r1) -/* 801D4338 001CFF98 4B FF 63 F9 */ bl func_801CA730 +/* 801D4338 001CFF98 4B FF 63 F9 */ bl __fpclassifyd /* 801D433C 001CFF9C 2C 03 00 02 */ cmpwi r3, 2 /* 801D4340 001CFFA0 40 81 00 10 */ ble lbl_801D4350 /* 801D4344 001CFFA4 C8 02 95 A0 */ lfd f0, lbl_80641BA0-_SDA2_BASE_(r2) diff --git a/asm/text_6_2.s b/asm/text_6_2.s index b6d92ed..db86c5a 100644 --- a/asm/text_6_2.s +++ b/asm/text_6_2.s @@ -6920,7 +6920,7 @@ lbl_801DCEE4: /* 801DCEFC 001D8B5C 7F C3 F3 78 */ mr r3, r30 /* 801DCF00 001D8B60 4B FF FF 6D */ bl func_801DCE6C /* 801DCF04 001D8B64 38 81 00 08 */ addi r4, r1, 8 -/* 801DCF08 001D8B68 4B FF 15 45 */ bl func_801CE44C +/* 801DCF08 001D8B68 4B FF 15 45 */ bl strcmp /* 801DCF0C 001D8B6C 2C 03 00 00 */ cmpwi r3, 0 /* 801DCF10 001D8B70 40 82 00 0C */ bne lbl_801DCF1C /* 801DCF14 001D8B74 7F C3 F3 78 */ mr r3, r30 @@ -7308,11 +7308,11 @@ lbl_801DD438: /* 801DD440 001D90A0 98 1D 00 00 */ stb r0, 0(r29) /* 801DD444 001D90A4 38 8D 84 38 */ addi r4, r13, lbl_8063D6F8-_SDA_BASE_ /* 801DD448 001D90A8 98 1D 00 01 */ stb r0, 1(r29) -/* 801DD44C 001D90AC 4B FF 0E 85 */ bl func_801CE2D0 +/* 801DD44C 001D90AC 4B FF 0E 85 */ bl strcpy /* 801DD450 001D90B0 7F 24 CB 78 */ mr r4, r25 /* 801DD454 001D90B4 38 7D 00 02 */ addi r3, r29, 2 /* 801DD458 001D90B8 38 A0 00 0C */ li r5, 0xc -/* 801DD45C 001D90BC 4B FF 0F A5 */ bl func_801CE400 +/* 801DD45C 001D90BC 4B FF 0F A5 */ bl strncat /* 801DD460 001D90C0 38 7D 00 02 */ addi r3, r29, 2 /* 801DD464 001D90C4 3B 40 00 00 */ li r26, 0 /* 801DD468 001D90C8 38 80 00 30 */ li r4, 0x30 @@ -35619,7 +35619,7 @@ lbl_801F6290: /* 801F62AC 001F1F0C 2C 04 00 00 */ cmpwi r4, 0 /* 801F62B0 001F1F10 41 82 00 28 */ beq lbl_801F62D8 /* 801F62B4 001F1F14 7F 63 DB 78 */ mr r3, r27 -/* 801F62B8 001F1F18 4B FD 81 95 */ bl func_801CE44C +/* 801F62B8 001F1F18 4B FD 81 95 */ bl strcmp /* 801F62BC 001F1F1C 2C 03 00 00 */ cmpwi r3, 0 /* 801F62C0 001F1F20 40 82 00 18 */ bne lbl_801F62D8 /* 801F62C4 001F1F24 2C 1C 00 00 */ cmpwi r28, 0 @@ -35664,7 +35664,7 @@ lbl_801F632C: /* 801F6348 001F1FA8 2C 04 00 00 */ cmpwi r4, 0 /* 801F634C 001F1FAC 41 82 00 18 */ beq lbl_801F6364 /* 801F6350 001F1FB0 7F 63 DB 78 */ mr r3, r27 -/* 801F6354 001F1FB4 4B FD 80 F9 */ bl func_801CE44C +/* 801F6354 001F1FB4 4B FD 80 F9 */ bl strcmp /* 801F6358 001F1FB8 2C 03 00 00 */ cmpwi r3, 0 /* 801F635C 001F1FBC 40 82 00 08 */ bne lbl_801F6364 /* 801F6360 001F1FC0 93 BE 00 14 */ stw r29, 0x14(r30) diff --git a/asm/text_7.s b/asm/text_7.s index 4abaf44..a3018da 100644 --- a/asm/text_7.s +++ b/asm/text_7.s @@ -2261,7 +2261,7 @@ lbl_802249A4: /* 802249B0 00220610 7F C3 F3 78 */ mr r3, r30 /* 802249B4 00220614 7F 64 DB 78 */ mr r4, r27 /* 802249B8 00220618 38 A0 00 04 */ li r5, 4 -/* 802249BC 0022061C 4B FA 59 DD */ bl func_801CA398 +/* 802249BC 0022061C 4B FA 59 DD */ bl memcmp /* 802249C0 00220620 2C 03 00 00 */ cmpwi r3, 0 /* 802249C4 00220624 40 82 00 0C */ bne lbl_802249D0 /* 802249C8 00220628 7F C3 F3 78 */ mr r3, r30 @@ -2302,7 +2302,7 @@ lbl_80224A30: /* 80224A38 00220698 41 82 00 20 */ beq lbl_80224A58 /* 80224A3C 0022069C 7C A4 2B 78 */ mr r4, r5 /* 80224A40 002206A0 38 A0 00 04 */ li r5, 4 -/* 80224A44 002206A4 4B FA 59 55 */ bl func_801CA398 +/* 80224A44 002206A4 4B FA 59 55 */ bl memcmp /* 80224A48 002206A8 2C 03 00 00 */ cmpwi r3, 0 /* 80224A4C 002206AC 41 82 00 0C */ beq lbl_80224A58 /* 80224A50 002206B0 38 60 00 00 */ li r3, 0 @@ -2804,12 +2804,12 @@ lbl_802250A8: /* 802250DC 00220D3C C0 7F 00 08 */ lfs f3, 8(r31) /* 802250E0 00220D40 38 84 3C 6C */ addi r4, r4, lbl_80423C6C@l /* 802250E4 00220D44 4C C6 32 42 */ crset 6 -/* 802250E8 00220D48 4B FA 7A 15 */ bl func_801CCAFC +/* 802250E8 00220D48 4B FA 7A 15 */ bl sprintf /* 802250EC 00220D4C 80 7C 09 14 */ lwz r3, 0x914(r28) /* 802250F0 00220D50 38 81 00 88 */ addi r4, r1, 0x88 /* 802250F4 00220D54 38 A0 00 FF */ li r5, 0xff /* 802250F8 00220D58 38 63 00 38 */ addi r3, r3, 0x38 -/* 802250FC 00220D5C 4B FA 92 95 */ bl func_801CE390 +/* 802250FC 00220D5C 4B FA 92 95 */ bl strncpy /* 80225100 00220D60 80 9C 09 14 */ lwz r4, 0x914(r28) /* 80225104 00220D64 38 00 00 03 */ li r0, 3 /* 80225108 00220D68 38 64 00 38 */ addi r3, r4, 0x38 @@ -3512,12 +3512,12 @@ lbl_80225A9C: /* 80225AC4 00221724 38 61 00 08 */ addi r3, r1, 8 /* 80225AC8 00221728 38 84 3D 00 */ addi r4, r4, lbl_80423D00@l /* 80225ACC 0022172C 4C C6 31 82 */ crclr 6 -/* 80225AD0 00221730 4B FA 70 2D */ bl func_801CCAFC +/* 80225AD0 00221730 4B FA 70 2D */ bl sprintf /* 80225AD4 00221734 80 7E 09 14 */ lwz r3, 0x914(r30) /* 80225AD8 00221738 38 81 00 08 */ addi r4, r1, 8 /* 80225ADC 0022173C 38 A0 00 FF */ li r5, 0xff /* 80225AE0 00221740 38 63 00 38 */ addi r3, r3, 0x38 -/* 80225AE4 00221744 4B FA 88 AD */ bl func_801CE390 +/* 80225AE4 00221744 4B FA 88 AD */ bl strncpy /* 80225AE8 00221748 80 9E 09 14 */ lwz r4, 0x914(r30) /* 80225AEC 0022174C 38 00 00 03 */ li r0, 3 /* 80225AF0 00221750 38 64 00 38 */ addi r3, r4, 0x38 @@ -3562,7 +3562,7 @@ lbl_80225B60: /* 80225B78 002217D8 38 A0 00 FF */ li r5, 0xff /* 80225B7C 002217DC 80 83 00 04 */ lwz r4, 4(r3) /* 80225B80 002217E0 38 66 00 38 */ addi r3, r6, 0x38 -/* 80225B84 002217E4 4B FA 88 0D */ bl func_801CE390 +/* 80225B84 002217E4 4B FA 88 0D */ bl strncpy /* 80225B88 002217E8 80 9E 09 14 */ lwz r4, 0x914(r30) /* 80225B8C 002217EC 38 00 00 03 */ li r0, 3 /* 80225B90 002217F0 38 64 00 38 */ addi r3, r4, 0x38 @@ -3695,7 +3695,7 @@ lbl_80225D0C: /* 80225D4C 002219AC 38 A0 00 FF */ li r5, 0xff /* 80225D50 002219B0 80 83 00 04 */ lwz r4, 4(r3) /* 80225D54 002219B4 38 66 00 38 */ addi r3, r6, 0x38 -/* 80225D58 002219B8 4B FA 86 39 */ bl func_801CE390 +/* 80225D58 002219B8 4B FA 86 39 */ bl strncpy /* 80225D5C 002219BC 80 9E 09 14 */ lwz r4, 0x914(r30) /* 80225D60 002219C0 38 00 00 03 */ li r0, 3 /* 80225D64 002219C4 38 64 00 38 */ addi r3, r4, 0x38 @@ -4315,7 +4315,7 @@ lbl_8022657C: /* 802265A8 00222208 41 82 00 10 */ beq lbl_802265B8 /* 802265AC 0022220C 38 A0 00 20 */ li r5, 0x20 /* 802265B0 00222210 38 63 03 48 */ addi r3, r3, 0x348 -/* 802265B4 00222214 4B FA 7D DD */ bl func_801CE390 +/* 802265B4 00222214 4B FA 7D DD */ bl strncpy lbl_802265B8: /* 802265B8 00222218 80 01 00 24 */ lwz r0, 0x24(r1) /* 802265BC 0022221C 83 E1 00 1C */ lwz r31, 0x1c(r1) @@ -4608,7 +4608,7 @@ func_80226928: /* 80226960 002225C0 7F C3 F3 78 */ mr r3, r30 /* 80226964 002225C4 38 8D 85 A0 */ addi r4, r13, lbl_8063D860-_SDA_BASE_ /* 80226968 002225C8 38 A0 00 04 */ li r5, 4 -/* 8022696C 002225CC 4B FA 3A 2D */ bl func_801CA398 +/* 8022696C 002225CC 4B FA 3A 2D */ bl memcmp /* 80226970 002225D0 2C 03 00 00 */ cmpwi r3, 0 /* 80226974 002225D4 40 82 00 2C */ bne lbl_802269A0 /* 80226978 002225D8 38 00 00 03 */ li r0, 3 @@ -9124,7 +9124,7 @@ lbl_8022A5C4: /* 8022A634 00226294 41 82 00 10 */ beq lbl_8022A644 /* 8022A638 00226298 38 A0 00 20 */ li r5, 0x20 /* 8022A63C 0022629C 38 63 03 48 */ addi r3, r3, 0x348 -/* 8022A640 002262A0 4B FA 3D 51 */ bl func_801CE390 +/* 8022A640 002262A0 4B FA 3D 51 */ bl strncpy lbl_8022A644: /* 8022A644 002262A4 93 5B 03 28 */ stw r26, 0x328(r27) /* 8022A648 002262A8 80 61 00 14 */ lwz r3, 0x14(r1) @@ -9813,7 +9813,7 @@ lbl_8022AF24: /* 8022AF74 00226BD4 38 61 00 08 */ addi r3, r1, 8 /* 8022AF78 00226BD8 38 8D 85 F8 */ addi r4, r13, lbl_8063D8B8-_SDA_BASE_ /* 8022AF7C 00226BDC 4C C6 31 82 */ crclr 6 -/* 8022AF80 00226BE0 4B FA 1B 7D */ bl func_801CCAFC +/* 8022AF80 00226BE0 4B FA 1B 7D */ bl sprintf /* 8022AF84 00226BE4 48 00 00 2C */ b lbl_8022AFB0 lbl_8022AF88: /* 8022AF88 00226BE8 2C 00 00 02 */ cmpwi r0, 2 @@ -9825,7 +9825,7 @@ lbl_8022AF88: /* 8022AFA0 00226C00 D8 01 01 10 */ stfd f0, 0x110(r1) /* 8022AFA4 00226C04 80 A1 01 14 */ lwz r5, 0x114(r1) /* 8022AFA8 00226C08 4C C6 31 82 */ crclr 6 -/* 8022AFAC 00226C0C 4B FA 1B 51 */ bl func_801CCAFC +/* 8022AFAC 00226C0C 4B FA 1B 51 */ bl sprintf lbl_8022AFB0: /* 8022AFB0 00226C10 38 60 00 03 */ li r3, 3 /* 8022AFB4 00226C14 38 01 00 08 */ addi r0, r1, 8 @@ -9845,7 +9845,7 @@ lbl_8022AFB0: /* 8022AFEC 00226C4C 38 61 00 08 */ addi r3, r1, 8 /* 8022AFF0 00226C50 38 8D 86 00 */ addi r4, r13, lbl_8063D8C0-_SDA_BASE_ /* 8022AFF4 00226C54 4C C6 31 82 */ crclr 6 -/* 8022AFF8 00226C58 4B FA 1B 05 */ bl func_801CCAFC +/* 8022AFF8 00226C58 4B FA 1B 05 */ bl sprintf /* 8022AFFC 00226C5C 48 00 00 54 */ b lbl_8022B050 lbl_8022B000: /* 8022B000 00226C60 2C 00 00 02 */ cmpwi r0, 2 @@ -9854,7 +9854,7 @@ lbl_8022B000: /* 8022B00C 00226C6C 38 61 00 08 */ addi r3, r1, 8 /* 8022B010 00226C70 38 8D 86 04 */ addi r4, r13, lbl_8063D8C4-_SDA_BASE_ /* 8022B014 00226C74 4C C6 32 42 */ crset 6 -/* 8022B018 00226C78 4B FA 1A E5 */ bl func_801CCAFC +/* 8022B018 00226C78 4B FA 1A E5 */ bl sprintf /* 8022B01C 00226C7C 48 00 00 34 */ b lbl_8022B050 lbl_8022B020: /* 8022B020 00226C80 41 82 01 B8 */ beq lbl_8022B1D8 @@ -9868,7 +9868,7 @@ lbl_8022B020: /* 8022B040 00226CA0 C0 45 00 04 */ lfs f2, 4(r5) /* 8022B044 00226CA4 C0 65 00 08 */ lfs f3, 8(r5) /* 8022B048 00226CA8 4C C6 32 42 */ crset 6 -/* 8022B04C 00226CAC 4B FA 1A B1 */ bl func_801CCAFC +/* 8022B04C 00226CAC 4B FA 1A B1 */ bl sprintf lbl_8022B050: /* 8022B050 00226CB0 38 60 00 03 */ li r3, 3 /* 8022B054 00226CB4 38 01 00 08 */ addi r0, r1, 8 @@ -11466,7 +11466,7 @@ lbl_8022C68C: /* 8022C694 002282F4 4B DF BD 1D */ bl func_800283B0 lbl_8022C698: /* 8022C698 002282F8 4C C6 31 82 */ crclr 6 -/* 8022C69C 002282FC 4B FA 01 C9 */ bl func_801CC864 +/* 8022C69C 002282FC 4B FA 01 C9 */ bl printf /* 8022C6A0 00228300 48 00 08 74 */ b lbl_8022CF14 lbl_8022C6A4: /* 8022C6A4 00228304 A8 06 00 00 */ lha r0, 0(r6) @@ -11480,7 +11480,7 @@ lbl_8022C6B4: /* 8022C6C0 00228320 7C 64 1B 78 */ mr r4, r3 /* 8022C6C4 00228324 38 A0 00 FF */ li r5, 0xff /* 8022C6C8 00228328 38 66 00 38 */ addi r3, r6, 0x38 -/* 8022C6CC 0022832C 4B FA 1C C5 */ bl func_801CE390 +/* 8022C6CC 0022832C 4B FA 1C C5 */ bl strncpy /* 8022C6D0 00228330 80 9D 09 14 */ lwz r4, 0x914(r29) /* 8022C6D4 00228334 38 00 00 03 */ li r0, 3 /* 8022C6D8 00228338 38 64 00 38 */ addi r3, r4, 0x38 @@ -12012,7 +12012,7 @@ lbl_8022CDA4: /* 8022CDB4 00228A14 98 01 01 09 */ stb r0, 0x109(r1) /* 8022CDB8 00228A18 80 7D 09 14 */ lwz r3, 0x914(r29) /* 8022CDBC 00228A1C 38 63 00 38 */ addi r3, r3, 0x38 -/* 8022CDC0 00228A20 4B FA 15 D1 */ bl func_801CE390 +/* 8022CDC0 00228A20 4B FA 15 D1 */ bl strncpy /* 8022CDC4 00228A24 80 9D 09 14 */ lwz r4, 0x914(r29) /* 8022CDC8 00228A28 38 00 00 03 */ li r0, 3 /* 8022CDCC 00228A2C 38 64 00 38 */ addi r3, r4, 0x38 @@ -12051,7 +12051,7 @@ lbl_8022CE38: /* 8022CE38 00228A98 7F 83 E3 78 */ mr r3, r28 /* 8022CE3C 00228A9C 7F C4 F3 78 */ mr r4, r30 /* 8022CE40 00228AA0 7F 65 DB 78 */ mr r5, r27 -/* 8022CE44 00228AA4 4B FA 17 25 */ bl func_801CE568 +/* 8022CE44 00228AA4 4B FA 17 25 */ bl strncmp /* 8022CE48 00228AA8 2C 03 00 00 */ cmpwi r3, 0 /* 8022CE4C 00228AAC 40 82 00 14 */ bne lbl_8022CE60 /* 8022CE50 00228AB0 38 00 00 01 */ li r0, 1 @@ -12631,7 +12631,7 @@ lbl_8022D624: /* 8022D65C 002292BC 7F 44 D3 78 */ mr r4, r26 /* 8022D660 002292C0 38 A0 00 20 */ li r5, 0x20 /* 8022D664 002292C4 38 63 03 48 */ addi r3, r3, 0x348 -/* 8022D668 002292C8 4B FA 0D 29 */ bl func_801CE390 +/* 8022D668 002292C8 4B FA 0D 29 */ bl strncpy lbl_8022D66C: /* 8022D66C 002292CC 93 9D 03 28 */ stw r28, 0x328(r29) /* 8022D670 002292D0 80 01 00 14 */ lwz r0, 0x14(r1) @@ -12838,7 +12838,7 @@ func_8022D8E0: /* 8022D918 00229578 80 9E 00 04 */ lwz r4, 4(r30) /* 8022D91C 0022957C 7C 7F 1B 78 */ mr r31, r3 /* 8022D920 00229580 38 A0 00 FF */ li r5, 0xff -/* 8022D924 00229584 4B FA 0A 6D */ bl func_801CE390 +/* 8022D924 00229584 4B FA 0A 6D */ bl strncpy /* 8022D928 00229588 A0 1E 00 02 */ lhz r0, 2(r30) /* 8022D92C 0022958C 3C 60 80 49 */ lis r3, lbl_80493658@ha /* 8022D930 00229590 93 FE 00 04 */ stw r31, 4(r30) @@ -13362,7 +13362,7 @@ lbl_8022DFE8: lbl_8022DFF8: /* 8022DFF8 00229C58 3C 60 80 49 */ lis r3, lbl_80493F68@ha /* 8022DFFC 00229C5C 38 63 3F 68 */ addi r3, r3, lbl_80493F68@l -/* 8022E000 00229C60 4B FA 02 D1 */ bl func_801CE2D0 +/* 8022E000 00229C60 4B FA 02 D1 */ bl strcpy /* 8022E004 00229C64 A8 1E 00 00 */ lha r0, 0(r30) /* 8022E008 00229C68 2C 00 00 03 */ cmpwi r0, 3 /* 8022E00C 00229C6C 40 82 00 0C */ bne lbl_8022E018 @@ -13376,7 +13376,7 @@ lbl_8022E024: /* 8022E024 00229C84 3F 80 80 49 */ lis r28, lbl_80493F68@ha /* 8022E028 00229C88 7C 64 1B 78 */ mr r4, r3 /* 8022E02C 00229C8C 38 7C 3F 68 */ addi r3, r28, lbl_80493F68@l -/* 8022E030 00229C90 4B FA 03 A5 */ bl func_801CE3D4 +/* 8022E030 00229C90 4B FA 03 A5 */ bl strcat /* 8022E034 00229C94 38 60 00 03 */ li r3, 3 /* 8022E038 00229C98 38 1C 3F 68 */ addi r0, r28, 0x3f68 /* 8022E03C 00229C9C B0 7D 00 00 */ sth r3, 0(r29) @@ -14067,7 +14067,7 @@ lbl_8022E94C: lbl_8022E958: /* 8022E958 0022A5B8 7F 64 DB 78 */ mr r4, r27 /* 8022E95C 0022A5BC 38 7C 40 68 */ addi r3, r28, 0x4068 -/* 8022E960 0022A5C0 4B F9 FA 75 */ bl func_801CE3D4 +/* 8022E960 0022A5C0 4B F9 FA 75 */ bl strcat /* 8022E964 0022A5C4 3B FF 00 01 */ addi r31, r31, 1 lbl_8022E968: /* 8022E968 0022A5C8 7C 1F F0 00 */ cmpw r31, r30 @@ -15111,7 +15111,7 @@ lbl_8022F710: /* 8022F714 0022B374 41 82 01 38 */ beq lbl_8022F84C /* 8022F718 0022B378 80 63 00 04 */ lwz r3, 4(r3) /* 8022F71C 0022B37C 80 85 00 04 */ lwz r4, 4(r5) -/* 8022F720 0022B380 4B F9 ED 2D */ bl func_801CE44C +/* 8022F720 0022B380 4B F9 ED 2D */ bl strcmp /* 8022F724 0022B384 2C 03 00 00 */ cmpwi r3, 0 /* 8022F728 0022B388 41 82 01 24 */ beq lbl_8022F84C /* 8022F72C 0022B38C 38 00 00 01 */ li r0, 1 @@ -41361,7 +41361,7 @@ lbl_802466A8: /* 802466C4 00242324 38 61 00 08 */ addi r3, r1, 8 /* 802466C8 00242328 38 84 49 58 */ addi r4, r4, lbl_80424958@l /* 802466CC 0024232C 4C C6 31 82 */ crclr 6 -/* 802466D0 00242330 4B F8 64 2D */ bl func_801CCAFC +/* 802466D0 00242330 4B F8 64 2D */ bl sprintf /* 802466D4 00242334 38 61 00 08 */ addi r3, r1, 8 /* 802466D8 00242338 4B F9 5C A9 */ bl func_801DC380 /* 802466DC 0024233C 28 03 00 01 */ cmplwi r3, 1 @@ -42739,7 +42739,7 @@ lbl_802478E0: /* 802478E4 00243544 7F E3 FB 78 */ mr r3, r31 /* 802478E8 00243548 38 8D 86 E0 */ addi r4, r13, lbl_8063D9A0-_SDA_BASE_ /* 802478EC 0024354C 4C C6 31 82 */ crclr 6 -/* 802478F0 00243550 4B F8 52 0D */ bl func_801CCAFC +/* 802478F0 00243550 4B F8 52 0D */ bl sprintf /* 802478F4 00243554 38 60 00 01 */ li r3, 1 lbl_802478F8: /* 802478F8 00243558 80 01 00 14 */ lwz r0, 0x14(r1) @@ -63423,7 +63423,7 @@ func_802599D0: /* 802599F4 00255654 38 8D 87 08 */ addi r4, r13, lbl_8063D9C8-_SDA_BASE_ /* 802599F8 00255658 98 03 00 6B */ stb r0, 0x6b(r3) /* 802599FC 0025565C 38 63 00 04 */ addi r3, r3, 4 -/* 80259A00 00255660 4B F7 4A 4D */ bl func_801CE44C +/* 80259A00 00255660 4B F7 4A 4D */ bl strcmp /* 80259A04 00255664 2C 03 00 00 */ cmpwi r3, 0 /* 80259A08 00255668 40 82 00 68 */ bne lbl_80259A70 /* 80259A0C 0025566C 80 7F 00 08 */ lwz r3, 8(r31) @@ -65955,7 +65955,7 @@ lbl_8025BC8C: /* 8025BCA8 00257908 7F C5 F3 78 */ mr r5, r30 /* 8025BCAC 0025790C 38 84 50 A0 */ addi r4, r4, lbl_804250A0@l /* 8025BCB0 00257910 4C C6 31 82 */ crclr 6 -/* 8025BCB4 00257914 4B F7 0E 49 */ bl func_801CCAFC +/* 8025BCB4 00257914 4B F7 0E 49 */ bl sprintf /* 8025BCB8 00257918 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8025BCBC 0025791C 38 60 00 00 */ li r3, 0 /* 8025BCC0 00257920 83 C1 00 18 */ lwz r30, 0x18(r1) @@ -66425,11 +66425,11 @@ lbl_8025C2B4: /* 8025C34C 00257FAC 98 C1 00 16 */ stb r6, 0x16(r1) /* 8025C350 00257FB0 98 A1 00 17 */ stb r5, 0x17(r1) /* 8025C354 00257FB4 98 01 00 18 */ stb r0, 0x18(r1) -/* 8025C358 00257FB8 4B F7 1F 79 */ bl func_801CE2D0 +/* 8025C358 00257FB8 4B F7 1F 79 */ bl strcpy /* 8025C35C 00257FBC 7F 64 DB 78 */ mr r4, r27 /* 8025C360 00257FC0 7F 85 E3 78 */ mr r5, r28 /* 8025C364 00257FC4 38 61 00 1C */ addi r3, r1, 0x1c -/* 8025C368 00257FC8 4B F7 20 99 */ bl func_801CE400 +/* 8025C368 00257FC8 4B F7 20 99 */ bl strncat /* 8025C36C 00257FCC 38 61 00 1C */ addi r3, r1, 0x1c /* 8025C370 00257FD0 4B F6 A7 F5 */ bl strlen /* 8025C374 00257FD4 7C 65 1B 78 */ mr r5, r3 @@ -66438,7 +66438,7 @@ lbl_8025C2B4: /* 8025C380 00257FE0 48 0D 56 CD */ bl func_80331A4C /* 8025C384 00257FE4 80 7F 00 24 */ lwz r3, 0x24(r31) /* 8025C388 00257FE8 38 8D 87 20 */ addi r4, r13, lbl_8063D9E0-_SDA_BASE_ -/* 8025C38C 00257FEC 4B F7 20 49 */ bl func_801CE3D4 +/* 8025C38C 00257FEC 4B F7 20 49 */ bl strcat /* 8025C390 00257FF0 38 00 00 04 */ li r0, 4 /* 8025C394 00257FF4 38 61 00 08 */ addi r3, r1, 8 /* 8025C398 00257FF8 39 20 00 00 */ li r9, 0 @@ -66518,7 +66518,7 @@ lbl_8025C3A4: /* 8025C4BC 0025811C 38 8D 87 28 */ addi r4, r13, lbl_8063D9E8-_SDA_BASE_ /* 8025C4C0 00258120 98 03 00 28 */ stb r0, 0x28(r3) /* 8025C4C4 00258124 80 7B 00 24 */ lwz r3, 0x24(r27) -/* 8025C4C8 00258128 4B F7 1F 0D */ bl func_801CE3D4 +/* 8025C4C8 00258128 4B F7 1F 0D */ bl strcat /* 8025C4CC 0025812C 80 7B 00 10 */ lwz r3, 0x10(r27) /* 8025C4D0 00258130 80 9B 00 14 */ lwz r4, 0x14(r27) /* 8025C4D4 00258134 80 BB 00 18 */ lwz r5, 0x18(r27) @@ -66546,7 +66546,7 @@ lbl_8025C51C: /* 8025C520 00258180 40 82 01 08 */ bne lbl_8025C628 /* 8025C524 00258184 38 9E 00 68 */ addi r4, r30, 0x68 /* 8025C528 00258188 38 A0 00 16 */ li r5, 0x16 -/* 8025C52C 0025818C 4B F7 20 3D */ bl func_801CE568 +/* 8025C52C 0025818C 4B F7 20 3D */ bl strncmp /* 8025C530 00258190 2C 03 00 00 */ cmpwi r3, 0 /* 8025C534 00258194 40 82 00 18 */ bne lbl_8025C54C /* 8025C538 00258198 38 60 00 01 */ li r3, 1 @@ -66558,7 +66558,7 @@ lbl_8025C54C: /* 8025C54C 002581AC 7F 63 DB 78 */ mr r3, r27 /* 8025C550 002581B0 38 9E 00 80 */ addi r4, r30, 0x80 /* 8025C554 002581B4 38 A0 00 16 */ li r5, 0x16 -/* 8025C558 002581B8 4B F7 20 11 */ bl func_801CE568 +/* 8025C558 002581B8 4B F7 20 11 */ bl strncmp /* 8025C55C 002581BC 2C 03 00 00 */ cmpwi r3, 0 /* 8025C560 002581C0 40 82 00 18 */ bne lbl_8025C578 /* 8025C564 002581C4 38 60 00 01 */ li r3, 1 @@ -66570,7 +66570,7 @@ lbl_8025C578: /* 8025C578 002581D8 7F 63 DB 78 */ mr r3, r27 /* 8025C57C 002581DC 38 9E 00 98 */ addi r4, r30, 0x98 /* 8025C580 002581E0 38 A0 00 16 */ li r5, 0x16 -/* 8025C584 002581E4 4B F7 1F E5 */ bl func_801CE568 +/* 8025C584 002581E4 4B F7 1F E5 */ bl strncmp /* 8025C588 002581E8 2C 03 00 00 */ cmpwi r3, 0 /* 8025C58C 002581EC 40 82 00 18 */ bne lbl_8025C5A4 /* 8025C590 002581F0 38 60 00 01 */ li r3, 1 @@ -66582,7 +66582,7 @@ lbl_8025C5A4: /* 8025C5A4 00258204 7F 63 DB 78 */ mr r3, r27 /* 8025C5A8 00258208 38 9E 00 B0 */ addi r4, r30, 0xb0 /* 8025C5AC 0025820C 38 A0 00 16 */ li r5, 0x16 -/* 8025C5B0 00258210 4B F7 1F B9 */ bl func_801CE568 +/* 8025C5B0 00258210 4B F7 1F B9 */ bl strncmp /* 8025C5B4 00258214 2C 03 00 00 */ cmpwi r3, 0 /* 8025C5B8 00258218 40 82 00 18 */ bne lbl_8025C5D0 /* 8025C5BC 0025821C 38 60 00 01 */ li r3, 1 @@ -66594,7 +66594,7 @@ lbl_8025C5D0: /* 8025C5D0 00258230 7F 63 DB 78 */ mr r3, r27 /* 8025C5D4 00258234 38 9E 00 C8 */ addi r4, r30, 0xc8 /* 8025C5D8 00258238 38 A0 00 16 */ li r5, 0x16 -/* 8025C5DC 0025823C 4B F7 1F 8D */ bl func_801CE568 +/* 8025C5DC 0025823C 4B F7 1F 8D */ bl strncmp /* 8025C5E0 00258240 2C 03 00 00 */ cmpwi r3, 0 /* 8025C5E4 00258244 40 82 00 18 */ bne lbl_8025C5FC /* 8025C5E8 00258248 38 60 00 01 */ li r3, 1 @@ -66606,7 +66606,7 @@ lbl_8025C5FC: /* 8025C5FC 0025825C 7F 63 DB 78 */ mr r3, r27 /* 8025C600 00258260 38 9E 00 E0 */ addi r4, r30, 0xe0 /* 8025C604 00258264 38 A0 00 16 */ li r5, 0x16 -/* 8025C608 00258268 4B F7 1F 61 */ bl func_801CE568 +/* 8025C608 00258268 4B F7 1F 61 */ bl strncmp /* 8025C60C 0025826C 2C 03 00 00 */ cmpwi r3, 0 /* 8025C610 00258270 40 82 00 18 */ bne lbl_8025C628 /* 8025C614 00258274 38 60 00 01 */ li r3, 1 @@ -66769,7 +66769,7 @@ lbl_8025C848: /* 8025C850 002584B0 7F 66 DB 78 */ mr r6, r27 /* 8025C854 002584B4 38 84 52 5C */ addi r4, r4, lbl_8042525C@l /* 8025C858 002584B8 4C C6 31 82 */ crclr 6 -/* 8025C85C 002584BC 4B F7 02 A1 */ bl func_801CCAFC +/* 8025C85C 002584BC 4B F7 02 A1 */ bl sprintf /* 8025C860 002584C0 38 6D 87 20 */ addi r3, r13, lbl_8063D9E0-_SDA_BASE_ /* 8025C864 002584C4 4B F6 A3 01 */ bl strlen /* 8025C868 002584C8 7C 7F 1B 78 */ mr r31, r3 @@ -69101,7 +69101,7 @@ lbl_8025E688: /* 8025E690 0025A2F0 7F A5 EB 78 */ mr r5, r29 /* 8025E694 0025A2F4 38 9F 01 BC */ addi r4, r31, 0x1bc /* 8025E698 0025A2F8 4C C6 31 82 */ crclr 6 -/* 8025E69C 0025A2FC 4B F6 E4 61 */ bl func_801CCAFC +/* 8025E69C 0025A2FC 4B F6 E4 61 */ bl sprintf /* 8025E6A0 0025A300 7F C3 F3 78 */ mr r3, r30 lbl_8025E6A4: /* 8025E6A4 0025A304 80 01 00 24 */ lwz r0, 0x24(r1) @@ -69156,7 +69156,7 @@ lbl_8025E748: /* 8025E750 0025A3B0 7F A5 EB 78 */ mr r5, r29 /* 8025E754 0025A3B4 38 9F 02 18 */ addi r4, r31, 0x218 /* 8025E758 0025A3B8 4C C6 31 82 */ crclr 6 -/* 8025E75C 0025A3BC 4B F6 E3 A1 */ bl func_801CCAFC +/* 8025E75C 0025A3BC 4B F6 E3 A1 */ bl sprintf /* 8025E760 0025A3C0 7F C3 F3 78 */ mr r3, r30 /* 8025E764 0025A3C4 48 00 00 0C */ b lbl_8025E770 lbl_8025E768: @@ -72116,7 +72116,7 @@ func_80260EC8: /* 80260EE4 0025CB44 93 C1 00 08 */ stw r30, 8(r1) /* 80260EE8 0025CB48 7C 7E 1B 78 */ mr r30, r3 /* 80260EEC 0025CB4C 38 63 00 34 */ addi r3, r3, 0x34 -/* 80260EF0 0025CB50 4B F6 D4 A1 */ bl func_801CE390 +/* 80260EF0 0025CB50 4B F6 D4 A1 */ bl strncpy /* 80260EF4 0025CB54 38 00 00 00 */ li r0, 0 /* 80260EF8 0025CB58 B3 FE 00 04 */ sth r31, 4(r30) /* 80260EFC 0025CB5C 98 1E 00 73 */ stb r0, 0x73(r30) @@ -74179,7 +74179,7 @@ lbl_80262AA8: /* 80262AB0 0025E710 7F A5 EB 78 */ mr r5, r29 /* 80262AB4 0025E714 38 9F 00 C0 */ addi r4, r31, 0xc0 /* 80262AB8 0025E718 4C C6 31 82 */ crclr 6 -/* 80262ABC 0025E71C 4B F6 A0 41 */ bl func_801CCAFC +/* 80262ABC 0025E71C 4B F6 A0 41 */ bl sprintf /* 80262AC0 0025E720 7F C3 F3 78 */ mr r3, r30 lbl_80262AC4: /* 80262AC4 0025E724 80 01 00 24 */ lwz r0, 0x24(r1) @@ -75405,7 +75405,7 @@ lbl_80263B4C: /* 80263B54 0025F7B4 7F A5 EB 78 */ mr r5, r29 /* 80263B58 0025F7B8 38 9F 00 98 */ addi r4, r31, 0x98 /* 80263B5C 0025F7BC 4C C6 31 82 */ crclr 6 -/* 80263B60 0025F7C0 4B F6 8F 9D */ bl func_801CCAFC +/* 80263B60 0025F7C0 4B F6 8F 9D */ bl sprintf /* 80263B64 0025F7C4 7F C3 F3 78 */ mr r3, r30 lbl_80263B68: /* 80263B68 0025F7C8 80 01 00 24 */ lwz r0, 0x24(r1) @@ -75632,7 +75632,7 @@ lbl_80263E8C: /* 80263E94 0025FAF4 7F A5 EB 78 */ mr r5, r29 /* 80263E98 0025FAF8 38 9F 02 30 */ addi r4, r31, 0x230 /* 80263E9C 0025FAFC 4C C6 31 82 */ crclr 6 -/* 80263EA0 0025FB00 4B F6 8C 5D */ bl func_801CCAFC +/* 80263EA0 0025FB00 4B F6 8C 5D */ bl sprintf /* 80263EA4 0025FB04 7F C3 F3 78 */ mr r3, r30 lbl_80263EA8: /* 80263EA8 0025FB08 80 01 00 24 */ lwz r0, 0x24(r1) @@ -75704,7 +75704,7 @@ lbl_80263F98: /* 80263FA0 0025FC00 7F A5 EB 78 */ mr r5, r29 /* 80263FA4 0025FC04 38 9F 04 30 */ addi r4, r31, 0x430 /* 80263FA8 0025FC08 4C C6 31 82 */ crclr 6 -/* 80263FAC 0025FC0C 4B F6 8B 51 */ bl func_801CCAFC +/* 80263FAC 0025FC0C 4B F6 8B 51 */ bl sprintf /* 80263FB0 0025FC10 7F C3 F3 78 */ mr r3, r30 lbl_80263FB4: /* 80263FB4 0025FC14 80 01 00 24 */ lwz r0, 0x24(r1) @@ -75756,7 +75756,7 @@ lbl_80264054: /* 8026405C 0025FCBC 7F A5 EB 78 */ mr r5, r29 /* 80264060 0025FCC0 38 9F 05 48 */ addi r4, r31, 0x548 /* 80264064 0025FCC4 4C C6 31 82 */ crclr 6 -/* 80264068 0025FCC8 4B F6 8A 95 */ bl func_801CCAFC +/* 80264068 0025FCC8 4B F6 8A 95 */ bl sprintf /* 8026406C 0025FCCC 7F C3 F3 78 */ mr r3, r30 lbl_80264070: /* 80264070 0025FCD0 80 01 00 24 */ lwz r0, 0x24(r1) @@ -75782,7 +75782,7 @@ func_8026408C: /* 802640B4 0025FD14 7C A5 00 50 */ subf r5, r5, r0 /* 802640B8 0025FD18 38 84 63 E0 */ addi r4, r4, lbl_804263E0@l /* 802640BC 0025FD1C 4C C6 31 82 */ crclr 6 -/* 802640C0 0025FD20 4B F6 8A 3D */ bl func_801CCAFC +/* 802640C0 0025FD20 4B F6 8A 3D */ bl sprintf /* 802640C4 0025FD24 7F E3 FB 78 */ mr r3, r31 /* 802640C8 0025FD28 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802640CC 0025FD2C 80 01 00 14 */ lwz r0, 0x14(r1) @@ -75829,7 +75829,7 @@ lbl_80264138: /* 80264168 0025FDC8 7F C7 F3 78 */ mr r7, r30 /* 8026416C 0025FDCC 38 84 63 F0 */ addi r4, r4, lbl_804263F0@l /* 80264170 0025FDD0 4C C6 31 82 */ crclr 6 -/* 80264174 0025FDD4 4B F6 89 89 */ bl func_801CCAFC +/* 80264174 0025FDD4 4B F6 89 89 */ bl sprintf /* 80264178 0025FDD8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8026417C 0025FDDC 7F 83 E3 78 */ mr r3, r28 /* 80264180 0025FDE0 83 C1 00 18 */ lwz r30, 0x18(r1) @@ -77602,7 +77602,7 @@ func_80265978: /* 802659BC 0026161C 7D 06 43 78 */ mr r6, r8 /* 802659C0 00261620 38 61 00 08 */ addi r3, r1, 8 /* 802659C4 00261624 4C C6 31 82 */ crclr 6 -/* 802659C8 00261628 4B F6 71 35 */ bl func_801CCAFC +/* 802659C8 00261628 4B F6 71 35 */ bl sprintf /* 802659CC 0026162C 7F 63 DB 78 */ mr r3, r27 /* 802659D0 00261630 48 00 0B 69 */ bl func_80266538 /* 802659D4 00261634 28 03 00 1E */ cmplwi r3, 0x1e @@ -77620,7 +77620,7 @@ lbl_802659E4: lbl_80265A00: /* 80265A00 00261660 38 61 00 08 */ addi r3, r1, 8 /* 80265A04 00261664 38 8D 87 60 */ addi r4, r13, lbl_8063DA20-_SDA_BASE_ -/* 80265A08 00261668 4B F6 89 CD */ bl func_801CE3D4 +/* 80265A08 00261668 4B F6 89 CD */ bl strcat /* 80265A0C 0026166C 38 61 00 08 */ addi r3, r1, 8 /* 80265A10 00261670 4B F6 11 55 */ bl strlen /* 80265A14 00261674 3B E1 00 08 */ addi r31, r1, 8 @@ -77637,7 +77637,7 @@ lbl_80265A00: /* 80265A40 002616A0 7C 7F 1A 14 */ add r3, r31, r3 /* 80265A44 002616A4 38 84 64 24 */ addi r4, r4, lbl_80426424@l /* 80265A48 002616A8 4C C6 31 82 */ crclr 6 -/* 80265A4C 002616AC 4B F6 70 B1 */ bl func_801CCAFC +/* 80265A4C 002616AC 4B F6 70 B1 */ bl sprintf lbl_80265A50: /* 80265A50 002616B0 7F 63 DB 78 */ mr r3, r27 /* 80265A54 002616B4 38 A1 00 08 */ addi r5, r1, 8 @@ -77728,7 +77728,7 @@ lbl_80265B40: lbl_80265B74: /* 80265B74 002617D4 7F E4 FB 78 */ mr r4, r31 /* 80265B78 002617D8 38 7E 3C 90 */ addi r3, r30, 0x3c90 -/* 80265B7C 002617DC 4B F6 87 55 */ bl func_801CE2D0 +/* 80265B7C 002617DC 4B F6 87 55 */ bl strcpy /* 80265B80 002617E0 48 00 00 0C */ b lbl_80265B8C lbl_80265B84: /* 80265B84 002617E4 38 00 00 00 */ li r0, 0 @@ -79926,7 +79926,7 @@ lbl_802678B0: /* 802678B4 00263514 4B FF FF 69 */ bl func_8026781C /* 802678B8 00263518 7F 84 E3 78 */ mr r4, r28 /* 802678BC 0026351C 38 A0 00 0C */ li r5, 0xc -/* 802678C0 00263520 4B F6 2A D9 */ bl func_801CA398 +/* 802678C0 00263520 4B F6 2A D9 */ bl memcmp /* 802678C4 00263524 2C 03 00 00 */ cmpwi r3, 0 /* 802678C8 00263528 40 82 00 0C */ bne lbl_802678D4 /* 802678CC 0026352C 38 60 FF FD */ li r3, -3 diff --git a/asm/text_8.s b/asm/text_8.s index bb165ef..f31eb47 100644 --- a/asm/text_8.s +++ b/asm/text_8.s @@ -17904,7 +17904,7 @@ lbl_802894D8: /* 802894D8 00285138 80 8D AA 8C */ lwz r4, lbl_8063FD4C-_SDA_BASE_(r13) /* 802894DC 0028513C 38 7E 00 C0 */ addi r3, r30, 0xc0 /* 802894E0 00285140 38 A0 00 20 */ li r5, 0x20 -/* 802894E4 00285144 4B F4 0E B5 */ bl func_801CA398 +/* 802894E4 00285144 4B F4 0E B5 */ bl memcmp /* 802894E8 00285148 2C 03 00 00 */ cmpwi r3, 0 /* 802894EC 0028514C 41 82 00 A0 */ beq lbl_8028958C /* 802894F0 00285150 4B FE 52 6D */ bl OSDisableInterrupts @@ -22051,7 +22051,7 @@ func_8028CEEC: /* 8028CF18 00288B78 7C 00 07 75 */ extsb. r0, r0 /* 8028CF1C 00288B7C 41 82 00 1C */ beq lbl_8028CF38 /* 8028CF20 00288B80 38 A0 00 04 */ li r5, 4 -/* 8028CF24 00288B84 4B F4 16 45 */ bl func_801CE568 +/* 8028CF24 00288B84 4B F4 16 45 */ bl strncmp /* 8028CF28 00288B88 2C 03 00 00 */ cmpwi r3, 0 /* 8028CF2C 00288B8C 41 82 00 0C */ beq lbl_8028CF38 /* 8028CF30 00288B90 38 60 00 00 */ li r3, 0 @@ -22066,7 +22066,7 @@ lbl_8028CF38: /* 8028CF50 00288BB0 38 7E 00 04 */ addi r3, r30, 4 /* 8028CF54 00288BB4 38 9F 00 04 */ addi r4, r31, 4 /* 8028CF58 00288BB8 38 A0 00 02 */ li r5, 2 -/* 8028CF5C 00288BBC 4B F4 16 0D */ bl func_801CE568 +/* 8028CF5C 00288BBC 4B F4 16 0D */ bl strncmp /* 8028CF60 00288BC0 2C 03 00 00 */ cmpwi r3, 0 /* 8028CF64 00288BC4 41 82 00 0C */ beq lbl_8028CF70 lbl_8028CF68: @@ -22419,7 +22419,7 @@ lbl_8028D434: /* 8028D434 00289094 80 6D AA C0 */ lwz r3, lbl_8063FD80-_SDA_BASE_(r13) /* 8028D438 00289098 38 8D 88 D8 */ addi r4, r13, lbl_8063DB98-_SDA_BASE_ /* 8028D43C 0028909C 38 A0 00 20 */ li r5, 0x20 -/* 8028D440 002890A0 4B F4 0F 51 */ bl func_801CE390 +/* 8028D440 002890A0 4B F4 0F 51 */ bl strncpy /* 8028D444 002890A4 80 6D AA C0 */ lwz r3, lbl_8063FD80-_SDA_BASE_(r13) /* 8028D448 002890A8 38 80 00 00 */ li r4, 0 /* 8028D44C 002890AC 48 01 5D 0D */ bl func_802A3158 @@ -49185,7 +49185,7 @@ lbl_802A4720: /* 802A4760 002A03C0 48 00 00 98 */ b lbl_802A47F8 lbl_802A4764: /* 802A4764 002A03C4 38 8D 89 98 */ addi r4, r13, lbl_8063DC58-_SDA_BASE_ -/* 802A4768 002A03C8 4B F2 9B 69 */ bl func_801CE2D0 +/* 802A4768 002A03C8 4B F2 9B 69 */ bl strcpy /* 802A476C 002A03CC 80 6D AE 18 */ lwz r3, lbl_806400D8-_SDA_BASE_(r13) /* 802A4770 002A03D0 38 80 00 00 */ li r4, 0 /* 802A4774 002A03D4 4B FF E9 E5 */ bl func_802A3158 @@ -53617,7 +53617,7 @@ lbl_802A8638: /* 802A863C 002A429C 7F 84 E3 78 */ mr r4, r28 /* 802A8640 002A42A0 38 63 02 BD */ addi r3, r3, 0x2bd /* 802A8644 002A42A4 38 A0 00 06 */ li r5, 6 -/* 802A8648 002A42A8 4B F2 1D 51 */ bl func_801CA398 +/* 802A8648 002A42A8 4B F2 1D 51 */ bl memcmp /* 802A864C 002A42AC 2C 03 00 00 */ cmpwi r3, 0 /* 802A8650 002A42B0 40 82 00 24 */ bne lbl_802A8674 /* 802A8654 002A42B4 88 1D 00 00 */ lbz r0, 0(r29) @@ -61616,7 +61616,7 @@ lbl_802AFAE0: /* 802AFAE8 002AB748 38 63 A4 68 */ addi r3, r3, lbl_8053A468@l /* 802AFAEC 002AB74C 38 A0 00 08 */ li r5, 8 /* 802AFAF0 002AB750 38 84 C3 20 */ addi r4, r4, lbl_8043C320@l -/* 802AFAF4 002AB754 4B F1 A8 A5 */ bl func_801CA398 +/* 802AFAF4 002AB754 4B F1 A8 A5 */ bl memcmp /* 802AFAF8 002AB758 2C 03 00 00 */ cmpwi r3, 0 /* 802AFAFC 002AB75C 40 82 00 18 */ bne lbl_802AFB14 /* 802AFB00 002AB760 88 1E 00 29 */ lbz r0, 0x29(r30) @@ -62348,7 +62348,7 @@ lbl_802B05BC: /* 802B05C4 002AC224 38 63 A4 68 */ addi r3, r3, lbl_8053A468@l /* 802B05C8 002AC228 38 A0 00 10 */ li r5, 0x10 /* 802B05CC 002AC22C 38 84 C3 20 */ addi r4, r4, lbl_8043C320@l -/* 802B05D0 002AC230 4B F1 9D C9 */ bl func_801CA398 +/* 802B05D0 002AC230 4B F1 9D C9 */ bl memcmp /* 802B05D4 002AC234 2C 03 00 00 */ cmpwi r3, 0 /* 802B05D8 002AC238 40 82 00 18 */ bne lbl_802B05F0 /* 802B05DC 002AC23C 88 1E 00 29 */ lbz r0, 0x29(r30) @@ -62483,7 +62483,7 @@ lbl_802B067C: /* 802B07D8 002AC438 38 7A A4 68 */ addi r3, r26, -23448 /* 802B07DC 002AC43C 38 84 C3 20 */ addi r4, r4, lbl_8043C320@l /* 802B07E0 002AC440 38 A0 00 09 */ li r5, 9 -/* 802B07E4 002AC444 4B F1 9B B5 */ bl func_801CA398 +/* 802B07E4 002AC444 4B F1 9B B5 */ bl memcmp /* 802B07E8 002AC448 2C 03 00 00 */ cmpwi r3, 0 /* 802B07EC 002AC44C 40 82 00 18 */ bne lbl_802B0804 /* 802B07F0 002AC450 88 1E 00 29 */ lbz r0, 0x29(r30) @@ -63049,7 +63049,7 @@ lbl_802B1024: /* 802B102C 002ACC8C 38 63 A4 68 */ addi r3, r3, lbl_8053A468@l /* 802B1030 002ACC90 38 A0 00 06 */ li r5, 6 /* 802B1034 002ACC94 38 84 C3 20 */ addi r4, r4, lbl_8043C320@l -/* 802B1038 002ACC98 4B F1 93 61 */ bl func_801CA398 +/* 802B1038 002ACC98 4B F1 93 61 */ bl memcmp /* 802B103C 002ACC9C 2C 03 00 00 */ cmpwi r3, 0 /* 802B1040 002ACCA0 40 82 00 1C */ bne lbl_802B105C /* 802B1044 002ACCA4 80 61 00 08 */ lwz r3, 8(r1) @@ -65461,7 +65461,7 @@ lbl_802B34B4: /* 802B34CC 002AF12C 80 6D AE 54 */ lwz r3, lbl_80640114-_SDA_BASE_(r13) /* 802B34D0 002AF130 38 97 00 2A */ addi r4, r23, 0x2a /* 802B34D4 002AF134 38 A0 00 04 */ li r5, 4 -/* 802B34D8 002AF138 4B F1 6E C1 */ bl func_801CA398 +/* 802B34D8 002AF138 4B F1 6E C1 */ bl memcmp /* 802B34DC 002AF13C 2C 03 00 00 */ cmpwi r3, 0 /* 802B34E0 002AF140 40 82 00 44 */ bne lbl_802B3524 /* 802B34E4 002AF144 38 00 00 01 */ li r0, 1 @@ -66034,7 +66034,7 @@ lbl_802B3C58: /* 802B3CA4 002AF904 90 61 00 68 */ stw r3, 0x68(r1) /* 802B3CA8 002AF908 7F E3 FB 78 */ mr r3, r31 /* 802B3CAC 002AF90C 90 01 00 70 */ stw r0, 0x70(r1) -/* 802B3CB0 002AF910 4B F1 8C 7D */ bl func_801CC92C +/* 802B3CB0 002AF910 4B F1 8C 7D */ bl vprintf lbl_802B3CB4: /* 802B3CB4 002AF914 80 01 00 84 */ lwz r0, 0x84(r1) /* 802B3CB8 002AF918 83 E1 00 7C */ lwz r31, 0x7c(r1) @@ -66082,7 +66082,7 @@ lbl_802B3D00: /* 802B3D50 002AF9B0 90 61 00 68 */ stw r3, 0x68(r1) /* 802B3D54 002AF9B4 7F E3 FB 78 */ mr r3, r31 /* 802B3D58 002AF9B8 90 01 00 70 */ stw r0, 0x70(r1) -/* 802B3D5C 002AF9BC 4B F1 8B D1 */ bl func_801CC92C +/* 802B3D5C 002AF9BC 4B F1 8B D1 */ bl vprintf lbl_802B3D60: /* 802B3D60 002AF9C0 80 01 00 84 */ lwz r0, 0x84(r1) /* 802B3D64 002AF9C4 83 E1 00 7C */ lwz r31, 0x7c(r1) @@ -66307,7 +66307,7 @@ lbl_802B4060: /* 802B4070 002AFCD0 38 BF 01 84 */ addi r5, r31, 0x184 /* 802B4074 002AFCD4 38 80 00 40 */ li r4, 0x40 /* 802B4078 002AFCD8 4C C6 31 82 */ crclr 6 -/* 802B407C 002AFCDC 4B F1 89 A9 */ bl func_801CCA24 +/* 802B407C 002AFCDC 4B F1 89 A9 */ bl snprintf /* 802B4080 002AFCE0 38 7F 01 98 */ addi r3, r31, 0x198 /* 802B4084 002AFCE4 38 9D 00 40 */ addi r4, r29, 0x40 /* 802B4088 002AFCE8 4C C6 31 82 */ crclr 6 @@ -67693,7 +67693,7 @@ lbl_802B5420: /* 802B5434 002B1094 38 9B 01 A0 */ addi r4, r27, 0x1a0 /* 802B5438 002B1098 38 63 00 06 */ addi r3, r3, 6 /* 802B543C 002B109C 38 A0 00 10 */ li r5, 0x10 -/* 802B5440 002B10A0 4B F1 4F 59 */ bl func_801CA398 +/* 802B5440 002B10A0 4B F1 4F 59 */ bl memcmp /* 802B5444 002B10A4 2C 03 00 00 */ cmpwi r3, 0 /* 802B5448 002B10A8 40 82 00 D8 */ bne lbl_802B5520 /* 802B544C 002B10AC 88 6D AE C0 */ lbz r3, lbl_80640180-_SDA_BASE_(r13) @@ -67848,7 +67848,7 @@ lbl_802B565C: /* 802B5664 002B12C4 38 63 00 06 */ addi r3, r3, 6 /* 802B5668 002B12C8 3B 40 00 FF */ li r26, 0xff /* 802B566C 002B12CC 38 A0 00 10 */ li r5, 0x10 -/* 802B5670 002B12D0 4B F1 4D 29 */ bl func_801CA398 +/* 802B5670 002B12D0 4B F1 4D 29 */ bl memcmp /* 802B5674 002B12D4 2C 03 00 00 */ cmpwi r3, 0 /* 802B5678 002B12D8 40 82 00 24 */ bne lbl_802B569C /* 802B567C 002B12DC 38 7F 0C E8 */ addi r3, r31, 0xce8 @@ -68608,7 +68608,7 @@ lbl_802B60C8: /* 802B60FC 002B1D5C 38 A0 00 13 */ li r5, 0x13 /* 802B6100 002B1D60 9B 95 00 5B */ stb r28, 0x5b(r21) /* 802B6104 002B1D64 9B B5 00 5C */ stb r29, 0x5c(r21) -/* 802B6108 002B1D68 4B F1 42 91 */ bl func_801CA398 +/* 802B6108 002B1D68 4B F1 42 91 */ bl memcmp /* 802B610C 002B1D6C 2C 03 00 00 */ cmpwi r3, 0 /* 802B6110 002B1D70 40 82 00 14 */ bne lbl_802B6124 /* 802B6114 002B1D74 9B B5 00 57 */ stb r29, 0x57(r21) @@ -70045,7 +70045,7 @@ func_802B7508: /* 802B7560 002B31C0 7F A3 EB 78 */ mr r3, r29 /* 802B7564 002B31C4 38 9F 01 A0 */ addi r4, r31, 0x1a0 /* 802B7568 002B31C8 38 A0 00 10 */ li r5, 0x10 -/* 802B756C 002B31CC 4B F1 2E 2D */ bl func_801CA398 +/* 802B756C 002B31CC 4B F1 2E 2D */ bl memcmp /* 802B7570 002B31D0 2C 03 00 00 */ cmpwi r3, 0 /* 802B7574 002B31D4 40 82 00 48 */ bne lbl_802B75BC /* 802B7578 002B31D8 38 1F 00 00 */ addi r0, r31, 0 @@ -70135,7 +70135,7 @@ func_802B7620: /* 802B76AC 002B330C 7F A3 EB 78 */ mr r3, r29 /* 802B76B0 002B3310 38 9F 01 A0 */ addi r4, r31, 0x1a0 /* 802B76B4 002B3314 38 A0 00 10 */ li r5, 0x10 -/* 802B76B8 002B3318 4B F1 2C E1 */ bl func_801CA398 +/* 802B76B8 002B3318 4B F1 2C E1 */ bl memcmp /* 802B76BC 002B331C 2C 03 00 00 */ cmpwi r3, 0 /* 802B76C0 002B3320 40 82 00 28 */ bne lbl_802B76E8 /* 802B76C4 002B3324 38 7F 07 14 */ addi r3, r31, 0x714 @@ -70202,7 +70202,7 @@ lbl_802B7798: /* 802B7798 002B33F8 7F E3 FB 78 */ mr r3, r31 /* 802B779C 002B33FC 7F 44 D3 78 */ mr r4, r26 /* 802B77A0 002B3400 38 A0 00 06 */ li r5, 6 -/* 802B77A4 002B3404 4B F1 2B F5 */ bl func_801CA398 +/* 802B77A4 002B3404 4B F1 2B F5 */ bl memcmp /* 802B77A8 002B3408 2C 03 00 00 */ cmpwi r3, 0 /* 802B77AC 002B340C 40 82 00 14 */ bne lbl_802B77C0 /* 802B77B0 002B3410 1C 1E 00 60 */ mulli r0, r30, 0x60 @@ -70223,7 +70223,7 @@ lbl_802B77E0: /* 802B77E0 002B3440 7F E3 FB 78 */ mr r3, r31 /* 802B77E4 002B3444 7F 44 D3 78 */ mr r4, r26 /* 802B77E8 002B3448 38 A0 00 06 */ li r5, 6 -/* 802B77EC 002B344C 4B F1 2B AD */ bl func_801CA398 +/* 802B77EC 002B344C 4B F1 2B AD */ bl memcmp /* 802B77F0 002B3450 2C 03 00 00 */ cmpwi r3, 0 /* 802B77F4 002B3454 40 82 00 14 */ bne lbl_802B7808 /* 802B77F8 002B3458 1C 1E 00 60 */ mulli r0, r30, 0x60 @@ -70320,7 +70320,7 @@ lbl_802B792C: /* 802B7930 002B3590 38 9B 00 40 */ addi r4, r27, 0x40 /* 802B7934 002B3594 38 A0 00 06 */ li r5, 6 /* 802B7938 002B3598 38 63 00 40 */ addi r3, r3, 0x40 -/* 802B793C 002B359C 4B F1 2A 5D */ bl func_801CA398 +/* 802B793C 002B359C 4B F1 2A 5D */ bl memcmp /* 802B7940 002B35A0 2C 03 00 00 */ cmpwi r3, 0 /* 802B7944 002B35A4 40 82 00 A0 */ bne lbl_802B79E4 /* 802B7948 002B35A8 1F 9F 00 0C */ mulli r28, r31, 0xc @@ -70332,7 +70332,7 @@ lbl_802B792C: /* 802B7960 002B35C0 80 84 00 1C */ lwz r4, 0x1c(r4) /* 802B7964 002B35C4 38 63 00 40 */ addi r3, r3, 0x40 /* 802B7968 002B35C8 38 84 00 40 */ addi r4, r4, 0x40 -/* 802B796C 002B35CC 4B F1 2A 2D */ bl func_801CA398 +/* 802B796C 002B35CC 4B F1 2A 2D */ bl memcmp /* 802B7970 002B35D0 2C 03 00 00 */ cmpwi r3, 0 /* 802B7974 002B35D4 41 82 00 80 */ beq lbl_802B79F4 /* 802B7978 002B35D8 7F 9E E2 14 */ add r28, r30, r28 @@ -70345,7 +70345,7 @@ lbl_802B792C: /* 802B7994 002B35F4 80 C4 00 00 */ lwz r6, 0(r4) /* 802B7998 002B35F8 38 83 00 40 */ addi r4, r3, 0x40 /* 802B799C 002B35FC 38 66 00 40 */ addi r3, r6, 0x40 -/* 802B79A0 002B3600 4B F1 29 F9 */ bl func_801CA398 +/* 802B79A0 002B3600 4B F1 29 F9 */ bl memcmp /* 802B79A4 002B3604 2C 03 00 00 */ cmpwi r3, 0 /* 802B79A8 002B3608 40 82 00 10 */ bne lbl_802B79B8 /* 802B79AC 002B360C 80 1C 00 20 */ lwz r0, 0x20(r28) @@ -70398,7 +70398,7 @@ lbl_802B7A44: /* 802B7A48 002B36A8 38 9B 00 40 */ addi r4, r27, 0x40 /* 802B7A4C 002B36AC 38 A0 00 06 */ li r5, 6 /* 802B7A50 002B36B0 38 63 00 40 */ addi r3, r3, 0x40 -/* 802B7A54 002B36B4 4B F1 29 45 */ bl func_801CA398 +/* 802B7A54 002B36B4 4B F1 29 45 */ bl memcmp /* 802B7A58 002B36B8 2C 03 00 00 */ cmpwi r3, 0 /* 802B7A5C 002B36BC 40 82 00 A0 */ bne lbl_802B7AFC /* 802B7A60 002B36C0 1F 9F 00 0C */ mulli r28, r31, 0xc @@ -70410,7 +70410,7 @@ lbl_802B7A44: /* 802B7A78 002B36D8 80 84 00 1C */ lwz r4, 0x1c(r4) /* 802B7A7C 002B36DC 38 63 00 40 */ addi r3, r3, 0x40 /* 802B7A80 002B36E0 38 84 00 40 */ addi r4, r4, 0x40 -/* 802B7A84 002B36E4 4B F1 29 15 */ bl func_801CA398 +/* 802B7A84 002B36E4 4B F1 29 15 */ bl memcmp /* 802B7A88 002B36E8 2C 03 00 00 */ cmpwi r3, 0 /* 802B7A8C 002B36EC 41 82 00 80 */ beq lbl_802B7B0C /* 802B7A90 002B36F0 7F 9E E2 14 */ add r28, r30, r28 @@ -70423,7 +70423,7 @@ lbl_802B7A44: /* 802B7AAC 002B370C 80 C4 00 00 */ lwz r6, 0(r4) /* 802B7AB0 002B3710 38 83 00 40 */ addi r4, r3, 0x40 /* 802B7AB4 002B3714 38 66 00 40 */ addi r3, r6, 0x40 -/* 802B7AB8 002B3718 4B F1 28 E1 */ bl func_801CA398 +/* 802B7AB8 002B3718 4B F1 28 E1 */ bl memcmp /* 802B7ABC 002B371C 2C 03 00 00 */ cmpwi r3, 0 /* 802B7AC0 002B3720 40 82 00 10 */ bne lbl_802B7AD0 /* 802B7AC4 002B3724 80 1C 00 24 */ lwz r0, 0x24(r28) @@ -70478,7 +70478,7 @@ lbl_802B7B60: /* 802B7B68 002B37C8 38 A0 00 06 */ li r5, 6 /* 802B7B6C 002B37CC 3A E3 00 40 */ addi r23, r3, 0x40 /* 802B7B70 002B37D0 7E E3 BB 78 */ mr r3, r23 -/* 802B7B74 002B37D4 4B F1 28 25 */ bl func_801CA398 +/* 802B7B74 002B37D4 4B F1 28 25 */ bl memcmp /* 802B7B78 002B37D8 2C 03 00 00 */ cmpwi r3, 0 /* 802B7B7C 002B37DC 40 82 00 D4 */ bne lbl_802B7C50 /* 802B7B80 002B37E0 82 DD 00 14 */ lwz r22, 0x14(r29) @@ -70489,7 +70489,7 @@ lbl_802B7B8C: /* 802B7B90 002B37F0 38 99 00 40 */ addi r4, r25, 0x40 /* 802B7B94 002B37F4 38 A0 00 06 */ li r5, 6 /* 802B7B98 002B37F8 38 78 00 40 */ addi r3, r24, 0x40 -/* 802B7B9C 002B37FC 4B F1 27 FD */ bl func_801CA398 +/* 802B7B9C 002B37FC 4B F1 27 FD */ bl memcmp /* 802B7BA0 002B3800 2C 03 00 00 */ cmpwi r3, 0 /* 802B7BA4 002B3804 41 82 00 A0 */ beq lbl_802B7C44 /* 802B7BA8 002B3808 88 18 00 59 */ lbz r0, 0x59(r24) @@ -70499,7 +70499,7 @@ lbl_802B7B8C: /* 802B7BB8 002B3818 7E E4 BB 78 */ mr r4, r23 /* 802B7BBC 002B381C 38 A0 00 06 */ li r5, 6 /* 802B7BC0 002B3820 38 63 00 40 */ addi r3, r3, 0x40 -/* 802B7BC4 002B3824 4B F1 27 D5 */ bl func_801CA398 +/* 802B7BC4 002B3824 4B F1 27 D5 */ bl memcmp /* 802B7BC8 002B3828 2C 03 00 00 */ cmpwi r3, 0 /* 802B7BCC 002B382C 40 82 00 1C */ bne lbl_802B7BE8 /* 802B7BD0 002B3830 80 16 00 08 */ lwz r0, 8(r22) @@ -70573,7 +70573,7 @@ lbl_802B7CB4: /* 802B7CB8 002B3918 38 9B 00 40 */ addi r4, r27, 0x40 /* 802B7CBC 002B391C 38 A0 00 06 */ li r5, 6 /* 802B7CC0 002B3920 38 63 00 40 */ addi r3, r3, 0x40 -/* 802B7CC4 002B3924 4B F1 26 D5 */ bl func_801CA398 +/* 802B7CC4 002B3924 4B F1 26 D5 */ bl memcmp /* 802B7CC8 002B3928 2C 03 00 00 */ cmpwi r3, 0 /* 802B7CCC 002B392C 40 82 00 A0 */ bne lbl_802B7D6C /* 802B7CD0 002B3930 1F 9F 00 0C */ mulli r28, r31, 0xc @@ -70585,7 +70585,7 @@ lbl_802B7CB4: /* 802B7CE8 002B3948 80 84 00 6C */ lwz r4, 0x6c(r4) /* 802B7CEC 002B394C 38 63 00 40 */ addi r3, r3, 0x40 /* 802B7CF0 002B3950 38 84 00 40 */ addi r4, r4, 0x40 -/* 802B7CF4 002B3954 4B F1 26 A5 */ bl func_801CA398 +/* 802B7CF4 002B3954 4B F1 26 A5 */ bl memcmp /* 802B7CF8 002B3958 2C 03 00 00 */ cmpwi r3, 0 /* 802B7CFC 002B395C 41 82 00 80 */ beq lbl_802B7D7C /* 802B7D00 002B3960 7F 9E E2 14 */ add r28, r30, r28 @@ -70598,7 +70598,7 @@ lbl_802B7CB4: /* 802B7D1C 002B397C 80 C4 00 00 */ lwz r6, 0(r4) /* 802B7D20 002B3980 38 83 00 40 */ addi r4, r3, 0x40 /* 802B7D24 002B3984 38 66 00 40 */ addi r3, r6, 0x40 -/* 802B7D28 002B3988 4B F1 26 71 */ bl func_801CA398 +/* 802B7D28 002B3988 4B F1 26 71 */ bl memcmp /* 802B7D2C 002B398C 2C 03 00 00 */ cmpwi r3, 0 /* 802B7D30 002B3990 40 82 00 10 */ bne lbl_802B7D40 /* 802B7D34 002B3994 80 1C 00 70 */ lwz r0, 0x70(r28) @@ -70651,7 +70651,7 @@ lbl_802B7DCC: /* 802B7DD0 002B3A30 38 9B 00 40 */ addi r4, r27, 0x40 /* 802B7DD4 002B3A34 38 A0 00 06 */ li r5, 6 /* 802B7DD8 002B3A38 38 63 00 40 */ addi r3, r3, 0x40 -/* 802B7DDC 002B3A3C 4B F1 25 BD */ bl func_801CA398 +/* 802B7DDC 002B3A3C 4B F1 25 BD */ bl memcmp /* 802B7DE0 002B3A40 2C 03 00 00 */ cmpwi r3, 0 /* 802B7DE4 002B3A44 40 82 00 A0 */ bne lbl_802B7E84 /* 802B7DE8 002B3A48 1F 9F 00 0C */ mulli r28, r31, 0xc @@ -70663,7 +70663,7 @@ lbl_802B7DCC: /* 802B7E00 002B3A60 80 84 00 6C */ lwz r4, 0x6c(r4) /* 802B7E04 002B3A64 38 63 00 40 */ addi r3, r3, 0x40 /* 802B7E08 002B3A68 38 84 00 40 */ addi r4, r4, 0x40 -/* 802B7E0C 002B3A6C 4B F1 25 8D */ bl func_801CA398 +/* 802B7E0C 002B3A6C 4B F1 25 8D */ bl memcmp /* 802B7E10 002B3A70 2C 03 00 00 */ cmpwi r3, 0 /* 802B7E14 002B3A74 41 82 00 80 */ beq lbl_802B7E94 /* 802B7E18 002B3A78 7F 9E E2 14 */ add r28, r30, r28 @@ -70676,7 +70676,7 @@ lbl_802B7DCC: /* 802B7E34 002B3A94 80 C4 00 00 */ lwz r6, 0(r4) /* 802B7E38 002B3A98 38 83 00 40 */ addi r4, r3, 0x40 /* 802B7E3C 002B3A9C 38 66 00 40 */ addi r3, r6, 0x40 -/* 802B7E40 002B3AA0 4B F1 25 59 */ bl func_801CA398 +/* 802B7E40 002B3AA0 4B F1 25 59 */ bl memcmp /* 802B7E44 002B3AA4 2C 03 00 00 */ cmpwi r3, 0 /* 802B7E48 002B3AA8 40 82 00 10 */ bne lbl_802B7E58 /* 802B7E4C 002B3AAC 80 1C 00 74 */ lwz r0, 0x74(r28) @@ -70731,7 +70731,7 @@ lbl_802B7EE8: /* 802B7EF0 002B3B50 38 A0 00 06 */ li r5, 6 /* 802B7EF4 002B3B54 3A E3 00 40 */ addi r23, r3, 0x40 /* 802B7EF8 002B3B58 7E E3 BB 78 */ mr r3, r23 -/* 802B7EFC 002B3B5C 4B F1 24 9D */ bl func_801CA398 +/* 802B7EFC 002B3B5C 4B F1 24 9D */ bl memcmp /* 802B7F00 002B3B60 2C 03 00 00 */ cmpwi r3, 0 /* 802B7F04 002B3B64 40 82 00 D4 */ bne lbl_802B7FD8 /* 802B7F08 002B3B68 82 DD 00 64 */ lwz r22, 0x64(r29) @@ -70742,7 +70742,7 @@ lbl_802B7F14: /* 802B7F18 002B3B78 38 99 00 40 */ addi r4, r25, 0x40 /* 802B7F1C 002B3B7C 38 A0 00 06 */ li r5, 6 /* 802B7F20 002B3B80 38 78 00 40 */ addi r3, r24, 0x40 -/* 802B7F24 002B3B84 4B F1 24 75 */ bl func_801CA398 +/* 802B7F24 002B3B84 4B F1 24 75 */ bl memcmp /* 802B7F28 002B3B88 2C 03 00 00 */ cmpwi r3, 0 /* 802B7F2C 002B3B8C 41 82 00 A0 */ beq lbl_802B7FCC /* 802B7F30 002B3B90 88 18 00 59 */ lbz r0, 0x59(r24) @@ -70752,7 +70752,7 @@ lbl_802B7F14: /* 802B7F40 002B3BA0 7E E4 BB 78 */ mr r4, r23 /* 802B7F44 002B3BA4 38 A0 00 06 */ li r5, 6 /* 802B7F48 002B3BA8 38 63 00 40 */ addi r3, r3, 0x40 -/* 802B7F4C 002B3BAC 4B F1 24 4D */ bl func_801CA398 +/* 802B7F4C 002B3BAC 4B F1 24 4D */ bl memcmp /* 802B7F50 002B3BB0 2C 03 00 00 */ cmpwi r3, 0 /* 802B7F54 002B3BB4 40 82 00 1C */ bne lbl_802B7F70 /* 802B7F58 002B3BB8 80 16 00 08 */ lwz r0, 8(r22) @@ -70992,7 +70992,7 @@ lbl_802B81A8: /* 802B82D0 002B3F30 7F 84 E3 78 */ mr r4, r28 /* 802B82D4 002B3F34 38 A0 00 06 */ li r5, 6 /* 802B82D8 002B3F38 38 7B 00 40 */ addi r3, r27, 0x40 -/* 802B82DC 002B3F3C 4B F1 20 BD */ bl func_801CA398 +/* 802B82DC 002B3F3C 4B F1 20 BD */ bl memcmp /* 802B82E0 002B3F40 2C 03 00 00 */ cmpwi r3, 0 /* 802B82E4 002B3F44 40 82 00 18 */ bne lbl_802B82FC /* 802B82E8 002B3F48 38 00 00 0C */ li r0, 0xc @@ -71031,7 +71031,7 @@ lbl_802B82FC: /* 802B8368 002B3FC8 7F 83 E3 78 */ mr r3, r28 /* 802B836C 002B3FCC 38 9B 00 40 */ addi r4, r27, 0x40 /* 802B8370 002B3FD0 38 A0 00 06 */ li r5, 6 -/* 802B8374 002B3FD4 4B F1 20 25 */ bl func_801CA398 +/* 802B8374 002B3FD4 4B F1 20 25 */ bl memcmp /* 802B8378 002B3FD8 2C 03 00 00 */ cmpwi r3, 0 /* 802B837C 002B3FDC 40 82 00 08 */ bne lbl_802B8384 /* 802B8380 002B3FE0 7F 7A DB 78 */ mr r26, r27 @@ -71103,7 +71103,7 @@ lbl_802B83F8: /* 802B8474 002B40D4 88 DD 06 E5 */ lbz r6, 0x6e5(r29) /* 802B8478 002B40D8 38 06 FF FF */ addi r0, r6, -1 /* 802B847C 002B40DC 98 1D 06 E5 */ stb r0, 0x6e5(r29) -/* 802B8480 002B40E0 4B F1 1F 19 */ bl func_801CA398 +/* 802B8480 002B40E0 4B F1 1F 19 */ bl memcmp /* 802B8484 002B40E4 2C 03 00 00 */ cmpwi r3, 0 /* 802B8488 002B40E8 40 82 00 0C */ bne lbl_802B8494 /* 802B848C 002B40EC 38 00 00 FF */ li r0, 0xff @@ -71124,7 +71124,7 @@ lbl_802B84AC: /* 802B84C0 002B4120 7C 7B 02 14 */ add r3, r27, r0 /* 802B84C4 002B4124 3B 43 00 01 */ addi r26, r3, 1 /* 802B84C8 002B4128 7F 43 D3 78 */ mr r3, r26 -/* 802B84CC 002B412C 4B F1 1E CD */ bl func_801CA398 +/* 802B84CC 002B412C 4B F1 1E CD */ bl memcmp /* 802B84D0 002B4130 2C 03 00 00 */ cmpwi r3, 0 /* 802B84D4 002B4134 40 82 00 18 */ bne lbl_802B84EC /* 802B84D8 002B4138 7F 43 D3 78 */ mr r3, r26 @@ -71142,7 +71142,7 @@ lbl_802B84FC: /* 802B8500 002B4160 7F 84 E3 78 */ mr r4, r28 /* 802B8504 002B4164 38 63 00 40 */ addi r3, r3, 0x40 /* 802B8508 002B4168 38 A0 00 06 */ li r5, 6 -/* 802B850C 002B416C 4B F1 1E 8D */ bl func_801CA398 +/* 802B850C 002B416C 4B F1 1E 8D */ bl memcmp /* 802B8510 002B4170 2C 03 00 00 */ cmpwi r3, 0 /* 802B8514 002B4174 40 82 00 1C */ bne lbl_802B8530 /* 802B8518 002B4178 88 7D 06 E5 */ lbz r3, 0x6e5(r29) @@ -71789,7 +71789,7 @@ lbl_802B8DF4: /* 802B8E54 002B4AB4 3B FF B1 C8 */ addi r31, r31, lbl_8053B1C8@l /* 802B8E58 002B4AB8 38 A0 00 06 */ li r5, 6 /* 802B8E5C 002B4ABC 38 7F 00 40 */ addi r3, r31, 0x40 -/* 802B8E60 002B4AC0 4B F1 15 39 */ bl func_801CA398 +/* 802B8E60 002B4AC0 4B F1 15 39 */ bl memcmp /* 802B8E64 002B4AC4 2C 03 00 00 */ cmpwi r3, 0 /* 802B8E68 002B4AC8 40 82 00 08 */ bne lbl_802B8E70 /* 802B8E6C 002B4ACC 7F FD FB 78 */ mr r29, r31 @@ -71980,7 +71980,7 @@ lbl_802B9030: /* 802B90F0 002B4D50 3B BD B1 C8 */ addi r29, r29, lbl_8053B1C8@l /* 802B90F4 002B4D54 38 A0 00 06 */ li r5, 6 /* 802B90F8 002B4D58 38 7D 00 40 */ addi r3, r29, 0x40 -/* 802B90FC 002B4D5C 4B F1 12 9D */ bl func_801CA398 +/* 802B90FC 002B4D5C 4B F1 12 9D */ bl memcmp /* 802B9100 002B4D60 2C 03 00 00 */ cmpwi r3, 0 /* 802B9104 002B4D64 41 82 00 10 */ beq lbl_802B9114 /* 802B9108 002B4D68 7F C3 F3 78 */ mr r3, r30 @@ -72067,7 +72067,7 @@ lbl_802B9214: /* 802B9228 002B4E88 3B BD B1 C8 */ addi r29, r29, lbl_8053B1C8@l /* 802B922C 002B4E8C 38 A0 00 06 */ li r5, 6 /* 802B9230 002B4E90 38 9D 00 40 */ addi r4, r29, 0x40 -/* 802B9234 002B4E94 4B F1 11 65 */ bl func_801CA398 +/* 802B9234 002B4E94 4B F1 11 65 */ bl memcmp /* 802B9238 002B4E98 2C 03 00 00 */ cmpwi r3, 0 /* 802B923C 002B4E9C 40 82 02 C0 */ bne lbl_802B94FC /* 802B9240 002B4EA0 88 1F 00 0C */ lbz r0, 0xc(r31) @@ -76456,12 +76456,12 @@ lbl_802BCE8C: /* 802BCEC8 002B8B28 91 81 00 68 */ stw r12, 0x68(r1) /* 802BCECC 002B8B2C 91 61 00 6C */ stw r11, 0x6c(r1) /* 802BCED0 002B8B30 90 01 00 70 */ stw r0, 0x70(r1) -/* 802BCED4 002B8B34 4B F0 FA D1 */ bl func_801CC9A4 +/* 802BCED4 002B8B34 4B F0 FA D1 */ bl vsprintf /* 802BCED8 002B8B38 38 7F 6E 40 */ addi r3, r31, 0x6e40 /* 802BCEDC 002B8B3C 38 8D 8A 18 */ addi r4, r13, lbl_8063DCD8-_SDA_BASE_ /* 802BCEE0 002B8B40 7C 65 1B 78 */ mr r5, r3 /* 802BCEE4 002B8B44 4C C6 31 82 */ crclr 6 -/* 802BCEE8 002B8B48 4B F0 FC 15 */ bl func_801CCAFC +/* 802BCEE8 002B8B48 4B F0 FC 15 */ bl sprintf /* 802BCEEC 002B8B4C 38 7F 6E 40 */ addi r3, r31, 0x6e40 /* 802BCEF0 002B8B50 4C C6 31 82 */ crclr 6 /* 802BCEF4 002B8B54 4B D4 AB D1 */ bl func_80007AC4 @@ -78365,7 +78365,7 @@ lbl_802BE8F8: /* 802BE8F8 002BA558 7F E4 FB 78 */ mr r4, r31 /* 802BE8FC 002BA55C 38 7D 00 0E */ addi r3, r29, 0xe /* 802BE900 002BA560 38 A0 00 20 */ li r5, 0x20 -/* 802BE904 002BA564 4B F0 FA 8D */ bl func_801CE390 +/* 802BE904 002BA564 4B F0 FA 8D */ bl strncpy /* 802BE908 002BA568 7F A3 EB 78 */ mr r3, r29 /* 802BE90C 002BA56C 4B FF F1 01 */ bl func_802BDA0C /* 802BE910 002BA570 48 00 00 C4 */ b lbl_802BE9D4 @@ -78418,7 +78418,7 @@ lbl_802BE9BC: /* 802BE9BC 002BA61C 7F C4 F3 78 */ mr r4, r30 /* 802BE9C0 002BA620 38 7D 00 0E */ addi r3, r29, 0xe /* 802BE9C4 002BA624 38 A0 00 20 */ li r5, 0x20 -/* 802BE9C8 002BA628 4B F0 F9 C9 */ bl func_801CE390 +/* 802BE9C8 002BA628 4B F0 F9 C9 */ bl strncpy /* 802BE9CC 002BA62C 7F A3 EB 78 */ mr r3, r29 /* 802BE9D0 002BA630 4B FF F0 3D */ bl func_802BDA0C lbl_802BE9D4: @@ -78738,7 +78738,7 @@ lbl_802BEE6C: /* 802BEE6C 002BAACC 7E E4 BB 78 */ mr r4, r23 /* 802BEE70 002BAAD0 38 78 00 0E */ addi r3, r24, 0xe /* 802BEE74 002BAAD4 38 A0 00 20 */ li r5, 0x20 -/* 802BEE78 002BAAD8 4B F0 F5 19 */ bl func_801CE390 +/* 802BEE78 002BAAD8 4B F0 F5 19 */ bl strncpy /* 802BEE7C 002BAADC 7F 03 C3 78 */ mr r3, r24 /* 802BEE80 002BAAE0 4B FF EB 8D */ bl func_802BDA0C lbl_802BEE84: @@ -78899,7 +78899,7 @@ lbl_802BF0A0: /* 802BF0B4 002BAD14 90 01 00 14 */ stw r0, 0x14(r1) /* 802BF0B8 002BAD18 38 A0 00 1F */ li r5, 0x1f /* 802BF0BC 002BAD1C 38 63 00 20 */ addi r3, r3, 0x20 -/* 802BF0C0 002BAD20 4B F0 F2 D1 */ bl func_801CE390 +/* 802BF0C0 002BAD20 4B F0 F2 D1 */ bl strncpy /* 802BF0C4 002BAD24 3C 60 80 2C */ lis r3, lbl_802BF0A0@ha /* 802BF0C8 002BAD28 38 63 F0 A0 */ addi r3, r3, lbl_802BF0A0@l /* 802BF0CC 002BAD2C 48 00 B8 B5 */ bl func_802CA980 @@ -78931,7 +78931,7 @@ lbl_802BF0E0: /* 802BF130 002BAD90 38 7E 00 0E */ addi r3, r30, 0xe /* 802BF134 002BAD94 38 9D 00 04 */ addi r4, r29, 4 /* 802BF138 002BAD98 38 A0 00 20 */ li r5, 0x20 -/* 802BF13C 002BAD9C 4B F0 F2 55 */ bl func_801CE390 +/* 802BF13C 002BAD9C 4B F0 F2 55 */ bl strncpy /* 802BF140 002BADA0 38 00 02 04 */ li r0, 0x204 /* 802BF144 002BADA4 7F C3 F3 78 */ mr r3, r30 /* 802BF148 002BADA8 B0 1E 00 00 */ sth r0, 0(r30) @@ -78967,7 +78967,7 @@ lbl_802BF16C: /* 802BF1B8 002BAE18 38 7E 00 0E */ addi r3, r30, 0xe /* 802BF1BC 002BAE1C 38 9D 00 04 */ addi r4, r29, 4 /* 802BF1C0 002BAE20 38 A0 00 20 */ li r5, 0x20 -/* 802BF1C4 002BAE24 4B F0 F1 CD */ bl func_801CE390 +/* 802BF1C4 002BAE24 4B F0 F1 CD */ bl strncpy /* 802BF1C8 002BAE28 38 00 02 04 */ li r0, 0x204 /* 802BF1CC 002BAE2C 7F C3 F3 78 */ mr r3, r30 /* 802BF1D0 002BAE30 B0 1E 00 00 */ sth r0, 0(r30) @@ -78996,7 +78996,7 @@ lbl_802BF1D8: /* 802BF228 002BAE88 7F A4 EB 78 */ mr r4, r29 /* 802BF22C 002BAE8C 38 61 00 0E */ addi r3, r1, 0xe /* 802BF230 002BAE90 38 A0 00 20 */ li r5, 0x20 -/* 802BF234 002BAE94 4B F0 F1 5D */ bl func_801CE390 +/* 802BF234 002BAE94 4B F0 F1 5D */ bl strncpy /* 802BF238 002BAE98 3C 60 80 40 */ lis r3, lbl_803FDB90@ha /* 802BF23C 002BAE9C 38 00 00 17 */ li r0, 0x17 /* 802BF240 002BAEA0 38 63 DB 90 */ addi r3, r3, lbl_803FDB90@l @@ -79148,7 +79148,7 @@ lbl_802BF434: /* 802BF458 002BB0B8 98 01 01 07 */ stb r0, 0x107(r1) /* 802BF45C 002BB0BC 88 1D 00 02 */ lbz r0, 2(r29) /* 802BF460 002BB0C0 98 01 01 08 */ stb r0, 0x108(r1) -/* 802BF464 002BB0C4 4B F0 EF 2D */ bl func_801CE390 +/* 802BF464 002BB0C4 4B F0 EF 2D */ bl strncpy /* 802BF468 002BB0C8 3C 60 80 57 */ lis r3, lbl_80568814@ha /* 802BF46C 002BB0CC 38 00 00 00 */ li r0, 0 /* 802BF470 002BB0D0 38 63 88 14 */ addi r3, r3, lbl_80568814@l @@ -80066,7 +80066,7 @@ func_802C0124: /* 802C0158 002BBDB8 B0 03 00 00 */ sth r0, 0(r3) /* 802C015C 002BBDBC 38 A0 00 20 */ li r5, 0x20 /* 802C0160 002BBDC0 38 63 00 08 */ addi r3, r3, 8 -/* 802C0164 002BBDC4 4B F0 E2 2D */ bl func_801CE390 +/* 802C0164 002BBDC4 4B F0 E2 2D */ bl strncpy /* 802C0168 002BBDC8 7F E3 FB 78 */ mr r3, r31 /* 802C016C 002BBDCC 4B FF D8 A1 */ bl func_802BDA0C lbl_802C0170: @@ -83742,7 +83742,7 @@ lbl_802C3504: /* 802C3510 002BF170 7F C4 F3 78 */ mr r4, r30 /* 802C3514 002BF174 38 7D 00 08 */ addi r3, r29, 8 /* 802C3518 002BF178 38 A0 00 06 */ li r5, 6 -/* 802C351C 002BF17C 4B F0 6E 7D */ bl func_801CA398 +/* 802C351C 002BF17C 4B F0 6E 7D */ bl memcmp /* 802C3520 002BF180 2C 03 00 00 */ cmpwi r3, 0 /* 802C3524 002BF184 40 82 00 08 */ bne lbl_802C352C /* 802C3528 002BF188 48 00 00 18 */ b lbl_802C3540 @@ -83886,7 +83886,7 @@ lbl_802C3714: /* 802C3720 002BF380 38 7E 00 08 */ addi r3, r30, 8 /* 802C3724 002BF384 38 9F 00 08 */ addi r4, r31, 8 /* 802C3728 002BF388 38 A0 00 06 */ li r5, 6 -/* 802C372C 002BF38C 4B F0 6C 6D */ bl func_801CA398 +/* 802C372C 002BF38C 4B F0 6C 6D */ bl memcmp /* 802C3730 002BF390 2C 03 00 00 */ cmpwi r3, 0 /* 802C3734 002BF394 40 82 00 08 */ bne lbl_802C373C /* 802C3738 002BF398 48 00 00 18 */ b lbl_802C3750 @@ -83959,7 +83959,7 @@ lbl_802C380C: /* 802C3818 002BF478 7F A4 EB 78 */ mr r4, r29 /* 802C381C 002BF47C 38 7E 00 08 */ addi r3, r30, 8 /* 802C3820 002BF480 38 A0 00 06 */ li r5, 6 -/* 802C3824 002BF484 4B F0 6B 75 */ bl func_801CA398 +/* 802C3824 002BF484 4B F0 6B 75 */ bl memcmp /* 802C3828 002BF488 2C 03 00 00 */ cmpwi r3, 0 /* 802C382C 002BF48C 40 82 00 08 */ bne lbl_802C3834 /* 802C3830 002BF490 48 00 00 18 */ b lbl_802C3848 @@ -84052,7 +84052,7 @@ lbl_802C394C: /* 802C3958 002BF5B8 7F 84 E3 78 */ mr r4, r28 /* 802C395C 002BF5BC 38 7F 00 08 */ addi r3, r31, 8 /* 802C3960 002BF5C0 38 A0 00 06 */ li r5, 6 -/* 802C3964 002BF5C4 4B F0 6A 35 */ bl func_801CA398 +/* 802C3964 002BF5C4 4B F0 6A 35 */ bl memcmp /* 802C3968 002BF5C8 2C 03 00 00 */ cmpwi r3, 0 /* 802C396C 002BF5CC 40 82 00 08 */ bne lbl_802C3974 /* 802C3970 002BF5D0 48 00 00 18 */ b lbl_802C3988 @@ -84388,7 +84388,7 @@ lbl_802C3DFC: /* 802C3E08 002BFA68 7F 84 E3 78 */ mr r4, r28 /* 802C3E0C 002BFA6C 38 7F 00 08 */ addi r3, r31, 8 /* 802C3E10 002BFA70 38 A0 00 06 */ li r5, 6 -/* 802C3E14 002BFA74 4B F0 65 85 */ bl func_801CA398 +/* 802C3E14 002BFA74 4B F0 65 85 */ bl memcmp /* 802C3E18 002BFA78 2C 03 00 00 */ cmpwi r3, 0 /* 802C3E1C 002BFA7C 40 82 00 08 */ bne lbl_802C3E24 /* 802C3E20 002BFA80 48 00 00 18 */ b lbl_802C3E38 @@ -84646,7 +84646,7 @@ lbl_802C4194: /* 802C41A0 002BFE00 38 7D 00 08 */ addi r3, r29, 8 /* 802C41A4 002BFE04 38 9F 00 08 */ addi r4, r31, 8 /* 802C41A8 002BFE08 38 A0 00 06 */ li r5, 6 -/* 802C41AC 002BFE0C 4B F0 61 ED */ bl func_801CA398 +/* 802C41AC 002BFE0C 4B F0 61 ED */ bl memcmp /* 802C41B0 002BFE10 2C 03 00 00 */ cmpwi r3, 0 /* 802C41B4 002BFE14 40 82 00 08 */ bne lbl_802C41BC /* 802C41B8 002BFE18 48 00 00 18 */ b lbl_802C41D0 @@ -84737,7 +84737,7 @@ lbl_802C42CC: /* 802C42D8 002BFF38 7F A4 EB 78 */ mr r4, r29 /* 802C42DC 002BFF3C 38 7E 00 08 */ addi r3, r30, 8 /* 802C42E0 002BFF40 38 A0 00 06 */ li r5, 6 -/* 802C42E4 002BFF44 4B F0 60 B5 */ bl func_801CA398 +/* 802C42E4 002BFF44 4B F0 60 B5 */ bl memcmp /* 802C42E8 002BFF48 2C 03 00 00 */ cmpwi r3, 0 /* 802C42EC 002BFF4C 40 82 00 08 */ bne lbl_802C42F4 /* 802C42F0 002BFF50 48 00 00 18 */ b lbl_802C4308 @@ -84819,7 +84819,7 @@ lbl_802C43D0: /* 802C43DC 002C003C 7F A4 EB 78 */ mr r4, r29 /* 802C43E0 002C0040 38 7E 00 08 */ addi r3, r30, 8 /* 802C43E4 002C0044 38 A0 00 06 */ li r5, 6 -/* 802C43E8 002C0048 4B F0 5F B1 */ bl func_801CA398 +/* 802C43E8 002C0048 4B F0 5F B1 */ bl memcmp /* 802C43EC 002C004C 2C 03 00 00 */ cmpwi r3, 0 /* 802C43F0 002C0050 40 82 00 08 */ bne lbl_802C43F8 /* 802C43F4 002C0054 48 00 00 18 */ b lbl_802C440C @@ -84923,7 +84923,7 @@ lbl_802C4528: /* 802C4534 002C0194 7F 64 DB 78 */ mr r4, r27 /* 802C4538 002C0198 38 7D 00 08 */ addi r3, r29, 8 /* 802C453C 002C019C 38 A0 00 06 */ li r5, 6 -/* 802C4540 002C01A0 4B F0 5E 59 */ bl func_801CA398 +/* 802C4540 002C01A0 4B F0 5E 59 */ bl memcmp /* 802C4544 002C01A4 2C 03 00 00 */ cmpwi r3, 0 /* 802C4548 002C01A8 40 82 00 08 */ bne lbl_802C4550 /* 802C454C 002C01AC 48 00 00 18 */ b lbl_802C4564 @@ -84963,7 +84963,7 @@ lbl_802C45B8: /* 802C45C4 002C0224 38 7B 00 08 */ addi r3, r27, 8 /* 802C45C8 002C0228 38 9D 00 08 */ addi r4, r29, 8 /* 802C45CC 002C022C 38 A0 00 06 */ li r5, 6 -/* 802C45D0 002C0230 4B F0 5D C9 */ bl func_801CA398 +/* 802C45D0 002C0230 4B F0 5D C9 */ bl memcmp /* 802C45D4 002C0234 2C 03 00 00 */ cmpwi r3, 0 /* 802C45D8 002C0238 40 82 00 08 */ bne lbl_802C45E0 /* 802C45DC 002C023C 48 00 00 18 */ b lbl_802C45F4 @@ -85081,7 +85081,7 @@ lbl_802C4754: /* 802C4760 002C03C0 7F 64 DB 78 */ mr r4, r27 /* 802C4764 002C03C4 38 7D 00 08 */ addi r3, r29, 8 /* 802C4768 002C03C8 38 A0 00 06 */ li r5, 6 -/* 802C476C 002C03CC 4B F0 5C 2D */ bl func_801CA398 +/* 802C476C 002C03CC 4B F0 5C 2D */ bl memcmp /* 802C4770 002C03D0 2C 03 00 00 */ cmpwi r3, 0 /* 802C4774 002C03D4 40 82 00 08 */ bne lbl_802C477C /* 802C4778 002C03D8 48 00 00 18 */ b lbl_802C4790 @@ -85104,7 +85104,7 @@ lbl_802C47A8: /* 802C47B0 002C0410 3B DE 8B 78 */ addi r30, r30, lbl_80568B78@l /* 802C47B4 002C0414 38 A0 00 06 */ li r5, 6 /* 802C47B8 002C0418 38 7E 06 30 */ addi r3, r30, 0x630 -/* 802C47BC 002C041C 4B F0 5B DD */ bl func_801CA398 +/* 802C47BC 002C041C 4B F0 5B DD */ bl memcmp /* 802C47C0 002C0420 2C 03 00 00 */ cmpwi r3, 0 /* 802C47C4 002C0424 40 82 00 08 */ bne lbl_802C47CC /* 802C47C8 002C0428 A3 9E 06 54 */ lhz r28, 0x654(r30) @@ -85315,7 +85315,7 @@ lbl_802C4A70: /* 802C4A7C 002C06DC 7F 84 E3 78 */ mr r4, r28 /* 802C4A80 002C06E0 38 7E 00 08 */ addi r3, r30, 8 /* 802C4A84 002C06E4 38 A0 00 06 */ li r5, 6 -/* 802C4A88 002C06E8 4B F0 59 11 */ bl func_801CA398 +/* 802C4A88 002C06E8 4B F0 59 11 */ bl memcmp /* 802C4A8C 002C06EC 2C 03 00 00 */ cmpwi r3, 0 /* 802C4A90 002C06F0 40 82 00 08 */ bne lbl_802C4A98 /* 802C4A94 002C06F4 48 00 00 18 */ b lbl_802C4AAC @@ -85405,7 +85405,7 @@ lbl_802C4BAC: /* 802C4BB8 002C0818 7F 84 E3 78 */ mr r4, r28 /* 802C4BBC 002C081C 38 7E 00 08 */ addi r3, r30, 8 /* 802C4BC0 002C0820 38 A0 00 06 */ li r5, 6 -/* 802C4BC4 002C0824 4B F0 57 D5 */ bl func_801CA398 +/* 802C4BC4 002C0824 4B F0 57 D5 */ bl memcmp /* 802C4BC8 002C0828 2C 03 00 00 */ cmpwi r3, 0 /* 802C4BCC 002C082C 40 82 00 08 */ bne lbl_802C4BD4 /* 802C4BD0 002C0830 48 00 00 18 */ b lbl_802C4BE8 @@ -85625,7 +85625,7 @@ lbl_802C4EC0: /* 802C4ECC 002C0B2C 7F A4 EB 78 */ mr r4, r29 /* 802C4ED0 002C0B30 38 7E 00 08 */ addi r3, r30, 8 /* 802C4ED4 002C0B34 38 A0 00 06 */ li r5, 6 -/* 802C4ED8 002C0B38 4B F0 54 C1 */ bl func_801CA398 +/* 802C4ED8 002C0B38 4B F0 54 C1 */ bl memcmp /* 802C4EDC 002C0B3C 2C 03 00 00 */ cmpwi r3, 0 /* 802C4EE0 002C0B40 40 82 00 08 */ bne lbl_802C4EE8 /* 802C4EE4 002C0B44 48 00 00 18 */ b lbl_802C4EFC @@ -85841,7 +85841,7 @@ lbl_802C51AC: /* 802C51B8 002C0E18 7F 04 C3 78 */ mr r4, r24 /* 802C51BC 002C0E1C 38 7E 00 1C */ addi r3, r30, 0x1c /* 802C51C0 002C0E20 38 A0 00 06 */ li r5, 6 -/* 802C51C4 002C0E24 4B F0 51 D5 */ bl func_801CA398 +/* 802C51C4 002C0E24 4B F0 51 D5 */ bl memcmp /* 802C51C8 002C0E28 2C 03 00 00 */ cmpwi r3, 0 /* 802C51CC 002C0E2C 40 82 00 08 */ bne lbl_802C51D4 /* 802C51D0 002C0E30 48 00 00 18 */ b lbl_802C51E8 @@ -85891,7 +85891,7 @@ lbl_802C523C: /* 802C526C 002C0ECC 38 A0 00 40 */ li r5, 0x40 /* 802C5270 002C0ED0 60 00 00 08 */ ori r0, r0, 8 /* 802C5274 002C0ED4 98 1E 00 76 */ stb r0, 0x76(r30) -/* 802C5278 002C0ED8 4B F0 91 19 */ bl func_801CE390 +/* 802C5278 002C0ED8 4B F0 91 19 */ bl strncpy lbl_802C527C: /* 802C527C 002C0EDC 2C 1B 00 00 */ cmpwi r27, 0 /* 802C5280 002C0EE0 41 82 00 18 */ beq lbl_802C5298 @@ -85949,7 +85949,7 @@ lbl_802C5324: /* 802C5330 002C0F90 7F A4 EB 78 */ mr r4, r29 /* 802C5334 002C0F94 38 7E 00 1C */ addi r3, r30, 0x1c /* 802C5338 002C0F98 38 A0 00 06 */ li r5, 6 -/* 802C533C 002C0F9C 4B F0 50 5D */ bl func_801CA398 +/* 802C533C 002C0F9C 4B F0 50 5D */ bl memcmp /* 802C5340 002C0FA0 2C 03 00 00 */ cmpwi r3, 0 /* 802C5344 002C0FA4 40 82 00 08 */ bne lbl_802C534C /* 802C5348 002C0FA8 48 00 00 18 */ b lbl_802C5360 @@ -86002,7 +86002,7 @@ lbl_802C53D8: /* 802C53E4 002C1044 7F 84 E3 78 */ mr r4, r28 /* 802C53E8 002C1048 38 7E 00 1C */ addi r3, r30, 0x1c /* 802C53EC 002C104C 38 A0 00 06 */ li r5, 6 -/* 802C53F0 002C1050 4B F0 4F A9 */ bl func_801CA398 +/* 802C53F0 002C1050 4B F0 4F A9 */ bl memcmp /* 802C53F4 002C1054 2C 03 00 00 */ cmpwi r3, 0 /* 802C53F8 002C1058 40 82 00 08 */ bne lbl_802C5400 /* 802C53FC 002C105C 48 00 00 18 */ b lbl_802C5414 @@ -86182,7 +86182,7 @@ lbl_802C5648: /* 802C5654 002C12B4 7F A4 EB 78 */ mr r4, r29 /* 802C5658 002C12B8 38 7F 00 1C */ addi r3, r31, 0x1c /* 802C565C 002C12BC 38 A0 00 06 */ li r5, 6 -/* 802C5660 002C12C0 4B F0 4D 39 */ bl func_801CA398 +/* 802C5660 002C12C0 4B F0 4D 39 */ bl memcmp /* 802C5664 002C12C4 2C 03 00 00 */ cmpwi r3, 0 /* 802C5668 002C12C8 40 82 00 0C */ bne lbl_802C5674 /* 802C566C 002C12CC 7F E3 FB 78 */ mr r3, r31 @@ -86677,7 +86677,7 @@ lbl_802C5CE8: /* 802C5D34 002C1994 7F E3 FB 78 */ mr r3, r31 /* 802C5D38 002C1998 7F E4 FB 78 */ mr r4, r31 /* 802C5D3C 002C199C 38 A0 00 1F */ li r5, 0x1f -/* 802C5D40 002C19A0 4B F0 86 51 */ bl func_801CE390 +/* 802C5D40 002C19A0 4B F0 86 51 */ bl strncpy lbl_802C5D44: /* 802C5D44 002C19A4 7F C3 F3 78 */ mr r3, r30 /* 802C5D48 002C19A8 7F E4 FB 78 */ mr r4, r31 @@ -86865,7 +86865,7 @@ lbl_802C5FA0: /* 802C5FEC 002C1C4C 7F E3 FB 78 */ mr r3, r31 /* 802C5FF0 002C1C50 7F E4 FB 78 */ mr r4, r31 /* 802C5FF4 002C1C54 38 A0 00 1F */ li r5, 0x1f -/* 802C5FF8 002C1C58 4B F0 83 99 */ bl func_801CE390 +/* 802C5FF8 002C1C58 4B F0 83 99 */ bl strncpy lbl_802C5FFC: /* 802C5FFC 002C1C5C 7F C3 F3 78 */ mr r3, r30 /* 802C6000 002C1C60 7F E4 FB 78 */ mr r4, r31 @@ -87377,7 +87377,7 @@ lbl_802C6700: /* 802C672C 002C238C 7F C3 F3 78 */ mr r3, r30 /* 802C6730 002C2390 7F A4 EB 78 */ mr r4, r29 /* 802C6734 002C2394 38 A0 00 1F */ li r5, 0x1f -/* 802C6738 002C2398 4B F0 7C 59 */ bl func_801CE390 +/* 802C6738 002C2398 4B F0 7C 59 */ bl strncpy lbl_802C673C: /* 802C673C 002C239C 7F E3 FB 78 */ mr r3, r31 /* 802C6740 002C23A0 7F C4 F3 78 */ mr r4, r30 @@ -88936,7 +88936,7 @@ lbl_802C7C38: /* 802C7C44 002C38A4 7F 64 DB 78 */ mr r4, r27 /* 802C7C48 002C38A8 38 7F 00 0A */ addi r3, r31, 0xa /* 802C7C4C 002C38AC 38 A0 00 06 */ li r5, 6 -/* 802C7C50 002C38B0 4B F0 27 49 */ bl func_801CA398 +/* 802C7C50 002C38B0 4B F0 27 49 */ bl memcmp /* 802C7C54 002C38B4 2C 03 00 00 */ cmpwi r3, 0 /* 802C7C58 002C38B8 40 82 00 08 */ bne lbl_802C7C60 /* 802C7C5C 002C38BC 48 00 00 18 */ b lbl_802C7C74 @@ -89035,7 +89035,7 @@ lbl_802C7D8C: /* 802C7D98 002C39F8 7F A4 EB 78 */ mr r4, r29 /* 802C7D9C 002C39FC 38 7E 00 0A */ addi r3, r30, 0xa /* 802C7DA0 002C3A00 38 A0 00 06 */ li r5, 6 -/* 802C7DA4 002C3A04 4B F0 25 F5 */ bl func_801CA398 +/* 802C7DA4 002C3A04 4B F0 25 F5 */ bl memcmp /* 802C7DA8 002C3A08 2C 03 00 00 */ cmpwi r3, 0 /* 802C7DAC 002C3A0C 40 82 00 0C */ bne lbl_802C7DB8 /* 802C7DB0 002C3A10 38 7E 00 08 */ addi r3, r30, 8 @@ -89239,7 +89239,7 @@ lbl_802C8034: /* 802C8048 002C3CA8 7F 64 DB 78 */ mr r4, r27 /* 802C804C 002C3CAC 38 7C 00 0A */ addi r3, r28, 0xa /* 802C8050 002C3CB0 38 A0 00 06 */ li r5, 6 -/* 802C8054 002C3CB4 4B F0 23 45 */ bl func_801CA398 +/* 802C8054 002C3CB4 4B F0 23 45 */ bl memcmp /* 802C8058 002C3CB8 2C 03 00 00 */ cmpwi r3, 0 /* 802C805C 002C3CBC 40 82 00 24 */ bne lbl_802C8080 lbl_802C8060: @@ -89407,7 +89407,7 @@ lbl_802C8294: /* 802C8294 002C3EF4 7F 64 DB 78 */ mr r4, r27 /* 802C8298 002C3EF8 38 7D 00 04 */ addi r3, r29, 4 /* 802C829C 002C3EFC 38 A0 00 06 */ li r5, 6 -/* 802C82A0 002C3F00 4B F0 20 F9 */ bl func_801CA398 +/* 802C82A0 002C3F00 4B F0 20 F9 */ bl memcmp /* 802C82A4 002C3F04 2C 03 00 00 */ cmpwi r3, 0 /* 802C82A8 002C3F08 40 82 00 1C */ bne lbl_802C82C4 /* 802C82AC 002C3F0C 80 7D 00 00 */ lwz r3, 0(r29) @@ -89821,7 +89821,7 @@ lbl_802C8848: /* 802C8854 002C44B4 38 79 00 0A */ addi r3, r25, 0xa /* 802C8858 002C44B8 38 81 00 0C */ addi r4, r1, 0xc /* 802C885C 002C44BC 38 A0 00 06 */ li r5, 6 -/* 802C8860 002C44C0 4B F0 1B 39 */ bl func_801CA398 +/* 802C8860 002C44C0 4B F0 1B 39 */ bl memcmp /* 802C8864 002C44C4 2C 03 00 00 */ cmpwi r3, 0 /* 802C8868 002C44C8 40 82 00 08 */ bne lbl_802C8870 /* 802C886C 002C44CC 48 00 00 18 */ b lbl_802C8884 @@ -90019,7 +90019,7 @@ lbl_802C8AF8: /* 802C8B14 002C4774 7E E3 BB 78 */ mr r3, r23 /* 802C8B18 002C4778 38 9F 16 A8 */ addi r4, r31, 0x16a8 /* 802C8B1C 002C477C 38 A0 00 06 */ li r5, 6 -/* 802C8B20 002C4780 4B F0 18 79 */ bl func_801CA398 +/* 802C8B20 002C4780 4B F0 18 79 */ bl memcmp /* 802C8B24 002C4784 2C 03 00 00 */ cmpwi r3, 0 /* 802C8B28 002C4788 40 82 00 0C */ bne lbl_802C8B34 /* 802C8B2C 002C478C 3B C0 00 00 */ li r30, 0 @@ -90314,7 +90314,7 @@ lbl_802C8EFC: /* 802C8F08 002C4B68 7F 44 D3 78 */ mr r4, r26 /* 802C8F0C 002C4B6C 38 7E 00 08 */ addi r3, r30, 8 /* 802C8F10 002C4B70 38 A0 00 06 */ li r5, 6 -/* 802C8F14 002C4B74 4B F0 14 85 */ bl func_801CA398 +/* 802C8F14 002C4B74 4B F0 14 85 */ bl memcmp /* 802C8F18 002C4B78 2C 03 00 00 */ cmpwi r3, 0 /* 802C8F1C 002C4B7C 41 82 00 14 */ beq lbl_802C8F30 lbl_802C8F20: @@ -90436,7 +90436,7 @@ lbl_802C90AC: /* 802C90B8 002C4D18 7F 84 E3 78 */ mr r4, r28 /* 802C90BC 002C4D1C 38 7E 00 08 */ addi r3, r30, 8 /* 802C90C0 002C4D20 38 A0 00 06 */ li r5, 6 -/* 802C90C4 002C4D24 4B F0 12 D5 */ bl func_801CA398 +/* 802C90C4 002C4D24 4B F0 12 D5 */ bl memcmp /* 802C90C8 002C4D28 2C 03 00 00 */ cmpwi r3, 0 /* 802C90CC 002C4D2C 41 82 00 14 */ beq lbl_802C90E0 lbl_802C90D0: @@ -91434,7 +91434,7 @@ lbl_802C9E7C: /* 802C9E7C 002C5ADC 7F C4 F3 78 */ mr r4, r30 /* 802C9E80 002C5AE0 38 7B 00 28 */ addi r3, r27, 0x28 /* 802C9E84 002C5AE4 38 A0 00 06 */ li r5, 6 -/* 802C9E88 002C5AE8 4B F0 05 11 */ bl func_801CA398 +/* 802C9E88 002C5AE8 4B F0 05 11 */ bl memcmp /* 802C9E8C 002C5AEC 2C 03 00 00 */ cmpwi r3, 0 /* 802C9E90 002C5AF0 40 82 00 8C */ bne lbl_802C9F1C /* 802C9E94 002C5AF4 38 00 00 01 */ li r0, 1 @@ -91572,7 +91572,7 @@ lbl_802CA048: /* 802CA074 002C5CD4 7F 24 CB 78 */ mr r4, r25 /* 802CA078 002C5CD8 38 7F 00 28 */ addi r3, r31, 0x28 /* 802CA07C 002C5CDC 38 A0 00 06 */ li r5, 6 -/* 802CA080 002C5CE0 4B F0 03 19 */ bl func_801CA398 +/* 802CA080 002C5CE0 4B F0 03 19 */ bl memcmp /* 802CA084 002C5CE4 2C 03 00 00 */ cmpwi r3, 0 /* 802CA088 002C5CE8 40 82 00 FC */ bne lbl_802CA184 lbl_802CA08C: @@ -91731,7 +91731,7 @@ lbl_802CA290: /* 802CA29C 002C5EFC 7F A4 EB 78 */ mr r4, r29 /* 802CA2A0 002C5F00 38 7F 00 28 */ addi r3, r31, 0x28 /* 802CA2A4 002C5F04 38 A0 00 06 */ li r5, 6 -/* 802CA2A8 002C5F08 4B F0 00 F1 */ bl func_801CA398 +/* 802CA2A8 002C5F08 4B F0 00 F1 */ bl memcmp /* 802CA2AC 002C5F0C 2C 03 00 00 */ cmpwi r3, 0 /* 802CA2B0 002C5F10 40 82 00 0C */ bne lbl_802CA2BC /* 802CA2B4 002C5F14 57 C3 04 3E */ clrlwi r3, r30, 0x10 @@ -91855,7 +91855,7 @@ lbl_802CA430: /* 802CA444 002C60A4 7F 84 E3 78 */ mr r4, r28 /* 802CA448 002C60A8 38 7E 00 28 */ addi r3, r30, 0x28 /* 802CA44C 002C60AC 38 A0 00 06 */ li r5, 6 -/* 802CA450 002C60B0 4B EF FF 49 */ bl func_801CA398 +/* 802CA450 002C60B0 4B EF FF 49 */ bl memcmp /* 802CA454 002C60B4 2C 03 00 00 */ cmpwi r3, 0 /* 802CA458 002C60B8 40 82 00 28 */ bne lbl_802CA480 /* 802CA45C 002C60BC 88 1E 00 0D */ lbz r0, 0xd(r30) @@ -92160,7 +92160,7 @@ lbl_802CA85C: /* 802CA85C 002C64BC 7F A4 EB 78 */ mr r4, r29 /* 802CA860 002C64C0 38 7E 00 28 */ addi r3, r30, 0x28 /* 802CA864 002C64C4 38 A0 00 06 */ li r5, 6 -/* 802CA868 002C64C8 4B EF FB 31 */ bl func_801CA398 +/* 802CA868 002C64C8 4B EF FB 31 */ bl memcmp /* 802CA86C 002C64CC 2C 03 00 00 */ cmpwi r3, 0 /* 802CA870 002C64D0 40 82 00 18 */ bne lbl_802CA888 /* 802CA874 002C64D4 A0 1E 00 08 */ lhz r0, 8(r30) @@ -92356,13 +92356,13 @@ lbl_802CAAD8: /* 802CAB08 002C6768 7E A3 AB 78 */ mr r3, r21 /* 802CAB0C 002C676C 38 9E 00 10 */ addi r4, r30, 0x10 /* 802CAB10 002C6770 38 A0 00 15 */ li r5, 0x15 -/* 802CAB14 002C6774 4B F0 3A 55 */ bl func_801CE568 +/* 802CAB14 002C6774 4B F0 3A 55 */ bl strncmp /* 802CAB18 002C6778 2C 03 00 00 */ cmpwi r3, 0 /* 802CAB1C 002C677C 41 82 00 1C */ beq lbl_802CAB38 /* 802CAB20 002C6780 7E A3 AB 78 */ mr r3, r21 /* 802CAB24 002C6784 38 9E 00 26 */ addi r4, r30, 0x26 /* 802CAB28 002C6788 38 A0 00 15 */ li r5, 0x15 -/* 802CAB2C 002C678C 4B F0 3A 3D */ bl func_801CE568 +/* 802CAB2C 002C678C 4B F0 3A 3D */ bl strncmp /* 802CAB30 002C6790 2C 03 00 00 */ cmpwi r3, 0 /* 802CAB34 002C6794 40 82 00 1C */ bne lbl_802CAB50 lbl_802CAB38: @@ -92404,7 +92404,7 @@ lbl_802CAB90: /* 802CABB4 002C6814 88 1E 00 0E */ lbz r0, 0xe(r30) /* 802CABB8 002C6818 54 00 07 72 */ rlwinm r0, r0, 0, 0x1d, 0x19 /* 802CABBC 002C681C 98 1E 00 0E */ stb r0, 0xe(r30) -/* 802CABC0 002C6820 4B F0 37 D1 */ bl func_801CE390 +/* 802CABC0 002C6820 4B F0 37 D1 */ bl strncpy /* 802CABC4 002C6824 48 00 00 24 */ b lbl_802CABE8 lbl_802CABC8: /* 802CABC8 002C6828 93 5E 00 08 */ stw r26, 8(r30) @@ -92414,7 +92414,7 @@ lbl_802CABC8: /* 802CABD8 002C6838 88 1E 00 0E */ lbz r0, 0xe(r30) /* 802CABDC 002C683C 54 00 06 38 */ rlwinm r0, r0, 0, 0x18, 0x1c /* 802CABE0 002C6840 98 1E 00 0E */ stb r0, 0xe(r30) -/* 802CABE4 002C6844 4B F0 37 AD */ bl func_801CE390 +/* 802CABE4 002C6844 4B F0 37 AD */ bl strncpy lbl_802CABE8: /* 802CABE8 002C6848 88 9E 00 0E */ lbz r4, 0xe(r30) /* 802CABEC 002C684C 62 E0 00 80 */ ori r0, r23, 0x80 @@ -94619,7 +94619,7 @@ lbl_802CCAB8: /* 802CCACC 002C872C 38 7F 19 54 */ addi r3, r31, 0x1954 /* 802CCAD0 002C8730 38 9E 00 1C */ addi r4, r30, 0x1c /* 802CCAD4 002C8734 38 A0 00 06 */ li r5, 6 -/* 802CCAD8 002C8738 4B EF D8 C1 */ bl func_801CA398 +/* 802CCAD8 002C8738 4B EF D8 C1 */ bl memcmp /* 802CCADC 002C873C 2C 03 00 00 */ cmpwi r3, 0 /* 802CCAE0 002C8740 40 82 00 48 */ bne lbl_802CCB28 /* 802CCAE4 002C8744 38 7F 19 3C */ addi r3, r31, 0x193c @@ -95008,7 +95008,7 @@ lbl_802CD030: /* 802CD050 002C8CB0 7F 63 DB 78 */ mr r3, r27 /* 802CD054 002C8CB4 38 9D 27 B4 */ addi r4, r29, 0x27b4 /* 802CD058 002C8CB8 38 A0 00 06 */ li r5, 6 -/* 802CD05C 002C8CBC 4B EF D3 3D */ bl func_801CA398 +/* 802CD05C 002C8CBC 4B EF D3 3D */ bl memcmp /* 802CD060 002C8CC0 2C 03 00 00 */ cmpwi r3, 0 /* 802CD064 002C8CC4 40 82 00 14 */ bne lbl_802CD078 /* 802CD068 002C8CC8 38 7E 00 22 */ addi r3, r30, 0x22 @@ -97100,7 +97100,7 @@ lbl_802CED34: /* 802CED58 002CA9B8 7F 43 D3 78 */ mr r3, r26 /* 802CED5C 002CA9BC 38 9D 00 09 */ addi r4, r29, 9 /* 802CED60 002CA9C0 38 A0 00 06 */ li r5, 6 -/* 802CED64 002CA9C4 4B EF B6 35 */ bl func_801CA398 +/* 802CED64 002CA9C4 4B EF B6 35 */ bl memcmp /* 802CED68 002CA9C8 2C 03 00 00 */ cmpwi r3, 0 /* 802CED6C 002CA9CC 41 82 00 14 */ beq lbl_802CED80 lbl_802CED70: @@ -98023,7 +98023,7 @@ lbl_802CFA20: /* 802CFA28 002CB688 7C 65 1B 78 */ mr r5, r3 /* 802CFA2C 002CB68C 38 7E 00 08 */ addi r3, r30, 8 /* 802CFA30 002CB690 38 9D 00 04 */ addi r4, r29, 4 -/* 802CFA34 002CB694 4B EF EB 35 */ bl func_801CE568 +/* 802CFA34 002CB694 4B EF EB 35 */ bl strncmp /* 802CFA38 002CB698 2C 03 00 00 */ cmpwi r3, 0 /* 802CFA3C 002CB69C 40 82 00 24 */ bne lbl_802CFA60 /* 802CFA40 002CB6A0 80 9F 00 30 */ lwz r4, 0x30(r31) diff --git a/asm/text_9.s b/asm/text_9.s index ce23bbd..0dcd80b 100644 --- a/asm/text_9.s +++ b/asm/text_9.s @@ -507,7 +507,7 @@ lbl_802D316C: /* 802D316C 002CEDCC 7F 43 D3 78 */ mr r3, r26 /* 802D3170 002CEDD0 38 9F 00 01 */ addi r4, r31, 1 /* 802D3174 002CEDD4 38 A0 00 06 */ li r5, 6 -/* 802D3178 002CEDD8 4B EF 72 21 */ bl func_801CA398 +/* 802D3178 002CEDD8 4B EF 72 21 */ bl memcmp /* 802D317C 002CEDDC 2C 03 00 00 */ cmpwi r3, 0 /* 802D3180 002CEDE0 41 82 00 14 */ beq lbl_802D3194 /* 802D3184 002CEDE4 3B BD 00 01 */ addi r29, r29, 1 @@ -1237,7 +1237,7 @@ lbl_802D3B80: /* 802D3B8C 002CF7EC 7F 43 D3 78 */ mr r3, r26 /* 802D3B90 002CF7F0 38 9E 00 01 */ addi r4, r30, 1 /* 802D3B94 002CF7F4 38 A0 00 06 */ li r5, 6 -/* 802D3B98 002CF7F8 4B EF 68 01 */ bl func_801CA398 +/* 802D3B98 002CF7F8 4B EF 68 01 */ bl memcmp /* 802D3B9C 002CF7FC 2C 03 00 00 */ cmpwi r3, 0 /* 802D3BA0 002CF800 41 82 00 14 */ beq lbl_802D3BB4 lbl_802D3BA4: @@ -4051,7 +4051,7 @@ func_802D62DC: /* 802D62F8 002D1F58 7C 7E 1B 78 */ mr r30, r3 /* 802D62FC 002D1F5C 7F C4 F3 78 */ mr r4, r30 /* 802D6300 002D1F60 38 62 A4 88 */ addi r3, r2, lbl_80642A88-_SDA2_BASE_ -/* 802D6304 002D1F64 4B EF 40 95 */ bl func_801CA398 +/* 802D6304 002D1F64 4B EF 40 95 */ bl memcmp /* 802D6308 002D1F68 2C 03 00 00 */ cmpwi r3, 0 /* 802D630C 002D1F6C 41 82 00 3C */ beq lbl_802D6348 /* 802D6310 002D1F70 7F C3 F3 78 */ mr r3, r30 @@ -8094,7 +8094,7 @@ lbl_802D9C94: /* 802D9CA0 002D5900 7F A4 EB 78 */ mr r4, r29 /* 802D9CA4 002D5904 38 7E 00 2A */ addi r3, r30, 0x2a /* 802D9CA8 002D5908 38 A0 00 06 */ li r5, 6 -/* 802D9CAC 002D590C 4B EF 06 ED */ bl func_801CA398 +/* 802D9CAC 002D590C 4B EF 06 ED */ bl memcmp /* 802D9CB0 002D5910 2C 03 00 00 */ cmpwi r3, 0 /* 802D9CB4 002D5914 40 82 00 0C */ bne lbl_802D9CC0 /* 802D9CB8 002D5918 7F C3 F3 78 */ mr r3, r30 @@ -16830,7 +16830,7 @@ func_802E168C: /* 802E16C0 002DD320 41 82 00 5C */ beq lbl_802E171C /* 802E16C4 002DD324 7F 64 DB 78 */ mr r4, r27 /* 802E16C8 002DD328 38 A0 00 06 */ li r5, 6 -/* 802E16CC 002DD32C 4B EE 8C CD */ bl func_801CA398 +/* 802E16CC 002DD32C 4B EE 8C CD */ bl memcmp /* 802E16D0 002DD330 2C 03 00 00 */ cmpwi r3, 0 /* 802E16D4 002DD334 40 82 00 48 */ bne lbl_802E171C /* 802E16D8 002DD338 88 1F 04 14 */ lbz r0, 0x414(r31) @@ -23358,7 +23358,7 @@ lbl_802E7168: lbl_802E71BC: /* 802E71BC 002E2E1C 7F C4 F3 78 */ mr r4, r30 /* 802E71C0 002E2E20 7F A5 EB 78 */ mr r5, r29 -/* 802E71C4 002E2E24 4B EE 31 D5 */ bl func_801CA398 +/* 802E71C4 002E2E24 4B EE 31 D5 */ bl memcmp /* 802E71C8 002E2E28 7C 60 00 34 */ cntlzw r0, r3 /* 802E71CC 002E2E2C 54 06 DE 3E */ rlwinm r6, r0, 0x1b, 0x18, 0x1f lbl_802E71D0: @@ -23413,7 +23413,7 @@ lbl_802E727C: /* 802E727C 002E2EDC 38 61 00 18 */ addi r3, r1, 0x18 /* 802E7280 002E2EE0 38 81 00 08 */ addi r4, r1, 8 /* 802E7284 002E2EE4 38 A0 00 10 */ li r5, 0x10 -/* 802E7288 002E2EE8 4B EE 31 11 */ bl func_801CA398 +/* 802E7288 002E2EE8 4B EE 31 11 */ bl memcmp /* 802E728C 002E2EEC 7C 60 00 34 */ cntlzw r0, r3 /* 802E7290 002E2EF0 54 03 DE 3E */ rlwinm r3, r0, 0x1b, 0x18, 0x1f /* 802E7294 002E2EF4 48 00 00 BC */ b lbl_802E7350 @@ -23465,7 +23465,7 @@ lbl_802E7338: /* 802E7338 002E2F98 38 61 00 18 */ addi r3, r1, 0x18 /* 802E733C 002E2F9C 38 81 00 08 */ addi r4, r1, 8 /* 802E7340 002E2FA0 38 A0 00 10 */ li r5, 0x10 -/* 802E7344 002E2FA4 4B EE 30 55 */ bl func_801CA398 +/* 802E7344 002E2FA4 4B EE 30 55 */ bl memcmp /* 802E7348 002E2FA8 7C 60 00 34 */ cntlzw r0, r3 /* 802E734C 002E2FAC 54 03 DE 3E */ rlwinm r3, r0, 0x1b, 0x18, 0x1f lbl_802E7350: @@ -23512,7 +23512,7 @@ lbl_802E73D8: /* 802E73D8 002E3038 38 A0 00 10 */ li r5, 0x10 /* 802E73DC 002E303C 38 63 00 04 */ addi r3, r3, 4 /* 802E73E0 002E3040 38 84 00 08 */ addi r4, r4, 8 -/* 802E73E4 002E3044 4B EE 2F B5 */ bl func_801CA398 +/* 802E73E4 002E3044 4B EE 2F B5 */ bl memcmp /* 802E73E8 002E3048 7C 60 00 34 */ cntlzw r0, r3 /* 802E73EC 002E304C 54 03 DE 3E */ rlwinm r3, r0, 0x1b, 0x18, 0x1f lbl_802E73F0: @@ -25141,7 +25141,7 @@ lbl_802E8998: /* 802E89D0 002E4630 38 A5 56 40 */ addi r5, r5, lbl_80445640@l /* 802E89D4 002E4634 80 DF 00 8C */ lwz r6, 0x8c(r31) /* 802E89D8 002E4638 4C C6 31 82 */ crclr 6 -/* 802E89DC 002E463C 4B EE 41 21 */ bl func_801CCAFC +/* 802E89DC 002E463C 4B EE 41 21 */ bl sprintf /* 802E89E0 002E4640 3D 00 80 2F */ lis r8, lbl_802E88CC@ha /* 802E89E4 002E4644 7F E9 FB 78 */ mr r9, r31 /* 802E89E8 002E4648 38 61 00 20 */ addi r3, r1, 0x20 @@ -25169,7 +25169,7 @@ lbl_802E8A0C: /* 802E8A3C 002E469C 38 A5 56 40 */ addi r5, r5, lbl_80445640@l /* 802E8A40 002E46A0 38 E1 00 10 */ addi r7, r1, 0x10 /* 802E8A44 002E46A4 4C C6 31 82 */ crclr 6 -/* 802E8A48 002E46A8 4B EE 40 B5 */ bl func_801CCAFC +/* 802E8A48 002E46A8 4B EE 40 B5 */ bl sprintf /* 802E8A4C 002E46AC 3D 00 80 2F */ lis r8, lbl_802E88CC@ha /* 802E8A50 002E46B0 80 9F 00 20 */ lwz r4, 0x20(r31) /* 802E8A54 002E46B4 80 BF 00 24 */ lwz r5, 0x24(r31) @@ -25603,7 +25603,7 @@ lbl_802E9050: /* 802E9064 002E4CC4 7F A3 EB 78 */ mr r3, r29 /* 802E9068 002E4CC8 7F C4 F3 78 */ mr r4, r30 /* 802E906C 002E4CCC 7F E5 FB 78 */ mr r5, r31 -/* 802E9070 002E4CD0 4B EE 53 21 */ bl func_801CE390 +/* 802E9070 002E4CD0 4B EE 53 21 */ bl strncpy /* 802E9074 002E4CD4 38 00 00 00 */ li r0, 0 /* 802E9078 002E4CD8 7C 1D F9 AE */ stbx r0, r29, r31 /* 802E907C 002E4CDC 48 00 00 24 */ b lbl_802E90A0 @@ -25647,7 +25647,7 @@ lbl_802E90E8: /* 802E90F8 002E4D58 7F 63 DB 78 */ mr r3, r27 /* 802E90FC 002E4D5C 7F A4 EB 78 */ mr r4, r29 /* 802E9100 002E4D60 7F C5 F3 78 */ mr r5, r30 -/* 802E9104 002E4D64 4B EE 52 8D */ bl func_801CE390 +/* 802E9104 002E4D64 4B EE 52 8D */ bl strncpy /* 802E9108 002E4D68 7C 9E EA 14 */ add r4, r30, r29 /* 802E910C 002E4D6C 38 60 00 00 */ li r3, 0 /* 802E9110 002E4D70 88 04 00 01 */ lbz r0, 1(r4) @@ -25659,7 +25659,7 @@ lbl_802E90E8: lbl_802E9128: /* 802E9128 002E4D88 7F 83 E3 78 */ mr r3, r28 /* 802E912C 002E4D8C 38 84 00 01 */ addi r4, r4, 1 -/* 802E9130 002E4D90 4B EE 51 A1 */ bl func_801CE2D0 +/* 802E9130 002E4D90 4B EE 51 A1 */ bl strcpy /* 802E9134 002E4D94 48 00 00 44 */ b lbl_802E9178 lbl_802E9138: /* 802E9138 002E4D98 2C 00 00 00 */ cmpwi r0, 0 @@ -25667,7 +25667,7 @@ lbl_802E9138: /* 802E9140 002E4DA0 7F 63 DB 78 */ mr r3, r27 /* 802E9144 002E4DA4 7F A4 EB 78 */ mr r4, r29 /* 802E9148 002E4DA8 7F C5 F3 78 */ mr r5, r30 -/* 802E914C 002E4DAC 4B EE 52 45 */ bl func_801CE390 +/* 802E914C 002E4DAC 4B EE 52 45 */ bl strncpy /* 802E9150 002E4DB0 38 00 00 00 */ li r0, 0 /* 802E9154 002E4DB4 7C 1B F1 AE */ stbx r0, r27, r30 /* 802E9158 002E4DB8 98 1C 00 00 */ stb r0, 0(r28) @@ -25698,12 +25698,12 @@ func_802E9190: /* 802E91A4 002E4E04 93 C1 00 08 */ stw r30, 8(r1) /* 802E91A8 002E4E08 7C 7E 1B 78 */ mr r30, r3 /* 802E91AC 002E4E0C 38 6D 8A 84 */ addi r3, r13, lbl_8063DD44-_SDA_BASE_ -/* 802E91B0 002E4E10 4B EE 52 9D */ bl func_801CE44C +/* 802E91B0 002E4E10 4B EE 52 9D */ bl strcmp /* 802E91B4 002E4E14 2C 03 00 00 */ cmpwi r3, 0 /* 802E91B8 002E4E18 40 82 00 14 */ bne lbl_802E91CC /* 802E91BC 002E4E1C 7F C3 F3 78 */ mr r3, r30 /* 802E91C0 002E4E20 38 8D 8A 88 */ addi r4, r13, lbl_8063DD48-_SDA_BASE_ -/* 802E91C4 002E4E24 4B EE 51 0D */ bl func_801CE2D0 +/* 802E91C4 002E4E24 4B EE 51 0D */ bl strcpy /* 802E91C8 002E4E28 48 00 00 48 */ b lbl_802E9210 lbl_802E91CC: /* 802E91CC 002E4E2C 7F E3 FB 78 */ mr r3, r31 @@ -25724,7 +25724,7 @@ lbl_802E9200: /* 802E9200 002E4E60 7C 9F 22 14 */ add r4, r31, r4 /* 802E9204 002E4E64 7F C3 F3 78 */ mr r3, r30 /* 802E9208 002E4E68 38 84 00 01 */ addi r4, r4, 1 -/* 802E920C 002E4E6C 4B EE 50 C5 */ bl func_801CE2D0 +/* 802E920C 002E4E6C 4B EE 50 C5 */ bl strcpy lbl_802E9210: /* 802E9210 002E4E70 80 01 00 14 */ lwz r0, 0x14(r1) /* 802E9214 002E4E74 83 E1 00 0C */ lwz r31, 0xc(r1) @@ -25750,7 +25750,7 @@ func_802E9228: /* 802E9258 002E4EB8 40 82 00 14 */ bne lbl_802E926C /* 802E925C 002E4EBC 7F A3 EB 78 */ mr r3, r29 /* 802E9260 002E4EC0 7F C4 F3 78 */ mr r4, r30 -/* 802E9264 002E4EC4 4B EE 50 6D */ bl func_801CE2D0 +/* 802E9264 002E4EC4 4B EE 50 6D */ bl strcpy /* 802E9268 002E4EC8 48 00 00 E0 */ b lbl_802E9348 lbl_802E926C: /* 802E926C 002E4ECC 7F E5 FB 78 */ mr r5, r31 @@ -25759,7 +25759,7 @@ lbl_802E926C: /* 802E9278 002E4ED8 4B FF FE 45 */ bl func_802E90BC /* 802E927C 002E4EDC 38 61 01 88 */ addi r3, r1, 0x188 /* 802E9280 002E4EE0 38 8D 8A 8C */ addi r4, r13, lbl_8063DD4C-_SDA_BASE_ -/* 802E9284 002E4EE4 4B EE 51 C9 */ bl func_801CE44C +/* 802E9284 002E4EE4 4B EE 51 C9 */ bl strcmp /* 802E9288 002E4EE8 2C 03 00 00 */ cmpwi r3, 0 /* 802E928C 002E4EEC 40 82 00 18 */ bne lbl_802E92A4 /* 802E9290 002E4EF0 7F A3 EB 78 */ mr r3, r29 @@ -25770,7 +25770,7 @@ lbl_802E926C: lbl_802E92A4: /* 802E92A4 002E4F04 38 61 01 88 */ addi r3, r1, 0x188 /* 802E92A8 002E4F08 38 8D 8A 90 */ addi r4, r13, lbl_8063DD50-_SDA_BASE_ -/* 802E92AC 002E4F0C 4B EE 51 A1 */ bl func_801CE44C +/* 802E92AC 002E4F0C 4B EE 51 A1 */ bl strcmp /* 802E92B0 002E4F10 2C 03 00 00 */ cmpwi r3, 0 /* 802E92B4 002E4F14 40 82 00 24 */ bne lbl_802E92D8 /* 802E92B8 002E4F18 7F C4 F3 78 */ mr r4, r30 @@ -25787,14 +25787,14 @@ lbl_802E92D8: /* 802E92E0 002E4F40 41 82 00 5C */ beq lbl_802E933C /* 802E92E4 002E4F44 7F C3 F3 78 */ mr r3, r30 /* 802E92E8 002E4F48 38 8D 8A 84 */ addi r4, r13, lbl_8063DD44-_SDA_BASE_ -/* 802E92EC 002E4F4C 4B EE 51 61 */ bl func_801CE44C +/* 802E92EC 002E4F4C 4B EE 51 61 */ bl strcmp /* 802E92F0 002E4F50 2C 03 00 00 */ cmpwi r3, 0 /* 802E92F4 002E4F54 40 82 00 1C */ bne lbl_802E9310 /* 802E92F8 002E4F58 38 61 00 08 */ addi r3, r1, 8 /* 802E92FC 002E4F5C 38 A1 01 88 */ addi r5, r1, 0x188 /* 802E9300 002E4F60 38 8D 8A 94 */ addi r4, r13, lbl_8063DD54-_SDA_BASE_ /* 802E9304 002E4F64 4C C6 31 82 */ crclr 6 -/* 802E9308 002E4F68 4B EE 37 F5 */ bl func_801CCAFC +/* 802E9308 002E4F68 4B EE 37 F5 */ bl sprintf /* 802E930C 002E4F6C 48 00 00 1C */ b lbl_802E9328 lbl_802E9310: /* 802E9310 002E4F70 7F C5 F3 78 */ mr r5, r30 @@ -25802,7 +25802,7 @@ lbl_802E9310: /* 802E9318 002E4F78 38 C1 01 88 */ addi r6, r1, 0x188 /* 802E931C 002E4F7C 38 8D 8A 98 */ addi r4, r13, lbl_8063DD58-_SDA_BASE_ /* 802E9320 002E4F80 4C C6 31 82 */ crclr 6 -/* 802E9324 002E4F84 4B EE 37 D9 */ bl func_801CCAFC +/* 802E9324 002E4F84 4B EE 37 D9 */ bl sprintf lbl_802E9328: /* 802E9328 002E4F88 7F A3 EB 78 */ mr r3, r29 /* 802E932C 002E4F8C 38 81 00 08 */ addi r4, r1, 8 @@ -25812,7 +25812,7 @@ lbl_802E9328: lbl_802E933C: /* 802E933C 002E4F9C 7F A3 EB 78 */ mr r3, r29 /* 802E9340 002E4FA0 7F C4 F3 78 */ mr r4, r30 -/* 802E9344 002E4FA4 4B EE 4F 8D */ bl func_801CE2D0 +/* 802E9344 002E4FA4 4B EE 4F 8D */ bl strcpy lbl_802E9348: /* 802E9348 002E4FA8 80 01 02 24 */ lwz r0, 0x224(r1) /* 802E934C 002E4FAC 83 E1 02 1C */ lwz r31, 0x21c(r1) @@ -25830,7 +25830,7 @@ func_802E9364: /* 802E9370 002E4FD0 38 A0 00 08 */ li r5, 8 /* 802E9374 002E4FD4 90 01 00 14 */ stw r0, 0x14(r1) /* 802E9378 002E4FD8 38 84 57 10 */ addi r4, r4, lbl_80445710@l -/* 802E937C 002E4FDC 4B EE 51 ED */ bl func_801CE568 +/* 802E937C 002E4FDC 4B EE 51 ED */ bl strncmp /* 802E9380 002E4FE0 7C 60 00 34 */ cntlzw r0, r3 /* 802E9384 002E4FE4 54 03 D9 7E */ srwi r3, r0, 5 /* 802E9388 002E4FE8 80 01 00 14 */ lwz r0, 0x14(r1) @@ -25848,7 +25848,7 @@ func_802E9398: /* 802E93AC 002E500C 38 84 57 1C */ addi r4, r4, lbl_8044571C@l /* 802E93B0 002E5010 93 E1 00 0C */ stw r31, 0xc(r1) /* 802E93B4 002E5014 7C 7F 1B 78 */ mr r31, r3 -/* 802E93B8 002E5018 4B EE 51 B1 */ bl func_801CE568 +/* 802E93B8 002E5018 4B EE 51 B1 */ bl strncmp /* 802E93BC 002E501C 2C 03 00 00 */ cmpwi r3, 0 /* 802E93C0 002E5020 40 82 00 18 */ bne lbl_802E93D8 /* 802E93C4 002E5024 88 1F 00 09 */ lbz r0, 9(r31) @@ -25952,7 +25952,7 @@ func_802E94D8: /* 802E9500 002E5160 40 82 00 14 */ bne lbl_802E9514 /* 802E9504 002E5164 7F C3 F3 78 */ mr r3, r30 /* 802E9508 002E5168 38 8D 8A 88 */ addi r4, r13, lbl_8063DD48-_SDA_BASE_ -/* 802E950C 002E516C 4B EE 4D C5 */ bl func_801CE2D0 +/* 802E950C 002E516C 4B EE 4D C5 */ bl strcpy /* 802E9510 002E5170 48 00 00 78 */ b lbl_802E9588 lbl_802E9514: /* 802E9514 002E5174 88 1F 00 00 */ lbz r0, 0(r31) @@ -25974,7 +25974,7 @@ lbl_802E952C: lbl_802E954C: /* 802E954C 002E51AC 7F C3 F3 78 */ mr r3, r30 /* 802E9550 002E51B0 7F E4 FB 78 */ mr r4, r31 -/* 802E9554 002E51B4 4B EE 4D 7D */ bl func_801CE2D0 +/* 802E9554 002E51B4 4B EE 4D 7D */ bl strcpy /* 802E9558 002E51B8 7F C3 F3 78 */ mr r3, r30 /* 802E955C 002E51BC 4B ED D6 09 */ bl strlen /* 802E9560 002E51C0 2C 03 00 00 */ cmpwi r3, 0 @@ -26025,13 +26025,13 @@ lbl_802E95F8: /* 802E95FC 002E525C 40 82 00 14 */ bne lbl_802E9610 /* 802E9600 002E5260 7F A3 EB 78 */ mr r3, r29 /* 802E9604 002E5264 38 8D 8A 84 */ addi r4, r13, lbl_8063DD44-_SDA_BASE_ -/* 802E9608 002E5268 4B EE 4C C9 */ bl func_801CE2D0 +/* 802E9608 002E5268 4B EE 4C C9 */ bl strcpy /* 802E960C 002E526C 48 00 00 1C */ b lbl_802E9628 lbl_802E9610: /* 802E9610 002E5270 7F A3 EB 78 */ mr r3, r29 /* 802E9614 002E5274 7F C4 F3 78 */ mr r4, r30 /* 802E9618 002E5278 7F E5 FB 78 */ mr r5, r31 -/* 802E961C 002E527C 4B EE 4D 75 */ bl func_801CE390 +/* 802E961C 002E527C 4B EE 4D 75 */ bl strncpy /* 802E9620 002E5280 38 00 00 00 */ li r0, 0 /* 802E9624 002E5284 7C 1D F9 AE */ stbx r0, r29, r31 lbl_802E9628: @@ -26134,7 +26134,7 @@ lbl_802E9774: /* 802E977C 002E53DC 3C 80 80 57 */ lis r4, lbl_80570E80@ha /* 802E9780 002E53E0 38 7F 00 60 */ addi r3, r31, 0x60 /* 802E9784 002E53E4 38 84 0E 80 */ addi r4, r4, lbl_80570E80@l -/* 802E9788 002E53E8 4B EE 4B 49 */ bl func_801CE2D0 +/* 802E9788 002E53E8 4B EE 4B 49 */ bl strcpy lbl_802E978C: /* 802E978C 002E53EC 80 61 00 20 */ lwz r3, 0x20(r1) /* 802E9790 002E53F0 2C 03 00 00 */ cmpwi r3, 0 @@ -26301,7 +26301,7 @@ func_802E9990: /* 802E99C4 002E5624 40 82 00 14 */ bne lbl_802E99D8 /* 802E99C8 002E5628 38 7E 00 34 */ addi r3, r30, 0x34 /* 802E99CC 002E562C 38 8D 8A 88 */ addi r4, r13, lbl_8063DD48-_SDA_BASE_ -/* 802E99D0 002E5630 4B EE 49 01 */ bl func_801CE2D0 +/* 802E99D0 002E5630 4B EE 49 01 */ bl strcpy /* 802E99D4 002E5634 48 00 00 78 */ b lbl_802E9A4C lbl_802E99D8: /* 802E99D8 002E5638 88 1D 00 00 */ lbz r0, 0(r29) @@ -26323,7 +26323,7 @@ lbl_802E99F0: lbl_802E9A10: /* 802E9A10 002E5670 7F A4 EB 78 */ mr r4, r29 /* 802E9A14 002E5674 38 7E 00 34 */ addi r3, r30, 0x34 -/* 802E9A18 002E5678 4B EE 48 B9 */ bl func_801CE2D0 +/* 802E9A18 002E5678 4B EE 48 B9 */ bl strcpy /* 802E9A1C 002E567C 38 7E 00 34 */ addi r3, r30, 0x34 /* 802E9A20 002E5680 4B ED D1 45 */ bl strlen /* 802E9A24 002E5684 2C 03 00 00 */ cmpwi r3, 0 @@ -26343,7 +26343,7 @@ lbl_802E9A4C: /* 802E9A58 002E56B8 38 7E 00 34 */ addi r3, r30, 0x34 /* 802E9A5C 002E56BC 38 84 57 10 */ addi r4, r4, lbl_80445710@l /* 802E9A60 002E56C0 38 A0 00 08 */ li r5, 8 -/* 802E9A64 002E56C4 4B EE 4B 05 */ bl func_801CE568 +/* 802E9A64 002E56C4 4B EE 4B 05 */ bl strncmp /* 802E9A68 002E56C8 2C 03 00 00 */ cmpwi r3, 0 /* 802E9A6C 002E56CC 40 82 00 0C */ bne lbl_802E9A78 /* 802E9A70 002E56D0 38 00 00 01 */ li r0, 1 @@ -26388,7 +26388,7 @@ lbl_802E9AAC: /* 802E9AFC 002E575C 40 82 00 14 */ bne lbl_802E9B10 /* 802E9B00 002E5760 38 61 00 10 */ addi r3, r1, 0x10 /* 802E9B04 002E5764 38 8D 8A 88 */ addi r4, r13, lbl_8063DD48-_SDA_BASE_ -/* 802E9B08 002E5768 4B EE 47 C9 */ bl func_801CE2D0 +/* 802E9B08 002E5768 4B EE 47 C9 */ bl strcpy /* 802E9B0C 002E576C 48 00 00 7C */ b lbl_802E9B88 lbl_802E9B10: /* 802E9B10 002E5770 88 1D 00 00 */ lbz r0, 0(r29) @@ -26410,7 +26410,7 @@ lbl_802E9B28: lbl_802E9B48: /* 802E9B48 002E57A8 7F A4 EB 78 */ mr r4, r29 /* 802E9B4C 002E57AC 38 61 00 10 */ addi r3, r1, 0x10 -/* 802E9B50 002E57B0 4B EE 47 81 */ bl func_801CE2D0 +/* 802E9B50 002E57B0 4B EE 47 81 */ bl strcpy /* 802E9B54 002E57B4 38 61 00 10 */ addi r3, r1, 0x10 /* 802E9B58 002E57B8 4B ED D0 0D */ bl strlen /* 802E9B5C 002E57BC 2C 03 00 00 */ cmpwi r3, 0 @@ -26431,7 +26431,7 @@ lbl_802E9B88: /* 802E9B94 002E57F4 38 61 00 10 */ addi r3, r1, 0x10 /* 802E9B98 002E57F8 38 84 57 10 */ addi r4, r4, lbl_80445710@l /* 802E9B9C 002E57FC 38 A0 00 08 */ li r5, 8 -/* 802E9BA0 002E5800 4B EE 49 C9 */ bl func_801CE568 +/* 802E9BA0 002E5800 4B EE 49 C9 */ bl strncmp /* 802E9BA4 002E5804 2C 03 00 00 */ cmpwi r3, 0 /* 802E9BA8 002E5808 40 82 00 0C */ bne lbl_802E9BB4 /* 802E9BAC 002E580C 38 00 00 01 */ li r0, 1 @@ -26456,7 +26456,7 @@ lbl_802E9BC8: /* 802E9BEC 002E584C 7C 7E 1B 78 */ mr r30, r3 /* 802E9BF0 002E5850 38 64 56 C0 */ addi r3, r4, lbl_804456C0@l /* 802E9BF4 002E5854 38 81 00 10 */ addi r4, r1, 0x10 -/* 802E9BF8 002E5858 4B EE 46 D9 */ bl func_801CE2D0 +/* 802E9BF8 002E5858 4B EE 46 D9 */ bl strcpy /* 802E9BFC 002E585C 7F C3 F3 78 */ mr r3, r30 /* 802E9C00 002E5860 4B F8 4B 85 */ bl OSRestoreInterrupts lbl_802E9C04: @@ -26558,7 +26558,7 @@ lbl_802E9D1C: /* 802E9D50 002E59B0 7C 7E 1B 78 */ mr r30, r3 /* 802E9D54 002E59B4 38 64 56 C0 */ addi r3, r4, lbl_804456C0@l /* 802E9D58 002E59B8 38 9D 00 34 */ addi r4, r29, 0x34 -/* 802E9D5C 002E59BC 4B EE 45 75 */ bl func_801CE2D0 +/* 802E9D5C 002E59BC 4B EE 45 75 */ bl strcpy /* 802E9D60 002E59C0 7F C3 F3 78 */ mr r3, r30 /* 802E9D64 002E59C4 4B F8 4A 21 */ bl OSRestoreInterrupts lbl_802E9D68: @@ -26646,7 +26646,7 @@ lbl_802E9E78: /* 802E9E80 002E5AE0 7C 7F 1B 78 */ mr r31, r3 /* 802E9E84 002E5AE4 7F C3 F3 78 */ mr r3, r30 /* 802E9E88 002E5AE8 38 84 56 C0 */ addi r4, r4, lbl_804456C0@l -/* 802E9E8C 002E5AEC 4B EE 44 45 */ bl func_801CE2D0 +/* 802E9E8C 002E5AEC 4B EE 44 45 */ bl strcpy /* 802E9E90 002E5AF0 7F E3 FB 78 */ mr r3, r31 /* 802E9E94 002E5AF4 4B F8 48 F1 */ bl OSRestoreInterrupts /* 802E9E98 002E5AF8 38 60 00 00 */ li r3, 0 @@ -26678,7 +26678,7 @@ lbl_802E9ED8: lbl_802E9EE8: /* 802E9EE8 002E5B48 3C 80 80 57 */ lis r4, lbl_80570E80@ha /* 802E9EEC 002E5B4C 38 84 0E 80 */ addi r4, r4, lbl_80570E80@l -/* 802E9EF0 002E5B50 4B EE 43 E1 */ bl func_801CE2D0 +/* 802E9EF0 002E5B50 4B EE 43 E1 */ bl strcpy /* 802E9EF4 002E5B54 38 60 00 00 */ li r3, 0 lbl_802E9EF8: /* 802E9EF8 002E5B58 80 01 00 14 */ lwz r0, 0x14(r1) @@ -26777,7 +26777,7 @@ lbl_802EA030: /* 802EA044 002E5CA4 40 82 00 14 */ bne lbl_802EA058 /* 802EA048 002E5CA8 38 7C 00 34 */ addi r3, r28, 0x34 /* 802EA04C 002E5CAC 38 8D 8A 88 */ addi r4, r13, lbl_8063DD48-_SDA_BASE_ -/* 802EA050 002E5CB0 4B EE 42 81 */ bl func_801CE2D0 +/* 802EA050 002E5CB0 4B EE 42 81 */ bl strcpy /* 802EA054 002E5CB4 48 00 00 78 */ b lbl_802EA0CC lbl_802EA058: /* 802EA058 002E5CB8 88 1B 00 00 */ lbz r0, 0(r27) @@ -26799,7 +26799,7 @@ lbl_802EA070: lbl_802EA090: /* 802EA090 002E5CF0 7F 64 DB 78 */ mr r4, r27 /* 802EA094 002E5CF4 38 7C 00 34 */ addi r3, r28, 0x34 -/* 802EA098 002E5CF8 4B EE 42 39 */ bl func_801CE2D0 +/* 802EA098 002E5CF8 4B EE 42 39 */ bl strcpy /* 802EA09C 002E5CFC 38 7C 00 34 */ addi r3, r28, 0x34 /* 802EA0A0 002E5D00 4B ED CA C5 */ bl strlen /* 802EA0A4 002E5D04 2C 03 00 00 */ cmpwi r3, 0 @@ -26819,7 +26819,7 @@ lbl_802EA0CC: /* 802EA0D8 002E5D38 38 7C 00 34 */ addi r3, r28, 0x34 /* 802EA0DC 002E5D3C 38 84 57 1C */ addi r4, r4, lbl_8044571C@l /* 802EA0E0 002E5D40 38 A0 00 09 */ li r5, 9 -/* 802EA0E4 002E5D44 4B EE 44 85 */ bl func_801CE568 +/* 802EA0E4 002E5D44 4B EE 44 85 */ bl strncmp /* 802EA0E8 002E5D48 2C 03 00 00 */ cmpwi r3, 0 /* 802EA0EC 002E5D4C 40 82 00 18 */ bne lbl_802EA104 /* 802EA0F0 002E5D50 88 1C 00 3D */ lbz r0, 0x3d(r28) @@ -26868,7 +26868,7 @@ lbl_802EA13C: /* 802EA18C 002E5DEC 40 82 00 14 */ bne lbl_802EA1A0 /* 802EA190 002E5DF0 38 61 00 10 */ addi r3, r1, 0x10 /* 802EA194 002E5DF4 38 8D 8A 88 */ addi r4, r13, lbl_8063DD48-_SDA_BASE_ -/* 802EA198 002E5DF8 4B EE 41 39 */ bl func_801CE2D0 +/* 802EA198 002E5DF8 4B EE 41 39 */ bl strcpy /* 802EA19C 002E5DFC 48 00 00 7C */ b lbl_802EA218 lbl_802EA1A0: /* 802EA1A0 002E5E00 88 1B 00 00 */ lbz r0, 0(r27) @@ -26890,7 +26890,7 @@ lbl_802EA1B8: lbl_802EA1D8: /* 802EA1D8 002E5E38 7F 64 DB 78 */ mr r4, r27 /* 802EA1DC 002E5E3C 38 61 00 10 */ addi r3, r1, 0x10 -/* 802EA1E0 002E5E40 4B EE 40 F1 */ bl func_801CE2D0 +/* 802EA1E0 002E5E40 4B EE 40 F1 */ bl strcpy /* 802EA1E4 002E5E44 38 61 00 10 */ addi r3, r1, 0x10 /* 802EA1E8 002E5E48 4B ED C9 7D */ bl strlen /* 802EA1EC 002E5E4C 2C 03 00 00 */ cmpwi r3, 0 @@ -26911,7 +26911,7 @@ lbl_802EA218: /* 802EA224 002E5E84 38 61 00 10 */ addi r3, r1, 0x10 /* 802EA228 002E5E88 38 84 57 1C */ addi r4, r4, lbl_8044571C@l /* 802EA22C 002E5E8C 38 A0 00 09 */ li r5, 9 -/* 802EA230 002E5E90 4B EE 43 39 */ bl func_801CE568 +/* 802EA230 002E5E90 4B EE 43 39 */ bl strncmp /* 802EA234 002E5E94 2C 03 00 00 */ cmpwi r3, 0 /* 802EA238 002E5E98 40 82 00 18 */ bne lbl_802EA250 /* 802EA23C 002E5E9C 88 01 00 19 */ lbz r0, 0x19(r1) @@ -27902,13 +27902,13 @@ func_802EAFA0: /* 802EAFE0 002E6C40 38 8D 8B B0 */ addi r4, r13, lbl_8063DE70-_SDA_BASE_ /* 802EAFE4 002E6C44 38 A0 00 04 */ li r5, 4 /* 802EAFE8 002E6C48 3B FF FF FC */ addi r31, r31, -4 -/* 802EAFEC 002E6C4C 4B ED F3 AD */ bl func_801CA398 +/* 802EAFEC 002E6C4C 4B ED F3 AD */ bl memcmp /* 802EAFF0 002E6C50 2C 03 00 00 */ cmpwi r3, 0 /* 802EAFF4 002E6C54 40 82 01 DC */ bne lbl_802EB1D0 /* 802EAFF8 002E6C58 7F E3 FB 78 */ mr r3, r31 /* 802EAFFC 002E6C5C 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_ /* 802EB000 002E6C60 38 A0 00 04 */ li r5, 4 -/* 802EB004 002E6C64 4B ED F3 95 */ bl func_801CA398 +/* 802EB004 002E6C64 4B ED F3 95 */ bl memcmp /* 802EB008 002E6C68 2C 03 00 00 */ cmpwi r3, 0 /* 802EB00C 002E6C6C 40 82 01 C4 */ bne lbl_802EB1D0 /* 802EB010 002E6C70 28 1A 40 00 */ cmplwi r26, 0x4000 @@ -28003,7 +28003,7 @@ lbl_802EB13C: /* 802EB158 002E6DB8 7E C3 B3 78 */ mr r3, r22 /* 802EB15C 002E6DBC 7E A5 AB 78 */ mr r5, r21 /* 802EB160 002E6DC0 38 84 00 01 */ addi r4, r4, 1 -/* 802EB164 002E6DC4 4B ED F2 35 */ bl func_801CA398 +/* 802EB164 002E6DC4 4B ED F2 35 */ bl memcmp /* 802EB168 002E6DC8 2C 03 00 00 */ cmpwi r3, 0 /* 802EB16C 002E6DCC 40 82 00 24 */ bne lbl_802EB190 /* 802EB170 002E6DD0 80 1B 00 04 */ lwz r0, 4(r27) @@ -28561,7 +28561,7 @@ lbl_802EB8F4: /* 802EB914 002E7574 80 61 00 20 */ lwz r3, 0x20(r1) /* 802EB918 002E7578 7F 64 DB 78 */ mr r4, r27 /* 802EB91C 002E757C 7F 85 E3 78 */ mr r5, r28 -/* 802EB920 002E7580 4B ED EA 79 */ bl func_801CA398 +/* 802EB920 002E7580 4B ED EA 79 */ bl memcmp /* 802EB924 002E7584 2C 03 00 00 */ cmpwi r3, 0 /* 802EB928 002E7588 41 82 00 1C */ beq lbl_802EB944 /* 802EB92C 002E758C 80 61 00 20 */ lwz r3, 0x20(r1) @@ -28638,7 +28638,7 @@ lbl_802EBA10: /* 802EBA24 002E7684 80 61 00 20 */ lwz r3, 0x20(r1) /* 802EBA28 002E7688 7F 84 E3 78 */ mr r4, r28 /* 802EBA2C 002E768C 80 A1 00 18 */ lwz r5, 0x18(r1) -/* 802EBA30 002E7690 4B ED E9 69 */ bl func_801CA398 +/* 802EBA30 002E7690 4B ED E9 69 */ bl memcmp /* 802EBA34 002E7694 2C 03 00 00 */ cmpwi r3, 0 /* 802EBA38 002E7698 41 82 00 1C */ beq lbl_802EBA54 /* 802EBA3C 002E769C 80 61 00 20 */ lwz r3, 0x20(r1) @@ -29754,7 +29754,7 @@ func_802EC8F8: lbl_802EC930: /* 802EC930 002E8590 38 7E 00 01 */ addi r3, r30, 1 /* 802EC934 002E8594 38 81 00 08 */ addi r4, r1, 8 -/* 802EC938 002E8598 4B EE 1B 15 */ bl func_801CE44C +/* 802EC938 002E8598 4B EE 1B 15 */ bl strcmp /* 802EC93C 002E859C 2C 03 00 00 */ cmpwi r3, 0 /* 802EC940 002E85A0 40 82 00 0C */ bne lbl_802EC94C /* 802EC944 002E85A4 7F E3 FB 78 */ mr r3, r31 @@ -29812,7 +29812,7 @@ func_802EC9B8: /* 802EC9E8 002E8648 38 61 00 08 */ addi r3, r1, 8 /* 802EC9EC 002E864C 38 8D 8B D8 */ addi r4, r13, lbl_8063DE98-_SDA_BASE_ /* 802EC9F0 002E8650 4C C6 31 82 */ crclr 6 -/* 802EC9F4 002E8654 4B EE 18 15 */ bl func_801CE208 +/* 802EC9F4 002E8654 4B EE 18 15 */ bl sscanf /* 802EC9F8 002E8658 2C 03 00 01 */ cmpwi r3, 1 /* 802EC9FC 002E865C 40 82 00 0C */ bne lbl_802ECA08 /* 802ECA00 002E8660 38 60 00 01 */ li r3, 1 @@ -41651,7 +41651,7 @@ lbl_802F6C80: /* 802F6C88 002F28E8 41 82 00 10 */ beq lbl_802F6C98 /* 802F6C8C 002F28EC 7F C3 F3 78 */ mr r3, r30 /* 802F6C90 002F28F0 7F 64 DB 78 */ mr r4, r27 -/* 802F6C94 002F28F4 4B ED 76 3D */ bl func_801CE2D0 +/* 802F6C94 002F28F4 4B ED 76 3D */ bl strcpy lbl_802F6C98: /* 802F6C98 002F28F8 7F 63 DB 78 */ mr r3, r27 /* 802F6C9C 002F28FC 4B EC FE C9 */ bl strlen @@ -41705,7 +41705,7 @@ func_802F6D18: /* 802F6D44 002F29A4 38 7F AA D0 */ addi r3, r31, lbl_8057AAD0@l /* 802F6D48 002F29A8 89 08 00 03 */ lbz r8, 3(r8) /* 802F6D4C 002F29AC 4C C6 31 82 */ crclr 6 -/* 802F6D50 002F29B0 4B ED 5D AD */ bl func_801CCAFC +/* 802F6D50 002F29B0 4B ED 5D AD */ bl sprintf /* 802F6D54 002F29B4 38 7F AA D0 */ addi r3, r31, -21808 /* 802F6D58 002F29B8 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802F6D5C 002F29BC 80 01 00 14 */ lwz r0, 0x14(r1) @@ -42153,7 +42153,7 @@ lbl_802F7308: lbl_802F7344: /* 802F7344 002F2FA4 7F E3 FB 78 */ mr r3, r31 /* 802F7348 002F2FA8 7F 44 D3 78 */ mr r4, r26 -/* 802F734C 002F2FAC 4B ED 6F 85 */ bl func_801CE2D0 +/* 802F734C 002F2FAC 4B ED 6F 85 */ bl strcpy /* 802F7350 002F2FB0 80 61 00 08 */ lwz r3, 8(r1) /* 802F7354 002F2FB4 7F E5 FB 78 */ mr r5, r31 /* 802F7358 002F2FB8 7F C7 F3 78 */ mr r7, r30 @@ -42298,7 +42298,7 @@ lbl_802F752C: /* 802F753C 002F319C 41 82 00 10 */ beq lbl_802F754C /* 802F7540 002F31A0 7F 03 C3 78 */ mr r3, r24 /* 802F7544 002F31A4 7F 24 CB 78 */ mr r4, r25 -/* 802F7548 002F31A8 4B ED 6D 89 */ bl func_801CE2D0 +/* 802F7548 002F31A8 4B ED 6D 89 */ bl strcpy lbl_802F754C: /* 802F754C 002F31AC 2C 19 00 00 */ cmpwi r25, 0 /* 802F7550 002F31B0 41 82 00 08 */ beq lbl_802F7558 @@ -42320,7 +42320,7 @@ lbl_802F7578: /* 802F7580 002F31E0 41 82 00 10 */ beq lbl_802F7590 /* 802F7584 002F31E4 7E E3 BB 78 */ mr r3, r23 /* 802F7588 002F31E8 7F 44 D3 78 */ mr r4, r26 -/* 802F758C 002F31EC 4B ED 6D 45 */ bl func_801CE2D0 +/* 802F758C 002F31EC 4B ED 6D 45 */ bl strcpy lbl_802F7590: /* 802F7590 002F31F0 2C 1A 00 00 */ cmpwi r26, 0 /* 802F7594 002F31F4 41 82 00 08 */ beq lbl_802F759C @@ -42979,7 +42979,7 @@ lbl_802F7E3C: /* 802F7E4C 002F3AAC 3C 60 80 44 */ lis r3, lbl_80446038@ha /* 802F7E50 002F3AB0 38 63 60 38 */ addi r3, r3, lbl_80446038@l /* 802F7E54 002F3AB4 4C C6 31 82 */ crclr 6 -/* 802F7E58 002F3AB8 4B ED 4A 0D */ bl func_801CC864 +/* 802F7E58 002F3AB8 4B ED 4A 0D */ bl printf lbl_802F7E5C: /* 802F7E5C 002F3ABC 80 7E 07 D0 */ lwz r3, 0x7d0(r30) /* 802F7E60 002F3AC0 2C 03 00 00 */ cmpwi r3, 0 @@ -45586,7 +45586,7 @@ func_802FA0E0: .global func_802FA0E4 func_802FA0E4: -/* 802FA0E4 002F5D44 4B ED 43 68 */ b func_801CE44C +/* 802FA0E4 002F5D44 4B ED 43 68 */ b strcmp .global func_802FA0E8 func_802FA0E8: @@ -86015,7 +86015,7 @@ func_8031C598: /* 8031C5C4 00318224 3B DE 67 18 */ addi r30, r30, lbl_80446718@l /* 8031C5C8 00318228 38 6D 8D 30 */ addi r3, r13, lbl_8063DFF0-_SDA_BASE_ /* 8031C5CC 0031822C 38 8D 8D 30 */ addi r4, r13, lbl_8063DFF0-_SDA_BASE_ -/* 8031C5D0 00318230 4B EB 1E 7D */ bl func_801CE44C +/* 8031C5D0 00318230 4B EB 1E 7D */ bl strcmp /* 8031C5D4 00318234 2C 03 00 00 */ cmpwi r3, 0 /* 8031C5D8 00318238 40 82 00 10 */ bne lbl_8031C5E8 /* 8031C5DC 0031823C 38 7E 00 00 */ addi r3, r30, 0 @@ -86024,7 +86024,7 @@ func_8031C598: lbl_8031C5E8: /* 8031C5E8 00318248 38 9E 00 48 */ addi r4, r30, 0x48 /* 8031C5EC 0031824C 38 6D 8D 30 */ addi r3, r13, lbl_8063DFF0-_SDA_BASE_ -/* 8031C5F0 00318250 4B EB 1E 5D */ bl func_801CE44C +/* 8031C5F0 00318250 4B EB 1E 5D */ bl strcmp /* 8031C5F4 00318254 2C 03 00 00 */ cmpwi r3, 0 /* 8031C5F8 00318258 40 82 00 10 */ bne lbl_8031C608 /* 8031C5FC 0031825C 38 7E 00 54 */ addi r3, r30, 0x54 @@ -86053,13 +86053,13 @@ lbl_8031C610: /* 8031C650 003182B0 3C 60 80 62 */ lis r3, lbl_80620DE8@ha /* 8031C654 003182B4 7F E4 FB 78 */ mr r4, r31 /* 8031C658 003182B8 38 63 0D E8 */ addi r3, r3, lbl_80620DE8@l -/* 8031C65C 003182BC 4B EB 1C 75 */ bl func_801CE2D0 +/* 8031C65C 003182BC 4B EB 1C 75 */ bl strcpy /* 8031C660 003182C0 2C 1A 00 00 */ cmpwi r26, 0 /* 8031C664 003182C4 40 82 00 14 */ bne lbl_8031C678 /* 8031C668 003182C8 3C 60 80 45 */ lis r3, lbl_8044C338@ha /* 8031C66C 003182CC 38 9E 00 A0 */ addi r4, r30, 0xa0 /* 8031C670 003182D0 38 63 C3 38 */ addi r3, r3, lbl_8044C338@l -/* 8031C674 003182D4 4B EB 1C 5D */ bl func_801CE2D0 +/* 8031C674 003182D4 4B EB 1C 5D */ bl strcpy lbl_8031C678: /* 8031C678 003182D8 38 7E 00 B4 */ addi r3, r30, 0xb4 /* 8031C67C 003182DC 48 01 BA 5D */ bl gethostbyname @@ -86083,7 +86083,7 @@ lbl_8031C678: /* 8031C6C4 00318324 38 61 00 08 */ addi r3, r1, 8 /* 8031C6C8 00318328 38 9E 01 2C */ addi r4, r30, 0x12c /* 8031C6CC 0031832C 4C C6 31 82 */ crclr 6 -/* 8031C6D0 00318330 4B EB 04 2D */ bl func_801CCAFC +/* 8031C6D0 00318330 4B EB 04 2D */ bl sprintf /* 8031C6D4 00318334 38 61 00 08 */ addi r3, r1, 8 /* 8031C6D8 00318338 48 01 BA 01 */ bl gethostbyname /* 8031C6DC 0031833C 2C 03 00 00 */ cmpwi r3, 0 @@ -86092,7 +86092,7 @@ lbl_8031C678: /* 8031C6E8 00318348 38 61 00 08 */ addi r3, r1, 8 /* 8031C6EC 0031834C 38 9E 01 50 */ addi r4, r30, 0x150 /* 8031C6F0 00318350 4C C6 31 82 */ crclr 6 -/* 8031C6F4 00318354 4B EB 04 09 */ bl func_801CCAFC +/* 8031C6F4 00318354 4B EB 04 09 */ bl sprintf /* 8031C6F8 00318358 38 61 00 08 */ addi r3, r1, 8 /* 8031C6FC 0031835C 48 01 B9 DD */ bl gethostbyname /* 8031C700 00318360 2C 03 00 00 */ cmpwi r3, 0 @@ -86101,7 +86101,7 @@ lbl_8031C678: /* 8031C70C 0031836C 38 61 00 08 */ addi r3, r1, 8 /* 8031C710 00318370 38 9E 01 70 */ addi r4, r30, 0x170 /* 8031C714 00318374 4C C6 31 82 */ crclr 6 -/* 8031C718 00318378 4B EB 03 E5 */ bl func_801CCAFC +/* 8031C718 00318378 4B EB 03 E5 */ bl sprintf /* 8031C71C 0031837C 38 61 00 08 */ addi r3, r1, 8 /* 8031C720 00318380 48 01 B9 B9 */ bl gethostbyname /* 8031C724 00318384 2C 03 00 00 */ cmpwi r3, 0 @@ -86110,7 +86110,7 @@ lbl_8031C678: /* 8031C730 00318390 38 61 00 08 */ addi r3, r1, 8 /* 8031C734 00318394 38 9E 01 90 */ addi r4, r30, 0x190 /* 8031C738 00318398 4C C6 31 82 */ crclr 6 -/* 8031C73C 0031839C 4B EB 03 C1 */ bl func_801CCAFC +/* 8031C73C 0031839C 4B EB 03 C1 */ bl sprintf /* 8031C740 003183A0 38 61 00 08 */ addi r3, r1, 8 /* 8031C744 003183A4 48 01 B9 95 */ bl gethostbyname /* 8031C748 003183A8 2C 03 00 00 */ cmpwi r3, 0 @@ -86119,7 +86119,7 @@ lbl_8031C678: /* 8031C754 003183B4 38 61 00 08 */ addi r3, r1, 8 /* 8031C758 003183B8 38 9E 01 B0 */ addi r4, r30, 0x1b0 /* 8031C75C 003183BC 4C C6 31 82 */ crclr 6 -/* 8031C760 003183C0 4B EB 03 9D */ bl func_801CCAFC +/* 8031C760 003183C0 4B EB 03 9D */ bl sprintf /* 8031C764 003183C4 38 61 00 08 */ addi r3, r1, 8 /* 8031C768 003183C8 48 01 B9 71 */ bl gethostbyname /* 8031C76C 003183CC 2C 03 00 00 */ cmpwi r3, 0 @@ -86128,7 +86128,7 @@ lbl_8031C678: /* 8031C778 003183D8 38 61 00 08 */ addi r3, r1, 8 /* 8031C77C 003183DC 38 9E 01 D0 */ addi r4, r30, 0x1d0 /* 8031C780 003183E0 4C C6 31 82 */ crclr 6 -/* 8031C784 003183E4 4B EB 03 79 */ bl func_801CCAFC +/* 8031C784 003183E4 4B EB 03 79 */ bl sprintf /* 8031C788 003183E8 38 61 00 08 */ addi r3, r1, 8 /* 8031C78C 003183EC 48 01 B9 4D */ bl gethostbyname /* 8031C790 003183F0 2C 03 00 00 */ cmpwi r3, 0 @@ -86137,7 +86137,7 @@ lbl_8031C678: /* 8031C79C 003183FC 38 61 00 08 */ addi r3, r1, 8 /* 8031C7A0 00318400 38 9E 01 F4 */ addi r4, r30, 0x1f4 /* 8031C7A4 00318404 4C C6 31 82 */ crclr 6 -/* 8031C7A8 00318408 4B EB 03 55 */ bl func_801CCAFC +/* 8031C7A8 00318408 4B EB 03 55 */ bl sprintf /* 8031C7AC 0031840C 38 61 00 08 */ addi r3, r1, 8 /* 8031C7B0 00318410 48 01 B9 29 */ bl gethostbyname /* 8031C7B4 00318414 2C 03 00 00 */ cmpwi r3, 0 @@ -86183,7 +86183,7 @@ lbl_8031C814: /* 8031C83C 0031849C 1C 00 00 14 */ mulli r0, r0, 0x14 /* 8031C840 003184A0 7C C0 40 50 */ subf r6, r0, r8 /* 8031C844 003184A4 4C C6 31 82 */ crclr 6 -/* 8031C848 003184A8 4B EB 02 B5 */ bl func_801CCAFC +/* 8031C848 003184A8 4B EB 02 B5 */ bl sprintf /* 8031C84C 003184AC 38 61 00 08 */ addi r3, r1, 8 /* 8031C850 003184B0 48 01 B8 89 */ bl gethostbyname /* 8031C854 003184B4 2C 03 00 00 */ cmpwi r3, 0 @@ -86516,112 +86516,112 @@ lbl_8031CCB8: lbl_8031CCC8: /* 8031CCC8 00318928 38 6B 00 00 */ addi r3, r11, 0 /* 8031CCCC 0031892C 4C C6 31 82 */ crclr 6 -/* 8031CCD0 00318930 4B EA FB 95 */ bl func_801CC864 +/* 8031CCD0 00318930 4B EA FB 95 */ bl printf /* 8031CCD4 00318934 48 00 01 50 */ b lbl_8031CE24 lbl_8031CCD8: /* 8031CCD8 00318938 38 6B 00 10 */ addi r3, r11, 0x10 /* 8031CCDC 0031893C 4C C6 31 82 */ crclr 6 -/* 8031CCE0 00318940 4B EA FB 85 */ bl func_801CC864 +/* 8031CCE0 00318940 4B EA FB 85 */ bl printf /* 8031CCE4 00318944 48 00 01 40 */ b lbl_8031CE24 lbl_8031CCE8: /* 8031CCE8 00318948 38 6B 00 20 */ addi r3, r11, 0x20 /* 8031CCEC 0031894C 4C C6 31 82 */ crclr 6 -/* 8031CCF0 00318950 4B EA FB 75 */ bl func_801CC864 +/* 8031CCF0 00318950 4B EA FB 75 */ bl printf /* 8031CCF4 00318954 48 00 01 30 */ b lbl_8031CE24 lbl_8031CCF8: /* 8031CCF8 00318958 38 6B 00 30 */ addi r3, r11, 0x30 /* 8031CCFC 0031895C 4C C6 31 82 */ crclr 6 -/* 8031CD00 00318960 4B EA FB 65 */ bl func_801CC864 +/* 8031CD00 00318960 4B EA FB 65 */ bl printf /* 8031CD04 00318964 48 00 01 20 */ b lbl_8031CE24 lbl_8031CD08: /* 8031CD08 00318968 38 6B 00 40 */ addi r3, r11, 0x40 /* 8031CD0C 0031896C 4C C6 31 82 */ crclr 6 -/* 8031CD10 00318970 4B EA FB 55 */ bl func_801CC864 +/* 8031CD10 00318970 4B EA FB 55 */ bl printf /* 8031CD14 00318974 48 00 01 10 */ b lbl_8031CE24 lbl_8031CD18: /* 8031CD18 00318978 38 6B 00 50 */ addi r3, r11, 0x50 /* 8031CD1C 0031897C 4C C6 31 82 */ crclr 6 -/* 8031CD20 00318980 4B EA FB 45 */ bl func_801CC864 +/* 8031CD20 00318980 4B EA FB 45 */ bl printf /* 8031CD24 00318984 48 00 01 00 */ b lbl_8031CE24 lbl_8031CD28: /* 8031CD28 00318988 38 6B 00 60 */ addi r3, r11, 0x60 /* 8031CD2C 0031898C 4C C6 31 82 */ crclr 6 -/* 8031CD30 00318990 4B EA FB 35 */ bl func_801CC864 +/* 8031CD30 00318990 4B EA FB 35 */ bl printf /* 8031CD34 00318994 48 00 00 F0 */ b lbl_8031CE24 lbl_8031CD38: /* 8031CD38 00318998 38 6B 00 70 */ addi r3, r11, 0x70 /* 8031CD3C 0031899C 4C C6 31 82 */ crclr 6 -/* 8031CD40 003189A0 4B EA FB 25 */ bl func_801CC864 +/* 8031CD40 003189A0 4B EA FB 25 */ bl printf /* 8031CD44 003189A4 48 00 00 E0 */ b lbl_8031CE24 lbl_8031CD48: /* 8031CD48 003189A8 38 6B 00 80 */ addi r3, r11, 0x80 /* 8031CD4C 003189AC 4C C6 31 82 */ crclr 6 -/* 8031CD50 003189B0 4B EA FB 15 */ bl func_801CC864 +/* 8031CD50 003189B0 4B EA FB 15 */ bl printf /* 8031CD54 003189B4 48 00 00 D0 */ b lbl_8031CE24 lbl_8031CD58: /* 8031CD58 003189B8 38 6B 00 90 */ addi r3, r11, 0x90 /* 8031CD5C 003189BC 4C C6 31 82 */ crclr 6 -/* 8031CD60 003189C0 4B EA FB 05 */ bl func_801CC864 +/* 8031CD60 003189C0 4B EA FB 05 */ bl printf /* 8031CD64 003189C4 48 00 00 C0 */ b lbl_8031CE24 lbl_8031CD68: /* 8031CD68 003189C8 38 6B 00 A0 */ addi r3, r11, 0xa0 /* 8031CD6C 003189CC 4C C6 31 82 */ crclr 6 -/* 8031CD70 003189D0 4B EA FA F5 */ bl func_801CC864 +/* 8031CD70 003189D0 4B EA FA F5 */ bl printf /* 8031CD74 003189D4 48 00 00 B0 */ b lbl_8031CE24 lbl_8031CD78: /* 8031CD78 003189D8 38 6B 00 B0 */ addi r3, r11, 0xb0 /* 8031CD7C 003189DC 4C C6 31 82 */ crclr 6 -/* 8031CD80 003189E0 4B EA FA E5 */ bl func_801CC864 +/* 8031CD80 003189E0 4B EA FA E5 */ bl printf /* 8031CD84 003189E4 48 00 00 A0 */ b lbl_8031CE24 lbl_8031CD88: /* 8031CD88 003189E8 38 6B 00 C0 */ addi r3, r11, 0xc0 /* 8031CD8C 003189EC 4C C6 31 82 */ crclr 6 -/* 8031CD90 003189F0 4B EA FA D5 */ bl func_801CC864 +/* 8031CD90 003189F0 4B EA FA D5 */ bl printf /* 8031CD94 003189F4 48 00 00 90 */ b lbl_8031CE24 lbl_8031CD98: /* 8031CD98 003189F8 38 6B 00 D0 */ addi r3, r11, 0xd0 /* 8031CD9C 003189FC 4C C6 31 82 */ crclr 6 -/* 8031CDA0 00318A00 4B EA FA C5 */ bl func_801CC864 +/* 8031CDA0 00318A00 4B EA FA C5 */ bl printf /* 8031CDA4 00318A04 48 00 00 80 */ b lbl_8031CE24 lbl_8031CDA8: /* 8031CDA8 00318A08 38 6B 00 E0 */ addi r3, r11, 0xe0 /* 8031CDAC 00318A0C 4C C6 31 82 */ crclr 6 -/* 8031CDB0 00318A10 4B EA FA B5 */ bl func_801CC864 +/* 8031CDB0 00318A10 4B EA FA B5 */ bl printf /* 8031CDB4 00318A14 48 00 00 70 */ b lbl_8031CE24 lbl_8031CDB8: /* 8031CDB8 00318A18 38 6B 00 F4 */ addi r3, r11, 0xf4 /* 8031CDBC 00318A1C 4C C6 31 82 */ crclr 6 -/* 8031CDC0 00318A20 4B EA FA A5 */ bl func_801CC864 +/* 8031CDC0 00318A20 4B EA FA A5 */ bl printf /* 8031CDC4 00318A24 48 00 00 60 */ b lbl_8031CE24 lbl_8031CDC8: /* 8031CDC8 00318A28 38 6B 01 04 */ addi r3, r11, 0x104 /* 8031CDCC 00318A2C 4C C6 31 82 */ crclr 6 -/* 8031CDD0 00318A30 4B EA FA 95 */ bl func_801CC864 +/* 8031CDD0 00318A30 4B EA FA 95 */ bl printf /* 8031CDD4 00318A34 48 00 00 50 */ b lbl_8031CE24 lbl_8031CDD8: /* 8031CDD8 00318A38 38 6B 01 14 */ addi r3, r11, 0x114 /* 8031CDDC 00318A3C 4C C6 31 82 */ crclr 6 -/* 8031CDE0 00318A40 4B EA FA 85 */ bl func_801CC864 +/* 8031CDE0 00318A40 4B EA FA 85 */ bl printf /* 8031CDE4 00318A44 48 00 00 40 */ b lbl_8031CE24 lbl_8031CDE8: /* 8031CDE8 00318A48 38 6B 01 24 */ addi r3, r11, 0x124 /* 8031CDEC 00318A4C 4C C6 31 82 */ crclr 6 -/* 8031CDF0 00318A50 4B EA FA 75 */ bl func_801CC864 +/* 8031CDF0 00318A50 4B EA FA 75 */ bl printf /* 8031CDF4 00318A54 48 00 00 30 */ b lbl_8031CE24 lbl_8031CDF8: /* 8031CDF8 00318A58 38 6B 01 34 */ addi r3, r11, 0x134 /* 8031CDFC 00318A5C 4C C6 31 82 */ crclr 6 -/* 8031CE00 00318A60 4B EA FA 65 */ bl func_801CC864 +/* 8031CE00 00318A60 4B EA FA 65 */ bl printf /* 8031CE04 00318A64 48 00 00 20 */ b lbl_8031CE24 lbl_8031CE08: /* 8031CE08 00318A68 38 6B 01 44 */ addi r3, r11, 0x144 /* 8031CE0C 00318A6C 4C C6 31 82 */ crclr 6 -/* 8031CE10 00318A70 4B EA FA 55 */ bl func_801CC864 +/* 8031CE10 00318A70 4B EA FA 55 */ bl printf /* 8031CE14 00318A74 48 00 00 10 */ b lbl_8031CE24 lbl_8031CE18: /* 8031CE18 00318A78 38 6B 01 54 */ addi r3, r11, 0x154 /* 8031CE1C 00318A7C 4C C6 31 82 */ crclr 6 -/* 8031CE20 00318A80 4B EA FA 45 */ bl func_801CC864 +/* 8031CE20 00318A80 4B EA FA 45 */ bl printf lbl_8031CE24: /* 8031CE24 00318A84 38 A1 00 88 */ addi r5, r1, 0x88 /* 8031CE28 00318A88 38 01 00 08 */ addi r0, r1, 8 @@ -86631,7 +86631,7 @@ lbl_8031CE24: /* 8031CE38 00318A98 90 61 00 68 */ stw r3, 0x68(r1) /* 8031CE3C 00318A9C 7F E3 FB 78 */ mr r3, r31 /* 8031CE40 00318AA0 90 01 00 70 */ stw r0, 0x70(r1) -/* 8031CE44 00318AA4 4B EA FA E9 */ bl func_801CC92C +/* 8031CE44 00318AA4 4B EA FA E9 */ bl vprintf lbl_8031CE48: /* 8031CE48 00318AA8 80 01 00 84 */ lwz r0, 0x84(r1) /* 8031CE4C 00318AAC 83 E1 00 7C */ lwz r31, 0x7c(r1) @@ -88914,7 +88914,7 @@ func_8031EDEC: /* 8031EE18 0031AA78 7F E3 FB 78 */ mr r3, r31 /* 8031EE1C 0031AA7C 38 A5 6C 70 */ addi r5, r5, lbl_80446C70@l /* 8031EE20 0031AA80 4C C6 31 82 */ crclr 6 -/* 8031EE24 0031AA84 4B EA DC 01 */ bl func_801CCA24 +/* 8031EE24 0031AA84 4B EA DC 01 */ bl snprintf /* 8031EE28 0031AA88 7F E3 FB 78 */ mr r3, r31 /* 8031EE2C 0031AA8C 4B EA 7D 39 */ bl strlen /* 8031EE30 0031AA90 80 01 00 14 */ lwz r0, 0x14(r1) @@ -88938,7 +88938,7 @@ func_8031EE44: /* 8031EE6C 0031AACC 93 81 00 10 */ stw r28, 0x10(r1) /* 8031EE70 0031AAD0 7C 7C 1B 78 */ mr r28, r3 /* 8031EE74 0031AAD4 7F C3 F3 78 */ mr r3, r30 -/* 8031EE78 0031AAD8 4B EA F7 31 */ bl func_801CE5A8 +/* 8031EE78 0031AAD8 4B EA F7 31 */ bl strchr /* 8031EE7C 0031AADC 7F E6 07 74 */ extsb r6, r31 /* 8031EE80 0031AAE0 3C A0 80 44 */ lis r5, lbl_80446C70@ha /* 8031EE84 0031AAE4 7C 7F 1B 78 */ mr r31, r3 @@ -88948,7 +88948,7 @@ func_8031EE44: /* 8031EE94 0031AAF4 38 A5 6C 70 */ addi r5, r5, lbl_80446C70@l /* 8031EE98 0031AAF8 38 80 10 00 */ li r4, 0x1000 /* 8031EE9C 0031AAFC 4C C6 31 82 */ crclr 6 -/* 8031EEA0 0031AB00 4B EA DB 85 */ bl func_801CCA24 +/* 8031EEA0 0031AB00 4B EA DB 85 */ bl snprintf /* 8031EEA4 0031AB04 7F E3 FB 78 */ mr r3, r31 /* 8031EEA8 0031AB08 4B EA 7C BD */ bl strlen /* 8031EEAC 0031AB0C 7F C3 F3 78 */ mr r3, r30 @@ -88981,7 +88981,7 @@ func_8031EED4: lbl_8031EF0C: /* 8031EF0C 0031AB6C 7C A3 2B 78 */ mr r3, r5 /* 8031EF10 0031AB70 7C C4 07 74 */ extsb r4, r6 -/* 8031EF14 0031AB74 4B EA F6 95 */ bl func_801CE5A8 +/* 8031EF14 0031AB74 4B EA F6 95 */ bl strchr /* 8031EF18 0031AB78 2C 03 00 00 */ cmpwi r3, 0 /* 8031EF1C 0031AB7C 7C 7E 1B 78 */ mr r30, r3 /* 8031EF20 0031AB80 40 82 00 0C */ bne lbl_8031EF2C @@ -88993,7 +88993,7 @@ lbl_8031EF2C: /* 8031EF34 0031AB94 7C 65 1B 78 */ mr r5, r3 /* 8031EF38 0031AB98 7F 84 E3 78 */ mr r4, r28 /* 8031EF3C 0031AB9C 38 7E 00 01 */ addi r3, r30, 1 -/* 8031EF40 0031ABA0 4B EA F6 29 */ bl func_801CE568 +/* 8031EF40 0031ABA0 4B EA F6 29 */ bl strncmp /* 8031EF44 0031ABA4 2C 03 00 00 */ cmpwi r3, 0 /* 8031EF48 0031ABA8 40 82 00 24 */ bne lbl_8031EF6C /* 8031EF4C 0031ABAC 7F 83 E3 78 */ mr r3, r28 @@ -89007,7 +89007,7 @@ lbl_8031EF2C: lbl_8031EF6C: /* 8031EF6C 0031ABCC 38 7E 00 01 */ addi r3, r30, 1 /* 8031EF70 0031ABD0 7F E4 07 74 */ extsb r4, r31 -/* 8031EF74 0031ABD4 4B EA F6 35 */ bl func_801CE5A8 +/* 8031EF74 0031ABD4 4B EA F6 35 */ bl strchr /* 8031EF78 0031ABD8 2C 03 00 00 */ cmpwi r3, 0 /* 8031EF7C 0031ABDC 40 82 00 0C */ bne lbl_8031EF88 /* 8031EF80 0031ABE0 38 60 FF FF */ li r3, -1 @@ -89015,7 +89015,7 @@ lbl_8031EF6C: lbl_8031EF88: /* 8031EF88 0031ABE8 7F E4 07 74 */ extsb r4, r31 /* 8031EF8C 0031ABEC 38 63 00 01 */ addi r3, r3, 1 -/* 8031EF90 0031ABF0 4B EA F6 19 */ bl func_801CE5A8 +/* 8031EF90 0031ABF0 4B EA F6 19 */ bl strchr /* 8031EF94 0031ABF4 2C 03 00 00 */ cmpwi r3, 0 /* 8031EF98 0031ABF8 7C 7E 1B 78 */ mr r30, r3 /* 8031EF9C 0031ABFC 40 82 FF 90 */ bne lbl_8031EF2C @@ -89023,7 +89023,7 @@ lbl_8031EF88: /* 8031EFA4 0031AC04 48 00 00 68 */ b lbl_8031F00C lbl_8031EFA8: /* 8031EFA8 0031AC08 38 7E 00 01 */ addi r3, r30, 1 -/* 8031EFAC 0031AC0C 4B EA F5 FD */ bl func_801CE5A8 +/* 8031EFAC 0031AC0C 4B EA F5 FD */ bl strchr /* 8031EFB0 0031AC10 2C 03 00 00 */ cmpwi r3, 0 /* 8031EFB4 0031AC14 7C 7E 1B 78 */ mr r30, r3 /* 8031EFB8 0031AC18 40 82 00 0C */ bne lbl_8031EFC4 @@ -89032,7 +89032,7 @@ lbl_8031EFA8: lbl_8031EFC4: /* 8031EFC4 0031AC24 7F E4 07 74 */ extsb r4, r31 /* 8031EFC8 0031AC28 38 63 00 01 */ addi r3, r3, 1 -/* 8031EFCC 0031AC2C 4B EA F5 DD */ bl func_801CE5A8 +/* 8031EFCC 0031AC2C 4B EA F5 DD */ bl strchr /* 8031EFD0 0031AC30 2C 03 00 00 */ cmpwi r3, 0 /* 8031EFD4 0031AC34 41 82 00 10 */ beq lbl_8031EFE4 /* 8031EFD8 0031AC38 38 1E 00 01 */ addi r0, r30, 1 @@ -89046,7 +89046,7 @@ lbl_8031EFF0: /* 8031EFF0 0031AC50 7F A3 EB 78 */ mr r3, r29 /* 8031EFF4 0031AC54 7F E5 FB 78 */ mr r5, r31 /* 8031EFF8 0031AC58 38 9E 00 01 */ addi r4, r30, 1 -/* 8031EFFC 0031AC5C 4B EA F3 95 */ bl func_801CE390 +/* 8031EFFC 0031AC5C 4B EA F3 95 */ bl strncpy /* 8031F000 0031AC60 38 00 00 00 */ li r0, 0 /* 8031F004 0031AC64 7F E3 FB 78 */ mr r3, r31 /* 8031F008 0031AC68 7C 1D F9 AE */ stbx r0, r29, r31 @@ -89233,7 +89233,7 @@ lbl_8031F284: /* 8031F288 0031AEE8 41 82 00 10 */ beq lbl_8031F298 /* 8031F28C 0031AEEC 7F E3 FB 78 */ mr r3, r31 /* 8031F290 0031AEF0 38 81 01 18 */ addi r4, r1, 0x118 -/* 8031F294 0031AEF4 4B EA F0 3D */ bl func_801CE2D0 +/* 8031F294 0031AEF4 4B EA F0 3D */ bl strcpy lbl_8031F298: /* 8031F298 0031AEF8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8031F29C 0031AEFC 54 03 06 3E */ clrlwi r3, r0, 0x18 @@ -89715,7 +89715,7 @@ func_8031F918: /* 8031F93C 0031B59C 7C 7D 1B 78 */ mr r29, r3 /* 8031F940 0031B5A0 80 64 00 08 */ lwz r3, 8(r4) /* 8031F944 0031B5A4 38 9F 00 C4 */ addi r4, r31, 0xc4 -/* 8031F948 0031B5A8 4B EA EB 05 */ bl func_801CE44C +/* 8031F948 0031B5A8 4B EA EB 05 */ bl strcmp /* 8031F94C 0031B5AC 2C 03 00 00 */ cmpwi r3, 0 /* 8031F950 0031B5B0 40 82 00 50 */ bne lbl_8031F9A0 /* 8031F954 0031B5B4 80 BE 00 00 */ lwz r5, 0(r30) @@ -90979,7 +90979,7 @@ lbl_80320A7C: /* 80320AA4 0031C704 48 01 30 21 */ bl func_80333AC4 /* 80320AA8 0031C708 38 61 00 08 */ addi r3, r1, 8 /* 80320AAC 0031C70C 38 9B 00 8E */ addi r4, r27, 0x8e -/* 80320AB0 0031C710 4B EA D9 9D */ bl func_801CE44C +/* 80320AB0 0031C710 4B EA D9 9D */ bl strcmp /* 80320AB4 0031C714 2C 03 00 00 */ cmpwi r3, 0 /* 80320AB8 0031C718 40 82 00 BC */ bne lbl_80320B74 /* 80320ABC 0031C71C 80 9B 00 04 */ lwz r4, 4(r27) @@ -91111,7 +91111,7 @@ lbl_80320C68: /* 80320C90 0031C8F0 48 01 2E 35 */ bl func_80333AC4 /* 80320C94 0031C8F4 38 61 00 08 */ addi r3, r1, 8 /* 80320C98 0031C8F8 38 9A 00 8E */ addi r4, r26, 0x8e -/* 80320C9C 0031C8FC 4B EA D7 B1 */ bl func_801CE44C +/* 80320C9C 0031C8FC 4B EA D7 B1 */ bl strcmp /* 80320CA0 0031C900 2C 03 00 00 */ cmpwi r3, 0 /* 80320CA4 0031C904 40 82 01 08 */ bne lbl_80320DAC /* 80320CA8 0031C908 80 6D B0 48 */ lwz r3, lbl_80640308-_SDA_BASE_(r13) @@ -92089,7 +92089,7 @@ lbl_80321A78: /* 80321A90 0031D6F0 48 01 12 19 */ bl func_80332CA8 /* 80321A94 0031D6F4 38 7E 00 8E */ addi r3, r30, 0x8e /* 80321A98 0031D6F8 38 81 00 20 */ addi r4, r1, 0x20 -/* 80321A9C 0031D6FC 4B EA C9 B1 */ bl func_801CE44C +/* 80321A9C 0031D6FC 4B EA C9 B1 */ bl strcmp /* 80321AA0 0031D700 2C 03 00 00 */ cmpwi r3, 0 /* 80321AA4 0031D704 40 82 00 BC */ bne lbl_80321B60 /* 80321AA8 0031D708 80 6D B0 50 */ lwz r3, lbl_80640310-_SDA_BASE_(r13) @@ -94604,7 +94604,7 @@ lbl_80323CA4: /* 80323CF0 0031F950 7C 65 1B 78 */ mr r5, r3 /* 80323CF4 0031F954 7F C3 F3 78 */ mr r3, r30 /* 80323CF8 0031F958 38 8D 8D 9C */ addi r4, r13, lbl_8063E05C-_SDA_BASE_ -/* 80323CFC 0031F95C 4B EA 66 9D */ bl func_801CA398 +/* 80323CFC 0031F95C 4B EA 66 9D */ bl memcmp /* 80323D00 0031F960 2C 03 00 00 */ cmpwi r3, 0 /* 80323D04 0031F964 41 82 00 1C */ beq lbl_80323D20 /* 80323D08 0031F968 7F C5 F3 78 */ mr r5, r30 @@ -94619,12 +94619,12 @@ lbl_80323D20: /* 80323D28 0031F988 7F DE 1A 14 */ add r30, r30, r3 /* 80323D2C 0031F98C 38 80 00 76 */ li r4, 0x76 /* 80323D30 0031F990 7F C3 F3 78 */ mr r3, r30 -/* 80323D34 0031F994 4B EA A8 75 */ bl func_801CE5A8 +/* 80323D34 0031F994 4B EA A8 75 */ bl strchr /* 80323D38 0031F998 7F BE 18 50 */ subf r29, r30, r3 /* 80323D3C 0031F99C 7F C4 F3 78 */ mr r4, r30 /* 80323D40 0031F9A0 7F A5 EB 78 */ mr r5, r29 /* 80323D44 0031F9A4 38 61 00 08 */ addi r3, r1, 8 -/* 80323D48 0031F9A8 4B EA A6 49 */ bl func_801CE390 +/* 80323D48 0031F9A8 4B EA A6 49 */ bl strncpy /* 80323D4C 0031F9AC 28 1D 00 0A */ cmplwi r29, 0xa /* 80323D50 0031F9B0 41 81 00 1C */ bgt lbl_80323D6C /* 80323D54 0031F9B4 38 61 00 08 */ addi r3, r1, 8 @@ -94648,7 +94648,7 @@ lbl_80323D84: /* 80323D94 0031F9F4 7C 65 1B 78 */ mr r5, r3 /* 80323D98 0031F9F8 7F C3 F3 78 */ mr r3, r30 /* 80323D9C 0031F9FC 38 8D 8D A4 */ addi r4, r13, lbl_8063E064-_SDA_BASE_ -/* 80323DA0 0031FA00 4B EA 65 F9 */ bl func_801CA398 +/* 80323DA0 0031FA00 4B EA 65 F9 */ bl memcmp /* 80323DA4 0031FA04 2C 03 00 00 */ cmpwi r3, 0 /* 80323DA8 0031FA08 40 82 00 60 */ bne lbl_80323E08 /* 80323DAC 0031FA0C 80 6D B0 58 */ lwz r3, lbl_80640318-_SDA_BASE_(r13) @@ -95155,7 +95155,7 @@ lbl_80324478: /* 803244A0 00320100 80 63 00 04 */ lwz r3, 4(r3) /* 803244A4 00320104 2C 03 00 00 */ cmpwi r3, 0 /* 803244A8 00320108 41 82 01 40 */ beq lbl_803245E8 -/* 803244AC 0032010C 4B EA 9F A1 */ bl func_801CE44C +/* 803244AC 0032010C 4B EA 9F A1 */ bl strcmp /* 803244B0 00320110 2C 03 00 00 */ cmpwi r3, 0 /* 803244B4 00320114 41 82 01 34 */ beq lbl_803245E8 /* 803244B8 00320118 38 60 00 00 */ li r3, 0 @@ -95367,7 +95367,7 @@ lbl_803247A8: /* 803247AC 0032040C 48 00 00 3C */ b lbl_803247E8 lbl_803247B0: /* 803247B0 00320410 7F C4 F3 78 */ mr r4, r30 -/* 803247B4 00320414 4B EA 9B 1D */ bl func_801CE2D0 +/* 803247B4 00320414 4B EA 9B 1D */ bl strcpy /* 803247B8 00320418 3C 80 80 45 */ lis r4, lbl_80448050@ha /* 803247BC 0032041C 80 DF 00 00 */ lwz r6, 0(r31) /* 803247C0 00320420 7F C5 F3 78 */ mr r5, r30 @@ -95792,7 +95792,7 @@ lbl_80324D6C: /* 80324DB4 00320A14 39 40 00 20 */ li r10, 0x20 /* 80324DB8 00320A18 90 01 00 18 */ stw r0, 0x18(r1) /* 80324DBC 00320A1C 4C C6 31 82 */ crclr 6 -/* 80324DC0 00320A20 4B EA 7C 65 */ bl func_801CCA24 +/* 80324DC0 00320A20 4B EA 7C 65 */ bl snprintf /* 80324DC4 00320A24 7C 7F 1B 78 */ mr r31, r3 /* 80324DC8 00320A28 38 6D 8D C8 */ addi r3, r13, lbl_8063E088-_SDA_BASE_ /* 80324DCC 00320A2C 4B EA 1D 99 */ bl strlen @@ -96084,7 +96084,7 @@ lbl_80325200: /* 8032520C 00320E6C 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 80325210 00320E70 38 C6 00 01 */ addi r6, r6, 1 /* 80325214 00320E74 4C C6 31 82 */ crclr 6 -/* 80325218 00320E78 4B EA 78 0D */ bl func_801CCA24 +/* 80325218 00320E78 4B EA 78 0D */ bl snprintf /* 8032521C 00320E7C 38 81 00 08 */ addi r4, r1, 8 /* 80325220 00320E80 38 A1 00 18 */ addi r5, r1, 0x18 /* 80325224 00320E84 38 6D 8D AC */ addi r3, r13, lbl_8063E06C-_SDA_BASE_ @@ -96097,7 +96097,7 @@ lbl_80325200: /* 80325240 00320EA0 88 C6 00 0D */ lbz r6, 0xd(r6) /* 80325244 00320EA4 38 C6 00 01 */ addi r6, r6, 1 /* 80325248 00320EA8 4C C6 31 82 */ crclr 6 -/* 8032524C 00320EAC 4B EA 77 D9 */ bl func_801CCA24 +/* 8032524C 00320EAC 4B EA 77 D9 */ bl snprintf /* 80325250 00320EB0 38 81 00 08 */ addi r4, r1, 8 /* 80325254 00320EB4 38 A1 00 18 */ addi r5, r1, 0x18 /* 80325258 00320EB8 38 6D 8D B0 */ addi r3, r13, lbl_8063E070-_SDA_BASE_ @@ -96108,7 +96108,7 @@ lbl_80325200: /* 8032526C 00320ECC 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 80325270 00320ED0 38 C0 00 03 */ li r6, 3 /* 80325274 00320ED4 4C C6 31 82 */ crclr 6 -/* 80325278 00320ED8 4B EA 77 AD */ bl func_801CCA24 +/* 80325278 00320ED8 4B EA 77 AD */ bl snprintf /* 8032527C 00320EDC 38 81 00 08 */ addi r4, r1, 8 /* 80325280 00320EE0 38 A1 00 18 */ addi r5, r1, 0x18 /* 80325284 00320EE4 38 6D 8D B4 */ addi r3, r13, lbl_8063E074-_SDA_BASE_ @@ -97216,7 +97216,7 @@ lbl_8032626C: /* 803262C8 00321F28 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 803262CC 00321F2C 38 C6 00 01 */ addi r6, r6, 1 /* 803262D0 00321F30 4C C6 31 82 */ crclr 6 -/* 803262D4 00321F34 4B EA 67 51 */ bl func_801CCA24 +/* 803262D4 00321F34 4B EA 67 51 */ bl snprintf /* 803262D8 00321F38 38 81 00 08 */ addi r4, r1, 8 /* 803262DC 00321F3C 38 A1 00 18 */ addi r5, r1, 0x18 /* 803262E0 00321F40 38 6D 8D AC */ addi r3, r13, lbl_8063E06C-_SDA_BASE_ @@ -97229,7 +97229,7 @@ lbl_8032626C: /* 803262FC 00321F5C 88 C6 00 0D */ lbz r6, 0xd(r6) /* 80326300 00321F60 38 C6 00 01 */ addi r6, r6, 1 /* 80326304 00321F64 4C C6 31 82 */ crclr 6 -/* 80326308 00321F68 4B EA 67 1D */ bl func_801CCA24 +/* 80326308 00321F68 4B EA 67 1D */ bl snprintf /* 8032630C 00321F6C 38 81 00 08 */ addi r4, r1, 8 /* 80326310 00321F70 38 A1 00 18 */ addi r5, r1, 0x18 /* 80326314 00321F74 38 6D 8D B0 */ addi r3, r13, lbl_8063E070-_SDA_BASE_ @@ -97240,7 +97240,7 @@ lbl_8032626C: /* 80326328 00321F88 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 8032632C 00321F8C 38 C0 00 03 */ li r6, 3 /* 80326330 00321F90 4C C6 31 82 */ crclr 6 -/* 80326334 00321F94 4B EA 66 F1 */ bl func_801CCA24 +/* 80326334 00321F94 4B EA 66 F1 */ bl snprintf /* 80326338 00321F98 38 81 00 08 */ addi r4, r1, 8 /* 8032633C 00321F9C 38 A1 00 18 */ addi r5, r1, 0x18 /* 80326340 00321FA0 38 6D 8D B4 */ addi r3, r13, lbl_8063E074-_SDA_BASE_ @@ -97332,7 +97332,7 @@ lbl_80326470: /* 80326474 003220D4 7F 83 E3 78 */ mr r3, r28 /* 80326478 003220D8 38 84 E7 68 */ addi r4, r4, lbl_8063E768@l /* 8032647C 003220DC 38 A0 00 06 */ li r5, 6 -/* 80326480 003220E0 4B EA 3F 19 */ bl func_801CA398 +/* 80326480 003220E0 4B EA 3F 19 */ bl memcmp /* 80326484 003220E4 2C 03 00 00 */ cmpwi r3, 0 /* 80326488 003220E8 40 82 00 28 */ bne lbl_803264B0 /* 8032648C 003220EC 38 9F 04 80 */ addi r4, r31, 0x480 @@ -97804,7 +97804,7 @@ lbl_80326B48: /* 80326B64 003227C4 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 80326B68 003227C8 80 C6 02 10 */ lwz r6, 0x210(r6) /* 80326B6C 003227CC 4C C6 31 82 */ crclr 6 -/* 80326B70 003227D0 4B EA 5E B5 */ bl func_801CCA24 +/* 80326B70 003227D0 4B EA 5E B5 */ bl snprintf /* 80326B74 003227D4 83 8D B0 68 */ lwz r28, lbl_80640328-_SDA_BASE_(r13) /* 80326B78 003227D8 38 A0 00 00 */ li r5, 0 /* 80326B7C 003227DC 88 7C 00 14 */ lbz r3, 0x14(r28) @@ -99126,7 +99126,7 @@ lbl_80327DDC: /* 80327DE8 00323A48 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 80327DEC 00323A4C 38 C6 00 01 */ addi r6, r6, 1 /* 80327DF0 00323A50 4C C6 31 82 */ crclr 6 -/* 80327DF4 00323A54 4B EA 4C 31 */ bl func_801CCA24 +/* 80327DF4 00323A54 4B EA 4C 31 */ bl snprintf /* 80327DF8 00323A58 38 81 00 08 */ addi r4, r1, 8 /* 80327DFC 00323A5C 38 A1 00 18 */ addi r5, r1, 0x18 /* 80327E00 00323A60 38 6D 8D AC */ addi r3, r13, lbl_8063E06C-_SDA_BASE_ @@ -99139,7 +99139,7 @@ lbl_80327DDC: /* 80327E1C 00323A7C 88 C6 00 0D */ lbz r6, 0xd(r6) /* 80327E20 00323A80 38 C6 00 01 */ addi r6, r6, 1 /* 80327E24 00323A84 4C C6 31 82 */ crclr 6 -/* 80327E28 00323A88 4B EA 4B FD */ bl func_801CCA24 +/* 80327E28 00323A88 4B EA 4B FD */ bl snprintf /* 80327E2C 00323A8C 38 81 00 08 */ addi r4, r1, 8 /* 80327E30 00323A90 38 A1 00 18 */ addi r5, r1, 0x18 /* 80327E34 00323A94 38 6D 8D B0 */ addi r3, r13, lbl_8063E070-_SDA_BASE_ @@ -99150,7 +99150,7 @@ lbl_80327DDC: /* 80327E48 00323AA8 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 80327E4C 00323AAC 38 C0 00 03 */ li r6, 3 /* 80327E50 00323AB0 4C C6 31 82 */ crclr 6 -/* 80327E54 00323AB4 4B EA 4B D1 */ bl func_801CCA24 +/* 80327E54 00323AB4 4B EA 4B D1 */ bl snprintf /* 80327E58 00323AB8 38 81 00 08 */ addi r4, r1, 8 /* 80327E5C 00323ABC 38 A1 00 18 */ addi r5, r1, 0x18 /* 80327E60 00323AC0 38 6D 8D B4 */ addi r3, r13, lbl_8063E074-_SDA_BASE_ @@ -99549,7 +99549,7 @@ lbl_803283B4: /* 803283FC 0032405C 91 61 00 14 */ stw r11, 0x14(r1) /* 80328400 00324060 90 01 00 18 */ stw r0, 0x18(r1) /* 80328404 00324064 4C C6 31 82 */ crclr 6 -/* 80328408 00324068 4B EA 46 1D */ bl func_801CCA24 +/* 80328408 00324068 4B EA 46 1D */ bl snprintf /* 8032840C 0032406C 80 ED B0 60 */ lwz r7, lbl_80640320-_SDA_BASE_(r13) /* 80328410 00324070 2C 07 00 00 */ cmpwi r7, 0 /* 80328414 00324074 41 82 00 58 */ beq lbl_8032846C @@ -99558,7 +99558,7 @@ lbl_803283B4: /* 80328420 00324080 7C 66 1B 78 */ mr r6, r3 /* 80328424 00324084 38 80 01 00 */ li r4, 0x100 /* 80328428 00324088 4C C6 31 82 */ crclr 6 -/* 8032842C 0032408C 4B EA 45 F9 */ bl func_801CCA24 +/* 8032842C 0032408C 4B EA 45 F9 */ bl snprintf /* 80328430 00324090 48 00 00 3C */ b lbl_8032846C lbl_80328434: /* 80328434 00324094 7F A7 EB 78 */ mr r7, r29 @@ -99567,7 +99567,7 @@ lbl_80328434: /* 80328440 003240A0 38 AD 8D D8 */ addi r5, r13, lbl_8063E098-_SDA_BASE_ /* 80328444 003240A4 38 CD 8D C0 */ addi r6, r13, lbl_8063E080-_SDA_BASE_ /* 80328448 003240A8 4C C6 31 82 */ crclr 6 -/* 8032844C 003240AC 4B EA 45 D9 */ bl func_801CCA24 +/* 8032844C 003240AC 4B EA 45 D9 */ bl snprintf /* 80328450 003240B0 80 6D B0 68 */ lwz r3, lbl_80640328-_SDA_BASE_(r13) /* 80328454 003240B4 93 A3 02 14 */ stw r29, 0x214(r3) /* 80328458 003240B8 48 00 00 14 */ b lbl_8032846C @@ -99959,7 +99959,7 @@ lbl_803289C4: /* 803289DC 0032463C 38 80 02 00 */ li r4, 0x200 /* 803289E0 00324640 38 AD 8D A8 */ addi r5, r13, lbl_8063E068-_SDA_BASE_ /* 803289E4 00324644 4C C6 31 82 */ crclr 6 -/* 803289E8 00324648 4B EA 40 3D */ bl func_801CCA24 +/* 803289E8 00324648 4B EA 40 3D */ bl snprintf /* 803289EC 0032464C 7C 74 1B 78 */ mr r20, r3 /* 803289F0 00324650 3A BE 00 04 */ addi r21, r30, 4 /* 803289F4 00324654 3A E0 00 01 */ li r23, 1 @@ -99970,7 +99970,7 @@ lbl_803289FC: /* 80328A04 00324664 38 80 00 10 */ li r4, 0x10 /* 80328A08 00324668 38 AD 8D E8 */ addi r5, r13, lbl_8063E0A8-_SDA_BASE_ /* 80328A0C 0032466C 4C C6 31 82 */ crclr 6 -/* 80328A10 00324670 4B EA 40 15 */ bl func_801CCA24 +/* 80328A10 00324670 4B EA 40 15 */ bl snprintf /* 80328A14 00324674 7C 76 1B 78 */ mr r22, r3 /* 80328A18 00324678 38 61 02 18 */ addi r3, r1, 0x218 /* 80328A1C 0032467C 7E C5 B3 78 */ mr r5, r22 @@ -99996,7 +99996,7 @@ lbl_80328A40: /* 80328A64 003246C4 38 E0 00 03 */ li r7, 3 /* 80328A68 003246C8 39 0D 8E 00 */ addi r8, r13, lbl_8063E0C0-_SDA_BASE_ /* 80328A6C 003246CC 4C C6 31 82 */ crclr 6 -/* 80328A70 003246D0 4B EA 3F B5 */ bl func_801CCA24 +/* 80328A70 003246D0 4B EA 3F B5 */ bl snprintf /* 80328A74 003246D4 3B 21 00 18 */ addi r25, r1, 0x18 /* 80328A78 003246D8 3A 81 00 19 */ addi r20, r1, 0x19 /* 80328A7C 003246DC 7F 59 19 AE */ stbx r26, r25, r3 diff --git a/include/darray.h b/include/GameSpy/darray.h index 5c7c170..5c7c170 100644 --- a/include/darray.h +++ b/include/GameSpy/darray.h diff --git a/include/hashtable.h b/include/GameSpy/hashtable.h index 784ab35..26e0b6d 100644 --- a/include/hashtable.h +++ b/include/GameSpy/hashtable.h @@ -5,7 +5,7 @@ extern "C" {
#endif
-#include "darray.h"
+#include "GameSpy/darray.h"
typedef s32 (*HashFunction)(void *, s32);
diff --git a/include/nonport.h b/include/GameSpy/nonport.h index c1ed0e7..c1ed0e7 100644 --- a/include/nonport.h +++ b/include/GameSpy/nonport.h diff --git a/include/qsort.h b/include/libstdc++/qsort.h index c13ae0e..c13ae0e 100644 --- a/include/qsort.h +++ b/include/libstdc++/qsort.h diff --git a/obj_files.mk b/obj_files.mk index ebf727b..47fe148 100644 --- a/obj_files.mk +++ b/obj_files.mk @@ -19,7 +19,24 @@ TEXT_O_FILES := \ $(BUILD_DIR)/src/libstdc++/ptmf.o \ $(BUILD_DIR)/asm/libstdc++/runtime.o \ $(BUILD_DIR)/asm/libstdc++/__init_cpp_exceptions.o \ - $(BUILD_DIR)/asm/text_5_2.o \ + $(BUILD_DIR)/asm/libstdc++/Gecko_ExceptionPPC.o \ + $(BUILD_DIR)/asm/libstdc++/ansi_files.o \ + $(BUILD_DIR)/asm/libstdc++/ansi_fp.o \ + $(BUILD_DIR)/asm/libstdc++/arith.o \ + $(BUILD_DIR)/asm/libstdc++/buffer_io.o \ + $(BUILD_DIR)/asm/libstdc++/direct_io.o \ + $(BUILD_DIR)/asm/libstdc++/file_io.o \ + $(BUILD_DIR)/asm/libstdc++/FILE_POS.o \ + $(BUILD_DIR)/asm/libstdc++/mbstring.o \ + $(BUILD_DIR)/asm/libstdc++/mem.o \ + $(BUILD_DIR)/asm/libstdc++/mem_funcs.o \ + $(BUILD_DIR)/asm/libstdc++/math_api.o \ + $(BUILD_DIR)/asm/libstdc++/misc_io.o \ + $(BUILD_DIR)/asm/libstdc++/printf.o \ + $(BUILD_DIR)/asm/libstdc++/qsort.o \ + $(BUILD_DIR)/asm/libstdc++/rand.o \ + $(BUILD_DIR)/asm/libstdc++/scanf.o \ + $(BUILD_DIR)/asm/libstdc++/string.o \ $(BUILD_DIR)/asm/text_6.o \ $(BUILD_DIR)/asm/MetroTRK/mem_TRK.o \ $(BUILD_DIR)/asm/init.o \ @@ -174,6 +191,12 @@ TEXT_O_FILES := \ $(BUILD_DIR)/asm/nw4r/lyt/lyt_window.o \ $(BUILD_DIR)/asm/nw4r/lyt/lyt_bounding.o \ $(BUILD_DIR)/asm/nw4r/lyt/lyt_material.o \ + $(BUILD_DIR)/asm/nw4r/lyt/lyt_texMap.o \ + $(BUILD_DIR)/asm/nw4r/lyt/lyt_drawInfo.o \ + $(BUILD_DIR)/asm/nw4r/lyt/lyt_animation.o \ + $(BUILD_DIR)/asm/nw4r/lyt/lyt_resourceAccessor.o \ + $(BUILD_DIR)/asm/nw4r/lyt/lyt_arcResourceAccessor.o \ + $(BUILD_DIR)/asm/nw4r/lyt/detail/lyt_common.o \ $(BUILD_DIR)/asm/text_11.o CTORS_O_FILES := \ diff --git a/src/GameSpy/darray.c b/src/GameSpy/darray.c index b179f37..7f84cb0 100644 --- a/src/GameSpy/darray.c +++ b/src/GameSpy/darray.c @@ -1,7 +1,7 @@ #include "types.h"
-#include "qsort.h"
-#include "nonport.h"
-#include "darray.h"
+#include "libstdc++/qsort.h"
+#include "GameSpy/nonport.h"
+#include "GameSpy/darray.h"
#pragma auto_inline on
diff --git a/src/GameSpy/hashtable.c b/src/GameSpy/hashtable.c index d170aa7..0e1c09a 100644 --- a/src/GameSpy/hashtable.c +++ b/src/GameSpy/hashtable.c @@ -1,6 +1,6 @@ #include "types.h"
-#include "nonport.h"
-#include "hashtable.h"
+#include "GameSpy/nonport.h"
+#include "GameSpy/hashtable.h"
HashTable *TableNew(u32 p1, s32 p2, HashFunction hf, CompareFunction cmp, DtorFunction dtor)
{
|