.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global NWC24iOpenFriendList NWC24iOpenFriendList: /* 80304268 002FFEC8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8030426C 002FFECC 7C 08 02 A6 */ mflr r0 /* 80304270 002FFED0 38 80 00 00 */ li r4, 0 /* 80304274 002FFED4 38 A0 03 60 */ li r5, 0x360 /* 80304278 002FFED8 90 01 00 14 */ stw r0, 0x14(r1) /* 8030427C 002FFEDC 80 6D AF 90 */ lwz r3, lbl_80640250-_SDA_BASE_(r13) /* 80304280 002FFEE0 38 63 24 00 */ addi r3, r3, 0x2400 /* 80304284 002FFEE4 90 61 00 08 */ stw r3, 8(r1) /* 80304288 002FFEE8 4B FF CD 8D */ bl Mail_memset /* 8030428C 002FFEEC 38 61 00 08 */ addi r3, r1, 8 /* 80304290 002FFEF0 48 00 00 15 */ bl GetCachedFLHeader /* 80304294 002FFEF4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80304298 002FFEF8 7C 08 03 A6 */ mtlr r0 /* 8030429C 002FFEFC 38 21 00 10 */ addi r1, r1, 0x10 /* 803042A0 002FFF00 4E 80 00 20 */ blr .global GetCachedFLHeader GetCachedFLHeader: /* 803042A4 002FFF04 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 803042A8 002FFF08 7C 08 02 A6 */ mflr r0 /* 803042AC 002FFF0C 90 01 00 B4 */ stw r0, 0xb4(r1) /* 803042B0 002FFF10 93 E1 00 AC */ stw r31, 0xac(r1) /* 803042B4 002FFF14 93 C1 00 A8 */ stw r30, 0xa8(r1) /* 803042B8 002FFF18 7C 7E 1B 78 */ mr r30, r3 /* 803042BC 002FFF1C 80 8D AF 90 */ lwz r4, lbl_80640250-_SDA_BASE_(r13) /* 803042C0 002FFF20 38 84 24 00 */ addi r4, r4, 0x2400 /* 803042C4 002FFF24 90 83 00 00 */ stw r4, 0(r3) /* 803042C8 002FFF28 80 64 00 00 */ lwz r3, 0(r4) /* 803042CC 002FFF2C 3C 03 A8 9D */ addis r0, r3, 0xa89d /* 803042D0 002FFF30 28 00 46 6C */ cmplwi r0, 0x466c /* 803042D4 002FFF34 41 82 00 94 */ beq lbl_80304368 /* 803042D8 002FFF38 80 8D 8C B0 */ lwz r4, lbl_8063DF70-_SDA_BASE_(r13) /* 803042DC 002FFF3C 38 61 00 08 */ addi r3, r1, 8 /* 803042E0 002FFF40 38 A0 00 02 */ li r5, 2 /* 803042E4 002FFF44 4B FF D8 65 */ bl NWC24FOpen /* 803042E8 002FFF48 2C 03 00 00 */ cmpwi r3, 0 /* 803042EC 002FFF4C 41 82 00 08 */ beq lbl_803042F4 /* 803042F0 002FFF50 48 00 00 7C */ b lbl_8030436C lbl_803042F4: /* 803042F4 002FFF54 38 61 00 08 */ addi r3, r1, 8 /* 803042F8 002FFF58 38 80 00 00 */ li r4, 0 /* 803042FC 002FFF5C 38 A0 00 00 */ li r5, 0 /* 80304300 002FFF60 4B FF DD 2D */ bl NWC24FSeek /* 80304304 002FFF64 80 7E 00 00 */ lwz r3, 0(r30) /* 80304308 002FFF68 38 A1 00 08 */ addi r5, r1, 8 /* 8030430C 002FFF6C 38 80 03 60 */ li r4, 0x360 /* 80304310 002FFF70 4B FF DF 09 */ bl NWC24FRead /* 80304314 002FFF74 7C 7F 1B 78 */ mr r31, r3 /* 80304318 002FFF78 38 61 00 08 */ addi r3, r1, 8 /* 8030431C 002FFF7C 4B FF DB 7D */ bl NWC24FClose /* 80304320 002FFF80 2C 1F 00 00 */ cmpwi r31, 0 /* 80304324 002FFF84 41 82 00 08 */ beq lbl_8030432C /* 80304328 002FFF88 7F E3 FB 78 */ mr r3, r31 lbl_8030432C: /* 8030432C 002FFF8C 2C 03 00 00 */ cmpwi r3, 0 /* 80304330 002FFF90 41 82 00 08 */ beq lbl_80304338 /* 80304334 002FFF94 48 00 00 38 */ b lbl_8030436C lbl_80304338: /* 80304338 002FFF98 80 9E 00 00 */ lwz r4, 0(r30) /* 8030433C 002FFF9C 80 64 00 00 */ lwz r3, 0(r4) /* 80304340 002FFFA0 3C 03 A8 9D */ addis r0, r3, 0xa89d /* 80304344 002FFFA4 28 00 46 6C */ cmplwi r0, 0x466c /* 80304348 002FFFA8 41 82 00 0C */ beq lbl_80304354 /* 8030434C 002FFFAC 38 60 FF F2 */ li r3, -14 /* 80304350 002FFFB0 48 00 00 1C */ b lbl_8030436C lbl_80304354: /* 80304354 002FFFB4 80 04 00 04 */ lwz r0, 4(r4) /* 80304358 002FFFB8 28 00 00 02 */ cmplwi r0, 2 /* 8030435C 002FFFBC 41 82 00 0C */ beq lbl_80304368 /* 80304360 002FFFC0 38 60 FF E5 */ li r3, -27 /* 80304364 002FFFC4 48 00 00 08 */ b lbl_8030436C lbl_80304368: /* 80304368 002FFFC8 38 60 00 00 */ li r3, 0 lbl_8030436C: /* 8030436C 002FFFCC 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 80304370 002FFFD0 83 E1 00 AC */ lwz r31, 0xac(r1) /* 80304374 002FFFD4 83 C1 00 A8 */ lwz r30, 0xa8(r1) /* 80304378 002FFFD8 7C 08 03 A6 */ mtlr r0 /* 8030437C 002FFFDC 38 21 00 B0 */ addi r1, r1, 0xb0 /* 80304380 002FFFE0 4E 80 00 20 */ blr