.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global func_8000AAC4 func_8000AAC4: /* 8000AAC4 00006724 90 83 00 04 */ stw r4, 4(r3) /* 8000AAC8 00006728 4E 80 00 20 */ blr .global func_8000AACC func_8000AACC: /* 8000AACC 0000672C 80 63 00 04 */ lwz r3, 4(r3) /* 8000AAD0 00006730 88 63 00 05 */ lbz r3, 5(r3) /* 8000AAD4 00006734 4E 80 00 20 */ blr .global func_8000AAD8 func_8000AAD8: /* 8000AAD8 00006738 80 63 00 04 */ lwz r3, 4(r3) /* 8000AADC 0000673C 80 63 00 08 */ lwz r3, 8(r3) /* 8000AAE0 00006740 4E 80 00 20 */ blr .global func_8000AAE4 func_8000AAE4: /* 8000AAE4 00006744 80 63 00 04 */ lwz r3, 4(r3) /* 8000AAE8 00006748 80 63 00 08 */ lwz r3, 8(r3) /* 8000AAEC 0000674C 4E 80 00 20 */ blr .global func_8000AAF0 func_8000AAF0: /* 8000AAF0 00006750 80 63 00 04 */ lwz r3, 4(r3) /* 8000AAF4 00006754 A0 63 00 06 */ lhz r3, 6(r3) /* 8000AAF8 00006758 4E 80 00 20 */ blr .global func_8000AAFC func_8000AAFC: /* 8000AAFC 0000675C 80 63 00 04 */ lwz r3, 4(r3) /* 8000AB00 00006760 80 03 00 10 */ lwz r0, 0x10(r3) /* 8000AB04 00006764 54 03 0F FE */ srwi r3, r0, 0x1f /* 8000AB08 00006768 4E 80 00 20 */ blr .global DrawableCharacter_GetAnimController DrawableCharacter_GetAnimController: /* 8000AB0C 0000676C 80 63 00 04 */ lwz r3, 4(r3) /* 8000AB10 00006770 80 63 00 0C */ lwz r3, 0xc(r3) /* 8000AB14 00006774 4E 80 00 20 */ blr .global func_8000AB18 func_8000AB18: /* 8000AB18 00006778 80 63 00 04 */ lwz r3, 4(r3) /* 8000AB1C 0000677C 88 63 00 02 */ lbz r3, 2(r3) /* 8000AB20 00006780 4E 80 00 20 */ blr .global func_8000AB24 func_8000AB24: /* 8000AB24 00006784 80 63 00 04 */ lwz r3, 4(r3) /* 8000AB28 00006788 A0 63 00 00 */ lhz r3, 0(r3) /* 8000AB2C 0000678C 4E 80 00 20 */ blr .global func_8000AB30 func_8000AB30: /* 8000AB30 00006790 80 63 00 04 */ lwz r3, 4(r3) /* 8000AB34 00006794 88 63 00 03 */ lbz r3, 3(r3) /* 8000AB38 00006798 4E 80 00 20 */ blr .global func_8000AB3C func_8000AB3C: /* 8000AB3C 0000679C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8000AB40 000067A0 7C 08 02 A6 */ mflr r0 /* 8000AB44 000067A4 90 01 00 14 */ stw r0, 0x14(r1) /* 8000AB48 000067A8 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 8000AB4C 000067AC 48 21 BC F1 */ bl func_8022683C /* 8000AB50 000067B0 7C 64 1B 78 */ mr r4, r3 /* 8000AB54 000067B4 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 8000AB58 000067B8 48 21 CA A5 */ bl func_802275FC /* 8000AB5C 000067BC 80 01 00 14 */ lwz r0, 0x14(r1) /* 8000AB60 000067C0 7C 08 03 A6 */ mtlr r0 /* 8000AB64 000067C4 38 21 00 10 */ addi r1, r1, 0x10 /* 8000AB68 000067C8 4E 80 00 20 */ blr .global func_8000AB6C func_8000AB6C: /* 8000AB6C 000067CC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8000AB70 000067D0 7C 08 02 A6 */ mflr r0 /* 8000AB74 000067D4 3C A0 80 40 */ lis r5, lbl_80405F38@ha /* 8000AB78 000067D8 3C 80 80 45 */ lis r4, lbl_8044E5B0@ha /* 8000AB7C 000067DC 90 01 00 24 */ stw r0, 0x24(r1) /* 8000AB80 000067E0 38 A5 5F 38 */ addi r5, r5, lbl_80405F38@l /* 8000AB84 000067E4 38 84 E5 B0 */ addi r4, r4, lbl_8044E5B0@l /* 8000AB88 000067E8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8000AB8C 000067EC 93 C1 00 18 */ stw r30, 0x18(r1) /* 8000AB90 000067F0 3F C0 80 45 */ lis r30, lbl_8044E5E0@ha /* 8000AB94 000067F4 3B DE E5 E0 */ addi r30, r30, lbl_8044E5E0@l /* 8000AB98 000067F8 93 A1 00 14 */ stw r29, 0x14(r1) /* 8000AB9C 000067FC 93 81 00 10 */ stw r28, 0x10(r1) /* 8000ABA0 00006800 7C 7C 1B 78 */ mr r28, r3 /* 8000ABA4 00006804 90 A3 00 00 */ stw r5, 0(r3) /* 8000ABA8 00006808 90 83 00 04 */ stw r4, 4(r3) /* 8000ABAC 0000680C 83 E4 00 00 */ lwz r31, 0(r4) /* 8000ABB0 00006810 57 E3 18 38 */ slwi r3, r31, 3 /* 8000ABB4 00006814 38 63 00 10 */ addi r3, r3, 0x10 /* 8000ABB8 00006818 48 1C FE BD */ bl func_801DAA74 /* 8000ABBC 0000681C 3C 80 80 01 */ lis r4, lbl_8000AC34@ha /* 8000ABC0 00006820 7F E7 FB 78 */ mr r7, r31 /* 8000ABC4 00006824 38 84 AC 34 */ addi r4, r4, lbl_8000AC34@l /* 8000ABC8 00006828 38 A0 00 00 */ li r5, 0 /* 8000ABCC 0000682C 38 C0 00 08 */ li r6, 8 /* 8000ABD0 00006830 48 1B C0 D9 */ bl __construct_new_array /* 8000ABD4 00006834 90 7C 00 08 */ stw r3, 8(r28) /* 8000ABD8 00006838 3B A0 00 00 */ li r29, 0 /* 8000ABDC 0000683C 3B E0 00 00 */ li r31, 0 /* 8000ABE0 00006840 48 00 00 20 */ b lbl_8000AC00 lbl_8000ABE4: /* 8000ABE4 00006844 80 1C 00 08 */ lwz r0, 8(r28) /* 8000ABE8 00006848 7F C4 F3 78 */ mr r4, r30 /* 8000ABEC 0000684C 7C 60 FA 14 */ add r3, r0, r31 /* 8000ABF0 00006850 4B FF FE D5 */ bl func_8000AAC4 /* 8000ABF4 00006854 3B FF 00 08 */ addi r31, r31, 8 /* 8000ABF8 00006858 3B BD 00 01 */ addi r29, r29, 1 /* 8000ABFC 0000685C 3B DE 00 14 */ addi r30, r30, 0x14 lbl_8000AC00: /* 8000AC00 00006860 80 7C 00 04 */ lwz r3, 4(r28) /* 8000AC04 00006864 80 03 00 00 */ lwz r0, 0(r3) /* 8000AC08 00006868 7C 1D 00 40 */ cmplw r29, r0 /* 8000AC0C 0000686C 41 80 FF D8 */ blt lbl_8000ABE4 /* 8000AC10 00006870 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 8000AC14 00006874 7F 83 E3 78 */ mr r3, r28 /* 8000AC18 00006878 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8000AC1C 0000687C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8000AC20 00006880 83 81 00 10 */ lwz r28, 0x10(r1) /* 8000AC24 00006884 80 01 00 24 */ lwz r0, 0x24(r1) /* 8000AC28 00006888 7C 08 03 A6 */ mtlr r0 /* 8000AC2C 0000688C 38 21 00 20 */ addi r1, r1, 0x20 /* 8000AC30 00006890 4E 80 00 20 */ blr lbl_8000AC34: /* 8000AC34 00006894 3C 80 80 40 */ lis r4, lbl_80405F60@ha /* 8000AC38 00006898 38 84 5F 60 */ addi r4, r4, lbl_80405F60@l /* 8000AC3C 0000689C 90 83 00 00 */ stw r4, 0(r3) /* 8000AC40 000068A0 4E 80 00 20 */ blr .global func_8000AC44 func_8000AC44: /* 8000AC44 000068A4 80 A3 00 04 */ lwz r5, 4(r3) /* 8000AC48 000068A8 38 C0 00 00 */ li r6, 0 /* 8000AC4C 000068AC 80 E3 00 08 */ lwz r7, 8(r3) /* 8000AC50 000068B0 80 05 00 00 */ lwz r0, 0(r5) /* 8000AC54 000068B4 7C 09 03 A6 */ mtctr r0 /* 8000AC58 000068B8 28 00 00 00 */ cmplwi r0, 0 /* 8000AC5C 000068BC 40 81 00 30 */ ble lbl_8000AC8C lbl_8000AC60: /* 8000AC60 000068C0 80 03 00 08 */ lwz r0, 8(r3) /* 8000AC64 000068C4 7C A0 32 14 */ add r5, r0, r6 /* 8000AC68 000068C8 80 A5 00 04 */ lwz r5, 4(r5) /* 8000AC6C 000068CC A0 05 00 06 */ lhz r0, 6(r5) /* 8000AC70 000068D0 7C 04 00 40 */ cmplw r4, r0 /* 8000AC74 000068D4 40 82 00 0C */ bne lbl_8000AC80 /* 8000AC78 000068D8 7C E3 3B 78 */ mr r3, r7 /* 8000AC7C 000068DC 4E 80 00 20 */ blr lbl_8000AC80: /* 8000AC80 000068E0 38 C6 00 08 */ addi r6, r6, 8 /* 8000AC84 000068E4 38 E7 00 08 */ addi r7, r7, 8 /* 8000AC88 000068E8 42 00 FF D8 */ bdnz lbl_8000AC60 lbl_8000AC8C: /* 8000AC8C 000068EC 38 60 00 00 */ li r3, 0 /* 8000AC90 000068F0 4E 80 00 20 */ blr .global func_8000AC94 func_8000AC94: /* 8000AC94 000068F4 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8000AC98 000068F8 7C 08 02 A6 */ mflr r0 /* 8000AC9C 000068FC 38 60 00 0C */ li r3, 0xc /* 8000ACA0 00006900 90 01 00 14 */ stw r0, 0x14(r1) /* 8000ACA4 00006904 48 1C FD 8D */ bl func_801DAA30 /* 8000ACA8 00006908 2C 03 00 00 */ cmpwi r3, 0 /* 8000ACAC 0000690C 41 82 00 08 */ beq lbl_8000ACB4 /* 8000ACB0 00006910 4B FF FE BD */ bl func_8000AB6C lbl_8000ACB4: /* 8000ACB4 00006914 90 6D 96 88 */ stw r3, lbl_8063E948-_SDA_BASE_(r13) /* 8000ACB8 00006918 7C 65 1B 78 */ mr r5, r3 /* 8000ACBC 0000691C 38 60 00 04 */ li r3, 4 /* 8000ACC0 00006920 38 80 00 20 */ li r4, 0x20 /* 8000ACC4 00006924 48 21 C9 E1 */ bl func_802276A4 /* 8000ACC8 00006928 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 8000ACCC 0000692C 38 80 00 01 */ li r4, 1 /* 8000ACD0 00006930 48 21 B9 0D */ bl func_802265DC /* 8000ACD4 00006934 4B FF FC E5 */ bl func_8000A9B8 /* 8000ACD8 00006938 80 01 00 14 */ lwz r0, 0x14(r1) /* 8000ACDC 0000693C 7C 08 03 A6 */ mtlr r0 /* 8000ACE0 00006940 38 21 00 10 */ addi r1, r1, 0x10 /* 8000ACE4 00006944 4E 80 00 20 */ blr lbl_8000ACE8: /* 8000ACE8 00006948 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8000ACEC 0000694C 7C 08 02 A6 */ mflr r0 /* 8000ACF0 00006950 90 01 00 14 */ stw r0, 0x14(r1) lbl_8000ACF4: /* 8000ACF4 00006954 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8000ACF8 00006958 48 21 98 91 */ bl func_80224588 /* 8000ACFC 0000695C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8000AD00 00006960 48 21 98 89 */ bl func_80224588 /* 8000AD04 00006964 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8000AD08 00006968 48 21 98 81 */ bl func_80224588 /* 8000AD0C 0000696C 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8000AD10 00006970 48 21 98 79 */ bl func_80224588 /* 8000AD14 00006974 4B FF FF E0 */ b lbl_8000ACF4 lbl_8000AD18: /* 8000AD18 00006978 3C A0 80 01 */ lis r5, lbl_8000ACE8@ha /* 8000AD1C 0000697C 7C 64 1B 78 */ mr r4, r3 /* 8000AD20 00006980 38 65 AC E8 */ addi r3, r5, lbl_8000ACE8@l /* 8000AD24 00006984 38 C0 00 09 */ li r6, 9 /* 8000AD28 00006988 38 A0 20 00 */ li r5, 0x2000 /* 8000AD2C 0000698C 38 E0 00 01 */ li r7, 1 /* 8000AD30 00006990 48 21 C8 44 */ b func_80227574 lbl_8000AD34: /* 8000AD34 00006994 88 0D 96 3C */ lbz r0, lbl_8063E8FC-_SDA_BASE_(r13) /* 8000AD38 00006998 2C 00 00 00 */ cmpwi r0, 0 /* 8000AD3C 0000699C 4D 82 00 20 */ beqlr /* 8000AD40 000069A0 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 8000AD44 000069A4 38 80 07 D0 */ li r4, 0x7d0 /* 8000AD48 000069A8 48 21 BA 60 */ b func_802267A8 /* 8000AD4C 000069AC 4E 80 00 20 */ blr lbl_8000AD50: /* 8000AD50 000069B0 80 6D A3 40 */ lwz r3, lbl_8063F600-_SDA_BASE_(r13) /* 8000AD54 000069B4 38 80 00 00 */ li r4, 0 /* 8000AD58 000069B8 48 21 98 2C */ b func_80224584 .global func_8000AD5C func_8000AD5C: /* 8000AD5C 000069BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8000AD60 000069C0 7C 08 02 A6 */ mflr r0 /* 8000AD64 000069C4 3C A0 80 01 */ lis r5, lbl_8000AD18@ha /* 8000AD68 000069C8 3C C0 80 01 */ lis r6, lbl_8000AD34@ha /* 8000AD6C 000069CC 90 01 00 14 */ stw r0, 0x14(r1) /* 8000AD70 000069D0 3C E0 80 01 */ lis r7, lbl_8000AD50@ha /* 8000AD74 000069D4 38 A5 AD 18 */ addi r5, r5, lbl_8000AD18@l /* 8000AD78 000069D8 38 C6 AD 34 */ addi r6, r6, lbl_8000AD34@l /* 8000AD7C 000069DC 93 E1 00 0C */ stw r31, 0xc(r1) /* 8000AD80 000069E0 3F E0 80 47 */ lis r31, lbl_80474F0C@ha /* 8000AD84 000069E4 38 7F 4F 0C */ addi r3, r31, lbl_80474F0C@l /* 8000AD88 000069E8 38 E7 AD 50 */ addi r7, r7, lbl_8000AD50@l /* 8000AD8C 000069EC 38 80 00 01 */ li r4, 1 /* 8000AD90 000069F0 48 21 B1 05 */ bl func_80225E94 /* 8000AD94 000069F4 3C 80 80 22 */ lis r4, func_80225EE0@ha /* 8000AD98 000069F8 3C A0 80 47 */ lis r5, lbl_80474F00@ha /* 8000AD9C 000069FC 38 7F 4F 0C */ addi r3, r31, 0x4f0c /* 8000ADA0 00006A00 38 84 5E E0 */ addi r4, r4, func_80225EE0@l /* 8000ADA4 00006A04 38 A5 4F 00 */ addi r5, r5, lbl_80474F00@l /* 8000ADA8 00006A08 48 1B BE A1 */ bl __register_global_object_tmp /* 8000ADAC 00006A0C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8000ADB0 00006A10 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8000ADB4 00006A14 7C 08 03 A6 */ mtlr r0 /* 8000ADB8 00006A18 38 21 00 10 */ addi r1, r1, 0x10 /* 8000ADBC 00006A1C 4E 80 00 20 */ blr