split text_3 and most of text_4, with linker errors

This commit is contained in:
Max 2020-10-15 12:40:00 -04:00
parent dec85bbe62
commit 2e8cc28cb1
40 changed files with 178876 additions and 178727 deletions

19942
asm/code_800C5968.s Normal file

File diff suppressed because it is too large Load Diff

13523
asm/code_800D7C90.s Normal file

File diff suppressed because it is too large Load Diff

5952
asm/code_800E4234.s Normal file

File diff suppressed because it is too large Load Diff

16433
asm/code_800E96C4.s Normal file

File diff suppressed because it is too large Load Diff

12360
asm/code_800F8AC4.s Normal file

File diff suppressed because it is too large Load Diff

19619
asm/code_80104354.s Normal file

File diff suppressed because it is too large Load Diff

5099
asm/code_801166F8.s Normal file

File diff suppressed because it is too large Load Diff

1604
asm/code_8011B19C.s Normal file

File diff suppressed because it is too large Load Diff

14
asm/code_8011C954.s Normal file
View File

@ -0,0 +1,14 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_8011C954
func_8011C954:
/* 8011C954 001185B4 38 A0 00 01 */ li r5, 1
/* 8011C958 001185B8 38 6D 9C B0 */ addi r3, r13, lbl_8063EF70-_SDA_BASE_
/* 8011C95C 001185BC 38 80 00 04 */ li r4, 4
/* 8011C960 001185C0 38 00 00 00 */ li r0, 0
/* 8011C964 001185C4 98 AD 9C B0 */ stb r5, lbl_8063EF70-_SDA_BASE_(r13)
/* 8011C968 001185C8 B0 83 00 02 */ sth r4, 2(r3)
/* 8011C96C 001185CC 98 03 00 04 */ stb r0, 4(r3)
/* 8011C970 001185D0 4E 80 00 20 */ blr

1671
asm/code_8011C974.s Normal file

File diff suppressed because it is too large Load Diff

18486
asm/code_8011E1FC.s Normal file

File diff suppressed because it is too large Load Diff

3016
asm/code_8012F0D8.s Normal file

File diff suppressed because it is too large Load Diff

9446
asm/code_80131CF0.s Normal file

File diff suppressed because it is too large Load Diff

4895
asm/code_8013A930.s Normal file

File diff suppressed because it is too large Load Diff

18334
asm/code_8013F044.s Normal file

File diff suppressed because it is too large Load Diff

1537
asm/code_8014FEA8.s Normal file

File diff suppressed because it is too large Load Diff

4872
asm/code_80151474.s Normal file

File diff suppressed because it is too large Load Diff

2101
asm/code_80155B50.s Normal file

File diff suppressed because it is too large Load Diff

669
asm/code_80157854.s Normal file
View File

@ -0,0 +1,669 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_80157854
func_80157854:
/* 80157854 001534B4 4E 80 00 20 */ blr
.global func_80157858
func_80157858:
/* 80157858 001534B8 3C 80 80 42 */ lis r4, lbl_8041E8E4@ha
/* 8015785C 001534BC 38 00 00 00 */ li r0, 0
/* 80157860 001534C0 38 84 E8 E4 */ addi r4, r4, lbl_8041E8E4@l
/* 80157864 001534C4 90 03 00 04 */ stw r0, 4(r3)
/* 80157868 001534C8 90 83 00 00 */ stw r4, 0(r3)
/* 8015786C 001534CC 90 03 00 08 */ stw r0, 8(r3)
/* 80157870 001534D0 90 03 00 0C */ stw r0, 0xc(r3)
/* 80157874 001534D4 90 03 00 10 */ stw r0, 0x10(r3)
/* 80157878 001534D8 90 03 00 14 */ stw r0, 0x14(r3)
/* 8015787C 001534DC 90 03 00 18 */ stw r0, 0x18(r3)
/* 80157880 001534E0 98 03 00 1C */ stb r0, 0x1c(r3)
/* 80157884 001534E4 98 03 00 1D */ stb r0, 0x1d(r3)
/* 80157888 001534E8 4E 80 00 20 */ blr
lbl_8015788C:
/* 8015788C 001534EC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80157890 001534F0 7C 08 02 A6 */ mflr r0
/* 80157894 001534F4 2C 03 00 00 */ cmpwi r3, 0
/* 80157898 001534F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8015789C 001534FC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801578A0 00153500 7C 7F 1B 78 */ mr r31, r3
/* 801578A4 00153504 41 82 00 10 */ beq lbl_801578B4
/* 801578A8 00153508 2C 04 00 00 */ cmpwi r4, 0
/* 801578AC 0015350C 40 81 00 08 */ ble lbl_801578B4
/* 801578B0 00153510 48 08 32 09 */ bl func_801DAAB8
lbl_801578B4:
/* 801578B4 00153514 7F E3 FB 78 */ mr r3, r31
/* 801578B8 00153518 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801578BC 0015351C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801578C0 00153520 7C 08 03 A6 */ mtlr r0
/* 801578C4 00153524 38 21 00 10 */ addi r1, r1, 0x10
/* 801578C8 00153528 4E 80 00 20 */ blr
/* 801578CC 0015352C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801578D0 00153530 7C 08 02 A6 */ mflr r0
/* 801578D4 00153534 90 01 00 14 */ stw r0, 0x14(r1)
/* 801578D8 00153538 38 00 00 00 */ li r0, 0
/* 801578DC 0015353C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801578E0 00153540 7C 7F 1B 78 */ mr r31, r3
/* 801578E4 00153544 90 03 00 04 */ stw r0, 4(r3)
/* 801578E8 00153548 4B EB 1F 09 */ bl func_800097F0
/* 801578EC 0015354C 38 00 00 01 */ li r0, 1
/* 801578F0 00153550 98 1F 00 1D */ stb r0, 0x1d(r31)
/* 801578F4 00153554 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801578F8 00153558 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801578FC 0015355C 7C 08 03 A6 */ mtlr r0
/* 80157900 00153560 38 21 00 10 */ addi r1, r1, 0x10
/* 80157904 00153564 4E 80 00 20 */ blr
.global func_80157908
func_80157908:
/* 80157908 00153568 80 A3 00 08 */ lwz r5, 8(r3)
/* 8015790C 0015356C 39 00 00 00 */ li r8, 0
/* 80157910 00153570 80 A5 00 00 */ lwz r5, 0(r5)
/* 80157914 00153574 A1 25 00 18 */ lhz r9, 0x18(r5)
/* 80157918 00153578 48 00 00 70 */ b lbl_80157988
lbl_8015791C:
/* 8015791C 0015357C 80 A3 00 08 */ lwz r5, 8(r3)
/* 80157920 00153580 80 E5 00 04 */ lwz r7, 4(r5)
/* 80157924 00153584 2C 07 00 00 */ cmpwi r7, 0
/* 80157928 00153588 40 82 00 0C */ bne lbl_80157934
/* 8015792C 0015358C 38 A0 00 00 */ li r5, 0
/* 80157930 00153590 48 00 00 28 */ b lbl_80157958
lbl_80157934:
/* 80157934 00153594 80 A5 00 00 */ lwz r5, 0(r5)
/* 80157938 00153598 55 06 04 3E */ clrlwi r6, r8, 0x10
/* 8015793C 0015359C A0 05 00 18 */ lhz r0, 0x18(r5)
/* 80157940 001535A0 7C 06 00 40 */ cmplw r6, r0
/* 80157944 001535A4 41 80 00 0C */ blt lbl_80157950
/* 80157948 001535A8 38 A0 00 00 */ li r5, 0
/* 8015794C 001535AC 48 00 00 0C */ b lbl_80157958
lbl_80157950:
/* 80157950 001535B0 55 00 13 BA */ rlwinm r0, r8, 2, 0xe, 0x1d
/* 80157954 001535B4 7C A7 00 2E */ lwzx r5, r7, r0
lbl_80157958:
/* 80157958 001535B8 2C 05 00 00 */ cmpwi r5, 0
/* 8015795C 001535BC 41 82 00 28 */ beq lbl_80157984
/* 80157960 001535C0 2C 04 00 00 */ cmpwi r4, 0
/* 80157964 001535C4 41 82 00 14 */ beq lbl_80157978
/* 80157968 001535C8 A0 05 00 DC */ lhz r0, 0xdc(r5)
/* 8015796C 001535CC 60 00 00 01 */ ori r0, r0, 1
/* 80157970 001535D0 B0 05 00 DC */ sth r0, 0xdc(r5)
/* 80157974 001535D4 48 00 00 10 */ b lbl_80157984
lbl_80157978:
/* 80157978 001535D8 A0 05 00 DC */ lhz r0, 0xdc(r5)
/* 8015797C 001535DC 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e
/* 80157980 001535E0 B0 05 00 DC */ sth r0, 0xdc(r5)
lbl_80157984:
/* 80157984 001535E4 39 08 00 01 */ addi r8, r8, 1
lbl_80157988:
/* 80157988 001535E8 55 00 04 3E */ clrlwi r0, r8, 0x10
/* 8015798C 001535EC 7C 00 48 40 */ cmplw r0, r9
/* 80157990 001535F0 41 80 FF 8C */ blt lbl_8015791C
/* 80157994 001535F4 4E 80 00 20 */ blr
/* 80157998 001535F8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8015799C 001535FC 7C 08 02 A6 */ mflr r0
/* 801579A0 00153600 90 01 00 24 */ stw r0, 0x24(r1)
/* 801579A4 00153604 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801579A8 00153608 93 C1 00 18 */ stw r30, 0x18(r1)
/* 801579AC 0015360C 7C 7E 1B 78 */ mr r30, r3
/* 801579B0 00153610 93 A1 00 14 */ stw r29, 0x14(r1)
/* 801579B4 00153614 3B A0 00 00 */ li r29, 0
/* 801579B8 00153618 93 81 00 10 */ stw r28, 0x10(r1)
/* 801579BC 0015361C 93 A3 00 04 */ stw r29, 4(r3)
/* 801579C0 00153620 38 60 00 02 */ li r3, 2
/* 801579C4 00153624 48 0E 36 95 */ bl func_8023B058
/* 801579C8 00153628 2C 03 00 00 */ cmpwi r3, 0
/* 801579CC 0015362C 7C 7F 1B 78 */ mr r31, r3
/* 801579D0 00153630 41 82 02 50 */ beq lbl_80157C20
/* 801579D4 00153634 38 60 04 07 */ li r3, 0x407
/* 801579D8 00153638 48 0F 1C 05 */ bl func_802495DC
/* 801579DC 0015363C 2C 03 00 00 */ cmpwi r3, 0
/* 801579E0 00153640 41 82 02 40 */ beq lbl_80157C20
/* 801579E4 00153644 3C 80 0B 51 */ lis r4, 0x0B510400@ha
/* 801579E8 00153648 38 60 04 07 */ li r3, 0x407
/* 801579EC 0015364C 38 84 04 00 */ addi r4, r4, 0x0B510400@l
/* 801579F0 00153650 48 08 3A CD */ bl func_801DB4BC
/* 801579F4 00153654 2C 03 00 00 */ cmpwi r3, 0
/* 801579F8 00153658 7C 7C 1B 78 */ mr r28, r3
/* 801579FC 0015365C 41 82 02 24 */ beq lbl_80157C20
/* 80157A00 00153660 48 08 31 29 */ bl func_801DAB28
/* 80157A04 00153664 2C 03 00 00 */ cmpwi r3, 0
/* 80157A08 00153668 41 82 00 14 */ beq lbl_80157A1C
/* 80157A0C 0015366C 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80157A10 00153670 38 80 00 14 */ li r4, 0x14
/* 80157A14 00153674 48 08 32 81 */ bl func_801DAC94
/* 80157A18 00153678 48 00 00 08 */ b lbl_80157A20
lbl_80157A1C:
/* 80157A1C 0015367C 7F A3 EB 78 */ mr r3, r29
lbl_80157A20:
/* 80157A20 00153680 2C 03 00 00 */ cmpwi r3, 0
/* 80157A24 00153684 41 82 00 0C */ beq lbl_80157A30
/* 80157A28 00153688 7F 84 E3 78 */ mr r4, r28
/* 80157A2C 0015368C 48 0A 26 69 */ bl func_801FA094
lbl_80157A30:
/* 80157A30 00153690 2C 03 00 00 */ cmpwi r3, 0
/* 80157A34 00153694 90 7E 00 08 */ stw r3, 8(r30)
/* 80157A38 00153698 41 82 01 E8 */ beq lbl_80157C20
/* 80157A3C 0015369C 7F C3 F3 78 */ mr r3, r30
/* 80157A40 001536A0 38 80 00 00 */ li r4, 0
/* 80157A44 001536A4 4B FF FE C5 */ bl func_80157908
/* 80157A48 001536A8 80 7E 00 08 */ lwz r3, 8(r30)
/* 80157A4C 001536AC 48 0A AF 85 */ bl func_802029D0
/* 80157A50 001536B0 3C 80 27 31 */ lis r4, 0x27310400@ha
/* 80157A54 001536B4 38 60 04 07 */ li r3, 0x407
/* 80157A58 001536B8 38 84 04 00 */ addi r4, r4, 0x27310400@l
/* 80157A5C 001536BC 48 08 3A 61 */ bl func_801DB4BC
/* 80157A60 001536C0 2C 03 00 00 */ cmpwi r3, 0
/* 80157A64 001536C4 7C 7D 1B 78 */ mr r29, r3
/* 80157A68 001536C8 41 82 01 B8 */ beq lbl_80157C20
/* 80157A6C 001536CC 48 08 30 BD */ bl func_801DAB28
/* 80157A70 001536D0 2C 03 00 00 */ cmpwi r3, 0
/* 80157A74 001536D4 41 82 00 14 */ beq lbl_80157A88
/* 80157A78 001536D8 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80157A7C 001536DC 38 80 00 14 */ li r4, 0x14
/* 80157A80 001536E0 48 08 32 15 */ bl func_801DAC94
/* 80157A84 001536E4 48 00 00 08 */ b lbl_80157A8C
lbl_80157A88:
/* 80157A88 001536E8 38 60 00 00 */ li r3, 0
lbl_80157A8C:
/* 80157A8C 001536EC 2C 03 00 00 */ cmpwi r3, 0
/* 80157A90 001536F0 41 82 00 0C */ beq lbl_80157A9C
/* 80157A94 001536F4 7F A4 EB 78 */ mr r4, r29
/* 80157A98 001536F8 48 0A 25 FD */ bl func_801FA094
lbl_80157A9C:
/* 80157A9C 001536FC 2C 03 00 00 */ cmpwi r3, 0
/* 80157AA0 00153700 90 7E 00 0C */ stw r3, 0xc(r30)
/* 80157AA4 00153704 41 82 01 7C */ beq lbl_80157C20
/* 80157AA8 00153708 80 83 00 00 */ lwz r4, 0(r3)
/* 80157AAC 0015370C A0 04 00 18 */ lhz r0, 0x18(r4)
/* 80157AB0 00153710 2C 80 00 00 */ cmpwi cr1, r0, 0
/* 80157AB4 00153714 41 86 01 6C */ beq cr1, lbl_80157C20
/* 80157AB8 00153718 80 63 00 04 */ lwz r3, 4(r3)
/* 80157ABC 0015371C 2C 03 00 00 */ cmpwi r3, 0
/* 80157AC0 00153720 40 82 00 0C */ bne lbl_80157ACC
/* 80157AC4 00153724 38 60 00 00 */ li r3, 0
/* 80157AC8 00153728 48 00 00 14 */ b lbl_80157ADC
lbl_80157ACC:
/* 80157ACC 0015372C 40 86 00 0C */ bne cr1, lbl_80157AD8
/* 80157AD0 00153730 38 60 00 00 */ li r3, 0
/* 80157AD4 00153734 48 00 00 08 */ b lbl_80157ADC
lbl_80157AD8:
/* 80157AD8 00153738 80 63 00 00 */ lwz r3, 0(r3)
lbl_80157ADC:
/* 80157ADC 0015373C 2C 03 00 00 */ cmpwi r3, 0
/* 80157AE0 00153740 90 7E 00 10 */ stw r3, 0x10(r30)
/* 80157AE4 00153744 41 82 01 3C */ beq lbl_80157C20
/* 80157AE8 00153748 A0 03 00 DC */ lhz r0, 0xdc(r3)
/* 80157AEC 0015374C 54 00 04 3C */ rlwinm r0, r0, 0, 0x10, 0x1e
/* 80157AF0 00153750 B0 03 00 DC */ sth r0, 0xdc(r3)
/* 80157AF4 00153754 80 7E 00 10 */ lwz r3, 0x10(r30)
/* 80157AF8 00153758 80 83 00 10 */ lwz r4, 0x10(r3)
/* 80157AFC 0015375C 2C 04 00 00 */ cmpwi r4, 0
/* 80157B00 00153760 40 82 00 0C */ bne lbl_80157B0C
/* 80157B04 00153764 38 00 00 00 */ li r0, 0
/* 80157B08 00153768 48 00 00 4C */ b lbl_80157B54
lbl_80157B0C:
/* 80157B0C 0015376C A0 03 00 E0 */ lhz r0, 0xe0(r3)
/* 80157B10 00153770 2C 00 00 00 */ cmpwi r0, 0
/* 80157B14 00153774 40 82 00 0C */ bne lbl_80157B20
/* 80157B18 00153778 38 00 00 00 */ li r0, 0
/* 80157B1C 0015377C 48 00 00 38 */ b lbl_80157B54
lbl_80157B20:
/* 80157B20 00153780 80 A3 00 08 */ lwz r5, 8(r3)
/* 80157B24 00153784 A0 84 00 00 */ lhz r4, 0(r4)
/* 80157B28 00153788 2C 05 00 00 */ cmpwi r5, 0
/* 80157B2C 0015378C 40 82 00 0C */ bne lbl_80157B38
/* 80157B30 00153790 38 00 00 00 */ li r0, 0
/* 80157B34 00153794 48 00 00 20 */ b lbl_80157B54
lbl_80157B38:
/* 80157B38 00153798 A0 03 00 DE */ lhz r0, 0xde(r3)
/* 80157B3C 0015379C 7C 04 00 40 */ cmplw r4, r0
/* 80157B40 001537A0 41 80 00 0C */ blt lbl_80157B4C
/* 80157B44 001537A4 38 00 00 00 */ li r0, 0
/* 80157B48 001537A8 48 00 00 0C */ b lbl_80157B54
lbl_80157B4C:
/* 80157B4C 001537AC 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d
/* 80157B50 001537B0 7C 05 00 2E */ lwzx r0, r5, r0
lbl_80157B54:
/* 80157B54 001537B4 2C 00 00 00 */ cmpwi r0, 0
/* 80157B58 001537B8 90 1E 00 14 */ stw r0, 0x14(r30)
/* 80157B5C 001537BC 41 82 00 C4 */ beq lbl_80157C20
/* 80157B60 001537C0 3B A0 00 00 */ li r29, 0
/* 80157B64 001537C4 3C 60 27 32 */ lis r3, 0x27320A00@ha
/* 80157B68 001537C8 93 BF 00 20 */ stw r29, 0x20(r31)
/* 80157B6C 001537CC 38 83 0A 00 */ addi r4, r3, 0x27320A00@l
/* 80157B70 001537D0 38 60 04 07 */ li r3, 0x407
/* 80157B74 001537D4 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80157B78 001537D8 48 08 39 45 */ bl func_801DB4BC
/* 80157B7C 001537DC 2C 03 00 00 */ cmpwi r3, 0
/* 80157B80 001537E0 7C 7C 1B 78 */ mr r28, r3
/* 80157B84 001537E4 41 82 00 9C */ beq lbl_80157C20
/* 80157B88 001537E8 48 08 2F A1 */ bl func_801DAB28
/* 80157B8C 001537EC 2C 03 00 00 */ cmpwi r3, 0
/* 80157B90 001537F0 41 82 00 14 */ beq lbl_80157BA4
/* 80157B94 001537F4 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 80157B98 001537F8 38 80 01 40 */ li r4, 0x140
/* 80157B9C 001537FC 48 08 30 F9 */ bl func_801DAC94
/* 80157BA0 00153800 48 00 00 08 */ b lbl_80157BA8
lbl_80157BA4:
/* 80157BA4 00153804 7F A3 EB 78 */ mr r3, r29
lbl_80157BA8:
/* 80157BA8 00153808 2C 03 00 00 */ cmpwi r3, 0
/* 80157BAC 0015380C 7C 64 1B 78 */ mr r4, r3
/* 80157BB0 00153810 41 82 00 10 */ beq lbl_80157BC0
/* 80157BB4 00153814 7F 84 E3 78 */ mr r4, r28
/* 80157BB8 00153818 48 0A 1D 35 */ bl func_801F98EC
/* 80157BBC 0015381C 7C 64 1B 78 */ mr r4, r3
lbl_80157BC0:
/* 80157BC0 00153820 2C 04 00 00 */ cmpwi r4, 0
/* 80157BC4 00153824 90 9E 00 18 */ stw r4, 0x18(r30)
/* 80157BC8 00153828 41 82 00 58 */ beq lbl_80157C20
/* 80157BCC 0015382C A0 04 00 10 */ lhz r0, 0x10(r4)
/* 80157BD0 00153830 38 60 00 0D */ li r3, 0xd
/* 80157BD4 00153834 C0 02 8F 40 */ lfs f0, lbl_80641540-_SDA2_BASE_(r2)
/* 80157BD8 00153838 54 00 07 FA */ rlwinm r0, r0, 0, 0x1f, 0x1d
/* 80157BDC 0015383C B0 04 00 10 */ sth r0, 0x10(r4)
/* 80157BE0 00153840 80 9E 00 18 */ lwz r4, 0x18(r30)
/* 80157BE4 00153844 80 04 01 04 */ lwz r0, 0x104(r4)
/* 80157BE8 00153848 60 00 00 04 */ ori r0, r0, 4
/* 80157BEC 0015384C 90 04 01 04 */ stw r0, 0x104(r4)
/* 80157BF0 00153850 D0 04 01 10 */ stfs f0, 0x110(r4)
/* 80157BF4 00153854 4B EB 36 DD */ bl func_8000B2D0
/* 80157BF8 00153858 38 00 00 01 */ li r0, 1
/* 80157BFC 0015385C 38 60 02 7C */ li r3, 0x27c
/* 80157C00 00153860 90 1E 00 04 */ stw r0, 4(r30)
/* 80157C04 00153864 48 00 AE 8D */ bl func_80162A90
/* 80157C08 00153868 28 03 00 03 */ cmplwi r3, 3
/* 80157C0C 0015386C 40 82 00 1C */ bne lbl_80157C28
/* 80157C10 00153870 4B EB 1B C9 */ bl func_800097D8
/* 80157C14 00153874 38 00 00 00 */ li r0, 0
/* 80157C18 00153878 98 1E 00 1D */ stb r0, 0x1d(r30)
/* 80157C1C 0015387C 48 00 00 0C */ b lbl_80157C28
lbl_80157C20:
/* 80157C20 00153880 38 00 00 07 */ li r0, 7
/* 80157C24 00153884 90 1E 00 04 */ stw r0, 4(r30)
lbl_80157C28:
/* 80157C28 00153888 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80157C2C 0015388C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80157C30 00153890 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80157C34 00153894 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80157C38 00153898 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80157C3C 0015389C 7C 08 03 A6 */ mtlr r0
/* 80157C40 001538A0 38 21 00 20 */ addi r1, r1, 0x20
/* 80157C44 001538A4 4E 80 00 20 */ blr
/* 80157C48 001538A8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80157C4C 001538AC 7C 08 02 A6 */ mflr r0
/* 80157C50 001538B0 38 80 00 00 */ li r4, 0
/* 80157C54 001538B4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80157C58 001538B8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80157C5C 001538BC 7C 7F 1B 78 */ mr r31, r3
/* 80157C60 001538C0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80157C64 001538C4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80157C68 001538C8 93 81 00 10 */ stw r28, 0x10(r1)
/* 80157C6C 001538CC 80 AD A3 D8 */ lwz r5, lbl_8063F698-_SDA_BASE_(r13)
/* 80157C70 001538D0 88 05 00 82 */ lbz r0, 0x82(r5)
/* 80157C74 001538D4 2C 00 00 00 */ cmpwi r0, 0
/* 80157C78 001538D8 40 82 00 10 */ bne lbl_80157C88
/* 80157C7C 001538DC 88 05 00 83 */ lbz r0, 0x83(r5)
/* 80157C80 001538E0 2C 00 00 00 */ cmpwi r0, 0
/* 80157C84 001538E4 41 82 00 08 */ beq lbl_80157C8C
lbl_80157C88:
/* 80157C88 001538E8 38 80 00 01 */ li r4, 1
lbl_80157C8C:
/* 80157C8C 001538EC 2C 04 00 00 */ cmpwi r4, 0
/* 80157C90 001538F0 40 82 03 58 */ bne lbl_80157FE8
/* 80157C94 001538F4 83 A3 00 04 */ lwz r29, 4(r3)
/* 80157C98 001538F8 38 60 02 7C */ li r3, 0x27c
/* 80157C9C 001538FC 48 00 AD F5 */ bl func_80162A90
/* 80157CA0 00153900 28 03 00 03 */ cmplwi r3, 3
/* 80157CA4 00153904 40 82 00 98 */ bne lbl_80157D3C
/* 80157CA8 00153908 80 1F 00 04 */ lwz r0, 4(r31)
/* 80157CAC 0015390C 2C 00 00 08 */ cmpwi r0, 8
/* 80157CB0 00153910 41 82 00 8C */ beq lbl_80157D3C
/* 80157CB4 00153914 2C 00 00 00 */ cmpwi r0, 0
/* 80157CB8 00153918 41 82 00 84 */ beq lbl_80157D3C
/* 80157CBC 0015391C 48 0E CB 11 */ bl func_802447CC
/* 80157CC0 00153920 7C 7E 1B 78 */ mr r30, r3
/* 80157CC4 00153924 3B 80 00 00 */ li r28, 0
/* 80157CC8 00153928 48 00 00 68 */ b lbl_80157D30
lbl_80157CCC:
/* 80157CCC 0015392C 57 84 06 3E */ clrlwi r4, r28, 0x18
/* 80157CD0 00153930 3C 60 04 00 */ lis r3, 0x400
/* 80157CD4 00153934 7C 85 23 78 */ mr r5, r4
/* 80157CD8 00153938 38 C0 00 01 */ li r6, 1
/* 80157CDC 0015393C 4B F0 1D 91 */ bl func_80059A6C
/* 80157CE0 00153940 2C 03 00 00 */ cmpwi r3, 0
/* 80157CE4 00153944 41 82 00 48 */ beq lbl_80157D2C
/* 80157CE8 00153948 38 00 00 07 */ li r0, 7
/* 80157CEC 0015394C 38 60 00 0D */ li r3, 0xd
/* 80157CF0 00153950 90 1F 00 04 */ stw r0, 4(r31)
/* 80157CF4 00153954 4B EB 37 CD */ bl func_8000B4C0
/* 80157CF8 00153958 2C 03 00 00 */ cmpwi r3, 0
/* 80157CFC 0015395C 41 82 00 40 */ beq lbl_80157D3C
/* 80157D00 00153960 C0 42 8F 48 */ lfs f2, lbl_80641548-_SDA2_BASE_(r2)
/* 80157D04 00153964 38 60 00 0D */ li r3, 0xd
/* 80157D08 00153968 C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 80157D0C 0015396C C0 02 8F 44 */ lfs f0, lbl_80641544-_SDA2_BASE_(r2)
/* 80157D10 00153970 EC 22 00 72 */ fmuls f1, f2, f1
/* 80157D14 00153974 EC 00 08 2A */ fadds f0, f0, f1
/* 80157D18 00153978 FC 00 00 1E */ fctiwz f0, f0
/* 80157D1C 0015397C D8 01 00 08 */ stfd f0, 8(r1)
/* 80157D20 00153980 80 81 00 0C */ lwz r4, 0xc(r1)
/* 80157D24 00153984 4B EB 37 49 */ bl func_8000B46C
/* 80157D28 00153988 48 00 00 14 */ b lbl_80157D3C
lbl_80157D2C:
/* 80157D2C 0015398C 3B 9C 00 01 */ addi r28, r28, 1
lbl_80157D30:
/* 80157D30 00153990 57 80 06 3E */ clrlwi r0, r28, 0x18
/* 80157D34 00153994 7C 00 F0 00 */ cmpw r0, r30
/* 80157D38 00153998 41 80 FF 94 */ blt lbl_80157CCC
lbl_80157D3C:
/* 80157D3C 0015399C 80 1F 00 04 */ lwz r0, 4(r31)
/* 80157D40 001539A0 28 00 00 08 */ cmplwi r0, 8
/* 80157D44 001539A4 41 81 02 A4 */ bgt lbl_80157FE8
/* 80157D48 001539A8 3C 60 80 42 */ lis r3, lbl_8041E8C0@ha
/* 80157D4C 001539AC 54 00 10 3A */ slwi r0, r0, 2
/* 80157D50 001539B0 38 63 E8 C0 */ addi r3, r3, lbl_8041E8C0@l
/* 80157D54 001539B4 7C 63 00 2E */ lwzx r3, r3, r0
/* 80157D58 001539B8 7C 69 03 A6 */ mtctr r3
/* 80157D5C 001539BC 4E 80 04 20 */ bctr
/* 80157D60 001539C0 7F E3 FB 78 */ mr r3, r31
/* 80157D64 001539C4 38 80 00 01 */ li r4, 1
/* 80157D68 001539C8 4B FF FB A1 */ bl func_80157908
/* 80157D6C 001539CC 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 80157D70 001539D0 38 80 00 00 */ li r4, 0
/* 80157D74 001539D4 C0 22 8F 40 */ lfs f1, lbl_80641540-_SDA2_BASE_(r2)
/* 80157D78 001539D8 38 A0 00 00 */ li r5, 0
/* 80157D7C 001539DC A0 03 00 DC */ lhz r0, 0xdc(r3)
/* 80157D80 001539E0 38 C0 00 00 */ li r6, 0
/* 80157D84 001539E4 C0 42 8F 4C */ lfs f2, lbl_8064154C-_SDA2_BASE_(r2)
/* 80157D88 001539E8 38 E0 00 00 */ li r7, 0
/* 80157D8C 001539EC 60 00 00 01 */ ori r0, r0, 1
/* 80157D90 001539F0 39 00 00 00 */ li r8, 0
/* 80157D94 001539F4 B0 03 00 DC */ sth r0, 0xdc(r3)
/* 80157D98 001539F8 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 80157D9C 001539FC 48 09 D0 59 */ bl func_801F4DF4
/* 80157DA0 00153A00 C0 22 8F 50 */ lfs f1, lbl_80641550-_SDA2_BASE_(r2)
/* 80157DA4 00153A04 38 60 00 01 */ li r3, 1
/* 80157DA8 00153A08 4B EF 83 E5 */ bl func_8005018C
/* 80157DAC 00153A0C 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80157DB0 00153A10 2C 03 00 00 */ cmpwi r3, 0
/* 80157DB4 00153A14 41 82 00 2C */ beq lbl_80157DE0
/* 80157DB8 00153A18 A0 03 00 10 */ lhz r0, 0x10(r3)
/* 80157DBC 00153A1C C0 02 8F 40 */ lfs f0, lbl_80641540-_SDA2_BASE_(r2)
/* 80157DC0 00153A20 60 00 00 02 */ ori r0, r0, 2
/* 80157DC4 00153A24 B0 03 00 10 */ sth r0, 0x10(r3)
/* 80157DC8 00153A28 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80157DCC 00153A2C 80 03 01 04 */ lwz r0, 0x104(r3)
/* 80157DD0 00153A30 60 00 00 01 */ ori r0, r0, 1
/* 80157DD4 00153A34 54 00 07 F8 */ rlwinm r0, r0, 0, 0x1f, 0x1c
/* 80157DD8 00153A38 90 03 01 04 */ stw r0, 0x104(r3)
/* 80157DDC 00153A3C D0 03 01 08 */ stfs f0, 0x108(r3)
lbl_80157DE0:
/* 80157DE0 00153A40 C0 22 8F 4C */ lfs f1, lbl_8064154C-_SDA2_BASE_(r2)
/* 80157DE4 00153A44 38 60 00 0D */ li r3, 0xd
/* 80157DE8 00153A48 38 80 00 00 */ li r4, 0
/* 80157DEC 00153A4C 4B EB 33 85 */ bl func_8000B170
/* 80157DF0 00153A50 38 00 00 02 */ li r0, 2
/* 80157DF4 00153A54 90 1F 00 04 */ stw r0, 4(r31)
/* 80157DF8 00153A58 48 00 01 F0 */ b lbl_80157FE8
/* 80157DFC 00153A5C 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80157E00 00153A60 3B 80 00 00 */ li r28, 0
/* 80157E04 00153A64 2C 03 00 00 */ cmpwi r3, 0
/* 80157E08 00153A68 41 82 00 48 */ beq lbl_80157E50
/* 80157E0C 00153A6C 80 03 01 04 */ lwz r0, 0x104(r3)
/* 80157E10 00153A70 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80157E14 00153A74 41 82 00 0C */ beq lbl_80157E20
/* 80157E18 00153A78 38 00 00 01 */ li r0, 1
/* 80157E1C 00153A7C 48 00 00 28 */ b lbl_80157E44
lbl_80157E20:
/* 80157E20 00153A80 80 63 01 38 */ lwz r3, 0x138(r3)
/* 80157E24 00153A84 2C 03 00 00 */ cmpwi r3, 0
/* 80157E28 00153A88 41 82 00 18 */ beq lbl_80157E40
/* 80157E2C 00153A8C A0 03 01 48 */ lhz r0, 0x148(r3)
/* 80157E30 00153A90 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 80157E34 00153A94 41 82 00 0C */ beq lbl_80157E40
/* 80157E38 00153A98 38 00 00 01 */ li r0, 1
/* 80157E3C 00153A9C 48 00 00 08 */ b lbl_80157E44
lbl_80157E40:
/* 80157E40 00153AA0 38 00 00 00 */ li r0, 0
lbl_80157E44:
/* 80157E44 00153AA4 2C 00 00 00 */ cmpwi r0, 0
/* 80157E48 00153AA8 41 82 00 08 */ beq lbl_80157E50
/* 80157E4C 00153AAC 3B 80 00 01 */ li r28, 1
lbl_80157E50:
/* 80157E50 00153AB0 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 80157E54 00153AB4 48 09 DF 61 */ bl func_801F5DB4
/* 80157E58 00153AB8 2C 03 00 00 */ cmpwi r3, 0
/* 80157E5C 00153ABC 41 82 00 18 */ beq lbl_80157E74
/* 80157E60 00153AC0 80 7F 00 10 */ lwz r3, 0x10(r31)
/* 80157E64 00153AC4 48 09 E0 E9 */ bl func_801F5F4C
/* 80157E68 00153AC8 2C 03 00 00 */ cmpwi r3, 0
/* 80157E6C 00153ACC 40 82 00 08 */ bne lbl_80157E74
/* 80157E70 00153AD0 3B 80 00 01 */ li r28, 1
lbl_80157E74:
/* 80157E74 00153AD4 2C 1C 00 00 */ cmpwi r28, 0
/* 80157E78 00153AD8 40 82 01 70 */ bne lbl_80157FE8
/* 80157E7C 00153ADC 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80157E80 00153AE0 2C 03 00 00 */ cmpwi r3, 0
/* 80157E84 00153AE4 41 82 00 18 */ beq lbl_80157E9C
/* 80157E88 00153AE8 81 83 01 00 */ lwz r12, 0x100(r3)
/* 80157E8C 00153AEC 38 80 00 01 */ li r4, 1
/* 80157E90 00153AF0 81 8C 00 08 */ lwz r12, 8(r12)
/* 80157E94 00153AF4 7D 89 03 A6 */ mtctr r12
/* 80157E98 00153AF8 4E 80 04 21 */ bctrl
lbl_80157E9C:
/* 80157E9C 00153AFC 38 60 00 00 */ li r3, 0
/* 80157EA0 00153B00 38 00 00 03 */ li r0, 3
/* 80157EA4 00153B04 90 7F 00 18 */ stw r3, 0x18(r31)
/* 80157EA8 00153B08 90 1F 00 04 */ stw r0, 4(r31)
/* 80157EAC 00153B0C 48 00 01 3C */ b lbl_80157FE8
/* 80157EB0 00153B10 C0 22 8F 50 */ lfs f1, lbl_80641550-_SDA2_BASE_(r2)
/* 80157EB4 00153B14 38 60 00 02 */ li r3, 2
/* 80157EB8 00153B18 4B EF 82 D5 */ bl func_8005018C
/* 80157EBC 00153B1C 38 00 00 04 */ li r0, 4
/* 80157EC0 00153B20 90 1F 00 04 */ stw r0, 4(r31)
/* 80157EC4 00153B24 48 00 01 24 */ b lbl_80157FE8
/* 80157EC8 00153B28 4B EF 83 F5 */ bl func_800502BC
/* 80157ECC 00153B2C 2C 03 00 00 */ cmpwi r3, 0
/* 80157ED0 00153B30 41 82 01 18 */ beq lbl_80157FE8
/* 80157ED4 00153B34 C0 22 8F 50 */ lfs f1, lbl_80641550-_SDA2_BASE_(r2)
/* 80157ED8 00153B38 38 60 00 01 */ li r3, 1
/* 80157EDC 00153B3C 4B EF 82 B1 */ bl func_8005018C
/* 80157EE0 00153B40 7F E3 FB 78 */ mr r3, r31
/* 80157EE4 00153B44 38 80 00 00 */ li r4, 0
/* 80157EE8 00153B48 4B FF FA 21 */ bl func_80157908
/* 80157EEC 00153B4C 38 00 00 05 */ li r0, 5
/* 80157EF0 00153B50 90 1F 00 04 */ stw r0, 4(r31)
/* 80157EF4 00153B54 48 00 00 F4 */ b lbl_80157FE8
/* 80157EF8 00153B58 38 60 00 0D */ li r3, 0xd
/* 80157EFC 00153B5C 38 80 00 00 */ li r4, 0
/* 80157F00 00153B60 4B EB 35 6D */ bl func_8000B46C
/* 80157F04 00153B64 38 60 01 F5 */ li r3, 0x1f5
/* 80157F08 00153B68 38 80 00 01 */ li r4, 1
/* 80157F0C 00153B6C 38 A0 00 00 */ li r5, 0
/* 80157F10 00153B70 38 C0 00 00 */ li r6, 0
/* 80157F14 00153B74 38 E0 00 00 */ li r7, 0
/* 80157F18 00153B78 48 10 18 81 */ bl func_80259798
/* 80157F1C 00153B7C 38 60 01 F5 */ li r3, 0x1f5
/* 80157F20 00153B80 48 10 19 81 */ bl func_802598A0
/* 80157F24 00153B84 4B EA F5 DD */ bl func_80007500
/* 80157F28 00153B88 38 60 00 01 */ li r3, 1
/* 80157F2C 00153B8C 38 00 00 06 */ li r0, 6
/* 80157F30 00153B90 98 7F 00 1C */ stb r3, 0x1c(r31)
/* 80157F34 00153B94 90 1F 00 04 */ stw r0, 4(r31)
/* 80157F38 00153B98 48 00 00 B0 */ b lbl_80157FE8
/* 80157F3C 00153B9C 38 60 01 F5 */ li r3, 0x1f5
/* 80157F40 00153BA0 48 10 19 99 */ bl func_802598D8
/* 80157F44 00153BA4 2C 03 00 00 */ cmpwi r3, 0
/* 80157F48 00153BA8 40 82 00 A0 */ bne lbl_80157FE8
/* 80157F4C 00153BAC 38 60 01 F5 */ li r3, 0x1f5
/* 80157F50 00153BB0 48 10 18 F5 */ bl func_80259844
/* 80157F54 00153BB4 38 60 00 00 */ li r3, 0
/* 80157F58 00153BB8 38 00 00 07 */ li r0, 7
/* 80157F5C 00153BBC 98 7F 00 1C */ stb r3, 0x1c(r31)
/* 80157F60 00153BC0 90 1F 00 04 */ stw r0, 4(r31)
/* 80157F64 00153BC4 48 00 00 84 */ b lbl_80157FE8
/* 80157F68 00153BC8 2C 1D 00 03 */ cmpwi r29, 3
/* 80157F6C 00153BCC 41 82 00 18 */ beq lbl_80157F84
/* 80157F70 00153BD0 2C 1D 00 04 */ cmpwi r29, 4
/* 80157F74 00153BD4 41 82 00 10 */ beq lbl_80157F84
/* 80157F78 00153BD8 C0 22 8F 50 */ lfs f1, lbl_80641550-_SDA2_BASE_(r2)
/* 80157F7C 00153BDC 38 60 00 02 */ li r3, 2
/* 80157F80 00153BE0 4B EF 82 0D */ bl func_8005018C
lbl_80157F84:
/* 80157F84 00153BE4 38 00 00 08 */ li r0, 8
/* 80157F88 00153BE8 90 1F 00 04 */ stw r0, 4(r31)
/* 80157F8C 00153BEC 48 00 00 5C */ b lbl_80157FE8
/* 80157F90 00153BF0 4B EF 83 2D */ bl func_800502BC
/* 80157F94 00153BF4 2C 03 00 00 */ cmpwi r3, 0
/* 80157F98 00153BF8 41 82 00 50 */ beq lbl_80157FE8
/* 80157F9C 00153BFC 4B EA F5 4D */ bl func_800074E8
/* 80157FA0 00153C00 38 60 02 7C */ li r3, 0x27c
/* 80157FA4 00153C04 48 00 AA ED */ bl func_80162A90
/* 80157FA8 00153C08 28 03 00 03 */ cmplwi r3, 3
/* 80157FAC 00153C0C 40 82 00 28 */ bne lbl_80157FD4
/* 80157FB0 00153C10 38 60 01 99 */ li r3, 0x199
/* 80157FB4 00153C14 38 80 00 01 */ li r4, 1
/* 80157FB8 00153C18 38 A0 00 01 */ li r5, 1
/* 80157FBC 00153C1C 48 00 A9 85 */ bl func_80162940
/* 80157FC0 00153C20 4B EF E2 B5 */ bl func_80056274
/* 80157FC4 00153C24 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 80157FC8 00153C28 38 80 08 34 */ li r4, 0x834
/* 80157FCC 00153C2C 48 0C E7 DD */ bl func_802267A8
/* 80157FD0 00153C30 48 00 00 10 */ b lbl_80157FE0
lbl_80157FD4:
/* 80157FD4 00153C34 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 80157FD8 00153C38 38 80 07 D0 */ li r4, 0x7d0
/* 80157FDC 00153C3C 48 0C E7 CD */ bl func_802267A8
lbl_80157FE0:
/* 80157FE0 00153C40 38 00 00 00 */ li r0, 0
/* 80157FE4 00153C44 90 1F 00 04 */ stw r0, 4(r31)
lbl_80157FE8:
/* 80157FE8 00153C48 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80157FEC 00153C4C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80157FF0 00153C50 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80157FF4 00153C54 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80157FF8 00153C58 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80157FFC 00153C5C 7C 08 03 A6 */ mtlr r0
/* 80158000 00153C60 38 21 00 20 */ addi r1, r1, 0x20
/* 80158004 00153C64 4E 80 00 20 */ blr
/* 80158008 00153C68 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015800C 00153C6C 7C 08 02 A6 */ mflr r0
/* 80158010 00153C70 90 01 00 14 */ stw r0, 0x14(r1)
/* 80158014 00153C74 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80158018 00153C78 7C 7F 1B 78 */ mr r31, r3
/* 8015801C 00153C7C 88 03 00 1D */ lbz r0, 0x1d(r3)
/* 80158020 00153C80 2C 00 00 00 */ cmpwi r0, 0
/* 80158024 00153C84 41 82 00 10 */ beq lbl_80158034
/* 80158028 00153C88 4B EB 17 B1 */ bl func_800097D8
/* 8015802C 00153C8C 38 00 00 00 */ li r0, 0
/* 80158030 00153C90 98 1F 00 1D */ stb r0, 0x1d(r31)
lbl_80158034:
/* 80158034 00153C94 38 60 00 02 */ li r3, 2
/* 80158038 00153C98 48 0E 30 21 */ bl func_8023B058
/* 8015803C 00153C9C 2C 03 00 00 */ cmpwi r3, 0
/* 80158040 00153CA0 41 82 00 1C */ beq lbl_8015805C
/* 80158044 00153CA4 3C 80 80 49 */ lis r4, lbl_80496754@ha
/* 80158048 00153CA8 38 00 00 00 */ li r0, 0
/* 8015804C 00153CAC 38 84 67 54 */ addi r4, r4, lbl_80496754@l
/* 80158050 00153CB0 80 84 00 04 */ lwz r4, 4(r4)
/* 80158054 00153CB4 90 03 00 20 */ stw r0, 0x20(r3)
/* 80158058 00153CB8 90 83 00 0C */ stw r4, 0xc(r3)
lbl_8015805C:
/* 8015805C 00153CBC 80 6D A1 50 */ lwz r3, lbl_8063F410-_SDA_BASE_(r13)
/* 80158060 00153CC0 88 03 04 68 */ lbz r0, 0x468(r3)
/* 80158064 00153CC4 2C 00 00 00 */ cmpwi r0, 0
/* 80158068 00153CC8 41 82 00 08 */ beq lbl_80158070
/* 8015806C 00153CCC 48 0A 6E FD */ bl func_801FEF68
lbl_80158070:
/* 80158070 00153CD0 88 1F 00 1C */ lbz r0, 0x1c(r31)
/* 80158074 00153CD4 2C 00 00 00 */ cmpwi r0, 0
/* 80158078 00153CD8 41 82 00 14 */ beq lbl_8015808C
/* 8015807C 00153CDC 38 60 01 F5 */ li r3, 0x1f5
/* 80158080 00153CE0 48 10 17 C5 */ bl func_80259844
/* 80158084 00153CE4 38 00 00 00 */ li r0, 0
/* 80158088 00153CE8 98 1F 00 1C */ stb r0, 0x1c(r31)
lbl_8015808C:
/* 8015808C 00153CEC 80 7F 00 18 */ lwz r3, 0x18(r31)
/* 80158090 00153CF0 2C 03 00 00 */ cmpwi r3, 0
/* 80158094 00153CF4 41 82 00 24 */ beq lbl_801580B8
/* 80158098 00153CF8 41 82 00 18 */ beq lbl_801580B0
/* 8015809C 00153CFC 81 83 01 00 */ lwz r12, 0x100(r3)
/* 801580A0 00153D00 38 80 00 01 */ li r4, 1
/* 801580A4 00153D04 81 8C 00 08 */ lwz r12, 8(r12)
/* 801580A8 00153D08 7D 89 03 A6 */ mtctr r12
/* 801580AC 00153D0C 4E 80 04 21 */ bctrl
lbl_801580B0:
/* 801580B0 00153D10 38 00 00 00 */ li r0, 0
/* 801580B4 00153D14 90 1F 00 18 */ stw r0, 0x18(r31)
lbl_801580B8:
/* 801580B8 00153D18 80 7F 00 0C */ lwz r3, 0xc(r31)
/* 801580BC 00153D1C 2C 03 00 00 */ cmpwi r3, 0
/* 801580C0 00153D20 41 82 00 1C */ beq lbl_801580DC
/* 801580C4 00153D24 38 80 00 01 */ li r4, 1
/* 801580C8 00153D28 48 0A 21 CD */ bl func_801FA294
/* 801580CC 00153D2C 38 00 00 00 */ li r0, 0
/* 801580D0 00153D30 90 1F 00 0C */ stw r0, 0xc(r31)
/* 801580D4 00153D34 90 1F 00 10 */ stw r0, 0x10(r31)
/* 801580D8 00153D38 90 1F 00 14 */ stw r0, 0x14(r31)
lbl_801580DC:
/* 801580DC 00153D3C 80 7F 00 08 */ lwz r3, 8(r31)
/* 801580E0 00153D40 2C 03 00 00 */ cmpwi r3, 0
/* 801580E4 00153D44 41 82 00 14 */ beq lbl_801580F8
/* 801580E8 00153D48 38 80 00 01 */ li r4, 1
/* 801580EC 00153D4C 48 0A 21 A9 */ bl func_801FA294
/* 801580F0 00153D50 38 00 00 00 */ li r0, 0
/* 801580F4 00153D54 90 1F 00 08 */ stw r0, 8(r31)
lbl_801580F8:
/* 801580F8 00153D58 38 60 04 07 */ li r3, 0x407
/* 801580FC 00153D5C 48 0F 17 95 */ bl func_80249890
/* 80158100 00153D60 38 60 04 07 */ li r3, 0x407
/* 80158104 00153D64 48 08 35 71 */ bl func_801DB674
/* 80158108 00153D68 38 00 00 00 */ li r0, 0
/* 8015810C 00153D6C 90 1F 00 04 */ stw r0, 4(r31)
/* 80158110 00153D70 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80158114 00153D74 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80158118 00153D78 7C 08 03 A6 */ mtlr r0
/* 8015811C 00153D7C 38 21 00 10 */ addi r1, r1, 0x10
/* 80158120 00153D80 4E 80 00 20 */ blr
/* 80158124 00153D84 38 00 00 00 */ li r0, 0
/* 80158128 00153D88 90 03 00 04 */ stw r0, 4(r3)
/* 8015812C 00153D8C 4E 80 00 20 */ blr
.global func_80158130
func_80158130:
/* 80158130 00153D90 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80158134 00153D94 7C 08 02 A6 */ mflr r0
/* 80158138 00153D98 38 60 00 01 */ li r3, 1
/* 8015813C 00153D9C 38 8D 9D 18 */ addi r4, r13, lbl_8063EFD8-_SDA_BASE_
/* 80158140 00153DA0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80158144 00153DA4 38 A0 00 04 */ li r5, 4
/* 80158148 00153DA8 38 00 00 00 */ li r0, 0
/* 8015814C 00153DAC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80158150 00153DB0 3F E0 80 48 */ lis r31, lbl_80487558@ha
/* 80158154 00153DB4 3B FF 75 58 */ addi r31, r31, lbl_80487558@l
/* 80158158 00153DB8 98 6D 9D 18 */ stb r3, lbl_8063EFD8-_SDA_BASE_(r13)
/* 8015815C 00153DBC 38 7F 00 10 */ addi r3, r31, 0x10
/* 80158160 00153DC0 B0 A4 00 02 */ sth r5, 2(r4)
/* 80158164 00153DC4 98 04 00 04 */ stb r0, 4(r4)
/* 80158168 00153DC8 4B FF F6 F1 */ bl func_80157858
/* 8015816C 00153DCC 3C 80 80 15 */ lis r4, lbl_8015788C@ha
/* 80158170 00153DD0 38 7F 00 10 */ addi r3, r31, 0x10
/* 80158174 00153DD4 38 84 78 8C */ addi r4, r4, lbl_8015788C@l
/* 80158178 00153DD8 38 BF 00 00 */ addi r5, r31, 0
/* 8015817C 00153DDC 48 06 EA CD */ bl __register_global_object_tmp
/* 80158180 00153DE0 38 7F 00 3C */ addi r3, r31, 0x3c
/* 80158184 00153DE4 38 BF 00 10 */ addi r5, r31, 0x10
/* 80158188 00153DE8 38 80 0C 1C */ li r4, 0xc1c
/* 8015818C 00153DEC 48 0C DC B9 */ bl func_80225E44
/* 80158190 00153DF0 3C 80 80 22 */ lis r4, func_80225EE0@ha
/* 80158194 00153DF4 38 7F 00 3C */ addi r3, r31, 0x3c
/* 80158198 00153DF8 38 84 5E E0 */ addi r4, r4, func_80225EE0@l
/* 8015819C 00153DFC 38 BF 00 30 */ addi r5, r31, 0x30
/* 801581A0 00153E00 48 06 EA A9 */ bl __register_global_object_tmp
/* 801581A4 00153E04 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801581A8 00153E08 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801581AC 00153E0C 7C 08 03 A6 */ mtlr r0
/* 801581B0 00153E10 38 21 00 10 */ addi r1, r1, 0x10
/* 801581B4 00153E14 4E 80 00 20 */ blr

