.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global func_80228970 func_80228970: /* 80228970 002245D0 54 64 00 1E */ rlwinm r4, r3, 0, 0, 0xf /* 80228974 002245D4 38 60 00 02 */ li r3, 2 /* 80228978 002245D8 3C 04 FA 6A */ addis r0, r4, 0xfa6a /* 8022897C 002245DC 28 00 00 00 */ cmplwi r0, 0 /* 80228980 002245E0 4C 82 00 20 */ bnelr /* 80228984 002245E4 38 60 00 01 */ li r3, 1 /* 80228988 002245E8 4E 80 00 20 */ blr .global func_8022898C func_8022898C: /* 8022898C 002245EC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80228990 002245F0 7C 08 02 A6 */ mflr r0 /* 80228994 002245F4 90 01 00 44 */ stw r0, 0x44(r1) /* 80228998 002245F8 39 61 00 40 */ addi r11, r1, 0x40 /* 8022899C 002245FC 4B F9 E7 89 */ bl _savegpr_26 /* 802289A0 00224600 7C 7A 1B 78 */ mr r26, r3 /* 802289A4 00224604 7C 9B 23 78 */ mr r27, r4 /* 802289A8 00224608 7C BC 2B 78 */ mr r28, r5 /* 802289AC 0022460C 7C DD 33 78 */ mr r29, r6 /* 802289B0 00224610 7C FE 3B 78 */ mr r30, r7 /* 802289B4 00224614 4B FF FF BD */ bl func_80228970 /* 802289B8 00224618 2C 03 00 01 */ cmpwi r3, 1 /* 802289BC 0022461C 40 82 00 10 */ bne lbl_802289CC /* 802289C0 00224620 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 802289C4 00224624 83 E3 00 20 */ lwz r31, 0x20(r3) /* 802289C8 00224628 48 00 00 10 */ b lbl_802289D8 lbl_802289CC: /* 802289CC 0022462C 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 802289D0 00224630 4B FF DF 41 */ bl func_80226910 /* 802289D4 00224634 7C 7F 1B 78 */ mr r31, r3 lbl_802289D8: /* 802289D8 00224638 2C 1F 00 00 */ cmpwi r31, 0 /* 802289DC 0022463C 40 82 00 0C */ bne lbl_802289E8 /* 802289E0 00224640 38 60 00 00 */ li r3, 0 /* 802289E4 00224644 48 00 00 58 */ b lbl_80228A3C lbl_802289E8: /* 802289E8 00224648 38 00 00 01 */ li r0, 1 /* 802289EC 0022464C 93 61 00 0C */ stw r27, 0xc(r1) /* 802289F0 00224650 7F E3 FB 78 */ mr r3, r31 /* 802289F4 00224654 7F 44 D3 78 */ mr r4, r26 /* 802289F8 00224658 B0 01 00 08 */ sth r0, 8(r1) /* 802289FC 0022465C 38 A1 00 08 */ addi r5, r1, 8 /* 80228A00 00224660 38 C0 00 04 */ li r6, 4 /* 80228A04 00224664 38 E0 00 00 */ li r7, 0 /* 80228A08 00224668 B0 01 00 10 */ sth r0, 0x10(r1) /* 80228A0C 0022466C 93 81 00 14 */ stw r28, 0x14(r1) /* 80228A10 00224670 B0 01 00 18 */ sth r0, 0x18(r1) /* 80228A14 00224674 93 A1 00 1C */ stw r29, 0x1c(r1) /* 80228A18 00224678 B0 01 00 20 */ sth r0, 0x20(r1) /* 80228A1C 0022467C 93 C1 00 24 */ stw r30, 0x24(r1) /* 80228A20 00224680 48 00 1C 85 */ bl func_8022A6A4 /* 80228A24 00224684 7C 7E 1B 78 */ mr r30, r3 /* 80228A28 00224688 7F E3 FB 78 */ mr r3, r31 /* 80228A2C 0022468C 7F C4 F3 78 */ mr r4, r30 /* 80228A30 00224690 48 00 45 89 */ bl func_8022CFB8 /* 80228A34 00224694 90 6D A3 98 */ stw r3, lbl_8063F658-_SDA_BASE_(r13) /* 80228A38 00224698 7F C3 F3 78 */ mr r3, r30 lbl_80228A3C: /* 80228A3C 0022469C 39 61 00 40 */ addi r11, r1, 0x40 /* 80228A40 002246A0 4B F9 E7 31 */ bl _restgpr_26 /* 80228A44 002246A4 80 01 00 44 */ lwz r0, 0x44(r1) /* 80228A48 002246A8 7C 08 03 A6 */ mtlr r0 /* 80228A4C 002246AC 38 21 00 40 */ addi r1, r1, 0x40 /* 80228A50 002246B0 4E 80 00 20 */ blr .global func_80228A54 func_80228A54: /* 80228A54 002246B4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80228A58 002246B8 7C 08 02 A6 */ mflr r0 /* 80228A5C 002246BC 90 01 00 24 */ stw r0, 0x24(r1) /* 80228A60 002246C0 39 61 00 20 */ addi r11, r1, 0x20 /* 80228A64 002246C4 4B F9 E6 C5 */ bl _savegpr_27 /* 80228A68 002246C8 7C 7B 1B 78 */ mr r27, r3 /* 80228A6C 002246CC 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13) /* 80228A70 002246D0 7C 9C 23 78 */ mr r28, r4 /* 80228A74 002246D4 7C BD 2B 78 */ mr r29, r5 /* 80228A78 002246D8 7C DE 33 78 */ mr r30, r6 /* 80228A7C 002246DC 7C FF 3B 78 */ mr r31, r7 /* 80228A80 002246E0 4B FF DE 91 */ bl func_80226910 /* 80228A84 002246E4 2C 03 00 00 */ cmpwi r3, 0 /* 80228A88 002246E8 40 82 00 0C */ bne lbl_80228A94 /* 80228A8C 002246EC 38 60 00 00 */ li r3, 0 /* 80228A90 002246F0 48 00 00 44 */ b lbl_80228AD4 lbl_80228A94: /* 80228A94 002246F4 80 03 09 40 */ lwz r0, 0x940(r3) /* 80228A98 002246F8 2C 00 00 00 */ cmpwi r0, 0 /* 80228A9C 002246FC 40 82 00 0C */ bne lbl_80228AA8 /* 80228AA0 00224700 38 60 00 00 */ li r3, 0 /* 80228AA4 00224704 48 00 00 30 */ b lbl_80228AD4 lbl_80228AA8: /* 80228AA8 00224708 7F 64 DB 78 */ mr r4, r27 /* 80228AAC 0022470C 48 00 45 81 */ bl func_8022D02C /* 80228AB0 00224710 2C 03 00 00 */ cmpwi r3, 0 /* 80228AB4 00224714 40 82 00 0C */ bne lbl_80228AC0 /* 80228AB8 00224718 38 60 00 00 */ li r3, 0 /* 80228ABC 0022471C 48 00 00 18 */ b lbl_80228AD4 lbl_80228AC0: /* 80228AC0 00224720 7F 84 E3 78 */ mr r4, r28 /* 80228AC4 00224724 7F A5 EB 78 */ mr r5, r29 /* 80228AC8 00224728 7F C6 F3 78 */ mr r6, r30 /* 80228ACC 0022472C 7F E7 FB 78 */ mr r7, r31 /* 80228AD0 00224730 4B FF FE BD */ bl func_8022898C lbl_80228AD4: /* 80228AD4 00224734 39 61 00 20 */ addi r11, r1, 0x20 /* 80228AD8 00224738 4B F9 E6 9D */ bl _restgpr_27 /* 80228ADC 0022473C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80228AE0 00224740 7C 08 03 A6 */ mtlr r0 /* 80228AE4 00224744 38 21 00 20 */ addi r1, r1, 0x20 /* 80228AE8 00224748 4E 80 00 20 */ blr .global func_80228AEC func_80228AEC: /* 80228AEC 0022474C 38 A0 00 01 */ li r5, 1 /* 80228AF0 00224750 38 6D A3 90 */ addi r3, r13, lbl_8063F650-_SDA_BASE_ /* 80228AF4 00224754 38 80 00 04 */ li r4, 4 /* 80228AF8 00224758 38 00 00 00 */ li r0, 0 /* 80228AFC 0022475C 98 AD A3 90 */ stb r5, lbl_8063F650-_SDA_BASE_(r13) /* 80228B00 00224760 B0 83 00 02 */ sth r4, 2(r3) /* 80228B04 00224764 98 03 00 04 */ stb r0, 4(r3) /* 80228B08 00224768 4E 80 00 20 */ blr