.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global SCInit SCInit: /* 802EA94C 002E65AC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802EA950 002E65B0 7C 08 02 A6 */ mflr r0 /* 802EA954 002E65B4 90 01 00 14 */ stw r0, 0x14(r1) /* 802EA958 002E65B8 93 E1 00 0C */ stw r31, 0xc(r1) /* 802EA95C 002E65BC 4B F8 3E 01 */ bl OSDisableInterrupts /* 802EA960 002E65C0 88 0D AF 26 */ lbz r0, lbl_806401E6-_SDA_BASE_(r13) /* 802EA964 002E65C4 2C 00 00 00 */ cmpwi r0, 0 /* 802EA968 002E65C8 41 82 00 0C */ beq lbl_802EA974 /* 802EA96C 002E65CC 4B F8 3E 19 */ bl OSRestoreInterrupts /* 802EA970 002E65D0 48 00 00 68 */ b lbl_802EA9D8 lbl_802EA974: /* 802EA974 002E65D4 3B E0 00 01 */ li r31, 1 /* 802EA978 002E65D8 9B ED AF 26 */ stb r31, lbl_806401E6-_SDA_BASE_(r13) /* 802EA97C 002E65DC 9B ED AF 10 */ stb r31, lbl_806401D0-_SDA_BASE_(r13) /* 802EA980 002E65E0 4B F8 3E 05 */ bl OSRestoreInterrupts /* 802EA984 002E65E4 80 6D 8A C0 */ lwz r3, lbl_8063DD80-_SDA_BASE_(r13) /* 802EA988 002E65E8 4B F7 EC C9 */ bl OSRegisterVersion /* 802EA98C 002E65EC 3C 60 80 57 */ lis r3, lbl_80570EC0@ha /* 802EA990 002E65F0 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l /* 802EA994 002E65F4 4B F8 69 55 */ bl OSInitThreadQueue /* 802EA998 002E65F8 4B F7 DB 95 */ bl OSGetConsoleType /* 802EA99C 002E65FC 54 60 00 C7 */ rlwinm. r0, r3, 0, 3, 3 /* 802EA9A0 002E6600 41 82 00 08 */ beq lbl_802EA9A8 /* 802EA9A4 002E6604 9B ED AF 24 */ stb r31, lbl_806401E4-_SDA_BASE_(r13) lbl_802EA9A8: /* 802EA9A8 002E6608 4B FF EC 9D */ bl NANDInit /* 802EA9AC 002E660C 2C 03 00 00 */ cmpwi r3, 0 /* 802EA9B0 002E6610 40 82 00 20 */ bne lbl_802EA9D0 /* 802EA9B4 002E6614 3C 60 80 57 */ lis r3, lbl_80571060@ha /* 802EA9B8 002E6618 38 80 40 00 */ li r4, 0x4000 /* 802EA9BC 002E661C 38 63 10 60 */ addi r3, r3, lbl_80571060@l /* 802EA9C0 002E6620 38 A0 00 00 */ li r5, 0 /* 802EA9C4 002E6624 48 00 01 45 */ bl SCReloadConfFileAsync /* 802EA9C8 002E6628 2C 03 00 00 */ cmpwi r3, 0 /* 802EA9CC 002E662C 41 82 00 0C */ beq lbl_802EA9D8 lbl_802EA9D0: /* 802EA9D0 002E6630 38 00 00 02 */ li r0, 2 /* 802EA9D4 002E6634 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13) lbl_802EA9D8: /* 802EA9D8 002E6638 80 01 00 14 */ lwz r0, 0x14(r1) /* 802EA9DC 002E663C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EA9E0 002E6640 7C 08 03 A6 */ mtlr r0 /* 802EA9E4 002E6644 38 21 00 10 */ addi r1, r1, 0x10 /* 802EA9E8 002E6648 4E 80 00 20 */ blr .global SCCheckStatus SCCheckStatus: /* 802EA9EC 002E664C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802EA9F0 002E6650 7C 08 02 A6 */ mflr r0 /* 802EA9F4 002E6654 90 01 00 24 */ stw r0, 0x24(r1) /* 802EA9F8 002E6658 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802EA9FC 002E665C 93 C1 00 18 */ stw r30, 0x18(r1) /* 802EAA00 002E6660 93 A1 00 14 */ stw r29, 0x14(r1) /* 802EAA04 002E6664 4B F8 3D 59 */ bl OSDisableInterrupts /* 802EAA08 002E6668 8B AD AF 10 */ lbz r29, lbl_806401D0-_SDA_BASE_(r13) /* 802EAA0C 002E666C 28 1D 00 03 */ cmplwi r29, 3 /* 802EAA10 002E6670 40 82 00 D4 */ bne lbl_802EAAE4 /* 802EAA14 002E6674 38 00 00 01 */ li r0, 1 /* 802EAA18 002E6678 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13) /* 802EAA1C 002E667C 4B F8 3D 69 */ bl OSRestoreInterrupts /* 802EAA20 002E6680 3F E0 80 57 */ lis r31, lbl_80570EC0@ha /* 802EAA24 002E6684 3B FF 0E C0 */ addi r31, r31, lbl_80570EC0@l /* 802EAA28 002E6688 80 7F 01 68 */ lwz r3, 0x168(r31) /* 802EAA2C 002E668C 80 9F 01 78 */ lwz r4, 0x178(r31) /* 802EAA30 002E6690 48 00 05 71 */ bl ParseConfBuf /* 802EAA34 002E6694 2C 03 00 00 */ cmpwi r3, 0 /* 802EAA38 002E6698 40 82 00 40 */ bne lbl_802EAA78 /* 802EAA3C 002E669C 4B F8 3D 21 */ bl OSDisableInterrupts /* 802EAA40 002E66A0 3C A0 80 57 */ lis r5, lbl_80571060@ha /* 802EAA44 002E66A4 80 9F 01 68 */ lwz r4, 0x168(r31) /* 802EAA48 002E66A8 38 A5 10 60 */ addi r5, r5, lbl_80571060@l /* 802EAA4C 002E66AC 7C 7D 1B 78 */ mr r29, r3 /* 802EAA50 002E66B0 7C 05 20 40 */ cmplw r5, r4 /* 802EAA54 002E66B4 41 82 00 10 */ beq lbl_802EAA64 /* 802EAA58 002E66B8 7C A3 2B 78 */ mr r3, r5 /* 802EAA5C 002E66BC 38 A0 40 00 */ li r5, 0x4000 /* 802EAA60 002E66C0 4B D1 95 A1 */ bl memcpy lbl_802EAA64: /* 802EAA64 002E66C4 38 00 00 00 */ li r0, 0 /* 802EAA68 002E66C8 7F A3 EB 78 */ mr r3, r29 /* 802EAA6C 002E66CC 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) /* 802EAA70 002E66D0 4B F8 3D 15 */ bl OSRestoreInterrupts /* 802EAA74 002E66D4 48 00 00 64 */ b lbl_802EAAD8 lbl_802EAA78: /* 802EAA78 002E66D8 4B F8 3C E5 */ bl OSDisableInterrupts /* 802EAA7C 002E66DC 83 FF 01 68 */ lwz r31, 0x168(r31) /* 802EAA80 002E66E0 7C 7D 1B 78 */ mr r29, r3 /* 802EAA84 002E66E4 3B C0 40 00 */ li r30, 0x4000 /* 802EAA88 002E66E8 38 80 00 00 */ li r4, 0 /* 802EAA8C 002E66EC 7F E3 FB 78 */ mr r3, r31 /* 802EAA90 002E66F0 38 A0 40 00 */ li r5, 0x4000 /* 802EAA94 002E66F4 4B D1 96 71 */ bl memset /* 802EAA98 002E66F8 28 1E 00 0C */ cmplwi r30, 0xc /* 802EAA9C 002E66FC 40 81 00 2C */ ble lbl_802EAAC8 /* 802EAAA0 002E6700 7F E3 FB 78 */ mr r3, r31 /* 802EAAA4 002E6704 38 8D 8B B0 */ addi r4, r13, lbl_8063DE70-_SDA_BASE_ /* 802EAAA8 002E6708 38 A0 00 04 */ li r5, 4 /* 802EAAAC 002E670C 4B D1 95 55 */ bl memcpy /* 802EAAB0 002E6710 38 7F 3F FC */ addi r3, r31, 0x3ffc /* 802EAAB4 002E6714 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_ /* 802EAAB8 002E6718 38 A0 00 04 */ li r5, 4 /* 802EAABC 002E671C 4B D1 95 45 */ bl memcpy /* 802EAAC0 002E6720 38 00 00 08 */ li r0, 8 /* 802EAAC4 002E6724 B0 1F 00 06 */ sth r0, 6(r31) lbl_802EAAC8: /* 802EAAC8 002E6728 38 00 00 00 */ li r0, 0 /* 802EAACC 002E672C 7F A3 EB 78 */ mr r3, r29 /* 802EAAD0 002E6730 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) /* 802EAAD4 002E6734 4B F8 3C B1 */ bl OSRestoreInterrupts lbl_802EAAD8: /* 802EAAD8 002E6738 3B A0 00 00 */ li r29, 0 /* 802EAADC 002E673C 9B AD AF 10 */ stb r29, lbl_806401D0-_SDA_BASE_(r13) /* 802EAAE0 002E6740 48 00 00 08 */ b lbl_802EAAE8 lbl_802EAAE4: /* 802EAAE4 002E6744 4B F8 3C A1 */ bl OSRestoreInterrupts lbl_802EAAE8: /* 802EAAE8 002E6748 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EAAEC 002E674C 7F A3 EB 78 */ mr r3, r29 /* 802EAAF0 002E6750 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802EAAF4 002E6754 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802EAAF8 002E6758 80 01 00 24 */ lwz r0, 0x24(r1) /* 802EAAFC 002E675C 7C 08 03 A6 */ mtlr r0 /* 802EAB00 002E6760 38 21 00 20 */ addi r1, r1, 0x20 /* 802EAB04 002E6764 4E 80 00 20 */ blr .global SCReloadConfFileAsync SCReloadConfFileAsync: /* 802EAB08 002E6768 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802EAB0C 002E676C 7C 08 02 A6 */ mflr r0 /* 802EAB10 002E6770 28 04 40 00 */ cmplwi r4, 0x4000 /* 802EAB14 002E6774 90 01 00 24 */ stw r0, 0x24(r1) /* 802EAB18 002E6778 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802EAB1C 002E677C 93 C1 00 18 */ stw r30, 0x18(r1) /* 802EAB20 002E6780 93 A1 00 14 */ stw r29, 0x14(r1) /* 802EAB24 002E6784 7C 7D 1B 78 */ mr r29, r3 /* 802EAB28 002E6788 40 80 00 0C */ bge lbl_802EAB34 /* 802EAB2C 002E678C 38 60 FF 80 */ li r3, -128 /* 802EAB30 002E6790 48 00 00 D0 */ b lbl_802EAC00 lbl_802EAB34: /* 802EAB34 002E6794 3F C0 80 57 */ lis r30, lbl_80570EC0@ha /* 802EAB38 002E6798 3D 20 80 40 */ lis r9, lbl_803FE070@ha /* 802EAB3C 002E679C 3B DE 0E C0 */ addi r30, r30, lbl_80570EC0@l /* 802EAB40 002E67A0 3B E0 00 00 */ li r31, 0 /* 802EAB44 002E67A4 3D 00 80 40 */ lis r8, lbl_803FE088@ha /* 802EAB48 002E67A8 3C 80 80 00 */ lis r4, 0x80003800@ha /* 802EAB4C 002E67AC 38 E4 38 00 */ addi r7, r4, 0x80003800@l /* 802EAB50 002E67B0 39 29 E0 70 */ addi r9, r9, lbl_803FE070@l /* 802EAB54 002E67B4 39 40 00 01 */ li r10, 1 /* 802EAB58 002E67B8 39 08 E0 88 */ addi r8, r8, lbl_803FE088@l /* 802EAB5C 002E67BC 38 C0 40 00 */ li r6, 0x4000 /* 802EAB60 002E67C0 38 00 01 00 */ li r0, 0x100 /* 802EAB64 002E67C4 90 BE 01 58 */ stw r5, 0x158(r30) /* 802EAB68 002E67C8 38 80 00 00 */ li r4, 0 /* 802EAB6C 002E67CC 38 A0 40 00 */ li r5, 0x4000 /* 802EAB70 002E67D0 99 4D AF 10 */ stb r10, lbl_806401D0-_SDA_BASE_(r13) /* 802EAB74 002E67D4 93 FE 01 5C */ stw r31, 0x15c(r30) /* 802EAB78 002E67D8 9B FE 01 56 */ stb r31, 0x156(r30) /* 802EAB7C 002E67DC 93 FE 01 78 */ stw r31, 0x178(r30) /* 802EAB80 002E67E0 93 FE 01 7C */ stw r31, 0x17c(r30) /* 802EAB84 002E67E4 91 3E 01 60 */ stw r9, 0x160(r30) /* 802EAB88 002E67E8 91 1E 01 64 */ stw r8, 0x164(r30) /* 802EAB8C 002E67EC 90 7E 01 68 */ stw r3, 0x168(r30) /* 802EAB90 002E67F0 90 FE 01 6C */ stw r7, 0x16c(r30) /* 802EAB94 002E67F4 90 DE 01 70 */ stw r6, 0x170(r30) /* 802EAB98 002E67F8 90 1E 01 74 */ stw r0, 0x174(r30) /* 802EAB9C 002E67FC 4B D1 95 69 */ bl memset /* 802EABA0 002E6800 7F A3 EB 78 */ mr r3, r29 /* 802EABA4 002E6804 38 8D 8B B0 */ addi r4, r13, lbl_8063DE70-_SDA_BASE_ /* 802EABA8 002E6808 38 A0 00 04 */ li r5, 4 /* 802EABAC 002E680C 4B D1 94 55 */ bl memcpy /* 802EABB0 002E6810 38 7D 3F FC */ addi r3, r29, 0x3ffc /* 802EABB4 002E6814 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_ /* 802EABB8 002E6818 38 A0 00 04 */ li r5, 4 /* 802EABBC 002E681C 4B D1 94 45 */ bl memcpy /* 802EABC0 002E6820 38 00 00 08 */ li r0, 8 /* 802EABC4 002E6824 3C C0 80 2F */ lis r6, OpenCallbackFromReload@ha /* 802EABC8 002E6828 B0 1D 00 06 */ sth r0, 6(r29) /* 802EABCC 002E682C 38 9E 00 08 */ addi r4, r30, 8 /* 802EABD0 002E6830 38 C6 AC 1C */ addi r6, r6, OpenCallbackFromReload@l /* 802EABD4 002E6834 38 FE 00 94 */ addi r7, r30, 0x94 /* 802EABD8 002E6838 88 1E 01 56 */ lbz r0, 0x156(r30) /* 802EABDC 002E683C 38 A0 00 01 */ li r5, 1 /* 802EABE0 002E6840 9B FE 01 55 */ stb r31, 0x155(r30) /* 802EABE4 002E6844 54 00 10 3A */ slwi r0, r0, 2 /* 802EABE8 002E6848 7C 7E 02 14 */ add r3, r30, r0 /* 802EABEC 002E684C 93 ED AF 20 */ stw r31, lbl_806401E0-_SDA_BASE_(r13) /* 802EABF0 002E6850 80 63 01 60 */ lwz r3, 0x160(r3) /* 802EABF4 002E6854 93 ED AF 18 */ stw r31, lbl_806401D8-_SDA_BASE_(r13) /* 802EABF8 002E6858 93 ED AF 14 */ stw r31, lbl_806401D4-_SDA_BASE_(r13) /* 802EABFC 002E685C 4B FF D9 9D */ bl NANDPrivateOpenAsync lbl_802EAC00: /* 802EAC00 002E6860 80 01 00 24 */ lwz r0, 0x24(r1) /* 802EAC04 002E6864 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EAC08 002E6868 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802EAC0C 002E686C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802EAC10 002E6870 7C 08 03 A6 */ mtlr r0 /* 802EAC14 002E6874 38 21 00 20 */ addi r1, r1, 0x20 /* 802EAC18 002E6878 4E 80 00 20 */ blr OpenCallbackFromReload: /* 802EAC1C 002E687C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802EAC20 002E6880 7C 08 02 A6 */ mflr r0 /* 802EAC24 002E6884 2C 03 00 00 */ cmpwi r3, 0 /* 802EAC28 002E6888 90 01 00 14 */ stw r0, 0x14(r1) /* 802EAC2C 002E688C 93 E1 00 0C */ stw r31, 0xc(r1) /* 802EAC30 002E6890 7C 7F 1B 78 */ mr r31, r3 /* 802EAC34 002E6894 40 82 00 44 */ bne lbl_802EAC78 /* 802EAC38 002E6898 3C 80 80 57 */ lis r4, lbl_80570EC0@ha /* 802EAC3C 002E689C 3C C0 80 2F */ lis r6, ReadCallbackFromReload@ha /* 802EAC40 002E68A0 38 84 0E C0 */ addi r4, r4, lbl_80570EC0@l /* 802EAC44 002E68A4 38 A0 00 01 */ li r5, 1 /* 802EAC48 002E68A8 88 04 01 56 */ lbz r0, 0x156(r4) /* 802EAC4C 002E68AC 38 64 00 08 */ addi r3, r4, 8 /* 802EAC50 002E68B0 98 A4 01 55 */ stb r5, 0x155(r4) /* 802EAC54 002E68B4 38 E4 00 94 */ addi r7, r4, 0x94 /* 802EAC58 002E68B8 54 00 10 3A */ slwi r0, r0, 2 /* 802EAC5C 002E68BC 38 C6 AC EC */ addi r6, r6, ReadCallbackFromReload@l /* 802EAC60 002E68C0 7C A4 02 14 */ add r5, r4, r0 /* 802EAC64 002E68C4 80 85 01 68 */ lwz r4, 0x168(r5) /* 802EAC68 002E68C8 80 A5 01 70 */ lwz r5, 0x170(r5) /* 802EAC6C 002E68CC 4B FF CC BD */ bl NANDReadAsync /* 802EAC70 002E68D0 2C 03 00 00 */ cmpwi r3, 0 /* 802EAC74 002E68D4 41 82 00 64 */ beq lbl_802EACD8 lbl_802EAC78: /* 802EAC78 002E68D8 3C 60 80 57 */ lis r3, lbl_80570EC0@ha /* 802EAC7C 002E68DC 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l /* 802EAC80 002E68E0 88 03 01 56 */ lbz r0, 0x156(r3) /* 802EAC84 002E68E4 2C 00 00 00 */ cmpwi r0, 0 /* 802EAC88 002E68E8 40 82 00 08 */ bne lbl_802EAC90 /* 802EAC8C 002E68EC 93 E3 01 5C */ stw r31, 0x15c(r3) lbl_802EAC90: /* 802EAC90 002E68F0 3C A0 80 57 */ lis r5, lbl_80570EC0@ha /* 802EAC94 002E68F4 38 80 00 00 */ li r4, 0 /* 802EAC98 002E68F8 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l /* 802EAC9C 002E68FC 88 05 01 56 */ lbz r0, 0x156(r5) /* 802EACA0 002E6900 54 00 10 3A */ slwi r0, r0, 2 /* 802EACA4 002E6904 7C 65 02 14 */ add r3, r5, r0 /* 802EACA8 002E6908 90 83 01 78 */ stw r4, 0x178(r3) /* 802EACAC 002E690C 88 05 01 55 */ lbz r0, 0x155(r5) /* 802EACB0 002E6910 2C 00 00 00 */ cmpwi r0, 0 /* 802EACB4 002E6914 41 82 00 20 */ beq lbl_802EACD4 /* 802EACB8 002E6918 3C 80 80 2F */ lis r4, CloseCallbackFromReloadError@ha /* 802EACBC 002E691C 38 65 00 08 */ addi r3, r5, 8 /* 802EACC0 002E6920 38 84 AF 9C */ addi r4, r4, CloseCallbackFromReloadError@l /* 802EACC4 002E6924 38 A5 00 94 */ addi r5, r5, 0x94 /* 802EACC8 002E6928 4B FF DA 2D */ bl NANDCloseAsync /* 802EACCC 002E692C 2C 03 00 00 */ cmpwi r3, 0 /* 802EACD0 002E6930 41 82 00 08 */ beq lbl_802EACD8 lbl_802EACD4: /* 802EACD4 002E6934 48 00 01 8D */ bl FinishFromReload lbl_802EACD8: /* 802EACD8 002E6938 80 01 00 14 */ lwz r0, 0x14(r1) /* 802EACDC 002E693C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EACE0 002E6940 7C 08 03 A6 */ mtlr r0 /* 802EACE4 002E6944 38 21 00 10 */ addi r1, r1, 0x10 /* 802EACE8 002E6948 4E 80 00 20 */ blr ReadCallbackFromReload: /* 802EACEC 002E694C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802EACF0 002E6950 7C 08 02 A6 */ mflr r0 /* 802EACF4 002E6954 3C A0 80 57 */ lis r5, lbl_80570EC0@ha /* 802EACF8 002E6958 90 01 00 14 */ stw r0, 0x14(r1) /* 802EACFC 002E695C 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l /* 802EAD00 002E6960 93 E1 00 0C */ stw r31, 0xc(r1) /* 802EAD04 002E6964 7C 7F 1B 78 */ mr r31, r3 /* 802EAD08 002E6968 88 05 01 56 */ lbz r0, 0x156(r5) /* 802EAD0C 002E696C 54 00 10 3A */ slwi r0, r0, 2 /* 802EAD10 002E6970 7C 85 02 14 */ add r4, r5, r0 /* 802EAD14 002E6974 80 04 01 70 */ lwz r0, 0x170(r4) /* 802EAD18 002E6978 7C 03 00 40 */ cmplw r3, r0 /* 802EAD1C 002E697C 40 82 00 2C */ bne lbl_802EAD48 /* 802EAD20 002E6980 90 64 01 78 */ stw r3, 0x178(r4) /* 802EAD24 002E6984 38 00 00 00 */ li r0, 0 /* 802EAD28 002E6988 3C 80 80 2F */ lis r4, CloseCallbackFromReload@ha /* 802EAD2C 002E698C 38 65 00 08 */ addi r3, r5, 8 /* 802EAD30 002E6990 98 05 01 55 */ stb r0, 0x155(r5) /* 802EAD34 002E6994 38 84 AD D4 */ addi r4, r4, CloseCallbackFromReload@l /* 802EAD38 002E6998 38 A5 00 94 */ addi r5, r5, 0x94 /* 802EAD3C 002E699C 4B FF D9 B9 */ bl NANDCloseAsync /* 802EAD40 002E69A0 2C 03 00 00 */ cmpwi r3, 0 /* 802EAD44 002E69A4 41 82 00 7C */ beq lbl_802EADC0 lbl_802EAD48: /* 802EAD48 002E69A8 3C 60 80 57 */ lis r3, lbl_80570EC0@ha /* 802EAD4C 002E69AC 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l /* 802EAD50 002E69B0 88 03 01 56 */ lbz r0, 0x156(r3) /* 802EAD54 002E69B4 2C 00 00 00 */ cmpwi r0, 0 /* 802EAD58 002E69B8 40 82 00 20 */ bne lbl_802EAD78 /* 802EAD5C 002E69BC 2C 1F 00 00 */ cmpwi r31, 0 /* 802EAD60 002E69C0 38 00 FF 80 */ li r0, -128 /* 802EAD64 002E69C4 41 82 00 08 */ beq lbl_802EAD6C /* 802EAD68 002E69C8 7F E0 FB 78 */ mr r0, r31 lbl_802EAD6C: /* 802EAD6C 002E69CC 3C 60 80 57 */ lis r3, lbl_80570EC0@ha /* 802EAD70 002E69D0 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l /* 802EAD74 002E69D4 90 03 01 5C */ stw r0, 0x15c(r3) lbl_802EAD78: /* 802EAD78 002E69D8 3C A0 80 57 */ lis r5, lbl_80570EC0@ha /* 802EAD7C 002E69DC 38 80 00 00 */ li r4, 0 /* 802EAD80 002E69E0 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l /* 802EAD84 002E69E4 88 05 01 56 */ lbz r0, 0x156(r5) /* 802EAD88 002E69E8 54 00 10 3A */ slwi r0, r0, 2 /* 802EAD8C 002E69EC 7C 65 02 14 */ add r3, r5, r0 /* 802EAD90 002E69F0 90 83 01 78 */ stw r4, 0x178(r3) /* 802EAD94 002E69F4 88 05 01 55 */ lbz r0, 0x155(r5) /* 802EAD98 002E69F8 2C 00 00 00 */ cmpwi r0, 0 /* 802EAD9C 002E69FC 41 82 00 20 */ beq lbl_802EADBC /* 802EADA0 002E6A00 3C 80 80 2F */ lis r4, CloseCallbackFromReloadError@ha /* 802EADA4 002E6A04 38 65 00 08 */ addi r3, r5, 8 /* 802EADA8 002E6A08 38 84 AF 9C */ addi r4, r4, CloseCallbackFromReloadError@l /* 802EADAC 002E6A0C 38 A5 00 94 */ addi r5, r5, 0x94 /* 802EADB0 002E6A10 4B FF D9 45 */ bl NANDCloseAsync /* 802EADB4 002E6A14 2C 03 00 00 */ cmpwi r3, 0 /* 802EADB8 002E6A18 41 82 00 08 */ beq lbl_802EADC0 lbl_802EADBC: /* 802EADBC 002E6A1C 48 00 00 A5 */ bl FinishFromReload lbl_802EADC0: /* 802EADC0 002E6A20 80 01 00 14 */ lwz r0, 0x14(r1) /* 802EADC4 002E6A24 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EADC8 002E6A28 7C 08 03 A6 */ mtlr r0 /* 802EADCC 002E6A2C 38 21 00 10 */ addi r1, r1, 0x10 /* 802EADD0 002E6A30 4E 80 00 20 */ blr CloseCallbackFromReload: /* 802EADD4 002E6A34 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802EADD8 002E6A38 7C 08 02 A6 */ mflr r0 /* 802EADDC 002E6A3C 2C 03 00 00 */ cmpwi r3, 0 /* 802EADE0 002E6A40 90 01 00 14 */ stw r0, 0x14(r1) /* 802EADE4 002E6A44 40 82 00 0C */ bne lbl_802EADF0 /* 802EADE8 002E6A48 48 00 00 79 */ bl FinishFromReload /* 802EADEC 002E6A4C 48 00 00 64 */ b lbl_802EAE50 lbl_802EADF0: /* 802EADF0 002E6A50 3C 80 80 57 */ lis r4, lbl_80570EC0@ha /* 802EADF4 002E6A54 38 84 0E C0 */ addi r4, r4, lbl_80570EC0@l /* 802EADF8 002E6A58 88 04 01 56 */ lbz r0, 0x156(r4) /* 802EADFC 002E6A5C 2C 00 00 00 */ cmpwi r0, 0 /* 802EAE00 002E6A60 40 82 00 08 */ bne lbl_802EAE08 /* 802EAE04 002E6A64 90 64 01 5C */ stw r3, 0x15c(r4) lbl_802EAE08: /* 802EAE08 002E6A68 3C A0 80 57 */ lis r5, lbl_80570EC0@ha /* 802EAE0C 002E6A6C 38 80 00 00 */ li r4, 0 /* 802EAE10 002E6A70 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l /* 802EAE14 002E6A74 88 05 01 56 */ lbz r0, 0x156(r5) /* 802EAE18 002E6A78 54 00 10 3A */ slwi r0, r0, 2 /* 802EAE1C 002E6A7C 7C 65 02 14 */ add r3, r5, r0 /* 802EAE20 002E6A80 90 83 01 78 */ stw r4, 0x178(r3) /* 802EAE24 002E6A84 88 05 01 55 */ lbz r0, 0x155(r5) /* 802EAE28 002E6A88 2C 00 00 00 */ cmpwi r0, 0 /* 802EAE2C 002E6A8C 41 82 00 20 */ beq lbl_802EAE4C /* 802EAE30 002E6A90 3C 80 80 2F */ lis r4, CloseCallbackFromReloadError@ha /* 802EAE34 002E6A94 38 65 00 08 */ addi r3, r5, 8 /* 802EAE38 002E6A98 38 84 AF 9C */ addi r4, r4, CloseCallbackFromReloadError@l /* 802EAE3C 002E6A9C 38 A5 00 94 */ addi r5, r5, 0x94 /* 802EAE40 002E6AA0 4B FF D8 B5 */ bl NANDCloseAsync /* 802EAE44 002E6AA4 2C 03 00 00 */ cmpwi r3, 0 /* 802EAE48 002E6AA8 41 82 00 08 */ beq lbl_802EAE50 lbl_802EAE4C: /* 802EAE4C 002E6AAC 48 00 00 15 */ bl FinishFromReload lbl_802EAE50: /* 802EAE50 002E6AB0 80 01 00 14 */ lwz r0, 0x14(r1) /* 802EAE54 002E6AB4 7C 08 03 A6 */ mtlr r0 /* 802EAE58 002E6AB8 38 21 00 10 */ addi r1, r1, 0x10 /* 802EAE5C 002E6ABC 4E 80 00 20 */ blr .global FinishFromReload FinishFromReload: /* 802EAE60 002E6AC0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802EAE64 002E6AC4 7C 08 02 A6 */ mflr r0 /* 802EAE68 002E6AC8 90 01 00 24 */ stw r0, 0x24(r1) /* 802EAE6C 002E6ACC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802EAE70 002E6AD0 3B E0 00 00 */ li r31, 0 /* 802EAE74 002E6AD4 93 C1 00 18 */ stw r30, 0x18(r1) /* 802EAE78 002E6AD8 3F C0 80 2F */ lis r30, 0x802f /* 802EAE7C 002E6ADC 93 A1 00 14 */ stw r29, 0x14(r1) /* 802EAE80 002E6AE0 3F A0 80 57 */ lis r29, lbl_80570EC0@ha /* 802EAE84 002E6AE4 3B BD 0E C0 */ addi r29, r29, lbl_80570EC0@l /* 802EAE88 002E6AE8 93 81 00 10 */ stw r28, 0x10(r1) lbl_802EAE8C: /* 802EAE8C 002E6AEC 88 7D 01 56 */ lbz r3, 0x156(r29) /* 802EAE90 002E6AF0 38 63 00 01 */ addi r3, r3, 1 /* 802EAE94 002E6AF4 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 802EAE98 002E6AF8 98 7D 01 56 */ stb r3, 0x156(r29) /* 802EAE9C 002E6AFC 28 00 00 02 */ cmplwi r0, 2 /* 802EAEA0 002E6B00 40 80 00 34 */ bge lbl_802EAED4 /* 802EAEA4 002E6B04 54 60 15 BA */ rlwinm r0, r3, 2, 0x16, 0x1d /* 802EAEA8 002E6B08 9B FD 01 55 */ stb r31, 0x155(r29) /* 802EAEAC 002E6B0C 7C 7D 02 14 */ add r3, r29, r0 /* 802EAEB0 002E6B10 38 9D 00 08 */ addi r4, r29, 8 /* 802EAEB4 002E6B14 80 63 01 60 */ lwz r3, 0x160(r3) /* 802EAEB8 002E6B18 38 DE AC 1C */ addi r6, r30, -21476 /* 802EAEBC 002E6B1C 38 FD 00 94 */ addi r7, r29, 0x94 /* 802EAEC0 002E6B20 38 A0 00 01 */ li r5, 1 /* 802EAEC4 002E6B24 4B FF D6 D5 */ bl NANDPrivateOpenAsync /* 802EAEC8 002E6B28 2C 03 00 00 */ cmpwi r3, 0 /* 802EAECC 002E6B2C 40 82 FF C0 */ bne lbl_802EAE8C /* 802EAED0 002E6B30 48 00 00 AC */ b lbl_802EAF7C lbl_802EAED4: /* 802EAED4 002E6B34 80 1D 01 5C */ lwz r0, 0x15c(r29) /* 802EAED8 002E6B38 2C 00 00 00 */ cmpwi r0, 0 /* 802EAEDC 002E6B3C 41 82 00 14 */ beq lbl_802EAEF0 /* 802EAEE0 002E6B40 40 80 00 18 */ bge lbl_802EAEF8 /* 802EAEE4 002E6B44 2C 00 FF F4 */ cmpwi r0, -12 /* 802EAEE8 002E6B48 41 82 00 10 */ beq lbl_802EAEF8 /* 802EAEEC 002E6B4C 48 00 00 0C */ b lbl_802EAEF8 lbl_802EAEF0: /* 802EAEF0 002E6B50 3B 80 00 03 */ li r28, 3 /* 802EAEF4 002E6B54 48 00 00 54 */ b lbl_802EAF48 lbl_802EAEF8: /* 802EAEF8 002E6B58 3F C0 80 57 */ lis r30, lbl_80570EC0@ha /* 802EAEFC 002E6B5C 38 80 00 00 */ li r4, 0 /* 802EAF00 002E6B60 3B DE 0E C0 */ addi r30, r30, lbl_80570EC0@l /* 802EAF04 002E6B64 38 A0 40 00 */ li r5, 0x4000 /* 802EAF08 002E6B68 83 BE 01 68 */ lwz r29, 0x168(r30) /* 802EAF0C 002E6B6C 7F A3 EB 78 */ mr r3, r29 /* 802EAF10 002E6B70 4B D1 91 F5 */ bl memset /* 802EAF14 002E6B74 7F A3 EB 78 */ mr r3, r29 /* 802EAF18 002E6B78 38 8D 8B B0 */ addi r4, r13, lbl_8063DE70-_SDA_BASE_ /* 802EAF1C 002E6B7C 38 A0 00 04 */ li r5, 4 /* 802EAF20 002E6B80 4B D1 90 E1 */ bl memcpy /* 802EAF24 002E6B84 38 7D 3F FC */ addi r3, r29, 0x3ffc /* 802EAF28 002E6B88 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_ /* 802EAF2C 002E6B8C 38 A0 00 04 */ li r5, 4 /* 802EAF30 002E6B90 4B D1 90 D1 */ bl memcpy /* 802EAF34 002E6B94 38 00 00 08 */ li r0, 8 /* 802EAF38 002E6B98 3B 80 00 03 */ li r28, 3 /* 802EAF3C 002E6B9C B0 1D 00 06 */ sth r0, 6(r29) /* 802EAF40 002E6BA0 80 1E 01 70 */ lwz r0, 0x170(r30) /* 802EAF44 002E6BA4 90 1E 01 78 */ stw r0, 0x178(r30) lbl_802EAF48: /* 802EAF48 002E6BA8 3B C0 00 00 */ li r30, 0 /* 802EAF4C 002E6BAC 3C 60 80 00 */ lis r3, 0x800038FF@ha /* 802EAF50 002E6BB0 3F E0 80 57 */ lis r31, lbl_80570EC0@ha /* 802EAF54 002E6BB4 9B C3 38 FF */ stb r30, 0x800038FF@l(r3) /* 802EAF58 002E6BB8 3B FF 0E C0 */ addi r31, r31, lbl_80570EC0@l /* 802EAF5C 002E6BBC 81 9F 01 58 */ lwz r12, 0x158(r31) /* 802EAF60 002E6BC0 2C 0C 00 00 */ cmpwi r12, 0 /* 802EAF64 002E6BC4 41 82 00 14 */ beq lbl_802EAF78 /* 802EAF68 002E6BC8 80 7F 01 5C */ lwz r3, 0x15c(r31) /* 802EAF6C 002E6BCC 7D 89 03 A6 */ mtctr r12 /* 802EAF70 002E6BD0 4E 80 04 21 */ bctrl /* 802EAF74 002E6BD4 93 DF 01 58 */ stw r30, 0x158(r31) lbl_802EAF78: /* 802EAF78 002E6BD8 9B 8D AF 10 */ stb r28, lbl_806401D0-_SDA_BASE_(r13) lbl_802EAF7C: /* 802EAF7C 002E6BDC 80 01 00 24 */ lwz r0, 0x24(r1) /* 802EAF80 002E6BE0 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EAF84 002E6BE4 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802EAF88 002E6BE8 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802EAF8C 002E6BEC 83 81 00 10 */ lwz r28, 0x10(r1) /* 802EAF90 002E6BF0 7C 08 03 A6 */ mtlr r0 /* 802EAF94 002E6BF4 38 21 00 20 */ addi r1, r1, 0x20 /* 802EAF98 002E6BF8 4E 80 00 20 */ blr CloseCallbackFromReloadError: /* 802EAF9C 002E6BFC 4B FF FE C4 */ b FinishFromReload .global ParseConfBuf ParseConfBuf: /* 802EAFA0 002E6C00 94 21 FF A0 */ stwu r1, -0x60(r1) /* 802EAFA4 002E6C04 7C 08 02 A6 */ mflr r0 /* 802EAFA8 002E6C08 90 01 00 64 */ stw r0, 0x64(r1) /* 802EAFAC 002E6C0C 39 61 00 60 */ addi r11, r1, 0x60 /* 802EAFB0 002E6C10 4B ED C1 61 */ bl _savegpr_21 /* 802EAFB4 002E6C14 28 04 00 0C */ cmplwi r4, 0xc /* 802EAFB8 002E6C18 3F 60 80 44 */ lis r27, lbl_804458F8@ha /* 802EAFBC 002E6C1C 7C 79 1B 78 */ mr r25, r3 /* 802EAFC0 002E6C20 7C 9A 23 78 */ mr r26, r4 /* 802EAFC4 002E6C24 3B 7B 58 F8 */ addi r27, r27, lbl_804458F8@l /* 802EAFC8 002E6C28 41 80 02 08 */ blt lbl_802EB1D0 /* 802EAFCC 002E6C2C 28 04 40 00 */ cmplwi r4, 0x4000 /* 802EAFD0 002E6C30 41 81 02 00 */ bgt lbl_802EB1D0 /* 802EAFD4 002E6C34 38 00 00 23 */ li r0, 0x23 /* 802EAFD8 002E6C38 7F E3 22 14 */ add r31, r3, r4 /* 802EAFDC 002E6C3C 90 0D AF 1C */ stw r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EAFE0 002E6C40 38 8D 8B B0 */ addi r4, r13, lbl_8063DE70-_SDA_BASE_ /* 802EAFE4 002E6C44 38 A0 00 04 */ li r5, 4 /* 802EAFE8 002E6C48 3B FF FF FC */ addi r31, r31, -4 /* 802EAFEC 002E6C4C 4B ED F3 AD */ bl memcmp /* 802EAFF0 002E6C50 2C 03 00 00 */ cmpwi r3, 0 /* 802EAFF4 002E6C54 40 82 01 DC */ bne lbl_802EB1D0 /* 802EAFF8 002E6C58 7F E3 FB 78 */ mr r3, r31 /* 802EAFFC 002E6C5C 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_ /* 802EB000 002E6C60 38 A0 00 04 */ li r5, 4 /* 802EB004 002E6C64 4B ED F3 95 */ bl memcmp /* 802EB008 002E6C68 2C 03 00 00 */ cmpwi r3, 0 /* 802EB00C 002E6C6C 40 82 01 C4 */ bne lbl_802EB1D0 /* 802EB010 002E6C70 28 1A 40 00 */ cmplwi r26, 0x4000 /* 802EB014 002E6C74 40 80 00 2C */ bge lbl_802EB040 /* 802EB018 002E6C78 22 DA 40 00 */ subfic r22, r26, 0x4000 /* 802EB01C 002E6C7C 7F E3 FB 78 */ mr r3, r31 /* 802EB020 002E6C80 7E C5 B3 78 */ mr r5, r22 /* 802EB024 002E6C84 38 80 00 00 */ li r4, 0 /* 802EB028 002E6C88 4B D1 90 DD */ bl memset /* 802EB02C 002E6C8C 7F FF B2 14 */ add r31, r31, r22 /* 802EB030 002E6C90 38 8D 8B B8 */ addi r4, r13, lbl_8063DE78-_SDA_BASE_ /* 802EB034 002E6C94 7F E3 FB 78 */ mr r3, r31 /* 802EB038 002E6C98 38 A0 00 04 */ li r5, 4 /* 802EB03C 002E6C9C 4B D1 8F C5 */ bl memcpy lbl_802EB040: /* 802EB040 002E6CA0 38 19 00 06 */ addi r0, r25, 6 /* 802EB044 002E6CA4 7C 00 F8 40 */ cmplw r0, r31 /* 802EB048 002E6CA8 40 81 00 0C */ ble lbl_802EB054 /* 802EB04C 002E6CAC 38 00 00 00 */ li r0, 0 /* 802EB050 002E6CB0 48 00 00 14 */ b lbl_802EB064 lbl_802EB054: /* 802EB054 002E6CB4 88 79 00 04 */ lbz r3, 4(r25) /* 802EB058 002E6CB8 38 00 00 01 */ li r0, 1 /* 802EB05C 002E6CBC 8B D9 00 05 */ lbz r30, 5(r25) /* 802EB060 002E6CC0 50 7E 44 2E */ rlwimi r30, r3, 8, 0x10, 0x17 lbl_802EB064: /* 802EB064 002E6CC4 2C 00 00 00 */ cmpwi r0, 0 /* 802EB068 002E6CC8 41 82 01 68 */ beq lbl_802EB1D0 /* 802EB06C 002E6CCC 3B B9 00 06 */ addi r29, r25, 6 /* 802EB070 002E6CD0 57 C0 08 3C */ slwi r0, r30, 1 /* 802EB074 002E6CD4 7C 7D 02 14 */ add r3, r29, r0 /* 802EB078 002E6CD8 3A E0 00 00 */ li r23, 0 /* 802EB07C 002E6CDC 38 03 00 02 */ addi r0, r3, 2 /* 802EB080 002E6CE0 7F B8 EB 78 */ mr r24, r29 /* 802EB084 002E6CE4 7F 99 00 50 */ subf r28, r25, r0 /* 802EB088 002E6CE8 48 00 00 48 */ b lbl_802EB0D0 lbl_802EB08C: /* 802EB08C 002E6CEC 7C 1C D0 40 */ cmplw r28, r26 /* 802EB090 002E6CF0 41 81 01 40 */ bgt lbl_802EB1D0 /* 802EB094 002E6CF4 7C 19 C0 50 */ subf r0, r25, r24 /* 802EB098 002E6CF8 7C 00 D0 40 */ cmplw r0, r26 /* 802EB09C 002E6CFC 41 81 01 34 */ bgt lbl_802EB1D0 /* 802EB0A0 002E6D00 A0 18 00 00 */ lhz r0, 0(r24) /* 802EB0A4 002E6D04 7C 1C 00 40 */ cmplw r28, r0 /* 802EB0A8 002E6D08 40 82 01 28 */ bne lbl_802EB1D0 /* 802EB0AC 002E6D0C 7C 79 E2 14 */ add r3, r25, r28 /* 802EB0B0 002E6D10 38 81 00 08 */ addi r4, r1, 8 /* 802EB0B4 002E6D14 48 00 01 39 */ bl UnpackItem /* 802EB0B8 002E6D18 2C 03 00 00 */ cmpwi r3, 0 /* 802EB0BC 002E6D1C 41 82 01 14 */ beq lbl_802EB1D0 /* 802EB0C0 002E6D20 80 01 00 24 */ lwz r0, 0x24(r1) /* 802EB0C4 002E6D24 3B 18 00 02 */ addi r24, r24, 2 /* 802EB0C8 002E6D28 3A F7 00 01 */ addi r23, r23, 1 /* 802EB0CC 002E6D2C 7F 9C 02 14 */ add r28, r28, r0 lbl_802EB0D0: /* 802EB0D0 002E6D30 7C 17 F0 40 */ cmplw r23, r30 /* 802EB0D4 002E6D34 41 80 FF B8 */ blt lbl_802EB08C /* 802EB0D8 002E6D38 7C 1C D0 40 */ cmplw r28, r26 /* 802EB0DC 002E6D3C 41 81 00 F4 */ bgt lbl_802EB1D0 /* 802EB0E0 002E6D40 56 E0 08 3C */ slwi r0, r23, 1 /* 802EB0E4 002E6D44 7C 1D 02 2E */ lhzx r0, r29, r0 /* 802EB0E8 002E6D48 7C 1C 00 40 */ cmplw r28, r0 /* 802EB0EC 002E6D4C 40 82 00 E4 */ bne lbl_802EB1D0 /* 802EB0F0 002E6D50 38 7F FF BC */ addi r3, r31, -68 /* 802EB0F4 002E6D54 7C 19 E2 14 */ add r0, r25, r28 /* 802EB0F8 002E6D58 7C 00 18 40 */ cmplw r0, r3 /* 802EB0FC 002E6D5C 41 81 00 D4 */ bgt lbl_802EB1D0 /* 802EB100 002E6D60 7F 80 18 50 */ subf r28, r0, r3 /* 802EB104 002E6D64 7C A3 F8 50 */ subf r5, r3, r31 /* 802EB108 002E6D68 38 80 00 00 */ li r4, 0 /* 802EB10C 002E6D6C 4B D1 8F F9 */ bl memset /* 802EB110 002E6D70 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EB114 002E6D74 3B FF FF FE */ addi r31, r31, -2 /* 802EB118 002E6D78 54 00 18 38 */ slwi r0, r0, 3 /* 802EB11C 002E6D7C 7F 5B 02 14 */ add r26, r27, r0 /* 802EB120 002E6D80 48 00 00 84 */ b lbl_802EB1A4 lbl_802EB124: /* 802EB124 002E6D84 7E C3 B3 78 */ mr r3, r22 /* 802EB128 002E6D88 4B ED BA 3D */ bl strlen /* 802EB12C 002E6D8C 7C 75 1B 78 */ mr r21, r3 /* 802EB130 002E6D90 7F B8 EB 78 */ mr r24, r29 /* 802EB134 002E6D94 3A E0 00 00 */ li r23, 0 /* 802EB138 002E6D98 48 00 00 60 */ b lbl_802EB198 lbl_802EB13C: /* 802EB13C 002E6D9C A0 18 00 00 */ lhz r0, 0(r24) /* 802EB140 002E6DA0 7C 99 02 14 */ add r4, r25, r0 /* 802EB144 002E6DA4 7C 19 00 AE */ lbzx r0, r25, r0 /* 802EB148 002E6DA8 54 03 06 FE */ clrlwi r3, r0, 0x1b /* 802EB14C 002E6DAC 38 03 00 01 */ addi r0, r3, 1 /* 802EB150 002E6DB0 7C 15 00 40 */ cmplw r21, r0 /* 802EB154 002E6DB4 40 82 00 3C */ bne lbl_802EB190 /* 802EB158 002E6DB8 7E C3 B3 78 */ mr r3, r22 /* 802EB15C 002E6DBC 7E A5 AB 78 */ mr r5, r21 /* 802EB160 002E6DC0 38 84 00 01 */ addi r4, r4, 1 /* 802EB164 002E6DC4 4B ED F2 35 */ bl memcmp /* 802EB168 002E6DC8 2C 03 00 00 */ cmpwi r3, 0 /* 802EB16C 002E6DCC 40 82 00 24 */ bne lbl_802EB190 /* 802EB170 002E6DD0 80 1B 00 04 */ lwz r0, 4(r27) /* 802EB174 002E6DD4 56 E3 08 3C */ slwi r3, r23, 1 /* 802EB178 002E6DD8 7C 7D 1A 14 */ add r3, r29, r3 /* 802EB17C 002E6DDC 7C 00 00 D0 */ neg r0, r0 /* 802EB180 002E6DE0 7C 79 18 50 */ subf r3, r25, r3 /* 802EB184 002E6DE4 54 00 08 3C */ slwi r0, r0, 1 /* 802EB188 002E6DE8 7C 7F 03 2E */ sthx r3, r31, r0 /* 802EB18C 002E6DEC 48 00 00 14 */ b lbl_802EB1A0 lbl_802EB190: /* 802EB190 002E6DF0 3B 18 00 02 */ addi r24, r24, 2 /* 802EB194 002E6DF4 3A F7 00 01 */ addi r23, r23, 1 lbl_802EB198: /* 802EB198 002E6DF8 7C 17 F0 40 */ cmplw r23, r30 /* 802EB19C 002E6DFC 41 80 FF A0 */ blt lbl_802EB13C lbl_802EB1A0: /* 802EB1A0 002E6E00 3B 7B 00 08 */ addi r27, r27, 8 lbl_802EB1A4: /* 802EB1A4 002E6E04 7C 1B D0 40 */ cmplw r27, r26 /* 802EB1A8 002E6E08 40 80 00 10 */ bge lbl_802EB1B8 /* 802EB1AC 002E6E0C 82 DB 00 00 */ lwz r22, 0(r27) /* 802EB1B0 002E6E10 2C 16 00 00 */ cmpwi r22, 0 /* 802EB1B4 002E6E14 40 82 FF 70 */ bne lbl_802EB124 lbl_802EB1B8: /* 802EB1B8 002E6E18 7C 19 F8 50 */ subf r0, r25, r31 /* 802EB1BC 002E6E1C 93 CD AF 18 */ stw r30, lbl_806401D8-_SDA_BASE_(r13) /* 802EB1C0 002E6E20 38 60 00 00 */ li r3, 0 /* 802EB1C4 002E6E24 90 0D AF 20 */ stw r0, lbl_806401E0-_SDA_BASE_(r13) /* 802EB1C8 002E6E28 93 8D AF 14 */ stw r28, lbl_806401D4-_SDA_BASE_(r13) /* 802EB1CC 002E6E2C 48 00 00 08 */ b lbl_802EB1D4 lbl_802EB1D0: /* 802EB1D0 002E6E30 38 60 00 02 */ li r3, 2 lbl_802EB1D4: /* 802EB1D4 002E6E34 39 61 00 60 */ addi r11, r1, 0x60 /* 802EB1D8 002E6E38 4B ED BF 85 */ bl _restgpr_21 /* 802EB1DC 002E6E3C 80 01 00 64 */ lwz r0, 0x64(r1) /* 802EB1E0 002E6E40 7C 08 03 A6 */ mtlr r0 /* 802EB1E4 002E6E44 38 21 00 60 */ addi r1, r1, 0x60 /* 802EB1E8 002E6E48 4E 80 00 20 */ blr .global UnpackItem UnpackItem: /* 802EB1EC 002E6E4C 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802EB1F0 002E6E50 7C 08 02 A6 */ mflr r0 /* 802EB1F4 002E6E54 38 A0 00 20 */ li r5, 0x20 /* 802EB1F8 002E6E58 90 01 00 14 */ stw r0, 0x14(r1) /* 802EB1FC 002E6E5C 93 E1 00 0C */ stw r31, 0xc(r1) /* 802EB200 002E6E60 7C 9F 23 78 */ mr r31, r4 /* 802EB204 002E6E64 38 80 00 00 */ li r4, 0 /* 802EB208 002E6E68 93 C1 00 08 */ stw r30, 8(r1) /* 802EB20C 002E6E6C 7C 7E 1B 78 */ mr r30, r3 /* 802EB210 002E6E70 7F E3 FB 78 */ mr r3, r31 /* 802EB214 002E6E74 4B D1 8E F1 */ bl memset /* 802EB218 002E6E78 88 9E 00 00 */ lbz r4, 0(r30) /* 802EB21C 002E6E7C 38 1E 00 01 */ addi r0, r30, 1 /* 802EB220 002E6E80 90 1F 00 14 */ stw r0, 0x14(r31) /* 802EB224 002E6E84 54 83 06 FE */ clrlwi r3, r4, 0x1b /* 802EB228 002E6E88 54 86 06 34 */ rlwinm r6, r4, 0, 0x18, 0x1a /* 802EB22C 002E6E8C 38 03 00 01 */ addi r0, r3, 1 /* 802EB230 002E6E90 7C 7E 02 14 */ add r3, r30, r0 /* 802EB234 002E6E94 2C 06 00 80 */ cmpwi r6, 0x80 /* 802EB238 002E6E98 38 63 00 01 */ addi r3, r3, 1 /* 802EB23C 002E6E9C 90 1F 00 0C */ stw r0, 0xc(r31) /* 802EB240 002E6EA0 90 7F 00 18 */ stw r3, 0x18(r31) /* 802EB244 002E6EA4 41 82 00 5C */ beq lbl_802EB2A0 /* 802EB248 002E6EA8 40 80 00 28 */ bge lbl_802EB270 /* 802EB24C 002E6EAC 2C 06 00 40 */ cmpwi r6, 0x40 /* 802EB250 002E6EB0 41 82 00 74 */ beq lbl_802EB2C4 /* 802EB254 002E6EB4 40 80 00 10 */ bge lbl_802EB264 /* 802EB258 002E6EB8 2C 06 00 20 */ cmpwi r6, 0x20 /* 802EB25C 002E6EBC 41 82 00 8C */ beq lbl_802EB2E8 /* 802EB260 002E6EC0 48 00 00 FC */ b lbl_802EB35C lbl_802EB264: /* 802EB264 002E6EC4 2C 06 00 60 */ cmpwi r6, 0x60 /* 802EB268 002E6EC8 41 82 00 2C */ beq lbl_802EB294 /* 802EB26C 002E6ECC 48 00 00 F0 */ b lbl_802EB35C lbl_802EB270: /* 802EB270 002E6ED0 2C 06 00 C0 */ cmpwi r6, 0xc0 /* 802EB274 002E6ED4 41 82 00 44 */ beq lbl_802EB2B8 /* 802EB278 002E6ED8 40 80 00 10 */ bge lbl_802EB288 /* 802EB27C 002E6EDC 2C 06 00 A0 */ cmpwi r6, 0xa0 /* 802EB280 002E6EE0 41 82 00 2C */ beq lbl_802EB2AC /* 802EB284 002E6EE4 48 00 00 D8 */ b lbl_802EB35C lbl_802EB288: /* 802EB288 002E6EE8 2C 06 00 E0 */ cmpwi r6, 0xe0 /* 802EB28C 002E6EEC 41 82 00 08 */ beq lbl_802EB294 /* 802EB290 002E6EF0 48 00 00 CC */ b lbl_802EB35C lbl_802EB294: /* 802EB294 002E6EF4 38 00 00 01 */ li r0, 1 /* 802EB298 002E6EF8 90 1F 00 10 */ stw r0, 0x10(r31) /* 802EB29C 002E6EFC 48 00 00 74 */ b lbl_802EB310 lbl_802EB2A0: /* 802EB2A0 002E6F00 38 00 00 02 */ li r0, 2 /* 802EB2A4 002E6F04 90 1F 00 10 */ stw r0, 0x10(r31) /* 802EB2A8 002E6F08 48 00 00 68 */ b lbl_802EB310 lbl_802EB2AC: /* 802EB2AC 002E6F0C 38 00 00 04 */ li r0, 4 /* 802EB2B0 002E6F10 90 1F 00 10 */ stw r0, 0x10(r31) /* 802EB2B4 002E6F14 48 00 00 5C */ b lbl_802EB310 lbl_802EB2B8: /* 802EB2B8 002E6F18 38 00 00 08 */ li r0, 8 /* 802EB2BC 002E6F1C 90 1F 00 10 */ stw r0, 0x10(r31) /* 802EB2C0 002E6F20 48 00 00 50 */ b lbl_802EB310 lbl_802EB2C4: /* 802EB2C4 002E6F24 88 83 00 00 */ lbz r4, 0(r3) /* 802EB2C8 002E6F28 38 03 00 01 */ addi r0, r3, 1 /* 802EB2CC 002E6F2C 80 7F 00 1C */ lwz r3, 0x1c(r31) /* 802EB2D0 002E6F30 38 84 00 01 */ addi r4, r4, 1 /* 802EB2D4 002E6F34 90 1F 00 18 */ stw r0, 0x18(r31) /* 802EB2D8 002E6F38 38 03 00 01 */ addi r0, r3, 1 /* 802EB2DC 002E6F3C 90 9F 00 10 */ stw r4, 0x10(r31) /* 802EB2E0 002E6F40 90 1F 00 1C */ stw r0, 0x1c(r31) /* 802EB2E4 002E6F44 48 00 00 2C */ b lbl_802EB310 lbl_802EB2E8: /* 802EB2E8 002E6F48 88 A3 00 00 */ lbz r5, 0(r3) /* 802EB2EC 002E6F4C 38 03 00 02 */ addi r0, r3, 2 /* 802EB2F0 002E6F50 88 83 00 01 */ lbz r4, 1(r3) /* 802EB2F4 002E6F54 50 A4 44 2E */ rlwimi r4, r5, 8, 0x10, 0x17 /* 802EB2F8 002E6F58 80 7F 00 1C */ lwz r3, 0x1c(r31) /* 802EB2FC 002E6F5C 38 84 00 01 */ addi r4, r4, 1 /* 802EB300 002E6F60 90 1F 00 18 */ stw r0, 0x18(r31) /* 802EB304 002E6F64 38 03 00 02 */ addi r0, r3, 2 /* 802EB308 002E6F68 90 9F 00 10 */ stw r4, 0x10(r31) /* 802EB30C 002E6F6C 90 1F 00 1C */ stw r0, 0x1c(r31) lbl_802EB310: /* 802EB310 002E6F70 28 06 00 40 */ cmplwi r6, 0x40 /* 802EB314 002E6F74 41 82 00 0C */ beq lbl_802EB320 /* 802EB318 002E6F78 28 06 00 20 */ cmplwi r6, 0x20 /* 802EB31C 002E6F7C 40 82 00 10 */ bne lbl_802EB32C lbl_802EB320: /* 802EB320 002E6F80 38 00 00 40 */ li r0, 0x40 /* 802EB324 002E6F84 98 1F 00 09 */ stb r0, 9(r31) /* 802EB328 002E6F88 48 00 00 18 */ b lbl_802EB340 lbl_802EB32C: /* 802EB32C 002E6F8C 98 DF 00 08 */ stb r6, 8(r31) /* 802EB330 002E6F90 7F E3 FB 78 */ mr r3, r31 /* 802EB334 002E6F94 80 9F 00 18 */ lwz r4, 0x18(r31) /* 802EB338 002E6F98 80 BF 00 10 */ lwz r5, 0x10(r31) /* 802EB33C 002E6F9C 4B D1 8C C5 */ bl memcpy lbl_802EB340: /* 802EB340 002E6FA0 80 7F 00 0C */ lwz r3, 0xc(r31) /* 802EB344 002E6FA4 80 1F 00 10 */ lwz r0, 0x10(r31) /* 802EB348 002E6FA8 80 9F 00 1C */ lwz r4, 0x1c(r31) /* 802EB34C 002E6FAC 7C 03 02 14 */ add r0, r3, r0 /* 802EB350 002E6FB0 7C 60 22 14 */ add r3, r0, r4 /* 802EB354 002E6FB4 38 03 00 01 */ addi r0, r3, 1 /* 802EB358 002E6FB8 90 1F 00 1C */ stw r0, 0x1c(r31) lbl_802EB35C: /* 802EB35C 002E6FBC 80 7F 00 10 */ lwz r3, 0x10(r31) /* 802EB360 002E6FC0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EB364 002E6FC4 7C 03 00 D0 */ neg r0, r3 /* 802EB368 002E6FC8 83 C1 00 08 */ lwz r30, 8(r1) /* 802EB36C 002E6FCC 7C 00 1B 78 */ or r0, r0, r3 /* 802EB370 002E6FD0 54 03 0F FE */ srwi r3, r0, 0x1f /* 802EB374 002E6FD4 80 01 00 14 */ lwz r0, 0x14(r1) /* 802EB378 002E6FD8 7C 08 03 A6 */ mtlr r0 /* 802EB37C 002E6FDC 38 21 00 10 */ addi r1, r1, 0x10 /* 802EB380 002E6FE0 4E 80 00 20 */ blr .global DeleteItemByID DeleteItemByID: /* 802EB384 002E6FE4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802EB388 002E6FE8 7C 08 02 A6 */ mflr r0 /* 802EB38C 002E6FEC 90 01 00 34 */ stw r0, 0x34(r1) /* 802EB390 002E6FF0 39 61 00 30 */ addi r11, r1, 0x30 /* 802EB394 002E6FF4 4B ED BD 89 */ bl _savegpr_24 /* 802EB398 002E6FF8 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EB39C 002E6FFC 3F E0 80 57 */ lis r31, lbl_80571060@ha /* 802EB3A0 002E7000 3B FF 10 60 */ addi r31, r31, lbl_80571060@l /* 802EB3A4 002E7004 7C 03 00 40 */ cmplw r3, r0 /* 802EB3A8 002E7008 40 80 01 54 */ bge lbl_802EB4FC /* 802EB3AC 002E700C 80 8D AF 20 */ lwz r4, lbl_806401E0-_SDA_BASE_(r13) /* 802EB3B0 002E7010 2C 04 00 00 */ cmpwi r4, 0 /* 802EB3B4 002E7014 41 82 01 48 */ beq lbl_802EB4FC /* 802EB3B8 002E7018 7C 03 00 D0 */ neg r0, r3 /* 802EB3BC 002E701C 7F 9F 22 14 */ add r28, r31, r4 /* 802EB3C0 002E7020 54 00 08 3C */ slwi r0, r0, 1 /* 802EB3C4 002E7024 7F DC 02 2E */ lhzx r30, r28, r0 /* 802EB3C8 002E7028 2C 1E 00 00 */ cmpwi r30, 0 /* 802EB3CC 002E702C 41 82 01 30 */ beq lbl_802EB4FC /* 802EB3D0 002E7030 80 0D AF 18 */ lwz r0, lbl_806401D8-_SDA_BASE_(r13) /* 802EB3D4 002E7034 2C 00 00 00 */ cmpwi r0, 0 /* 802EB3D8 002E7038 41 82 01 24 */ beq lbl_802EB4FC /* 802EB3DC 002E703C 7F 7F F2 14 */ add r27, r31, r30 /* 802EB3E0 002E7040 3B 3F 00 06 */ addi r25, r31, 6 /* 802EB3E4 002E7044 54 00 08 3C */ slwi r0, r0, 1 /* 802EB3E8 002E7048 7C BF F2 2E */ lhzx r5, r31, r30 /* 802EB3EC 002E704C 7F 19 02 14 */ add r24, r25, r0 /* 802EB3F0 002E7050 A0 7B 00 02 */ lhz r3, 2(r27) /* 802EB3F4 002E7054 7F 64 DB 78 */ mr r4, r27 /* 802EB3F8 002E7058 38 1E 00 02 */ addi r0, r30, 2 /* 802EB3FC 002E705C 7C C5 18 50 */ subf r6, r5, r3 /* 802EB400 002E7060 A3 58 00 00 */ lhz r26, 0(r24) /* 802EB404 002E7064 7F 63 DB 78 */ mr r3, r27 /* 802EB408 002E7068 7C A0 28 50 */ subf r5, r0, r5 /* 802EB40C 002E706C 3B A6 00 02 */ addi r29, r6, 2 /* 802EB410 002E7070 38 84 00 02 */ addi r4, r4, 2 /* 802EB414 002E7074 4B ED EE 61 */ bl memmove /* 802EB418 002E7078 38 98 FF FE */ addi r4, r24, -2 /* 802EB41C 002E707C 38 04 00 02 */ addi r0, r4, 2 /* 802EB420 002E7080 7C 19 00 50 */ subf r0, r25, r0 /* 802EB424 002E7084 54 00 F8 7E */ srwi r0, r0, 1 /* 802EB428 002E7088 7C 09 03 A6 */ mtctr r0 /* 802EB42C 002E708C 7C 04 C8 40 */ cmplw r4, r25 /* 802EB430 002E7090 41 80 00 30 */ blt lbl_802EB460 lbl_802EB434: /* 802EB434 002E7094 7C 04 D8 40 */ cmplw r4, r27 /* 802EB438 002E7098 40 80 00 14 */ bge lbl_802EB44C /* 802EB43C 002E709C A0 64 00 00 */ lhz r3, 0(r4) /* 802EB440 002E70A0 38 03 FF FE */ addi r0, r3, -2 /* 802EB444 002E70A4 B0 04 00 00 */ sth r0, 0(r4) /* 802EB448 002E70A8 48 00 00 10 */ b lbl_802EB458 lbl_802EB44C: /* 802EB44C 002E70AC A0 04 00 00 */ lhz r0, 0(r4) /* 802EB450 002E70B0 7C 1D 00 50 */ subf r0, r29, r0 /* 802EB454 002E70B4 B0 04 00 00 */ sth r0, 0(r4) lbl_802EB458: /* 802EB458 002E70B8 38 84 FF FE */ addi r4, r4, -2 /* 802EB45C 002E70BC 42 00 FF D8 */ bdnz lbl_802EB434 lbl_802EB460: /* 802EB460 002E70C0 A0 BB 00 00 */ lhz r5, 0(r27) /* 802EB464 002E70C4 7C 9F EA 14 */ add r4, r31, r29 /* 802EB468 002E70C8 7C 05 EA 14 */ add r0, r5, r29 /* 802EB46C 002E70CC 7C 7F 2A 14 */ add r3, r31, r5 /* 802EB470 002E70D0 7C 85 22 14 */ add r4, r5, r4 /* 802EB474 002E70D4 7C A0 D0 50 */ subf r5, r0, r26 /* 802EB478 002E70D8 4B ED ED FD */ bl memmove /* 802EB47C 002E70DC 7C 1D D0 50 */ subf r0, r29, r26 /* 802EB480 002E70E0 7F A5 EB 78 */ mr r5, r29 /* 802EB484 002E70E4 7C 7F 02 14 */ add r3, r31, r0 /* 802EB488 002E70E8 38 80 00 00 */ li r4, 0 /* 802EB48C 002E70EC 4B D1 8C 79 */ bl memset /* 802EB490 002E70F0 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EB494 002E70F4 38 C0 00 00 */ li r6, 0 /* 802EB498 002E70F8 38 60 00 00 */ li r3, 0 /* 802EB49C 002E70FC 7C 09 03 A6 */ mtctr r0 /* 802EB4A0 002E7100 28 00 00 00 */ cmplwi r0, 0 /* 802EB4A4 002E7104 40 81 00 34 */ ble lbl_802EB4D8 lbl_802EB4A8: /* 802EB4A8 002E7108 7C 06 00 D0 */ neg r0, r6 /* 802EB4AC 002E710C 54 05 08 3C */ slwi r5, r0, 1 /* 802EB4B0 002E7110 7C 9C 2A 2E */ lhzx r4, r28, r5 /* 802EB4B4 002E7114 7C 04 F0 40 */ cmplw r4, r30 /* 802EB4B8 002E7118 41 80 00 18 */ blt lbl_802EB4D0 /* 802EB4BC 002E711C 40 81 00 10 */ ble lbl_802EB4CC /* 802EB4C0 002E7120 38 04 FF FE */ addi r0, r4, -2 /* 802EB4C4 002E7124 7C 1C 2B 2E */ sthx r0, r28, r5 /* 802EB4C8 002E7128 48 00 00 08 */ b lbl_802EB4D0 lbl_802EB4CC: /* 802EB4CC 002E712C 7C 7C 2B 2E */ sthx r3, r28, r5 lbl_802EB4D0: /* 802EB4D0 002E7130 38 C6 00 01 */ addi r6, r6, 1 /* 802EB4D4 002E7134 42 00 FF D4 */ bdnz lbl_802EB4A8 lbl_802EB4D8: /* 802EB4D8 002E7138 80 8D AF 14 */ lwz r4, lbl_806401D4-_SDA_BASE_(r13) /* 802EB4DC 002E713C 38 00 00 01 */ li r0, 1 /* 802EB4E0 002E7140 80 6D AF 18 */ lwz r3, lbl_806401D8-_SDA_BASE_(r13) /* 802EB4E4 002E7144 7C 84 EA 14 */ add r4, r4, r29 /* 802EB4E8 002E7148 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) /* 802EB4EC 002E714C 38 03 FF FF */ addi r0, r3, -1 /* 802EB4F0 002E7150 90 8D AF 14 */ stw r4, lbl_806401D4-_SDA_BASE_(r13) /* 802EB4F4 002E7154 90 0D AF 18 */ stw r0, lbl_806401D8-_SDA_BASE_(r13) /* 802EB4F8 002E7158 B0 1F 00 04 */ sth r0, 4(r31) lbl_802EB4FC: /* 802EB4FC 002E715C 39 61 00 30 */ addi r11, r1, 0x30 /* 802EB500 002E7160 4B ED BC 69 */ bl _restgpr_24 /* 802EB504 002E7164 80 01 00 34 */ lwz r0, 0x34(r1) /* 802EB508 002E7168 7C 08 03 A6 */ mtlr r0 /* 802EB50C 002E716C 38 21 00 30 */ addi r1, r1, 0x30 /* 802EB510 002E7170 4E 80 00 20 */ blr .global CreateItemByID CreateItemByID: /* 802EB514 002E7174 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802EB518 002E7178 7C 08 02 A6 */ mflr r0 /* 802EB51C 002E717C 90 01 00 34 */ stw r0, 0x34(r1) /* 802EB520 002E7180 39 61 00 30 */ addi r11, r1, 0x30 /* 802EB524 002E7184 4B ED BB F1 */ bl _savegpr_22 /* 802EB528 002E7188 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EB52C 002E718C 3F E0 80 57 */ lis r31, lbl_80571060@ha /* 802EB530 002E7190 3C E0 80 44 */ lis r7, lbl_804458F8@ha /* 802EB534 002E7194 7C 77 1B 78 */ mr r23, r3 /* 802EB538 002E7198 7C 03 00 40 */ cmplw r3, r0 /* 802EB53C 002E719C 7C 98 23 78 */ mr r24, r4 /* 802EB540 002E71A0 7C B9 2B 78 */ mr r25, r5 /* 802EB544 002E71A4 7C DA 33 78 */ mr r26, r6 /* 802EB548 002E71A8 3B FF 10 60 */ addi r31, r31, lbl_80571060@l /* 802EB54C 002E71AC 38 E7 58 F8 */ addi r7, r7, lbl_804458F8@l /* 802EB550 002E71B0 3B A0 00 01 */ li r29, 1 /* 802EB554 002E71B4 40 80 02 1C */ bge lbl_802EB770 /* 802EB558 002E71B8 38 00 00 00 */ li r0, 0 /* 802EB55C 002E71BC 7C 05 00 40 */ cmplw r5, r0 /* 802EB560 002E71C0 41 82 02 10 */ beq lbl_802EB770 /* 802EB564 002E71C4 80 0D AF 18 */ lwz r0, lbl_806401D8-_SDA_BASE_(r13) /* 802EB568 002E71C8 28 00 FF FF */ cmplwi r0, 0xffff /* 802EB56C 002E71CC 40 80 02 04 */ bge lbl_802EB770 /* 802EB570 002E71D0 80 0D AF 20 */ lwz r0, lbl_806401E0-_SDA_BASE_(r13) /* 802EB574 002E71D4 2C 00 00 00 */ cmpwi r0, 0 /* 802EB578 002E71D8 41 82 01 F8 */ beq lbl_802EB770 /* 802EB57C 002E71DC 2C 04 00 A0 */ cmpwi r4, 0xa0 /* 802EB580 002E71E0 41 82 00 54 */ beq lbl_802EB5D4 /* 802EB584 002E71E4 40 80 00 28 */ bge lbl_802EB5AC /* 802EB588 002E71E8 2C 04 00 60 */ cmpwi r4, 0x60 /* 802EB58C 002E71EC 41 82 00 38 */ beq lbl_802EB5C4 /* 802EB590 002E71F0 40 80 00 10 */ bge lbl_802EB5A0 /* 802EB594 002E71F4 2C 04 00 40 */ cmpwi r4, 0x40 /* 802EB598 002E71F8 41 82 00 4C */ beq lbl_802EB5E4 /* 802EB59C 002E71FC 48 00 01 D4 */ b lbl_802EB770 lbl_802EB5A0: /* 802EB5A0 002E7200 2C 04 00 80 */ cmpwi r4, 0x80 /* 802EB5A4 002E7204 41 82 00 28 */ beq lbl_802EB5CC /* 802EB5A8 002E7208 48 00 01 C8 */ b lbl_802EB770 lbl_802EB5AC: /* 802EB5AC 002E720C 2C 04 00 E0 */ cmpwi r4, 0xe0 /* 802EB5B0 002E7210 41 82 00 14 */ beq lbl_802EB5C4 /* 802EB5B4 002E7214 40 80 01 BC */ bge lbl_802EB770 /* 802EB5B8 002E7218 2C 04 00 C0 */ cmpwi r4, 0xc0 /* 802EB5BC 002E721C 41 82 00 20 */ beq lbl_802EB5DC /* 802EB5C0 002E7220 48 00 01 B0 */ b lbl_802EB770 lbl_802EB5C4: /* 802EB5C4 002E7224 3B 40 00 01 */ li r26, 1 /* 802EB5C8 002E7228 48 00 00 48 */ b lbl_802EB610 lbl_802EB5CC: /* 802EB5CC 002E722C 3B 40 00 02 */ li r26, 2 /* 802EB5D0 002E7230 48 00 00 40 */ b lbl_802EB610 lbl_802EB5D4: /* 802EB5D4 002E7234 3B 40 00 04 */ li r26, 4 /* 802EB5D8 002E7238 48 00 00 38 */ b lbl_802EB610 lbl_802EB5DC: /* 802EB5DC 002E723C 3B 40 00 08 */ li r26, 8 /* 802EB5E0 002E7240 48 00 00 30 */ b lbl_802EB610 lbl_802EB5E4: /* 802EB5E4 002E7244 2C 06 00 00 */ cmpwi r6, 0 /* 802EB5E8 002E7248 41 82 01 88 */ beq lbl_802EB770 /* 802EB5EC 002E724C 3C 00 00 01 */ lis r0, 1 /* 802EB5F0 002E7250 7C 06 00 40 */ cmplw r6, r0 /* 802EB5F4 002E7254 41 81 01 7C */ bgt lbl_802EB770 /* 802EB5F8 002E7258 28 06 01 00 */ cmplwi r6, 0x100 /* 802EB5FC 002E725C 40 81 00 10 */ ble lbl_802EB60C /* 802EB600 002E7260 3B 00 00 20 */ li r24, 0x20 /* 802EB604 002E7264 3B A0 00 03 */ li r29, 3 /* 802EB608 002E7268 48 00 00 08 */ b lbl_802EB610 lbl_802EB60C: /* 802EB60C 002E726C 3B A0 00 02 */ li r29, 2 lbl_802EB610: /* 802EB610 002E7270 7F BD D2 14 */ add r29, r29, r26 /* 802EB614 002E7274 38 00 00 00 */ li r0, 0 /* 802EB618 002E7278 48 00 00 14 */ b lbl_802EB62C lbl_802EB61C: /* 802EB61C 002E727C 80 87 00 04 */ lwz r4, 4(r7) /* 802EB620 002E7280 7C 04 18 00 */ cmpw r4, r3 /* 802EB624 002E7284 41 82 00 14 */ beq lbl_802EB638 /* 802EB628 002E7288 38 E7 00 08 */ addi r7, r7, 8 lbl_802EB62C: /* 802EB62C 002E728C 83 87 00 00 */ lwz r28, 0(r7) /* 802EB630 002E7290 7C 1C 00 40 */ cmplw r28, r0 /* 802EB634 002E7294 40 82 FF E8 */ bne lbl_802EB61C lbl_802EB638: /* 802EB638 002E7298 38 00 00 00 */ li r0, 0 /* 802EB63C 002E729C 7C 1C 00 40 */ cmplw r28, r0 /* 802EB640 002E72A0 41 82 01 30 */ beq lbl_802EB770 /* 802EB644 002E72A4 7F 83 E3 78 */ mr r3, r28 /* 802EB648 002E72A8 4B ED B5 1D */ bl strlen /* 802EB64C 002E72AC 28 03 00 20 */ cmplwi r3, 0x20 /* 802EB650 002E72B0 7C 7E 1B 78 */ mr r30, r3 /* 802EB654 002E72B4 41 81 01 1C */ bgt lbl_802EB770 /* 802EB658 002E72B8 7F BD 1A 14 */ add r29, r29, r3 /* 802EB65C 002E72BC 80 6D AF 14 */ lwz r3, lbl_806401D4-_SDA_BASE_(r13) /* 802EB660 002E72C0 38 1D 00 02 */ addi r0, r29, 2 /* 802EB664 002E72C4 7C 03 00 40 */ cmplw r3, r0 /* 802EB668 002E72C8 41 80 01 08 */ blt lbl_802EB770 /* 802EB66C 002E72CC 80 6D AF 18 */ lwz r3, lbl_806401D8-_SDA_BASE_(r13) /* 802EB670 002E72D0 3A DF 00 06 */ addi r22, r31, 6 /* 802EB674 002E72D4 A0 1F 00 06 */ lhz r0, 6(r31) /* 802EB678 002E72D8 54 63 08 3C */ slwi r3, r3, 1 /* 802EB67C 002E72DC 7C B6 1A 2E */ lhzx r5, r22, r3 /* 802EB680 002E72E0 7C 80 FA 14 */ add r4, r0, r31 /* 802EB684 002E72E4 7F 76 1A 14 */ add r27, r22, r3 /* 802EB688 002E72E8 38 64 00 02 */ addi r3, r4, 2 /* 802EB68C 002E72EC 7C A0 28 50 */ subf r5, r0, r5 /* 802EB690 002E72F0 4B ED EB E5 */ bl memmove lbl_802EB694: /* 802EB694 002E72F4 A0 76 00 00 */ lhz r3, 0(r22) /* 802EB698 002E72F8 38 03 00 02 */ addi r0, r3, 2 /* 802EB69C 002E72FC B0 16 00 00 */ sth r0, 0(r22) /* 802EB6A0 002E7300 3A D6 00 02 */ addi r22, r22, 2 /* 802EB6A4 002E7304 7C 16 D8 40 */ cmplw r22, r27 /* 802EB6A8 002E7308 40 81 FF EC */ ble lbl_802EB694 /* 802EB6AC 002E730C A0 BB 00 00 */ lhz r5, 0(r27) /* 802EB6B0 002E7310 38 1E FF FF */ addi r0, r30, -1 /* 802EB6B4 002E7314 7F 84 E3 78 */ mr r4, r28 /* 802EB6B8 002E7318 7F 9F 2A 14 */ add r28, r31, r5 /* 802EB6BC 002E731C 7F 00 03 78 */ or r0, r24, r0 /* 802EB6C0 002E7320 98 1C 00 00 */ stb r0, 0(r28) /* 802EB6C4 002E7324 7F C5 F3 78 */ mr r5, r30 /* 802EB6C8 002E7328 38 7C 00 01 */ addi r3, r28, 1 /* 802EB6CC 002E732C 4B D1 89 35 */ bl memcpy /* 802EB6D0 002E7330 28 18 00 40 */ cmplwi r24, 0x40 /* 802EB6D4 002E7334 7C 7E E2 14 */ add r3, r30, r28 /* 802EB6D8 002E7338 3B 83 00 01 */ addi r28, r3, 1 /* 802EB6DC 002E733C 40 82 00 14 */ bne lbl_802EB6F0 /* 802EB6E0 002E7340 38 1A FF FF */ addi r0, r26, -1 /* 802EB6E4 002E7344 98 1C 00 00 */ stb r0, 0(r28) /* 802EB6E8 002E7348 3B 9C 00 01 */ addi r28, r28, 1 /* 802EB6EC 002E734C 48 00 00 20 */ b lbl_802EB70C lbl_802EB6F0: /* 802EB6F0 002E7350 28 18 00 20 */ cmplwi r24, 0x20 /* 802EB6F4 002E7354 40 82 00 18 */ bne lbl_802EB70C /* 802EB6F8 002E7358 38 7A FF FF */ addi r3, r26, -1 /* 802EB6FC 002E735C 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f /* 802EB700 002E7360 98 1C 00 00 */ stb r0, 0(r28) /* 802EB704 002E7364 98 7C 00 01 */ stb r3, 1(r28) /* 802EB708 002E7368 3B 9C 00 02 */ addi r28, r28, 2 lbl_802EB70C: /* 802EB70C 002E736C 7F 83 E3 78 */ mr r3, r28 /* 802EB710 002E7370 7F 24 CB 78 */ mr r4, r25 /* 802EB714 002E7374 7F 45 D3 78 */ mr r5, r26 /* 802EB718 002E7378 4B D1 88 E9 */ bl memcpy /* 802EB71C 002E737C 80 AD AF 20 */ lwz r5, lbl_806401E0-_SDA_BASE_(r13) /* 802EB720 002E7380 38 00 00 01 */ li r0, 1 /* 802EB724 002E7384 7C 97 00 D0 */ neg r4, r23 /* 802EB728 002E7388 7C DF D8 50 */ subf r6, r31, r27 /* 802EB72C 002E738C 7C FF 2A 14 */ add r7, r31, r5 /* 802EB730 002E7390 80 6D AF 18 */ lwz r3, lbl_806401D8-_SDA_BASE_(r13) /* 802EB734 002E7394 54 85 08 3C */ slwi r5, r4, 1 /* 802EB738 002E7398 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) /* 802EB73C 002E739C 38 83 00 01 */ addi r4, r3, 1 /* 802EB740 002E73A0 38 60 00 01 */ li r3, 1 /* 802EB744 002E73A4 7C C7 2B 2E */ sthx r6, r7, r5 /* 802EB748 002E73A8 38 DD 00 02 */ addi r6, r29, 2 /* 802EB74C 002E73AC 80 AD AF 14 */ lwz r5, lbl_806401D4-_SDA_BASE_(r13) /* 802EB750 002E73B0 A0 FB 00 00 */ lhz r7, 0(r27) /* 802EB754 002E73B4 7C A6 28 50 */ subf r5, r6, r5 /* 802EB758 002E73B8 90 8D AF 18 */ stw r4, lbl_806401D8-_SDA_BASE_(r13) /* 802EB75C 002E73BC 7C C7 EA 14 */ add r6, r7, r29 /* 802EB760 002E73C0 B0 DB 00 02 */ sth r6, 2(r27) /* 802EB764 002E73C4 90 AD AF 14 */ stw r5, lbl_806401D4-_SDA_BASE_(r13) /* 802EB768 002E73C8 B0 9F 00 04 */ sth r4, 4(r31) /* 802EB76C 002E73CC 48 00 00 08 */ b lbl_802EB774 lbl_802EB770: /* 802EB770 002E73D0 38 60 00 00 */ li r3, 0 lbl_802EB774: /* 802EB774 002E73D4 39 61 00 30 */ addi r11, r1, 0x30 /* 802EB778 002E73D8 4B ED B9 E9 */ bl _restgpr_22 /* 802EB77C 002E73DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802EB780 002E73E0 7C 08 03 A6 */ mtlr r0 /* 802EB784 002E73E4 38 21 00 30 */ addi r1, r1, 0x30 /* 802EB788 002E73E8 4E 80 00 20 */ blr .global SCFindByteArrayItem SCFindByteArrayItem: /* 802EB78C 002E73EC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802EB790 002E73F0 7C 08 02 A6 */ mflr r0 /* 802EB794 002E73F4 90 01 00 44 */ stw r0, 0x44(r1) /* 802EB798 002E73F8 39 61 00 40 */ addi r11, r1, 0x40 /* 802EB79C 002E73FC 4B ED B9 8D */ bl _savegpr_27 /* 802EB7A0 002E7400 7C 7B 1B 78 */ mr r27, r3 /* 802EB7A4 002E7404 7C 9C 23 78 */ mr r28, r4 /* 802EB7A8 002E7408 7C BD 2B 78 */ mr r29, r5 /* 802EB7AC 002E740C 3B E0 00 00 */ li r31, 0 /* 802EB7B0 002E7410 4B F8 2F AD */ bl OSDisableInterrupts /* 802EB7B4 002E7414 38 00 00 00 */ li r0, 0 /* 802EB7B8 002E7418 7C 7E 1B 78 */ mr r30, r3 /* 802EB7BC 002E741C 7C 1B 00 40 */ cmplw r27, r0 /* 802EB7C0 002E7420 41 82 00 88 */ beq lbl_802EB848 /* 802EB7C4 002E7424 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EB7C8 002E7428 3C A0 80 57 */ lis r5, lbl_80571060@ha /* 802EB7CC 002E742C 38 A5 10 60 */ addi r5, r5, lbl_80571060@l /* 802EB7D0 002E7430 7C 1D 00 40 */ cmplw r29, r0 /* 802EB7D4 002E7434 40 80 00 3C */ bge lbl_802EB810 /* 802EB7D8 002E7438 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13) /* 802EB7DC 002E743C 2C 03 00 00 */ cmpwi r3, 0 /* 802EB7E0 002E7440 41 82 00 30 */ beq lbl_802EB810 /* 802EB7E4 002E7444 7C 1D 00 D0 */ neg r0, r29 /* 802EB7E8 002E7448 7C 65 1A 14 */ add r3, r5, r3 /* 802EB7EC 002E744C 54 00 08 3C */ slwi r0, r0, 1 /* 802EB7F0 002E7450 7C 03 02 2E */ lhzx r0, r3, r0 /* 802EB7F4 002E7454 2C 00 00 00 */ cmpwi r0, 0 /* 802EB7F8 002E7458 41 82 00 18 */ beq lbl_802EB810 /* 802EB7FC 002E745C 7C 05 02 2E */ lhzx r0, r5, r0 /* 802EB800 002E7460 38 81 00 08 */ addi r4, r1, 8 /* 802EB804 002E7464 7C 65 02 14 */ add r3, r5, r0 /* 802EB808 002E7468 4B FF F9 E5 */ bl UnpackItem /* 802EB80C 002E746C 48 00 00 08 */ b lbl_802EB814 lbl_802EB810: /* 802EB810 002E7470 38 60 00 00 */ li r3, 0 lbl_802EB814: /* 802EB814 002E7474 2C 03 00 00 */ cmpwi r3, 0 /* 802EB818 002E7478 41 82 00 30 */ beq lbl_802EB848 /* 802EB81C 002E747C 88 01 00 11 */ lbz r0, 0x11(r1) /* 802EB820 002E7480 2C 00 00 00 */ cmpwi r0, 0 /* 802EB824 002E7484 41 82 00 24 */ beq lbl_802EB848 /* 802EB828 002E7488 80 01 00 18 */ lwz r0, 0x18(r1) /* 802EB82C 002E748C 7C 00 E0 40 */ cmplw r0, r28 /* 802EB830 002E7490 40 82 00 18 */ bne lbl_802EB848 /* 802EB834 002E7494 80 81 00 20 */ lwz r4, 0x20(r1) /* 802EB838 002E7498 7F 63 DB 78 */ mr r3, r27 /* 802EB83C 002E749C 7F 85 E3 78 */ mr r5, r28 /* 802EB840 002E74A0 4B D1 87 C1 */ bl memcpy /* 802EB844 002E74A4 3B E0 00 01 */ li r31, 1 lbl_802EB848: /* 802EB848 002E74A8 7F C3 F3 78 */ mr r3, r30 /* 802EB84C 002E74AC 4B F8 2F 39 */ bl OSRestoreInterrupts /* 802EB850 002E74B0 39 61 00 40 */ addi r11, r1, 0x40 /* 802EB854 002E74B4 7F E3 FB 78 */ mr r3, r31 /* 802EB858 002E74B8 4B ED B9 1D */ bl _restgpr_27 /* 802EB85C 002E74BC 80 01 00 44 */ lwz r0, 0x44(r1) /* 802EB860 002E74C0 7C 08 03 A6 */ mtlr r0 /* 802EB864 002E74C4 38 21 00 40 */ addi r1, r1, 0x40 /* 802EB868 002E74C8 4E 80 00 20 */ blr .global SCReplaceByteArrayItem SCReplaceByteArrayItem: /* 802EB86C 002E74CC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802EB870 002E74D0 7C 08 02 A6 */ mflr r0 /* 802EB874 002E74D4 90 01 00 44 */ stw r0, 0x44(r1) /* 802EB878 002E74D8 39 61 00 40 */ addi r11, r1, 0x40 /* 802EB87C 002E74DC 4B ED B8 AD */ bl _savegpr_27 /* 802EB880 002E74E0 7C 7B 1B 78 */ mr r27, r3 /* 802EB884 002E74E4 7C 9C 23 78 */ mr r28, r4 /* 802EB888 002E74E8 7C BD 2B 78 */ mr r29, r5 /* 802EB88C 002E74EC 3B E0 00 00 */ li r31, 0 /* 802EB890 002E74F0 4B F8 2E CD */ bl OSDisableInterrupts /* 802EB894 002E74F4 38 00 00 00 */ li r0, 0 /* 802EB898 002E74F8 7C 7E 1B 78 */ mr r30, r3 /* 802EB89C 002E74FC 7C 1B 00 40 */ cmplw r27, r0 /* 802EB8A0 002E7500 41 82 00 CC */ beq lbl_802EB96C /* 802EB8A4 002E7504 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EB8A8 002E7508 3C A0 80 57 */ lis r5, lbl_80571060@ha /* 802EB8AC 002E750C 38 A5 10 60 */ addi r5, r5, lbl_80571060@l /* 802EB8B0 002E7510 7C 1D 00 40 */ cmplw r29, r0 /* 802EB8B4 002E7514 40 80 00 3C */ bge lbl_802EB8F0 /* 802EB8B8 002E7518 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13) /* 802EB8BC 002E751C 2C 03 00 00 */ cmpwi r3, 0 /* 802EB8C0 002E7520 41 82 00 30 */ beq lbl_802EB8F0 /* 802EB8C4 002E7524 7C 1D 00 D0 */ neg r0, r29 /* 802EB8C8 002E7528 7C 65 1A 14 */ add r3, r5, r3 /* 802EB8CC 002E752C 54 00 08 3C */ slwi r0, r0, 1 /* 802EB8D0 002E7530 7C 03 02 2E */ lhzx r0, r3, r0 /* 802EB8D4 002E7534 2C 00 00 00 */ cmpwi r0, 0 /* 802EB8D8 002E7538 41 82 00 18 */ beq lbl_802EB8F0 /* 802EB8DC 002E753C 7C 05 02 2E */ lhzx r0, r5, r0 /* 802EB8E0 002E7540 38 81 00 08 */ addi r4, r1, 8 /* 802EB8E4 002E7544 7C 65 02 14 */ add r3, r5, r0 /* 802EB8E8 002E7548 4B FF F9 05 */ bl UnpackItem /* 802EB8EC 002E754C 48 00 00 08 */ b lbl_802EB8F4 lbl_802EB8F0: /* 802EB8F0 002E7550 38 60 00 00 */ li r3, 0 lbl_802EB8F4: /* 802EB8F4 002E7554 2C 03 00 00 */ cmpwi r3, 0 /* 802EB8F8 002E7558 41 82 00 5C */ beq lbl_802EB954 /* 802EB8FC 002E755C 88 01 00 11 */ lbz r0, 0x11(r1) /* 802EB900 002E7560 2C 00 00 00 */ cmpwi r0, 0 /* 802EB904 002E7564 41 82 00 48 */ beq lbl_802EB94C /* 802EB908 002E7568 80 01 00 18 */ lwz r0, 0x18(r1) /* 802EB90C 002E756C 7C 00 E0 40 */ cmplw r0, r28 /* 802EB910 002E7570 40 82 00 3C */ bne lbl_802EB94C /* 802EB914 002E7574 80 61 00 20 */ lwz r3, 0x20(r1) /* 802EB918 002E7578 7F 64 DB 78 */ mr r4, r27 /* 802EB91C 002E757C 7F 85 E3 78 */ mr r5, r28 /* 802EB920 002E7580 4B ED EA 79 */ bl memcmp /* 802EB924 002E7584 2C 03 00 00 */ cmpwi r3, 0 /* 802EB928 002E7588 41 82 00 1C */ beq lbl_802EB944 /* 802EB92C 002E758C 80 61 00 20 */ lwz r3, 0x20(r1) /* 802EB930 002E7590 7F 64 DB 78 */ mr r4, r27 /* 802EB934 002E7594 7F 85 E3 78 */ mr r5, r28 /* 802EB938 002E7598 4B D1 86 C9 */ bl memcpy /* 802EB93C 002E759C 38 00 00 01 */ li r0, 1 /* 802EB940 002E75A0 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) lbl_802EB944: /* 802EB944 002E75A4 3B E0 00 01 */ li r31, 1 /* 802EB948 002E75A8 48 00 00 24 */ b lbl_802EB96C lbl_802EB94C: /* 802EB94C 002E75AC 7F A3 EB 78 */ mr r3, r29 /* 802EB950 002E75B0 4B FF FA 35 */ bl DeleteItemByID lbl_802EB954: /* 802EB954 002E75B4 7F A3 EB 78 */ mr r3, r29 /* 802EB958 002E75B8 7F 65 DB 78 */ mr r5, r27 /* 802EB95C 002E75BC 7F 86 E3 78 */ mr r6, r28 /* 802EB960 002E75C0 38 80 00 40 */ li r4, 0x40 /* 802EB964 002E75C4 4B FF FB B1 */ bl CreateItemByID /* 802EB968 002E75C8 7C 7F 1B 78 */ mr r31, r3 lbl_802EB96C: /* 802EB96C 002E75CC 7F C3 F3 78 */ mr r3, r30 /* 802EB970 002E75D0 4B F8 2E 15 */ bl OSRestoreInterrupts /* 802EB974 002E75D4 39 61 00 40 */ addi r11, r1, 0x40 /* 802EB978 002E75D8 7F E3 FB 78 */ mr r3, r31 /* 802EB97C 002E75DC 4B ED B7 F9 */ bl _restgpr_27 /* 802EB980 002E75E0 80 01 00 44 */ lwz r0, 0x44(r1) /* 802EB984 002E75E4 7C 08 03 A6 */ mtlr r0 /* 802EB988 002E75E8 38 21 00 40 */ addi r1, r1, 0x40 /* 802EB98C 002E75EC 4E 80 00 20 */ blr .global SCReplaceIntegerItem SCReplaceIntegerItem: /* 802EB990 002E75F0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802EB994 002E75F4 7C 08 02 A6 */ mflr r0 /* 802EB998 002E75F8 90 01 00 44 */ stw r0, 0x44(r1) /* 802EB99C 002E75FC 93 E1 00 3C */ stw r31, 0x3c(r1) /* 802EB9A0 002E7600 7C BF 2B 78 */ mr r31, r5 /* 802EB9A4 002E7604 93 C1 00 38 */ stw r30, 0x38(r1) /* 802EB9A8 002E7608 93 A1 00 34 */ stw r29, 0x34(r1) /* 802EB9AC 002E760C 7C 9D 23 78 */ mr r29, r4 /* 802EB9B0 002E7610 93 81 00 30 */ stw r28, 0x30(r1) /* 802EB9B4 002E7614 7C 7C 1B 78 */ mr r28, r3 /* 802EB9B8 002E7618 4B F8 2D A5 */ bl OSDisableInterrupts /* 802EB9BC 002E761C 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EB9C0 002E7620 3C A0 80 57 */ lis r5, lbl_80571060@ha /* 802EB9C4 002E7624 7C 7E 1B 78 */ mr r30, r3 /* 802EB9C8 002E7628 7C 1D 00 40 */ cmplw r29, r0 /* 802EB9CC 002E762C 38 A5 10 60 */ addi r5, r5, lbl_80571060@l /* 802EB9D0 002E7630 40 80 00 3C */ bge lbl_802EBA0C /* 802EB9D4 002E7634 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13) /* 802EB9D8 002E7638 2C 03 00 00 */ cmpwi r3, 0 /* 802EB9DC 002E763C 41 82 00 30 */ beq lbl_802EBA0C /* 802EB9E0 002E7640 7C 1D 00 D0 */ neg r0, r29 /* 802EB9E4 002E7644 7C 65 1A 14 */ add r3, r5, r3 /* 802EB9E8 002E7648 54 00 08 3C */ slwi r0, r0, 1 /* 802EB9EC 002E764C 7C 03 02 2E */ lhzx r0, r3, r0 /* 802EB9F0 002E7650 2C 00 00 00 */ cmpwi r0, 0 /* 802EB9F4 002E7654 41 82 00 18 */ beq lbl_802EBA0C /* 802EB9F8 002E7658 7C 05 02 2E */ lhzx r0, r5, r0 /* 802EB9FC 002E765C 38 81 00 08 */ addi r4, r1, 8 /* 802EBA00 002E7660 7C 65 02 14 */ add r3, r5, r0 /* 802EBA04 002E7664 4B FF F7 E9 */ bl UnpackItem /* 802EBA08 002E7668 48 00 00 08 */ b lbl_802EBA10 lbl_802EBA0C: /* 802EBA0C 002E766C 38 60 00 00 */ li r3, 0 lbl_802EBA10: /* 802EBA10 002E7670 2C 03 00 00 */ cmpwi r3, 0 /* 802EBA14 002E7674 41 82 00 50 */ beq lbl_802EBA64 /* 802EBA18 002E7678 88 01 00 10 */ lbz r0, 0x10(r1) /* 802EBA1C 002E767C 7C 00 F8 40 */ cmplw r0, r31 /* 802EBA20 002E7680 40 82 00 3C */ bne lbl_802EBA5C /* 802EBA24 002E7684 80 61 00 20 */ lwz r3, 0x20(r1) /* 802EBA28 002E7688 7F 84 E3 78 */ mr r4, r28 /* 802EBA2C 002E768C 80 A1 00 18 */ lwz r5, 0x18(r1) /* 802EBA30 002E7690 4B ED E9 69 */ bl memcmp /* 802EBA34 002E7694 2C 03 00 00 */ cmpwi r3, 0 /* 802EBA38 002E7698 41 82 00 1C */ beq lbl_802EBA54 /* 802EBA3C 002E769C 80 61 00 20 */ lwz r3, 0x20(r1) /* 802EBA40 002E76A0 7F 84 E3 78 */ mr r4, r28 /* 802EBA44 002E76A4 80 A1 00 18 */ lwz r5, 0x18(r1) /* 802EBA48 002E76A8 4B D1 85 B9 */ bl memcpy /* 802EBA4C 002E76AC 38 00 00 01 */ li r0, 1 /* 802EBA50 002E76B0 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) lbl_802EBA54: /* 802EBA54 002E76B4 3B E0 00 01 */ li r31, 1 /* 802EBA58 002E76B8 48 00 00 24 */ b lbl_802EBA7C lbl_802EBA5C: /* 802EBA5C 002E76BC 7F A3 EB 78 */ mr r3, r29 /* 802EBA60 002E76C0 4B FF F9 25 */ bl DeleteItemByID lbl_802EBA64: /* 802EBA64 002E76C4 7F A3 EB 78 */ mr r3, r29 /* 802EBA68 002E76C8 7F E4 FB 78 */ mr r4, r31 /* 802EBA6C 002E76CC 7F 85 E3 78 */ mr r5, r28 /* 802EBA70 002E76D0 38 C0 00 00 */ li r6, 0 /* 802EBA74 002E76D4 4B FF FA A1 */ bl CreateItemByID /* 802EBA78 002E76D8 7C 7F 1B 78 */ mr r31, r3 lbl_802EBA7C: /* 802EBA7C 002E76DC 7F C3 F3 78 */ mr r3, r30 /* 802EBA80 002E76E0 4B F8 2D 05 */ bl OSRestoreInterrupts /* 802EBA84 002E76E4 7F E3 FB 78 */ mr r3, r31 /* 802EBA88 002E76E8 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 802EBA8C 002E76EC 83 C1 00 38 */ lwz r30, 0x38(r1) /* 802EBA90 002E76F0 83 A1 00 34 */ lwz r29, 0x34(r1) /* 802EBA94 002E76F4 83 81 00 30 */ lwz r28, 0x30(r1) /* 802EBA98 002E76F8 80 01 00 44 */ lwz r0, 0x44(r1) /* 802EBA9C 002E76FC 7C 08 03 A6 */ mtlr r0 /* 802EBAA0 002E7700 38 21 00 40 */ addi r1, r1, 0x40 /* 802EBAA4 002E7704 4E 80 00 20 */ blr .global SCFindU8Item SCFindU8Item: /* 802EBAA8 002E7708 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802EBAAC 002E770C 7C 08 02 A6 */ mflr r0 /* 802EBAB0 002E7710 90 01 00 44 */ stw r0, 0x44(r1) /* 802EBAB4 002E7714 93 E1 00 3C */ stw r31, 0x3c(r1) /* 802EBAB8 002E7718 93 C1 00 38 */ stw r30, 0x38(r1) /* 802EBABC 002E771C 3B C0 00 00 */ li r30, 0 /* 802EBAC0 002E7720 93 A1 00 34 */ stw r29, 0x34(r1) /* 802EBAC4 002E7724 7C 9D 23 78 */ mr r29, r4 /* 802EBAC8 002E7728 93 81 00 30 */ stw r28, 0x30(r1) /* 802EBACC 002E772C 7C 7C 1B 78 */ mr r28, r3 /* 802EBAD0 002E7730 4B F8 2C 8D */ bl OSDisableInterrupts /* 802EBAD4 002E7734 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EBAD8 002E7738 3C A0 80 57 */ lis r5, lbl_80571060@ha /* 802EBADC 002E773C 7C 7F 1B 78 */ mr r31, r3 /* 802EBAE0 002E7740 7C 1D 00 40 */ cmplw r29, r0 /* 802EBAE4 002E7744 38 A5 10 60 */ addi r5, r5, lbl_80571060@l /* 802EBAE8 002E7748 40 80 00 3C */ bge lbl_802EBB24 /* 802EBAEC 002E774C 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13) /* 802EBAF0 002E7750 2C 03 00 00 */ cmpwi r3, 0 /* 802EBAF4 002E7754 41 82 00 30 */ beq lbl_802EBB24 /* 802EBAF8 002E7758 7C 1D 00 D0 */ neg r0, r29 /* 802EBAFC 002E775C 7C 65 1A 14 */ add r3, r5, r3 /* 802EBB00 002E7760 54 00 08 3C */ slwi r0, r0, 1 /* 802EBB04 002E7764 7C 03 02 2E */ lhzx r0, r3, r0 /* 802EBB08 002E7768 2C 00 00 00 */ cmpwi r0, 0 /* 802EBB0C 002E776C 41 82 00 18 */ beq lbl_802EBB24 /* 802EBB10 002E7770 7C 05 02 2E */ lhzx r0, r5, r0 /* 802EBB14 002E7774 38 81 00 08 */ addi r4, r1, 8 /* 802EBB18 002E7778 7C 65 02 14 */ add r3, r5, r0 /* 802EBB1C 002E777C 4B FF F6 D1 */ bl UnpackItem /* 802EBB20 002E7780 48 00 00 08 */ b lbl_802EBB28 lbl_802EBB24: /* 802EBB24 002E7784 38 60 00 00 */ li r3, 0 lbl_802EBB28: /* 802EBB28 002E7788 2C 03 00 00 */ cmpwi r3, 0 /* 802EBB2C 002E778C 41 82 00 24 */ beq lbl_802EBB50 /* 802EBB30 002E7790 88 01 00 10 */ lbz r0, 0x10(r1) /* 802EBB34 002E7794 28 00 00 60 */ cmplwi r0, 0x60 /* 802EBB38 002E7798 40 82 00 18 */ bne lbl_802EBB50 /* 802EBB3C 002E779C 80 81 00 20 */ lwz r4, 0x20(r1) /* 802EBB40 002E77A0 7F 83 E3 78 */ mr r3, r28 /* 802EBB44 002E77A4 80 A1 00 18 */ lwz r5, 0x18(r1) /* 802EBB48 002E77A8 4B D1 84 B9 */ bl memcpy /* 802EBB4C 002E77AC 3B C0 00 01 */ li r30, 1 lbl_802EBB50: /* 802EBB50 002E77B0 7F E3 FB 78 */ mr r3, r31 /* 802EBB54 002E77B4 4B F8 2C 31 */ bl OSRestoreInterrupts /* 802EBB58 002E77B8 7F C3 F3 78 */ mr r3, r30 /* 802EBB5C 002E77BC 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 802EBB60 002E77C0 83 C1 00 38 */ lwz r30, 0x38(r1) /* 802EBB64 002E77C4 83 A1 00 34 */ lwz r29, 0x34(r1) /* 802EBB68 002E77C8 83 81 00 30 */ lwz r28, 0x30(r1) /* 802EBB6C 002E77CC 80 01 00 44 */ lwz r0, 0x44(r1) /* 802EBB70 002E77D0 7C 08 03 A6 */ mtlr r0 /* 802EBB74 002E77D4 38 21 00 40 */ addi r1, r1, 0x40 /* 802EBB78 002E77D8 4E 80 00 20 */ blr .global SCFindS8Item SCFindS8Item: /* 802EBB7C 002E77DC 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802EBB80 002E77E0 7C 08 02 A6 */ mflr r0 /* 802EBB84 002E77E4 90 01 00 44 */ stw r0, 0x44(r1) /* 802EBB88 002E77E8 93 E1 00 3C */ stw r31, 0x3c(r1) /* 802EBB8C 002E77EC 93 C1 00 38 */ stw r30, 0x38(r1) /* 802EBB90 002E77F0 3B C0 00 00 */ li r30, 0 /* 802EBB94 002E77F4 93 A1 00 34 */ stw r29, 0x34(r1) /* 802EBB98 002E77F8 7C 9D 23 78 */ mr r29, r4 /* 802EBB9C 002E77FC 93 81 00 30 */ stw r28, 0x30(r1) /* 802EBBA0 002E7800 7C 7C 1B 78 */ mr r28, r3 /* 802EBBA4 002E7804 4B F8 2B B9 */ bl OSDisableInterrupts /* 802EBBA8 002E7808 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EBBAC 002E780C 3C A0 80 57 */ lis r5, lbl_80571060@ha /* 802EBBB0 002E7810 7C 7F 1B 78 */ mr r31, r3 /* 802EBBB4 002E7814 7C 1D 00 40 */ cmplw r29, r0 /* 802EBBB8 002E7818 38 A5 10 60 */ addi r5, r5, lbl_80571060@l /* 802EBBBC 002E781C 40 80 00 3C */ bge lbl_802EBBF8 /* 802EBBC0 002E7820 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13) /* 802EBBC4 002E7824 2C 03 00 00 */ cmpwi r3, 0 /* 802EBBC8 002E7828 41 82 00 30 */ beq lbl_802EBBF8 /* 802EBBCC 002E782C 7C 1D 00 D0 */ neg r0, r29 /* 802EBBD0 002E7830 7C 65 1A 14 */ add r3, r5, r3 /* 802EBBD4 002E7834 54 00 08 3C */ slwi r0, r0, 1 /* 802EBBD8 002E7838 7C 03 02 2E */ lhzx r0, r3, r0 /* 802EBBDC 002E783C 2C 00 00 00 */ cmpwi r0, 0 /* 802EBBE0 002E7840 41 82 00 18 */ beq lbl_802EBBF8 /* 802EBBE4 002E7844 7C 05 02 2E */ lhzx r0, r5, r0 /* 802EBBE8 002E7848 38 81 00 08 */ addi r4, r1, 8 /* 802EBBEC 002E784C 7C 65 02 14 */ add r3, r5, r0 /* 802EBBF0 002E7850 4B FF F5 FD */ bl UnpackItem /* 802EBBF4 002E7854 48 00 00 08 */ b lbl_802EBBFC lbl_802EBBF8: /* 802EBBF8 002E7858 38 60 00 00 */ li r3, 0 lbl_802EBBFC: /* 802EBBFC 002E785C 2C 03 00 00 */ cmpwi r3, 0 /* 802EBC00 002E7860 41 82 00 24 */ beq lbl_802EBC24 /* 802EBC04 002E7864 88 01 00 10 */ lbz r0, 0x10(r1) /* 802EBC08 002E7868 28 00 00 60 */ cmplwi r0, 0x60 /* 802EBC0C 002E786C 40 82 00 18 */ bne lbl_802EBC24 /* 802EBC10 002E7870 80 81 00 20 */ lwz r4, 0x20(r1) /* 802EBC14 002E7874 7F 83 E3 78 */ mr r3, r28 /* 802EBC18 002E7878 80 A1 00 18 */ lwz r5, 0x18(r1) /* 802EBC1C 002E787C 4B D1 83 E5 */ bl memcpy /* 802EBC20 002E7880 3B C0 00 01 */ li r30, 1 lbl_802EBC24: /* 802EBC24 002E7884 7F E3 FB 78 */ mr r3, r31 /* 802EBC28 002E7888 4B F8 2B 5D */ bl OSRestoreInterrupts /* 802EBC2C 002E788C 7F C3 F3 78 */ mr r3, r30 /* 802EBC30 002E7890 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 802EBC34 002E7894 83 C1 00 38 */ lwz r30, 0x38(r1) /* 802EBC38 002E7898 83 A1 00 34 */ lwz r29, 0x34(r1) /* 802EBC3C 002E789C 83 81 00 30 */ lwz r28, 0x30(r1) /* 802EBC40 002E78A0 80 01 00 44 */ lwz r0, 0x44(r1) /* 802EBC44 002E78A4 7C 08 03 A6 */ mtlr r0 /* 802EBC48 002E78A8 38 21 00 40 */ addi r1, r1, 0x40 /* 802EBC4C 002E78AC 4E 80 00 20 */ blr .global SCFindU32Item SCFindU32Item: /* 802EBC50 002E78B0 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802EBC54 002E78B4 7C 08 02 A6 */ mflr r0 /* 802EBC58 002E78B8 90 01 00 44 */ stw r0, 0x44(r1) /* 802EBC5C 002E78BC 93 E1 00 3C */ stw r31, 0x3c(r1) /* 802EBC60 002E78C0 93 C1 00 38 */ stw r30, 0x38(r1) /* 802EBC64 002E78C4 3B C0 00 00 */ li r30, 0 /* 802EBC68 002E78C8 93 A1 00 34 */ stw r29, 0x34(r1) /* 802EBC6C 002E78CC 7C 9D 23 78 */ mr r29, r4 /* 802EBC70 002E78D0 93 81 00 30 */ stw r28, 0x30(r1) /* 802EBC74 002E78D4 7C 7C 1B 78 */ mr r28, r3 /* 802EBC78 002E78D8 4B F8 2A E5 */ bl OSDisableInterrupts /* 802EBC7C 002E78DC 80 0D AF 1C */ lwz r0, lbl_806401DC-_SDA_BASE_(r13) /* 802EBC80 002E78E0 3C A0 80 57 */ lis r5, lbl_80571060@ha /* 802EBC84 002E78E4 7C 7F 1B 78 */ mr r31, r3 /* 802EBC88 002E78E8 7C 1D 00 40 */ cmplw r29, r0 /* 802EBC8C 002E78EC 38 A5 10 60 */ addi r5, r5, lbl_80571060@l /* 802EBC90 002E78F0 40 80 00 3C */ bge lbl_802EBCCC /* 802EBC94 002E78F4 80 6D AF 20 */ lwz r3, lbl_806401E0-_SDA_BASE_(r13) /* 802EBC98 002E78F8 2C 03 00 00 */ cmpwi r3, 0 /* 802EBC9C 002E78FC 41 82 00 30 */ beq lbl_802EBCCC /* 802EBCA0 002E7900 7C 1D 00 D0 */ neg r0, r29 /* 802EBCA4 002E7904 7C 65 1A 14 */ add r3, r5, r3 /* 802EBCA8 002E7908 54 00 08 3C */ slwi r0, r0, 1 /* 802EBCAC 002E790C 7C 03 02 2E */ lhzx r0, r3, r0 /* 802EBCB0 002E7910 2C 00 00 00 */ cmpwi r0, 0 /* 802EBCB4 002E7914 41 82 00 18 */ beq lbl_802EBCCC /* 802EBCB8 002E7918 7C 05 02 2E */ lhzx r0, r5, r0 /* 802EBCBC 002E791C 38 81 00 08 */ addi r4, r1, 8 /* 802EBCC0 002E7920 7C 65 02 14 */ add r3, r5, r0 /* 802EBCC4 002E7924 4B FF F5 29 */ bl UnpackItem /* 802EBCC8 002E7928 48 00 00 08 */ b lbl_802EBCD0 lbl_802EBCCC: /* 802EBCCC 002E792C 38 60 00 00 */ li r3, 0 lbl_802EBCD0: /* 802EBCD0 002E7930 2C 03 00 00 */ cmpwi r3, 0 /* 802EBCD4 002E7934 41 82 00 24 */ beq lbl_802EBCF8 /* 802EBCD8 002E7938 88 01 00 10 */ lbz r0, 0x10(r1) /* 802EBCDC 002E793C 28 00 00 A0 */ cmplwi r0, 0xa0 /* 802EBCE0 002E7940 40 82 00 18 */ bne lbl_802EBCF8 /* 802EBCE4 002E7944 80 81 00 20 */ lwz r4, 0x20(r1) /* 802EBCE8 002E7948 7F 83 E3 78 */ mr r3, r28 /* 802EBCEC 002E794C 80 A1 00 18 */ lwz r5, 0x18(r1) /* 802EBCF0 002E7950 4B D1 83 11 */ bl memcpy /* 802EBCF4 002E7954 3B C0 00 01 */ li r30, 1 lbl_802EBCF8: /* 802EBCF8 002E7958 7F E3 FB 78 */ mr r3, r31 /* 802EBCFC 002E795C 4B F8 2A 89 */ bl OSRestoreInterrupts /* 802EBD00 002E7960 7F C3 F3 78 */ mr r3, r30 /* 802EBD04 002E7964 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 802EBD08 002E7968 83 C1 00 38 */ lwz r30, 0x38(r1) /* 802EBD0C 002E796C 83 A1 00 34 */ lwz r29, 0x34(r1) /* 802EBD10 002E7970 83 81 00 30 */ lwz r28, 0x30(r1) /* 802EBD14 002E7974 80 01 00 44 */ lwz r0, 0x44(r1) /* 802EBD18 002E7978 7C 08 03 A6 */ mtlr r0 /* 802EBD1C 002E797C 38 21 00 40 */ addi r1, r1, 0x40 /* 802EBD20 002E7980 4E 80 00 20 */ blr .global SCReplaceU8Item SCReplaceU8Item: /* 802EBD24 002E7984 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802EBD28 002E7988 7C 08 02 A6 */ mflr r0 /* 802EBD2C 002E798C 38 A0 00 60 */ li r5, 0x60 /* 802EBD30 002E7990 90 01 00 14 */ stw r0, 0x14(r1) /* 802EBD34 002E7994 98 61 00 08 */ stb r3, 8(r1) /* 802EBD38 002E7998 38 61 00 08 */ addi r3, r1, 8 /* 802EBD3C 002E799C 4B FF FC 55 */ bl SCReplaceIntegerItem /* 802EBD40 002E79A0 80 01 00 14 */ lwz r0, 0x14(r1) /* 802EBD44 002E79A4 7C 08 03 A6 */ mtlr r0 /* 802EBD48 002E79A8 38 21 00 10 */ addi r1, r1, 0x10 /* 802EBD4C 002E79AC 4E 80 00 20 */ blr __SCFlushSyncCallback: /* 802EBD50 002E79B0 3C 60 80 57 */ lis r3, lbl_80570EC0@ha /* 802EBD54 002E79B4 38 63 0E C0 */ addi r3, r3, lbl_80570EC0@l /* 802EBD58 002E79B8 4B F8 67 08 */ b OSWakeupThread .global SCFlush SCFlush: /* 802EBD5C 002E79BC 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802EBD60 002E79C0 7C 08 02 A6 */ mflr r0 /* 802EBD64 002E79C4 3C 60 80 2F */ lis r3, __SCFlushSyncCallback@ha /* 802EBD68 002E79C8 90 01 00 14 */ stw r0, 0x14(r1) /* 802EBD6C 002E79CC 38 63 BD 50 */ addi r3, r3, __SCFlushSyncCallback@l /* 802EBD70 002E79D0 93 E1 00 0C */ stw r31, 0xc(r1) /* 802EBD74 002E79D4 93 C1 00 08 */ stw r30, 8(r1) /* 802EBD78 002E79D8 48 00 00 55 */ bl SCFlushAsync /* 802EBD7C 002E79DC 4B F8 29 E1 */ bl OSDisableInterrupts /* 802EBD80 002E79E0 3F E0 80 57 */ lis r31, lbl_80570EC0@ha /* 802EBD84 002E79E4 7C 7E 1B 78 */ mr r30, r3 /* 802EBD88 002E79E8 3B FF 0E C0 */ addi r31, r31, lbl_80570EC0@l /* 802EBD8C 002E79EC 48 00 00 0C */ b lbl_802EBD98 lbl_802EBD90: /* 802EBD90 002E79F0 7F E3 FB 78 */ mr r3, r31 /* 802EBD94 002E79F4 4B F8 65 E1 */ bl OSSleepThread lbl_802EBD98: /* 802EBD98 002E79F8 80 1F 01 80 */ lwz r0, 0x180(r31) /* 802EBD9C 002E79FC 2C 00 00 00 */ cmpwi r0, 0 /* 802EBDA0 002E7A00 40 82 FF F0 */ bne lbl_802EBD90 /* 802EBDA4 002E7A04 83 FF 01 84 */ lwz r31, 0x184(r31) /* 802EBDA8 002E7A08 7F C3 F3 78 */ mr r3, r30 /* 802EBDAC 002E7A0C 4B F8 29 D9 */ bl OSRestoreInterrupts /* 802EBDB0 002E7A10 7F E3 FB 78 */ mr r3, r31 /* 802EBDB4 002E7A14 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EBDB8 002E7A18 83 C1 00 08 */ lwz r30, 8(r1) /* 802EBDBC 002E7A1C 80 01 00 14 */ lwz r0, 0x14(r1) /* 802EBDC0 002E7A20 7C 08 03 A6 */ mtlr r0 /* 802EBDC4 002E7A24 38 21 00 10 */ addi r1, r1, 0x10 /* 802EBDC8 002E7A28 4E 80 00 20 */ blr .global SCFlushAsync SCFlushAsync: /* 802EBDCC 002E7A2C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802EBDD0 002E7A30 7C 08 02 A6 */ mflr r0 /* 802EBDD4 002E7A34 90 01 00 24 */ stw r0, 0x24(r1) /* 802EBDD8 002E7A38 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802EBDDC 002E7A3C 93 C1 00 18 */ stw r30, 0x18(r1) /* 802EBDE0 002E7A40 7C 7E 1B 78 */ mr r30, r3 /* 802EBDE4 002E7A44 93 A1 00 14 */ stw r29, 0x14(r1) /* 802EBDE8 002E7A48 3F A0 80 57 */ lis r29, lbl_80570EC0@ha /* 802EBDEC 002E7A4C 3B BD 0E C0 */ addi r29, r29, lbl_80570EC0@l /* 802EBDF0 002E7A50 93 81 00 10 */ stw r28, 0x10(r1) /* 802EBDF4 002E7A54 3B 9D 00 00 */ addi r28, r29, 0 /* 802EBDF8 002E7A58 4B F8 29 65 */ bl OSDisableInterrupts /* 802EBDFC 002E7A5C 88 0D AF 10 */ lbz r0, lbl_806401D0-_SDA_BASE_(r13) /* 802EBE00 002E7A60 7C 7F 1B 78 */ mr r31, r3 /* 802EBE04 002E7A64 2C 00 00 00 */ cmpwi r0, 0 /* 802EBE08 002E7A68 40 82 01 90 */ bne lbl_802EBF98 /* 802EBE0C 002E7A6C 38 00 00 00 */ li r0, 0 /* 802EBE10 002E7A70 38 60 00 01 */ li r3, 1 /* 802EBE14 002E7A74 7C 1E 00 40 */ cmplw r30, r0 /* 802EBE18 002E7A78 98 6D AF 10 */ stb r3, lbl_806401D0-_SDA_BASE_(r13) /* 802EBE1C 002E7A7C 40 82 00 0C */ bne lbl_802EBE28 /* 802EBE20 002E7A80 3F C0 80 2F */ lis r30, __SCFlushSyncCallback@ha /* 802EBE24 002E7A84 3B DE BD 50 */ addi r30, r30, __SCFlushSyncCallback@l lbl_802EBE28: /* 802EBE28 002E7A88 88 0D AF 25 */ lbz r0, lbl_806401E5-_SDA_BASE_(r13) /* 802EBE2C 002E7A8C 38 80 00 00 */ li r4, 0 /* 802EBE30 002E7A90 38 60 40 00 */ li r3, 0x4000 /* 802EBE34 002E7A94 93 DC 01 80 */ stw r30, 0x180(r28) /* 802EBE38 002E7A98 2C 00 00 00 */ cmpwi r0, 0 /* 802EBE3C 002E7A9C 90 9C 01 84 */ stw r4, 0x184(r28) /* 802EBE40 002E7AA0 98 9C 01 55 */ stb r4, 0x155(r28) /* 802EBE44 002E7AA4 90 7C 01 88 */ stw r3, 0x188(r28) /* 802EBE48 002E7AA8 41 82 00 0C */ beq lbl_802EBE54 /* 802EBE4C 002E7AAC 38 00 00 01 */ li r0, 1 /* 802EBE50 002E7AB0 48 00 00 08 */ b lbl_802EBE58 lbl_802EBE54: /* 802EBE54 002E7AB4 38 00 00 00 */ li r0, 0 lbl_802EBE58: /* 802EBE58 002E7AB8 2C 00 00 00 */ cmpwi r0, 0 /* 802EBE5C 002E7ABC 40 82 00 64 */ bne lbl_802EBEC0 /* 802EBE60 002E7AC0 7F E3 FB 78 */ mr r3, r31 /* 802EBE64 002E7AC4 4B F8 29 21 */ bl OSRestoreInterrupts /* 802EBE68 002E7AC8 3B BD 00 00 */ addi r29, r29, 0 /* 802EBE6C 002E7ACC 80 1D 01 84 */ lwz r0, 0x184(r29) /* 802EBE70 002E7AD0 2C 00 00 00 */ cmpwi r0, 0 /* 802EBE74 002E7AD4 41 82 00 0C */ beq lbl_802EBE80 /* 802EBE78 002E7AD8 38 00 00 01 */ li r0, 1 /* 802EBE7C 002E7ADC 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) lbl_802EBE80: /* 802EBE80 002E7AE0 81 9D 01 80 */ lwz r12, 0x180(r29) /* 802EBE84 002E7AE4 2C 0C 00 00 */ cmpwi r12, 0 /* 802EBE88 002E7AE8 41 82 00 2C */ beq lbl_802EBEB4 /* 802EBE8C 002E7AEC 3B C0 00 00 */ li r30, 0 /* 802EBE90 002E7AF0 80 7D 01 84 */ lwz r3, 0x184(r29) /* 802EBE94 002E7AF4 93 DD 01 80 */ stw r30, 0x180(r29) /* 802EBE98 002E7AF8 7D 89 03 A6 */ mtctr r12 /* 802EBE9C 002E7AFC 4E 80 04 21 */ bctrl /* 802EBEA0 002E7B00 80 1D 00 00 */ lwz r0, 0(r29) /* 802EBEA4 002E7B04 7C 00 F0 40 */ cmplw r0, r30 /* 802EBEA8 002E7B08 41 82 00 0C */ beq lbl_802EBEB4 /* 802EBEAC 002E7B0C 7F A3 EB 78 */ mr r3, r29 /* 802EBEB0 002E7B10 4B F8 65 B1 */ bl OSWakeupThread lbl_802EBEB4: /* 802EBEB4 002E7B14 80 1D 01 84 */ lwz r0, 0x184(r29) /* 802EBEB8 002E7B18 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13) /* 802EBEBC 002E7B1C 48 00 01 0C */ b lbl_802EBFC8 lbl_802EBEC0: /* 802EBEC0 002E7B20 3B C0 00 00 */ li r30, 0 /* 802EBEC4 002E7B24 38 7D 41 A0 */ addi r3, r29, 0x41a0 /* 802EBEC8 002E7B28 9B CD AF 25 */ stb r30, lbl_806401E5-_SDA_BASE_(r13) /* 802EBECC 002E7B2C 38 9D 01 A0 */ addi r4, r29, 0x1a0 /* 802EBED0 002E7B30 38 A0 40 00 */ li r5, 0x4000 /* 802EBED4 002E7B34 4B D1 81 2D */ bl memcpy /* 802EBED8 002E7B38 7F E3 FB 78 */ mr r3, r31 /* 802EBEDC 002E7B3C 4B F8 28 A9 */ bl OSRestoreInterrupts /* 802EBEE0 002E7B40 3C 60 80 40 */ lis r3, lbl_803FE070@ha /* 802EBEE4 002E7B44 3F E0 80 2F */ lis r31, MyNandCallback@ha /* 802EBEE8 002E7B48 9B DC 01 54 */ stb r30, 0x154(r28) /* 802EBEEC 002E7B4C 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l /* 802EBEF0 002E7B50 38 9C 01 4C */ addi r4, r28, 0x14c /* 802EBEF4 002E7B54 38 BF BF E8 */ addi r5, r31, MyNandCallback@l /* 802EBEF8 002E7B58 38 DC 00 94 */ addi r6, r28, 0x94 /* 802EBEFC 002E7B5C 4B FF E3 CD */ bl NANDPrivateGetTypeAsync /* 802EBF00 002E7B60 2C 03 00 00 */ cmpwi r3, 0 /* 802EBF04 002E7B64 41 82 00 C4 */ beq lbl_802EBFC8 /* 802EBF08 002E7B68 38 BD 00 00 */ addi r5, r29, 0 /* 802EBF0C 002E7B6C 38 60 00 02 */ li r3, 2 /* 802EBF10 002E7B70 88 05 01 55 */ lbz r0, 0x155(r5) /* 802EBF14 002E7B74 90 65 01 84 */ stw r3, 0x184(r5) /* 802EBF18 002E7B78 2C 00 00 00 */ cmpwi r0, 0 /* 802EBF1C 002E7B7C 41 82 00 24 */ beq lbl_802EBF40 /* 802EBF20 002E7B80 38 00 00 09 */ li r0, 9 /* 802EBF24 002E7B84 38 65 00 08 */ addi r3, r5, 8 /* 802EBF28 002E7B88 98 05 01 54 */ stb r0, 0x154(r5) /* 802EBF2C 002E7B8C 38 9F BF E8 */ addi r4, r31, -16408 /* 802EBF30 002E7B90 38 A5 00 94 */ addi r5, r5, 0x94 /* 802EBF34 002E7B94 4B FF C7 C1 */ bl NANDCloseAsync /* 802EBF38 002E7B98 2C 03 00 00 */ cmpwi r3, 0 /* 802EBF3C 002E7B9C 41 82 00 8C */ beq lbl_802EBFC8 lbl_802EBF40: /* 802EBF40 002E7BA0 3B BD 00 00 */ addi r29, r29, 0 /* 802EBF44 002E7BA4 80 1D 01 84 */ lwz r0, 0x184(r29) /* 802EBF48 002E7BA8 2C 00 00 00 */ cmpwi r0, 0 /* 802EBF4C 002E7BAC 41 82 00 0C */ beq lbl_802EBF58 /* 802EBF50 002E7BB0 38 00 00 01 */ li r0, 1 /* 802EBF54 002E7BB4 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) lbl_802EBF58: /* 802EBF58 002E7BB8 81 9D 01 80 */ lwz r12, 0x180(r29) /* 802EBF5C 002E7BBC 2C 0C 00 00 */ cmpwi r12, 0 /* 802EBF60 002E7BC0 41 82 00 2C */ beq lbl_802EBF8C /* 802EBF64 002E7BC4 3B E0 00 00 */ li r31, 0 /* 802EBF68 002E7BC8 80 7D 01 84 */ lwz r3, 0x184(r29) /* 802EBF6C 002E7BCC 93 FD 01 80 */ stw r31, 0x180(r29) /* 802EBF70 002E7BD0 7D 89 03 A6 */ mtctr r12 /* 802EBF74 002E7BD4 4E 80 04 21 */ bctrl /* 802EBF78 002E7BD8 80 1D 00 00 */ lwz r0, 0(r29) /* 802EBF7C 002E7BDC 7C 00 F8 40 */ cmplw r0, r31 /* 802EBF80 002E7BE0 41 82 00 0C */ beq lbl_802EBF8C /* 802EBF84 002E7BE4 7F A3 EB 78 */ mr r3, r29 /* 802EBF88 002E7BE8 4B F8 64 D9 */ bl OSWakeupThread lbl_802EBF8C: /* 802EBF8C 002E7BEC 80 1D 01 84 */ lwz r0, 0x184(r29) /* 802EBF90 002E7BF0 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13) /* 802EBF94 002E7BF4 48 00 00 34 */ b lbl_802EBFC8 lbl_802EBF98: /* 802EBF98 002E7BF8 2C 1E 00 00 */ cmpwi r30, 0 /* 802EBF9C 002E7BFC 41 82 00 24 */ beq lbl_802EBFC0 /* 802EBFA0 002E7C00 28 00 00 01 */ cmplwi r0, 1 /* 802EBFA4 002E7C04 40 82 00 08 */ bne lbl_802EBFAC /* 802EBFA8 002E7C08 48 00 00 08 */ b lbl_802EBFB0 lbl_802EBFAC: /* 802EBFAC 002E7C0C 38 00 00 02 */ li r0, 2 lbl_802EBFB0: /* 802EBFB0 002E7C10 7F CC F3 78 */ mr r12, r30 /* 802EBFB4 002E7C14 7C 03 03 78 */ mr r3, r0 /* 802EBFB8 002E7C18 7D 89 03 A6 */ mtctr r12 /* 802EBFBC 002E7C1C 4E 80 04 21 */ bctrl lbl_802EBFC0: /* 802EBFC0 002E7C20 7F E3 FB 78 */ mr r3, r31 /* 802EBFC4 002E7C24 4B F8 27 C1 */ bl OSRestoreInterrupts lbl_802EBFC8: /* 802EBFC8 002E7C28 80 01 00 24 */ lwz r0, 0x24(r1) /* 802EBFCC 002E7C2C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802EBFD0 002E7C30 83 C1 00 18 */ lwz r30, 0x18(r1) /* 802EBFD4 002E7C34 83 A1 00 14 */ lwz r29, 0x14(r1) /* 802EBFD8 002E7C38 83 81 00 10 */ lwz r28, 0x10(r1) /* 802EBFDC 002E7C3C 7C 08 03 A6 */ mtlr r0 /* 802EBFE0 002E7C40 38 21 00 20 */ addi r1, r1, 0x20 /* 802EBFE4 002E7C44 4E 80 00 20 */ blr MyNandCallback: /* 802EBFE8 002E7C48 94 21 FF F0 */ stwu r1, -0x10(r1) /* 802EBFEC 002E7C4C 7C 08 02 A6 */ mflr r0 /* 802EBFF0 002E7C50 3C E0 80 57 */ lis r7, lbl_80570EC0@ha /* 802EBFF4 002E7C54 90 01 00 14 */ stw r0, 0x14(r1) /* 802EBFF8 002E7C58 38 E7 0E C0 */ addi r7, r7, lbl_80570EC0@l /* 802EBFFC 002E7C5C 93 E1 00 0C */ stw r31, 0xc(r1) /* 802EC000 002E7C60 93 C1 00 08 */ stw r30, 8(r1) /* 802EC004 002E7C64 88 07 01 54 */ lbz r0, 0x154(r7) /* 802EC008 002E7C68 28 00 00 09 */ cmplwi r0, 9 /* 802EC00C 002E7C6C 41 81 02 FC */ bgt lbl_802EC308 /* 802EC010 002E7C70 3C 80 80 44 */ lis r4, lbl_80445A10@ha /* 802EC014 002E7C74 54 00 10 3A */ slwi r0, r0, 2 /* 802EC018 002E7C78 38 84 5A 10 */ addi r4, r4, lbl_80445A10@l /* 802EC01C 002E7C7C 7C 84 00 2E */ lwzx r4, r4, r0 /* 802EC020 002E7C80 7C 89 03 A6 */ mtctr r4 /* 802EC024 002E7C84 4E 80 04 20 */ bctr /* 802EC028 002E7C88 2C 03 00 00 */ cmpwi r3, 0 /* 802EC02C 002E7C8C 40 82 00 54 */ bne lbl_802EC080 /* 802EC030 002E7C90 88 07 01 4C */ lbz r0, 0x14c(r7) /* 802EC034 002E7C94 28 00 00 01 */ cmplwi r0, 1 /* 802EC038 002E7C98 40 82 00 48 */ bne lbl_802EC080 /* 802EC03C 002E7C9C 38 00 00 01 */ li r0, 1 /* 802EC040 002E7CA0 3C 60 80 40 */ lis r3, lbl_803FE070@ha /* 802EC044 002E7CA4 3C A0 80 2F */ lis r5, MyNandCallback@ha /* 802EC048 002E7CA8 98 07 01 54 */ stb r0, 0x154(r7) /* 802EC04C 002E7CAC 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l /* 802EC050 002E7CB0 38 87 01 4C */ addi r4, r7, 0x14c /* 802EC054 002E7CB4 38 A5 BF E8 */ addi r5, r5, MyNandCallback@l /* 802EC058 002E7CB8 38 C7 00 94 */ addi r6, r7, 0x94 /* 802EC05C 002E7CBC 4B FF C2 05 */ bl NANDPrivateGetStatusAsync /* 802EC060 002E7CC0 2C 03 00 00 */ cmpwi r3, 0 /* 802EC064 002E7CC4 40 82 02 0C */ bne lbl_802EC270 /* 802EC068 002E7CC8 48 00 02 A0 */ b lbl_802EC308 /* 802EC06C 002E7CCC 2C 03 00 00 */ cmpwi r3, 0 /* 802EC070 002E7CD0 40 82 00 10 */ bne lbl_802EC080 /* 802EC074 002E7CD4 88 07 01 53 */ lbz r0, 0x153(r7) /* 802EC078 002E7CD8 28 00 00 3F */ cmplwi r0, 0x3f /* 802EC07C 002E7CDC 41 82 00 DC */ beq lbl_802EC158 lbl_802EC080: /* 802EC080 002E7CE0 38 00 00 02 */ li r0, 2 /* 802EC084 002E7CE4 3C 60 80 40 */ lis r3, lbl_803FE070@ha /* 802EC088 002E7CE8 3C 80 80 2F */ lis r4, MyNandCallback@ha /* 802EC08C 002E7CEC 98 07 01 54 */ stb r0, 0x154(r7) /* 802EC090 002E7CF0 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l /* 802EC094 002E7CF4 38 A7 00 94 */ addi r5, r7, 0x94 /* 802EC098 002E7CF8 38 84 BF E8 */ addi r4, r4, MyNandCallback@l /* 802EC09C 002E7CFC 4B FF B7 65 */ bl NANDPrivateDeleteAsync /* 802EC0A0 002E7D00 2C 03 00 00 */ cmpwi r3, 0 /* 802EC0A4 002E7D04 40 82 01 CC */ bne lbl_802EC270 /* 802EC0A8 002E7D08 48 00 02 60 */ b lbl_802EC308 /* 802EC0AC 002E7D0C 38 00 00 03 */ li r0, 3 /* 802EC0B0 002E7D10 3C 60 80 40 */ lis r3, lbl_803FE060@ha /* 802EC0B4 002E7D14 3C A0 80 2F */ lis r5, MyNandCallback@ha /* 802EC0B8 002E7D18 98 07 01 54 */ stb r0, 0x154(r7) /* 802EC0BC 002E7D1C 38 63 E0 60 */ addi r3, r3, lbl_803FE060@l /* 802EC0C0 002E7D20 38 87 01 4C */ addi r4, r7, 0x14c /* 802EC0C4 002E7D24 38 A5 BF E8 */ addi r5, r5, MyNandCallback@l /* 802EC0C8 002E7D28 38 C7 00 94 */ addi r6, r7, 0x94 /* 802EC0CC 002E7D2C 4B FF E1 FD */ bl NANDPrivateGetTypeAsync /* 802EC0D0 002E7D30 2C 03 00 00 */ cmpwi r3, 0 /* 802EC0D4 002E7D34 40 82 01 9C */ bne lbl_802EC270 /* 802EC0D8 002E7D38 48 00 02 30 */ b lbl_802EC308 /* 802EC0DC 002E7D3C 2C 03 00 00 */ cmpwi r3, 0 /* 802EC0E0 002E7D40 40 82 00 10 */ bne lbl_802EC0F0 /* 802EC0E4 002E7D44 88 07 01 4C */ lbz r0, 0x14c(r7) /* 802EC0E8 002E7D48 28 00 00 02 */ cmplwi r0, 2 /* 802EC0EC 002E7D4C 41 82 00 38 */ beq lbl_802EC124 lbl_802EC0F0: /* 802EC0F0 002E7D50 38 00 00 04 */ li r0, 4 /* 802EC0F4 002E7D54 3C 60 80 40 */ lis r3, lbl_803FE060@ha /* 802EC0F8 002E7D58 3C C0 80 2F */ lis r6, MyNandCallback@ha /* 802EC0FC 002E7D5C 98 07 01 54 */ stb r0, 0x154(r7) /* 802EC100 002E7D60 38 63 E0 60 */ addi r3, r3, lbl_803FE060@l /* 802EC104 002E7D64 38 E7 00 94 */ addi r7, r7, 0x94 /* 802EC108 002E7D68 38 C6 BF E8 */ addi r6, r6, MyNandCallback@l /* 802EC10C 002E7D6C 38 80 00 3F */ li r4, 0x3f /* 802EC110 002E7D70 38 A0 00 00 */ li r5, 0 /* 802EC114 002E7D74 4B FF BD 41 */ bl NANDPrivateCreateDirAsync /* 802EC118 002E7D78 2C 03 00 00 */ cmpwi r3, 0 /* 802EC11C 002E7D7C 40 82 01 54 */ bne lbl_802EC270 /* 802EC120 002E7D80 48 00 01 E8 */ b lbl_802EC308 lbl_802EC124: /* 802EC124 002E7D84 38 00 00 05 */ li r0, 5 /* 802EC128 002E7D88 3C 60 80 40 */ lis r3, lbl_803FE070@ha /* 802EC12C 002E7D8C 3C C0 80 2F */ lis r6, MyNandCallback@ha /* 802EC130 002E7D90 98 07 01 54 */ stb r0, 0x154(r7) /* 802EC134 002E7D94 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l /* 802EC138 002E7D98 38 E7 00 94 */ addi r7, r7, 0x94 /* 802EC13C 002E7D9C 38 C6 BF E8 */ addi r6, r6, MyNandCallback@l /* 802EC140 002E7DA0 38 80 00 3F */ li r4, 0x3f /* 802EC144 002E7DA4 38 A0 00 00 */ li r5, 0 /* 802EC148 002E7DA8 4B FF B5 91 */ bl NANDPrivateCreateAsync /* 802EC14C 002E7DAC 2C 03 00 00 */ cmpwi r3, 0 /* 802EC150 002E7DB0 40 82 01 20 */ bne lbl_802EC270 /* 802EC154 002E7DB4 48 00 01 B4 */ b lbl_802EC308 lbl_802EC158: /* 802EC158 002E7DB8 38 00 00 06 */ li r0, 6 /* 802EC15C 002E7DBC 3C 60 80 40 */ lis r3, lbl_803FE070@ha /* 802EC160 002E7DC0 3C C0 80 2F */ lis r6, MyNandCallback@ha /* 802EC164 002E7DC4 98 07 01 54 */ stb r0, 0x154(r7) /* 802EC168 002E7DC8 38 87 00 08 */ addi r4, r7, 8 /* 802EC16C 002E7DCC 38 63 E0 70 */ addi r3, r3, lbl_803FE070@l /* 802EC170 002E7DD0 38 C6 BF E8 */ addi r6, r6, MyNandCallback@l /* 802EC174 002E7DD4 38 E7 00 94 */ addi r7, r7, 0x94 /* 802EC178 002E7DD8 38 A0 00 02 */ li r5, 2 /* 802EC17C 002E7DDC 4B FF C4 1D */ bl NANDPrivateOpenAsync /* 802EC180 002E7DE0 2C 03 00 00 */ cmpwi r3, 0 /* 802EC184 002E7DE4 40 82 00 EC */ bne lbl_802EC270 /* 802EC188 002E7DE8 48 00 01 80 */ b lbl_802EC308 /* 802EC18C 002E7DEC 2C 03 00 00 */ cmpwi r3, 0 /* 802EC190 002E7DF0 40 82 00 E0 */ bne lbl_802EC270 /* 802EC194 002E7DF4 38 60 00 01 */ li r3, 1 /* 802EC198 002E7DF8 38 00 00 07 */ li r0, 7 /* 802EC19C 002E7DFC 3C 80 80 57 */ lis r4, lbl_80575060@ha /* 802EC1A0 002E7E00 3C C0 80 2F */ lis r6, MyNandCallback@ha /* 802EC1A4 002E7E04 98 67 01 55 */ stb r3, 0x155(r7) /* 802EC1A8 002E7E08 38 67 00 08 */ addi r3, r7, 8 /* 802EC1AC 002E7E0C 80 A7 01 88 */ lwz r5, 0x188(r7) /* 802EC1B0 002E7E10 38 84 50 60 */ addi r4, r4, lbl_80575060@l /* 802EC1B4 002E7E14 98 07 01 54 */ stb r0, 0x154(r7) /* 802EC1B8 002E7E18 38 C6 BF E8 */ addi r6, r6, MyNandCallback@l /* 802EC1BC 002E7E1C 38 E7 00 94 */ addi r7, r7, 0x94 /* 802EC1C0 002E7E20 4B FF B8 49 */ bl NANDWriteAsync /* 802EC1C4 002E7E24 2C 03 00 00 */ cmpwi r3, 0 /* 802EC1C8 002E7E28 40 82 00 A8 */ bne lbl_802EC270 /* 802EC1CC 002E7E2C 48 00 01 3C */ b lbl_802EC308 /* 802EC1D0 002E7E30 80 07 01 88 */ lwz r0, 0x188(r7) /* 802EC1D4 002E7E34 7C 03 00 40 */ cmplw r3, r0 /* 802EC1D8 002E7E38 40 82 00 98 */ bne lbl_802EC270 /* 802EC1DC 002E7E3C 38 60 00 00 */ li r3, 0 /* 802EC1E0 002E7E40 38 00 00 08 */ li r0, 8 /* 802EC1E4 002E7E44 3C 80 80 2F */ lis r4, MyNandCallback@ha /* 802EC1E8 002E7E48 98 67 01 55 */ stb r3, 0x155(r7) /* 802EC1EC 002E7E4C 38 67 00 08 */ addi r3, r7, 8 /* 802EC1F0 002E7E50 38 A7 00 94 */ addi r5, r7, 0x94 /* 802EC1F4 002E7E54 98 07 01 54 */ stb r0, 0x154(r7) /* 802EC1F8 002E7E58 38 84 BF E8 */ addi r4, r4, MyNandCallback@l /* 802EC1FC 002E7E5C 4B FF C4 F9 */ bl NANDCloseAsync /* 802EC200 002E7E60 2C 03 00 00 */ cmpwi r3, 0 /* 802EC204 002E7E64 40 82 00 6C */ bne lbl_802EC270 /* 802EC208 002E7E68 48 00 01 00 */ b lbl_802EC308 /* 802EC20C 002E7E6C 2C 03 00 00 */ cmpwi r3, 0 /* 802EC210 002E7E70 40 82 00 60 */ bne lbl_802EC270 /* 802EC214 002E7E74 3F C0 80 57 */ lis r30, lbl_80570EC0@ha /* 802EC218 002E7E78 3B DE 0E C0 */ addi r30, r30, lbl_80570EC0@l /* 802EC21C 002E7E7C 80 1E 01 84 */ lwz r0, 0x184(r30) /* 802EC220 002E7E80 2C 00 00 00 */ cmpwi r0, 0 /* 802EC224 002E7E84 41 82 00 0C */ beq lbl_802EC230 /* 802EC228 002E7E88 38 00 00 01 */ li r0, 1 /* 802EC22C 002E7E8C 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) lbl_802EC230: /* 802EC230 002E7E90 81 9E 01 80 */ lwz r12, 0x180(r30) /* 802EC234 002E7E94 2C 0C 00 00 */ cmpwi r12, 0 /* 802EC238 002E7E98 41 82 00 2C */ beq lbl_802EC264 /* 802EC23C 002E7E9C 3B E0 00 00 */ li r31, 0 /* 802EC240 002E7EA0 80 7E 01 84 */ lwz r3, 0x184(r30) /* 802EC244 002E7EA4 93 FE 01 80 */ stw r31, 0x180(r30) /* 802EC248 002E7EA8 7D 89 03 A6 */ mtctr r12 /* 802EC24C 002E7EAC 4E 80 04 21 */ bctrl /* 802EC250 002E7EB0 80 1E 00 00 */ lwz r0, 0(r30) /* 802EC254 002E7EB4 7C 00 F8 40 */ cmplw r0, r31 /* 802EC258 002E7EB8 41 82 00 0C */ beq lbl_802EC264 /* 802EC25C 002E7EBC 7F C3 F3 78 */ mr r3, r30 /* 802EC260 002E7EC0 4B F8 62 01 */ bl OSWakeupThread lbl_802EC264: /* 802EC264 002E7EC4 80 1E 01 84 */ lwz r0, 0x184(r30) /* 802EC268 002E7EC8 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13) /* 802EC26C 002E7ECC 48 00 00 9C */ b lbl_802EC308 lbl_802EC270: /* 802EC270 002E7ED0 3C A0 80 57 */ lis r5, lbl_80570EC0@ha /* 802EC274 002E7ED4 38 60 00 02 */ li r3, 2 /* 802EC278 002E7ED8 38 A5 0E C0 */ addi r5, r5, lbl_80570EC0@l /* 802EC27C 002E7EDC 88 05 01 55 */ lbz r0, 0x155(r5) /* 802EC280 002E7EE0 90 65 01 84 */ stw r3, 0x184(r5) /* 802EC284 002E7EE4 2C 00 00 00 */ cmpwi r0, 0 /* 802EC288 002E7EE8 41 82 00 28 */ beq lbl_802EC2B0 /* 802EC28C 002E7EEC 38 00 00 09 */ li r0, 9 /* 802EC290 002E7EF0 3C 80 80 2F */ lis r4, MyNandCallback@ha /* 802EC294 002E7EF4 98 05 01 54 */ stb r0, 0x154(r5) /* 802EC298 002E7EF8 38 65 00 08 */ addi r3, r5, 8 /* 802EC29C 002E7EFC 38 84 BF E8 */ addi r4, r4, MyNandCallback@l /* 802EC2A0 002E7F00 38 A5 00 94 */ addi r5, r5, 0x94 /* 802EC2A4 002E7F04 4B FF C4 51 */ bl NANDCloseAsync /* 802EC2A8 002E7F08 2C 03 00 00 */ cmpwi r3, 0 /* 802EC2AC 002E7F0C 41 82 00 5C */ beq lbl_802EC308 lbl_802EC2B0: /* 802EC2B0 002E7F10 3F C0 80 57 */ lis r30, lbl_80570EC0@ha /* 802EC2B4 002E7F14 3B DE 0E C0 */ addi r30, r30, lbl_80570EC0@l /* 802EC2B8 002E7F18 80 1E 01 84 */ lwz r0, 0x184(r30) /* 802EC2BC 002E7F1C 2C 00 00 00 */ cmpwi r0, 0 /* 802EC2C0 002E7F20 41 82 00 0C */ beq lbl_802EC2CC /* 802EC2C4 002E7F24 38 00 00 01 */ li r0, 1 /* 802EC2C8 002E7F28 98 0D AF 25 */ stb r0, lbl_806401E5-_SDA_BASE_(r13) lbl_802EC2CC: /* 802EC2CC 002E7F2C 81 9E 01 80 */ lwz r12, 0x180(r30) /* 802EC2D0 002E7F30 2C 0C 00 00 */ cmpwi r12, 0 /* 802EC2D4 002E7F34 41 82 00 2C */ beq lbl_802EC300 /* 802EC2D8 002E7F38 3B E0 00 00 */ li r31, 0 /* 802EC2DC 002E7F3C 80 7E 01 84 */ lwz r3, 0x184(r30) /* 802EC2E0 002E7F40 93 FE 01 80 */ stw r31, 0x180(r30) /* 802EC2E4 002E7F44 7D 89 03 A6 */ mtctr r12 /* 802EC2E8 002E7F48 4E 80 04 21 */ bctrl /* 802EC2EC 002E7F4C 80 1E 00 00 */ lwz r0, 0(r30) /* 802EC2F0 002E7F50 7C 00 F8 40 */ cmplw r0, r31 /* 802EC2F4 002E7F54 41 82 00 0C */ beq lbl_802EC300 /* 802EC2F8 002E7F58 7F C3 F3 78 */ mr r3, r30 /* 802EC2FC 002E7F5C 4B F8 61 65 */ bl OSWakeupThread lbl_802EC300: /* 802EC300 002E7F60 80 1E 01 84 */ lwz r0, 0x184(r30) /* 802EC304 002E7F64 98 0D AF 10 */ stb r0, lbl_806401D0-_SDA_BASE_(r13) lbl_802EC308: /* 802EC308 002E7F68 80 01 00 14 */ lwz r0, 0x14(r1) /* 802EC30C 002E7F6C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 802EC310 002E7F70 83 C1 00 08 */ lwz r30, 8(r1) /* 802EC314 002E7F74 7C 08 03 A6 */ mtlr r0 /* 802EC318 002E7F78 38 21 00 10 */ addi r1, r1, 0x10 /* 802EC31C 002E7F7C 4E 80 00 20 */ blr