.include "macros.inc" .section .text, "ax" # 0x80006A00 - 0x80406260 ; 0x003FF860 .global nandOpen nandOpen: /* 800492A0 000450E0 94 21 FF A0 */ stwu r1, -0x60(r1) /* 800492A4 000450E4 7C 08 02 A6 */ mflr r0 /* 800492A8 000450E8 90 01 00 64 */ stw r0, 0x64(r1) /* 800492AC 000450EC 39 61 00 60 */ addi r11, r1, 0x60 /* 800492B0 000450F0 4B FB E0 8D */ bl lbl_8000733C /* 800492B4 000450F4 38 00 00 00 */ li r0, 0x0 /* 800492B8 000450F8 90 01 00 08 */ stw r0, 0x8(r1) /* 800492BC 000450FC 7C 9B 23 78 */ mr r27, r4 /* 800492C0 00045100 7C 64 1B 78 */ mr r4, r3 /* 800492C4 00045104 90 01 00 0C */ stw r0, 0xc(r1) /* 800492C8 00045108 7C BC 2B 78 */ mr r28, r5 /* 800492CC 0004510C 7C DD 33 78 */ mr r29, r6 /* 800492D0 00045110 7C FE 3B 78 */ mr r30, r7 /* 800492D4 00045114 90 01 00 10 */ stw r0, 0x10(r1) /* 800492D8 00045118 38 61 00 08 */ addi r3, r1, 0x8 /* 800492DC 0004511C 3B E0 00 00 */ li r31, 0x0 /* 800492E0 00045120 90 01 00 14 */ stw r0, 0x14(r1) /* 800492E4 00045124 90 01 00 18 */ stw r0, 0x18(r1) /* 800492E8 00045128 90 01 00 1C */ stw r0, 0x1c(r1) /* 800492EC 0004512C 90 01 00 20 */ stw r0, 0x20(r1) /* 800492F0 00045130 90 01 00 24 */ stw r0, 0x24(r1) /* 800492F4 00045134 90 01 00 28 */ stw r0, 0x28(r1) /* 800492F8 00045138 90 01 00 2C */ stw r0, 0x2c(r1) /* 800492FC 0004513C 90 01 00 30 */ stw r0, 0x30(r1) /* 80049300 00045140 90 01 00 34 */ stw r0, 0x34(r1) /* 80049304 00045144 90 01 00 38 */ stw r0, 0x38(r1) /* 80049308 00045148 90 01 00 3C */ stw r0, 0x3c(r1) /* 8004930C 0004514C 90 01 00 40 */ stw r0, 0x40(r1) /* 80049310 00045150 90 01 00 44 */ stw r0, 0x44(r1) /* 80049314 00045154 48 00 0A ED */ bl nandGenerateAbsPath /* 80049318 00045158 2C 1E 00 00 */ cmpwi r30, 0x0 /* 8004931C 0004515C 40 82 00 1C */ bne lbl_80049338 /* 80049320 00045160 38 61 00 08 */ addi r3, r1, 0x8 /* 80049324 00045164 48 00 08 4D */ bl nandIsPrivatePath /* 80049328 00045168 2C 03 00 00 */ cmpwi r3, 0x0 /* 8004932C 0004516C 41 82 00 0C */ beq lbl_80049338 /* 80049330 00045170 38 60 FF 9A */ li r3, -0x66 /* 80049334 00045174 48 00 00 64 */ b lbl_80049398 .global lbl_80049338 lbl_80049338: /* 80049338 00045178 2C 1B 00 03 */ cmpwi r27, 0x3 /* 8004933C 0004517C 41 82 00 18 */ beq lbl_80049354 /* 80049340 00045180 2C 1B 00 01 */ cmpwi r27, 0x1 /* 80049344 00045184 41 82 00 18 */ beq lbl_8004935C /* 80049348 00045188 2C 1B 00 02 */ cmpwi r27, 0x2 /* 8004934C 0004518C 41 82 00 18 */ beq lbl_80049364 /* 80049350 00045190 48 00 00 18 */ b lbl_80049368 .global lbl_80049354 lbl_80049354: /* 80049354 00045194 3B E0 00 03 */ li r31, 0x3 /* 80049358 00045198 48 00 00 10 */ b lbl_80049368 .global lbl_8004935C lbl_8004935C: /* 8004935C 0004519C 3B E0 00 01 */ li r31, 0x1 /* 80049360 000451A0 48 00 00 08 */ b lbl_80049368 .global lbl_80049364 lbl_80049364: /* 80049364 000451A4 3B E0 00 02 */ li r31, 0x2 .global lbl_80049368 lbl_80049368: /* 80049368 000451A8 2C 1D 00 00 */ cmpwi r29, 0x0 /* 8004936C 000451AC 41 82 00 20 */ beq lbl_8004938C /* 80049370 000451B0 3C A0 80 05 */ lis r5, nandOpenCallback@ha /* 80049374 000451B4 7F E4 FB 78 */ mr r4, r31 /* 80049378 000451B8 7F 86 E3 78 */ mr r6, r28 /* 8004937C 000451BC 38 61 00 08 */ addi r3, r1, 0x8 /* 80049380 000451C0 38 A5 95 D0 */ addi r5, r5, nandOpenCallback@l /* 80049384 000451C4 48 00 8A 1D */ bl ISFS_OpenAsync /* 80049388 000451C8 48 00 00 10 */ b lbl_80049398 .global lbl_8004938C lbl_8004938C: /* 8004938C 000451CC 7F E4 FB 78 */ mr r4, r31 /* 80049390 000451D0 38 61 00 08 */ addi r3, r1, 0x8 /* 80049394 000451D4 48 00 89 3D */ bl ISFS_Open .global lbl_80049398 lbl_80049398: /* 80049398 000451D8 39 61 00 60 */ addi r11, r1, 0x60 /* 8004939C 000451DC 4B FB DF ED */ bl lbl_80007388 /* 800493A0 000451E0 80 01 00 64 */ lwz r0, 0x64(r1) /* 800493A4 000451E4 7C 08 03 A6 */ mtlr r0 /* 800493A8 000451E8 38 21 00 60 */ addi r1, r1, 0x60 /* 800493AC 000451EC 4E 80 00 20 */ blr .global NANDOpen NANDOpen: /* 800493B0 000451F0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800493B4 000451F4 7C 08 02 A6 */ mflr r0 /* 800493B8 000451F8 90 01 00 24 */ stw r0, 0x24(r1) /* 800493BC 000451FC 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800493C0 00045200 7C BF 2B 78 */ mr r31, r5 /* 800493C4 00045204 93 C1 00 18 */ stw r30, 0x18(r1) /* 800493C8 00045208 7C 9E 23 78 */ mr r30, r4 /* 800493CC 0004520C 93 A1 00 14 */ stw r29, 0x14(r1) /* 800493D0 00045210 7C 7D 1B 78 */ mr r29, r3 /* 800493D4 00045214 48 00 08 3D */ bl nandIsInitialized /* 800493D8 00045218 2C 03 00 00 */ cmpwi r3, 0x0 /* 800493DC 0004521C 40 82 00 0C */ bne lbl_800493E8 /* 800493E0 00045220 38 60 FF 80 */ li r3, -0x80 /* 800493E4 00045224 48 00 00 3C */ b lbl_80049420 .global lbl_800493E8 lbl_800493E8: /* 800493E8 00045228 7F A3 EB 78 */ mr r3, r29 /* 800493EC 0004522C 7F E4 FB 78 */ mr r4, r31 /* 800493F0 00045230 38 A0 00 00 */ li r5, 0x0 /* 800493F4 00045234 38 C0 00 00 */ li r6, 0x0 /* 800493F8 00045238 38 E0 00 00 */ li r7, 0x0 /* 800493FC 0004523C 4B FF FE A5 */ bl nandOpen /* 80049400 00045240 2C 03 00 00 */ cmpwi r3, 0x0 /* 80049404 00045244 41 80 00 18 */ blt lbl_8004941C /* 80049408 00045248 90 7E 00 00 */ stw r3, 0x0(r30) /* 8004940C 0004524C 38 00 00 01 */ li r0, 0x1 /* 80049410 00045250 38 60 00 00 */ li r3, 0x0 /* 80049414 00045254 98 1E 00 8A */ stb r0, 0x8a(r30) /* 80049418 00045258 48 00 00 08 */ b lbl_80049420 .global lbl_8004941C lbl_8004941C: /* 8004941C 0004525C 48 00 08 35 */ bl nandConvertErrorCode .global lbl_80049420 lbl_80049420: /* 80049420 00045260 80 01 00 24 */ lwz r0, 0x24(r1) /* 80049424 00045264 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80049428 00045268 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8004942C 0004526C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80049430 00045270 7C 08 03 A6 */ mtlr r0 /* 80049434 00045274 38 21 00 20 */ addi r1, r1, 0x20 /* 80049438 00045278 4E 80 00 20 */ blr /* 8004943C 0004527C 00 00 00 00 */ .4byte 0x00000000 .global NANDPrivateOpen NANDPrivateOpen: /* 80049440 00045280 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80049444 00045284 7C 08 02 A6 */ mflr r0 /* 80049448 00045288 90 01 00 24 */ stw r0, 0x24(r1) /* 8004944C 0004528C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80049450 00045290 7C BF 2B 78 */ mr r31, r5 /* 80049454 00045294 93 C1 00 18 */ stw r30, 0x18(r1) /* 80049458 00045298 7C 9E 23 78 */ mr r30, r4 /* 8004945C 0004529C 93 A1 00 14 */ stw r29, 0x14(r1) /* 80049460 000452A0 7C 7D 1B 78 */ mr r29, r3 /* 80049464 000452A4 48 00 07 AD */ bl nandIsInitialized /* 80049468 000452A8 2C 03 00 00 */ cmpwi r3, 0x0 /* 8004946C 000452AC 40 82 00 0C */ bne lbl_80049478 /* 80049470 000452B0 38 60 FF 80 */ li r3, -0x80 /* 80049474 000452B4 48 00 00 3C */ b lbl_800494B0 .global lbl_80049478 lbl_80049478: /* 80049478 000452B8 7F A3 EB 78 */ mr r3, r29 /* 8004947C 000452BC 7F E4 FB 78 */ mr r4, r31 /* 80049480 000452C0 38 A0 00 00 */ li r5, 0x0 /* 80049484 000452C4 38 C0 00 00 */ li r6, 0x0 /* 80049488 000452C8 38 E0 00 01 */ li r7, 0x1 /* 8004948C 000452CC 4B FF FE 15 */ bl nandOpen /* 80049490 000452D0 2C 03 00 00 */ cmpwi r3, 0x0 /* 80049494 000452D4 41 80 00 18 */ blt lbl_800494AC /* 80049498 000452D8 90 7E 00 00 */ stw r3, 0x0(r30) /* 8004949C 000452DC 38 00 00 01 */ li r0, 0x1 /* 800494A0 000452E0 38 60 00 00 */ li r3, 0x0 /* 800494A4 000452E4 98 1E 00 8A */ stb r0, 0x8a(r30) /* 800494A8 000452E8 48 00 00 08 */ b lbl_800494B0 .global lbl_800494AC lbl_800494AC: /* 800494AC 000452EC 48 00 07 A5 */ bl nandConvertErrorCode .global lbl_800494B0 lbl_800494B0: /* 800494B0 000452F0 80 01 00 24 */ lwz r0, 0x24(r1) /* 800494B4 000452F4 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 800494B8 000452F8 83 C1 00 18 */ lwz r30, 0x18(r1) /* 800494BC 000452FC 83 A1 00 14 */ lwz r29, 0x14(r1) /* 800494C0 00045300 7C 08 03 A6 */ mtlr r0 /* 800494C4 00045304 38 21 00 20 */ addi r1, r1, 0x20 /* 800494C8 00045308 4E 80 00 20 */ blr /* 800494CC 0004530C 00 00 00 00 */ .4byte 0x00000000 .global NANDOpenAsync NANDOpenAsync: /* 800494D0 00045310 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800494D4 00045314 7C 08 02 A6 */ mflr r0 /* 800494D8 00045318 90 01 00 24 */ stw r0, 0x24(r1) /* 800494DC 0004531C 39 61 00 20 */ addi r11, r1, 0x20 /* 800494E0 00045320 4B FB DE 5D */ bl lbl_8000733C /* 800494E4 00045324 7C 7B 1B 78 */ mr r27, r3 /* 800494E8 00045328 7C 9C 23 78 */ mr r28, r4 /* 800494EC 0004532C 7C BD 2B 78 */ mr r29, r5 /* 800494F0 00045330 7C DE 33 78 */ mr r30, r6 /* 800494F4 00045334 7C FF 3B 78 */ mr r31, r7 /* 800494F8 00045338 48 00 07 19 */ bl nandIsInitialized /* 800494FC 0004533C 2C 03 00 00 */ cmpwi r3, 0x0 /* 80049500 00045340 40 82 00 0C */ bne lbl_8004950C /* 80049504 00045344 38 60 FF 80 */ li r3, -0x80 /* 80049508 00045348 48 00 00 28 */ b lbl_80049530 .global lbl_8004950C lbl_8004950C: /* 8004950C 0004534C 93 DF 00 04 */ stw r30, 0x4(r31) /* 80049510 00045350 7F 63 DB 78 */ mr r3, r27 /* 80049514 00045354 7F A4 EB 78 */ mr r4, r29 /* 80049518 00045358 7F E5 FB 78 */ mr r5, r31 /* 8004951C 0004535C 93 9F 00 08 */ stw r28, 0x8(r31) /* 80049520 00045360 38 C0 00 01 */ li r6, 0x1 /* 80049524 00045364 38 E0 00 00 */ li r7, 0x0 /* 80049528 00045368 4B FF FD 79 */ bl nandOpen /* 8004952C 0004536C 48 00 07 25 */ bl nandConvertErrorCode .global lbl_80049530 lbl_80049530: /* 80049530 00045370 39 61 00 20 */ addi r11, r1, 0x20 /* 80049534 00045374 4B FB DE 55 */ bl lbl_80007388 /* 80049538 00045378 80 01 00 24 */ lwz r0, 0x24(r1) /* 8004953C 0004537C 7C 08 03 A6 */ mtlr r0 /* 80049540 00045380 38 21 00 20 */ addi r1, r1, 0x20 /* 80049544 00045384 4E 80 00 20 */ blr /* 80049548 00045388 00 00 00 00 */ .4byte 0x00000000 /* 8004954C 0004538C 00 00 00 00 */ .4byte 0x00000000 .global NANDPrivateOpenAsync NANDPrivateOpenAsync: /* 80049550 00045390 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80049554 00045394 7C 08 02 A6 */ mflr r0 /* 80049558 00045398 90 01 00 24 */ stw r0, 0x24(r1) /* 8004955C 0004539C 39 61 00 20 */ addi r11, r1, 0x20 /* 80049560 000453A0 4B FB DD DD */ bl lbl_8000733C /* 80049564 000453A4 7C 7B 1B 78 */ mr r27, r3 /* 80049568 000453A8 7C 9C 23 78 */ mr r28, r4 /* 8004956C 000453AC 7C BD 2B 78 */ mr r29, r5 /* 80049570 000453B0 7C DE 33 78 */ mr r30, r6 /* 80049574 000453B4 7C FF 3B 78 */ mr r31, r7 /* 80049578 000453B8 48 00 06 99 */ bl nandIsInitialized /* 8004957C 000453BC 2C 03 00 00 */ cmpwi r3, 0x0 /* 80049580 000453C0 40 82 00 0C */ bne lbl_8004958C /* 80049584 000453C4 38 60 FF 80 */ li r3, -0x80 /* 80049588 000453C8 48 00 00 28 */ b lbl_800495B0 .global lbl_8004958C lbl_8004958C: /* 8004958C 000453CC 93 DF 00 04 */ stw r30, 0x4(r31) /* 80049590 000453D0 7F 63 DB 78 */ mr r3, r27 /* 80049594 000453D4 7F A4 EB 78 */ mr r4, r29 /* 80049598 000453D8 7F E5 FB 78 */ mr r5, r31 /* 8004959C 000453DC 93 9F 00 08 */ stw r28, 0x8(r31) /* 800495A0 000453E0 38 C0 00 01 */ li r6, 0x1 /* 800495A4 000453E4 38 E0 00 01 */ li r7, 0x1 /* 800495A8 000453E8 4B FF FC F9 */ bl nandOpen /* 800495AC 000453EC 48 00 06 A5 */ bl nandConvertErrorCode .global lbl_800495B0 lbl_800495B0: /* 800495B0 000453F0 39 61 00 20 */ addi r11, r1, 0x20 /* 800495B4 000453F4 4B FB DD D5 */ bl lbl_80007388 /* 800495B8 000453F8 80 01 00 24 */ lwz r0, 0x24(r1) /* 800495BC 000453FC 7C 08 03 A6 */ mtlr r0 /* 800495C0 00045400 38 21 00 20 */ addi r1, r1, 0x20 /* 800495C4 00045404 4E 80 00 20 */ blr /* 800495C8 00045408 00 00 00 00 */ .4byte 0x00000000 /* 800495CC 0004540C 00 00 00 00 */ .4byte 0x00000000 .global nandOpenCallback nandOpenCallback: /* 800495D0 00045410 94 21 FF F0 */ stwu r1, -0x10(r1) /* 800495D4 00045414 7C 08 02 A6 */ mflr r0 /* 800495D8 00045418 2C 03 00 00 */ cmpwi r3, 0x0 /* 800495DC 0004541C 90 01 00 14 */ stw r0, 0x14(r1) /* 800495E0 00045420 93 E1 00 0C */ stw r31, 0xc(r1) /* 800495E4 00045424 7C 9F 23 78 */ mr r31, r4 /* 800495E8 00045428 41 80 00 38 */ blt lbl_80049620 /* 800495EC 0004542C 80 A4 00 08 */ lwz r5, 0x8(r4) /* 800495F0 00045430 38 C0 00 02 */ li r6, 0x2 /* 800495F4 00045434 38 00 00 01 */ li r0, 0x1 /* 800495F8 00045438 90 65 00 00 */ stw r3, 0x0(r5) /* 800495FC 0004543C 38 60 00 00 */ li r3, 0x0 /* 80049600 00045440 80 A4 00 08 */ lwz r5, 0x8(r4) /* 80049604 00045444 98 C5 00 89 */ stb r6, 0x89(r5) /* 80049608 00045448 80 A4 00 08 */ lwz r5, 0x8(r4) /* 8004960C 0004544C 98 05 00 8A */ stb r0, 0x8a(r5) /* 80049610 00045450 81 84 00 04 */ lwz r12, 0x4(r4) /* 80049614 00045454 7D 89 03 A6 */ mtctr r12 /* 80049618 00045458 4E 80 04 21 */ bctrl /* 8004961C 0004545C 48 00 00 18 */ b lbl_80049634 .global lbl_80049620 lbl_80049620: /* 80049620 00045460 48 00 06 31 */ bl nandConvertErrorCode /* 80049624 00045464 81 9F 00 04 */ lwz r12, 0x4(r31) /* 80049628 00045468 7F E4 FB 78 */ mr r4, r31 /* 8004962C 0004546C 7D 89 03 A6 */ mtctr r12 /* 80049630 00045470 4E 80 04 21 */ bctrl .global lbl_80049634 lbl_80049634: /* 80049634 00045474 80 01 00 14 */ lwz r0, 0x14(r1) /* 80049638 00045478 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8004963C 0004547C 7C 08 03 A6 */ mtlr r0 /* 80049640 00045480 38 21 00 10 */ addi r1, r1, 0x10 /* 80049644 00045484 4E 80 00 20 */ blr /* 80049648 00045488 00 00 00 00 */ .4byte 0x00000000 /* 8004964C 0004548C 00 00 00 00 */ .4byte 0x00000000 .global NANDClose NANDClose: /* 80049650 00045490 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80049654 00045494 7C 08 02 A6 */ mflr r0 /* 80049658 00045498 90 01 00 14 */ stw r0, 0x14(r1) /* 8004965C 0004549C 93 E1 00 0C */ stw r31, 0xc(r1) /* 80049660 000454A0 7C 7F 1B 78 */ mr r31, r3 /* 80049664 000454A4 48 00 05 AD */ bl nandIsInitialized /* 80049668 000454A8 2C 03 00 00 */ cmpwi r3, 0x0 /* 8004966C 000454AC 40 82 00 0C */ bne lbl_80049678 /* 80049670 000454B0 38 60 FF 80 */ li r3, -0x80 /* 80049674 000454B4 48 00 00 34 */ b lbl_800496A8 .global lbl_80049678 lbl_80049678: /* 80049678 000454B8 88 1F 00 8A */ lbz r0, 0x8a(r31) /* 8004967C 000454BC 28 00 00 01 */ cmplwi r0, 0x1 /* 80049680 000454C0 41 82 00 0C */ beq lbl_8004968C /* 80049684 000454C4 38 60 FF F8 */ li r3, -0x8 /* 80049688 000454C8 48 00 00 20 */ b lbl_800496A8 .global lbl_8004968C lbl_8004968C: /* 8004968C 000454CC 80 7F 00 00 */ lwz r3, 0x0(r31) /* 80049690 000454D0 48 00 8A E1 */ bl ISFS_Close /* 80049694 000454D4 2C 03 00 00 */ cmpwi r3, 0x0 /* 80049698 000454D8 40 82 00 0C */ bne lbl_800496A4 /* 8004969C 000454DC 38 00 00 02 */ li r0, 0x2 /* 800496A0 000454E0 98 1F 00 8A */ stb r0, 0x8a(r31) .global lbl_800496A4 lbl_800496A4: /* 800496A4 000454E4 48 00 05 AD */ bl nandConvertErrorCode .global lbl_800496A8 lbl_800496A8: /* 800496A8 000454E8 80 01 00 14 */ lwz r0, 0x14(r1) /* 800496AC 000454EC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800496B0 000454F0 7C 08 03 A6 */ mtlr r0 /* 800496B4 000454F4 38 21 00 10 */ addi r1, r1, 0x10 /* 800496B8 000454F8 4E 80 00 20 */ blr /* 800496BC 000454FC 00 00 00 00 */ .4byte 0x00000000 .global NANDCloseAsync NANDCloseAsync: /* 800496C0 00045500 94 21 FF E0 */ stwu r1, -0x20(r1) /* 800496C4 00045504 7C 08 02 A6 */ mflr r0 /* 800496C8 00045508 90 01 00 24 */ stw r0, 0x24(r1) /* 800496CC 0004550C 93 E1 00 1C */ stw r31, 0x1c(r1) /* 800496D0 00045510 7C BF 2B 78 */ mr r31, r5 /* 800496D4 00045514 93 C1 00 18 */ stw r30, 0x18(r1) /* 800496D8 00045518 7C 9E 23 78 */ mr r30, r4 /* 800496DC 0004551C 93 A1 00 14 */ stw r29, 0x14(r1) /* 800496E0 00045520 7C 7D 1B 78 */ mr r29, r3 /* 800496E4 00045524 48 00 05 2D */ bl nandIsInitialized /* 800496E8 00045528 2C 03 00 00 */ cmpwi r3, 0x0 /* 800496EC 0004552C 40 82 00 0C */ bne lbl_800496F8 /* 800496F0 00045530 38 60 FF 80 */ li r3, -0x80 /* 800496F4 00045534 48 00 00 38 */ b lbl_8004972C .global lbl_800496F8 lbl_800496F8: /* 800496F8 00045538 88 1D 00 8A */ lbz r0, 0x8a(r29) /* 800496FC 0004553C 28 00 00 01 */ cmplwi r0, 0x1 /* 80049700 00045540 41 82 00 0C */ beq lbl_8004970C /* 80049704 00045544 38 60 FF F8 */ li r3, -0x8 /* 80049708 00045548 48 00 00 24 */ b lbl_8004972C .global lbl_8004970C lbl_8004970C: /* 8004970C 0004554C 93 DF 00 04 */ stw r30, 0x4(r31) /* 80049710 00045550 3C 80 80 05 */ lis r4, nandCloseCallback@ha /* 80049714 00045554 7F E5 FB 78 */ mr r5, r31 /* 80049718 00045558 93 BF 00 08 */ stw r29, 0x8(r31) /* 8004971C 0004555C 38 84 97 50 */ addi r4, r4, nandCloseCallback@l /* 80049720 00045560 80 7D 00 00 */ lwz r3, 0x0(r29) /* 80049724 00045564 48 00 8A 5D */ bl ISFS_CloseAsync /* 80049728 00045568 48 00 05 29 */ bl nandConvertErrorCode .global lbl_8004972C lbl_8004972C: /* 8004972C 0004556C 80 01 00 24 */ lwz r0, 0x24(r1) /* 80049730 00045570 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80049734 00045574 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80049738 00045578 83 A1 00 14 */ lwz r29, 0x14(r1) /* 8004973C 0004557C 7C 08 03 A6 */ mtlr r0 /* 80049740 00045580 38 21 00 20 */ addi r1, r1, 0x20 /* 80049744 00045584 4E 80 00 20 */ blr /* 80049748 00045588 00 00 00 00 */ .4byte 0x00000000 /* 8004974C 0004558C 00 00 00 00 */ .4byte 0x00000000 .global nandCloseCallback nandCloseCallback: /* 80049750 00045590 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80049754 00045594 7C 08 02 A6 */ mflr r0 /* 80049758 00045598 2C 03 00 00 */ cmpwi r3, 0x0 /* 8004975C 0004559C 90 01 00 14 */ stw r0, 0x14(r1) /* 80049760 000455A0 93 E1 00 0C */ stw r31, 0xc(r1) /* 80049764 000455A4 7C 9F 23 78 */ mr r31, r4 /* 80049768 000455A8 40 82 00 1C */ bne lbl_80049784 /* 8004976C 000455AC 80 A4 00 08 */ lwz r5, 0x8(r4) /* 80049770 000455B0 38 C0 00 07 */ li r6, 0x7 /* 80049774 000455B4 38 00 00 02 */ li r0, 0x2 /* 80049778 000455B8 98 C5 00 89 */ stb r6, 0x89(r5) /* 8004977C 000455BC 80 84 00 08 */ lwz r4, 0x8(r4) /* 80049780 000455C0 98 04 00 8A */ stb r0, 0x8a(r4) .global lbl_80049784 lbl_80049784: /* 80049784 000455C4 48 00 04 CD */ bl nandConvertErrorCode /* 80049788 000455C8 81 9F 00 04 */ lwz r12, 0x4(r31) /* 8004978C 000455CC 7F E4 FB 78 */ mr r4, r31 /* 80049790 000455D0 7D 89 03 A6 */ mtctr r12 /* 80049794 000455D4 4E 80 04 21 */ bctrl /* 80049798 000455D8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8004979C 000455DC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 800497A0 000455E0 7C 08 03 A6 */ mtlr r0 /* 800497A4 000455E4 38 21 00 10 */ addi r1, r1, 0x10 /* 800497A8 000455E8 4E 80 00 20 */ blr /* 800497AC 000455EC 00 00 00 00 */ .4byte 0x00000000