873
asm/code_801581B8.s Normal file
View File

@ -0,0 +1,873 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_801581B8
func_801581B8:
/* 801581B8 00153E18 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801581BC 00153E1C 38 A0 00 00 */ li r5, 0
/* 801581C0 00153E20 38 80 FF FF */ li r4, -1
/* 801581C4 00153E24 38 00 00 FF */ li r0, 0xff
/* 801581C8 00153E28 90 A3 00 08 */ stw r5, 8(r3)
/* 801581CC 00153E2C C8 02 8F 58 */ lfd f0, lbl_80641558-_SDA2_BASE_(r2)
/* 801581D0 00153E30 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801581D4 00153E34 B0 83 00 12 */ sth r4, 0x12(r3)
/* 801581D8 00153E38 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801581DC 00153E3C 90 A3 00 18 */ stw r5, 0x18(r3)
/* 801581E0 00153E40 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801581E4 00153E44 90 A3 00 14 */ stw r5, 0x14(r3)
/* 801581E8 00153E48 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801581EC 00153E4C 90 83 00 0C */ stw r4, 0xc(r3)
/* 801581F0 00153E50 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801581F4 00153E54 98 03 00 1C */ stb r0, 0x1c(r3)
/* 801581F8 00153E58 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801581FC 00153E5C D8 03 00 00 */ stfd f0, 0(r3)
/* 80158200 00153E60 98 A3 00 10 */ stb r5, 0x10(r3)
/* 80158204 00153E64 4E 80 00 20 */ blr
.global func_80158208
func_80158208:
/* 80158208 00153E68 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8015820C 00153E6C 7C 08 02 A6 */ mflr r0
/* 80158210 00153E70 90 01 00 14 */ stw r0, 0x14(r1)
/* 80158214 00153E74 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80158218 00153E78 80 CD 82 E0 */ lwz r6, lbl_8063D5A0-_SDA_BASE_(r13)
/* 8015821C 00153E7C 90 66 00 18 */ stw r3, 0x18(r6)
/* 80158220 00153E80 38 60 00 00 */ li r3, 0
/* 80158224 00153E84 80 CD 82 E0 */ lwz r6, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158228 00153E88 90 86 00 14 */ stw r4, 0x14(r6)
/* 8015822C 00153E8C 38 80 00 00 */ li r4, 0
/* 80158230 00153E90 80 CD 82 E0 */ lwz r6, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158234 00153E94 98 A6 00 10 */ stb r5, 0x10(r6)
/* 80158238 00153E98 38 A0 FF FF */ li r5, -1
/* 8015823C 00153E9C 48 0F BD 31 */ bl func_80253F6C
/* 80158240 00153EA0 80 AD 82 E0 */ lwz r5, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158244 00153EA4 3F E0 0B CC */ lis r31, 0x0BCC1A00@ha
/* 80158248 00153EA8 38 9F 1A 00 */ addi r4, r31, 0x0BCC1A00@l
/* 8015824C 00153EAC 90 65 00 0C */ stw r3, 0xc(r5)
/* 80158250 00153EB0 38 60 04 09 */ li r3, 0x409
/* 80158254 00153EB4 48 0F 15 C9 */ bl func_8024981C
/* 80158258 00153EB8 38 9F 1A 00 */ addi r4, r31, 0x1a00
/* 8015825C 00153EBC 38 60 04 09 */ li r3, 0x409
/* 80158260 00153EC0 4B EF DB 39 */ bl func_80055D98
/* 80158264 00153EC4 80 ED 82 E0 */ lwz r7, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158268 00153EC8 3C A0 80 16 */ lis r5, lbl_80158674@ha
/* 8015826C 00153ECC 3C C0 80 16 */ lis r6, lbl_80158C68@ha
/* 80158270 00153ED0 38 80 00 00 */ li r4, 0
/* 80158274 00153ED4 90 67 00 08 */ stw r3, 8(r7)
/* 80158278 00153ED8 38 A5 86 74 */ addi r5, r5, lbl_80158674@l
/* 8015827C 00153EDC 38 C6 8C 68 */ addi r6, r6, lbl_80158C68@l
/* 80158280 00153EE0 38 E0 FF FF */ li r7, -1
/* 80158284 00153EE4 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158288 00153EE8 39 00 00 00 */ li r8, 0
/* 8015828C 00153EEC 39 20 00 01 */ li r9, 1
/* 80158290 00153EF0 39 40 00 00 */ li r10, 0
/* 80158294 00153EF4 80 63 00 08 */ lwz r3, 8(r3)
/* 80158298 00153EF8 48 0F B9 A1 */ bl func_80253C38
/* 8015829C 00153EFC 80 AD 82 E0 */ lwz r5, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801582A0 00153F00 38 9F 1A 00 */ addi r4, r31, 0x1a00
/* 801582A4 00153F04 B0 65 00 12 */ sth r3, 0x12(r5)
/* 801582A8 00153F08 38 60 04 09 */ li r3, 0x409
/* 801582AC 00153F0C 48 08 33 99 */ bl func_801DB644
/* 801582B0 00153F10 38 60 02 61 */ li r3, 0x261
/* 801582B4 00153F14 48 00 A7 DD */ bl func_80162A90
/* 801582B8 00153F18 28 03 00 02 */ cmplwi r3, 2
/* 801582BC 00153F1C 40 82 00 0C */ bne lbl_801582C8
/* 801582C0 00153F20 38 60 00 00 */ li r3, 0
/* 801582C4 00153F24 4B F3 1E 61 */ bl func_8008A124
lbl_801582C8:
/* 801582C8 00153F28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801582CC 00153F2C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801582D0 00153F30 7C 08 03 A6 */ mtlr r0
/* 801582D4 00153F34 38 21 00 10 */ addi r1, r1, 0x10
/* 801582D8 00153F38 4E 80 00 20 */ blr
.global func_801582DC
func_801582DC:
/* 801582DC 00153F3C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801582E0 00153F40 7C 08 02 A6 */ mflr r0
/* 801582E4 00153F44 38 80 00 08 */ li r4, 8
/* 801582E8 00153F48 38 A0 00 01 */ li r5, 1
/* 801582EC 00153F4C 90 01 00 14 */ stw r0, 0x14(r1)
/* 801582F0 00153F50 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801582F4 00153F54 A8 63 00 12 */ lha r3, 0x12(r3)
/* 801582F8 00153F58 48 0F BA F9 */ bl func_80253DF0
/* 801582FC 00153F5C 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158300 00153F60 38 80 00 01 */ li r4, 1
/* 80158304 00153F64 38 A0 00 00 */ li r5, 0
/* 80158308 00153F68 A8 63 00 12 */ lha r3, 0x12(r3)
/* 8015830C 00153F6C 48 0F BA A5 */ bl func_80253DB0
/* 80158310 00153F70 80 AD 82 E0 */ lwz r5, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158314 00153F74 3C 60 80 16 */ lis r3, lbl_80158450@ha
/* 80158318 00153F78 3C 80 80 16 */ lis r4, lbl_80158644@ha
/* 8015831C 00153F7C 80 A5 00 0C */ lwz r5, 0xc(r5)
/* 80158320 00153F80 38 63 84 50 */ addi r3, r3, lbl_80158450@l
/* 80158324 00153F84 38 84 86 44 */ addi r4, r4, lbl_80158644@l
/* 80158328 00153F88 48 0F BC 45 */ bl func_80253F6C
/* 8015832C 00153F8C 38 60 00 00 */ li r3, 0
/* 80158330 00153F90 4B EF E1 29 */ bl func_80056458
/* 80158334 00153F94 4B EF DF 89 */ bl func_800562BC
/* 80158338 00153F98 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 8015833C 00153F9C 38 00 00 00 */ li r0, 0
/* 80158340 00153FA0 98 03 00 1C */ stb r0, 0x1c(r3)
/* 80158344 00153FA4 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158348 00153FA8 80 03 00 1C */ lwz r0, 0x1c(r3)
/* 8015834C 00153FAC 54 00 02 4E */ rlwinm r0, r0, 0, 9, 7
/* 80158350 00153FB0 90 03 00 1C */ stw r0, 0x1c(r3)
/* 80158354 00153FB4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80158358 00153FB8 7C 08 03 A6 */ mtlr r0
/* 8015835C 00153FBC 38 21 00 10 */ addi r1, r1, 0x10
/* 80158360 00153FC0 4E 80 00 20 */ blr
.global func_80158364
func_80158364:
/* 80158364 00153FC4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80158368 00153FC8 7C 08 02 A6 */ mflr r0
/* 8015836C 00153FCC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80158370 00153FD0 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158374 00153FD4 A8 03 00 12 */ lha r0, 0x12(r3)
/* 80158378 00153FD8 2C 00 FF FF */ cmpwi r0, -1
/* 8015837C 00153FDC 41 82 00 0C */ beq lbl_80158388
/* 80158380 00153FE0 54 03 04 3E */ clrlwi r3, r0, 0x10
/* 80158384 00153FE4 48 0F B9 49 */ bl func_80253CCC
lbl_80158388:
/* 80158388 00153FE8 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 8015838C 00153FEC 80 63 00 08 */ lwz r3, 8(r3)
/* 80158390 00153FF0 2C 03 00 00 */ cmpwi r3, 0
/* 80158394 00153FF4 41 82 00 08 */ beq lbl_8015839C
/* 80158398 00153FF8 4B EF DA 99 */ bl func_80055E30
lbl_8015839C:
/* 8015839C 00153FFC 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801583A0 00154000 38 80 FF FF */ li r4, -1
/* 801583A4 00154004 38 00 00 00 */ li r0, 0
/* 801583A8 00154008 B0 83 00 12 */ sth r4, 0x12(r3)
/* 801583AC 0015400C 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801583B0 00154010 90 03 00 08 */ stw r0, 8(r3)
/* 801583B4 00154014 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801583B8 00154018 80 63 00 0C */ lwz r3, 0xc(r3)
/* 801583BC 0015401C 2C 03 FF FF */ cmpwi r3, -1
/* 801583C0 00154020 41 82 00 08 */ beq lbl_801583C8
/* 801583C4 00154024 48 0F BB C9 */ bl func_80253F8C
lbl_801583C8:
/* 801583C8 00154028 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801583CC 0015402C 38 80 FF FF */ li r4, -1
/* 801583D0 00154030 38 A0 00 FF */ li r5, 0xff
/* 801583D4 00154034 38 00 00 00 */ li r0, 0
/* 801583D8 00154038 90 83 00 0C */ stw r4, 0xc(r3)
/* 801583DC 0015403C 38 60 02 61 */ li r3, 0x261
/* 801583E0 00154040 80 8D 82 E0 */ lwz r4, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801583E4 00154044 98 A4 00 1C */ stb r5, 0x1c(r4)
/* 801583E8 00154048 80 8D 82 E0 */ lwz r4, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801583EC 0015404C 90 04 00 14 */ stw r0, 0x14(r4)
/* 801583F0 00154050 48 00 A6 A1 */ bl func_80162A90
/* 801583F4 00154054 28 03 00 02 */ cmplwi r3, 2
/* 801583F8 00154058 40 82 00 0C */ bne lbl_80158404
/* 801583FC 0015405C 38 60 00 02 */ li r3, 2
/* 80158400 00154060 4B F3 1D 25 */ bl func_8008A124
lbl_80158404:
/* 80158404 00154064 80 8D 82 E0 */ lwz r4, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158408 00154068 80 64 00 1C */ lwz r3, 0x1c(r4)
/* 8015840C 0015406C 54 60 4F FF */ rlwinm. r0, r3, 9, 0x1f, 0x1f
/* 80158410 00154070 41 82 00 18 */ beq lbl_80158428
/* 80158414 00154074 54 60 02 4E */ rlwinm r0, r3, 0, 9, 7
/* 80158418 00154078 38 60 00 2A */ li r3, 0x2a
/* 8015841C 0015407C 90 04 00 1C */ stw r0, 0x1c(r4)
/* 80158420 00154080 38 80 00 00 */ li r4, 0
/* 80158424 00154084 4B EB 30 49 */ bl func_8000B46C
lbl_80158428:
/* 80158428 00154088 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8015842C 0015408C 7C 08 03 A6 */ mtlr r0
/* 80158430 00154090 38 21 00 10 */ addi r1, r1, 0x10
/* 80158434 00154094 4E 80 00 20 */ blr
.global func_80158438
func_80158438:
/* 80158438 00154098 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 8015843C 0015409C 88 63 00 1C */ lbz r3, 0x1c(r3)
/* 80158440 001540A0 38 03 FF 01 */ addi r0, r3, -255
/* 80158444 001540A4 7C 00 00 34 */ cntlzw r0, r0
/* 80158448 001540A8 54 03 D9 7E */ srwi r3, r0, 5
/* 8015844C 001540AC 4E 80 00 20 */ blr
lbl_80158450:
/* 80158450 001540B0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80158454 001540B4 7C 08 02 A6 */ mflr r0
/* 80158458 001540B8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8015845C 001540BC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80158460 001540C0 80 8D 82 E0 */ lwz r4, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158464 001540C4 88 04 00 1C */ lbz r0, 0x1c(r4)
/* 80158468 001540C8 2C 00 00 F0 */ cmpwi r0, 0xf0
/* 8015846C 001540CC 41 82 01 90 */ beq lbl_801585FC
/* 80158470 001540D0 40 80 00 28 */ bge lbl_80158498
/* 80158474 001540D4 2C 00 00 01 */ cmpwi r0, 1
/* 80158478 001540D8 41 82 00 78 */ beq lbl_801584F0
/* 8015847C 001540DC 40 80 00 10 */ bge lbl_8015848C
/* 80158480 001540E0 2C 00 00 00 */ cmpwi r0, 0
/* 80158484 001540E4 40 80 00 20 */ bge lbl_801584A4
/* 80158488 001540E8 48 00 01 A8 */ b lbl_80158630
lbl_8015848C:
/* 8015848C 001540EC 2C 00 00 03 */ cmpwi r0, 3
/* 80158490 001540F0 40 80 01 A0 */ bge lbl_80158630
/* 80158494 001540F4 48 00 00 B4 */ b lbl_80158548
lbl_80158498:
/* 80158498 001540F8 2C 00 00 FF */ cmpwi r0, 0xff
/* 8015849C 001540FC 41 82 01 94 */ beq lbl_80158630
/* 801584A0 00154100 48 00 01 90 */ b lbl_80158630
lbl_801584A4:
/* 801584A4 00154104 4B EF DE 55 */ bl func_800562F8
/* 801584A8 00154108 2C 03 00 00 */ cmpwi r3, 0
/* 801584AC 0015410C 41 82 01 84 */ beq lbl_80158630
/* 801584B0 00154110 38 60 02 61 */ li r3, 0x261
/* 801584B4 00154114 48 00 A5 DD */ bl func_80162A90
/* 801584B8 00154118 28 03 00 02 */ cmplwi r3, 2
/* 801584BC 0015411C 40 82 00 24 */ bne lbl_801584E0
/* 801584C0 00154120 38 60 00 01 */ li r3, 1
/* 801584C4 00154124 4B F3 1C 61 */ bl func_8008A124
/* 801584C8 00154128 2C 03 00 00 */ cmpwi r3, 0
/* 801584CC 0015412C 41 82 01 64 */ beq lbl_80158630
/* 801584D0 00154130 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801584D4 00154134 38 00 00 01 */ li r0, 1
/* 801584D8 00154138 98 03 00 1C */ stb r0, 0x1c(r3)
/* 801584DC 0015413C 48 00 01 54 */ b lbl_80158630
lbl_801584E0:
/* 801584E0 00154140 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801584E4 00154144 38 00 00 01 */ li r0, 1
/* 801584E8 00154148 98 03 00 1C */ stb r0, 0x1c(r3)
/* 801584EC 0015414C 48 00 01 44 */ b lbl_80158630
lbl_801584F0:
/* 801584F0 00154150 38 60 00 02 */ li r3, 2
/* 801584F4 00154154 3C 00 43 30 */ lis r0, 0x4330
/* 801584F8 00154158 98 64 00 1C */ stb r3, 0x1c(r4)
/* 801584FC 0015415C 38 60 00 2A */ li r3, 0x2a
/* 80158500 00154160 C8 62 8F 70 */ lfd f3, lbl_80641570-_SDA2_BASE_(r2)
/* 80158504 00154164 38 80 00 00 */ li r4, 0
/* 80158508 00154168 80 AD A3 D8 */ lwz r5, lbl_8063F698-_SDA_BASE_(r13)
/* 8015850C 0015416C 90 01 00 08 */ stw r0, 8(r1)
/* 80158510 00154170 88 05 00 59 */ lbz r0, 0x59(r5)
/* 80158514 00154174 C8 05 00 A0 */ lfd f0, 0xa0(r5)
/* 80158518 00154178 90 01 00 0C */ stw r0, 0xc(r1)
/* 8015851C 0015417C 80 AD 82 E0 */ lwz r5, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158520 00154180 C8 41 00 08 */ lfd f2, 8(r1)
/* 80158524 00154184 C0 22 8F 60 */ lfs f1, lbl_80641560-_SDA2_BASE_(r2)
/* 80158528 00154188 FC 42 18 28 */ fsub f2, f2, f3
/* 8015852C 0015418C FC 00 10 24 */ fdiv f0, f0, f2
/* 80158530 00154190 D8 05 00 00 */ stfd f0, 0(r5)
/* 80158534 00154194 80 05 00 1C */ lwz r0, 0x1c(r5)
/* 80158538 00154198 64 00 00 80 */ oris r0, r0, 0x80
/* 8015853C 0015419C 90 05 00 1C */ stw r0, 0x1c(r5)
/* 80158540 001541A0 4B EB 2C 31 */ bl func_8000B170
/* 80158544 001541A4 48 00 00 EC */ b lbl_80158630
lbl_80158548:
/* 80158548 001541A8 38 60 02 61 */ li r3, 0x261
/* 8015854C 001541AC 48 00 A5 45 */ bl func_80162A90
/* 80158550 001541B0 80 AD A3 D8 */ lwz r5, lbl_8063F698-_SDA_BASE_(r13)
/* 80158554 001541B4 38 83 FF FE */ addi r4, r3, -2
/* 80158558 001541B8 3C 00 43 30 */ lis r0, 0x4330
/* 8015855C 001541BC 80 CD 82 E0 */ lwz r6, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158560 001541C0 88 65 00 59 */ lbz r3, 0x59(r5)
/* 80158564 001541C4 7C 84 00 34 */ cntlzw r4, r4
/* 80158568 001541C8 90 01 00 08 */ stw r0, 8(r1)
/* 8015856C 001541CC 54 9F D9 7E */ srwi r31, r4, 5
/* 80158570 001541D0 C8 62 8F 70 */ lfd f3, lbl_80641570-_SDA2_BASE_(r2)
/* 80158574 001541D4 90 61 00 0C */ stw r3, 0xc(r1)
/* 80158578 001541D8 C8 45 00 A0 */ lfd f2, 0xa0(r5)
/* 8015857C 001541DC C8 01 00 08 */ lfd f0, 8(r1)
/* 80158580 001541E0 C8 26 00 00 */ lfd f1, 0(r6)
/* 80158584 001541E4 FC 60 18 28 */ fsub f3, f0, f3
/* 80158588 001541E8 C8 02 8F 68 */ lfd f0, lbl_80641568-_SDA2_BASE_(r2)
/* 8015858C 001541EC FC 42 18 24 */ fdiv f2, f2, f3
/* 80158590 001541F0 FC 22 08 28 */ fsub f1, f2, f1
/* 80158594 001541F4 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80158598 001541F8 4C 41 13 82 */ cror 2, 1, 2
/* 8015859C 001541FC 40 82 00 14 */ bne lbl_801585B0
/* 801585A0 00154200 38 00 00 F0 */ li r0, 0xf0
/* 801585A4 00154204 98 06 00 1C */ stb r0, 0x1c(r6)
/* 801585A8 00154208 4B EF DC CD */ bl func_80056274
/* 801585AC 0015420C 48 00 00 84 */ b lbl_80158630
lbl_801585B0:
/* 801585B0 00154210 7F E6 FB 78 */ mr r6, r31
/* 801585B4 00154214 3C 60 04 00 */ lis r3, 0x400
/* 801585B8 00154218 38 80 00 00 */ li r4, 0
/* 801585BC 0015421C 38 A0 00 00 */ li r5, 0
/* 801585C0 00154220 4B F0 14 AD */ bl func_80059A6C
/* 801585C4 00154224 2C 03 00 00 */ cmpwi r3, 0
/* 801585C8 00154228 40 82 00 20 */ bne lbl_801585E8
/* 801585CC 0015422C 7F E6 FB 78 */ mr r6, r31
/* 801585D0 00154230 3C 60 04 00 */ lis r3, 0x400
/* 801585D4 00154234 38 80 00 01 */ li r4, 1
/* 801585D8 00154238 38 A0 00 00 */ li r5, 0
/* 801585DC 0015423C 4B F0 14 91 */ bl func_80059A6C
/* 801585E0 00154240 2C 03 00 00 */ cmpwi r3, 0
/* 801585E4 00154244 41 82 00 4C */ beq lbl_80158630
lbl_801585E8:
/* 801585E8 00154248 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801585EC 0015424C 38 00 00 F0 */ li r0, 0xf0
/* 801585F0 00154250 98 03 00 1C */ stb r0, 0x1c(r3)
/* 801585F4 00154254 4B EF DC 81 */ bl func_80056274
/* 801585F8 00154258 48 00 00 38 */ b lbl_80158630
lbl_801585FC:
/* 801585FC 0015425C 4B EF DC FD */ bl func_800562F8
/* 80158600 00154260 2C 03 00 00 */ cmpwi r3, 0
/* 80158604 00154264 41 82 00 2C */ beq lbl_80158630
/* 80158608 00154268 80 AD 82 E0 */ lwz r5, lbl_8063D5A0-_SDA_BASE_(r13)
/* 8015860C 0015426C 38 00 00 FF */ li r0, 0xff
/* 80158610 00154270 38 60 00 2A */ li r3, 0x2a
/* 80158614 00154274 38 80 00 00 */ li r4, 0
/* 80158618 00154278 98 05 00 1C */ stb r0, 0x1c(r5)
/* 8015861C 0015427C 80 AD 82 E0 */ lwz r5, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158620 00154280 80 05 00 1C */ lwz r0, 0x1c(r5)
/* 80158624 00154284 54 00 02 4E */ rlwinm r0, r0, 0, 9, 7
/* 80158628 00154288 90 05 00 1C */ stw r0, 0x1c(r5)
/* 8015862C 0015428C 4B EB 2E 41 */ bl func_8000B46C
lbl_80158630:
/* 80158630 00154290 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80158634 00154294 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80158638 00154298 7C 08 03 A6 */ mtlr r0
/* 8015863C 0015429C 38 21 00 20 */ addi r1, r1, 0x20
/* 80158640 001542A0 4E 80 00 20 */ blr
lbl_80158644:
/* 80158644 001542A4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80158648 001542A8 7C 08 02 A6 */ mflr r0
/* 8015864C 001542AC 38 60 02 61 */ li r3, 0x261
/* 80158650 001542B0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80158654 001542B4 48 00 A4 3D */ bl func_80162A90
/* 80158658 001542B8 28 03 00 02 */ cmplwi r3, 2
/* 8015865C 001542BC 40 82 00 08 */ bne lbl_80158664
/* 80158660 001542C0 4B F3 1C 1D */ bl func_8008A27C
lbl_80158664:
/* 80158664 001542C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80158668 001542C8 7C 08 03 A6 */ mtlr r0
/* 8015866C 001542CC 38 21 00 10 */ addi r1, r1, 0x10
/* 80158670 001542D0 4E 80 00 20 */ blr
lbl_80158674:
/* 80158674 001542D4 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80158678 001542D8 7C 08 02 A6 */ mflr r0
/* 8015867C 001542DC 90 01 00 34 */ stw r0, 0x34(r1)
/* 80158680 001542E0 39 61 00 30 */ addi r11, r1, 0x30
/* 80158684 001542E4 48 06 EA A5 */ bl _savegpr_27
/* 80158688 001542E8 3F 80 80 48 */ lis r28, lbl_804875B0@ha
/* 8015868C 001542EC 7C 7D 1B 78 */ mr r29, r3
/* 80158690 001542F0 7C 9E 23 78 */ mr r30, r4
/* 80158694 001542F4 3B 9C 75 B0 */ addi r28, r28, lbl_804875B0@l
/* 80158698 001542F8 4B FC 42 DD */ bl func_8011C974
/* 8015869C 001542FC 7C 7F 1B 78 */ mr r31, r3
/* 801586A0 00154300 7F A3 EB 78 */ mr r3, r29
/* 801586A4 00154304 7F C4 F3 78 */ mr r4, r30
/* 801586A8 00154308 38 C1 00 0C */ addi r6, r1, 0xc
/* 801586AC 0015430C 38 A0 00 03 */ li r5, 3
/* 801586B0 00154310 48 0F B7 DD */ bl func_80253E8C
/* 801586B4 00154314 80 01 00 0C */ lwz r0, 0xc(r1)
/* 801586B8 00154318 28 00 00 10 */ cmplwi r0, 0x10
/* 801586BC 0015431C 41 81 05 94 */ bgt lbl_80158C50
/* 801586C0 00154320 3C 60 80 42 */ lis r3, lbl_8041E938@ha
/* 801586C4 00154324 54 00 10 3A */ slwi r0, r0, 2
/* 801586C8 00154328 38 63 E9 38 */ addi r3, r3, lbl_8041E938@l
/* 801586CC 0015432C 7C 63 00 2E */ lwzx r3, r3, r0
/* 801586D0 00154330 7C 69 03 A6 */ mtctr r3
/* 801586D4 00154334 4E 80 04 20 */ bctr
/* 801586D8 00154338 7F A3 EB 78 */ mr r3, r29
/* 801586DC 0015433C 7F C4 F3 78 */ mr r4, r30
/* 801586E0 00154340 38 C1 00 08 */ addi r6, r1, 8
/* 801586E4 00154344 38 A0 00 05 */ li r5, 5
/* 801586E8 00154348 48 0F B7 A5 */ bl func_80253E8C
/* 801586EC 0015434C 83 61 00 08 */ lwz r27, 8(r1)
/* 801586F0 00154350 38 1C 01 40 */ addi r0, r28, 0x140
/* 801586F4 00154354 38 60 02 61 */ li r3, 0x261
/* 801586F8 00154358 90 1B 00 00 */ stw r0, 0(r27)
/* 801586FC 0015435C 48 00 A3 95 */ bl func_80162A90
/* 80158700 00154360 28 03 00 03 */ cmplwi r3, 3
/* 80158704 00154364 40 82 00 14 */ bne lbl_80158718
/* 80158708 00154368 80 9B 00 00 */ lwz r4, 0(r27)
/* 8015870C 0015436C 38 60 29 F5 */ li r3, 0x29f5
/* 80158710 00154370 48 0F 7C C9 */ bl func_802503D8
/* 80158714 00154374 48 00 00 30 */ b lbl_80158744
lbl_80158718:
/* 80158718 00154378 38 60 02 61 */ li r3, 0x261
/* 8015871C 0015437C 48 00 A3 75 */ bl func_80162A90
/* 80158720 00154380 28 03 00 02 */ cmplwi r3, 2
/* 80158724 00154384 40 82 00 14 */ bne lbl_80158738
/* 80158728 00154388 80 9B 00 00 */ lwz r4, 0(r27)
/* 8015872C 0015438C 38 60 29 F4 */ li r3, 0x29f4
/* 80158730 00154390 48 0F 7C A9 */ bl func_802503D8
/* 80158734 00154394 48 00 00 10 */ b lbl_80158744
lbl_80158738:
/* 80158738 00154398 80 9B 00 00 */ lwz r4, 0(r27)
/* 8015873C 0015439C 38 60 29 F6 */ li r3, 0x29f6
/* 80158740 001543A0 48 0F 7C 99 */ bl func_802503D8
lbl_80158744:
/* 80158744 001543A4 38 00 00 FF */ li r0, 0xff
/* 80158748 001543A8 38 E0 00 60 */ li r7, 0x60
/* 8015874C 001543AC 98 1B 00 04 */ stb r0, 4(r27)
/* 80158750 001543B0 38 00 00 84 */ li r0, 0x84
/* 80158754 001543B4 7F A3 EB 78 */ mr r3, r29
/* 80158758 001543B8 7F C4 F3 78 */ mr r4, r30
/* 8015875C 001543BC 89 1E 00 03 */ lbz r8, 3(r30)
/* 80158760 001543C0 38 A0 00 02 */ li r5, 2
/* 80158764 001543C4 38 C0 FF FE */ li r6, -2
/* 80158768 001543C8 99 1B 00 05 */ stb r8, 5(r27)
/* 8015876C 001543CC 98 FB 00 06 */ stb r7, 6(r27)
/* 80158770 001543D0 88 FE 00 05 */ lbz r7, 5(r30)
/* 80158774 001543D4 98 FB 00 07 */ stb r7, 7(r27)
/* 80158778 001543D8 98 1B 00 09 */ stb r0, 9(r27)
/* 8015877C 001543DC 48 0F B7 39 */ bl func_80253EB4
/* 80158780 001543E0 48 00 04 D0 */ b lbl_80158C50
/* 80158784 001543E4 C0 02 8F 78 */ lfs f0, lbl_80641578-_SDA2_BASE_(r2)
/* 80158788 001543E8 38 60 00 0E */ li r3, 0xe
/* 8015878C 001543EC 80 9E 00 24 */ lwz r4, 0x24(r30)
/* 80158790 001543F0 D0 04 00 00 */ stfs f0, 0(r4)
/* 80158794 001543F4 80 8D 82 E0 */ lwz r4, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158798 001543F8 80 84 00 14 */ lwz r4, 0x14(r4)
/* 8015879C 001543FC 48 00 3B 6D */ bl func_8015C308
/* 801587A0 00154400 7F A3 EB 78 */ mr r3, r29
/* 801587A4 00154404 7F C4 F3 78 */ mr r4, r30
/* 801587A8 00154408 38 A0 00 02 */ li r5, 2
/* 801587AC 0015440C 38 C0 52 13 */ li r6, 0x5213
/* 801587B0 00154410 48 0F B7 05 */ bl func_80253EB4
/* 801587B4 00154414 48 00 04 9C */ b lbl_80158C50
/* 801587B8 00154418 80 6D 82 E0 */ lwz r3, lbl_8063D5A0-_SDA_BASE_(r13)
/* 801587BC 0015441C 88 03 00 10 */ lbz r0, 0x10(r3)
/* 801587C0 00154420 2C 00 00 00 */ cmpwi r0, 0
/* 801587C4 00154424 41 82 00 1C */ beq lbl_801587E0
/* 801587C8 00154428 7F A3 EB 78 */ mr r3, r29
/* 801587CC 0015442C 7F C4 F3 78 */ mr r4, r30
/* 801587D0 00154430 38 A0 00 02 */ li r5, 2
/* 801587D4 00154434 38 C0 52 14 */ li r6, 0x5214
/* 801587D8 00154438 48 0F B6 DD */ bl func_80253EB4
/* 801587DC 0015443C 48 00 04 74 */ b lbl_80158C50
lbl_801587E0:
/* 801587E0 00154440 80 1F 00 08 */ lwz r0, 8(r31)
/* 801587E4 00154444 2C 00 00 02 */ cmpwi r0, 2
/* 801587E8 00154448 40 82 00 1C */ bne lbl_80158804
/* 801587EC 0015444C 7F A3 EB 78 */ mr r3, r29
/* 801587F0 00154450 7F C4 F3 78 */ mr r4, r30
/* 801587F4 00154454 38 A0 00 02 */ li r5, 2
/* 801587F8 00154458 38 C0 2A 5E */ li r6, 0x2a5e
/* 801587FC 0015445C 48 0F B6 B9 */ bl func_80253EB4
/* 80158800 00154460 48 00 04 50 */ b lbl_80158C50
lbl_80158804:
/* 80158804 00154464 2C 00 00 01 */ cmpwi r0, 1
/* 80158808 00154468 40 82 00 1C */ bne lbl_80158824
/* 8015880C 0015446C 7F A3 EB 78 */ mr r3, r29
/* 80158810 00154470 7F C4 F3 78 */ mr r4, r30
/* 80158814 00154474 38 A0 00 02 */ li r5, 2
/* 80158818 00154478 38 C0 2A 5F */ li r6, 0x2a5f
/* 8015881C 0015447C 48 0F B6 99 */ bl func_80253EB4
/* 80158820 00154480 48 00 04 30 */ b lbl_80158C50
lbl_80158824:
/* 80158824 00154484 2C 00 00 04 */ cmpwi r0, 4
/* 80158828 00154488 40 82 04 28 */ bne lbl_80158C50
/* 8015882C 0015448C 7F A3 EB 78 */ mr r3, r29
/* 80158830 00154490 7F C4 F3 78 */ mr r4, r30
/* 80158834 00154494 38 A0 00 02 */ li r5, 2
/* 80158838 00154498 38 C0 52 14 */ li r6, 0x5214
/* 8015883C 0015449C 48 0F B6 79 */ bl func_80253EB4
/* 80158840 001544A0 48 00 04 10 */ b lbl_80158C50
/* 80158844 001544A4 C0 02 8F 7C */ lfs f0, lbl_8064157C-_SDA2_BASE_(r2)
/* 80158848 001544A8 7F A3 EB 78 */ mr r3, r29
/* 8015884C 001544AC 80 BE 00 24 */ lwz r5, 0x24(r30)
/* 80158850 001544B0 7F C4 F3 78 */ mr r4, r30
/* 80158854 001544B4 C0 22 8F 80 */ lfs f1, lbl_80641580-_SDA2_BASE_(r2)
/* 80158858 001544B8 38 C1 00 08 */ addi r6, r1, 8
/* 8015885C 001544BC D0 05 00 00 */ stfs f0, 0(r5)
/* 80158860 001544C0 38 A0 00 05 */ li r5, 5
/* 80158864 001544C4 C0 02 8F 84 */ lfs f0, lbl_80641584-_SDA2_BASE_(r2)
/* 80158868 001544C8 80 FE 00 24 */ lwz r7, 0x24(r30)
/* 8015886C 001544CC D0 27 00 04 */ stfs f1, 4(r7)
/* 80158870 001544D0 80 FE 00 24 */ lwz r7, 0x24(r30)
/* 80158874 001544D4 D0 07 00 0C */ stfs f0, 0xc(r7)
/* 80158878 001544D8 48 0F B6 15 */ bl func_80253E8C
/* 8015887C 001544DC 83 61 00 08 */ lwz r27, 8(r1)
/* 80158880 001544E0 38 9C 01 28 */ addi r4, r28, 0x128
/* 80158884 001544E4 38 60 2A 5A */ li r3, 0x2a5a
/* 80158888 001544E8 90 9B 00 00 */ stw r4, 0(r27)
/* 8015888C 001544EC 48 0F 7B 4D */ bl func_802503D8
/* 80158890 001544F0 38 00 00 FF */ li r0, 0xff
/* 80158894 001544F4 38 80 00 46 */ li r4, 0x46
/* 80158898 001544F8 98 1B 00 04 */ stb r0, 4(r27)
/* 8015889C 001544FC 38 E0 00 1E */ li r7, 0x1e
/* 801588A0 00154500 38 00 00 84 */ li r0, 0x84
/* 801588A4 00154504 7F A3 EB 78 */ mr r3, r29
/* 801588A8 00154508 98 9B 00 05 */ stb r4, 5(r27)
/* 801588AC 0015450C 7F C4 F3 78 */ mr r4, r30
/* 801588B0 00154510 38 A0 00 02 */ li r5, 2
/* 801588B4 00154514 38 C0 FF FE */ li r6, -2
/* 801588B8 00154518 98 FB 00 06 */ stb r7, 6(r27)
/* 801588BC 0015451C 88 FE 00 05 */ lbz r7, 5(r30)
/* 801588C0 00154520 98 FB 00 07 */ stb r7, 7(r27)
/* 801588C4 00154524 98 1B 00 09 */ stb r0, 9(r27)
/* 801588C8 00154528 48 0F B5 ED */ bl func_80253EB4
/* 801588CC 0015452C 48 00 03 84 */ b lbl_80158C50
/* 801588D0 00154530 38 60 02 61 */ li r3, 0x261
/* 801588D4 00154534 48 00 A1 BD */ bl func_80162A90
/* 801588D8 00154538 28 03 00 02 */ cmplwi r3, 2
/* 801588DC 0015453C 41 82 00 28 */ beq lbl_80158904
/* 801588E0 00154540 C0 02 8F 88 */ lfs f0, lbl_80641588-_SDA2_BASE_(r2)
/* 801588E4 00154544 80 7E 00 24 */ lwz r3, 0x24(r30)
/* 801588E8 00154548 C0 22 8F 8C */ lfs f1, lbl_8064158C-_SDA2_BASE_(r2)
/* 801588EC 0015454C D0 03 00 00 */ stfs f0, 0(r3)
/* 801588F0 00154550 C0 02 8F 90 */ lfs f0, lbl_80641590-_SDA2_BASE_(r2)
/* 801588F4 00154554 80 7E 00 24 */ lwz r3, 0x24(r30)
/* 801588F8 00154558 D0 23 00 04 */ stfs f1, 4(r3)
/* 801588FC 0015455C 80 7E 00 24 */ lwz r3, 0x24(r30)
/* 80158900 00154560 D0 03 00 0C */ stfs f0, 0xc(r3)
lbl_80158904:
/* 80158904 00154564 7F A3 EB 78 */ mr r3, r29
/* 80158908 00154568 7F C4 F3 78 */ mr r4, r30
/* 8015890C 0015456C 38 C1 00 08 */ addi r6, r1, 8
/* 80158910 00154570 38 A0 00 05 */ li r5, 5
/* 80158914 00154574 48 0F B5 79 */ bl func_80253E8C
/* 80158918 00154578 83 61 00 08 */ lwz r27, 8(r1)
/* 8015891C 0015457C 38 1C 00 28 */ addi r0, r28, 0x28
/* 80158920 00154580 38 9F 49 88 */ addi r4, r31, 0x4988
/* 80158924 00154584 38 60 00 51 */ li r3, 0x51
/* 80158928 00154588 90 1B 00 00 */ stw r0, 0(r27)
/* 8015892C 0015458C 48 00 39 DD */ bl func_8015C308
/* 80158930 00154590 80 9B 00 00 */ lwz r4, 0(r27)
/* 80158934 00154594 38 60 2A 59 */ li r3, 0x2a59
/* 80158938 00154598 48 0F 7A A1 */ bl func_802503D8
/* 8015893C 0015459C 38 E0 00 FF */ li r7, 0xff
/* 80158940 001545A0 38 00 00 84 */ li r0, 0x84
/* 80158944 001545A4 98 FB 00 04 */ stb r7, 4(r27)
/* 80158948 001545A8 7F A3 EB 78 */ mr r3, r29
/* 8015894C 001545AC 7F C4 F3 78 */ mr r4, r30
/* 80158950 001545B0 38 A0 00 02 */ li r5, 2
/* 80158954 001545B4 98 FB 00 05 */ stb r7, 5(r27)
/* 80158958 001545B8 38 C0 FF FE */ li r6, -2
/* 8015895C 001545BC 98 FB 00 06 */ stb r7, 6(r27)
/* 80158960 001545C0 88 FE 00 05 */ lbz r7, 5(r30)
/* 80158964 001545C4 98 FB 00 07 */ stb r7, 7(r27)
/* 80158968 001545C8 98 1B 00 09 */ stb r0, 9(r27)
/* 8015896C 001545CC 48 0F B5 49 */ bl func_80253EB4
/* 80158970 001545D0 48 00 02 E0 */ b lbl_80158C50
/* 80158974 001545D4 38 60 02 61 */ li r3, 0x261
/* 80158978 001545D8 48 00 A1 19 */ bl func_80162A90
/* 8015897C 001545DC 28 03 00 02 */ cmplwi r3, 2
/* 80158980 001545E0 41 82 00 28 */ beq lbl_801589A8
/* 80158984 001545E4 C0 02 8F 94 */ lfs f0, lbl_80641594-_SDA2_BASE_(r2)
/* 80158988 001545E8 80 7E 00 24 */ lwz r3, 0x24(r30)
/* 8015898C 001545EC C0 22 8F 98 */ lfs f1, lbl_80641598-_SDA2_BASE_(r2)
/* 80158990 001545F0 D0 03 00 00 */ stfs f0, 0(r3)
/* 80158994 001545F4 C0 02 8F 90 */ lfs f0, lbl_80641590-_SDA2_BASE_(r2)
/* 80158998 001545F8 80 7E 00 24 */ lwz r3, 0x24(r30)
/* 8015899C 001545FC D0 23 00 04 */ stfs f1, 4(r3)
/* 801589A0 00154600 80 7E 00 24 */ lwz r3, 0x24(r30)
/* 801589A4 00154604 D0 03 00 0C */ stfs f0, 0xc(r3)
lbl_801589A8:
/* 801589A8 00154608 7F A3 EB 78 */ mr r3, r29
/* 801589AC 0015460C 7F C4 F3 78 */ mr r4, r30
/* 801589B0 00154610 38 C1 00 08 */ addi r6, r1, 8
/* 801589B4 00154614 38 A0 00 05 */ li r5, 5
/* 801589B8 00154618 48 0F B4 D5 */ bl func_80253E8C
/* 801589BC 0015461C 38 7C 00 28 */ addi r3, r28, 0x28
/* 801589C0 00154620 83 81 00 08 */ lwz r28, 8(r1)
/* 801589C4 00154624 38 03 00 40 */ addi r0, r3, 0x40
/* 801589C8 00154628 38 9F 3B B0 */ addi r4, r31, 0x3bb0
/* 801589CC 0015462C 90 1C 00 00 */ stw r0, 0(r28)
/* 801589D0 00154630 38 60 00 51 */ li r3, 0x51
/* 801589D4 00154634 48 00 39 35 */ bl func_8015C308
/* 801589D8 00154638 80 9C 00 00 */ lwz r4, 0(r28)
/* 801589DC 0015463C 38 60 2A 59 */ li r3, 0x2a59
/* 801589E0 00154640 48 0F 79 F9 */ bl func_802503D8
/* 801589E4 00154644 38 E0 00 FF */ li r7, 0xff
/* 801589E8 00154648 38 00 00 84 */ li r0, 0x84
/* 801589EC 0015464C 98 FC 00 04 */ stb r7, 4(r28)
/* 801589F0 00154650 7F A3 EB 78 */ mr r3, r29
/* 801589F4 00154654 7F C4 F3 78 */ mr r4, r30
/* 801589F8 00154658 38 A0 00 02 */ li r5, 2
/* 801589FC 0015465C 98 FC 00 05 */ stb r7, 5(r28)
/* 80158A00 00154660 38 C0 FF FE */ li r6, -2
/* 80158A04 00154664 98 FC 00 06 */ stb r7, 6(r28)
/* 80158A08 00154668 88 FE 00 05 */ lbz r7, 5(r30)
/* 80158A0C 0015466C 98 FC 00 07 */ stb r7, 7(r28)
/* 80158A10 00154670 98 1C 00 09 */ stb r0, 9(r28)
/* 80158A14 00154674 48 0F B4 A1 */ bl func_80253EB4
/* 80158A18 00154678 48 00 02 38 */ b lbl_80158C50
/* 80158A1C 0015467C 38 60 02 61 */ li r3, 0x261
/* 80158A20 00154680 48 00 A0 71 */ bl func_80162A90
/* 80158A24 00154684 28 03 00 02 */ cmplwi r3, 2
/* 80158A28 00154688 40 82 00 EC */ bne lbl_80158B14
/* 80158A2C 0015468C 7F A3 EB 78 */ mr r3, r29
/* 80158A30 00154690 7F C4 F3 78 */ mr r4, r30
/* 80158A34 00154694 38 C1 00 08 */ addi r6, r1, 8
/* 80158A38 00154698 38 A0 00 05 */ li r5, 5
/* 80158A3C 0015469C 48 0F B4 51 */ bl func_80253E8C
/* 80158A40 001546A0 38 7C 00 28 */ addi r3, r28, 0x28
/* 80158A44 001546A4 83 81 00 08 */ lwz r28, 8(r1)
/* 80158A48 001546A8 38 03 00 80 */ addi r0, r3, 0x80
/* 80158A4C 001546AC 90 1C 00 00 */ stw r0, 0(r28)
/* 80158A50 001546B0 A0 9F 4B 70 */ lhz r4, 0x4b70(r31)
/* 80158A54 001546B4 28 04 FF FF */ cmplwi r4, 0xffff
/* 80158A58 001546B8 40 82 00 40 */ bne lbl_80158A98
/* 80158A5C 001546BC 38 7F 4B 80 */ addi r3, r31, 0x4b80
/* 80158A60 001546C0 38 80 00 05 */ li r4, 5
/* 80158A64 001546C4 38 A0 00 00 */ li r5, 0
/* 80158A68 001546C8 48 28 24 95 */ bl func_803DAEFC
/* 80158A6C 001546CC 3C A0 80 64 */ lis r5, lbl_8063CE34@ha
/* 80158A70 001546D0 7C 64 1B 78 */ mr r4, r3
/* 80158A74 001546D4 38 A5 CE 34 */ addi r5, r5, lbl_8063CE34@l
/* 80158A78 001546D8 38 65 00 10 */ addi r3, r5, 0x10
/* 80158A7C 001546DC 48 23 95 19 */ bl func_80391F94
/* 80158A80 001546E0 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 80158A84 001546E4 48 0F 78 71 */ bl func_802502F4
/* 80158A88 001546E8 7C 64 1B 78 */ mr r4, r3
/* 80158A8C 001546EC 38 60 00 15 */ li r3, 0x15
/* 80158A90 001546F0 48 00 38 79 */ bl func_8015C308
/* 80158A94 001546F4 48 00 00 28 */ b lbl_80158ABC
lbl_80158A98:
/* 80158A98 001546F8 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 80158A9C 001546FC 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 80158AA0 00154700 38 63 00 10 */ addi r3, r3, 0x10
/* 80158AA4 00154704 48 23 94 F1 */ bl func_80391F94
/* 80158AA8 00154708 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 80158AAC 0015470C 48 0F 78 49 */ bl func_802502F4
/* 80158AB0 00154710 7C 64 1B 78 */ mr r4, r3
/* 80158AB4 00154714 38 60 00 15 */ li r3, 0x15
/* 80158AB8 00154718 48 00 38 51 */ bl func_8015C308
lbl_80158ABC:
/* 80158ABC 0015471C A0 7F 49 A0 */ lhz r3, 0x49a0(r31)
/* 80158AC0 00154720 48 0F 78 35 */ bl func_802502F4
/* 80158AC4 00154724 7C 64 1B 78 */ mr r4, r3
/* 80158AC8 00154728 38 60 00 51 */ li r3, 0x51
/* 80158ACC 0015472C 48 00 38 3D */ bl func_8015C308
/* 80158AD0 00154730 80 9C 00 00 */ lwz r4, 0(r28)
/* 80158AD4 00154734 38 60 2A 59 */ li r3, 0x2a59
/* 80158AD8 00154738 48 0F 79 01 */ bl func_802503D8
/* 80158ADC 0015473C 38 E0 00 FF */ li r7, 0xff
/* 80158AE0 00154740 38 00 00 84 */ li r0, 0x84
/* 80158AE4 00154744 98 FC 00 04 */ stb r7, 4(r28)
/* 80158AE8 00154748 7F A3 EB 78 */ mr r3, r29
/* 80158AEC 0015474C 7F C4 F3 78 */ mr r4, r30
/* 80158AF0 00154750 38 A0 00 02 */ li r5, 2
/* 80158AF4 00154754 98 FC 00 05 */ stb r7, 5(r28)
/* 80158AF8 00154758 38 C0 FF FE */ li r6, -2
/* 80158AFC 0015475C 98 FC 00 06 */ stb r7, 6(r28)
/* 80158B00 00154760 88 FE 00 05 */ lbz r7, 5(r30)
/* 80158B04 00154764 98 FC 00 07 */ stb r7, 7(r28)
/* 80158B08 00154768 98 1C 00 09 */ stb r0, 9(r28)
/* 80158B0C 0015476C 48 0F B3 A9 */ bl func_80253EB4
/* 80158B10 00154770 48 00 01 40 */ b lbl_80158C50
lbl_80158B14:
/* 80158B14 00154774 7F A3 EB 78 */ mr r3, r29
/* 80158B18 00154778 7F C4 F3 78 */ mr r4, r30
/* 80158B1C 0015477C 38 A0 00 02 */ li r5, 2
/* 80158B20 00154780 38 C0 00 00 */ li r6, 0
/* 80158B24 00154784 48 0F B3 91 */ bl func_80253EB4
/* 80158B28 00154788 48 00 01 28 */ b lbl_80158C50
/* 80158B2C 0015478C 38 60 02 61 */ li r3, 0x261
/* 80158B30 00154790 48 00 9F 61 */ bl func_80162A90
/* 80158B34 00154794 28 03 00 02 */ cmplwi r3, 2
/* 80158B38 00154798 40 82 00 EC */ bne lbl_80158C24
/* 80158B3C 0015479C 7F A3 EB 78 */ mr r3, r29
/* 80158B40 001547A0 7F C4 F3 78 */ mr r4, r30
/* 80158B44 001547A4 38 C1 00 08 */ addi r6, r1, 8
/* 80158B48 001547A8 38 A0 00 05 */ li r5, 5
/* 80158B4C 001547AC 48 0F B3 41 */ bl func_80253E8C
/* 80158B50 001547B0 38 7C 00 28 */ addi r3, r28, 0x28
/* 80158B54 001547B4 83 81 00 08 */ lwz r28, 8(r1)
/* 80158B58 001547B8 38 03 00 C0 */ addi r0, r3, 0xc0
/* 80158B5C 001547BC 90 1C 00 00 */ stw r0, 0(r28)
/* 80158B60 001547C0 A0 9F 3D 98 */ lhz r4, 0x3d98(r31)
/* 80158B64 001547C4 28 04 FF FF */ cmplwi r4, 0xffff
/* 80158B68 001547C8 40 82 00 40 */ bne lbl_80158BA8
/* 80158B6C 001547CC 38 7F 3D A8 */ addi r3, r31, 0x3da8
/* 80158B70 001547D0 38 80 00 05 */ li r4, 5
/* 80158B74 001547D4 38 A0 00 00 */ li r5, 0
/* 80158B78 001547D8 48 28 23 85 */ bl func_803DAEFC
/* 80158B7C 001547DC 3C A0 80 64 */ lis r5, lbl_8063CE34@ha
/* 80158B80 001547E0 7C 64 1B 78 */ mr r4, r3
/* 80158B84 001547E4 38 A5 CE 34 */ addi r5, r5, lbl_8063CE34@l
/* 80158B88 001547E8 38 65 00 10 */ addi r3, r5, 0x10
/* 80158B8C 001547EC 48 23 94 09 */ bl func_80391F94
/* 80158B90 001547F0 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 80158B94 001547F4 48 0F 77 61 */ bl func_802502F4
/* 80158B98 001547F8 7C 64 1B 78 */ mr r4, r3
/* 80158B9C 001547FC 38 60 00 15 */ li r3, 0x15
/* 80158BA0 00154800 48 00 37 69 */ bl func_8015C308
/* 80158BA4 00154804 48 00 00 28 */ b lbl_80158BCC
lbl_80158BA8:
/* 80158BA8 00154808 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 80158BAC 0015480C 38 63 CE 34 */ addi r3, r3, lbl_8063CE34@l
/* 80158BB0 00154810 38 63 00 10 */ addi r3, r3, 0x10
/* 80158BB4 00154814 48 23 93 E1 */ bl func_80391F94
/* 80158BB8 00154818 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 80158BBC 0015481C 48 0F 77 39 */ bl func_802502F4
/* 80158BC0 00154820 7C 64 1B 78 */ mr r4, r3
/* 80158BC4 00154824 38 60 00 15 */ li r3, 0x15
/* 80158BC8 00154828 48 00 37 41 */ bl func_8015C308
lbl_80158BCC:
/* 80158BCC 0015482C A0 7F 3B C8 */ lhz r3, 0x3bc8(r31)
/* 80158BD0 00154830 48 0F 77 25 */ bl func_802502F4
/* 80158BD4 00154834 7C 64 1B 78 */ mr r4, r3
/* 80158BD8 00154838 38 60 00 51 */ li r3, 0x51
/* 80158BDC 0015483C 48 00 37 2D */ bl func_8015C308
/* 80158BE0 00154840 80 9C 00 00 */ lwz r4, 0(r28)
/* 80158BE4 00154844 38 60 2A 59 */ li r3, 0x2a59
/* 80158BE8 00154848 48 0F 77 F1 */ bl func_802503D8
/* 80158BEC 0015484C 38 E0 00 FF */ li r7, 0xff
/* 80158BF0 00154850 38 00 00 84 */ li r0, 0x84
/* 80158BF4 00154854 98 FC 00 04 */ stb r7, 4(r28)
/* 80158BF8 00154858 7F A3 EB 78 */ mr r3, r29
/* 80158BFC 0015485C 7F C4 F3 78 */ mr r4, r30
/* 80158C00 00154860 38 A0 00 02 */ li r5, 2
/* 80158C04 00154864 98 FC 00 05 */ stb r7, 5(r28)
/* 80158C08 00154868 38 C0 FF FE */ li r6, -2
/* 80158C0C 0015486C 98 FC 00 06 */ stb r7, 6(r28)
/* 80158C10 00154870 88 FE 00 05 */ lbz r7, 5(r30)
/* 80158C14 00154874 98 FC 00 07 */ stb r7, 7(r28)
/* 80158C18 00154878 98 1C 00 09 */ stb r0, 9(r28)
/* 80158C1C 0015487C 48 0F B2 99 */ bl func_80253EB4
/* 80158C20 00154880 48 00 00 30 */ b lbl_80158C50
lbl_80158C24:
/* 80158C24 00154884 7F A3 EB 78 */ mr r3, r29
/* 80158C28 00154888 7F C4 F3 78 */ mr r4, r30
/* 80158C2C 0015488C 38 A0 00 02 */ li r5, 2
/* 80158C30 00154890 38 C0 00 00 */ li r6, 0
/* 80158C34 00154894 48 0F B2 81 */ bl func_80253EB4
/* 80158C38 00154898 48 00 00 18 */ b lbl_80158C50
/* 80158C3C 0015489C 7F A3 EB 78 */ mr r3, r29
/* 80158C40 001548A0 7F C4 F3 78 */ mr r4, r30
/* 80158C44 001548A4 38 A0 00 02 */ li r5, 2
/* 80158C48 001548A8 38 C0 00 00 */ li r6, 0
/* 80158C4C 001548AC 48 0F B2 69 */ bl func_80253EB4
lbl_80158C50:
/* 80158C50 001548B0 39 61 00 30 */ addi r11, r1, 0x30
/* 80158C54 001548B4 48 06 E5 21 */ bl _restgpr_27
/* 80158C58 001548B8 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80158C5C 001548BC 7C 08 03 A6 */ mtlr r0
/* 80158C60 001548C0 38 21 00 30 */ addi r1, r1, 0x30
/* 80158C64 001548C4 4E 80 00 20 */ blr
lbl_80158C68:
/* 80158C68 001548C8 94 21 FF 90 */ stwu r1, -0x70(r1)
/* 80158C6C 001548CC 7C 08 02 A6 */ mflr r0
/* 80158C70 001548D0 90 01 00 74 */ stw r0, 0x74(r1)
/* 80158C74 001548D4 93 E1 00 6C */ stw r31, 0x6c(r1)
/* 80158C78 001548D8 93 C1 00 68 */ stw r30, 0x68(r1)
/* 80158C7C 001548DC 7C 9E 23 78 */ mr r30, r4
/* 80158C80 001548E0 93 A1 00 64 */ stw r29, 0x64(r1)
/* 80158C84 001548E4 7C 7D 1B 78 */ mr r29, r3
/* 80158C88 001548E8 4B FC 3C ED */ bl func_8011C974
/* 80158C8C 001548EC 7C 7F 1B 78 */ mr r31, r3
/* 80158C90 001548F0 7F A3 EB 78 */ mr r3, r29
/* 80158C94 001548F4 7F C4 F3 78 */ mr r4, r30
/* 80158C98 001548F8 38 C1 00 18 */ addi r6, r1, 0x18
/* 80158C9C 001548FC 38 A0 00 03 */ li r5, 3
/* 80158CA0 00154900 48 0F B2 3D */ bl func_80253EDC
/* 80158CA4 00154904 7F A3 EB 78 */ mr r3, r29
/* 80158CA8 00154908 7F C4 F3 78 */ mr r4, r30
/* 80158CAC 0015490C 38 C1 00 20 */ addi r6, r1, 0x20
/* 80158CB0 00154910 38 A0 00 06 */ li r5, 6
/* 80158CB4 00154914 48 0F B2 29 */ bl func_80253EDC
/* 80158CB8 00154918 80 01 00 18 */ lwz r0, 0x18(r1)
/* 80158CBC 0015491C 2C 00 00 04 */ cmpwi r0, 4
/* 80158CC0 00154920 41 82 00 F0 */ beq lbl_80158DB0
/* 80158CC4 00154924 40 80 01 50 */ bge lbl_80158E14
/* 80158CC8 00154928 2C 00 00 01 */ cmpwi r0, 1
/* 80158CCC 0015492C 41 82 00 08 */ beq lbl_80158CD4
/* 80158CD0 00154930 48 00 01 44 */ b lbl_80158E14
lbl_80158CD4:
/* 80158CD4 00154934 38 60 02 61 */ li r3, 0x261
/* 80158CD8 00154938 48 00 9D B9 */ bl func_80162A90
/* 80158CDC 0015493C 28 03 00 02 */ cmplwi r3, 2
/* 80158CE0 00154940 40 82 00 18 */ bne lbl_80158CF8
/* 80158CE4 00154944 88 1F 00 1B */ lbz r0, 0x1b(r31)
/* 80158CE8 00154948 28 00 00 01 */ cmplwi r0, 1
/* 80158CEC 0015494C 40 82 00 0C */ bne lbl_80158CF8
/* 80158CF0 00154950 38 60 52 1A */ li r3, 0x521a
/* 80158CF4 00154954 48 00 00 50 */ b lbl_80158D44
lbl_80158CF8:
/* 80158CF8 00154958 80 8D 82 E0 */ lwz r4, lbl_8063D5A0-_SDA_BASE_(r13)
/* 80158CFC 0015495C 80 04 00 18 */ lwz r0, 0x18(r4)
/* 80158D00 00154960 2C 00 00 02 */ cmpwi r0, 2
/* 80158D04 00154964 41 82 00 34 */ beq lbl_80158D38
/* 80158D08 00154968 40 80 00 14 */ bge lbl_80158D1C
/* 80158D0C 0015496C 2C 00 00 00 */ cmpwi r0, 0
/* 80158D10 00154970 41 82 00 18 */ beq lbl_80158D28
/* 80158D14 00154974 40 80 00 1C */ bge lbl_80158D30
/* 80158D18 00154978 48 00 00 2C */ b lbl_80158D44
lbl_80158D1C:
/* 80158D1C 0015497C 2C 00 00 04 */ cmpwi r0, 4
/* 80158D20 00154980 40 80 00 24 */ bge lbl_80158D44
/* 80158D24 00154984 48 00 00 1C */ b lbl_80158D40
lbl_80158D28:
/* 80158D28 00154988 38 60 50 C2 */ li r3, 0x50c2
/* 80158D2C 0015498C 48 00 00 18 */ b lbl_80158D44
lbl_80158D30:
/* 80158D30 00154990 38 60 50 CD */ li r3, 0x50cd
/* 80158D34 00154994 48 00 00 10 */ b lbl_80158D44
lbl_80158D38:
/* 80158D38 00154998 38 60 46 CE */ li r3, 0x46ce
/* 80158D3C 0015499C 48 00 00 08 */ b lbl_80158D44
lbl_80158D40:
/* 80158D40 001549A0 38 60 46 D0 */ li r3, 0x46d0
lbl_80158D44:
/* 80158D44 001549A4 48 0F 75 B1 */ bl func_802502F4
/* 80158D48 001549A8 C0 A1 00 20 */ lfs f5, 0x20(r1)
/* 80158D4C 001549AC 38 00 FF 00 */ li r0, -256
/* 80158D50 001549B0 C0 61 00 30 */ lfs f3, 0x30(r1)
/* 80158D54 001549B4 38 80 00 00 */ li r4, 0
/* 80158D58 001549B8 C0 21 00 24 */ lfs f1, 0x24(r1)
/* 80158D5C 001549BC FC 80 28 1E */ fctiwz f4, f5
/* 80158D60 001549C0 C0 01 00 38 */ lfs f0, 0x38(r1)
/* 80158D64 001549C4 FC 40 18 1E */ fctiwz f2, f3
/* 80158D68 001549C8 EC 21 28 28 */ fsubs f1, f1, f5
/* 80158D6C 001549CC 88 BE 00 11 */ lbz r5, 0x11(r30)
/* 80158D70 001549D0 EC 00 18 28 */ fsubs f0, f0, f3
/* 80158D74 001549D4 D8 41 00 48 */ stfd f2, 0x48(r1)
/* 80158D78 001549D8 7C A9 03 78 */ or r9, r5, r0
/* 80158D7C 001549DC FC 20 08 1E */ fctiwz f1, f1
/* 80158D80 001549E0 FC 00 00 1E */ fctiwz f0, f0
/* 80158D84 001549E4 D8 81 00 40 */ stfd f4, 0x40(r1)
/* 80158D88 001549E8 80 C1 00 4C */ lwz r6, 0x4c(r1)
/* 80158D8C 001549EC D8 21 00 50 */ stfd f1, 0x50(r1)
/* 80158D90 001549F0 80 A1 00 44 */ lwz r5, 0x44(r1)
/* 80158D94 001549F4 D8 01 00 58 */ stfd f0, 0x58(r1)
/* 80158D98 001549F8 80 E1 00 54 */ lwz r7, 0x54(r1)
/* 80158D9C 001549FC 81 01 00 5C */ lwz r8, 0x5c(r1)
/* 80158DA0 00154A00 7C E7 07 34 */ extsh r7, r7
/* 80158DA4 00154A04 7D 08 07 34 */ extsh r8, r8
/* 80158DA8 00154A08 48 0F 74 05 */ bl func_802501AC
/* 80158DAC 00154A0C 48 00 00 68 */ b lbl_80158E14
lbl_80158DB0:
/* 80158DB0 00154A10 3B E0 00 FF */ li r31, 0xff
/* 80158DB4 00154A14 38 81 00 0C */ addi r4, r1, 0xc
/* 80158DB8 00154A18 9B E1 00 14 */ stb r31, 0x14(r1)
/* 80158DBC 00154A1C 38 60 00 01 */ li r3, 1
/* 80158DC0 00154A20 9B E1 00 15 */ stb r31, 0x15(r1)
/* 80158DC4 00154A24 9B E1 00 16 */ stb r31, 0x16(r1)
/* 80158DC8 00154A28 9B E1 00 17 */ stb r31, 0x17(r1)
/* 80158DCC 00154A2C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80158DD0 00154A30 90 01 00 0C */ stw r0, 0xc(r1)
/* 80158DD4 00154A34 48 0F 78 1D */ bl func_802505F0
/* 80158DD8 00154A38 80 7E 00 88 */ lwz r3, 0x88(r30)
/* 80158DDC 00154A3C 57 A0 04 21 */ rlwinm. r0, r29, 0, 0x10, 0x10
/* 80158DE0 00154A40 60 60 00 01 */ ori r0, r3, 1
/* 80158DE4 00154A44 90 1E 00 88 */ stw r0, 0x88(r30)
/* 80158DE8 00154A48 41 82 00 2C */ beq lbl_80158E14
/* 80158DEC 00154A4C 38 00 00 01 */ li r0, 1
/* 80158DF0 00154A50 9B E1 00 13 */ stb r31, 0x13(r1)
/* 80158DF4 00154A54 38 81 00 08 */ addi r4, r1, 8
/* 80158DF8 00154A58 38 60 00 01 */ li r3, 1
/* 80158DFC 00154A5C 98 01 00 10 */ stb r0, 0x10(r1)
/* 80158E00 00154A60 98 01 00 11 */ stb r0, 0x11(r1)
/* 80158E04 00154A64 98 01 00 12 */ stb r0, 0x12(r1)
/* 80158E08 00154A68 80 01 00 10 */ lwz r0, 0x10(r1)
/* 80158E0C 00154A6C 90 01 00 08 */ stw r0, 8(r1)
/* 80158E10 00154A70 48 0F 77 E1 */ bl func_802505F0
lbl_80158E14:
/* 80158E14 00154A74 80 01 00 74 */ lwz r0, 0x74(r1)
/* 80158E18 00154A78 83 E1 00 6C */ lwz r31, 0x6c(r1)
/* 80158E1C 00154A7C 83 C1 00 68 */ lwz r30, 0x68(r1)
/* 80158E20 00154A80 83 A1 00 64 */ lwz r29, 0x64(r1)
/* 80158E24 00154A84 7C 08 03 A6 */ mtlr r0
/* 80158E28 00154A88 38 21 00 70 */ addi r1, r1, 0x70
/* 80158E2C 00154A8C 4E 80 00 20 */ blr
.global func_80158E30
func_80158E30:
/* 80158E30 00154A90 38 A0 00 01 */ li r5, 1
/* 80158E34 00154A94 38 6D 9D 20 */ addi r3, r13, lbl_8063EFE0-_SDA_BASE_
/* 80158E38 00154A98 38 80 00 04 */ li r4, 4
/* 80158E3C 00154A9C 38 00 00 00 */ li r0, 0
/* 80158E40 00154AA0 98 AD 9D 20 */ stb r5, lbl_8063EFE0-_SDA_BASE_(r13)
/* 80158E44 00154AA4 B0 83 00 02 */ sth r4, 2(r3)
/* 80158E48 00154AA8 98 03 00 04 */ stb r0, 4(r3)
/* 80158E4C 00154AAC 4E 80 00 20 */ blr

