diff options
Diffstat (limited to 'asm/code_80164FA0.s')
-rw-r--r-- | asm/code_80164FA0.s | 450 |
1 files changed, 450 insertions, 0 deletions
diff --git a/asm/code_80164FA0.s b/asm/code_80164FA0.s new file mode 100644 index 0000000..2e98ffc --- /dev/null +++ b/asm/code_80164FA0.s @@ -0,0 +1,450 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global func_80164FA0
+func_80164FA0:
+/* 80164FA0 00160C00 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80164FA4 00160C04 7C 08 02 A6 */ mflr r0
+/* 80164FA8 00160C08 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80164FAC 00160C0C 4B FF DB C5 */ bl func_80162B70
+/* 80164FB0 00160C10 2C 03 00 07 */ cmpwi r3, 7
+/* 80164FB4 00160C14 41 82 00 1C */ beq lbl_80164FD0
+/* 80164FB8 00160C18 40 80 00 20 */ bge lbl_80164FD8
+/* 80164FBC 00160C1C 2C 03 00 05 */ cmpwi r3, 5
+/* 80164FC0 00160C20 40 80 00 08 */ bge lbl_80164FC8
+/* 80164FC4 00160C24 48 00 00 14 */ b lbl_80164FD8
+lbl_80164FC8:
+/* 80164FC8 00160C28 38 60 00 01 */ li r3, 1
+/* 80164FCC 00160C2C 48 00 00 10 */ b lbl_80164FDC
+lbl_80164FD0:
+/* 80164FD0 00160C30 38 60 00 00 */ li r3, 0
+/* 80164FD4 00160C34 48 00 00 08 */ b lbl_80164FDC
+lbl_80164FD8:
+/* 80164FD8 00160C38 38 60 00 00 */ li r3, 0
+lbl_80164FDC:
+/* 80164FDC 00160C3C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80164FE0 00160C40 7C 08 03 A6 */ mtlr r0
+/* 80164FE4 00160C44 38 21 00 10 */ addi r1, r1, 0x10
+/* 80164FE8 00160C48 4E 80 00 20 */ blr
+
+.global func_80164FEC
+func_80164FEC:
+/* 80164FEC 00160C4C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80164FF0 00160C50 7C 08 02 A6 */ mflr r0
+/* 80164FF4 00160C54 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80164FF8 00160C58 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80164FFC 00160C5C 7C 9F 23 78 */ mr r31, r4
+/* 80165000 00160C60 93 C1 00 08 */ stw r30, 8(r1)
+/* 80165004 00160C64 7C 7E 1B 78 */ mr r30, r3
+/* 80165008 00160C68 48 0F 8F C9 */ bl func_8025DFD0
+/* 8016500C 00160C6C 48 0F 93 11 */ bl func_8025E31C
+/* 80165010 00160C70 81 83 00 00 */ lwz r12, 0(r3)
+/* 80165014 00160C74 81 8C 00 20 */ lwz r12, 0x20(r12)
+/* 80165018 00160C78 7D 89 03 A6 */ mtctr r12
+/* 8016501C 00160C7C 4E 80 04 21 */ bctrl
+/* 80165020 00160C80 2C 03 00 00 */ cmpwi r3, 0
+/* 80165024 00160C84 41 82 00 1C */ beq lbl_80165040
+/* 80165028 00160C88 48 0F 8F A9 */ bl func_8025DFD0
+/* 8016502C 00160C8C 48 0F 92 F1 */ bl func_8025E31C
+/* 80165030 00160C90 7F C4 F3 78 */ mr r4, r30
+/* 80165034 00160C94 7F E5 FB 78 */ mr r5, r31
+/* 80165038 00160C98 48 10 0D F5 */ bl func_80265E2C
+/* 8016503C 00160C9C 48 00 00 1C */ b lbl_80165058
+lbl_80165040:
+/* 80165040 00160CA0 48 0F 8F 91 */ bl func_8025DFD0
+/* 80165044 00160CA4 48 0F 92 D9 */ bl func_8025E31C
+/* 80165048 00160CA8 7F C4 F3 78 */ mr r4, r30
+/* 8016504C 00160CAC 7F E5 FB 78 */ mr r5, r31
+/* 80165050 00160CB0 48 0F 98 1D */ bl func_8025E86C
+/* 80165054 00160CB4 38 60 00 00 */ li r3, 0
+lbl_80165058:
+/* 80165058 00160CB8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8016505C 00160CBC 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80165060 00160CC0 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80165064 00160CC4 7C 08 03 A6 */ mtlr r0
+/* 80165068 00160CC8 38 21 00 10 */ addi r1, r1, 0x10
+/* 8016506C 00160CCC 4E 80 00 20 */ blr
+
+.global func_80165070
+func_80165070:
+/* 80165070 00160CD0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80165074 00160CD4 7C 08 02 A6 */ mflr r0
+/* 80165078 00160CD8 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8016507C 00160CDC 4B FF FF 25 */ bl func_80164FA0
+/* 80165080 00160CE0 2C 03 00 00 */ cmpwi r3, 0
+/* 80165084 00160CE4 41 82 00 14 */ beq lbl_80165098
+/* 80165088 00160CE8 48 0F 8F 49 */ bl func_8025DFD0
+/* 8016508C 00160CEC 48 0F 92 91 */ bl func_8025E31C
+/* 80165090 00160CF0 48 0F F4 61 */ bl func_802644F0
+/* 80165094 00160CF4 48 00 00 08 */ b lbl_8016509C
+lbl_80165098:
+/* 80165098 00160CF8 38 60 00 00 */ li r3, 0
+lbl_8016509C:
+/* 8016509C 00160CFC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801650A0 00160D00 7C 08 03 A6 */ mtlr r0
+/* 801650A4 00160D04 38 21 00 10 */ addi r1, r1, 0x10
+/* 801650A8 00160D08 4E 80 00 20 */ blr
+
+.global func_801650AC
+func_801650AC:
+/* 801650AC 00160D0C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801650B0 00160D10 7C 08 02 A6 */ mflr r0
+/* 801650B4 00160D14 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801650B8 00160D18 4B FF FE E9 */ bl func_80164FA0
+/* 801650BC 00160D1C 2C 03 00 00 */ cmpwi r3, 0
+/* 801650C0 00160D20 40 82 00 0C */ bne lbl_801650CC
+/* 801650C4 00160D24 38 60 00 00 */ li r3, 0
+/* 801650C8 00160D28 48 00 00 38 */ b lbl_80165100
+lbl_801650CC:
+/* 801650CC 00160D2C 48 0F 8F 05 */ bl func_8025DFD0
+/* 801650D0 00160D30 48 0F 92 4D */ bl func_8025E31C
+/* 801650D4 00160D34 48 0F F4 1D */ bl func_802644F0
+/* 801650D8 00160D38 2C 03 00 00 */ cmpwi r3, 0
+/* 801650DC 00160D3C 41 82 00 0C */ beq lbl_801650E8
+/* 801650E0 00160D40 38 60 00 01 */ li r3, 1
+/* 801650E4 00160D44 48 00 00 1C */ b lbl_80165100
+lbl_801650E8:
+/* 801650E8 00160D48 48 0F 8E E9 */ bl func_8025DFD0
+/* 801650EC 00160D4C 48 0F 92 31 */ bl func_8025E31C
+/* 801650F0 00160D50 81 83 00 00 */ lwz r12, 0(r3)
+/* 801650F4 00160D54 81 8C 00 20 */ lwz r12, 0x20(r12)
+/* 801650F8 00160D58 7D 89 03 A6 */ mtctr r12
+/* 801650FC 00160D5C 4E 80 04 21 */ bctrl
+lbl_80165100:
+/* 80165100 00160D60 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80165104 00160D64 7C 08 03 A6 */ mtlr r0
+/* 80165108 00160D68 38 21 00 10 */ addi r1, r1, 0x10
+/* 8016510C 00160D6C 4E 80 00 20 */ blr
+
+.global func_80165110
+func_80165110:
+/* 80165110 00160D70 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80165114 00160D74 7C 08 02 A6 */ mflr r0
+/* 80165118 00160D78 90 01 00 14 */ stw r0, 0x14(r1)
+/* 8016511C 00160D7C 48 0F 8E B5 */ bl func_8025DFD0
+/* 80165120 00160D80 48 0F 91 FD */ bl func_8025E31C
+/* 80165124 00160D84 48 0F F7 D9 */ bl func_802648FC
+/* 80165128 00160D88 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8016512C 00160D8C 7C 08 03 A6 */ mtlr r0
+/* 80165130 00160D90 38 21 00 10 */ addi r1, r1, 0x10
+/* 80165134 00160D94 4E 80 00 20 */ blr
+
+.global func_80165138
+func_80165138:
+/* 80165138 00160D98 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8016513C 00160D9C 7C 08 02 A6 */ mflr r0
+/* 80165140 00160DA0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80165144 00160DA4 48 0F 8E 8D */ bl func_8025DFD0
+/* 80165148 00160DA8 48 0F 91 D5 */ bl func_8025E31C
+/* 8016514C 00160DAC 48 0F F4 A1 */ bl func_802645EC
+/* 80165150 00160DB0 7C 03 00 D0 */ neg r0, r3
+/* 80165154 00160DB4 7C 00 1B 78 */ or r0, r0, r3
+/* 80165158 00160DB8 54 03 0F FE */ srwi r3, r0, 0x1f
+/* 8016515C 00160DBC 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80165160 00160DC0 7C 08 03 A6 */ mtlr r0
+/* 80165164 00160DC4 38 21 00 10 */ addi r1, r1, 0x10
+/* 80165168 00160DC8 4E 80 00 20 */ blr
+
+.global func_8016516C
+func_8016516C:
+/* 8016516C 00160DCC 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80165170 00160DD0 7C 08 02 A6 */ mflr r0
+/* 80165174 00160DD4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80165178 00160DD8 48 0F 8E 59 */ bl func_8025DFD0
+/* 8016517C 00160DDC 48 0F 91 A1 */ bl func_8025E31C
+/* 80165180 00160DE0 81 83 00 00 */ lwz r12, 0(r3)
+/* 80165184 00160DE4 81 8C 00 48 */ lwz r12, 0x48(r12)
+/* 80165188 00160DE8 7D 89 03 A6 */ mtctr r12
+/* 8016518C 00160DEC 4E 80 04 21 */ bctrl
+/* 80165190 00160DF0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80165194 00160DF4 7C 08 03 A6 */ mtlr r0
+/* 80165198 00160DF8 38 21 00 10 */ addi r1, r1, 0x10
+/* 8016519C 00160DFC 4E 80 00 20 */ blr
+
+.global func_801651A0
+func_801651A0:
+/* 801651A0 00160E00 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801651A4 00160E04 7C 08 02 A6 */ mflr r0
+/* 801651A8 00160E08 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801651AC 00160E0C 48 0F 8E 25 */ bl func_8025DFD0
+/* 801651B0 00160E10 48 0F 91 6D */ bl func_8025E31C
+/* 801651B4 00160E14 81 83 00 00 */ lwz r12, 0(r3)
+/* 801651B8 00160E18 81 8C 00 44 */ lwz r12, 0x44(r12)
+/* 801651BC 00160E1C 7D 89 03 A6 */ mtctr r12
+/* 801651C0 00160E20 4E 80 04 21 */ bctrl
+/* 801651C4 00160E24 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801651C8 00160E28 7C 08 03 A6 */ mtlr r0
+/* 801651CC 00160E2C 38 21 00 10 */ addi r1, r1, 0x10
+/* 801651D0 00160E30 4E 80 00 20 */ blr
+
+.global func_801651D4
+func_801651D4:
+/* 801651D4 00160E34 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801651D8 00160E38 7C 08 02 A6 */ mflr r0
+/* 801651DC 00160E3C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801651E0 00160E40 48 0F 8D F1 */ bl func_8025DFD0
+/* 801651E4 00160E44 48 0F 91 39 */ bl func_8025E31C
+/* 801651E8 00160E48 48 10 1D 95 */ bl func_80266F7C
+/* 801651EC 00160E4C 2C 03 00 00 */ cmpwi r3, 0
+/* 801651F0 00160E50 40 81 00 14 */ ble lbl_80165204
+/* 801651F4 00160E54 48 0F 8D DD */ bl func_8025DFD0
+/* 801651F8 00160E58 48 0F 91 25 */ bl func_8025E31C
+/* 801651FC 00160E5C 48 10 1D 81 */ bl func_80266F7C
+/* 80165200 00160E60 48 00 00 14 */ b lbl_80165214
+lbl_80165204:
+/* 80165204 00160E64 48 0F 8D CD */ bl func_8025DFD0
+/* 80165208 00160E68 48 0F 91 15 */ bl func_8025E31C
+/* 8016520C 00160E6C 48 10 1D 71 */ bl func_80266F7C
+/* 80165210 00160E70 7C 63 00 D0 */ neg r3, r3
+lbl_80165214:
+/* 80165214 00160E74 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80165218 00160E78 7C 08 03 A6 */ mtlr r0
+/* 8016521C 00160E7C 38 21 00 10 */ addi r1, r1, 0x10
+/* 80165220 00160E80 4E 80 00 20 */ blr
+
+.global func_80165224
+func_80165224:
+/* 80165224 00160E84 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80165228 00160E88 7C 08 02 A6 */ mflr r0
+/* 8016522C 00160E8C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80165230 00160E90 48 0F 8D A1 */ bl func_8025DFD0
+/* 80165234 00160E94 48 0F 90 E9 */ bl func_8025E31C
+/* 80165238 00160E98 81 83 00 00 */ lwz r12, 0(r3)
+/* 8016523C 00160E9C 81 8C 00 3C */ lwz r12, 0x3c(r12)
+/* 80165240 00160EA0 7D 89 03 A6 */ mtctr r12
+/* 80165244 00160EA4 4E 80 04 21 */ bctrl
+/* 80165248 00160EA8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8016524C 00160EAC 7C 08 03 A6 */ mtlr r0
+/* 80165250 00160EB0 38 21 00 10 */ addi r1, r1, 0x10
+/* 80165254 00160EB4 4E 80 00 20 */ blr
+
+.global func_80165258
+func_80165258:
+/* 80165258 00160EB8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 8016525C 00160EBC 7C 08 02 A6 */ mflr r0
+/* 80165260 00160EC0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80165264 00160EC4 4B FF FE 49 */ bl func_801650AC
+/* 80165268 00160EC8 2C 03 00 00 */ cmpwi r3, 0
+/* 8016526C 00160ECC 41 82 00 20 */ beq lbl_8016528C
+/* 80165270 00160ED0 48 0F 8D 61 */ bl func_8025DFD0
+/* 80165274 00160ED4 48 0F 90 A9 */ bl func_8025E31C
+/* 80165278 00160ED8 81 83 00 00 */ lwz r12, 0(r3)
+/* 8016527C 00160EDC 81 8C 00 24 */ lwz r12, 0x24(r12)
+/* 80165280 00160EE0 7D 89 03 A6 */ mtctr r12
+/* 80165284 00160EE4 4E 80 04 21 */ bctrl
+/* 80165288 00160EE8 48 00 00 08 */ b lbl_80165290
+lbl_8016528C:
+/* 8016528C 00160EEC 38 60 00 00 */ li r3, 0
+lbl_80165290:
+/* 80165290 00160EF0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80165294 00160EF4 7C 08 03 A6 */ mtlr r0
+/* 80165298 00160EF8 38 21 00 10 */ addi r1, r1, 0x10
+/* 8016529C 00160EFC 4E 80 00 20 */ blr
+
+.global func_801652A0
+func_801652A0:
+/* 801652A0 00160F00 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801652A4 00160F04 7C 08 02 A6 */ mflr r0
+/* 801652A8 00160F08 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801652AC 00160F0C 4B FF FE 01 */ bl func_801650AC
+/* 801652B0 00160F10 2C 03 00 00 */ cmpwi r3, 0
+/* 801652B4 00160F14 41 82 00 20 */ beq lbl_801652D4
+/* 801652B8 00160F18 48 0F 8D 19 */ bl func_8025DFD0
+/* 801652BC 00160F1C 48 0F 90 61 */ bl func_8025E31C
+/* 801652C0 00160F20 81 83 00 00 */ lwz r12, 0(r3)
+/* 801652C4 00160F24 81 8C 00 28 */ lwz r12, 0x28(r12)
+/* 801652C8 00160F28 7D 89 03 A6 */ mtctr r12
+/* 801652CC 00160F2C 4E 80 04 21 */ bctrl
+/* 801652D0 00160F30 48 00 00 08 */ b lbl_801652D8
+lbl_801652D4:
+/* 801652D4 00160F34 38 60 00 00 */ li r3, 0
+lbl_801652D8:
+/* 801652D8 00160F38 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801652DC 00160F3C 7C 08 03 A6 */ mtlr r0
+/* 801652E0 00160F40 38 21 00 10 */ addi r1, r1, 0x10
+/* 801652E4 00160F44 4E 80 00 20 */ blr
+
+.global func_801652E8
+func_801652E8:
+/* 801652E8 00160F48 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 801652EC 00160F4C 7C 08 02 A6 */ mflr r0
+/* 801652F0 00160F50 90 01 00 34 */ stw r0, 0x34(r1)
+/* 801652F4 00160F54 48 0F 8C DD */ bl func_8025DFD0
+/* 801652F8 00160F58 48 0F 90 25 */ bl func_8025E31C
+/* 801652FC 00160F5C 38 81 00 08 */ addi r4, r1, 8
+/* 80165300 00160F60 38 A0 00 08 */ li r5, 8
+/* 80165304 00160F64 48 10 01 85 */ bl func_80265488
+/* 80165308 00160F68 2C 03 00 00 */ cmpwi r3, 0
+/* 8016530C 00160F6C 41 81 00 0C */ bgt lbl_80165318
+/* 80165310 00160F70 38 60 FF FF */ li r3, -1
+/* 80165314 00160F74 48 00 00 08 */ b lbl_8016531C
+lbl_80165318:
+/* 80165318 00160F78 80 61 00 08 */ lwz r3, 8(r1)
+lbl_8016531C:
+/* 8016531C 00160F7C 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 80165320 00160F80 7C 08 03 A6 */ mtlr r0
+/* 80165324 00160F84 38 21 00 30 */ addi r1, r1, 0x30
+/* 80165328 00160F88 4E 80 00 20 */ blr
+
+.global func_8016532C
+func_8016532C:
+/* 8016532C 00160F8C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80165330 00160F90 7C 08 02 A6 */ mflr r0
+/* 80165334 00160F94 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80165338 00160F98 48 0F 8C 99 */ bl func_8025DFD0
+/* 8016533C 00160F9C 48 0F 8F E1 */ bl func_8025E31C
+/* 80165340 00160FA0 48 10 0A AD */ bl func_80265DEC
+/* 80165344 00160FA4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80165348 00160FA8 7C 08 03 A6 */ mtlr r0
+/* 8016534C 00160FAC 38 21 00 10 */ addi r1, r1, 0x10
+/* 80165350 00160FB0 4E 80 00 20 */ blr
+
+.global func_80165354
+func_80165354:
+/* 80165354 00160FB4 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80165358 00160FB8 7C 08 02 A6 */ mflr r0
+/* 8016535C 00160FBC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80165360 00160FC0 4B FF FD 4D */ bl func_801650AC
+/* 80165364 00160FC4 2C 03 00 00 */ cmpwi r3, 0
+/* 80165368 00160FC8 41 82 00 10 */ beq lbl_80165378
+/* 8016536C 00160FCC 4B FF FE ED */ bl func_80165258
+/* 80165370 00160FD0 2C 03 00 00 */ cmpwi r3, 0
+/* 80165374 00160FD4 41 82 00 0C */ beq lbl_80165380
+lbl_80165378:
+/* 80165378 00160FD8 38 60 FF FF */ li r3, -1
+/* 8016537C 00160FDC 48 00 00 1C */ b lbl_80165398
+lbl_80165380:
+/* 80165380 00160FE0 48 00 38 C9 */ bl func_80168C48
+/* 80165384 00160FE4 48 00 41 1D */ bl func_801694A0
+/* 80165388 00160FE8 48 0F 8C 49 */ bl func_8025DFD0
+/* 8016538C 00160FEC 48 0F 8F 91 */ bl func_8025E31C
+/* 80165390 00160FF0 38 80 00 02 */ li r4, 2
+/* 80165394 00160FF4 48 10 08 1D */ bl func_80265BB0
+lbl_80165398:
+/* 80165398 00160FF8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 8016539C 00160FFC 7C 08 03 A6 */ mtlr r0
+/* 801653A0 00161000 38 21 00 10 */ addi r1, r1, 0x10
+/* 801653A4 00161004 4E 80 00 20 */ blr
+
+.global func_801653A8
+func_801653A8:
+/* 801653A8 00161008 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 801653AC 0016100C 7C 08 02 A6 */ mflr r0
+/* 801653B0 00161010 90 01 00 14 */ stw r0, 0x14(r1)
+/* 801653B4 00161014 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 801653B8 00161018 7C 7F 1B 78 */ mr r31, r3
+/* 801653BC 0016101C 4B FF FC F1 */ bl func_801650AC
+/* 801653C0 00161020 2C 03 00 00 */ cmpwi r3, 0
+/* 801653C4 00161024 41 82 00 10 */ beq lbl_801653D4
+/* 801653C8 00161028 4B FF FE 91 */ bl func_80165258
+/* 801653CC 0016102C 2C 03 00 00 */ cmpwi r3, 0
+/* 801653D0 00161030 41 82 00 0C */ beq lbl_801653DC
+lbl_801653D4:
+/* 801653D4 00161034 38 60 FF FF */ li r3, -1
+/* 801653D8 00161038 48 00 00 1C */ b lbl_801653F4
+lbl_801653DC:
+/* 801653DC 0016103C 48 00 38 6D */ bl func_80168C48
+/* 801653E0 00161040 48 00 40 C1 */ bl func_801694A0
+/* 801653E4 00161044 48 0F 8B ED */ bl func_8025DFD0
+/* 801653E8 00161048 48 0F 8F 35 */ bl func_8025E31C
+/* 801653EC 0016104C 7F E4 FB 78 */ mr r4, r31
+/* 801653F0 00161050 48 10 08 2D */ bl func_80265C1C
+lbl_801653F4:
+/* 801653F4 00161054 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 801653F8 00161058 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 801653FC 0016105C 7C 08 03 A6 */ mtlr r0
+/* 80165400 00161060 38 21 00 10 */ addi r1, r1, 0x10
+/* 80165404 00161064 4E 80 00 20 */ blr
+
+.global func_80165408
+func_80165408:
+/* 80165408 00161068 7C 64 1B 78 */ mr r4, r3
+/* 8016540C 0016106C 48 00 00 08 */ b lbl_80165414
+lbl_80165410:
+/* 80165410 00161070 38 84 00 02 */ addi r4, r4, 2
+lbl_80165414:
+/* 80165414 00161074 A0 04 00 00 */ lhz r0, 0(r4)
+/* 80165418 00161078 2C 00 00 00 */ cmpwi r0, 0
+/* 8016541C 0016107C 40 82 FF F4 */ bne lbl_80165410
+/* 80165420 00161080 7C 63 20 50 */ subf r3, r3, r4
+/* 80165424 00161084 54 60 0F FE */ srwi r0, r3, 0x1f
+/* 80165428 00161088 7C 00 1A 14 */ add r0, r0, r3
+/* 8016542C 0016108C 7C 03 0E 70 */ srawi r3, r0, 1
+/* 80165430 00161090 4E 80 00 20 */ blr
+
+.global func_80165434
+func_80165434:
+/* 80165434 00161094 94 21 FF C0 */ stwu r1, -0x40(r1)
+/* 80165438 00161098 7C 08 02 A6 */ mflr r0
+/* 8016543C 0016109C 90 01 00 44 */ stw r0, 0x44(r1)
+/* 80165440 001610A0 39 61 00 40 */ addi r11, r1, 0x40
+/* 80165444 001610A4 48 06 1C E5 */ bl _savegpr_27
+/* 80165448 001610A8 7C 7B 1B 78 */ mr r27, r3
+/* 8016544C 001610AC 7C 9D 23 78 */ mr r29, r4
+/* 80165450 001610B0 7C BC 2B 78 */ mr r28, r5
+/* 80165454 001610B4 4B FF FC 59 */ bl func_801650AC
+/* 80165458 001610B8 2C 03 00 00 */ cmpwi r3, 0
+/* 8016545C 001610BC 41 82 00 10 */ beq lbl_8016546C
+/* 80165460 001610C0 4B FF FD F9 */ bl func_80165258
+/* 80165464 001610C4 2C 03 00 00 */ cmpwi r3, 0
+/* 80165468 001610C8 41 82 00 0C */ beq lbl_80165474
+lbl_8016546C:
+/* 8016546C 001610CC 38 60 FF FF */ li r3, -1
+/* 80165470 001610D0 48 00 00 8C */ b lbl_801654FC
+lbl_80165474:
+/* 80165474 001610D4 2C 1D 00 0A */ cmpwi r29, 0xa
+/* 80165478 001610D8 40 80 00 0C */ bge lbl_80165484
+/* 8016547C 001610DC 3B A0 00 0A */ li r29, 0xa
+/* 80165480 001610E0 48 00 00 0C */ b lbl_8016548C
+lbl_80165484:
+/* 80165484 001610E4 1C 1C 00 64 */ mulli r0, r28, 0x64
+/* 80165488 001610E8 7F A0 EB D6 */ divw r29, r0, r29
+lbl_8016548C:
+/* 8016548C 001610EC 80 0D 9D F4 */ lwz r0, lbl_8063F0B4-_SDA_BASE_(r13)
+/* 80165490 001610F0 2C 00 00 00 */ cmpwi r0, 0
+/* 80165494 001610F4 41 82 00 08 */ beq lbl_8016549C
+/* 80165498 001610F8 3B A0 00 0A */ li r29, 0xa
+lbl_8016549C:
+/* 8016549C 001610FC 83 8D 9D F0 */ lwz r28, lbl_8063F0B0-_SDA_BASE_(r13)
+/* 801654A0 00161100 48 00 35 09 */ bl func_801689A8
+/* 801654A4 00161104 7C 64 1B 78 */ mr r4, r3
+/* 801654A8 00161108 38 61 00 08 */ addi r3, r1, 8
+/* 801654AC 0016110C 38 A0 00 20 */ li r5, 0x20
+/* 801654B0 00161110 48 01 1C 9D */ bl func_8017714C
+/* 801654B4 00161114 48 00 34 F5 */ bl func_801689A8
+/* 801654B8 00161118 4B FF FF 51 */ bl func_80165408
+/* 801654BC 0016111C 7C 7E 1B 78 */ mr r30, r3
+/* 801654C0 00161120 48 00 34 E9 */ bl func_801689A8
+/* 801654C4 00161124 7C 7F 1B 78 */ mr r31, r3
+/* 801654C8 00161128 48 0F 8B 09 */ bl func_8025DFD0
+/* 801654CC 0016112C 48 0F 8E 51 */ bl func_8025E31C
+/* 801654D0 00161130 7F E4 FB 78 */ mr r4, r31
+/* 801654D4 00161134 7F C5 F3 78 */ mr r5, r30
+/* 801654D8 00161138 48 10 09 55 */ bl func_80265E2C
+/* 801654DC 0016113C 48 00 37 6D */ bl func_80168C48
+/* 801654E0 00161140 48 00 3F C1 */ bl func_801694A0
+/* 801654E4 00161144 48 0F 8A ED */ bl func_8025DFD0
+/* 801654E8 00161148 48 0F 8E 35 */ bl func_8025E31C
+/* 801654EC 0016114C 7F 64 DB 78 */ mr r4, r27
+/* 801654F0 00161150 7F A5 EB 78 */ mr r5, r29
+/* 801654F4 00161154 7F 86 E3 78 */ mr r6, r28
+/* 801654F8 00161158 48 10 04 81 */ bl func_80265978
+lbl_801654FC:
+/* 801654FC 0016115C 39 61 00 40 */ addi r11, r1, 0x40
+/* 80165500 00161160 48 06 1C 75 */ bl _restgpr_27
+/* 80165504 00161164 80 01 00 44 */ lwz r0, 0x44(r1)
+/* 80165508 00161168 7C 08 03 A6 */ mtlr r0
+/* 8016550C 0016116C 38 21 00 40 */ addi r1, r1, 0x40
+/* 80165510 00161170 4E 80 00 20 */ blr
+
+.global func_80165514
+func_80165514:
+/* 80165514 00161174 38 A0 00 01 */ li r5, 1
+/* 80165518 00161178 38 6D 9D E8 */ addi r3, r13, lbl_8063F0A8-_SDA_BASE_
+/* 8016551C 0016117C 38 80 00 04 */ li r4, 4
+/* 80165520 00161180 38 00 00 00 */ li r0, 0
+/* 80165524 00161184 98 AD 9D E8 */ stb r5, lbl_8063F0A8-_SDA_BASE_(r13)
+/* 80165528 00161188 B0 83 00 02 */ sth r4, 2(r3)
+/* 8016552C 0016118C 98 03 00 04 */ stb r0, 4(r3)
+/* 80165530 00161190 4E 80 00 20 */ blr
|