summaryrefslogtreecommitdiff
path: root/asm/code_80166D6C.s
diff options
context:
space:
mode:
authorMax <mparisi@stevens.edu>2020-10-15 12:40:00 -0400
committerMax <mparisi@stevens.edu>2020-10-15 12:40:00 -0400
commit2e8cc28cb1295d67beef38ec46b5f56ae5c15aaf (patch)
tree3e499ee3bddebeeb78dc01ad03228e3a7e524f86 /asm/code_80166D6C.s
parentdec85bbe62409ebef073caa70474050768784429 (diff)
split text_3 and most of text_4, with linker errors
Diffstat (limited to 'asm/code_80166D6C.s')
-rw-r--r--asm/code_80166D6C.s405
1 files changed, 405 insertions, 0 deletions
diff --git a/asm/code_80166D6C.s b/asm/code_80166D6C.s
new file mode 100644
index 0000000..feb3c3f
--- /dev/null
+++ b/asm/code_80166D6C.s
@@ -0,0 +1,405 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global func_80166D6C
+func_80166D6C:
+/* 80166D6C 001629CC 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80166D70 001629D0 7C 08 02 A6 */ mflr r0
+/* 80166D74 001629D4 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80166D78 001629D8 39 61 00 20 */ addi r11, r1, 0x20
+/* 80166D7C 001629DC 48 06 03 A9 */ bl _savegpr_26
+/* 80166D80 001629E0 7C 7A 1B 78 */ mr r26, r3
+/* 80166D84 001629E4 7C 9B 23 78 */ mr r27, r4
+/* 80166D88 001629E8 7C BC 2B 78 */ mr r28, r5
+/* 80166D8C 001629EC 7C DD 33 78 */ mr r29, r6
+/* 80166D90 001629F0 7C FE 3B 78 */ mr r30, r7
+/* 80166D94 001629F4 7D 1F 43 78 */ mr r31, r8
+/* 80166D98 001629F8 48 0F 72 39 */ bl func_8025DFD0
+/* 80166D9C 001629FC 48 0F 75 81 */ bl func_8025E31C
+/* 80166DA0 00162A00 7F 44 D3 78 */ mr r4, r26
+/* 80166DA4 00162A04 7F 65 DB 78 */ mr r5, r27
+/* 80166DA8 00162A08 7F 86 E3 78 */ mr r6, r28
+/* 80166DAC 00162A0C 7F A7 EB 78 */ mr r7, r29
+/* 80166DB0 00162A10 7F C8 F3 78 */ mr r8, r30
+/* 80166DB4 00162A14 7F E9 FB 78 */ mr r9, r31
+/* 80166DB8 00162A18 48 10 0F 31 */ bl func_80267CE8
+/* 80166DBC 00162A1C 39 61 00 20 */ addi r11, r1, 0x20
+/* 80166DC0 00162A20 48 06 03 B1 */ bl _restgpr_26
+/* 80166DC4 00162A24 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80166DC8 00162A28 7C 08 03 A6 */ mtlr r0
+/* 80166DCC 00162A2C 38 21 00 20 */ addi r1, r1, 0x20
+/* 80166DD0 00162A30 4E 80 00 20 */ blr
+
+.global func_80166DD4
+func_80166DD4:
+/* 80166DD4 00162A34 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 80166DD8 00162A38 7C 08 02 A6 */ mflr r0
+/* 80166DDC 00162A3C 90 01 00 24 */ stw r0, 0x24(r1)
+/* 80166DE0 00162A40 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 80166DE4 00162A44 7C 7F 1B 78 */ mr r31, r3
+/* 80166DE8 00162A48 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 80166DEC 00162A4C 7C BE 2B 78 */ mr r30, r5
+/* 80166DF0 00162A50 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 80166DF4 00162A54 7C 9D 23 78 */ mr r29, r4
+/* 80166DF8 00162A58 48 0F 71 D9 */ bl func_8025DFD0
+/* 80166DFC 00162A5C 48 0F 75 21 */ bl func_8025E31C
+/* 80166E00 00162A60 7F A6 EB 78 */ mr r6, r29
+/* 80166E04 00162A64 7F E5 FB 78 */ mr r5, r31
+/* 80166E08 00162A68 48 10 0C 45 */ bl func_80267A4C
+/* 80166E0C 00162A6C 2C 03 00 00 */ cmpwi r3, 0
+/* 80166E10 00162A70 7C 7F 1B 78 */ mr r31, r3
+/* 80166E14 00162A74 40 80 00 08 */ bge lbl_80166E1C
+/* 80166E18 00162A78 48 00 00 1C */ b lbl_80166E34
+lbl_80166E1C:
+/* 80166E1C 00162A7C 48 0F 71 B5 */ bl func_8025DFD0
+/* 80166E20 00162A80 48 0F 74 FD */ bl func_8025E31C
+/* 80166E24 00162A84 7F E4 FB 78 */ mr r4, r31
+/* 80166E28 00162A88 7F C5 F3 78 */ mr r5, r30
+/* 80166E2C 00162A8C 48 10 12 C9 */ bl func_802680F4
+/* 80166E30 00162A90 7F E3 FB 78 */ mr r3, r31
+lbl_80166E34:
+/* 80166E34 00162A94 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80166E38 00162A98 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80166E3C 00162A9C 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 80166E40 00162AA0 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 80166E44 00162AA4 7C 08 03 A6 */ mtlr r0
+/* 80166E48 00162AA8 38 21 00 20 */ addi r1, r1, 0x20
+/* 80166E4C 00162AAC 4E 80 00 20 */ blr
+
+.global func_80166E50
+func_80166E50:
+/* 80166E50 00162AB0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80166E54 00162AB4 7C 08 02 A6 */ mflr r0
+/* 80166E58 00162AB8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80166E5C 00162ABC 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80166E60 00162AC0 7C 7F 1B 78 */ mr r31, r3
+/* 80166E64 00162AC4 48 0F 71 6D */ bl func_8025DFD0
+/* 80166E68 00162AC8 48 0F 74 B5 */ bl func_8025E31C
+/* 80166E6C 00162ACC 7F E4 FB 78 */ mr r4, r31
+/* 80166E70 00162AD0 48 10 0D 6D */ bl func_80267BDC
+/* 80166E74 00162AD4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80166E78 00162AD8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80166E7C 00162ADC 7C 08 03 A6 */ mtlr r0
+/* 80166E80 00162AE0 38 21 00 10 */ addi r1, r1, 0x10
+/* 80166E84 00162AE4 4E 80 00 20 */ blr
+
+.global func_80166E88
+func_80166E88:
+/* 80166E88 00162AE8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80166E8C 00162AEC 7C 08 02 A6 */ mflr r0
+/* 80166E90 00162AF0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80166E94 00162AF4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80166E98 00162AF8 7C 9F 23 78 */ mr r31, r4
+/* 80166E9C 00162AFC 93 C1 00 08 */ stw r30, 8(r1)
+/* 80166EA0 00162B00 7C 7E 1B 78 */ mr r30, r3
+/* 80166EA4 00162B04 48 0F 71 2D */ bl func_8025DFD0
+/* 80166EA8 00162B08 48 0F 74 75 */ bl func_8025E31C
+/* 80166EAC 00162B0C 7F C4 F3 78 */ mr r4, r30
+/* 80166EB0 00162B10 7F E5 FB 78 */ mr r5, r31
+/* 80166EB4 00162B14 48 10 12 A5 */ bl func_80268158
+/* 80166EB8 00162B18 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80166EBC 00162B1C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80166EC0 00162B20 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80166EC4 00162B24 7C 08 03 A6 */ mtlr r0
+/* 80166EC8 00162B28 38 21 00 10 */ addi r1, r1, 0x10
+/* 80166ECC 00162B2C 4E 80 00 20 */ blr
+
+.global func_80166ED0
+func_80166ED0:
+/* 80166ED0 00162B30 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80166ED4 00162B34 7C 08 02 A6 */ mflr r0
+/* 80166ED8 00162B38 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80166EDC 00162B3C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80166EE0 00162B40 7C 7F 1B 78 */ mr r31, r3
+/* 80166EE4 00162B44 48 0F 70 ED */ bl func_8025DFD0
+/* 80166EE8 00162B48 48 0F 74 35 */ bl func_8025E31C
+/* 80166EEC 00162B4C 7F E4 FB 78 */ mr r4, r31
+/* 80166EF0 00162B50 48 10 10 7D */ bl func_80267F6C
+/* 80166EF4 00162B54 2C 03 00 00 */ cmpwi r3, 0
+/* 80166EF8 00162B58 41 82 00 0C */ beq lbl_80166F04
+/* 80166EFC 00162B5C 80 63 00 38 */ lwz r3, 0x38(r3)
+/* 80166F00 00162B60 48 00 00 08 */ b lbl_80166F08
+lbl_80166F04:
+/* 80166F04 00162B64 38 60 00 00 */ li r3, 0
+lbl_80166F08:
+/* 80166F08 00162B68 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80166F0C 00162B6C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80166F10 00162B70 7C 08 03 A6 */ mtlr r0
+/* 80166F14 00162B74 38 21 00 10 */ addi r1, r1, 0x10
+/* 80166F18 00162B78 4E 80 00 20 */ blr
+
+.global func_80166F1C
+func_80166F1C:
+/* 80166F1C 00162B7C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80166F20 00162B80 7C 08 02 A6 */ mflr r0
+/* 80166F24 00162B84 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80166F28 00162B88 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80166F2C 00162B8C 7C 9F 23 78 */ mr r31, r4
+/* 80166F30 00162B90 93 C1 00 08 */ stw r30, 8(r1)
+/* 80166F34 00162B94 7C 7E 1B 78 */ mr r30, r3
+/* 80166F38 00162B98 48 0F 70 99 */ bl func_8025DFD0
+/* 80166F3C 00162B9C 48 0F 73 E1 */ bl func_8025E31C
+/* 80166F40 00162BA0 7F C4 F3 78 */ mr r4, r30
+/* 80166F44 00162BA4 7F E5 FB 78 */ mr r5, r31
+/* 80166F48 00162BA8 48 10 12 69 */ bl func_802681B0
+/* 80166F4C 00162BAC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80166F50 00162BB0 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80166F54 00162BB4 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80166F58 00162BB8 7C 08 03 A6 */ mtlr r0
+/* 80166F5C 00162BBC 38 21 00 10 */ addi r1, r1, 0x10
+/* 80166F60 00162BC0 4E 80 00 20 */ blr
+
+.global func_80166F64
+func_80166F64:
+/* 80166F64 00162BC4 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80166F68 00162BC8 7C 08 02 A6 */ mflr r0
+/* 80166F6C 00162BCC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80166F70 00162BD0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80166F74 00162BD4 7C 7F 1B 78 */ mr r31, r3
+/* 80166F78 00162BD8 48 0F 70 59 */ bl func_8025DFD0
+/* 80166F7C 00162BDC 48 0F 73 A1 */ bl func_8025E31C
+/* 80166F80 00162BE0 7F E4 FB 78 */ mr r4, r31
+/* 80166F84 00162BE4 48 10 0F E9 */ bl func_80267F6C
+/* 80166F88 00162BE8 2C 03 00 00 */ cmpwi r3, 0
+/* 80166F8C 00162BEC 41 82 00 0C */ beq lbl_80166F98
+/* 80166F90 00162BF0 80 63 00 3C */ lwz r3, 0x3c(r3)
+/* 80166F94 00162BF4 48 00 00 08 */ b lbl_80166F9C
+lbl_80166F98:
+/* 80166F98 00162BF8 38 60 00 00 */ li r3, 0
+lbl_80166F9C:
+/* 80166F9C 00162BFC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80166FA0 00162C00 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80166FA4 00162C04 7C 08 03 A6 */ mtlr r0
+/* 80166FA8 00162C08 38 21 00 10 */ addi r1, r1, 0x10
+/* 80166FAC 00162C0C 4E 80 00 20 */ blr
+
+.global func_80166FB0
+func_80166FB0:
+/* 80166FB0 00162C10 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80166FB4 00162C14 7C 08 02 A6 */ mflr r0
+/* 80166FB8 00162C18 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80166FBC 00162C1C 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80166FC0 00162C20 7C 7F 1B 78 */ mr r31, r3
+/* 80166FC4 00162C24 48 0F 70 0D */ bl func_8025DFD0
+/* 80166FC8 00162C28 48 0F 73 55 */ bl func_8025E31C
+/* 80166FCC 00162C2C 7F E4 FB 78 */ mr r4, r31
+/* 80166FD0 00162C30 48 10 0F 9D */ bl func_80267F6C
+/* 80166FD4 00162C34 7C 03 00 D0 */ neg r0, r3
+/* 80166FD8 00162C38 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80166FDC 00162C3C 7C 00 1B 78 */ or r0, r0, r3
+/* 80166FE0 00162C40 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 80166FE4 00162C44 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80166FE8 00162C48 7C 08 03 A6 */ mtlr r0
+/* 80166FEC 00162C4C 38 21 00 10 */ addi r1, r1, 0x10
+/* 80166FF0 00162C50 4E 80 00 20 */ blr
+
+.global func_80166FF4
+func_80166FF4:
+/* 80166FF4 00162C54 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80166FF8 00162C58 7C 08 02 A6 */ mflr r0
+/* 80166FFC 00162C5C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80167000 00162C60 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80167004 00162C64 7C 7F 1B 78 */ mr r31, r3
+/* 80167008 00162C68 48 0F 6F C9 */ bl func_8025DFD0
+/* 8016700C 00162C6C 48 0F 73 11 */ bl func_8025E31C
+/* 80167010 00162C70 7F E4 FB 78 */ mr r4, r31
+/* 80167014 00162C74 48 10 0F 59 */ bl func_80267F6C
+/* 80167018 00162C78 2C 03 00 00 */ cmpwi r3, 0
+/* 8016701C 00162C7C 7C 64 1B 78 */ mr r4, r3
+/* 80167020 00162C80 41 82 00 10 */ beq lbl_80167030
+/* 80167024 00162C84 80 63 00 08 */ lwz r3, 8(r3)
+/* 80167028 00162C88 80 84 00 0C */ lwz r4, 0xc(r4)
+/* 8016702C 00162C8C 48 00 00 0C */ b lbl_80167038
+lbl_80167030:
+/* 80167030 00162C90 38 80 00 00 */ li r4, 0
+/* 80167034 00162C94 38 60 00 00 */ li r3, 0
+lbl_80167038:
+/* 80167038 00162C98 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8016703C 00162C9C 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80167040 00162CA0 7C 08 03 A6 */ mtlr r0
+/* 80167044 00162CA4 38 21 00 10 */ addi r1, r1, 0x10
+/* 80167048 00162CA8 4E 80 00 20 */ blr
+
+.global func_8016704C
+func_8016704C:
+/* 8016704C 00162CAC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80167050 00162CB0 7C 08 02 A6 */ mflr r0
+/* 80167054 00162CB4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80167058 00162CB8 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8016705C 00162CBC 7C 7F 1B 78 */ mr r31, r3
+/* 80167060 00162CC0 48 0F 6F 71 */ bl func_8025DFD0
+/* 80167064 00162CC4 48 0F 72 B9 */ bl func_8025E31C
+/* 80167068 00162CC8 7F E4 FB 78 */ mr r4, r31
+/* 8016706C 00162CCC 48 10 0F 01 */ bl func_80267F6C
+/* 80167070 00162CD0 2C 03 00 00 */ cmpwi r3, 0
+/* 80167074 00162CD4 41 82 00 0C */ beq lbl_80167080
+/* 80167078 00162CD8 38 63 00 10 */ addi r3, r3, 0x10
+/* 8016707C 00162CDC 48 00 00 08 */ b lbl_80167084
+lbl_80167080:
+/* 80167080 00162CE0 38 6D 83 50 */ addi r3, r13, lbl_8063D610-_SDA_BASE_
+lbl_80167084:
+/* 80167084 00162CE4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80167088 00162CE8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8016708C 00162CEC 7C 08 03 A6 */ mtlr r0
+/* 80167090 00162CF0 38 21 00 10 */ addi r1, r1, 0x10
+/* 80167094 00162CF4 4E 80 00 20 */ blr
+
+.global func_80167098
+func_80167098:
+/* 80167098 00162CF8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8016709C 00162CFC 7C 08 02 A6 */ mflr r0
+/* 801670A0 00162D00 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801670A4 00162D04 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801670A8 00162D08 7C 7F 1B 78 */ mr r31, r3
+/* 801670AC 00162D0C 48 0F 6F 25 */ bl func_8025DFD0
+/* 801670B0 00162D10 48 0F 72 6D */ bl func_8025E31C
+/* 801670B4 00162D14 7F E4 FB 78 */ mr r4, r31
+/* 801670B8 00162D18 48 10 0E B5 */ bl func_80267F6C
+/* 801670BC 00162D1C 2C 03 00 00 */ cmpwi r3, 0
+/* 801670C0 00162D20 41 82 00 0C */ beq lbl_801670CC
+/* 801670C4 00162D24 80 63 00 30 */ lwz r3, 0x30(r3)
+/* 801670C8 00162D28 48 00 00 08 */ b lbl_801670D0
+lbl_801670CC:
+/* 801670CC 00162D2C 38 60 00 00 */ li r3, 0
+lbl_801670D0:
+/* 801670D0 00162D30 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801670D4 00162D34 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801670D8 00162D38 7C 08 03 A6 */ mtlr r0
+/* 801670DC 00162D3C 38 21 00 10 */ addi r1, r1, 0x10
+/* 801670E0 00162D40 4E 80 00 20 */ blr
+
+.global func_801670E4
+func_801670E4:
+/* 801670E4 00162D44 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801670E8 00162D48 7C 08 02 A6 */ mflr r0
+/* 801670EC 00162D4C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801670F0 00162D50 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801670F4 00162D54 7C 7F 1B 78 */ mr r31, r3
+/* 801670F8 00162D58 93 C1 00 08 */ stw r30, 8(r1)
+/* 801670FC 00162D5C 48 0F 6E D5 */ bl func_8025DFD0
+/* 80167100 00162D60 48 0F 72 1D */ bl func_8025E31C
+/* 80167104 00162D64 7F E4 FB 78 */ mr r4, r31
+/* 80167108 00162D68 48 10 04 0D */ bl func_80267514
+/* 8016710C 00162D6C 2C 03 00 00 */ cmpwi r3, 0
+/* 80167110 00162D70 7C 7E 1B 78 */ mr r30, r3
+/* 80167114 00162D74 40 82 00 0C */ bne lbl_80167120
+/* 80167118 00162D78 38 60 00 00 */ li r3, 0
+/* 8016711C 00162D7C 48 00 00 F8 */ b lbl_80167214
+lbl_80167120:
+/* 80167120 00162D80 48 0F 6E B1 */ bl func_8025DFD0
+/* 80167124 00162D84 48 0F 71 F9 */ bl func_8025E31C
+/* 80167128 00162D88 7F E4 FB 78 */ mr r4, r31
+/* 8016712C 00162D8C 48 10 03 F9 */ bl func_80267524
+/* 80167130 00162D90 2C 03 00 00 */ cmpwi r3, 0
+/* 80167134 00162D94 7C 7F 1B 78 */ mr r31, r3
+/* 80167138 00162D98 40 82 00 0C */ bne lbl_80167144
+/* 8016713C 00162D9C 38 60 00 00 */ li r3, 0
+/* 80167140 00162DA0 48 00 00 D4 */ b lbl_80167214
+lbl_80167144:
+/* 80167144 00162DA4 48 0F 6E 8D */ bl func_8025DFD0
+/* 80167148 00162DA8 48 0F 71 DD */ bl func_8025E324
+/* 8016714C 00162DAC 88 1F 00 00 */ lbz r0, 0(r31)
+/* 80167150 00162DB0 2C 00 00 02 */ cmpwi r0, 2
+/* 80167154 00162DB4 41 82 00 60 */ beq lbl_801671B4
+/* 80167158 00162DB8 40 80 00 14 */ bge lbl_8016716C
+/* 8016715C 00162DBC 2C 00 00 00 */ cmpwi r0, 0
+/* 80167160 00162DC0 41 82 00 24 */ beq lbl_80167184
+/* 80167164 00162DC4 40 80 00 40 */ bge lbl_801671A4
+/* 80167168 00162DC8 48 00 00 1C */ b lbl_80167184
+lbl_8016716C:
+/* 8016716C 00162DCC 2C 00 00 06 */ cmpwi r0, 6
+/* 80167170 00162DD0 41 82 00 74 */ beq lbl_801671E4
+/* 80167174 00162DD4 40 80 00 10 */ bge lbl_80167184
+/* 80167178 00162DD8 2C 00 00 05 */ cmpwi r0, 5
+/* 8016717C 00162DDC 40 80 00 60 */ bge lbl_801671DC
+/* 80167180 00162DE0 48 00 00 2C */ b lbl_801671AC
+lbl_80167184:
+/* 80167184 00162DE4 80 1F 00 04 */ lwz r0, 4(r31)
+/* 80167188 00162DE8 2C 00 00 00 */ cmpwi r0, 0
+/* 8016718C 00162DEC 41 82 00 10 */ beq lbl_8016719C
+/* 80167190 00162DF0 7C 00 18 50 */ subf r0, r0, r3
+/* 80167194 00162DF4 28 00 00 C8 */ cmplwi r0, 0xc8
+/* 80167198 00162DF8 41 80 00 0C */ blt lbl_801671A4
+lbl_8016719C:
+/* 8016719C 00162DFC 38 60 00 00 */ li r3, 0
+/* 801671A0 00162E00 48 00 00 74 */ b lbl_80167214
+lbl_801671A4:
+/* 801671A4 00162E04 38 60 00 01 */ li r3, 1
+/* 801671A8 00162E08 48 00 00 6C */ b lbl_80167214
+lbl_801671AC:
+/* 801671AC 00162E0C 38 60 00 02 */ li r3, 2
+/* 801671B0 00162E10 48 00 00 64 */ b lbl_80167214
+lbl_801671B4:
+/* 801671B4 00162E14 80 1E 00 08 */ lwz r0, 8(r30)
+/* 801671B8 00162E18 2C 00 00 06 */ cmpwi r0, 6
+/* 801671BC 00162E1C 40 80 00 18 */ bge lbl_801671D4
+/* 801671C0 00162E20 2C 00 00 04 */ cmpwi r0, 4
+/* 801671C4 00162E24 40 80 00 08 */ bge lbl_801671CC
+/* 801671C8 00162E28 48 00 00 0C */ b lbl_801671D4
+lbl_801671CC:
+/* 801671CC 00162E2C 38 60 00 05 */ li r3, 5
+/* 801671D0 00162E30 48 00 00 44 */ b lbl_80167214
+lbl_801671D4:
+/* 801671D4 00162E34 38 60 00 03 */ li r3, 3
+/* 801671D8 00162E38 48 00 00 3C */ b lbl_80167214
+lbl_801671DC:
+/* 801671DC 00162E3C 38 60 00 05 */ li r3, 5
+/* 801671E0 00162E40 48 00 00 34 */ b lbl_80167214
+lbl_801671E4:
+/* 801671E4 00162E44 88 1F 00 02 */ lbz r0, 2(r31)
+/* 801671E8 00162E48 28 00 00 01 */ cmplwi r0, 1
+/* 801671EC 00162E4C 41 81 00 24 */ bgt lbl_80167210
+/* 801671F0 00162E50 80 1F 00 04 */ lwz r0, 4(r31)
+/* 801671F4 00162E54 38 80 00 04 */ li r4, 4
+/* 801671F8 00162E58 7C 00 18 50 */ subf r0, r0, r3
+/* 801671FC 00162E5C 28 00 00 0A */ cmplwi r0, 0xa
+/* 80167200 00162E60 40 80 00 08 */ bge lbl_80167208
+/* 80167204 00162E64 38 80 00 01 */ li r4, 1
+lbl_80167208:
+/* 80167208 00162E68 7C 83 23 78 */ mr r3, r4
+/* 8016720C 00162E6C 48 00 00 08 */ b lbl_80167214
+lbl_80167210:
+/* 80167210 00162E70 38 60 00 05 */ li r3, 5
+lbl_80167214:
+/* 80167214 00162E74 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80167218 00162E78 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8016721C 00162E7C 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80167220 00162E80 7C 08 03 A6 */ mtlr r0
+/* 80167224 00162E84 38 21 00 10 */ addi r1, r1, 0x10
+/* 80167228 00162E88 4E 80 00 20 */ blr
+
+.global func_8016722C
+func_8016722C:
+/* 8016722C 00162E8C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80167230 00162E90 7C 08 02 A6 */ mflr r0
+/* 80167234 00162E94 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80167238 00162E98 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 8016723C 00162E9C 7C 7F 1B 78 */ mr r31, r3
+/* 80167240 00162EA0 48 0F 6D 91 */ bl func_8025DFD0
+/* 80167244 00162EA4 48 0F 70 D9 */ bl func_8025E31C
+/* 80167248 00162EA8 7F E4 FB 78 */ mr r4, r31
+/* 8016724C 00162EAC 48 10 02 C9 */ bl func_80267514
+/* 80167250 00162EB0 2C 03 00 00 */ cmpwi r3, 0
+/* 80167254 00162EB4 41 82 00 0C */ beq lbl_80167260
+/* 80167258 00162EB8 38 63 00 38 */ addi r3, r3, 0x38
+/* 8016725C 00162EBC 48 00 00 08 */ b lbl_80167264
+lbl_80167260:
+/* 80167260 00162EC0 38 60 00 00 */ li r3, 0
+lbl_80167264:
+/* 80167264 00162EC4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80167268 00162EC8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 8016726C 00162ECC 7C 08 03 A6 */ mtlr r0
+/* 80167270 00162ED0 38 21 00 10 */ addi r1, r1, 0x10
+/* 80167274 00162ED4 4E 80 00 20 */ blr
+
+.global func_80167278
+func_80167278:
+/* 80167278 00162ED8 38 A0 00 01 */ li r5, 1
+/* 8016727C 00162EDC 38 6D 9E 08 */ addi r3, r13, lbl_8063F0C8-_SDA_BASE_
+/* 80167280 00162EE0 38 80 00 04 */ li r4, 4
+/* 80167284 00162EE4 38 00 00 00 */ li r0, 0
+/* 80167288 00162EE8 98 AD 9E 08 */ stb r5, lbl_8063F0C8-_SDA_BASE_(r13)
+/* 8016728C 00162EEC B0 83 00 02 */ sth r4, 2(r3)
+/* 80167290 00162EF0 98 03 00 04 */ stb r0, 4(r3)
+/* 80167294 00162EF4 4E 80 00 20 */ blr