5543
asm/code_80158E50.s Normal file

File diff suppressed because it is too large Load Diff

5896
asm/code_8015D390.s Normal file

File diff suppressed because it is too large Load Diff

293
asm/code_80162784.s Normal file
View File

@ -0,0 +1,293 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global GetButtonIndex
GetButtonIndex:
/* 80162784 0015E3E4 7C 60 00 34 */ cntlzw r0, r3
/* 80162788 0015E3E8 20 60 00 20 */ subfic r3, r0, 0x20
/* 8016278C 0015E3EC 4E 80 00 20 */ blr
.global func_80162790
func_80162790:
/* 80162790 0015E3F0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80162794 0015E3F4 7C 08 02 A6 */ mflr r0
/* 80162798 0015E3F8 3C 60 80 64 */ lis r3, lbl_8063CE34@ha
/* 8016279C 0015E3FC 90 01 00 24 */ stw r0, 0x24(r1)
/* 801627A0 0015E400 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801627A4 0015E404 93 C1 00 18 */ stw r30, 0x18(r1)
/* 801627A8 0015E408 3B C3 CE 34 */ addi r30, r3, lbl_8063CE34@l
/* 801627AC 0015E40C 38 7E 00 44 */ addi r3, r30, 0x44
/* 801627B0 0015E410 93 A1 00 14 */ stw r29, 0x14(r1)
/* 801627B4 0015E414 93 81 00 10 */ stw r28, 0x10(r1)
/* 801627B8 0015E418 48 23 3E E5 */ bl func_8039669C
/* 801627BC 0015E41C 7C 7F 1B 78 */ mr r31, r3
/* 801627C0 0015E420 3B A0 00 00 */ li r29, 0
/* 801627C4 0015E424 3B 80 00 00 */ li r28, 0
/* 801627C8 0015E428 48 00 00 2C */ b lbl_801627F4
lbl_801627CC:
/* 801627CC 0015E42C 7F 84 E3 78 */ mr r4, r28
/* 801627D0 0015E430 7F A5 EB 78 */ mr r5, r29
/* 801627D4 0015E434 38 7E 00 44 */ addi r3, r30, 0x44
/* 801627D8 0015E438 48 23 3F 7D */ bl func_80396754
/* 801627DC 0015E43C 7F 84 E3 78 */ mr r4, r28
/* 801627E0 0015E440 38 7E 00 44 */ addi r3, r30, 0x44
/* 801627E4 0015E444 48 23 3E D5 */ bl func_803966B8
/* 801627E8 0015E448 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 801627EC 0015E44C 3B 9C 00 01 */ addi r28, r28, 1
/* 801627F0 0015E450 7F BD 02 14 */ add r29, r29, r0
lbl_801627F4:
/* 801627F4 0015E454 7C 1C F8 40 */ cmplw r28, r31
/* 801627F8 0015E458 41 80 FF D4 */ blt lbl_801627CC
/* 801627FC 0015E45C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80162800 0015E460 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80162804 0015E464 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80162808 0015E468 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8016280C 0015E46C 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80162810 0015E470 7C 08 03 A6 */ mtlr r0
/* 80162814 0015E474 38 21 00 20 */ addi r1, r1, 0x20
/* 80162818 0015E478 4E 80 00 20 */ blr
.global func_8016281C
func_8016281C:
/* 8016281C 0015E47C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80162820 0015E480 7C 08 02 A6 */ mflr r0
/* 80162824 0015E484 3C 80 80 64 */ lis r4, lbl_8063CE34@ha
/* 80162828 0015E488 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016282C 0015E48C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80162830 0015E490 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80162834 0015E494 3B C4 CE 34 */ addi r30, r4, lbl_8063CE34@l
/* 80162838 0015E498 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8016283C 0015E49C 7C 7D 1B 78 */ mr r29, r3
/* 80162840 0015E4A0 38 7E 00 44 */ addi r3, r30, 0x44
/* 80162844 0015E4A4 48 23 3E 59 */ bl func_8039669C
/* 80162848 0015E4A8 9B AD 9D 7E */ stb r29, lbl_8063F03E-_SDA_BASE_(r13)
/* 8016284C 0015E4AC 7C 7F 1B 78 */ mr r31, r3
/* 80162850 0015E4B0 3B A0 00 00 */ li r29, 0
/* 80162854 0015E4B4 48 00 00 24 */ b lbl_80162878
lbl_80162858:
/* 80162858 0015E4B8 7F A4 EB 78 */ mr r4, r29
/* 8016285C 0015E4BC 38 7E 00 44 */ addi r3, r30, 0x44
/* 80162860 0015E4C0 48 23 3E 8D */ bl func_803966EC
/* 80162864 0015E4C4 7C 64 1B 78 */ mr r4, r3
/* 80162868 0015E4C8 7F A3 EB 78 */ mr r3, r29
/* 8016286C 0015E4CC 38 A0 00 00 */ li r5, 0
/* 80162870 0015E4D0 48 00 00 D1 */ bl func_80162940
/* 80162874 0015E4D4 3B BD 00 01 */ addi r29, r29, 1
lbl_80162878:
/* 80162878 0015E4D8 7C 1D F8 40 */ cmplw r29, r31
/* 8016287C 0015E4DC 41 80 FF DC */ blt lbl_80162858
/* 80162880 0015E4E0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80162884 0015E4E4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80162888 0015E4E8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8016288C 0015E4EC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80162890 0015E4F0 7C 08 03 A6 */ mtlr r0
/* 80162894 0015E4F4 38 21 00 20 */ addi r1, r1, 0x20
/* 80162898 0015E4F8 4E 80 00 20 */ blr
.global func_8016289C
func_8016289C:
/* 8016289C 0015E4FC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801628A0 0015E500 7C 08 02 A6 */ mflr r0
/* 801628A4 0015E504 3C 80 80 64 */ lis r4, lbl_8063CE34@ha
/* 801628A8 0015E508 90 01 00 24 */ stw r0, 0x24(r1)
/* 801628AC 0015E50C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801628B0 0015E510 93 C1 00 18 */ stw r30, 0x18(r1)
/* 801628B4 0015E514 3B C4 CE 34 */ addi r30, r4, lbl_8063CE34@l
/* 801628B8 0015E518 93 A1 00 14 */ stw r29, 0x14(r1)
/* 801628BC 0015E51C 7C 7D 1B 78 */ mr r29, r3
/* 801628C0 0015E520 38 7E 00 44 */ addi r3, r30, 0x44
/* 801628C4 0015E524 48 23 3D D9 */ bl func_8039669C
/* 801628C8 0015E528 9B AD 9D 7E */ stb r29, lbl_8063F03E-_SDA_BASE_(r13)
/* 801628CC 0015E52C 7C 7F 1B 78 */ mr r31, r3
/* 801628D0 0015E530 3B A0 00 00 */ li r29, 0
/* 801628D4 0015E534 48 00 00 3C */ b lbl_80162910
lbl_801628D8:
/* 801628D8 0015E538 7F A4 EB 78 */ mr r4, r29
/* 801628DC 0015E53C 38 7E 00 44 */ addi r3, r30, 0x44
/* 801628E0 0015E540 48 23 3E AD */ bl func_8039678C
/* 801628E4 0015E544 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 801628E8 0015E548 28 00 00 01 */ cmplwi r0, 1
/* 801628EC 0015E54C 40 82 00 20 */ bne lbl_8016290C
/* 801628F0 0015E550 7F A4 EB 78 */ mr r4, r29
/* 801628F4 0015E554 38 7E 00 44 */ addi r3, r30, 0x44
/* 801628F8 0015E558 48 23 3D F5 */ bl func_803966EC
/* 801628FC 0015E55C 7C 64 1B 78 */ mr r4, r3
/* 80162900 0015E560 7F A3 EB 78 */ mr r3, r29
/* 80162904 0015E564 38 A0 00 00 */ li r5, 0
/* 80162908 0015E568 48 00 00 39 */ bl func_80162940
lbl_8016290C:
/* 8016290C 0015E56C 3B BD 00 01 */ addi r29, r29, 1
lbl_80162910:
/* 80162910 0015E570 7C 1D F8 40 */ cmplw r29, r31
/* 80162914 0015E574 41 80 FF C4 */ blt lbl_801628D8
/* 80162918 0015E578 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016291C 0015E57C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80162920 0015E580 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80162924 0015E584 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80162928 0015E588 7C 08 03 A6 */ mtlr r0
/* 8016292C 0015E58C 38 21 00 20 */ addi r1, r1, 0x20
/* 80162930 0015E590 4E 80 00 20 */ blr
.global func_80162934
func_80162934:
/* 80162934 0015E594 38 80 00 01 */ li r4, 1
/* 80162938 0015E598 38 A0 00 01 */ li r5, 1
/* 8016293C 0015E59C 48 00 00 04 */ b func_80162940
.global func_80162940
func_80162940:
/* 80162940 0015E5A0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80162944 0015E5A4 7C 08 02 A6 */ mflr r0
/* 80162948 0015E5A8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016294C 0015E5AC 39 61 00 20 */ addi r11, r1, 0x20
/* 80162950 0015E5B0 48 06 47 D9 */ bl _savegpr_27
/* 80162954 0015E5B4 3F A0 80 64 */ lis r29, lbl_8063CE34@ha
/* 80162958 0015E5B8 7C 7E 1B 78 */ mr r30, r3
/* 8016295C 0015E5BC 3B BD CE 34 */ addi r29, r29, lbl_8063CE34@l
/* 80162960 0015E5C0 7C 9C 23 78 */ mr r28, r4
/* 80162964 0015E5C4 7C BB 2B 78 */ mr r27, r5
/* 80162968 0015E5C8 7F C4 F3 78 */ mr r4, r30
/* 8016296C 0015E5CC 38 7D 00 44 */ addi r3, r29, 0x44
/* 80162970 0015E5D0 48 23 3D 49 */ bl func_803966B8
/* 80162974 0015E5D4 54 7F 06 3E */ clrlwi r31, r3, 0x18
/* 80162978 0015E5D8 7F C4 F3 78 */ mr r4, r30
/* 8016297C 0015E5DC 38 7D 00 44 */ addi r3, r29, 0x44
/* 80162980 0015E5E0 48 23 3D A1 */ bl func_80396720
/* 80162984 0015E5E4 2C 1B 00 00 */ cmpwi r27, 0
/* 80162988 0015E5E8 54 7B D9 7E */ srwi r27, r3, 5
/* 8016298C 0015E5EC 54 7E 06 FE */ clrlwi r30, r3, 0x1b
/* 80162990 0015E5F0 41 82 00 0C */ beq lbl_8016299C
/* 80162994 0015E5F4 4B FF CD 4D */ bl func_8015F6E0
/* 80162998 0015E5F8 48 00 00 0C */ b lbl_801629A4
lbl_8016299C:
/* 8016299C 0015E5FC 88 6D 9D 7E */ lbz r3, lbl_8063F03E-_SDA_BASE_(r13)
/* 801629A0 0015E600 4B FF CD 11 */ bl func_8015F6B0
lbl_801629A4:
/* 801629A4 0015E604 3F A3 00 01 */ addis r29, r3, 1
/* 801629A8 0015E608 7F 83 E3 78 */ mr r3, r28
/* 801629AC 0015E60C 3B BD 24 D8 */ addi r29, r29, 0x24d8
/* 801629B0 0015E610 4B FF FD D5 */ bl GetButtonIndex
/* 801629B4 0015E614 7C 03 F8 40 */ cmplw r3, r31
/* 801629B8 0015E618 40 81 00 18 */ ble lbl_801629D0
/* 801629BC 0015E61C 3C 60 80 42 */ lis r3, lbl_8041F078@ha
/* 801629C0 0015E620 57 E0 10 3A */ slwi r0, r31, 2
/* 801629C4 0015E624 38 63 F0 78 */ addi r3, r3, lbl_8041F078@l
/* 801629C8 0015E628 7C 03 00 2E */ lwzx r0, r3, r0
/* 801629CC 0015E62C 7F 9C 00 38 */ and r28, r28, r0
lbl_801629D0:
/* 801629D0 0015E630 28 1F 00 01 */ cmplwi r31, 1
/* 801629D4 0015E634 40 81 00 68 */ ble lbl_80162A3C
/* 801629D8 0015E638 3C 80 80 42 */ lis r4, lbl_8041F078@ha
/* 801629DC 0015E63C 57 63 10 3A */ slwi r3, r27, 2
/* 801629E0 0015E640 57 E0 10 3A */ slwi r0, r31, 2
/* 801629E4 0015E644 7C DF F2 14 */ add r6, r31, r30
/* 801629E8 0015E648 7C BD 1A 14 */ add r5, r29, r3
/* 801629EC 0015E64C 38 84 F0 78 */ addi r4, r4, lbl_8041F078@l
/* 801629F0 0015E650 7C 64 00 2E */ lwzx r3, r4, r0
/* 801629F4 0015E654 7F 80 F0 30 */ slw r0, r28, r30
/* 801629F8 0015E658 80 E5 00 00 */ lwz r7, 0(r5)
/* 801629FC 0015E65C 28 06 00 20 */ cmplwi r6, 0x20
/* 80162A00 0015E660 7C 63 F0 30 */ slw r3, r3, r30
/* 80162A04 0015E664 7C E7 18 78 */ andc r7, r7, r3
/* 80162A08 0015E668 7C 00 3B 78 */ or r0, r0, r7
/* 80162A0C 0015E66C 90 05 00 00 */ stw r0, 0(r5)
/* 80162A10 0015E670 41 80 00 68 */ blt lbl_80162A78
/* 80162A14 0015E674 38 E6 FF E0 */ addi r7, r6, -32
/* 80162A18 0015E678 80 C5 00 04 */ lwz r6, 4(r5)
/* 80162A1C 0015E67C 54 E0 10 3A */ slwi r0, r7, 2
/* 80162A20 0015E680 7C 64 00 2E */ lwzx r3, r4, r0
/* 80162A24 0015E684 7C 07 F8 50 */ subf r0, r7, r31
/* 80162A28 0015E688 7F 80 04 30 */ srw r0, r28, r0
/* 80162A2C 0015E68C 7C C6 18 78 */ andc r6, r6, r3
/* 80162A30 0015E690 7C 00 33 78 */ or r0, r0, r6
/* 80162A34 0015E694 90 05 00 04 */ stw r0, 4(r5)
/* 80162A38 0015E698 48 00 00 40 */ b lbl_80162A78
lbl_80162A3C:
/* 80162A3C 0015E69C 2C 1C 00 00 */ cmpwi r28, 0
/* 80162A40 0015E6A0 40 82 00 20 */ bne lbl_80162A60
/* 80162A44 0015E6A4 57 64 10 3A */ slwi r4, r27, 2
/* 80162A48 0015E6A8 38 00 00 01 */ li r0, 1
/* 80162A4C 0015E6AC 7C 7D 20 2E */ lwzx r3, r29, r4
/* 80162A50 0015E6B0 7C 00 F0 30 */ slw r0, r0, r30
/* 80162A54 0015E6B4 7C 60 00 78 */ andc r0, r3, r0
/* 80162A58 0015E6B8 7C 1D 21 2E */ stwx r0, r29, r4
/* 80162A5C 0015E6BC 48 00 00 1C */ b lbl_80162A78
lbl_80162A60:
/* 80162A60 0015E6C0 57 64 10 3A */ slwi r4, r27, 2
/* 80162A64 0015E6C4 38 00 00 01 */ li r0, 1
/* 80162A68 0015E6C8 7C 7D 20 2E */ lwzx r3, r29, r4
/* 80162A6C 0015E6CC 7C 00 F0 30 */ slw r0, r0, r30
/* 80162A70 0015E6D0 7C 60 03 78 */ or r0, r3, r0
/* 80162A74 0015E6D4 7C 1D 21 2E */ stwx r0, r29, r4
lbl_80162A78:
/* 80162A78 0015E6D8 39 61 00 20 */ addi r11, r1, 0x20
/* 80162A7C 0015E6DC 48 06 46 F9 */ bl _restgpr_27
/* 80162A80 0015E6E0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80162A84 0015E6E4 7C 08 03 A6 */ mtlr r0
/* 80162A88 0015E6E8 38 21 00 20 */ addi r1, r1, 0x20
/* 80162A8C 0015E6EC 4E 80 00 20 */ blr
.global func_80162A90
func_80162A90:
/* 80162A90 0015E6F0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80162A94 0015E6F4 7C 08 02 A6 */ mflr r0
/* 80162A98 0015E6F8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80162A9C 0015E6FC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80162AA0 0015E700 3F E0 80 64 */ lis r31, lbl_8063CE34@ha
/* 80162AA4 0015E704 3B FF CE 34 */ addi r31, r31, lbl_8063CE34@l
/* 80162AA8 0015E708 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80162AAC 0015E70C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80162AB0 0015E710 7C 7D 1B 78 */ mr r29, r3
/* 80162AB4 0015E714 7F A4 EB 78 */ mr r4, r29
/* 80162AB8 0015E718 38 7F 00 44 */ addi r3, r31, 0x44
/* 80162ABC 0015E71C 48 23 3B FD */ bl func_803966B8
/* 80162AC0 0015E720 54 7E 06 3E */ clrlwi r30, r3, 0x18
/* 80162AC4 0015E724 7F A4 EB 78 */ mr r4, r29
/* 80162AC8 0015E728 38 7F 00 44 */ addi r3, r31, 0x44
/* 80162ACC 0015E72C 48 23 3C 55 */ bl func_80396720
/* 80162AD0 0015E730 54 7F D9 7E */ srwi r31, r3, 5
/* 80162AD4 0015E734 54 7D 06 FE */ clrlwi r29, r3, 0x1b
/* 80162AD8 0015E738 4B FF CC 09 */ bl func_8015F6E0
/* 80162ADC 0015E73C 28 1E 00 01 */ cmplwi r30, 1
/* 80162AE0 0015E740 3C A3 00 01 */ addis r5, r3, 1
/* 80162AE4 0015E744 38 A5 24 D8 */ addi r5, r5, 0x24d8
/* 80162AE8 0015E748 40 81 00 3C */ ble lbl_80162B24
/* 80162AEC 0015E74C 57 E0 10 3A */ slwi r0, r31, 2
/* 80162AF0 0015E750 3C 60 80 42 */ lis r3, lbl_8041F078@ha
/* 80162AF4 0015E754 7C 85 02 14 */ add r4, r5, r0
/* 80162AF8 0015E758 7C A5 00 2E */ lwzx r5, r5, r0
/* 80162AFC 0015E75C 80 C4 00 04 */ lwz r6, 4(r4)
/* 80162B00 0015E760 20 9D 00 20 */ subfic r4, r29, 0x20
/* 80162B04 0015E764 57 C0 10 3A */ slwi r0, r30, 2
/* 80162B08 0015E768 38 63 F0 78 */ addi r3, r3, lbl_8041F078@l
/* 80162B0C 0015E76C 7C A5 EC 30 */ srw r5, r5, r29
/* 80162B10 0015E770 7C C6 20 30 */ slw r6, r6, r4
/* 80162B14 0015E774 7C 03 00 2E */ lwzx r0, r3, r0
/* 80162B18 0015E778 7C C3 2B 78 */ or r3, r6, r5
/* 80162B1C 0015E77C 7C 63 00 38 */ and r3, r3, r0
/* 80162B20 0015E780 48 00 00 14 */ b lbl_80162B34
lbl_80162B24:
/* 80162B24 0015E784 57 E0 10 3A */ slwi r0, r31, 2
/* 80162B28 0015E788 7C 05 00 2E */ lwzx r0, r5, r0
/* 80162B2C 0015E78C 7C 00 EC 30 */ srw r0, r0, r29
/* 80162B30 0015E790 54 03 07 FE */ clrlwi r3, r0, 0x1f
lbl_80162B34:
/* 80162B34 0015E794 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80162B38 0015E798 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80162B3C 0015E79C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80162B40 0015E7A0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80162B44 0015E7A4 7C 08 03 A6 */ mtlr r0
/* 80162B48 0015E7A8 38 21 00 20 */ addi r1, r1, 0x20
/* 80162B4C 0015E7AC 4E 80 00 20 */ blr
.global func_80162B50
func_80162B50:
/* 80162B50 0015E7B0 38 A0 00 01 */ li r5, 1
/* 80162B54 0015E7B4 38 6D 9D 78 */ addi r3, r13, lbl_8063F038-_SDA_BASE_
/* 80162B58 0015E7B8 38 80 00 04 */ li r4, 4
/* 80162B5C 0015E7BC 38 00 00 00 */ li r0, 0
/* 80162B60 0015E7C0 98 AD 9D 78 */ stb r5, lbl_8063F038-_SDA_BASE_(r13)
/* 80162B64 0015E7C4 B0 83 00 02 */ sth r4, 2(r3)
/* 80162B68 0015E7C8 98 03 00 04 */ stb r0, 4(r3)
/* 80162B6C 0015E7CC 4E 80 00 20 */ blr

