diff options
Diffstat (limited to 'asm/code_80168C1C.s')
-rw-r--r-- | asm/code_80168C1C.s | 472 |
1 files changed, 472 insertions, 0 deletions
diff --git a/asm/code_80168C1C.s b/asm/code_80168C1C.s new file mode 100644 index 0000000..b331814 --- /dev/null +++ b/asm/code_80168C1C.s @@ -0,0 +1,472 @@ +.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global func_80168C1C
+func_80168C1C:
+/* 80168C1C 0016487C 80 AD 9E 6C */ lwz r5, lbl_8063F12C-_SDA_BASE_(r13)
+/* 80168C20 00164880 7C 85 1A 14 */ add r4, r5, r3
+/* 80168C24 00164884 28 04 80 00 */ cmplwi r4, 0x8000
+/* 80168C28 00164888 40 80 00 14 */ bge lbl_80168C3C
+/* 80168C2C 0016488C 80 0D 9E 70 */ lwz r0, lbl_8063F130-_SDA_BASE_(r13)
+/* 80168C30 00164890 90 8D 9E 6C */ stw r4, lbl_8063F12C-_SDA_BASE_(r13)
+/* 80168C34 00164894 7C 60 2A 14 */ add r3, r0, r5
+/* 80168C38 00164898 4E 80 00 20 */ blr
+lbl_80168C3C:
+/* 80168C3C 0016489C 90 6D 9E 6C */ stw r3, lbl_8063F12C-_SDA_BASE_(r13)
+/* 80168C40 001648A0 80 6D 9E 70 */ lwz r3, lbl_8063F130-_SDA_BASE_(r13)
+/* 80168C44 001648A4 4E 80 00 20 */ blr
+
+.global func_80168C48
+func_80168C48:
+/* 80168C48 001648A8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80168C4C 001648AC 7C 08 02 A6 */ mflr r0
+/* 80168C50 001648B0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80168C54 001648B4 80 0D 9E 70 */ lwz r0, lbl_8063F130-_SDA_BASE_(r13)
+/* 80168C58 001648B8 2C 00 00 00 */ cmpwi r0, 0
+/* 80168C5C 001648BC 40 82 00 18 */ bne lbl_80168C74
+/* 80168C60 001648C0 48 0F 53 71 */ bl func_8025DFD0
+/* 80168C64 001648C4 3C 80 00 01 */ lis r4, 0x00008000@ha
+/* 80168C68 001648C8 38 84 80 00 */ addi r4, r4, 0x00008000@l
+/* 80168C6C 001648CC 48 0F 53 55 */ bl func_8025DFC0
+/* 80168C70 001648D0 90 6D 9E 70 */ stw r3, lbl_8063F130-_SDA_BASE_(r13)
+lbl_80168C74:
+/* 80168C74 001648D4 80 0D 9E 74 */ lwz r0, lbl_8063F134-_SDA_BASE_(r13)
+/* 80168C78 001648D8 2C 00 00 00 */ cmpwi r0, 0
+/* 80168C7C 001648DC 40 82 00 18 */ bne lbl_80168C94
+/* 80168C80 001648E0 48 0F 53 51 */ bl func_8025DFD0
+/* 80168C84 001648E4 3C 80 00 01 */ lis r4, 0x0000C000@ha
+/* 80168C88 001648E8 38 84 C0 00 */ addi r4, r4, 0x0000C000@l
+/* 80168C8C 001648EC 48 0F 53 35 */ bl func_8025DFC0
+/* 80168C90 001648F0 90 6D 9E 74 */ stw r3, lbl_8063F134-_SDA_BASE_(r13)
+lbl_80168C94:
+/* 80168C94 001648F4 3C 60 80 49 */ lis r3, lbl_8048CB48@ha
+/* 80168C98 001648F8 3C A0 00 01 */ lis r5, 0x0000C000@ha
+/* 80168C9C 001648FC 80 8D 9E 74 */ lwz r4, lbl_8063F134-_SDA_BASE_(r13)
+/* 80168CA0 00164900 38 63 CB 48 */ addi r3, r3, lbl_8048CB48@l
+/* 80168CA4 00164904 38 A5 C0 00 */ addi r5, r5, 0x0000C000@l
+/* 80168CA8 00164908 48 0F 4B 25 */ bl func_8025D7CC
+/* 80168CAC 0016490C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80168CB0 00164910 7C 08 03 A6 */ mtlr r0
+/* 80168CB4 00164914 38 21 00 10 */ addi r1, r1, 0x10
+/* 80168CB8 00164918 4E 80 00 20 */ blr
+
+.global func_80168CBC
+func_80168CBC:
+/* 80168CBC 0016491C 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80168CC0 00164920 7C 08 02 A6 */ mflr r0
+/* 80168CC4 00164924 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80168CC8 00164928 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80168CCC 0016492C 7C 9F 23 78 */ mr r31, r4
+/* 80168CD0 00164930 93 C1 00 08 */ stw r30, 8(r1)
+/* 80168CD4 00164934 7C 7E 1B 78 */ mr r30, r3
+/* 80168CD8 00164938 48 10 5A 85 */ bl OSDisableInterrupts
+/* 80168CDC 0016493C 38 1E 00 03 */ addi r0, r30, 3
+/* 80168CE0 00164940 3C 80 80 49 */ lis r4, lbl_8048CB48@ha
+/* 80168CE4 00164944 7C 7E 1B 78 */ mr r30, r3
+/* 80168CE8 00164948 7F E5 FB 78 */ mr r5, r31
+/* 80168CEC 0016494C 38 64 CB 48 */ addi r3, r4, lbl_8048CB48@l
+/* 80168CF0 00164950 54 04 04 3A */ rlwinm r4, r0, 0, 0x10, 0x1d
+/* 80168CF4 00164954 48 0F 4B 15 */ bl func_8025D808
+/* 80168CF8 00164958 7C 7F 1B 78 */ mr r31, r3
+/* 80168CFC 0016495C 7F C3 F3 78 */ mr r3, r30
+/* 80168D00 00164960 48 10 5A 85 */ bl OSRestoreInterrupts
+/* 80168D04 00164964 2C 1F 00 00 */ cmpwi r31, 0
+/* 80168D08 00164968 40 82 00 0C */ bne lbl_80168D14
+/* 80168D0C 0016496C 38 60 00 00 */ li r3, 0
+/* 80168D10 00164970 48 00 00 0C */ b lbl_80168D1C
+lbl_80168D14:
+/* 80168D14 00164974 38 1F 00 03 */ addi r0, r31, 3
+/* 80168D18 00164978 54 03 00 3A */ rlwinm r3, r0, 0, 0, 0x1d
+lbl_80168D1C:
+/* 80168D1C 0016497C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80168D20 00164980 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80168D24 00164984 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80168D28 00164988 7C 08 03 A6 */ mtlr r0
+/* 80168D2C 0016498C 38 21 00 10 */ addi r1, r1, 0x10
+/* 80168D30 00164990 4E 80 00 20 */ blr
+
+.global func_80168D34
+func_80168D34:
+/* 80168D34 00164994 3C 60 80 49 */ lis r3, 0x8049
+/* 80168D38 00164998 84 03 CB 68 */ lwzu r0, -0x3498(r3)
+/* 80168D3C 0016499C 2C 00 00 00 */ cmpwi r0, 0
+/* 80168D40 001649A0 41 82 00 0C */ beq lbl_80168D4C
+/* 80168D44 001649A4 38 60 00 01 */ li r3, 1
+/* 80168D48 001649A8 4E 80 00 20 */ blr
+lbl_80168D4C:
+/* 80168D4C 001649AC 80 03 00 04 */ lwz r0, 4(r3)
+/* 80168D50 001649B0 2C 00 00 00 */ cmpwi r0, 0
+/* 80168D54 001649B4 41 82 00 0C */ beq lbl_80168D60
+/* 80168D58 001649B8 38 60 00 01 */ li r3, 1
+/* 80168D5C 001649BC 4E 80 00 20 */ blr
+lbl_80168D60:
+/* 80168D60 001649C0 80 03 00 08 */ lwz r0, 8(r3)
+/* 80168D64 001649C4 2C 00 00 00 */ cmpwi r0, 0
+/* 80168D68 001649C8 41 82 00 0C */ beq lbl_80168D74
+/* 80168D6C 001649CC 38 60 00 01 */ li r3, 1
+/* 80168D70 001649D0 4E 80 00 20 */ blr
+lbl_80168D74:
+/* 80168D74 001649D4 80 03 00 0C */ lwz r0, 0xc(r3)
+/* 80168D78 001649D8 2C 00 00 00 */ cmpwi r0, 0
+/* 80168D7C 001649DC 41 82 00 0C */ beq lbl_80168D88
+/* 80168D80 001649E0 38 60 00 01 */ li r3, 1
+/* 80168D84 001649E4 4E 80 00 20 */ blr
+lbl_80168D88:
+/* 80168D88 001649E8 80 03 00 10 */ lwz r0, 0x10(r3)
+/* 80168D8C 001649EC 2C 00 00 00 */ cmpwi r0, 0
+/* 80168D90 001649F0 41 82 00 0C */ beq lbl_80168D9C
+/* 80168D94 001649F4 38 60 00 01 */ li r3, 1
+/* 80168D98 001649F8 4E 80 00 20 */ blr
+lbl_80168D9C:
+/* 80168D9C 001649FC 80 03 00 14 */ lwz r0, 0x14(r3)
+/* 80168DA0 00164A00 2C 00 00 00 */ cmpwi r0, 0
+/* 80168DA4 00164A04 41 82 00 0C */ beq lbl_80168DB0
+/* 80168DA8 00164A08 38 60 00 01 */ li r3, 1
+/* 80168DAC 00164A0C 4E 80 00 20 */ blr
+lbl_80168DB0:
+/* 80168DB0 00164A10 80 03 00 18 */ lwz r0, 0x18(r3)
+/* 80168DB4 00164A14 2C 00 00 00 */ cmpwi r0, 0
+/* 80168DB8 00164A18 41 82 00 0C */ beq lbl_80168DC4
+/* 80168DBC 00164A1C 38 60 00 01 */ li r3, 1
+/* 80168DC0 00164A20 4E 80 00 20 */ blr
+lbl_80168DC4:
+/* 80168DC4 00164A24 80 03 00 1C */ lwz r0, 0x1c(r3)
+/* 80168DC8 00164A28 2C 00 00 00 */ cmpwi r0, 0
+/* 80168DCC 00164A2C 41 82 00 0C */ beq lbl_80168DD8
+/* 80168DD0 00164A30 38 60 00 01 */ li r3, 1
+/* 80168DD4 00164A34 4E 80 00 20 */ blr
+lbl_80168DD8:
+/* 80168DD8 00164A38 80 03 00 20 */ lwz r0, 0x20(r3)
+/* 80168DDC 00164A3C 2C 00 00 00 */ cmpwi r0, 0
+/* 80168DE0 00164A40 41 82 00 0C */ beq lbl_80168DEC
+/* 80168DE4 00164A44 38 60 00 01 */ li r3, 1
+/* 80168DE8 00164A48 4E 80 00 20 */ blr
+lbl_80168DEC:
+/* 80168DEC 00164A4C 38 60 00 00 */ li r3, 0
+/* 80168DF0 00164A50 4E 80 00 20 */ blr
+/* 80168DF4 00164A54 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80168DF8 00164A58 7C 08 02 A6 */ mflr r0
+/* 80168DFC 00164A5C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80168E00 00164A60 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80168E04 00164A64 7C BF 2B 78 */ mr r31, r5
+/* 80168E08 00164A68 93 C1 00 08 */ stw r30, 8(r1)
+/* 80168E0C 00164A6C 7C 7E 1B 78 */ mr r30, r3
+/* 80168E10 00164A70 7F E3 FB 78 */ mr r3, r31
+/* 80168E14 00164A74 57 C4 06 3E */ clrlwi r4, r30, 0x18
+/* 80168E18 00164A78 4B FF FE A5 */ bl func_80168CBC
+/* 80168E1C 00164A7C 2C 03 00 00 */ cmpwi r3, 0
+/* 80168E20 00164A80 40 82 00 0C */ bne lbl_80168E2C
+/* 80168E24 00164A84 38 60 FF FF */ li r3, -1
+/* 80168E28 00164A88 48 00 00 18 */ b lbl_80168E40
+lbl_80168E2C:
+/* 80168E2C 00164A8C 3C 80 80 49 */ lis r4, lbl_8048CB68@ha
+/* 80168E30 00164A90 57 C0 13 BA */ rlwinm r0, r30, 2, 0xe, 0x1d
+/* 80168E34 00164A94 38 84 CB 68 */ addi r4, r4, lbl_8048CB68@l
+/* 80168E38 00164A98 7C 64 01 2E */ stwx r3, r4, r0
+/* 80168E3C 00164A9C 7F E3 FB 78 */ mr r3, r31
+lbl_80168E40:
+/* 80168E40 00164AA0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80168E44 00164AA4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80168E48 00164AA8 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80168E4C 00164AAC 7C 08 03 A6 */ mtlr r0
+/* 80168E50 00164AB0 38 21 00 10 */ addi r1, r1, 0x10
+/* 80168E54 00164AB4 4E 80 00 20 */ blr
+/* 80168E58 00164AB8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 80168E5C 00164ABC 7C 08 02 A6 */ mflr r0
+/* 80168E60 00164AC0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 80168E64 00164AC4 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 80168E68 00164AC8 3F E0 80 49 */ lis r31, lbl_8048CB68@ha
+/* 80168E6C 00164ACC 3B FF CB 68 */ addi r31, r31, lbl_8048CB68@l
+/* 80168E70 00164AD0 93 C1 00 08 */ stw r30, 8(r1)
+/* 80168E74 00164AD4 54 7E 13 BA */ rlwinm r30, r3, 2, 0xe, 0x1d
+/* 80168E78 00164AD8 7C 7F F0 2E */ lwzx r3, r31, r30
+/* 80168E7C 00164ADC 2C 03 00 00 */ cmpwi r3, 0
+/* 80168E80 00164AE0 40 82 00 0C */ bne lbl_80168E8C
+/* 80168E84 00164AE4 38 60 FF FF */ li r3, -1
+/* 80168E88 00164AE8 48 00 00 1C */ b lbl_80168EA4
+lbl_80168E8C:
+/* 80168E8C 00164AEC 7C A4 2B 78 */ mr r4, r5
+/* 80168E90 00164AF0 7C C5 33 78 */ mr r5, r6
+/* 80168E94 00164AF4 4B E9 B1 6D */ bl memcpy
+/* 80168E98 00164AF8 38 00 00 00 */ li r0, 0
+/* 80168E9C 00164AFC 38 60 00 00 */ li r3, 0
+/* 80168EA0 00164B00 7C 1F F1 2E */ stwx r0, r31, r30
+lbl_80168EA4:
+/* 80168EA4 00164B04 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 80168EA8 00164B08 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 80168EAC 00164B0C 83 C1 00 08 */ lwz r30, 8(r1)
+/* 80168EB0 00164B10 7C 08 03 A6 */ mtlr r0
+/* 80168EB4 00164B14 38 21 00 10 */ addi r1, r1, 0x10
+/* 80168EB8 00164B18 4E 80 00 20 */ blr
+
+.global func_80168EBC
+func_80168EBC:
+/* 80168EBC 00164B1C 80 83 00 08 */ lwz r4, 8(r3)
+/* 80168EC0 00164B20 80 03 00 14 */ lwz r0, 0x14(r3)
+/* 80168EC4 00164B24 7C 84 1A 14 */ add r4, r4, r3
+/* 80168EC8 00164B28 2C 00 00 00 */ cmpwi r0, 0
+/* 80168ECC 00164B2C 90 83 00 08 */ stw r4, 8(r3)
+/* 80168ED0 00164B30 40 82 00 10 */ bne lbl_80168EE0
+/* 80168ED4 00164B34 38 00 00 00 */ li r0, 0
+/* 80168ED8 00164B38 90 03 00 10 */ stw r0, 0x10(r3)
+/* 80168EDC 00164B3C 48 00 00 10 */ b lbl_80168EEC
+lbl_80168EE0:
+/* 80168EE0 00164B40 80 03 00 10 */ lwz r0, 0x10(r3)
+/* 80168EE4 00164B44 7C 00 1A 14 */ add r0, r0, r3
+/* 80168EE8 00164B48 90 03 00 10 */ stw r0, 0x10(r3)
+lbl_80168EEC:
+/* 80168EEC 00164B4C 80 03 00 1C */ lwz r0, 0x1c(r3)
+/* 80168EF0 00164B50 2C 00 00 00 */ cmpwi r0, 0
+/* 80168EF4 00164B54 40 82 00 10 */ bne lbl_80168F04
+/* 80168EF8 00164B58 38 00 00 00 */ li r0, 0
+/* 80168EFC 00164B5C 90 03 00 18 */ stw r0, 0x18(r3)
+/* 80168F00 00164B60 48 00 00 10 */ b lbl_80168F10
+lbl_80168F04:
+/* 80168F04 00164B64 80 03 00 18 */ lwz r0, 0x18(r3)
+/* 80168F08 00164B68 7C 00 1A 14 */ add r0, r0, r3
+/* 80168F0C 00164B6C 90 03 00 18 */ stw r0, 0x18(r3)
+lbl_80168F10:
+/* 80168F10 00164B70 80 03 00 24 */ lwz r0, 0x24(r3)
+/* 80168F14 00164B74 2C 00 00 00 */ cmpwi r0, 0
+/* 80168F18 00164B78 40 82 00 10 */ bne lbl_80168F28
+/* 80168F1C 00164B7C 38 00 00 00 */ li r0, 0
+/* 80168F20 00164B80 90 03 00 20 */ stw r0, 0x20(r3)
+/* 80168F24 00164B84 48 00 00 10 */ b lbl_80168F34
+lbl_80168F28:
+/* 80168F28 00164B88 80 03 00 20 */ lwz r0, 0x20(r3)
+/* 80168F2C 00164B8C 7C 00 1A 14 */ add r0, r0, r3
+/* 80168F30 00164B90 90 03 00 20 */ stw r0, 0x20(r3)
+lbl_80168F34:
+/* 80168F34 00164B94 80 03 00 2C */ lwz r0, 0x2c(r3)
+/* 80168F38 00164B98 2C 00 00 00 */ cmpwi r0, 0
+/* 80168F3C 00164B9C 40 82 00 10 */ bne lbl_80168F4C
+/* 80168F40 00164BA0 38 00 00 00 */ li r0, 0
+/* 80168F44 00164BA4 90 03 00 28 */ stw r0, 0x28(r3)
+/* 80168F48 00164BA8 4E 80 00 20 */ blr
+lbl_80168F4C:
+/* 80168F4C 00164BAC 80 03 00 28 */ lwz r0, 0x28(r3)
+/* 80168F50 00164BB0 7C 00 1A 14 */ add r0, r0, r3
+/* 80168F54 00164BB4 90 03 00 28 */ stw r0, 0x28(r3)
+/* 80168F58 00164BB8 4E 80 00 20 */ blr
+
+.global func_80168F5C
+func_80168F5C:
+/* 80168F5C 00164BBC 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 80168F60 00164BC0 7C 08 02 A6 */ mflr r0
+/* 80168F64 00164BC4 90 01 00 34 */ stw r0, 0x34(r1)
+/* 80168F68 00164BC8 39 61 00 30 */ addi r11, r1, 0x30
+/* 80168F6C 00164BCC 48 05 E1 B9 */ bl _savegpr_26
+/* 80168F70 00164BD0 7C 7E 1B 78 */ mr r30, r3
+/* 80168F74 00164BD4 7C 9F 23 78 */ mr r31, r4
+/* 80168F78 00164BD8 48 10 57 E5 */ bl OSDisableInterrupts
+/* 80168F7C 00164BDC 3F 60 80 49 */ lis r27, lbl_8048CB48@ha
+/* 80168F80 00164BE0 7C 7A 1B 78 */ mr r26, r3
+/* 80168F84 00164BE4 38 7B CB 48 */ addi r3, r27, lbl_8048CB48@l
+/* 80168F88 00164BE8 48 0F 48 71 */ bl func_8025D7F8
+/* 80168F8C 00164BEC 7C 7C 1B 78 */ mr r28, r3
+/* 80168F90 00164BF0 7F 43 D3 78 */ mr r3, r26
+/* 80168F94 00164BF4 48 10 57 F1 */ bl OSRestoreInterrupts
+/* 80168F98 00164BF8 2C 1C 00 00 */ cmpwi r28, 0
+/* 80168F9C 00164BFC 40 82 00 0C */ bne lbl_80168FA8
+/* 80168FA0 00164C00 38 60 00 00 */ li r3, 0
+/* 80168FA4 00164C04 48 00 02 1C */ b lbl_801691C0
+lbl_80168FA8:
+/* 80168FA8 00164C08 3C 60 00 01 */ lis r3, 0x0000DEAD@ha
+/* 80168FAC 00164C0C 3B A3 DE AD */ addi r29, r3, 0x0000DEAD@l
+lbl_80168FB0:
+/* 80168FB0 00164C10 48 10 57 AD */ bl OSDisableInterrupts
+/* 80168FB4 00164C14 7C 7A 1B 78 */ mr r26, r3
+/* 80168FB8 00164C18 38 7B CB 48 */ addi r3, r27, -13496
+/* 80168FBC 00164C1C 48 0F 48 3D */ bl func_8025D7F8
+/* 80168FC0 00164C20 7C 7C 1B 78 */ mr r28, r3
+/* 80168FC4 00164C24 7F 43 D3 78 */ mr r3, r26
+/* 80168FC8 00164C28 48 10 57 BD */ bl OSRestoreInterrupts
+/* 80168FCC 00164C2C 2C 1C 00 01 */ cmpwi r28, 1
+/* 80168FD0 00164C30 40 82 00 18 */ bne lbl_80168FE8
+/* 80168FD4 00164C34 4B FF FD 61 */ bl func_80168D34
+/* 80168FD8 00164C38 2C 03 00 00 */ cmpwi r3, 0
+/* 80168FDC 00164C3C 41 82 00 0C */ beq lbl_80168FE8
+/* 80168FE0 00164C40 38 60 00 00 */ li r3, 0
+/* 80168FE4 00164C44 48 00 01 DC */ b lbl_801691C0
+lbl_80168FE8:
+/* 80168FE8 00164C48 48 10 57 75 */ bl OSDisableInterrupts
+/* 80168FEC 00164C4C 7C 7A 1B 78 */ mr r26, r3
+/* 80168FF0 00164C50 38 7B CB 48 */ addi r3, r27, -13496
+/* 80168FF4 00164C54 38 81 00 0A */ addi r4, r1, 0xa
+/* 80168FF8 00164C58 38 A1 00 08 */ addi r5, r1, 8
+/* 80168FFC 00164C5C 48 0F 4A 01 */ bl func_8025D9FC
+/* 80169000 00164C60 7C 7C 1B 78 */ mr r28, r3
+/* 80169004 00164C64 7F 43 D3 78 */ mr r3, r26
+/* 80169008 00164C68 48 10 57 7D */ bl OSRestoreInterrupts
+/* 8016900C 00164C6C 2C 1C 00 00 */ cmpwi r28, 0
+/* 80169010 00164C70 40 82 00 0C */ bne lbl_8016901C
+/* 80169014 00164C74 38 60 00 00 */ li r3, 0
+/* 80169018 00164C78 48 00 01 A8 */ b lbl_801691C0
+lbl_8016901C:
+/* 8016901C 00164C7C 38 1C 00 03 */ addi r0, r28, 3
+/* 80169020 00164C80 54 07 00 3A */ rlwinm r7, r0, 0, 0, 0x1d
+/* 80169024 00164C84 80 67 00 00 */ lwz r3, 0(r7)
+/* 80169028 00164C88 3C 83 AF BE */ addis r4, r3, 0xafbe
+/* 8016902C 00164C8C 28 04 52 43 */ cmplwi r4, 0x5243
+/* 80169030 00164C90 40 82 00 10 */ bne lbl_80169040
+/* 80169034 00164C94 80 CD 9E 68 */ lwz r6, lbl_8063F128-_SDA_BASE_(r13)
+/* 80169038 00164C98 2C 06 00 01 */ cmpwi r6, 1
+/* 8016903C 00164C9C 40 82 00 3C */ bne lbl_80169078
+lbl_80169040:
+/* 80169040 00164CA0 48 10 57 1D */ bl OSDisableInterrupts
+/* 80169044 00164CA4 3F A0 80 49 */ lis r29, lbl_8048CB48@ha
+/* 80169048 00164CA8 7C 7B 1B 78 */ mr r27, r3
+/* 8016904C 00164CAC 38 7D CB 48 */ addi r3, r29, lbl_8048CB48@l
+/* 80169050 00164CB0 38 81 00 0A */ addi r4, r1, 0xa
+/* 80169054 00164CB4 38 A1 00 08 */ addi r5, r1, 8
+/* 80169058 00164CB8 48 0F 4A 59 */ bl func_8025DAB0
+/* 8016905C 00164CBC 38 7D CB 48 */ addi r3, r29, -13496
+/* 80169060 00164CC0 48 0F 4B 41 */ bl func_8025DBA0
+/* 80169064 00164CC4 7F 63 DB 78 */ mr r3, r27
+/* 80169068 00164CC8 48 10 57 1D */ bl OSRestoreInterrupts
+/* 8016906C 00164CCC 4B FF C2 C1 */ bl func_8016532C
+/* 80169070 00164CD0 38 60 00 00 */ li r3, 0
+/* 80169074 00164CD4 48 00 01 4C */ b lbl_801691C0
+lbl_80169078:
+/* 80169078 00164CD8 80 07 00 04 */ lwz r0, 4(r7)
+/* 8016907C 00164CDC 2C 00 00 00 */ cmpwi r0, 0
+/* 80169080 00164CE0 41 82 00 0C */ beq lbl_8016908C
+/* 80169084 00164CE4 2C 06 00 02 */ cmpwi r6, 2
+/* 80169088 00164CE8 40 82 00 48 */ bne lbl_801690D0
+lbl_8016908C:
+/* 8016908C 00164CEC 3C 60 00 01 */ lis r3, 0x0000DEAD@ha
+/* 80169090 00164CF0 38 03 DE AD */ addi r0, r3, 0x0000DEAD@l
+/* 80169094 00164CF4 90 07 00 00 */ stw r0, 0(r7)
+/* 80169098 00164CF8 48 10 56 C5 */ bl OSDisableInterrupts
+/* 8016909C 00164CFC 3F A0 80 49 */ lis r29, lbl_8048CB48@ha
+/* 801690A0 00164D00 7C 7B 1B 78 */ mr r27, r3
+/* 801690A4 00164D04 38 7D CB 48 */ addi r3, r29, lbl_8048CB48@l
+/* 801690A8 00164D08 38 81 00 0A */ addi r4, r1, 0xa
+/* 801690AC 00164D0C 38 A1 00 08 */ addi r5, r1, 8
+/* 801690B0 00164D10 48 0F 4A 01 */ bl func_8025DAB0
+/* 801690B4 00164D14 38 7D CB 48 */ addi r3, r29, -13496
+/* 801690B8 00164D18 48 0F 4A E9 */ bl func_8025DBA0
+/* 801690BC 00164D1C 7F 63 DB 78 */ mr r3, r27
+/* 801690C0 00164D20 48 10 56 C5 */ bl OSRestoreInterrupts
+/* 801690C4 00164D24 4B FF C2 69 */ bl func_8016532C
+/* 801690C8 00164D28 38 60 00 00 */ li r3, 0
+/* 801690CC 00164D2C 48 00 00 F4 */ b lbl_801691C0
+lbl_801690D0:
+/* 801690D0 00164D30 80 A7 00 08 */ lwz r5, 8(r7)
+/* 801690D4 00164D34 7C 05 00 40 */ cmplw r5, r0
+/* 801690D8 00164D38 41 80 00 34 */ blt lbl_8016910C
+/* 801690DC 00164D3C 93 A7 00 00 */ stw r29, 0(r7)
+/* 801690E0 00164D40 48 10 56 7D */ bl OSDisableInterrupts
+/* 801690E4 00164D44 7C 7C 1B 78 */ mr r28, r3
+/* 801690E8 00164D48 38 7B CB 48 */ addi r3, r27, -13496
+/* 801690EC 00164D4C 38 81 00 0A */ addi r4, r1, 0xa
+/* 801690F0 00164D50 38 A1 00 08 */ addi r5, r1, 8
+/* 801690F4 00164D54 48 0F 49 BD */ bl func_8025DAB0
+/* 801690F8 00164D58 38 7B CB 48 */ addi r3, r27, -13496
+/* 801690FC 00164D5C 48 0F 4A A5 */ bl func_8025DBA0
+/* 80169100 00164D60 7F 83 E3 78 */ mr r3, r28
+/* 80169104 00164D64 48 10 56 81 */ bl OSRestoreInterrupts
+/* 80169108 00164D68 4B FF FE A8 */ b lbl_80168FB0
+lbl_8016910C:
+/* 8016910C 00164D6C 39 07 00 0C */ addi r8, r7, 0xc
+/* 80169110 00164D70 39 20 00 00 */ li r9, 0
+/* 80169114 00164D74 7C 09 03 A6 */ mtctr r0
+/* 80169118 00164D78 28 00 00 00 */ cmplwi r0, 0
+/* 8016911C 00164D7C 40 81 00 A0 */ ble lbl_801691BC
+lbl_80169120:
+/* 80169120 00164D80 28 04 52 43 */ cmplwi r4, 0x5243
+/* 80169124 00164D84 40 82 00 0C */ bne lbl_80169130
+/* 80169128 00164D88 2C 06 00 03 */ cmpwi r6, 3
+/* 8016912C 00164D8C 40 82 00 3C */ bne lbl_80169168
+lbl_80169130:
+/* 80169130 00164D90 48 10 56 2D */ bl OSDisableInterrupts
+/* 80169134 00164D94 3F C0 80 49 */ lis r30, lbl_8048CB48@ha
+/* 80169138 00164D98 7C 7B 1B 78 */ mr r27, r3
+/* 8016913C 00164D9C 38 7E CB 48 */ addi r3, r30, lbl_8048CB48@l
+/* 80169140 00164DA0 38 81 00 0A */ addi r4, r1, 0xa
+/* 80169144 00164DA4 38 A1 00 08 */ addi r5, r1, 8
+/* 80169148 00164DA8 48 0F 49 69 */ bl func_8025DAB0
+/* 8016914C 00164DAC 38 7E CB 48 */ addi r3, r30, -13496
+/* 80169150 00164DB0 48 0F 4A 51 */ bl func_8025DBA0
+/* 80169154 00164DB4 7F 63 DB 78 */ mr r3, r27
+/* 80169158 00164DB8 48 10 56 2D */ bl OSRestoreInterrupts
+/* 8016915C 00164DBC 4B FF C1 D1 */ bl func_8016532C
+/* 80169160 00164DC0 38 60 00 00 */ li r3, 0
+/* 80169164 00164DC4 48 00 00 5C */ b lbl_801691C0
+lbl_80169168:
+/* 80169168 00164DC8 7C 09 28 40 */ cmplw r9, r5
+/* 8016916C 00164DCC 40 82 00 3C */ bne lbl_801691A8
+/* 80169170 00164DD0 80 67 00 08 */ lwz r3, 8(r7)
+/* 80169174 00164DD4 2C 1E 00 00 */ cmpwi r30, 0
+/* 80169178 00164DD8 38 03 00 01 */ addi r0, r3, 1
+/* 8016917C 00164DDC 90 07 00 08 */ stw r0, 8(r7)
+/* 80169180 00164DE0 41 82 00 0C */ beq lbl_8016918C
+/* 80169184 00164DE4 80 08 00 04 */ lwz r0, 4(r8)
+/* 80169188 00164DE8 B0 1E 00 00 */ sth r0, 0(r30)
+lbl_8016918C:
+/* 8016918C 00164DEC 2C 1F 00 00 */ cmpwi r31, 0
+/* 80169190 00164DF0 41 82 00 0C */ beq lbl_8016919C
+/* 80169194 00164DF4 88 01 00 08 */ lbz r0, 8(r1)
+/* 80169198 00164DF8 98 1F 00 00 */ stb r0, 0(r31)
+lbl_8016919C:
+/* 8016919C 00164DFC 38 68 00 08 */ addi r3, r8, 8
+/* 801691A0 00164E00 4B FF FD 1D */ bl func_80168EBC
+/* 801691A4 00164E04 48 00 00 1C */ b lbl_801691C0
+lbl_801691A8:
+/* 801691A8 00164E08 80 08 00 04 */ lwz r0, 4(r8)
+/* 801691AC 00164E0C 39 29 00 01 */ addi r9, r9, 1
+/* 801691B0 00164E10 7C 68 02 14 */ add r3, r8, r0
+/* 801691B4 00164E14 39 03 00 08 */ addi r8, r3, 8
+/* 801691B8 00164E18 42 00 FF 68 */ bdnz lbl_80169120
+lbl_801691BC:
+/* 801691BC 00164E1C 38 60 00 00 */ li r3, 0
+lbl_801691C0:
+/* 801691C0 00164E20 39 61 00 30 */ addi r11, r1, 0x30
+/* 801691C4 00164E24 48 05 DF AD */ bl _restgpr_26
+/* 801691C8 00164E28 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 801691CC 00164E2C 7C 08 03 A6 */ mtlr r0
+/* 801691D0 00164E30 38 21 00 30 */ addi r1, r1, 0x30
+/* 801691D4 00164E34 4E 80 00 20 */ blr
+lbl_801691D8:
+/* 801691D8 00164E38 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 801691DC 00164E3C 7C 08 02 A6 */ mflr r0
+/* 801691E0 00164E40 90 01 00 24 */ stw r0, 0x24(r1)
+/* 801691E4 00164E44 38 61 00 0A */ addi r3, r1, 0xa
+/* 801691E8 00164E48 38 81 00 08 */ addi r4, r1, 8
+/* 801691EC 00164E4C 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 801691F0 00164E50 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 801691F4 00164E54 4B FF FD 69 */ bl func_80168F5C
+/* 801691F8 00164E58 2C 03 00 00 */ cmpwi r3, 0
+/* 801691FC 00164E5C 7C 7F 1B 78 */ mr r31, r3
+/* 80169200 00164E60 40 82 00 0C */ bne lbl_8016920C
+/* 80169204 00164E64 38 60 00 00 */ li r3, 0
+/* 80169208 00164E68 48 00 00 28 */ b lbl_80169230
+lbl_8016920C:
+/* 8016920C 00164E6C A0 61 00 0A */ lhz r3, 0xa(r1)
+/* 80169210 00164E70 4B FF FA 0D */ bl func_80168C1C
+/* 80169214 00164E74 A0 A1 00 0A */ lhz r5, 0xa(r1)
+/* 80169218 00164E78 7C 7E 1B 78 */ mr r30, r3
+/* 8016921C 00164E7C 7F E4 FB 78 */ mr r4, r31
+/* 80169220 00164E80 4B E9 AD E1 */ bl memcpy
+/* 80169224 00164E84 88 01 00 08 */ lbz r0, 8(r1)
+/* 80169228 00164E88 7F C3 F3 78 */ mr r3, r30
+/* 8016922C 00164E8C 90 1E 00 00 */ stw r0, 0(r30)
+lbl_80169230:
+/* 80169230 00164E90 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 80169234 00164E94 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 80169238 00164E98 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 8016923C 00164E9C 7C 08 03 A6 */ mtlr r0
+/* 80169240 00164EA0 38 21 00 20 */ addi r1, r1, 0x20
+/* 80169244 00164EA4 4E 80 00 20 */ blr
+
+.global func_80169248
+func_80169248:
+/* 80169248 00164EA8 38 A0 00 01 */ li r5, 1
+/* 8016924C 00164EAC 38 6D 9E 60 */ addi r3, r13, lbl_8063F120-_SDA_BASE_
+/* 80169250 00164EB0 38 80 00 04 */ li r4, 4
+/* 80169254 00164EB4 38 00 00 00 */ li r0, 0
+/* 80169258 00164EB8 98 AD 9E 60 */ stb r5, lbl_8063F120-_SDA_BASE_(r13)
+/* 8016925C 00164EBC B0 83 00 02 */ sth r4, 2(r3)
+/* 80169260 00164EC0 98 03 00 04 */ stb r0, 4(r3)
+/* 80169264 00164EC4 4E 80 00 20 */ blr
|