681
asm/code_80162B70.s Normal file
View File

@ -0,0 +1,681 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_80162B70
func_80162B70:
/* 80162B70 0015E7D0 80 0D 9D 90 */ lwz r0, lbl_8063F050-_SDA_BASE_(r13)
/* 80162B74 0015E7D4 80 6D 9D 88 */ lwz r3, lbl_8063F048-_SDA_BASE_(r13)
/* 80162B78 0015E7D8 2C 00 00 00 */ cmpwi r0, 0
/* 80162B7C 0015E7DC 4D 82 00 20 */ beqlr
/* 80162B80 0015E7E0 7C 03 03 78 */ mr r3, r0
/* 80162B84 0015E7E4 4E 80 00 20 */ blr
.global func_80162B88
func_80162B88:
/* 80162B88 0015E7E8 4E 80 00 20 */ blr
.global func_80162B8C
func_80162B8C:
/* 80162B8C 0015E7EC 4E 80 00 20 */ blr
.global func_80162B90
func_80162B90:
/* 80162B90 0015E7F0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80162B94 0015E7F4 7C 08 02 A6 */ mflr r0
/* 80162B98 0015E7F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80162B9C 0015E7FC 4B FF FF ED */ bl func_80162B88
/* 80162BA0 0015E800 48 0F B4 31 */ bl func_8025DFD0
/* 80162BA4 0015E804 48 0F B7 69 */ bl func_8025E30C
/* 80162BA8 0015E808 38 80 03 71 */ li r4, 0x371
/* 80162BAC 0015E80C 48 0F E9 F5 */ bl func_802615A0
/* 80162BB0 0015E810 48 0F B4 21 */ bl func_8025DFD0
/* 80162BB4 0015E814 48 0F B7 59 */ bl func_8025E30C
/* 80162BB8 0015E818 38 80 00 00 */ li r4, 0
/* 80162BBC 0015E81C 38 A0 00 00 */ li r5, 0
/* 80162BC0 0015E820 48 0F F9 91 */ bl func_80262550
/* 80162BC4 0015E824 48 0F B4 0D */ bl func_8025DFD0
/* 80162BC8 0015E828 48 0F B5 29 */ bl func_8025E0F0
/* 80162BCC 0015E82C 2C 03 00 00 */ cmpwi r3, 0
/* 80162BD0 0015E830 41 82 00 08 */ beq lbl_80162BD8
/* 80162BD4 0015E834 48 00 00 18 */ b lbl_80162BEC
lbl_80162BD8:
/* 80162BD8 0015E838 48 00 4E 89 */ bl func_80167A60
/* 80162BDC 0015E83C 48 0F B3 F5 */ bl func_8025DFD0
/* 80162BE0 0015E840 48 0F B7 2D */ bl func_8025E30C
/* 80162BE4 0015E844 38 80 00 05 */ li r4, 5
/* 80162BE8 0015E848 48 0F EC 19 */ bl func_80261800
lbl_80162BEC:
/* 80162BEC 0015E84C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80162BF0 0015E850 7C 08 03 A6 */ mtlr r0
/* 80162BF4 0015E854 38 21 00 10 */ addi r1, r1, 0x10
/* 80162BF8 0015E858 4E 80 00 20 */ blr
.global func_80162BFC
func_80162BFC:
/* 80162BFC 0015E85C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80162C00 0015E860 7C 08 02 A6 */ mflr r0
/* 80162C04 0015E864 90 01 00 14 */ stw r0, 0x14(r1)
/* 80162C08 0015E868 48 0F B3 C9 */ bl func_8025DFD0
/* 80162C0C 0015E86C 48 0F B7 01 */ bl func_8025E30C
/* 80162C10 0015E870 38 80 03 71 */ li r4, 0x371
/* 80162C14 0015E874 48 0F E9 8D */ bl func_802615A0
/* 80162C18 0015E878 48 0F B3 B9 */ bl func_8025DFD0
/* 80162C1C 0015E87C 48 0F B6 F1 */ bl func_8025E30C
/* 80162C20 0015E880 38 80 00 00 */ li r4, 0
/* 80162C24 0015E884 38 A0 00 00 */ li r5, 0
/* 80162C28 0015E888 48 0F F9 29 */ bl func_80262550
/* 80162C2C 0015E88C 48 0F B3 A5 */ bl func_8025DFD0
/* 80162C30 0015E890 48 0F B4 C1 */ bl func_8025E0F0
/* 80162C34 0015E894 2C 03 00 00 */ cmpwi r3, 0
/* 80162C38 0015E898 41 82 00 08 */ beq lbl_80162C40
/* 80162C3C 0015E89C 48 00 00 18 */ b lbl_80162C54
lbl_80162C40:
/* 80162C40 0015E8A0 48 00 4E 21 */ bl func_80167A60
/* 80162C44 0015E8A4 48 0F B3 8D */ bl func_8025DFD0
/* 80162C48 0015E8A8 48 0F B6 C5 */ bl func_8025E30C
/* 80162C4C 0015E8AC 38 80 00 02 */ li r4, 2
/* 80162C50 0015E8B0 48 0F EB B1 */ bl func_80261800
lbl_80162C54:
/* 80162C54 0015E8B4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80162C58 0015E8B8 7C 08 03 A6 */ mtlr r0
/* 80162C5C 0015E8BC 38 21 00 10 */ addi r1, r1, 0x10
/* 80162C60 0015E8C0 4E 80 00 20 */ blr
.global func_80162C64
func_80162C64:
/* 80162C64 0015E8C4 90 6D 9D 94 */ stw r3, lbl_8063F054-_SDA_BASE_(r13)
/* 80162C68 0015E8C8 90 8D 9D 98 */ stw r4, lbl_8063F058-_SDA_BASE_(r13)
/* 80162C6C 0015E8CC 4E 80 00 20 */ blr
.global func_80162C70
func_80162C70:
/* 80162C70 0015E8D0 90 6D 82 FC */ stw r3, lbl_8063D5BC-_SDA_BASE_(r13)
/* 80162C74 0015E8D4 4E 80 00 20 */ blr
.global func_80162C78
func_80162C78:
/* 80162C78 0015E8D8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80162C7C 0015E8DC 7C 08 02 A6 */ mflr r0
/* 80162C80 0015E8E0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80162C84 0015E8E4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80162C88 0015E8E8 48 00 07 5D */ bl func_801633E4
/* 80162C8C 0015E8EC 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80162C90 0015E8F0 2C 00 00 03 */ cmpwi r0, 3
/* 80162C94 0015E8F4 41 82 00 40 */ beq lbl_80162CD4
/* 80162C98 0015E8F8 40 80 00 14 */ bge lbl_80162CAC
/* 80162C9C 0015E8FC 2C 00 00 01 */ cmpwi r0, 1
/* 80162CA0 0015E900 41 82 00 1C */ beq lbl_80162CBC
/* 80162CA4 0015E904 40 80 00 24 */ bge lbl_80162CC8
/* 80162CA8 0015E908 48 00 00 50 */ b lbl_80162CF8
lbl_80162CAC:
/* 80162CAC 0015E90C 2C 00 00 05 */ cmpwi r0, 5
/* 80162CB0 0015E910 41 82 00 3C */ beq lbl_80162CEC
/* 80162CB4 0015E914 40 80 00 44 */ bge lbl_80162CF8
/* 80162CB8 0015E918 48 00 00 28 */ b lbl_80162CE0
lbl_80162CBC:
/* 80162CBC 0015E91C 3C 60 00 40 */ lis r3, 0x00400318@ha
/* 80162CC0 0015E920 3B E3 03 18 */ addi r31, r3, 0x00400318@l
/* 80162CC4 0015E924 48 00 00 3C */ b lbl_80162D00
lbl_80162CC8:
/* 80162CC8 0015E928 3C 60 00 80 */ lis r3, 0x008000CE@ha
/* 80162CCC 0015E92C 3B E3 00 CE */ addi r31, r3, 0x008000CE@l
/* 80162CD0 0015E930 48 00 00 30 */ b lbl_80162D00
lbl_80162CD4:
/* 80162CD4 0015E934 3C 60 00 80 */ lis r3, 0x008000CD@ha
/* 80162CD8 0015E938 3B E3 00 CD */ addi r31, r3, 0x008000CD@l
/* 80162CDC 0015E93C 48 00 00 24 */ b lbl_80162D00
lbl_80162CE0:
/* 80162CE0 0015E940 3C 60 00 80 */ lis r3, 0x008000D0@ha
/* 80162CE4 0015E944 3B E3 00 D0 */ addi r31, r3, 0x008000D0@l
/* 80162CE8 0015E948 48 00 00 18 */ b lbl_80162D00
lbl_80162CEC:
/* 80162CEC 0015E94C 3C 60 00 80 */ lis r3, 0x008000CF@ha
/* 80162CF0 0015E950 3B E3 00 CF */ addi r31, r3, 0x008000CF@l
/* 80162CF4 0015E954 48 00 00 0C */ b lbl_80162D00
lbl_80162CF8:
/* 80162CF8 0015E958 3C 60 00 40 */ lis r3, 0x00400318@ha
/* 80162CFC 0015E95C 3B E3 03 18 */ addi r31, r3, 0x00400318@l
lbl_80162D00:
/* 80162D00 0015E960 48 0F B2 D1 */ bl func_8025DFD0
/* 80162D04 0015E964 48 0F B6 09 */ bl func_8025E30C
/* 80162D08 0015E968 7F E4 FB 78 */ mr r4, r31
/* 80162D0C 0015E96C 48 0F E8 95 */ bl func_802615A0
/* 80162D10 0015E970 48 0F B2 C1 */ bl func_8025DFD0
/* 80162D14 0015E974 48 0F B5 F9 */ bl func_8025E30C
/* 80162D18 0015E978 80 8D 82 FC */ lwz r4, lbl_8063D5BC-_SDA_BASE_(r13)
/* 80162D1C 0015E97C 48 0F F8 2D */ bl func_80262548
/* 80162D20 0015E980 48 0F B2 B1 */ bl func_8025DFD0
/* 80162D24 0015E984 48 0F B5 E9 */ bl func_8025E30C
/* 80162D28 0015E988 80 8D 9D 98 */ lwz r4, lbl_8063F058-_SDA_BASE_(r13)
/* 80162D2C 0015E98C 80 AD 9D 94 */ lwz r5, lbl_8063F054-_SDA_BASE_(r13)
/* 80162D30 0015E990 48 0F F8 21 */ bl func_80262550
/* 80162D34 0015E994 48 0F B2 9D */ bl func_8025DFD0
/* 80162D38 0015E998 48 0F B3 B9 */ bl func_8025E0F0
/* 80162D3C 0015E99C 2C 03 00 00 */ cmpwi r3, 0
/* 80162D40 0015E9A0 41 82 00 08 */ beq lbl_80162D48
/* 80162D44 0015E9A4 48 00 00 14 */ b lbl_80162D58
lbl_80162D48:
/* 80162D48 0015E9A8 48 0F B2 89 */ bl func_8025DFD0
/* 80162D4C 0015E9AC 48 0F B5 C1 */ bl func_8025E30C
/* 80162D50 0015E9B0 38 80 00 01 */ li r4, 1
/* 80162D54 0015E9B4 48 0F EA AD */ bl func_80261800
lbl_80162D58:
/* 80162D58 0015E9B8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80162D5C 0015E9BC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80162D60 0015E9C0 7C 08 03 A6 */ mtlr r0
/* 80162D64 0015E9C4 38 21 00 10 */ addi r1, r1, 0x10
/* 80162D68 0015E9C8 4E 80 00 20 */ blr
.global func_80162D6C
func_80162D6C:
/* 80162D6C 0015E9CC 90 6D 83 04 */ stw r3, lbl_8063D5C4-_SDA_BASE_(r13)
/* 80162D70 0015E9D0 90 8D 83 00 */ stw r4, lbl_8063D5C0-_SDA_BASE_(r13)
/* 80162D74 0015E9D4 4E 80 00 20 */ blr
.global func_80162D78
func_80162D78:
/* 80162D78 0015E9D8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80162D7C 0015E9DC 7C 08 02 A6 */ mflr r0
/* 80162D80 0015E9E0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80162D84 0015E9E4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80162D88 0015E9E8 83 ED 83 04 */ lwz r31, lbl_8063D5C4-_SDA_BASE_(r13)
/* 80162D8C 0015E9EC 48 00 06 59 */ bl func_801633E4
/* 80162D90 0015E9F0 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80162D94 0015E9F4 2C 00 00 03 */ cmpwi r0, 3
/* 80162D98 0015E9F8 41 82 00 38 */ beq lbl_80162DD0
/* 80162D9C 0015E9FC 40 80 00 14 */ bge lbl_80162DB0
/* 80162DA0 0015EA00 2C 00 00 01 */ cmpwi r0, 1
/* 80162DA4 0015EA04 41 82 00 1C */ beq lbl_80162DC0
/* 80162DA8 0015EA08 40 80 00 20 */ bge lbl_80162DC8
/* 80162DAC 0015EA0C 48 00 00 38 */ b lbl_80162DE4
lbl_80162DB0:
/* 80162DB0 0015EA10 2C 00 00 05 */ cmpwi r0, 5
/* 80162DB4 0015EA14 41 82 00 2C */ beq lbl_80162DE0
/* 80162DB8 0015EA18 40 80 00 2C */ bge lbl_80162DE4
/* 80162DBC 0015EA1C 48 00 00 1C */ b lbl_80162DD8
lbl_80162DC0:
/* 80162DC0 0015EA20 83 ED 83 08 */ lwz r31, lbl_8063D5C8-_SDA_BASE_(r13)
/* 80162DC4 0015EA24 48 00 00 20 */ b lbl_80162DE4
lbl_80162DC8:
/* 80162DC8 0015EA28 83 ED 83 0C */ lwz r31, lbl_8063D5CC-_SDA_BASE_(r13)
/* 80162DCC 0015EA2C 48 00 00 18 */ b lbl_80162DE4
lbl_80162DD0:
/* 80162DD0 0015EA30 83 ED 83 10 */ lwz r31, lbl_8063D5D0-_SDA_BASE_(r13)
/* 80162DD4 0015EA34 48 00 00 10 */ b lbl_80162DE4
lbl_80162DD8:
/* 80162DD8 0015EA38 83 ED 83 14 */ lwz r31, lbl_8063D5D4-_SDA_BASE_(r13)
/* 80162DDC 0015EA3C 48 00 00 08 */ b lbl_80162DE4
lbl_80162DE0:
/* 80162DE0 0015EA40 83 ED 83 18 */ lwz r31, lbl_8063D5D8-_SDA_BASE_(r13)
lbl_80162DE4:
/* 80162DE4 0015EA44 4B FF FD A5 */ bl func_80162B88
/* 80162DE8 0015EA48 48 0F B1 E9 */ bl func_8025DFD0
/* 80162DEC 0015EA4C 48 0F B5 29 */ bl func_8025E314
/* 80162DF0 0015EA50 80 ED 83 00 */ lwz r7, lbl_8063D5C0-_SDA_BASE_(r13)
/* 80162DF4 0015EA54 7F E4 FB 78 */ mr r4, r31
/* 80162DF8 0015EA58 38 AD 83 20 */ addi r5, r13, lbl_8063D5E0-_SDA_BASE_
/* 80162DFC 0015EA5C 38 CD 83 20 */ addi r6, r13, lbl_8063D5E0-_SDA_BASE_
/* 80162E00 0015EA60 48 10 04 31 */ bl func_80263230
/* 80162E04 0015EA64 2C 83 00 00 */ cmpwi cr1, r3, 0
/* 80162E08 0015EA68 7C 7F 1B 78 */ mr r31, r3
/* 80162E0C 0015EA6C 41 86 00 08 */ beq cr1, lbl_80162E14
/* 80162E10 0015EA70 48 00 00 B8 */ b lbl_80162EC8
lbl_80162E14:
/* 80162E14 0015EA74 80 0D 9D 88 */ lwz r0, lbl_8063F048-_SDA_BASE_(r13)
/* 80162E18 0015EA78 2C 00 00 04 */ cmpwi r0, 4
/* 80162E1C 0015EA7C 41 82 00 0C */ beq lbl_80162E28
/* 80162E20 0015EA80 38 60 FF FF */ li r3, -1
/* 80162E24 0015EA84 48 00 00 A4 */ b lbl_80162EC8
lbl_80162E28:
/* 80162E28 0015EA88 40 86 00 9C */ bne cr1, lbl_80162EC4
/* 80162E2C 0015EA8C 48 00 05 B9 */ bl func_801633E4
/* 80162E30 0015EA90 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80162E34 0015EA94 2C 00 00 03 */ cmpwi r0, 3
/* 80162E38 0015EA98 41 82 00 40 */ beq lbl_80162E78
/* 80162E3C 0015EA9C 40 80 00 14 */ bge lbl_80162E50
/* 80162E40 0015EAA0 2C 00 00 01 */ cmpwi r0, 1
/* 80162E44 0015EAA4 41 82 00 1C */ beq lbl_80162E60
/* 80162E48 0015EAA8 40 80 00 24 */ bge lbl_80162E6C
/* 80162E4C 0015EAAC 48 00 00 50 */ b lbl_80162E9C
lbl_80162E50:
/* 80162E50 0015EAB0 2C 00 00 05 */ cmpwi r0, 5
/* 80162E54 0015EAB4 41 82 00 3C */ beq lbl_80162E90
/* 80162E58 0015EAB8 40 80 00 44 */ bge lbl_80162E9C
/* 80162E5C 0015EABC 48 00 00 28 */ b lbl_80162E84
lbl_80162E60:
/* 80162E60 0015EAC0 3C 60 00 40 */ lis r3, 0x00400286@ha
/* 80162E64 0015EAC4 3B E3 02 86 */ addi r31, r3, 0x00400286@l
/* 80162E68 0015EAC8 48 00 00 3C */ b lbl_80162EA4
lbl_80162E6C:
/* 80162E6C 0015EACC 3C 60 00 80 */ lis r3, 0x008000ED@ha
/* 80162E70 0015EAD0 3B E3 00 ED */ addi r31, r3, 0x008000ED@l
/* 80162E74 0015EAD4 48 00 00 30 */ b lbl_80162EA4
lbl_80162E78:
/* 80162E78 0015EAD8 3C 60 00 80 */ lis r3, 0x008000EC@ha
/* 80162E7C 0015EADC 3B E3 00 EC */ addi r31, r3, 0x008000EC@l
/* 80162E80 0015EAE0 48 00 00 24 */ b lbl_80162EA4
lbl_80162E84:
/* 80162E84 0015EAE4 3C 60 00 80 */ lis r3, 0x008000EF@ha
/* 80162E88 0015EAE8 3B E3 00 EF */ addi r31, r3, 0x008000EF@l
/* 80162E8C 0015EAEC 48 00 00 18 */ b lbl_80162EA4
lbl_80162E90:
/* 80162E90 0015EAF0 3C 60 00 80 */ lis r3, 0x008000EE@ha
/* 80162E94 0015EAF4 3B E3 00 EE */ addi r31, r3, 0x008000EE@l
/* 80162E98 0015EAF8 48 00 00 0C */ b lbl_80162EA4
lbl_80162E9C:
/* 80162E9C 0015EAFC 3C 60 00 40 */ lis r3, 0x00400286@ha
/* 80162EA0 0015EB00 3B E3 02 86 */ addi r31, r3, 0x00400286@l
lbl_80162EA4:
/* 80162EA4 0015EB04 48 0F B1 2D */ bl func_8025DFD0
/* 80162EA8 0015EB08 48 0F B4 6D */ bl func_8025E314
/* 80162EAC 0015EB0C 7F E4 FB 78 */ mr r4, r31
/* 80162EB0 0015EB10 48 10 03 6D */ bl func_8026321C
/* 80162EB4 0015EB14 48 0F B1 1D */ bl func_8025DFD0
/* 80162EB8 0015EB18 48 0F B2 6D */ bl func_8025E124
/* 80162EBC 0015EB1C 7C 7F 1B 78 */ mr r31, r3
/* 80162EC0 0015EB20 48 00 4B A1 */ bl func_80167A60
lbl_80162EC4:
/* 80162EC4 0015EB24 7F E3 FB 78 */ mr r3, r31
lbl_80162EC8:
/* 80162EC8 0015EB28 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80162ECC 0015EB2C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80162ED0 0015EB30 7C 08 03 A6 */ mtlr r0
/* 80162ED4 0015EB34 38 21 00 10 */ addi r1, r1, 0x10
/* 80162ED8 0015EB38 4E 80 00 20 */ blr
lbl_80162EDC:
/* 80162EDC 0015EB3C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80162EE0 0015EB40 7C 08 02 A6 */ mflr r0
/* 80162EE4 0015EB44 90 01 00 14 */ stw r0, 0x14(r1)
/* 80162EE8 0015EB48 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80162EEC 0015EB4C 48 0F B0 E5 */ bl func_8025DFD0
/* 80162EF0 0015EB50 48 0F B2 69 */ bl func_8025E158
/* 80162EF4 0015EB54 7C 7F 1B 78 */ mr r31, r3
/* 80162EF8 0015EB58 48 00 4B 69 */ bl func_80167A60
/* 80162EFC 0015EB5C 7F E3 FB 78 */ mr r3, r31
/* 80162F00 0015EB60 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80162F04 0015EB64 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80162F08 0015EB68 7C 08 03 A6 */ mtlr r0
/* 80162F0C 0015EB6C 38 21 00 10 */ addi r1, r1, 0x10
/* 80162F10 0015EB70 4E 80 00 20 */ blr
.global func_80162F14
func_80162F14:
/* 80162F14 0015EB74 4B FF FF C8 */ b lbl_80162EDC
.global func_80162F18
func_80162F18:
/* 80162F18 0015EB78 4B FF FF C4 */ b lbl_80162EDC
.global func_80162F1C
func_80162F1C:
/* 80162F1C 0015EB7C 4B FF FF C0 */ b lbl_80162EDC
.global glxSwapWaitDrawDone
glxSwapWaitDrawDone:
/* 80162F20 0015EB80 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80162F24 0015EB84 7C 08 02 A6 */ mflr r0
/* 80162F28 0015EB88 90 01 00 14 */ stw r0, 0x14(r1)
/* 80162F2C 0015EB8C 4B FF FC 61 */ bl func_80162B8C
/* 80162F30 0015EB90 48 0F B0 A1 */ bl func_8025DFD0
/* 80162F34 0015EB94 48 0F B1 7D */ bl func_8025E0B0
/* 80162F38 0015EB98 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80162F3C 0015EB9C 7C 08 03 A6 */ mtlr r0
/* 80162F40 0015EBA0 38 21 00 10 */ addi r1, r1, 0x10
/* 80162F44 0015EBA4 4E 80 00 20 */ blr
.global func_80162F48
func_80162F48:
/* 80162F48 0015EBA8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80162F4C 0015EBAC 7C 08 02 A6 */ mflr r0
/* 80162F50 0015EBB0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80162F54 0015EBB4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80162F58 0015EBB8 7C 7F 1B 78 */ mr r31, r3
/* 80162F5C 0015EBBC 48 00 04 B1 */ bl func_8016340C
/* 80162F60 0015EBC0 38 60 00 00 */ li r3, 0
/* 80162F64 0015EBC4 48 18 A2 A1 */ bl NCDSetNwc24Permission
/* 80162F68 0015EBC8 48 0F B0 69 */ bl func_8025DFD0
/* 80162F6C 0015EBCC 7F E3 FB 78 */ mr r3, r31
/* 80162F70 0015EBD0 48 0F B0 11 */ bl func_8025DF80
/* 80162F74 0015EBD4 7F E3 FB 78 */ mr r3, r31
/* 80162F78 0015EBD8 48 00 0C 05 */ bl func_80163B7C
/* 80162F7C 0015EBDC 48 00 4A E5 */ bl func_80167A60
/* 80162F80 0015EBE0 48 00 5C C9 */ bl func_80168C48
/* 80162F84 0015EBE4 48 00 65 1D */ bl func_801694A0
/* 80162F88 0015EBE8 38 60 03 00 */ li r3, 0x300
/* 80162F8C 0015EBEC 48 00 58 3D */ bl func_801687C8
/* 80162F90 0015EBF0 3C A0 80 16 */ lis r5, lbl_8016315C@ha
/* 80162F94 0015EBF4 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 80162F98 0015EBF8 38 A5 31 5C */ addi r5, r5, lbl_8016315C@l
/* 80162F9C 0015EBFC 38 80 17 70 */ li r4, 0x1770
/* 80162FA0 0015EC00 38 C0 00 00 */ li r6, 0
/* 80162FA4 0015EC04 38 E0 40 00 */ li r7, 0x4000
/* 80162FA8 0015EC08 39 00 00 08 */ li r8, 8
/* 80162FAC 0015EC0C 39 20 00 01 */ li r9, 1
/* 80162FB0 0015EC10 48 0C 12 65 */ bl func_80224214
/* 80162FB4 0015EC14 48 18 94 95 */ bl SCGetLanguage
/* 80162FB8 0015EC18 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 80162FBC 0015EC1C 48 00 04 11 */ bl func_801633CC
/* 80162FC0 0015EC20 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80162FC4 0015EC24 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80162FC8 0015EC28 7C 08 03 A6 */ mtlr r0
/* 80162FCC 0015EC2C 38 21 00 10 */ addi r1, r1, 0x10
/* 80162FD0 0015EC30 4E 80 00 20 */ blr
.global glplatAbortFrame
glplatAbortFrame:
/* 80162FD4 0015EC34 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80162FD8 0015EC38 7C 08 02 A6 */ mflr r0
/* 80162FDC 0015EC3C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80162FE0 0015EC40 48 00 06 95 */ bl func_80163674
/* 80162FE4 0015EC44 38 00 00 00 */ li r0, 0
/* 80162FE8 0015EC48 90 0D 9D 88 */ stw r0, lbl_8063F048-_SDA_BASE_(r13)
/* 80162FEC 0015EC4C 90 0D 9D 90 */ stw r0, lbl_8063F050-_SDA_BASE_(r13)
/* 80162FF0 0015EC50 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80162FF4 0015EC54 7C 08 03 A6 */ mtlr r0
/* 80162FF8 0015EC58 38 21 00 10 */ addi r1, r1, 0x10
/* 80162FFC 0015EC5C 4E 80 00 20 */ blr
.global func_80163000
func_80163000:
/* 80163000 0015EC60 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80163004 0015EC64 7C 08 02 A6 */ mflr r0
/* 80163008 0015EC68 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016300C 0015EC6C 4B EA 68 2D */ bl func_80009838
/* 80163010 0015EC70 2C 03 00 00 */ cmpwi r3, 0
/* 80163014 0015EC74 40 82 00 28 */ bne lbl_8016303C
/* 80163018 0015EC78 48 00 06 5D */ bl func_80163674
/* 8016301C 0015EC7C 3C 60 80 42 */ lis r3, lbl_8041F178@ha
/* 80163020 0015EC80 38 80 00 04 */ li r4, 4
/* 80163024 0015EC84 38 63 F1 78 */ addi r3, r3, lbl_8041F178@l
/* 80163028 0015EC88 4B FF FD 45 */ bl func_80162D6C
/* 8016302C 0015EC8C 38 60 00 04 */ li r3, 4
/* 80163030 0015EC90 38 00 00 01 */ li r0, 1
/* 80163034 0015EC94 90 6D 9D 88 */ stw r3, lbl_8063F048-_SDA_BASE_(r13)
/* 80163038 0015EC98 90 0D 9D 90 */ stw r0, lbl_8063F050-_SDA_BASE_(r13)
lbl_8016303C:
/* 8016303C 0015EC9C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80163040 0015ECA0 7C 08 03 A6 */ mtlr r0
/* 80163044 0015ECA4 38 21 00 10 */ addi r1, r1, 0x10
/* 80163048 0015ECA8 4E 80 00 20 */ blr
.global func_8016304C
func_8016304C:
/* 8016304C 0015ECAC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80163050 0015ECB0 7C 08 02 A6 */ mflr r0
/* 80163054 0015ECB4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80163058 0015ECB8 4B EA 67 E1 */ bl func_80009838
/* 8016305C 0015ECBC 2C 03 00 00 */ cmpwi r3, 0
/* 80163060 0015ECC0 40 82 00 28 */ bne lbl_80163088
/* 80163064 0015ECC4 48 00 06 11 */ bl func_80163674
/* 80163068 0015ECC8 3C 60 80 42 */ lis r3, lbl_8041F178@ha
/* 8016306C 0015ECCC 38 80 00 01 */ li r4, 1
/* 80163070 0015ECD0 38 63 F1 78 */ addi r3, r3, lbl_8041F178@l
/* 80163074 0015ECD4 4B FF FC F9 */ bl func_80162D6C
/* 80163078 0015ECD8 38 60 00 04 */ li r3, 4
/* 8016307C 0015ECDC 38 00 00 02 */ li r0, 2
/* 80163080 0015ECE0 90 6D 9D 88 */ stw r3, lbl_8063F048-_SDA_BASE_(r13)
/* 80163084 0015ECE4 90 0D 9D 90 */ stw r0, lbl_8063F050-_SDA_BASE_(r13)
lbl_80163088:
/* 80163088 0015ECE8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016308C 0015ECEC 7C 08 03 A6 */ mtlr r0
/* 80163090 0015ECF0 38 21 00 10 */ addi r1, r1, 0x10
/* 80163094 0015ECF4 4E 80 00 20 */ blr
.global func_80163098
func_80163098:
/* 80163098 0015ECF8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016309C 0015ECFC 7C 08 02 A6 */ mflr r0
/* 801630A0 0015ED00 90 01 00 14 */ stw r0, 0x14(r1)
/* 801630A4 0015ED04 4B EA 67 95 */ bl func_80009838
/* 801630A8 0015ED08 2C 03 00 00 */ cmpwi r3, 0
/* 801630AC 0015ED0C 40 82 00 10 */ bne lbl_801630BC
/* 801630B0 0015ED10 48 00 05 C5 */ bl func_80163674
/* 801630B4 0015ED14 38 00 00 03 */ li r0, 3
/* 801630B8 0015ED18 90 0D 9D 88 */ stw r0, lbl_8063F048-_SDA_BASE_(r13)
lbl_801630BC:
/* 801630BC 0015ED1C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801630C0 0015ED20 7C 08 03 A6 */ mtlr r0
/* 801630C4 0015ED24 38 21 00 10 */ addi r1, r1, 0x10
/* 801630C8 0015ED28 4E 80 00 20 */ blr
.global func_801630CC
func_801630CC:
/* 801630CC 0015ED2C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801630D0 0015ED30 7C 08 02 A6 */ mflr r0
/* 801630D4 0015ED34 90 01 00 14 */ stw r0, 0x14(r1)
/* 801630D8 0015ED38 48 0F AE F9 */ bl func_8025DFD0
/* 801630DC 0015ED3C 48 0F B2 31 */ bl func_8025E30C
/* 801630E0 0015ED40 81 83 00 00 */ lwz r12, 0(r3)
/* 801630E4 0015ED44 81 8C 00 48 */ lwz r12, 0x48(r12)
/* 801630E8 0015ED48 7D 89 03 A6 */ mtctr r12
/* 801630EC 0015ED4C 4E 80 04 21 */ bctrl
/* 801630F0 0015ED50 2C 03 00 00 */ cmpwi r3, 0
/* 801630F4 0015ED54 41 82 00 0C */ beq lbl_80163100
/* 801630F8 0015ED58 38 60 00 01 */ li r3, 1
/* 801630FC 0015ED5C 48 00 00 28 */ b lbl_80163124
lbl_80163100:
/* 80163100 0015ED60 48 0F AE D1 */ bl func_8025DFD0
/* 80163104 0015ED64 48 0F B2 11 */ bl func_8025E314
/* 80163108 0015ED68 81 83 00 00 */ lwz r12, 0(r3)
/* 8016310C 0015ED6C 81 8C 00 48 */ lwz r12, 0x48(r12)
/* 80163110 0015ED70 7D 89 03 A6 */ mtctr r12
/* 80163114 0015ED74 4E 80 04 21 */ bctrl
/* 80163118 0015ED78 7C 03 00 D0 */ neg r0, r3
/* 8016311C 0015ED7C 7C 00 1B 78 */ or r0, r0, r3
/* 80163120 0015ED80 54 03 0F FE */ srwi r3, r0, 0x1f
lbl_80163124:
/* 80163124 0015ED84 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80163128 0015ED88 7C 08 03 A6 */ mtlr r0
/* 8016312C 0015ED8C 38 21 00 10 */ addi r1, r1, 0x10
/* 80163130 0015ED90 4E 80 00 20 */ blr
.global glEndFrame
glEndFrame:
/* 80163134 0015ED94 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80163138 0015ED98 7C 08 02 A6 */ mflr r0
/* 8016313C 0015ED9C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80163140 0015EDA0 48 00 05 35 */ bl func_80163674
/* 80163144 0015EDA4 38 00 00 05 */ li r0, 5
/* 80163148 0015EDA8 90 0D 9D 88 */ stw r0, lbl_8063F048-_SDA_BASE_(r13)
/* 8016314C 0015EDAC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80163150 0015EDB0 7C 08 03 A6 */ mtlr r0
/* 80163154 0015EDB4 38 21 00 10 */ addi r1, r1, 0x10
/* 80163158 0015EDB8 4E 80 00 20 */ blr
lbl_8016315C:
/* 8016315C 0015EDBC 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80163160 0015EDC0 7C 08 02 A6 */ mflr r0
/* 80163164 0015EDC4 90 01 00 64 */ stw r0, 0x64(r1)
/* 80163168 0015EDC8 DB E1 00 50 */ stfd f31, 0x50(r1)
/* 8016316C 0015EDCC F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0
/* 80163170 0015EDD0 DB C1 00 40 */ stfd f30, 0x40(r1)
/* 80163174 0015EDD4 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0
/* 80163178 0015EDD8 39 61 00 40 */ addi r11, r1, 0x40
/* 8016317C 0015EDDC 48 06 3F 95 */ bl _savegpr_21
/* 80163180 0015EDE0 C3 C2 90 2C */ lfs f30, lbl_8064162C-_SDA2_BASE_(r2)
/* 80163184 0015EDE4 3B C0 00 08 */ li r30, 8
/* 80163188 0015EDE8 C3 E2 90 28 */ lfs f31, lbl_80641628-_SDA2_BASE_(r2)
/* 8016318C 0015EDEC 3F E0 80 42 */ lis r31, 0x8042
/* 80163190 0015EDF0 3E C0 80 16 */ lis r22, 0x8016
/* 80163194 0015EDF4 3E E0 80 16 */ lis r23, 0x8016
/* 80163198 0015EDF8 3F 00 80 16 */ lis r24, 0x8016
/* 8016319C 0015EDFC 3F 20 80 16 */ lis r25, 0x8016
/* 801631A0 0015EE00 3F 40 80 16 */ lis r26, 0x8016
/* 801631A4 0015EE04 3F 60 80 16 */ lis r27, 0x8016
/* 801631A8 0015EE08 3F 80 80 16 */ lis r28, 0x8016
/* 801631AC 0015EE0C 3B A0 00 00 */ li r29, 0
lbl_801631B0:
/* 801631B0 0015EE10 80 6D 9D 8C */ lwz r3, lbl_8063F04C-_SDA_BASE_(r13)
/* 801631B4 0015EE14 80 0D 9D 88 */ lwz r0, lbl_8063F048-_SDA_BASE_(r13)
/* 801631B8 0015EE18 7C 03 00 00 */ cmpw r3, r0
/* 801631BC 0015EE1C 41 82 01 7C */ beq lbl_80163338
/* 801631C0 0015EE20 93 CD 9D 8C */ stw r30, lbl_8063F04C-_SDA_BASE_(r13)
/* 801631C4 0015EE24 48 0F AE 0D */ bl func_8025DFD0
/* 801631C8 0015EE28 48 0F AE E1 */ bl func_8025E0A8
/* 801631CC 0015EE2C 2C 03 00 00 */ cmpwi r3, 0
/* 801631D0 0015EE30 41 82 00 14 */ beq lbl_801631E4
/* 801631D4 0015EE34 41 80 01 64 */ blt lbl_80163338
/* 801631D8 0015EE38 2C 03 00 04 */ cmpwi r3, 4
/* 801631DC 0015EE3C 40 80 01 5C */ bge lbl_80163338
/* 801631E0 0015EE40 48 00 00 CC */ b lbl_801632AC
lbl_801631E4:
/* 801631E4 0015EE44 80 0D 9D 88 */ lwz r0, lbl_8063F048-_SDA_BASE_(r13)
/* 801631E8 0015EE48 28 00 00 07 */ cmplwi r0, 7
/* 801631EC 0015EE4C 41 81 00 4C */ bgt lbl_80163238
/* 801631F0 0015EE50 38 7F F1 88 */ addi r3, r31, -3704
/* 801631F4 0015EE54 54 00 10 3A */ slwi r0, r0, 2
/* 801631F8 0015EE58 7C 63 00 2E */ lwzx r3, r3, r0
/* 801631FC 0015EE5C 7C 69 03 A6 */ mtctr r3
/* 80163200 0015EE60 4E 80 04 20 */ bctr
/* 80163204 0015EE64 4B FF F9 8D */ bl func_80162B90
/* 80163208 0015EE68 48 00 00 30 */ b lbl_80163238
/* 8016320C 0015EE6C 4B FF F9 F1 */ bl func_80162BFC
/* 80163210 0015EE70 48 00 00 28 */ b lbl_80163238
/* 80163214 0015EE74 4B FF FA 65 */ bl func_80162C78
/* 80163218 0015EE78 48 00 00 20 */ b lbl_80163238
/* 8016321C 0015EE7C 4B FF FB 5D */ bl func_80162D78
/* 80163220 0015EE80 48 00 00 18 */ b lbl_80163238
/* 80163224 0015EE84 4B FF FC F1 */ bl func_80162F14
/* 80163228 0015EE88 48 00 00 10 */ b lbl_80163238
/* 8016322C 0015EE8C 4B FF FC ED */ bl func_80162F18
/* 80163230 0015EE90 48 00 00 08 */ b lbl_80163238
/* 80163234 0015EE94 4B FF FC E9 */ bl func_80162F1C
lbl_80163238:
/* 80163238 0015EE98 48 0F AD 99 */ bl func_8025DFD0
/* 8016323C 0015EE9C 48 0F B0 7D */ bl func_8025E2B8
/* 80163240 0015EEA0 2C 03 00 00 */ cmpwi r3, 0
/* 80163244 0015EEA4 7C 75 1B 78 */ mr r21, r3
/* 80163248 0015EEA8 41 82 00 54 */ beq lbl_8016329C
/* 8016324C 0015EEAC 38 96 74 E4 */ addi r4, r22, 0x74e4
/* 80163250 0015EEB0 48 0F B9 09 */ bl func_8025EB58
/* 80163254 0015EEB4 7E A3 AB 78 */ mr r3, r21
/* 80163258 0015EEB8 38 97 75 B8 */ addi r4, r23, 0x75b8
/* 8016325C 0015EEBC 48 0F B8 F5 */ bl func_8025EB50
/* 80163260 0015EEC0 7E A3 AB 78 */ mr r3, r21
/* 80163264 0015EEC4 38 98 76 70 */ addi r4, r24, 0x7670
/* 80163268 0015EEC8 48 0F B8 E1 */ bl func_8025EB48
/* 8016326C 0015EECC 7E A3 AB 78 */ mr r3, r21
/* 80163270 0015EED0 38 99 77 34 */ addi r4, r25, 0x7734
/* 80163274 0015EED4 48 0F B8 CD */ bl func_8025EB40
/* 80163278 0015EED8 7E A3 AB 78 */ mr r3, r21
/* 8016327C 0015EEDC 38 9A 79 94 */ addi r4, r26, 0x7994
/* 80163280 0015EEE0 48 0F B8 E1 */ bl func_8025EB60
/* 80163284 0015EEE4 7E A3 AB 78 */ mr r3, r21
/* 80163288 0015EEE8 38 9B 79 D0 */ addi r4, r27, 0x79d0
/* 8016328C 0015EEEC 48 0F B8 DD */ bl func_8025EB68
/* 80163290 0015EEF0 7E A3 AB 78 */ mr r3, r21
/* 80163294 0015EEF4 38 9C 79 D4 */ addi r4, r28, 0x79d4
/* 80163298 0015EEF8 48 0F B8 D9 */ bl func_8025EB70
lbl_8016329C:
/* 8016329C 0015EEFC 80 0D 9D 88 */ lwz r0, lbl_8063F048-_SDA_BASE_(r13)
/* 801632A0 0015EF00 93 AD 9D 9C */ stw r29, lbl_8063F05C-_SDA_BASE_(r13)
/* 801632A4 0015EF04 90 0D 9D 8C */ stw r0, lbl_8063F04C-_SDA_BASE_(r13)
/* 801632A8 0015EF08 48 00 00 90 */ b lbl_80163338
lbl_801632AC:
/* 801632AC 0015EF0C 80 0D 9D 9C */ lwz r0, lbl_8063F05C-_SDA_BASE_(r13)
/* 801632B0 0015EF10 2C 00 00 00 */ cmpwi r0, 0
/* 801632B4 0015EF14 40 82 00 2C */ bne lbl_801632E0
/* 801632B8 0015EF18 48 00 0F 0D */ bl func_801641C4
/* 801632BC 0015EF1C 2C 03 00 00 */ cmpwi r3, 0
/* 801632C0 0015EF20 41 82 00 20 */ beq lbl_801632E0
/* 801632C4 0015EF24 C0 0D 86 C8 */ lfs f0, lbl_8063D988-_SDA_BASE_(r13)
/* 801632C8 0015EF28 EC 1E 00 32 */ fmuls f0, f30, f0
/* 801632CC 0015EF2C EC 1F 00 2A */ fadds f0, f31, f0
/* 801632D0 0015EF30 FC 00 00 1E */ fctiwz f0, f0
/* 801632D4 0015EF34 D8 01 00 08 */ stfd f0, 8(r1)
/* 801632D8 0015EF38 80 01 00 0C */ lwz r0, 0xc(r1)
/* 801632DC 0015EF3C 90 0D 9D 9C */ stw r0, lbl_8063F05C-_SDA_BASE_(r13)
lbl_801632E0:
/* 801632E0 0015EF40 80 0D 9D 9C */ lwz r0, lbl_8063F05C-_SDA_BASE_(r13)
/* 801632E4 0015EF44 2C 00 00 00 */ cmpwi r0, 0
/* 801632E8 0015EF48 41 82 00 14 */ beq lbl_801632FC
/* 801632EC 0015EF4C 48 00 0E D9 */ bl func_801641C4
/* 801632F0 0015EF50 2C 03 00 00 */ cmpwi r3, 0
/* 801632F4 0015EF54 40 82 00 08 */ bne lbl_801632FC
/* 801632F8 0015EF58 93 AD 9D 9C */ stw r29, lbl_8063F05C-_SDA_BASE_(r13)
lbl_801632FC:
/* 801632FC 0015EF5C C0 0D 86 C8 */ lfs f0, lbl_8063D988-_SDA_BASE_(r13)
/* 80163300 0015EF60 80 6D 9D 9C */ lwz r3, lbl_8063F05C-_SDA_BASE_(r13)
/* 80163304 0015EF64 EC 1E 00 32 */ fmuls f0, f30, f0
/* 80163308 0015EF68 EC 1F 00 2A */ fadds f0, f31, f0
/* 8016330C 0015EF6C FC 00 00 1E */ fctiwz f0, f0
/* 80163310 0015EF70 D8 01 00 08 */ stfd f0, 8(r1)
/* 80163314 0015EF74 80 01 00 0C */ lwz r0, 0xc(r1)
/* 80163318 0015EF78 7C 03 00 00 */ cmpw r3, r0
/* 8016331C 0015EF7C 41 81 00 14 */ bgt lbl_80163330
/* 80163320 0015EF80 38 03 FF FF */ addi r0, r3, -1
/* 80163324 0015EF84 2C 00 00 01 */ cmpwi r0, 1
/* 80163328 0015EF88 90 0D 9D 9C */ stw r0, lbl_8063F05C-_SDA_BASE_(r13)
/* 8016332C 0015EF8C 41 81 00 0C */ bgt lbl_80163338
lbl_80163330:
/* 80163330 0015EF90 93 AD 9D 9C */ stw r29, lbl_8063F05C-_SDA_BASE_(r13)
/* 80163334 0015EF94 4B FF FB ED */ bl glxSwapWaitDrawDone
lbl_80163338:
/* 80163338 0015EF98 80 0D 9D 8C */ lwz r0, lbl_8063F04C-_SDA_BASE_(r13)
/* 8016333C 0015EF9C 2C 00 00 04 */ cmpwi r0, 4
/* 80163340 0015EFA0 40 82 00 20 */ bne lbl_80163360
/* 80163344 0015EFA4 48 0F AC 8D */ bl func_8025DFD0
/* 80163348 0015EFA8 48 0F AD 61 */ bl func_8025E0A8
/* 8016334C 0015EFAC 2C 03 00 00 */ cmpwi r3, 0
/* 80163350 0015EFB0 40 82 00 10 */ bne lbl_80163360
/* 80163354 0015EFB4 80 0D 9D 90 */ lwz r0, lbl_8063F050-_SDA_BASE_(r13)
/* 80163358 0015EFB8 90 0D 9D 88 */ stw r0, lbl_8063F048-_SDA_BASE_(r13)
/* 8016335C 0015EFBC 93 AD 9D 90 */ stw r29, lbl_8063F050-_SDA_BASE_(r13)
lbl_80163360:
/* 80163360 0015EFC0 48 0F AC 71 */ bl func_8025DFD0
/* 80163364 0015EFC4 48 0F AE 29 */ bl func_8025E18C
/* 80163368 0015EFC8 48 00 01 8D */ bl func_801634F4
/* 8016336C 0015EFCC 48 00 0B 0D */ bl func_80163E78
/* 80163370 0015EFD0 48 00 0D 1D */ bl func_8016408C
/* 80163374 0015EFD4 48 00 11 79 */ bl func_801644EC
/* 80163378 0015EFD8 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016337C 0015EFDC 48 0C 12 0D */ bl func_80224588
/* 80163380 0015EFE0 4B FF FE 30 */ b lbl_801631B0
.global func_80163384
func_80163384:
/* 80163384 0015EFE4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80163388 0015EFE8 7C 08 02 A6 */ mflr r0
/* 8016338C 0015EFEC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80163390 0015EFF0 48 0F AC 41 */ bl func_8025DFD0
/* 80163394 0015EFF4 48 0F AF 25 */ bl func_8025E2B8
/* 80163398 0015EFF8 2C 03 00 00 */ cmpwi r3, 0
/* 8016339C 0015EFFC 41 82 00 1C */ beq lbl_801633B8
/* 801633A0 0015F000 81 83 00 00 */ lwz r12, 0(r3)
/* 801633A4 0015F004 81 8C 00 50 */ lwz r12, 0x50(r12)
/* 801633A8 0015F008 7D 89 03 A6 */ mtctr r12
/* 801633AC 0015F00C 4E 80 04 21 */ bctrl
/* 801633B0 0015F010 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 801633B4 0015F014 48 00 00 08 */ b lbl_801633BC
lbl_801633B8:
/* 801633B8 0015F018 38 60 FF FF */ li r3, -1
lbl_801633BC:
/* 801633BC 0015F01C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801633C0 0015F020 7C 08 03 A6 */ mtlr r0
/* 801633C4 0015F024 38 21 00 10 */ addi r1, r1, 0x10
/* 801633C8 0015F028 4E 80 00 20 */ blr
.global func_801633CC
func_801633CC:
/* 801633CC 0015F02C 28 03 00 06 */ cmplwi r3, 6
/* 801633D0 0015F030 98 6D 82 F8 */ stb r3, lbl_8063D5B8-_SDA_BASE_(r13)
/* 801633D4 0015F034 4C 82 00 20 */ bnelr
/* 801633D8 0015F038 38 00 00 01 */ li r0, 1
/* 801633DC 0015F03C 98 0D 82 F8 */ stb r0, lbl_8063D5B8-_SDA_BASE_(r13)
/* 801633E0 0015F040 4E 80 00 20 */ blr
.global func_801633E4
func_801633E4:
/* 801633E4 0015F044 88 6D 82 F8 */ lbz r3, lbl_8063D5B8-_SDA_BASE_(r13)
/* 801633E8 0015F048 4E 80 00 20 */ blr
.global func_801633EC
func_801633EC:
/* 801633EC 0015F04C 38 A0 00 01 */ li r5, 1
/* 801633F0 0015F050 38 6D 9D 80 */ addi r3, r13, lbl_8063F040-_SDA_BASE_
/* 801633F4 0015F054 38 80 00 04 */ li r4, 4
/* 801633F8 0015F058 38 00 00 00 */ li r0, 0
/* 801633FC 0015F05C 98 AD 9D 80 */ stb r5, lbl_8063F040-_SDA_BASE_(r13)
/* 80163400 0015F060 B0 83 00 02 */ sth r4, 2(r3)
/* 80163404 0015F064 98 03 00 04 */ stb r0, 4(r3)
/* 80163408 0015F068 4E 80 00 20 */ blr

193
asm/code_8016340C.s Normal file
View File

@ -0,0 +1,193 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_8016340C
func_8016340C:
/* 8016340C 0015F06C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80163410 0015F070 7C 08 02 A6 */ mflr r0
/* 80163414 0015F074 90 01 00 14 */ stw r0, 0x14(r1)
/* 80163418 0015F078 48 10 F3 A1 */ bl OSGetTime
/* 8016341C 0015F07C 90 8D 9D AC */ stw r4, lbl_8063F06C-_SDA_BASE_(r13)
/* 80163420 0015F080 90 6D 9D A8 */ stw r3, lbl_8063F068-_SDA_BASE_(r13)
/* 80163424 0015F084 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80163428 0015F088 7C 08 03 A6 */ mtlr r0
/* 8016342C 0015F08C 38 21 00 10 */ addi r1, r1, 0x10
/* 80163430 0015F090 4E 80 00 20 */ blr
.global func_80163434
func_80163434:
/* 80163434 0015F094 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80163438 0015F098 7C 08 02 A6 */ mflr r0
/* 8016343C 0015F09C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80163440 0015F0A0 48 10 F3 79 */ bl OSGetTime
/* 80163444 0015F0A4 3C C0 80 00 */ lis r6, 0x800000F8@ha
/* 80163448 0015F0A8 81 0D 9D AC */ lwz r8, lbl_8063F06C-_SDA_BASE_(r13)
/* 8016344C 0015F0AC 80 06 00 F8 */ lwz r0, 0x800000F8@l(r6)
/* 80163450 0015F0B0 3C A0 10 62 */ lis r5, 0x10624DD3@ha
/* 80163454 0015F0B4 38 C5 4D D3 */ addi r6, r5, 0x10624DD3@l
/* 80163458 0015F0B8 80 ED 9D A8 */ lwz r7, lbl_8063F068-_SDA_BASE_(r13)
/* 8016345C 0015F0BC 54 00 F0 BE */ srwi r0, r0, 2
/* 80163460 0015F0C0 7C 88 20 10 */ subfc r4, r8, r4
/* 80163464 0015F0C4 7C 06 00 16 */ mulhwu r0, r6, r0
/* 80163468 0015F0C8 38 A0 00 00 */ li r5, 0
/* 8016346C 0015F0CC 7C 67 19 10 */ subfe r3, r7, r3
/* 80163470 0015F0D0 54 06 D1 BE */ srwi r6, r0, 6
/* 80163474 0015F0D4 48 06 3E 05 */ bl __div2i
/* 80163478 0015F0D8 38 C0 00 0A */ li r6, 0xa
/* 8016347C 0015F0DC 38 A0 00 00 */ li r5, 0
/* 80163480 0015F0E0 48 06 3D F9 */ bl __div2i
/* 80163484 0015F0E4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80163488 0015F0E8 7C 83 23 78 */ mr r3, r4
/* 8016348C 0015F0EC 7C 08 03 A6 */ mtlr r0
/* 80163490 0015F0F0 38 21 00 10 */ addi r1, r1, 0x10
/* 80163494 0015F0F4 4E 80 00 20 */ blr
.global func_80163498
func_80163498:
/* 80163498 0015F0F8 38 00 00 00 */ li r0, 0
/* 8016349C 0015F0FC 90 03 00 00 */ stw r0, 0(r3)
/* 801634A0 0015F100 80 0D 9D B0 */ lwz r0, lbl_8063F070-_SDA_BASE_(r13)
/* 801634A4 0015F104 90 03 00 04 */ stw r0, 4(r3)
/* 801634A8 0015F108 80 8D 9D B0 */ lwz r4, lbl_8063F070-_SDA_BASE_(r13)
/* 801634AC 0015F10C 2C 04 00 00 */ cmpwi r4, 0
/* 801634B0 0015F110 41 82 00 08 */ beq lbl_801634B8
/* 801634B4 0015F114 90 64 00 00 */ stw r3, 0(r4)
lbl_801634B8:
/* 801634B8 0015F118 90 6D 9D B0 */ stw r3, lbl_8063F070-_SDA_BASE_(r13)
/* 801634BC 0015F11C 4E 80 00 20 */ blr
.global func_801634C0
func_801634C0:
/* 801634C0 0015F120 80 83 00 00 */ lwz r4, 0(r3)
/* 801634C4 0015F124 2C 04 00 00 */ cmpwi r4, 0
/* 801634C8 0015F128 41 82 00 0C */ beq lbl_801634D4
/* 801634CC 0015F12C 90 64 00 04 */ stw r3, 4(r4)
/* 801634D0 0015F130 48 00 00 0C */ b lbl_801634DC
lbl_801634D4:
/* 801634D4 0015F134 80 03 00 04 */ lwz r0, 4(r3)
/* 801634D8 0015F138 90 0D 9D B0 */ stw r0, lbl_8063F070-_SDA_BASE_(r13)
lbl_801634DC:
/* 801634DC 0015F13C 80 83 00 04 */ lwz r4, 4(r3)
/* 801634E0 0015F140 2C 04 00 00 */ cmpwi r4, 0
/* 801634E4 0015F144 4D 82 00 20 */ beqlr
/* 801634E8 0015F148 80 03 00 00 */ lwz r0, 0(r3)
/* 801634EC 0015F14C 90 04 00 00 */ stw r0, 0(r4)
/* 801634F0 0015F150 4E 80 00 20 */ blr
.global func_801634F4
func_801634F4:
/* 801634F4 0015F154 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801634F8 0015F158 7C 08 02 A6 */ mflr r0
/* 801634FC 0015F15C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80163500 0015F160 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80163504 0015F164 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80163508 0015F168 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8016350C 0015F16C 93 81 00 10 */ stw r28, 0x10(r1)
/* 80163510 0015F170 4B FF FF 25 */ bl func_80163434
/* 80163514 0015F174 83 AD 9D B0 */ lwz r29, lbl_8063F070-_SDA_BASE_(r13)
/* 80163518 0015F178 7C 7E 1B 78 */ mr r30, r3
/* 8016351C 0015F17C 3B E0 00 02 */ li r31, 2
/* 80163520 0015F180 48 00 00 38 */ b lbl_80163558
lbl_80163524:
/* 80163524 0015F184 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 80163528 0015F188 83 9D 00 04 */ lwz r28, 4(r29)
/* 8016352C 0015F18C 7C 00 F0 40 */ cmplw r0, r30
/* 80163530 0015F190 41 81 00 24 */ bgt lbl_80163554
/* 80163534 0015F194 7F A3 EB 78 */ mr r3, r29
/* 80163538 0015F198 4B FF FF 89 */ bl func_801634C0
/* 8016353C 0015F19C 93 FD 00 18 */ stw r31, 0x18(r29)
/* 80163540 0015F1A0 81 9D 00 08 */ lwz r12, 8(r29)
/* 80163544 0015F1A4 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 80163548 0015F1A8 80 9D 00 10 */ lwz r4, 0x10(r29)
/* 8016354C 0015F1AC 7D 89 03 A6 */ mtctr r12
/* 80163550 0015F1B0 4E 80 04 21 */ bctrl
lbl_80163554:
/* 80163554 0015F1B4 7F 9D E3 78 */ mr r29, r28
lbl_80163558:
/* 80163558 0015F1B8 2C 1D 00 00 */ cmpwi r29, 0
/* 8016355C 0015F1BC 40 82 FF C8 */ bne lbl_80163524
/* 80163560 0015F1C0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80163564 0015F1C4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80163568 0015F1C8 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8016356C 0015F1CC 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80163570 0015F1D0 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80163574 0015F1D4 7C 08 03 A6 */ mtlr r0
/* 80163578 0015F1D8 38 21 00 20 */ addi r1, r1, 0x20
/* 8016357C 0015F1DC 4E 80 00 20 */ blr
.global func_80163580
func_80163580:
/* 80163580 0015F1E0 38 80 00 00 */ li r4, 0
/* 80163584 0015F1E4 38 A0 00 04 */ li r5, 4
/* 80163588 0015F1E8 4B EA 0B 7C */ b memset
.global func_8016358C
func_8016358C:
/* 8016358C 0015F1EC 90 A3 00 08 */ stw r5, 8(r3)
/* 80163590 0015F1F0 90 C3 00 0C */ stw r6, 0xc(r3)
/* 80163594 0015F1F4 90 E3 00 10 */ stw r7, 0x10(r3)
/* 80163598 0015F1F8 48 00 00 04 */ b lbl_8016359C
lbl_8016359C:
/* 8016359C 0015F1FC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801635A0 0015F200 7C 08 02 A6 */ mflr r0
/* 801635A4 0015F204 90 01 00 14 */ stw r0, 0x14(r1)
/* 801635A8 0015F208 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801635AC 0015F20C 7C 9F 23 78 */ mr r31, r4
/* 801635B0 0015F210 93 C1 00 08 */ stw r30, 8(r1)
/* 801635B4 0015F214 7C 7E 1B 78 */ mr r30, r3
/* 801635B8 0015F218 80 03 00 18 */ lwz r0, 0x18(r3)
/* 801635BC 0015F21C 28 00 00 01 */ cmplwi r0, 1
/* 801635C0 0015F220 40 82 00 08 */ bne lbl_801635C8
/* 801635C4 0015F224 4B FF FE FD */ bl func_801634C0
lbl_801635C8:
/* 801635C8 0015F228 4B FF FE 6D */ bl func_80163434
/* 801635CC 0015F22C 3C 80 66 66 */ lis r4, 0x66666667@ha
/* 801635D0 0015F230 38 00 00 01 */ li r0, 1
/* 801635D4 0015F234 38 84 66 67 */ addi r4, r4, 0x66666667@l
/* 801635D8 0015F238 90 1E 00 18 */ stw r0, 0x18(r30)
/* 801635DC 0015F23C 7C 04 F8 96 */ mulhw r0, r4, r31
/* 801635E0 0015F240 7C 00 16 70 */ srawi r0, r0, 2
/* 801635E4 0015F244 54 04 0F FE */ srwi r4, r0, 0x1f
/* 801635E8 0015F248 7C 00 22 14 */ add r0, r0, r4
/* 801635EC 0015F24C 7C 03 02 14 */ add r0, r3, r0
/* 801635F0 0015F250 7F C3 F3 78 */ mr r3, r30
/* 801635F4 0015F254 90 1E 00 14 */ stw r0, 0x14(r30)
/* 801635F8 0015F258 4B FF FE A1 */ bl func_80163498
/* 801635FC 0015F25C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80163600 0015F260 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80163604 0015F264 83 C1 00 08 */ lwz r30, 8(r1)
/* 80163608 0015F268 7C 08 03 A6 */ mtlr r0
/* 8016360C 0015F26C 38 21 00 10 */ addi r1, r1, 0x10
/* 80163610 0015F270 4E 80 00 20 */ blr
.global func_80163614
func_80163614:
/* 80163614 0015F274 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80163618 0015F278 7C 08 02 A6 */ mflr r0
/* 8016361C 0015F27C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80163620 0015F280 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80163624 0015F284 7C 7F 1B 78 */ mr r31, r3
/* 80163628 0015F288 80 03 00 18 */ lwz r0, 0x18(r3)
/* 8016362C 0015F28C 28 00 00 01 */ cmplwi r0, 1
/* 80163630 0015F290 40 82 00 08 */ bne lbl_80163638
/* 80163634 0015F294 4B FF FE 8D */ bl func_801634C0
lbl_80163638:
/* 80163638 0015F298 38 00 00 00 */ li r0, 0
/* 8016363C 0015F29C 90 1F 00 18 */ stw r0, 0x18(r31)
/* 80163640 0015F2A0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80163644 0015F2A4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80163648 0015F2A8 7C 08 03 A6 */ mtlr r0
/* 8016364C 0015F2AC 38 21 00 10 */ addi r1, r1, 0x10
/* 80163650 0015F2B0 4E 80 00 20 */ blr
.global func_80163654
func_80163654:
/* 80163654 0015F2B4 38 A0 00 01 */ li r5, 1
/* 80163658 0015F2B8 38 6D 9D A0 */ addi r3, r13, lbl_8063F060-_SDA_BASE_
/* 8016365C 0015F2BC 38 80 00 04 */ li r4, 4
/* 80163660 0015F2C0 38 00 00 00 */ li r0, 0
/* 80163664 0015F2C4 98 AD 9D A0 */ stb r5, lbl_8063F060-_SDA_BASE_(r13)
/* 80163668 0015F2C8 B0 83 00 02 */ sth r4, 2(r3)
/* 8016366C 0015F2CC 98 03 00 04 */ stb r0, 4(r3)
/* 80163670 0015F2D0 4E 80 00 20 */ blr

1670
asm/code_80163674.s Normal file

File diff suppressed because it is too large Load Diff

109
asm/code_80164CE8.s Normal file
View File

@ -0,0 +1,109 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
lbl_80164CE8:
/* 80164CE8 00160948 38 00 00 00 */ li r0, 0
/* 80164CEC 0016094C B0 03 00 00 */ sth r0, 0(r3)
/* 80164CF0 00160950 B0 03 00 02 */ sth r0, 2(r3)
/* 80164CF4 00160954 90 03 00 04 */ stw r0, 4(r3)
/* 80164CF8 00160958 90 03 00 08 */ stw r0, 8(r3)
/* 80164CFC 0016095C B0 03 00 4C */ sth r0, 0x4c(r3)
/* 80164D00 00160960 4E 80 00 20 */ blr
.global func_80164D04
func_80164D04:
/* 80164D04 00160964 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80164D08 00160968 7C 08 02 A6 */ mflr r0
/* 80164D0C 0016096C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80164D10 00160970 48 0F 92 C1 */ bl func_8025DFD0
/* 80164D14 00160974 48 0F 93 95 */ bl func_8025E0A8
/* 80164D18 00160978 2C 03 00 02 */ cmpwi r3, 2
/* 80164D1C 0016097C 41 82 00 0C */ beq lbl_80164D28
/* 80164D20 00160980 38 60 FF FF */ li r3, -1
/* 80164D24 00160984 48 00 00 44 */ b lbl_80164D68
lbl_80164D28:
/* 80164D28 00160988 48 0F 92 A9 */ bl func_8025DFD0
/* 80164D2C 0016098C 48 0F 95 E9 */ bl func_8025E314
/* 80164D30 00160990 48 0F EC 31 */ bl func_80263960
/* 80164D34 00160994 2C 03 00 00 */ cmpwi r3, 0
/* 80164D38 00160998 41 81 00 0C */ bgt lbl_80164D44
/* 80164D3C 0016099C 38 60 FF FF */ li r3, -1
/* 80164D40 001609A0 48 00 00 28 */ b lbl_80164D68
lbl_80164D44:
/* 80164D44 001609A4 48 0F 92 8D */ bl func_8025DFD0
/* 80164D48 001609A8 48 0F 95 CD */ bl func_8025E314
/* 80164D4C 001609AC 48 0F ED 25 */ bl func_80263A70
/* 80164D50 001609B0 2C 03 00 00 */ cmpwi r3, 0
/* 80164D54 001609B4 41 82 00 0C */ beq lbl_80164D60
/* 80164D58 001609B8 38 60 FF FE */ li r3, -2
/* 80164D5C 001609BC 48 00 00 0C */ b lbl_80164D68
lbl_80164D60:
/* 80164D60 001609C0 4B FF EA 05 */ bl func_80163764
/* 80164D64 001609C4 38 60 00 00 */ li r3, 0
lbl_80164D68:
/* 80164D68 001609C8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80164D6C 001609CC 7C 08 03 A6 */ mtlr r0
/* 80164D70 001609D0 38 21 00 10 */ addi r1, r1, 0x10
/* 80164D74 001609D4 4E 80 00 20 */ blr
.global func_80164D78
func_80164D78:
/* 80164D78 001609D8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80164D7C 001609DC 7C 08 02 A6 */ mflr r0
/* 80164D80 001609E0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80164D84 001609E4 48 0F 92 4D */ bl func_8025DFD0
/* 80164D88 001609E8 48 0F 93 21 */ bl func_8025E0A8
/* 80164D8C 001609EC 38 03 FF FE */ addi r0, r3, -2
/* 80164D90 001609F0 7C 00 00 34 */ cntlzw r0, r0
/* 80164D94 001609F4 54 03 D9 7E */ srwi r3, r0, 5
/* 80164D98 001609F8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80164D9C 001609FC 7C 08 03 A6 */ mtlr r0
/* 80164DA0 00160A00 38 21 00 10 */ addi r1, r1, 0x10
/* 80164DA4 00160A04 4E 80 00 20 */ blr
.global func_80164DA8
func_80164DA8:
/* 80164DA8 00160A08 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80164DAC 00160A0C 7C 08 02 A6 */ mflr r0
/* 80164DB0 00160A10 90 01 00 14 */ stw r0, 0x14(r1)
/* 80164DB4 00160A14 4B FF E9 E1 */ bl func_80163794
/* 80164DB8 00160A18 2C 03 00 00 */ cmpwi r3, 0
/* 80164DBC 00160A1C 41 82 00 24 */ beq lbl_80164DE0
/* 80164DC0 00160A20 4B FF EA F5 */ bl func_801638B4
/* 80164DC4 00160A24 2C 03 00 00 */ cmpwi r3, 0
/* 80164DC8 00160A28 41 82 00 18 */ beq lbl_80164DE0
/* 80164DCC 00160A2C 48 0F 92 05 */ bl func_8025DFD0
/* 80164DD0 00160A30 48 0F 95 3D */ bl func_8025E30C
/* 80164DD4 00160A34 48 0F CD 09 */ bl func_80261ADC
/* 80164DD8 00160A38 38 60 00 01 */ li r3, 1
/* 80164DDC 00160A3C 48 00 00 30 */ b lbl_80164E0C
lbl_80164DE0:
/* 80164DE0 00160A40 48 0F 91 F1 */ bl func_8025DFD0
/* 80164DE4 00160A44 48 0F 95 31 */ bl func_8025E314
/* 80164DE8 00160A48 48 0F E8 8D */ bl func_80263674
/* 80164DEC 00160A4C 28 03 00 1E */ cmplwi r3, 0x1e
/* 80164DF0 00160A50 40 81 00 18 */ ble lbl_80164E08
/* 80164DF4 00160A54 48 0F 91 DD */ bl func_8025DFD0
/* 80164DF8 00160A58 48 0F 95 15 */ bl func_8025E30C
/* 80164DFC 00160A5C 48 0F CC E1 */ bl func_80261ADC
/* 80164E00 00160A60 38 60 00 01 */ li r3, 1
/* 80164E04 00160A64 48 00 00 08 */ b lbl_80164E0C
lbl_80164E08:
/* 80164E08 00160A68 38 60 00 00 */ li r3, 0
lbl_80164E0C:
/* 80164E0C 00160A6C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80164E10 00160A70 7C 08 03 A6 */ mtlr r0
/* 80164E14 00160A74 38 21 00 10 */ addi r1, r1, 0x10
/* 80164E18 00160A78 4E 80 00 20 */ blr
.global func_80164E1C
func_80164E1C:
/* 80164E1C 00160A7C 38 A0 00 01 */ li r5, 1
/* 80164E20 00160A80 38 6D 9D D0 */ addi r3, r13, lbl_8063F090-_SDA_BASE_
/* 80164E24 00160A84 38 80 00 04 */ li r4, 4
/* 80164E28 00160A88 38 00 00 00 */ li r0, 0
/* 80164E2C 00160A8C 98 AD 9D D0 */ stb r5, lbl_8063F090-_SDA_BASE_(r13)
/* 80164E30 00160A90 B0 83 00 02 */ sth r4, 2(r3)
/* 80164E34 00160A94 98 03 00 04 */ stb r0, 4(r3)
/* 80164E38 00160A98 4E 80 00 20 */ blr

107
asm/code_80164E3C.s Normal file
View File

@ -0,0 +1,107 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_80164E3C
func_80164E3C:
/* 80164E3C 00160A9C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80164E40 00160AA0 7C 08 02 A6 */ mflr r0
/* 80164E44 00160AA4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80164E48 00160AA8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80164E4C 00160AAC 93 C1 00 08 */ stw r30, 8(r1)
/* 80164E50 00160AB0 4B FF A8 B5 */ bl func_8015F704
/* 80164E54 00160AB4 7C 7F 1B 78 */ mr r31, r3
/* 80164E58 00160AB8 48 0F 91 79 */ bl func_8025DFD0
/* 80164E5C 00160ABC 48 0F 94 C1 */ bl func_8025E31C
/* 80164E60 00160AC0 48 10 26 6D */ bl func_802674CC
/* 80164E64 00160AC4 7C 7E 1B 78 */ mr r30, r3
/* 80164E68 00160AC8 48 0F 91 69 */ bl func_8025DFD0
/* 80164E6C 00160ACC 48 0F 94 B1 */ bl func_8025E31C
/* 80164E70 00160AD0 48 10 26 65 */ bl func_802674D4
/* 80164E74 00160AD4 7C 65 1B 78 */ mr r5, r3
/* 80164E78 00160AD8 7F C3 F3 78 */ mr r3, r30
/* 80164E7C 00160ADC 7F E4 FB 78 */ mr r4, r31
/* 80164E80 00160AE0 4B E9 F1 81 */ bl memcpy
/* 80164E84 00160AE4 48 0F 91 4D */ bl func_8025DFD0
/* 80164E88 00160AE8 48 0F 94 95 */ bl func_8025E31C
/* 80164E8C 00160AEC 48 10 28 1D */ bl func_802676A8
/* 80164E90 00160AF0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80164E94 00160AF4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80164E98 00160AF8 83 C1 00 08 */ lwz r30, 8(r1)
/* 80164E9C 00160AFC 7C 08 03 A6 */ mtlr r0
/* 80164EA0 00160B00 38 21 00 10 */ addi r1, r1, 0x10
/* 80164EA4 00160B04 4E 80 00 20 */ blr
.global func_80164EA8
func_80164EA8:
/* 80164EA8 00160B08 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80164EAC 00160B0C 7C 08 02 A6 */ mflr r0
/* 80164EB0 00160B10 90 01 00 14 */ stw r0, 0x14(r1)
/* 80164EB4 00160B14 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80164EB8 00160B18 93 C1 00 08 */ stw r30, 8(r1)
/* 80164EBC 00160B1C 48 0F 91 15 */ bl func_8025DFD0
/* 80164EC0 00160B20 48 0F 94 5D */ bl func_8025E31C
/* 80164EC4 00160B24 48 10 27 C5 */ bl func_80267688
/* 80164EC8 00160B28 2C 03 00 00 */ cmpwi r3, 0
/* 80164ECC 00160B2C 40 82 00 28 */ bne lbl_80164EF4
/* 80164ED0 00160B30 80 0D 9D E0 */ lwz r0, lbl_8063F0A0-_SDA_BASE_(r13)
/* 80164ED4 00160B34 2C 00 00 00 */ cmpwi r0, 0
/* 80164ED8 00160B38 41 82 00 14 */ beq lbl_80164EEC
/* 80164EDC 00160B3C 38 00 00 00 */ li r0, 0
/* 80164EE0 00160B40 38 60 00 01 */ li r3, 1
/* 80164EE4 00160B44 90 0D 9D E0 */ stw r0, lbl_8063F0A0-_SDA_BASE_(r13)
/* 80164EE8 00160B48 48 00 00 58 */ b lbl_80164F40
lbl_80164EEC:
/* 80164EEC 00160B4C 38 60 00 00 */ li r3, 0
/* 80164EF0 00160B50 48 00 00 50 */ b lbl_80164F40
lbl_80164EF4:
/* 80164EF4 00160B54 4B FF A8 11 */ bl func_8015F704
/* 80164EF8 00160B58 7C 7F 1B 78 */ mr r31, r3
/* 80164EFC 00160B5C 48 0F 90 D5 */ bl func_8025DFD0
/* 80164F00 00160B60 48 0F 94 1D */ bl func_8025E31C
/* 80164F04 00160B64 48 10 25 C9 */ bl func_802674CC
/* 80164F08 00160B68 7C 7E 1B 78 */ mr r30, r3
/* 80164F0C 00160B6C 48 0F 90 C5 */ bl func_8025DFD0
/* 80164F10 00160B70 48 0F 94 0D */ bl func_8025E31C
/* 80164F14 00160B74 48 10 25 C1 */ bl func_802674D4
/* 80164F18 00160B78 7C 65 1B 78 */ mr r5, r3
/* 80164F1C 00160B7C 7F E3 FB 78 */ mr r3, r31
/* 80164F20 00160B80 7F C4 F3 78 */ mr r4, r30
/* 80164F24 00160B84 4B E9 F0 DD */ bl memcpy
/* 80164F28 00160B88 48 0F 90 A9 */ bl func_8025DFD0
/* 80164F2C 00160B8C 48 0F 93 F1 */ bl func_8025E31C
/* 80164F30 00160B90 48 10 27 79 */ bl func_802676A8
/* 80164F34 00160B94 38 00 00 00 */ li r0, 0
/* 80164F38 00160B98 38 60 00 01 */ li r3, 1
/* 80164F3C 00160B9C 90 0D 9D E0 */ stw r0, lbl_8063F0A0-_SDA_BASE_(r13)
lbl_80164F40:
/* 80164F40 00160BA0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80164F44 00160BA4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80164F48 00160BA8 83 C1 00 08 */ lwz r30, 8(r1)
/* 80164F4C 00160BAC 7C 08 03 A6 */ mtlr r0
/* 80164F50 00160BB0 38 21 00 10 */ addi r1, r1, 0x10
/* 80164F54 00160BB4 4E 80 00 20 */ blr
.global func_80164F58
func_80164F58:
/* 80164F58 00160BB8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80164F5C 00160BBC 7C 08 02 A6 */ mflr r0
/* 80164F60 00160BC0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80164F64 00160BC4 48 0F 90 6D */ bl func_8025DFD0
/* 80164F68 00160BC8 48 0F 93 B5 */ bl func_8025E31C
/* 80164F6C 00160BCC 48 10 28 8D */ bl func_802677F8
/* 80164F70 00160BD0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80164F74 00160BD4 7C 08 03 A6 */ mtlr r0
/* 80164F78 00160BD8 38 21 00 10 */ addi r1, r1, 0x10
/* 80164F7C 00160BDC 4E 80 00 20 */ blr
.global func_80164F80
func_80164F80:
/* 80164F80 00160BE0 38 A0 00 01 */ li r5, 1
/* 80164F84 00160BE4 38 6D 9D D8 */ addi r3, r13, lbl_8063F098-_SDA_BASE_
/* 80164F88 00160BE8 38 80 00 04 */ li r4, 4
/* 80164F8C 00160BEC 38 00 00 00 */ li r0, 0
/* 80164F90 00160BF0 98 AD 9D D8 */ stb r5, lbl_8063F098-_SDA_BASE_(r13)
/* 80164F94 00160BF4 B0 83 00 02 */ sth r4, 2(r3)
/* 80164F98 00160BF8 98 03 00 04 */ stb r0, 4(r3)
/* 80164F9C 00160BFC 4E 80 00 20 */ blr

450
asm/code_80164FA0.s Normal file
View File

@ -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

1823
asm/code_80165534.s Normal file

File diff suppressed because it is too large Load Diff

405
asm/code_80166D6C.s Normal file
View File

@ -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

387
asm/code_80167298.s Normal file
View File

@ -0,0 +1,387 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
func_80167298:
/* 80167298 00162EF8 7C A3 2B 78 */ mr r3, r5
/* 8016729C 00162EFC 4E 80 00 20 */ blr
/* 801672A0 00162F00 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801672A4 00162F04 7C 08 02 A6 */ mflr r0
/* 801672A8 00162F08 90 01 00 24 */ stw r0, 0x24(r1)
/* 801672AC 00162F0C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801672B0 00162F10 3F E0 80 49 */ lis r31, lbl_8048C928@ha
/* 801672B4 00162F14 38 7F C9 28 */ addi r3, r31, lbl_8048C928@l
/* 801672B8 00162F18 93 C1 00 18 */ stw r30, 0x18(r1)
/* 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 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
/* 801672D8 00162F38 7F DF 1A 14 */ add r30, r31, r3
/* 801672DC 00162F3C 4B EF 18 C9 */ bl VMBASEIsPageValid
/* 801672E0 00162F40 3C 80 80 42 */ lis r4, lbl_8041F390@ha
/* 801672E4 00162F44 54 65 06 3E */ clrlwi r5, r3, 0x18
/* 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 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
/* 80167304 00162F64 48 18 51 45 */ bl SCGetLanguage
/* 80167308 00162F68 3C 80 80 42 */ lis r4, lbl_8041F39C@ha
/* 8016730C 00162F6C 54 65 06 3E */ clrlwi r5, r3, 0x18
/* 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 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
/* 8016732C 00162F8C 7C 03 E8 40 */ cmplw r3, r29
/* 80167330 00162F90 40 81 00 08 */ ble lbl_80167338
/* 80167334 00162F94 7F A3 EB 78 */ mr r3, r29
lbl_80167338:
/* 80167338 00162F98 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8016733C 00162F9C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80167340 00162FA0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80167344 00162FA4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80167348 00162FA8 7C 08 03 A6 */ mtlr r0
/* 8016734C 00162FAC 38 21 00 20 */ addi r1, r1, 0x20
/* 80167350 00162FB0 4E 80 00 20 */ blr
/* 80167354 00162FB4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167358 00162FB8 7C 08 02 A6 */ mflr r0
/* 8016735C 00162FBC 3C 60 80 49 */ lis r3, lbl_8048C928@ha
/* 80167360 00162FC0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80167364 00162FC4 38 63 C9 28 */ addi r3, r3, lbl_8048C928@l
/* 80167368 00162FC8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8016736C 00162FCC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80167370 00162FD0 7C BE 2B 78 */ mr r30, r5
/* 80167374 00162FD4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80167378 00162FD8 7C 9D 23 78 */ mr r29, r4
/* 8016737C 00162FDC 48 05 F7 E9 */ bl strlen
/* 80167380 00162FE0 3B E3 00 01 */ addi r31, r3, 1
/* 80167384 00162FE4 7C 1F F0 40 */ cmplw r31, r30
/* 80167388 00162FE8 40 81 00 08 */ ble lbl_80167390
/* 8016738C 00162FEC 7F DF F3 78 */ mr r31, r30
lbl_80167390:
/* 80167390 00162FF0 3C 80 80 49 */ lis r4, lbl_8048C928@ha
/* 80167394 00162FF4 7F A3 EB 78 */ mr r3, r29
/* 80167398 00162FF8 7F E5 FB 78 */ mr r5, r31
/* 8016739C 00162FFC 38 84 C9 28 */ addi r4, r4, lbl_8048C928@l
/* 801673A0 00163000 4B E9 CC 61 */ bl memcpy
/* 801673A4 00163004 7F E3 FB 78 */ mr r3, r31
/* 801673A8 00163008 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 801673AC 0016300C 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 801673B0 00163010 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 801673B4 00163014 80 01 00 24 */ lwz r0, 0x24(r1)
/* 801673B8 00163018 7C 08 03 A6 */ mtlr r0
/* 801673BC 0016301C 38 21 00 20 */ addi r1, r1, 0x20
/* 801673C0 00163020 4E 80 00 20 */ blr
/* 801673C4 00163024 28 04 00 04 */ cmplwi r4, 4
/* 801673C8 00163028 38 60 00 04 */ li r3, 4
/* 801673CC 0016302C 4C 80 00 20 */ bgelr
/* 801673D0 00163030 7C 83 23 78 */ mr r3, r4
/* 801673D4 00163034 4E 80 00 20 */ blr
/* 801673D8 00163038 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801673DC 0016303C 7C 08 02 A6 */ mflr r0
/* 801673E0 00163040 90 01 00 24 */ stw r0, 0x24(r1)
/* 801673E4 00163044 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801673E8 00163048 7C 9F 23 78 */ mr r31, r4
/* 801673EC 0016304C 48 00 13 E5 */ bl func_801687D0
/* 801673F0 00163050 90 61 00 08 */ stw r3, 8(r1)
/* 801673F4 00163054 7F E3 FB 78 */ mr r3, r31
/* 801673F8 00163058 38 81 00 08 */ addi r4, r1, 8
/* 801673FC 0016305C 38 A0 00 04 */ li r5, 4
/* 80167400 00163060 4B E9 CC 01 */ bl memcpy
/* 80167404 00163064 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80167408 00163068 38 60 00 04 */ li r3, 4
/* 8016740C 0016306C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167410 00163070 7C 08 03 A6 */ mtlr r0
/* 80167414 00163074 38 21 00 20 */ addi r1, r1, 0x20
/* 80167418 00163078 4E 80 00 20 */ blr
/* 8016741C 0016307C 28 04 00 08 */ cmplwi r4, 8
/* 80167420 00163080 38 60 00 08 */ li r3, 8
/* 80167424 00163084 4C 80 00 20 */ bgelr
/* 80167428 00163088 7C 83 23 78 */ mr r3, r4
/* 8016742C 0016308C 4E 80 00 20 */ blr
/* 80167430 00163090 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167434 00163094 7C 08 02 A6 */ mflr r0
/* 80167438 00163098 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016743C 0016309C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80167440 001630A0 7C 9F 23 78 */ mr r31, r4
/* 80167444 001630A4 48 00 16 B9 */ bl func_80168AFC
/* 80167448 001630A8 90 61 00 08 */ stw r3, 8(r1)
/* 8016744C 001630AC 48 00 16 C1 */ bl func_80168B0C
/* 80167450 001630B0 90 61 00 0C */ stw r3, 0xc(r1)
/* 80167454 001630B4 7F E3 FB 78 */ mr r3, r31
/* 80167458 001630B8 38 81 00 08 */ addi r4, r1, 8
/* 8016745C 001630BC 38 A0 00 08 */ li r5, 8
/* 80167460 001630C0 4B E9 CB A1 */ bl memcpy
/* 80167464 001630C4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80167468 001630C8 38 60 00 08 */ li r3, 8
/* 8016746C 001630CC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167470 001630D0 7C 08 03 A6 */ mtlr r0
/* 80167474 001630D4 38 21 00 20 */ addi r1, r1, 0x20
/* 80167478 001630D8 4E 80 00 20 */ blr
/* 8016747C 001630DC 28 04 06 EC */ cmplwi r4, 0x6ec
/* 80167480 001630E0 38 60 06 EC */ li r3, 0x6ec
/* 80167484 001630E4 4C 80 00 20 */ bgelr
/* 80167488 001630E8 7C 83 23 78 */ mr r3, r4
/* 8016748C 001630EC 4E 80 00 20 */ blr
/* 80167490 001630F0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80167494 001630F4 7C 08 02 A6 */ mflr r0
/* 80167498 001630F8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016749C 001630FC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801674A0 00163100 93 C1 00 08 */ stw r30, 8(r1)
/* 801674A4 00163104 7C 9E 23 78 */ mr r30, r4
/* 801674A8 00163108 48 00 14 F9 */ bl func_801689A0
/* 801674AC 0016310C 7C 7F 1B 78 */ mr r31, r3
/* 801674B0 00163110 48 00 14 F1 */ bl func_801689A0
/* 801674B4 00163114 48 00 16 B9 */ bl func_80168B6C
/* 801674B8 00163118 7F C3 F3 78 */ mr r3, r30
/* 801674BC 0016311C 7F E4 FB 78 */ mr r4, r31
/* 801674C0 00163120 38 A0 06 EC */ li r5, 0x6ec
/* 801674C4 00163124 4B E9 CB 3D */ bl memcpy
/* 801674C8 00163128 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801674CC 0016312C 38 60 06 EC */ li r3, 0x6ec
/* 801674D0 00163130 83 C1 00 08 */ lwz r30, 8(r1)
/* 801674D4 00163134 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801674D8 00163138 7C 08 03 A6 */ mtlr r0
/* 801674DC 0016313C 38 21 00 10 */ addi r1, r1, 0x10
/* 801674E0 00163140 4E 80 00 20 */ blr
/* 801674E4 00163144 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801674E8 00163148 7C 08 02 A6 */ mflr r0
/* 801674EC 0016314C 90 01 00 24 */ stw r0, 0x24(r1)
/* 801674F0 00163150 39 61 00 20 */ addi r11, r1, 0x20
/* 801674F4 00163154 48 05 FC 35 */ bl _savegpr_27
/* 801674F8 00163158 7C 7B 1B 78 */ mr r27, r3
/* 801674FC 0016315C 7C 9C 23 78 */ mr r28, r4
/* 80167500 00163160 7C BD 2B 78 */ mr r29, r5
/* 80167504 00163164 4B FF B6 6D */ bl func_80162B70
/* 80167508 00163168 2C 03 00 01 */ cmpwi r3, 1
/* 8016750C 0016316C 40 82 00 1C */ bne lbl_80167528
/* 80167510 00163170 38 60 00 00 */ li r3, 0
/* 80167514 00163174 48 11 27 F1 */ bl VIEnableDimming
/* 80167518 00163178 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13)
/* 8016751C 0016317C 48 0B D0 6D */ bl func_80224588
/* 80167520 00163180 38 60 00 01 */ li r3, 1
/* 80167524 00163184 48 11 27 E1 */ bl VIEnableDimming
lbl_80167528:
/* 80167528 00163188 3F E0 80 42 */ lis r31, lbl_8041F444@ha
/* 8016752C 0016318C 3B C0 00 00 */ li r30, 0
/* 80167530 00163190 3B FF F4 44 */ addi r31, r31, lbl_8041F444@l
/* 80167534 00163194 48 00 00 5C */ b lbl_80167590
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 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
/* 80167550 001631B0 3C 60 80 42 */ lis r3, lbl_8041F444@ha
/* 80167554 001631B4 38 63 F4 44 */ addi r3, r3, lbl_8041F444@l
/* 80167558 001631B8 7C 63 02 14 */ add r3, r3, r0
/* 8016755C 001631BC 81 83 00 04 */ lwz r12, 4(r3)
/* 80167560 001631C0 2C 0C 00 00 */ cmpwi r12, 0
/* 80167564 001631C4 41 82 00 1C */ beq lbl_80167580
/* 80167568 001631C8 7F 63 DB 78 */ mr r3, r27
/* 8016756C 001631CC 7F 84 E3 78 */ mr r4, r28
/* 80167570 001631D0 7F A5 EB 78 */ mr r5, r29
/* 80167574 001631D4 7D 89 03 A6 */ mtctr r12
/* 80167578 001631D8 4E 80 04 21 */ bctrl
/* 8016757C 001631DC 48 00 00 24 */ b lbl_801675A0
lbl_80167580:
/* 80167580 001631E0 38 60 FF FF */ li r3, -1
/* 80167584 001631E4 48 00 00 1C */ b lbl_801675A0
lbl_80167588:
/* 80167588 001631E8 3B FF 00 0C */ addi r31, r31, 0xc
/* 8016758C 001631EC 3B DE 00 01 */ addi r30, r30, 1
lbl_80167590:
/* 80167590 001631F0 80 1F 00 00 */ lwz r0, 0(r31)
/* 80167594 001631F4 2C 00 00 00 */ cmpwi r0, 0
/* 80167598 001631F8 40 82 FF A0 */ bne lbl_80167538
/* 8016759C 001631FC 38 60 FF FF */ li r3, -1
lbl_801675A0:
/* 801675A0 00163200 39 61 00 20 */ addi r11, r1, 0x20
/* 801675A4 00163204 48 05 FB D1 */ bl _restgpr_27
/* 801675A8 00163208 80 01 00 24 */ lwz r0, 0x24(r1)
/* 801675AC 0016320C 7C 08 03 A6 */ mtlr r0
/* 801675B0 00163210 38 21 00 20 */ addi r1, r1, 0x20
/* 801675B4 00163214 4E 80 00 20 */ blr
/* 801675B8 00163218 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801675BC 0016321C 7C 08 02 A6 */ mflr r0
/* 801675C0 00163220 90 01 00 24 */ stw r0, 0x24(r1)
/* 801675C4 00163224 39 61 00 20 */ addi r11, r1, 0x20
/* 801675C8 00163228 48 05 FB 5D */ bl _savegpr_26
/* 801675CC 0016322C 3F E0 80 42 */ lis r31, lbl_8041F444@ha
/* 801675D0 00163230 7C 7A 1B 78 */ mr r26, r3
/* 801675D4 00163234 7C 9B 23 78 */ mr r27, r4
/* 801675D8 00163238 7C BC 2B 78 */ mr r28, r5
/* 801675DC 0016323C 7C DD 33 78 */ mr r29, r6
/* 801675E0 00163240 3B FF F4 44 */ addi r31, r31, lbl_8041F444@l
/* 801675E4 00163244 3B C0 00 00 */ li r30, 0
/* 801675E8 00163248 48 00 00 60 */ b lbl_80167648
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 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
/* 80167604 00163264 3C 60 80 42 */ lis r3, lbl_8041F444@ha
/* 80167608 00163268 38 63 F4 44 */ addi r3, r3, lbl_8041F444@l
/* 8016760C 0016326C 7C 63 02 14 */ add r3, r3, r0
/* 80167610 00163270 81 83 00 08 */ lwz r12, 8(r3)
/* 80167614 00163274 2C 0C 00 00 */ cmpwi r12, 0
/* 80167618 00163278 41 82 00 20 */ beq lbl_80167638
/* 8016761C 0016327C 7F 43 D3 78 */ mr r3, r26
/* 80167620 00163280 7F 64 DB 78 */ mr r4, r27
/* 80167624 00163284 7F 85 E3 78 */ mr r5, r28
/* 80167628 00163288 7F A6 EB 78 */ mr r6, r29
/* 8016762C 0016328C 7D 89 03 A6 */ mtctr r12
/* 80167630 00163290 4E 80 04 21 */ bctrl
/* 80167634 00163294 48 00 00 24 */ b lbl_80167658
lbl_80167638:
/* 80167638 00163298 38 60 FF FF */ li r3, -1
/* 8016763C 0016329C 48 00 00 1C */ b lbl_80167658
lbl_80167640:
/* 80167640 001632A0 3B FF 00 0C */ addi r31, r31, 0xc
/* 80167644 001632A4 3B DE 00 01 */ addi r30, r30, 1
lbl_80167648:
/* 80167648 001632A8 80 1F 00 00 */ lwz r0, 0(r31)
/* 8016764C 001632AC 2C 00 00 00 */ cmpwi r0, 0
/* 80167650 001632B0 40 82 FF 9C */ bne lbl_801675EC
/* 80167654 001632B4 38 60 FF FF */ li r3, -1
lbl_80167658:
/* 80167658 001632B8 39 61 00 20 */ addi r11, r1, 0x20
/* 8016765C 001632BC 48 05 FB 15 */ bl _restgpr_26
/* 80167660 001632C0 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167664 001632C4 7C 08 03 A6 */ mtlr r0
/* 80167668 001632C8 38 21 00 20 */ addi r1, r1, 0x20
/* 8016766C 001632CC 4E 80 00 20 */ blr
/* 80167670 001632D0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167674 001632D4 7C 08 02 A6 */ mflr r0
/* 80167678 001632D8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8016767C 001632DC 39 61 00 20 */ addi r11, r1, 0x20
/* 80167680 001632E0 48 05 FA A9 */ bl _savegpr_27
/* 80167684 001632E4 3F E0 80 42 */ lis r31, lbl_8041F500@ha
/* 80167688 001632E8 7C 7B 1B 78 */ mr r27, r3
/* 8016768C 001632EC 7C 9C 23 78 */ mr r28, r4
/* 80167690 001632F0 3B A0 00 00 */ li r29, 0
/* 80167694 001632F4 3B FF F5 00 */ addi r31, r31, lbl_8041F500@l
/* 80167698 001632F8 48 00 00 74 */ b lbl_8016770C
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 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 strcmp
/* 801676C0 00163320 2C 03 00 00 */ cmpwi r3, 0
/* 801676C4 00163324 40 82 00 40 */ bne lbl_80167704
lbl_801676C8:
/* 801676C8 00163328 3C 60 80 42 */ lis r3, lbl_8041F500@ha
/* 801676CC 0016332C 57 A0 20 36 */ slwi r0, r29, 4
/* 801676D0 00163330 38 63 F5 00 */ addi r3, r3, lbl_8041F500@l
/* 801676D4 00163334 7C A3 02 14 */ add r5, r3, r0
/* 801676D8 00163338 81 85 00 04 */ lwz r12, 4(r5)
/* 801676DC 0016333C 2C 0C 00 00 */ cmpwi r12, 0
/* 801676E0 00163340 41 82 00 1C */ beq lbl_801676FC
/* 801676E4 00163344 7F 63 DB 78 */ mr r3, r27
/* 801676E8 00163348 7F 84 E3 78 */ mr r4, r28
/* 801676EC 0016334C 80 A5 00 0C */ lwz r5, 0xc(r5)
/* 801676F0 00163350 7D 89 03 A6 */ mtctr r12
/* 801676F4 00163354 4E 80 04 21 */ bctrl
/* 801676F8 00163358 48 00 00 24 */ b lbl_8016771C
lbl_801676FC:
/* 801676FC 0016335C 38 60 FF FF */ li r3, -1
/* 80167700 00163360 48 00 00 1C */ b lbl_8016771C
lbl_80167704:
/* 80167704 00163364 3B FF 00 10 */ addi r31, r31, 0x10
/* 80167708 00163368 3B BD 00 01 */ addi r29, r29, 1
lbl_8016770C:
/* 8016770C 0016336C 80 1F 00 00 */ lwz r0, 0(r31)
/* 80167710 00163370 2C 00 00 00 */ cmpwi r0, 0
/* 80167714 00163374 40 82 FF 88 */ bne lbl_8016769C
/* 80167718 00163378 38 60 FF FF */ li r3, -1
lbl_8016771C:
/* 8016771C 0016337C 39 61 00 20 */ addi r11, r1, 0x20
/* 80167720 00163380 48 05 FA 55 */ bl _restgpr_27
/* 80167724 00163384 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167728 00163388 7C 08 03 A6 */ mtlr r0
/* 8016772C 0016338C 38 21 00 20 */ addi r1, r1, 0x20
/* 80167730 00163390 4E 80 00 20 */ blr
/* 80167734 00163394 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167738 00163398 7C 08 02 A6 */ mflr r0
/* 8016773C 0016339C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80167740 001633A0 39 61 00 20 */ addi r11, r1, 0x20
/* 80167744 001633A4 48 05 F9 E1 */ bl _savegpr_26
/* 80167748 001633A8 3F E0 80 42 */ lis r31, lbl_8041F500@ha
/* 8016774C 001633AC 7C 7A 1B 78 */ mr r26, r3
/* 80167750 001633B0 7C 9B 23 78 */ mr r27, r4
/* 80167754 001633B4 7C BC 2B 78 */ mr r28, r5
/* 80167758 001633B8 3B FF F5 00 */ addi r31, r31, lbl_8041F500@l
/* 8016775C 001633BC 3B A0 00 00 */ li r29, 0
/* 80167760 001633C0 48 00 00 78 */ b lbl_801677D8
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 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 strcmp
/* 80167788 001633E8 2C 03 00 00 */ cmpwi r3, 0
/* 8016778C 001633EC 40 82 00 44 */ bne lbl_801677D0
lbl_80167790:
/* 80167790 001633F0 3C 60 80 42 */ lis r3, lbl_8041F500@ha
/* 80167794 001633F4 57 A0 20 36 */ slwi r0, r29, 4
/* 80167798 001633F8 38 63 F5 00 */ addi r3, r3, lbl_8041F500@l
/* 8016779C 001633FC 7C C3 02 14 */ add r6, r3, r0
/* 801677A0 00163400 81 86 00 08 */ lwz r12, 8(r6)
/* 801677A4 00163404 2C 0C 00 00 */ cmpwi r12, 0
/* 801677A8 00163408 41 82 00 20 */ beq lbl_801677C8
/* 801677AC 0016340C 7F 43 D3 78 */ mr r3, r26
/* 801677B0 00163410 7F 64 DB 78 */ mr r4, r27
/* 801677B4 00163414 7F 85 E3 78 */ mr r5, r28
/* 801677B8 00163418 80 C6 00 0C */ lwz r6, 0xc(r6)
/* 801677BC 0016341C 7D 89 03 A6 */ mtctr r12
/* 801677C0 00163420 4E 80 04 21 */ bctrl
/* 801677C4 00163424 48 00 00 24 */ b lbl_801677E8
lbl_801677C8:
/* 801677C8 00163428 38 60 FF FF */ li r3, -1
/* 801677CC 0016342C 48 00 00 1C */ b lbl_801677E8
lbl_801677D0:
/* 801677D0 00163430 3B FF 00 10 */ addi r31, r31, 0x10
/* 801677D4 00163434 3B BD 00 01 */ addi r29, r29, 1
lbl_801677D8:
/* 801677D8 00163438 80 1F 00 00 */ lwz r0, 0(r31)
/* 801677DC 0016343C 2C 00 00 00 */ cmpwi r0, 0
/* 801677E0 00163440 40 82 FF 84 */ bne lbl_80167764
/* 801677E4 00163444 38 60 FF FF */ li r3, -1
lbl_801677E8:
/* 801677E8 00163448 39 61 00 20 */ addi r11, r1, 0x20
/* 801677EC 0016344C 48 05 F9 85 */ bl _restgpr_26
/* 801677F0 00163450 80 01 00 24 */ lwz r0, 0x24(r1)
/* 801677F4 00163454 7C 08 03 A6 */ mtlr r0
/* 801677F8 00163458 38 21 00 20 */ addi r1, r1, 0x20
/* 801677FC 0016345C 4E 80 00 20 */ blr
.global func_80167800
func_80167800:
/* 80167800 00163460 38 A0 00 01 */ li r5, 1
/* 80167804 00163464 38 6D 9E 10 */ addi r3, r13, lbl_8063F0D0-_SDA_BASE_
/* 80167808 00163468 38 80 00 04 */ li r4, 4
/* 8016780C 0016346C 38 00 00 00 */ li r0, 0
/* 80167810 00163470 98 AD 9E 10 */ stb r5, lbl_8063F0D0-_SDA_BASE_(r13)
/* 80167814 00163474 B0 83 00 02 */ sth r4, 2(r3)
/* 80167818 00163478 98 03 00 04 */ stb r0, 4(r3)
/* 8016781C 0016347C 4E 80 00 20 */ blr

106
asm/code_80167820.s Normal file
View File

@ -0,0 +1,106 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
func_80167820:
/* 80167820 00163480 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80167824 00163484 7C 08 02 A6 */ mflr r0
/* 80167828 00163488 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016782C 0016348C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80167830 00163490 80 A5 00 00 */ lwz r5, 0(r5)
/* 80167834 00163494 54 A4 C4 2E */ rlwinm r4, r5, 0x18, 0x10, 0x17
/* 80167838 00163498 54 A0 42 1E */ rlwinm r0, r5, 8, 8, 0xf
/* 8016783C 0016349C 50 A4 46 3E */ rlwimi r4, r5, 8, 0x18, 0x1f
/* 80167840 001634A0 50 A0 C0 0E */ rlwimi r0, r5, 0x18, 0, 7
/* 80167844 001634A4 7C 9F 03 78 */ or r31, r4, r0
/* 80167848 001634A8 4B FF D3 E5 */ bl func_80164C2C
/* 8016784C 001634AC 2C 03 00 00 */ cmpwi r3, 0
/* 80167850 001634B0 41 82 00 0C */ beq lbl_8016785C
/* 80167854 001634B4 7F E4 FB 78 */ mr r4, r31
/* 80167858 001634B8 4B FF F3 BD */ bl func_80166C14
lbl_8016785C:
/* 8016785C 001634BC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80167860 001634C0 38 60 00 00 */ li r3, 0
/* 80167864 001634C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80167868 001634C8 7C 08 03 A6 */ mtlr r0
/* 8016786C 001634CC 38 21 00 10 */ addi r1, r1, 0x10
/* 80167870 001634D0 4E 80 00 20 */ blr
/* 80167874 001634D4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80167878 001634D8 7C 08 02 A6 */ mflr r0
/* 8016787C 001634DC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80167880 001634E0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80167884 001634E4 7C BF 2B 78 */ mr r31, r5
/* 80167888 001634E8 4B FF D3 A5 */ bl func_80164C2C
/* 8016788C 001634EC 2C 03 00 00 */ cmpwi r3, 0
/* 80167890 001634F0 41 82 00 0C */ beq lbl_8016789C
/* 80167894 001634F4 7F E4 FB 78 */ mr r4, r31
/* 80167898 001634F8 4B FF F3 A5 */ bl func_80166C3C
lbl_8016789C:
/* 8016789C 001634FC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801678A0 00163500 38 60 00 00 */ li r3, 0
/* 801678A4 00163504 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801678A8 00163508 7C 08 03 A6 */ mtlr r0
/* 801678AC 0016350C 38 21 00 10 */ addi r1, r1, 0x10
/* 801678B0 00163510 4E 80 00 20 */ blr
/* 801678B4 00163514 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801678B8 00163518 7C 08 02 A6 */ mflr r0
/* 801678BC 0016351C 90 01 00 14 */ stw r0, 0x14(r1)
/* 801678C0 00163520 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801678C4 00163524 7C BF 2B 78 */ mr r31, r5
/* 801678C8 00163528 4B FF D3 65 */ bl func_80164C2C
/* 801678CC 0016352C 2C 03 00 00 */ cmpwi r3, 0
/* 801678D0 00163530 41 82 00 0C */ beq lbl_801678DC
/* 801678D4 00163534 7F E4 FB 78 */ mr r4, r31
/* 801678D8 00163538 4B FF F3 D5 */ bl func_80166CAC
lbl_801678DC:
/* 801678DC 0016353C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801678E0 00163540 38 60 00 00 */ li r3, 0
/* 801678E4 00163544 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801678E8 00163548 7C 08 03 A6 */ mtlr r0
/* 801678EC 0016354C 38 21 00 10 */ addi r1, r1, 0x10
/* 801678F0 00163550 4E 80 00 20 */ blr
/* 801678F4 00163554 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801678F8 00163558 7C 08 02 A6 */ mflr r0
/* 801678FC 0016355C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80167900 00163560 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80167904 00163564 7C BF 2B 78 */ mr r31, r5
/* 80167908 00163568 4B FF D3 25 */ bl func_80164C2C
/* 8016790C 0016356C 2C 03 00 00 */ cmpwi r3, 0
/* 80167910 00163570 41 82 00 0C */ beq lbl_8016791C
/* 80167914 00163574 7F E4 FB 78 */ mr r4, r31
/* 80167918 00163578 4B FF F3 FD */ bl func_80166D14
lbl_8016791C:
/* 8016791C 0016357C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80167920 00163580 38 60 00 00 */ li r3, 0
/* 80167924 00163584 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80167928 00163588 7C 08 03 A6 */ mtlr r0
/* 8016792C 0016358C 38 21 00 10 */ addi r1, r1, 0x10
/* 80167930 00163590 4E 80 00 20 */ blr
/* 80167934 00163594 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80167938 00163598 7C 08 02 A6 */ mflr r0
/* 8016793C 0016359C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80167940 001635A0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80167944 001635A4 7C BF 2B 78 */ mr r31, r5
/* 80167948 001635A8 4B FF D2 E5 */ bl func_80164C2C
/* 8016794C 001635AC 2C 03 00 00 */ cmpwi r3, 0
/* 80167950 001635B0 41 82 00 0C */ beq lbl_8016795C
/* 80167954 001635B4 80 9F 00 00 */ lwz r4, 0(r31)
/* 80167958 001635B8 4B FF F3 E5 */ bl func_80166D3C
lbl_8016795C:
/* 8016795C 001635BC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80167960 001635C0 38 60 00 00 */ li r3, 0
/* 80167964 001635C4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80167968 001635C8 7C 08 03 A6 */ mtlr r0
/* 8016796C 001635CC 38 21 00 10 */ addi r1, r1, 0x10
/* 80167970 001635D0 4E 80 00 20 */ blr
.global func_80167974
func_80167974:
/* 80167974 001635D4 38 A0 00 01 */ li r5, 1
/* 80167978 001635D8 38 6D 9E 18 */ addi r3, r13, lbl_8063F0D8-_SDA_BASE_
/* 8016797C 001635DC 38 80 00 04 */ li r4, 4
/* 80167980 001635E0 38 00 00 00 */ li r0, 0
/* 80167984 001635E4 98 AD 9E 18 */ stb r5, lbl_8063F0D8-_SDA_BASE_(r13)
/* 80167988 001635E8 B0 83 00 02 */ sth r4, 2(r3)
/* 8016798C 001635EC 98 03 00 04 */ stb r0, 4(r3)
/* 80167990 001635F0 4E 80 00 20 */ blr

34
asm/code_80167994.s Normal file
View File

@ -0,0 +1,34 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
func_80167994:
/* 80167994 001635F4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80167998 001635F8 7C 08 02 A6 */ mflr r0
/* 8016799C 001635FC 90 01 00 14 */ stw r0, 0x14(r1)
/* 801679A0 00163600 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801679A4 00163604 7C 9F 23 78 */ mr r31, r4
/* 801679A8 00163608 4B FF D2 85 */ bl func_80164C2C
/* 801679AC 0016360C 2C 03 00 00 */ cmpwi r3, 0
/* 801679B0 00163610 41 82 00 0C */ beq lbl_801679BC
/* 801679B4 00163614 7F E4 FB 78 */ mr r4, r31
/* 801679B8 00163618 4B FF F2 85 */ bl func_80166C3C
lbl_801679BC:
/* 801679BC 0016361C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801679C0 00163620 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801679C4 00163624 7C 08 03 A6 */ mtlr r0
/* 801679C8 00163628 38 21 00 10 */ addi r1, r1, 0x10
/* 801679CC 0016362C 4E 80 00 20 */ blr
/* 801679D0 00163630 4E 80 00 20 */ blr
/* 801679D4 00163634 4E 80 00 20 */ blr
.global func_801679D8
func_801679D8:
/* 801679D8 00163638 38 A0 00 01 */ li r5, 1
/* 801679DC 0016363C 38 6D 9E 20 */ addi r3, r13, lbl_8063F0E0-_SDA_BASE_
/* 801679E0 00163640 38 80 00 04 */ li r4, 4
/* 801679E4 00163644 38 00 00 00 */ li r0, 0
/* 801679E8 00163648 98 AD 9E 20 */ stb r5, lbl_8063F0E0-_SDA_BASE_(r13)
/* 801679EC 0016364C B0 83 00 02 */ sth r4, 2(r3)
/* 801679F0 00163650 98 03 00 04 */ stb r0, 4(r3)
/* 801679F4 00163654 4E 80 00 20 */ blr

680
asm/code_801679F8.s Normal file
View File

@ -0,0 +1,680 @@
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_801679F8
func_801679F8:
/* 801679F8 00163658 28 03 00 04 */ cmplwi r3, 4
/* 801679FC 0016365C 41 80 00 0C */ blt lbl_80167A08
/* 80167A00 00163660 38 60 FF FF */ li r3, -1
/* 80167A04 00163664 4E 80 00 20 */ blr
lbl_80167A08:
/* 80167A08 00163668 2C 04 00 00 */ cmpwi r4, 0
/* 80167A0C 0016366C 41 80 00 0C */ blt lbl_80167A18
/* 80167A10 00163670 2C 04 00 08 */ cmpwi r4, 8
/* 80167A14 00163674 41 80 00 0C */ blt lbl_80167A20
lbl_80167A18:
/* 80167A18 00163678 38 60 FF FF */ li r3, -1
/* 80167A1C 0016367C 4E 80 00 20 */ blr
lbl_80167A20:
/* 80167A20 00163680 38 AD 9E 28 */ addi r5, r13, lbl_8063F0E8-_SDA_BASE_
/* 80167A24 00163684 7C 85 19 AE */ stbx r4, r5, r3
/* 80167A28 00163688 38 60 00 00 */ li r3, 0
/* 80167A2C 0016368C 4E 80 00 20 */ blr
.global func_80167A30
func_80167A30:
/* 80167A30 00163690 28 03 00 04 */ cmplwi r3, 4
/* 80167A34 00163694 41 80 00 0C */ blt lbl_80167A40
/* 80167A38 00163698 38 60 FF FF */ li r3, -1
/* 80167A3C 0016369C 4E 80 00 20 */ blr
lbl_80167A40:
/* 80167A40 001636A0 38 8D 9E 28 */ addi r4, r13, lbl_8063F0E8-_SDA_BASE_
/* 80167A44 001636A4 7C 64 18 AE */ lbzx r3, r4, r3
/* 80167A48 001636A8 2C 03 00 00 */ cmpwi r3, 0
/* 80167A4C 001636AC 41 80 00 0C */ blt lbl_80167A58
/* 80167A50 001636B0 2C 03 00 08 */ cmpwi r3, 8
/* 80167A54 001636B4 4D 80 00 20 */ bltlr
lbl_80167A58:
/* 80167A58 001636B8 38 60 FF FF */ li r3, -1
/* 80167A5C 001636BC 4E 80 00 20 */ blr
.global func_80167A60
func_80167A60:
/* 80167A60 001636C0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80167A64 001636C4 7C 08 02 A6 */ mflr r0
/* 80167A68 001636C8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80167A6C 001636CC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80167A70 001636D0 3B E0 00 00 */ li r31, 0
lbl_80167A74:
/* 80167A74 001636D4 7F E4 FB 78 */ mr r4, r31
/* 80167A78 001636D8 57 E3 06 3E */ clrlwi r3, r31, 0x18
/* 80167A7C 001636DC 4B FF FF 7D */ bl func_801679F8
/* 80167A80 001636E0 3B FF 00 01 */ addi r31, r31, 1
/* 80167A84 001636E4 2C 1F 00 04 */ cmpwi r31, 4
/* 80167A88 001636E8 41 80 FF EC */ blt lbl_80167A74
/* 80167A8C 001636EC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80167A90 001636F0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80167A94 001636F4 7C 08 03 A6 */ mtlr r0
/* 80167A98 001636F8 38 21 00 10 */ addi r1, r1, 0x10
/* 80167A9C 001636FC 4E 80 00 20 */ blr
.global func_80167AA0
func_80167AA0:
/* 80167AA0 00163700 28 03 00 0F */ cmplwi r3, 0xf
/* 80167AA4 00163704 41 81 00 84 */ bgt lbl_80167B28
/* 80167AA8 00163708 3C 80 80 42 */ lis r4, lbl_8041F550@ha
/* 80167AAC 0016370C 54 60 10 3A */ slwi r0, r3, 2
/* 80167AB0 00163710 38 84 F5 50 */ addi r4, r4, lbl_8041F550@l
/* 80167AB4 00163714 7C 84 00 2E */ lwzx r4, r4, r0
/* 80167AB8 00163718 7C 89 03 A6 */ mtctr r4
/* 80167ABC 0016371C 4E 80 04 20 */ bctr
/* 80167AC0 00163720 38 60 00 00 */ li r3, 0
/* 80167AC4 00163724 4E 80 00 20 */ blr
/* 80167AC8 00163728 38 60 00 01 */ li r3, 1
/* 80167ACC 0016372C 4E 80 00 20 */ blr
/* 80167AD0 00163730 38 60 00 02 */ li r3, 2
/* 80167AD4 00163734 4E 80 00 20 */ blr
/* 80167AD8 00163738 38 60 00 03 */ li r3, 3
/* 80167ADC 0016373C 4E 80 00 20 */ blr
/* 80167AE0 00163740 38 60 00 04 */ li r3, 4
/* 80167AE4 00163744 4E 80 00 20 */ blr
/* 80167AE8 00163748 38 60 00 0C */ li r3, 0xc
/* 80167AEC 0016374C 4E 80 00 20 */ blr
/* 80167AF0 00163750 38 60 00 05 */ li r3, 5
/* 80167AF4 00163754 4E 80 00 20 */ blr
/* 80167AF8 00163758 38 60 00 06 */ li r3, 6
/* 80167AFC 0016375C 4E 80 00 20 */ blr
/* 80167B00 00163760 38 60 00 07 */ li r3, 7
/* 80167B04 00163764 4E 80 00 20 */ blr
/* 80167B08 00163768 38 60 00 08 */ li r3, 8
/* 80167B0C 0016376C 4E 80 00 20 */ blr
/* 80167B10 00163770 38 60 00 09 */ li r3, 9
/* 80167B14 00163774 4E 80 00 20 */ blr
/* 80167B18 00163778 38 60 00 0A */ li r3, 0xa
/* 80167B1C 0016377C 4E 80 00 20 */ blr
/* 80167B20 00163780 38 60 00 0B */ li r3, 0xb
/* 80167B24 00163784 4E 80 00 20 */ blr
lbl_80167B28:
/* 80167B28 00163788 38 60 FF FF */ li r3, -1
/* 80167B2C 0016378C 4E 80 00 20 */ blr
.global func_80167B30
func_80167B30:
/* 80167B30 00163790 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167B34 00163794 7C 08 02 A6 */ mflr r0
/* 80167B38 00163798 90 01 00 24 */ stw r0, 0x24(r1)
/* 80167B3C 0016379C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80167B40 001637A0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80167B44 001637A4 7C 9E 23 78 */ mr r30, r4
/* 80167B48 001637A8 4B FF FE E9 */ bl func_80167A30
/* 80167B4C 001637AC 2C 03 00 00 */ cmpwi r3, 0
/* 80167B50 001637B0 7C 7F 1B 78 */ mr r31, r3
/* 80167B54 001637B4 41 80 00 40 */ blt lbl_80167B94
/* 80167B58 001637B8 4B FF D1 15 */ bl func_80164C6C
/* 80167B5C 001637BC 2C 03 00 00 */ cmpwi r3, 0
/* 80167B60 001637C0 41 82 00 34 */ beq lbl_80167B94
/* 80167B64 001637C4 57 C5 C4 2E */ rlwinm r5, r30, 0x18, 0x10, 0x17
/* 80167B68 001637C8 57 C0 42 1E */ rlwinm r0, r30, 8, 8, 0xf
/* 80167B6C 001637CC 53 C5 46 3E */ rlwimi r5, r30, 8, 0x18, 0x1f
/* 80167B70 001637D0 3C 80 80 42 */ lis r4, lbl_8041F590@ha
/* 80167B74 001637D4 53 C0 C0 0E */ rlwimi r0, r30, 0x18, 0, 7
/* 80167B78 001637D8 7F E3 FB 78 */ mr r3, r31
/* 80167B7C 001637DC 7C A0 03 78 */ or r0, r5, r0
/* 80167B80 001637E0 38 84 F5 90 */ addi r4, r4, lbl_8041F590@l
/* 80167B84 001637E4 90 01 00 08 */ stw r0, 8(r1)
/* 80167B88 001637E8 38 A1 00 08 */ addi r5, r1, 8
/* 80167B8C 001637EC 38 C0 00 04 */ li r6, 4
/* 80167B90 001637F0 4B FF CC 95 */ bl func_80164824
lbl_80167B94:
/* 80167B94 001637F4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167B98 001637F8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80167B9C 001637FC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80167BA0 00163800 7C 08 03 A6 */ mtlr r0
/* 80167BA4 00163804 38 21 00 20 */ addi r1, r1, 0x20
/* 80167BA8 00163808 4E 80 00 20 */ blr
.global func_80167BAC
func_80167BAC:
/* 80167BAC 0016380C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167BB0 00163810 7C 08 02 A6 */ mflr r0
/* 80167BB4 00163814 90 01 00 24 */ stw r0, 0x24(r1)
/* 80167BB8 00163818 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80167BBC 0016381C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80167BC0 00163820 7C BE 2B 78 */ mr r30, r5
/* 80167BC4 00163824 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80167BC8 00163828 7C 9D 23 78 */ mr r29, r4
/* 80167BCC 0016382C 4B FF FE 65 */ bl func_80167A30
/* 80167BD0 00163830 2C 03 00 00 */ cmpwi r3, 0
/* 80167BD4 00163834 7C 7F 1B 78 */ mr r31, r3
/* 80167BD8 00163838 41 80 00 58 */ blt lbl_80167C30
/* 80167BDC 0016383C 4B FF D0 91 */ bl func_80164C6C
/* 80167BE0 00163840 2C 03 00 00 */ cmpwi r3, 0
/* 80167BE4 00163844 41 82 00 4C */ beq lbl_80167C30
/* 80167BE8 00163848 38 80 FF FF */ li r4, -1
/* 80167BEC 0016384C 4B FF F0 29 */ bl func_80166C14
/* 80167BF0 00163850 7F A3 EB 78 */ mr r3, r29
/* 80167BF4 00163854 4B FF FE AD */ bl func_80167AA0
/* 80167BF8 00163858 54 64 44 2E */ rlwinm r4, r3, 8, 0x10, 0x17
/* 80167BFC 0016385C 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f
/* 80167C00 00163860 7C A4 02 14 */ add r5, r4, r0
/* 80167C04 00163864 57 C3 44 2E */ rlwinm r3, r30, 8, 0x10, 0x17
/* 80167C08 00163868 57 C0 C6 3E */ rlwinm r0, r30, 0x18, 0x18, 0x1f
/* 80167C0C 0016386C 3C 80 80 42 */ lis r4, lbl_8041F5A4@ha
/* 80167C10 00163870 7C 03 02 14 */ add r0, r3, r0
/* 80167C14 00163874 B0 A1 00 08 */ sth r5, 8(r1)
/* 80167C18 00163878 7F E3 FB 78 */ mr r3, r31
/* 80167C1C 0016387C 38 84 F5 A4 */ addi r4, r4, lbl_8041F5A4@l
/* 80167C20 00163880 B0 01 00 0A */ sth r0, 0xa(r1)
/* 80167C24 00163884 38 A1 00 08 */ addi r5, r1, 8
/* 80167C28 00163888 38 C0 00 04 */ li r6, 4
/* 80167C2C 0016388C 4B FF CB F9 */ bl func_80164824
lbl_80167C30:
/* 80167C30 00163890 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167C34 00163894 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80167C38 00163898 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80167C3C 0016389C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80167C40 001638A0 7C 08 03 A6 */ mtlr r0
/* 80167C44 001638A4 38 21 00 20 */ addi r1, r1, 0x20
/* 80167C48 001638A8 4E 80 00 20 */ blr
.global func_80167C4C
func_80167C4C:
/* 80167C4C 001638AC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80167C50 001638B0 7C 08 02 A6 */ mflr r0
/* 80167C54 001638B4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80167C58 001638B8 4B FF FD D9 */ bl func_80167A30
/* 80167C5C 001638BC 2C 03 00 00 */ cmpwi r3, 0
/* 80167C60 001638C0 40 80 00 0C */ bge lbl_80167C6C
/* 80167C64 001638C4 38 60 00 07 */ li r3, 7
/* 80167C68 001638C8 48 00 00 1C */ b lbl_80167C84
lbl_80167C6C:
/* 80167C6C 001638CC 4B FF D0 01 */ bl func_80164C6C
/* 80167C70 001638D0 2C 03 00 00 */ cmpwi r3, 0
/* 80167C74 001638D4 40 82 00 0C */ bne lbl_80167C80
/* 80167C78 001638D8 38 60 00 07 */ li r3, 7
/* 80167C7C 001638DC 48 00 00 08 */ b lbl_80167C84
lbl_80167C80:
/* 80167C80 001638E0 4B FF EF 9D */ bl func_80166C1C
lbl_80167C84:
/* 80167C84 001638E4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80167C88 001638E8 7C 08 03 A6 */ mtlr r0
/* 80167C8C 001638EC 38 21 00 10 */ addi r1, r1, 0x10
/* 80167C90 001638F0 4E 80 00 20 */ blr
.global func_80167C94
func_80167C94:
/* 80167C94 001638F4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167C98 001638F8 7C 08 02 A6 */ mflr r0
/* 80167C9C 001638FC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80167CA0 00163900 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80167CA4 00163904 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80167CA8 00163908 7C 7E 1B 78 */ mr r30, r3
/* 80167CAC 0016390C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80167CB0 00163910 7C 9D 23 78 */ mr r29, r4
/* 80167CB4 00163914 4B FF FD 7D */ bl func_80167A30
/* 80167CB8 00163918 2C 03 00 00 */ cmpwi r3, 0
/* 80167CBC 0016391C 7C 7F 1B 78 */ mr r31, r3
/* 80167CC0 00163920 40 80 00 0C */ bge lbl_80167CCC
/* 80167CC4 00163924 38 60 00 07 */ li r3, 7
/* 80167CC8 00163928 48 00 00 7C */ b lbl_80167D44
lbl_80167CCC:
/* 80167CCC 0016392C 3C A0 80 42 */ lis r5, lbl_8041F5BC@ha
/* 80167CD0 00163930 80 9D 00 00 */ lwz r4, 0(r29)
/* 80167CD4 00163934 7F C3 F3 78 */ mr r3, r30
/* 80167CD8 00163938 38 A5 F5 BC */ addi r5, r5, lbl_8041F5BC@l
/* 80167CDC 0016393C 48 00 00 85 */ bl func_80167D60
/* 80167CE0 00163940 48 0F 62 F1 */ bl func_8025DFD0
/* 80167CE4 00163944 38 80 16 20 */ li r4, 0x1620
/* 80167CE8 00163948 48 0F 62 D9 */ bl func_8025DFC0
/* 80167CEC 0016394C 2C 03 00 00 */ cmpwi r3, 0
/* 80167CF0 00163950 7C 7E 1B 78 */ mr r30, r3
/* 80167CF4 00163954 40 82 00 0C */ bne lbl_80167D00
/* 80167CF8 00163958 38 60 00 07 */ li r3, 7
/* 80167CFC 0016395C 48 00 00 48 */ b lbl_80167D44
lbl_80167D00:
/* 80167D00 00163960 7F A3 EB 78 */ mr r3, r29
/* 80167D04 00163964 7F C4 F3 78 */ mr r4, r30
/* 80167D08 00163968 48 00 08 7D */ bl func_80168584
/* 80167D0C 0016396C 3C 80 80 42 */ lis r4, lbl_8041F5DC@ha
/* 80167D10 00163970 7F E3 FB 78 */ mr r3, r31
/* 80167D14 00163974 7F C5 F3 78 */ mr r5, r30
/* 80167D18 00163978 38 C0 16 20 */ li r6, 0x1620
/* 80167D1C 0016397C 38 84 F5 DC */ addi r4, r4, lbl_8041F5DC@l
/* 80167D20 00163980 4B FF CC 51 */ bl func_80164970
/* 80167D24 00163984 7C 7F 1B 78 */ mr r31, r3
/* 80167D28 00163988 48 0F 62 A9 */ bl func_8025DFD0
/* 80167D2C 0016398C 7F C4 F3 78 */ mr r4, r30
/* 80167D30 00163990 48 0F 62 99 */ bl func_8025DFC8
/* 80167D34 00163994 7C 1F 00 D0 */ neg r0, r31
/* 80167D38 00163998 7C 00 FB 78 */ or r0, r0, r31
/* 80167D3C 0016399C 7C 00 FE 70 */ srawi r0, r0, 0x1f
/* 80167D40 001639A0 54 03 07 7E */ clrlwi r3, r0, 0x1d
lbl_80167D44:
/* 80167D44 001639A4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167D48 001639A8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80167D4C 001639AC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80167D50 001639B0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80167D54 001639B4 7C 08 03 A6 */ mtlr r0
/* 80167D58 001639B8 38 21 00 20 */ addi r1, r1, 0x20
/* 80167D5C 001639BC 4E 80 00 20 */ blr
.global func_80167D60
func_80167D60:
/* 80167D60 001639C0 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167D64 001639C4 7C 08 02 A6 */ mflr r0
/* 80167D68 001639C8 90 01 00 24 */ stw r0, 0x24(r1)
/* 80167D6C 001639CC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80167D70 001639D0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80167D74 001639D4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80167D78 001639D8 7C BD 2B 78 */ mr r29, r5
/* 80167D7C 001639DC 93 81 00 10 */ stw r28, 0x10(r1)
/* 80167D80 001639E0 7C 9C 23 78 */ mr r28, r4
/* 80167D84 001639E4 4B FF FC AD */ bl func_80167A30
/* 80167D88 001639E8 2C 03 00 00 */ cmpwi r3, 0
/* 80167D8C 001639EC 7C 7F 1B 78 */ mr r31, r3
/* 80167D90 001639F0 40 80 00 0C */ bge lbl_80167D9C
/* 80167D94 001639F4 38 60 00 07 */ li r3, 7
/* 80167D98 001639F8 48 00 00 68 */ b lbl_80167E00
lbl_80167D9C:
/* 80167D9C 001639FC 48 0F 62 35 */ bl func_8025DFD0
/* 80167DA0 00163A00 38 80 05 90 */ li r4, 0x590
/* 80167DA4 00163A04 48 0F 62 1D */ bl func_8025DFC0
/* 80167DA8 00163A08 2C 03 00 00 */ cmpwi r3, 0
/* 80167DAC 00163A0C 7C 7E 1B 78 */ mr r30, r3
/* 80167DB0 00163A10 40 82 00 0C */ bne lbl_80167DBC
/* 80167DB4 00163A14 38 60 00 07 */ li r3, 7
/* 80167DB8 00163A18 48 00 00 48 */ b lbl_80167E00
lbl_80167DBC:
/* 80167DBC 00163A1C 7F 83 E3 78 */ mr r3, r28
/* 80167DC0 00163A20 7F C4 F3 78 */ mr r4, r30
/* 80167DC4 00163A24 38 A0 00 00 */ li r5, 0
/* 80167DC8 00163A28 48 27 99 19 */ bl func_803E16E0
/* 80167DCC 00163A2C 7F E3 FB 78 */ mr r3, r31
/* 80167DD0 00163A30 7F A4 EB 78 */ mr r4, r29
/* 80167DD4 00163A34 7F C5 F3 78 */ mr r5, r30
/* 80167DD8 00163A38 38 C0 05 90 */ li r6, 0x590
/* 80167DDC 00163A3C 4B FF CB 95 */ bl func_80164970
/* 80167DE0 00163A40 7C 7F 1B 78 */ mr r31, r3
/* 80167DE4 00163A44 48 0F 61 ED */ bl func_8025DFD0
/* 80167DE8 00163A48 7F C4 F3 78 */ mr r4, r30
/* 80167DEC 00163A4C 48 0F 61 DD */ bl func_8025DFC8
/* 80167DF0 00163A50 7C 1F 00 D0 */ neg r0, r31
/* 80167DF4 00163A54 7C 00 FB 78 */ or r0, r0, r31
/* 80167DF8 00163A58 7C 00 FE 70 */ srawi r0, r0, 0x1f
/* 80167DFC 00163A5C 54 03 07 7E */ clrlwi r3, r0, 0x1d
lbl_80167E00:
/* 80167E00 00163A60 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167E04 00163A64 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80167E08 00163A68 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80167E0C 00163A6C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80167E10 00163A70 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80167E14 00163A74 7C 08 03 A6 */ mtlr r0
/* 80167E18 00163A78 38 21 00 20 */ addi r1, r1, 0x20
/* 80167E1C 00163A7C 4E 80 00 20 */ blr
.global func_80167E20
func_80167E20:
/* 80167E20 00163A80 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167E24 00163A84 7C 08 02 A6 */ mflr r0
/* 80167E28 00163A88 90 01 00 24 */ stw r0, 0x24(r1)
/* 80167E2C 00163A8C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80167E30 00163A90 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80167E34 00163A94 7C 7E 1B 78 */ mr r30, r3
/* 80167E38 00163A98 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80167E3C 00163A9C 7C 9D 23 78 */ mr r29, r4
/* 80167E40 00163AA0 4B FF FB F1 */ bl func_80167A30
/* 80167E44 00163AA4 2C 03 00 00 */ cmpwi r3, 0
/* 80167E48 00163AA8 7C 7F 1B 78 */ mr r31, r3
/* 80167E4C 00163AAC 40 80 00 0C */ bge lbl_80167E58
/* 80167E50 00163AB0 38 60 00 07 */ li r3, 7
/* 80167E54 00163AB4 48 00 00 7C */ b lbl_80167ED0
lbl_80167E58:
/* 80167E58 00163AB8 3C A0 80 42 */ lis r5, lbl_8041F5FC@ha
/* 80167E5C 00163ABC 80 9D 00 00 */ lwz r4, 0(r29)
/* 80167E60 00163AC0 7F C3 F3 78 */ mr r3, r30
/* 80167E64 00163AC4 38 A5 F5 FC */ addi r5, r5, lbl_8041F5FC@l
/* 80167E68 00163AC8 4B FF FE F9 */ bl func_80167D60
/* 80167E6C 00163ACC 48 0F 61 65 */ bl func_8025DFD0
/* 80167E70 00163AD0 38 80 04 08 */ li r4, 0x408
/* 80167E74 00163AD4 48 0F 61 4D */ bl func_8025DFC0
/* 80167E78 00163AD8 2C 03 00 00 */ cmpwi r3, 0
/* 80167E7C 00163ADC 7C 7E 1B 78 */ mr r30, r3
/* 80167E80 00163AE0 40 82 00 0C */ bne lbl_80167E8C
/* 80167E84 00163AE4 38 60 00 07 */ li r3, 7
/* 80167E88 00163AE8 48 00 00 48 */ b lbl_80167ED0
lbl_80167E8C:
/* 80167E8C 00163AEC 7F A3 EB 78 */ mr r3, r29
/* 80167E90 00163AF0 7F C4 F3 78 */ mr r4, r30
/* 80167E94 00163AF4 48 00 08 39 */ bl func_801686CC
/* 80167E98 00163AF8 3C 80 80 42 */ lis r4, lbl_8041F61C@ha
/* 80167E9C 00163AFC 7F E3 FB 78 */ mr r3, r31
/* 80167EA0 00163B00 7F C5 F3 78 */ mr r5, r30
/* 80167EA4 00163B04 38 C0 04 08 */ li r6, 0x408
/* 80167EA8 00163B08 38 84 F6 1C */ addi r4, r4, lbl_8041F61C@l
/* 80167EAC 00163B0C 4B FF CA C5 */ bl func_80164970
/* 80167EB0 00163B10 7C 7F 1B 78 */ mr r31, r3
/* 80167EB4 00163B14 48 0F 61 1D */ bl func_8025DFD0
/* 80167EB8 00163B18 7F C4 F3 78 */ mr r4, r30
/* 80167EBC 00163B1C 48 0F 61 0D */ bl func_8025DFC8
/* 80167EC0 00163B20 7C 1F 00 D0 */ neg r0, r31
/* 80167EC4 00163B24 7C 00 FB 78 */ or r0, r0, r31
/* 80167EC8 00163B28 7C 00 FE 70 */ srawi r0, r0, 0x1f
/* 80167ECC 00163B2C 54 03 07 7E */ clrlwi r3, r0, 0x1d
lbl_80167ED0:
/* 80167ED0 00163B30 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167ED4 00163B34 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80167ED8 00163B38 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80167EDC 00163B3C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80167EE0 00163B40 7C 08 03 A6 */ mtlr r0
/* 80167EE4 00163B44 38 21 00 20 */ addi r1, r1, 0x20
/* 80167EE8 00163B48 4E 80 00 20 */ blr
lbl_80167EEC:
/* 80167EEC 00163B4C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167EF0 00163B50 7C 08 02 A6 */ mflr r0
/* 80167EF4 00163B54 90 01 00 24 */ stw r0, 0x24(r1)
/* 80167EF8 00163B58 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80167EFC 00163B5C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80167F00 00163B60 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80167F04 00163B64 7C BD 2B 78 */ mr r29, r5
/* 80167F08 00163B68 93 81 00 10 */ stw r28, 0x10(r1)
/* 80167F0C 00163B6C 7C 9C 23 78 */ mr r28, r4
/* 80167F10 00163B70 4B FF FB 21 */ bl func_80167A30
/* 80167F14 00163B74 2C 03 00 00 */ cmpwi r3, 0
/* 80167F18 00163B78 7C 7F 1B 78 */ mr r31, r3
/* 80167F1C 00163B7C 40 80 00 0C */ bge lbl_80167F28
/* 80167F20 00163B80 38 60 00 07 */ li r3, 7
/* 80167F24 00163B84 48 00 00 74 */ b lbl_80167F98
lbl_80167F28:
/* 80167F28 00163B88 48 0F 60 A9 */ bl func_8025DFD0
/* 80167F2C 00163B8C 38 80 02 00 */ li r4, 0x200
/* 80167F30 00163B90 48 0F 60 91 */ bl func_8025DFC0
/* 80167F34 00163B94 2C 03 00 00 */ cmpwi r3, 0
/* 80167F38 00163B98 7C 7E 1B 78 */ mr r30, r3
/* 80167F3C 00163B9C 40 82 00 0C */ bne lbl_80167F48
/* 80167F40 00163BA0 38 60 00 07 */ li r3, 7
/* 80167F44 00163BA4 48 00 00 54 */ b lbl_80167F98
lbl_80167F48:
/* 80167F48 00163BA8 7F 84 E3 78 */ mr r4, r28
/* 80167F4C 00163BAC 38 A0 02 00 */ li r5, 0x200
/* 80167F50 00163BB0 48 00 F1 FD */ bl func_8017714C
/* 80167F54 00163BB4 7F 83 E3 78 */ mr r3, r28
/* 80167F58 00163BB8 7F C4 F3 78 */ mr r4, r30
/* 80167F5C 00163BBC 38 A0 02 00 */ li r5, 0x200
/* 80167F60 00163BC0 48 00 05 3D */ bl func_8016849C
/* 80167F64 00163BC4 7C 66 1B 78 */ mr r6, r3
/* 80167F68 00163BC8 7F E3 FB 78 */ mr r3, r31
/* 80167F6C 00163BCC 7F A4 EB 78 */ mr r4, r29
/* 80167F70 00163BD0 7F C5 F3 78 */ mr r5, r30
/* 80167F74 00163BD4 4B FF C8 B1 */ bl func_80164824
/* 80167F78 00163BD8 7C 7F 1B 78 */ mr r31, r3
/* 80167F7C 00163BDC 48 0F 60 55 */ bl func_8025DFD0
/* 80167F80 00163BE0 7F C4 F3 78 */ mr r4, r30
/* 80167F84 00163BE4 48 0F 60 45 */ bl func_8025DFC8
/* 80167F88 00163BE8 7C 1F 00 D0 */ neg r0, r31
/* 80167F8C 00163BEC 7C 00 FB 78 */ or r0, r0, r31
/* 80167F90 00163BF0 7C 00 FE 70 */ srawi r0, r0, 0x1f
/* 80167F94 00163BF4 54 03 07 7E */ clrlwi r3, r0, 0x1d
lbl_80167F98:
/* 80167F98 00163BF8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80167F9C 00163BFC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80167FA0 00163C00 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80167FA4 00163C04 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80167FA8 00163C08 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80167FAC 00163C0C 7C 08 03 A6 */ mtlr r0
/* 80167FB0 00163C10 38 21 00 20 */ addi r1, r1, 0x20
/* 80167FB4 00163C14 4E 80 00 20 */ blr
.global func_80167FB8
func_80167FB8:
/* 80167FB8 00163C18 3C A0 80 42 */ lis r5, lbl_8041F63C@ha
/* 80167FBC 00163C1C 38 A5 F6 3C */ addi r5, r5, lbl_8041F63C@l
/* 80167FC0 00163C20 4B FF FF 2C */ b lbl_80167EEC
.global func_80167FC4
func_80167FC4:
/* 80167FC4 00163C24 3C A0 80 42 */ lis r5, lbl_8041F658@ha
/* 80167FC8 00163C28 38 A5 F6 58 */ addi r5, r5, lbl_8041F658@l
/* 80167FCC 00163C2C 4B FF FF 20 */ b lbl_80167EEC
.global func_80167FD0
func_80167FD0:
/* 80167FD0 00163C30 3C A0 80 42 */ lis r5, lbl_8041F674@ha
/* 80167FD4 00163C34 38 A5 F6 74 */ addi r5, r5, lbl_8041F674@l
/* 80167FD8 00163C38 4B FF FF 14 */ b lbl_80167EEC
lbl_80167FDC:
/* 80167FDC 00163C3C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80167FE0 00163C40 7C 08 02 A6 */ mflr r0
/* 80167FE4 00163C44 90 01 00 24 */ stw r0, 0x24(r1)
/* 80167FE8 00163C48 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80167FEC 00163C4C 7C BF 2B 78 */ mr r31, r5
/* 80167FF0 00163C50 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80167FF4 00163C54 7C 9E 23 78 */ mr r30, r4
/* 80167FF8 00163C58 4B FF FA 39 */ bl func_80167A30
/* 80167FFC 00163C5C 2C 03 00 00 */ cmpwi r3, 0
/* 80168000 00163C60 40 80 00 0C */ bge lbl_8016800C
/* 80168004 00163C64 38 60 00 07 */ li r3, 7
/* 80168008 00163C68 48 00 00 34 */ b lbl_8016803C
lbl_8016800C:
/* 8016800C 00163C6C 57 C4 44 2E */ rlwinm r4, r30, 8, 0x10, 0x17
/* 80168010 00163C70 57 C0 C6 3E */ rlwinm r0, r30, 0x18, 0x18, 0x1f
/* 80168014 00163C74 7C 04 02 14 */ add r0, r4, r0
/* 80168018 00163C78 38 A1 00 08 */ addi r5, r1, 8
/* 8016801C 00163C7C B0 01 00 08 */ sth r0, 8(r1)
/* 80168020 00163C80 7F E4 FB 78 */ mr r4, r31
/* 80168024 00163C84 38 C0 00 02 */ li r6, 2
/* 80168028 00163C88 4B FF C7 FD */ bl func_80164824
/* 8016802C 00163C8C 7C 03 00 D0 */ neg r0, r3
/* 80168030 00163C90 7C 00 1B 78 */ or r0, r0, r3
/* 80168034 00163C94 7C 00 FE 70 */ srawi r0, r0, 0x1f
/* 80168038 00163C98 54 03 07 7E */ clrlwi r3, r0, 0x1d
lbl_8016803C:
/* 8016803C 00163C9C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80168040 00163CA0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80168044 00163CA4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80168048 00163CA8 7C 08 03 A6 */ mtlr r0
/* 8016804C 00163CAC 38 21 00 20 */ addi r1, r1, 0x20
/* 80168050 00163CB0 4E 80 00 20 */ blr
.global func_80168054
func_80168054:
/* 80168054 00163CB4 3C A0 80 42 */ lis r5, lbl_8041F690@ha
/* 80168058 00163CB8 38 80 00 00 */ li r4, 0
/* 8016805C 00163CBC 38 A5 F6 90 */ addi r5, r5, lbl_8041F690@l
/* 80168060 00163CC0 4B FF FF 7C */ b lbl_80167FDC
.global func_80168064
func_80168064:
/* 80168064 00163CC4 3C A0 80 42 */ lis r5, lbl_8041F6AC@ha
/* 80168068 00163CC8 38 80 00 00 */ li r4, 0
/* 8016806C 00163CCC 38 A5 F6 AC */ addi r5, r5, lbl_8041F6AC@l
/* 80168070 00163CD0 4B FF FF 6C */ b lbl_80167FDC
.global func_80168074
func_80168074:
/* 80168074 00163CD4 3C A0 80 42 */ lis r5, lbl_8041F6C8@ha
/* 80168078 00163CD8 38 80 00 00 */ li r4, 0
/* 8016807C 00163CDC 38 A5 F6 C8 */ addi r5, r5, lbl_8041F6C8@l
/* 80168080 00163CE0 4B FF FF 5C */ b lbl_80167FDC
.global func_80168084
func_80168084:
/* 80168084 00163CE4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80168088 00163CE8 7C 08 02 A6 */ mflr r0
/* 8016808C 00163CEC 3C A0 80 42 */ lis r5, lbl_8041F6E0@ha
/* 80168090 00163CF0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80168094 00163CF4 38 A5 F6 E0 */ addi r5, r5, lbl_8041F6E0@l
/* 80168098 00163CF8 4B FF FC C9 */ bl func_80167D60
/* 8016809C 00163CFC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801680A0 00163D00 54 63 06 3E */ clrlwi r3, r3, 0x18
/* 801680A4 00163D04 7C 08 03 A6 */ mtlr r0
/* 801680A8 00163D08 38 21 00 10 */ addi r1, r1, 0x10
/* 801680AC 00163D0C 4E 80 00 20 */ blr
.global func_801680B0
func_801680B0:
/* 801680B0 00163D10 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801680B4 00163D14 7C 08 02 A6 */ mflr r0
/* 801680B8 00163D18 90 01 00 14 */ stw r0, 0x14(r1)
/* 801680BC 00163D1C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801680C0 00163D20 7C 9F 23 78 */ mr r31, r4
/* 801680C4 00163D24 4B FF F9 6D */ bl func_80167A30
/* 801680C8 00163D28 2C 03 00 00 */ cmpwi r3, 0
/* 801680CC 00163D2C 40 80 00 0C */ bge lbl_801680D8
/* 801680D0 00163D30 38 60 FF FF */ li r3, -1
/* 801680D4 00163D34 48 00 00 18 */ b lbl_801680EC
lbl_801680D8:
/* 801680D8 00163D38 3C 80 80 42 */ lis r4, lbl_8041F704@ha
/* 801680DC 00163D3C 7F E5 FB 78 */ mr r5, r31
/* 801680E0 00163D40 38 84 F7 04 */ addi r4, r4, lbl_8041F704@l
/* 801680E4 00163D44 38 C0 00 0C */ li r6, 0xc
/* 801680E8 00163D48 4B FF C7 3D */ bl func_80164824
lbl_801680EC:
/* 801680EC 00163D4C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801680F0 00163D50 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801680F4 00163D54 7C 08 03 A6 */ mtlr r0
/* 801680F8 00163D58 38 21 00 10 */ addi r1, r1, 0x10
/* 801680FC 00163D5C 4E 80 00 20 */ blr
.global func_80168100
func_80168100:
/* 80168100 00163D60 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80168104 00163D64 7C 08 02 A6 */ mflr r0
/* 80168108 00163D68 90 01 00 14 */ stw r0, 0x14(r1)
/* 8016810C 00163D6C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80168110 00163D70 7C 9F 23 78 */ mr r31, r4
/* 80168114 00163D74 4B FF F9 1D */ bl func_80167A30
/* 80168118 00163D78 2C 03 00 00 */ cmpwi r3, 0
/* 8016811C 00163D7C 40 80 00 0C */ bge lbl_80168128
/* 80168120 00163D80 38 60 FF FF */ li r3, -1
/* 80168124 00163D84 48 00 00 10 */ b lbl_80168134
lbl_80168128:
/* 80168128 00163D88 7F E4 FB 78 */ mr r4, r31
/* 8016812C 00163D8C 38 A0 00 0C */ li r5, 0xc
/* 80168130 00163D90 4B FF C9 E5 */ bl func_80164B14
lbl_80168134:
/* 80168134 00163D94 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80168138 00163D98 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8016813C 00163D9C 7C 08 03 A6 */ mtlr r0
/* 80168140 00163DA0 38 21 00 10 */ addi r1, r1, 0x10
/* 80168144 00163DA4 4E 80 00 20 */ blr
.global func_80168148
func_80168148:
/* 80168148 00163DA8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8016814C 00163DAC 7C 08 02 A6 */ mflr r0
/* 80168150 00163DB0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80168154 00163DB4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80168158 00163DB8 93 C1 00 08 */ stw r30, 8(r1)
/* 8016815C 00163DBC 7C 9E 23 78 */ mr r30, r4
/* 80168160 00163DC0 4B FF F8 D1 */ bl func_80167A30
/* 80168164 00163DC4 2C 03 00 00 */ cmpwi r3, 0
/* 80168168 00163DC8 40 80 00 0C */ bge lbl_80168174
/* 8016816C 00163DCC 38 60 00 00 */ li r3, 0
/* 80168170 00163DD0 48 00 00 4C */ b lbl_801681BC
lbl_80168174:
/* 80168174 00163DD4 4B FF CA F9 */ bl func_80164C6C
/* 80168178 00163DD8 2C 03 00 00 */ cmpwi r3, 0
/* 8016817C 00163DDC 7C 7F 1B 78 */ mr r31, r3
/* 80168180 00163DE0 40 82 00 0C */ bne lbl_8016818C
/* 80168184 00163DE4 38 60 00 00 */ li r3, 0
/* 80168188 00163DE8 48 00 00 34 */ b lbl_801681BC
lbl_8016818C:
/* 8016818C 00163DEC 4B FF EA ED */ bl func_80166C78
/* 80168190 00163DF0 2C 03 00 00 */ cmpwi r3, 0
/* 80168194 00163DF4 7C 64 1B 78 */ mr r4, r3
/* 80168198 00163DF8 40 82 00 0C */ bne lbl_801681A4
/* 8016819C 00163DFC 38 60 00 00 */ li r3, 0
/* 801681A0 00163E00 48 00 00 1C */ b lbl_801681BC
lbl_801681A4:
/* 801681A4 00163E04 7F C3 F3 78 */ mr r3, r30
/* 801681A8 00163E08 38 A0 00 0C */ li r5, 0xc
/* 801681AC 00163E0C 4B E9 BE 55 */ bl memcpy
/* 801681B0 00163E10 7F E3 FB 78 */ mr r3, r31
/* 801681B4 00163E14 4B FF EA 71 */ bl func_80166C24
/* 801681B8 00163E18 7F C3 F3 78 */ mr r3, r30
lbl_801681BC:
/* 801681BC 00163E1C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 801681C0 00163E20 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801681C4 00163E24 83 C1 00 08 */ lwz r30, 8(r1)
/* 801681C8 00163E28 7C 08 03 A6 */ mtlr r0
/* 801681CC 00163E2C 38 21 00 10 */ addi r1, r1, 0x10
/* 801681D0 00163E30 4E 80 00 20 */ blr
.global func_801681D4
func_801681D4:
/* 801681D4 00163E34 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801681D8 00163E38 7C 08 02 A6 */ mflr r0
/* 801681DC 00163E3C 90 01 00 14 */ stw r0, 0x14(r1)
/* 801681E0 00163E40 93 E1 00 0C */ stw r31, 0xc(r1)
/* 801681E4 00163E44 7C 9F 23 78 */ mr r31, r4
/* 801681E8 00163E48 4B FF F8 49 */ bl func_80167A30
/* 801681EC 00163E4C 2C 03 00 00 */ cmpwi r3, 0
/* 801681F0 00163E50 40 80 00 0C */ bge lbl_801681FC
/* 801681F4 00163E54 38 60 FF FF */ li r3, -1
/* 801681F8 00163E58 48 00 00 18 */ b lbl_80168210
lbl_801681FC:
/* 801681FC 00163E5C 3C 80 80 42 */ lis r4, lbl_8041F720@ha
/* 80168200 00163E60 7F E5 FB 78 */ mr r5, r31
/* 80168204 00163E64 38 84 F7 20 */ addi r4, r4, lbl_8041F720@l
/* 80168208 00163E68 38 C0 00 80 */ li r6, 0x80
/* 8016820C 00163E6C 4B FF C6 19 */ bl func_80164824
lbl_80168210:
/* 80168210 00163E70 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80168214 00163E74 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80168218 00163E78 7C 08 03 A6 */ mtlr r0
/* 8016821C 00163E7C 38 21 00 10 */ addi r1, r1, 0x10
/* 80168220 00163E80 4E 80 00 20 */ blr
.global func_80168224
func_80168224:
/* 80168224 00163E84 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80168228 00163E88 7C 08 02 A6 */ mflr r0
/* 8016822C 00163E8C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80168230 00163E90 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80168234 00163E94 93 C1 00 08 */ stw r30, 8(r1)
/* 80168238 00163E98 7C 9E 23 78 */ mr r30, r4
/* 8016823C 00163E9C 4B FF F7 F5 */ bl func_80167A30
/* 80168240 00163EA0 2C 03 00 00 */ cmpwi r3, 0
/* 80168244 00163EA4 40 80 00 0C */ bge lbl_80168250
/* 80168248 00163EA8 38 60 00 00 */ li r3, 0
/* 8016824C 00163EAC 48 00 00 4C */ b lbl_80168298
lbl_80168250:
/* 80168250 00163EB0 4B FF CA 1D */ bl func_80164C6C
/* 80168254 00163EB4 2C 03 00 00 */ cmpwi r3, 0
/* 80168258 00163EB8 7C 7F 1B 78 */ mr r31, r3
/* 8016825C 00163EBC 40 82 00 0C */ bne lbl_80168268
/* 80168260 00163EC0 38 60 00 00 */ li r3, 0
/* 80168264 00163EC4 48 00 00 34 */ b lbl_80168298
lbl_80168268:
/* 80168268 00163EC8 4B FF EA 81 */ bl func_80166CE8
/* 8016826C 00163ECC 2C 03 00 00 */ cmpwi r3, 0
/* 80168270 00163ED0 7C 64 1B 78 */ mr r4, r3
/* 80168274 00163ED4 40 82 00 0C */ bne lbl_80168280
/* 80168278 00163ED8 38 60 00 00 */ li r3, 0
/* 8016827C 00163EDC 48 00 00 1C */ b lbl_80168298
lbl_80168280:
/* 80168280 00163EE0 7F C3 F3 78 */ mr r3, r30
/* 80168284 00163EE4 38 A0 00 80 */ li r5, 0x80
/* 80168288 00163EE8 4B E9 BD 79 */ bl memcpy
/* 8016828C 00163EEC 7F E3 FB 78 */ mr r3, r31
/* 80168290 00163EF0 4B FF EA 05 */ bl func_80166C94
/* 80168294 00163EF4 7F C3 F3 78 */ mr r3, r30
lbl_80168298:
/* 80168298 00163EF8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8016829C 00163EFC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 801682A0 00163F00 83 C1 00 08 */ lwz r30, 8(r1)
/* 801682A4 00163F04 7C 08 03 A6 */ mtlr r0
/* 801682A8 00163F08 38 21 00 10 */ addi r1, r1, 0x10
/* 801682AC 00163F0C 4E 80 00 20 */ blr
.global func_801682B0
func_801682B0:
/* 801682B0 00163F10 38 A0 00 01 */ li r5, 1
/* 801682B4 00163F14 38 6D 9E 30 */ addi r3, r13, lbl_8063F0F0-_SDA_BASE_
/* 801682B8 00163F18 38 80 00 04 */ li r4, 4
/* 801682BC 00163F1C 38 00 00 00 */ li r0, 0
/* 801682C0 00163F20 98 AD 9E 30 */ stb r5, lbl_8063F0F0-_SDA_BASE_(r13)
/* 801682C4 00163F24 B0 83 00 02 */ sth r4, 2(r3)
/* 801682C8 00163F28 98 03 00 04 */ stb r0, 4(r3)
/* 801682CC 00163F2C 4E 80 00 20 */ blr

View File

@ -257,20 +257,3 @@ __sinit_$3snd_StrmSound_cpp:
/* 8037F8FC 0037B55C 38 0D B1 F0 */ addi r0, r13, lbl_806404B0-_SDA_BASE_
/* 8037F900 0037B560 90 0D B2 88 */ stw r0, lbl_80640548-_SDA_BASE_(r13)
/* 8037F904 0037B564 4E 80 00 20 */ blr
lbl_8037F908:
/* 8037F908 0037B568 80 83 00 00 */ lwz r4, 0(r3)
/* 8037F90C 0037B56C 2C 04 00 00 */ cmpwi r4, 0
/* 8037F910 0037B570 41 82 00 18 */ beq lbl_8037F928
/* 8037F914 0037B574 80 04 09 38 */ lwz r0, 0x938(r4)
/* 8037F918 0037B578 7C 00 18 40 */ cmplw r0, r3
/* 8037F91C 0037B57C 40 82 00 0C */ bne lbl_8037F928
/* 8037F920 0037B580 38 00 00 00 */ li r0, 0
/* 8037F924 0037B584 90 04 09 38 */ stw r0, 0x938(r4)
lbl_8037F928:
/* 8037F928 0037B588 80 03 00 00 */ lwz r0, 0(r3)
/* 8037F92C 0037B58C 2C 00 00 00 */ cmpwi r0, 0
/* 8037F930 0037B590 4D 82 00 20 */ beqlr
/* 8037F934 0037B594 38 00 00 00 */ li r0, 0
/* 8037F938 0037B598 90 03 00 00 */ stw r0, 0(r3)
/* 8037F93C 0037B59C 4E 80 00 20 */ blr

View File

@ -2,6 +2,24 @@
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global lbl_8037F908
lbl_8037F908:
/* 8037F908 0037B568 80 83 00 00 */ lwz r4, 0(r3)
/* 8037F90C 0037B56C 2C 04 00 00 */ cmpwi r4, 0
/* 8037F910 0037B570 41 82 00 18 */ beq lbl_8037F928
/* 8037F914 0037B574 80 04 09 38 */ lwz r0, 0x938(r4)
/* 8037F918 0037B578 7C 00 18 40 */ cmplw r0, r3
/* 8037F91C 0037B57C 40 82 00 0C */ bne lbl_8037F928
/* 8037F920 0037B580 38 00 00 00 */ li r0, 0
/* 8037F924 0037B584 90 04 09 38 */ stw r0, 0x938(r4)
lbl_8037F928:
/* 8037F928 0037B588 80 03 00 00 */ lwz r0, 0(r3)
/* 8037F92C 0037B58C 2C 00 00 00 */ cmpwi r0, 0
/* 8037F930 0037B590 4D 82 00 20 */ beqlr
/* 8037F934 0037B594 38 00 00 00 */ li r0, 0
/* 8037F938 0037B598 90 03 00 00 */ stw r0, 0(r3)
/* 8037F93C 0037B59C 4E 80 00 20 */ blr
.global __dt__Q44nw4r3snd6detail4TaskFv
__dt__Q44nw4r3snd6detail4TaskFv:
/* 8037F940 0037B5A0 94 21 FF F0 */ stwu r1, -0x10(r1)

89494
asm/text_3.s

File diff suppressed because it is too large Load Diff

89215
asm/text_4.s

File diff suppressed because it is too large Load Diff

View File

@ -71,7 +71,41 @@ TEXT_O_FILES := \
$(BUILD_DIR)/asm/code_800AA038.o \
$(BUILD_DIR)/asm/code_800AA470.o \
$(BUILD_DIR)/asm/code_800B9E10.o \
$(BUILD_DIR)/asm/text_3.o \
$(BUILD_DIR)/asm/code_800C5968.o \
$(BUILD_DIR)/asm/code_800D7C90.o \
$(BUILD_DIR)/asm/code_800E4234.o \
$(BUILD_DIR)/asm/code_800E96C4.o \
$(BUILD_DIR)/asm/code_800F8AC4.o \
$(BUILD_DIR)/asm/code_80104354.o \
$(BUILD_DIR)/asm/code_801166F8.o \
$(BUILD_DIR)/asm/code_8011B19C.o \
$(BUILD_DIR)/asm/code_8011C954.o \
$(BUILD_DIR)/asm/code_8011C974.o \
$(BUILD_DIR)/asm/code_8011E1FC.o \
$(BUILD_DIR)/asm/code_8012F0D8.o \
$(BUILD_DIR)/asm/code_80131CF0.o \
$(BUILD_DIR)/asm/code_8013A930.o \
$(BUILD_DIR)/asm/code_8013F044.o \
$(BUILD_DIR)/asm/code_8014FEA8.o \
$(BUILD_DIR)/asm/code_80151474.o \
$(BUILD_DIR)/asm/code_80155B50.o \
$(BUILD_DIR)/asm/code_80157854.o \
$(BUILD_DIR)/asm/code_801581B8.o \
$(BUILD_DIR)/asm/code_80158E50.o \
$(BUILD_DIR)/asm/code_8015D390.o \
$(BUILD_DIR)/asm/code_80162784.o \
$(BUILD_DIR)/asm/code_80162B70.o \
$(BUILD_DIR)/asm/code_8016340C.o \
$(BUILD_DIR)/asm/code_80163674.o \
$(BUILD_DIR)/asm/code_80164CE8.o \
$(BUILD_DIR)/asm/code_80164E3C.o \
$(BUILD_DIR)/asm/code_80164FA0.o \
$(BUILD_DIR)/asm/code_80165534.o \
$(BUILD_DIR)/asm/code_80166D6C.o \
$(BUILD_DIR)/asm/code_80167298.o \
$(BUILD_DIR)/asm/code_80167820.o \
$(BUILD_DIR)/asm/code_80167994.o \
$(BUILD_DIR)/asm/code_801679F8.o \
$(BUILD_DIR)/asm/text_4.o \
$(BUILD_DIR)/asm/text_5.o \
$(BUILD_DIR)/asm/Runtime/__mem.o \