.include "macros.inc" .section .sdata .balign 8 .global lbl_805A7948 lbl_805A7948: # ROM: 0x3F52E8 .4byte 0 .global lbl_805A794C lbl_805A794C: # ROM: 0x3F52EC .4byte 0 .section .text, "ax" .global IsAnythingSet__13CMapWorldInfoFv IsAnythingSet__13CMapWorldInfoFv: /* 80167C14 00164B74 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80167C18 00164B78 39 00 00 00 */ li r8, 0 /* 80167C1C 00164B7C 38 A0 00 01 */ li r5, 1 /* 80167C20 00164B80 80 03 00 00 */ lwz r0, 0(r3) /* 80167C24 00164B84 7C 09 03 A6 */ mtctr r0 /* 80167C28 00164B88 2C 00 00 00 */ cmpwi r0, 0 /* 80167C2C 00164B8C 40 81 00 5C */ ble lbl_80167C88 lbl_80167C30: /* 80167C30 00164B90 7D 04 2E 70 */ srawi r4, r8, 5 /* 80167C34 00164B94 55 00 D8 08 */ slwi r0, r8, 0x1b /* 80167C38 00164B98 7C C4 01 94 */ addze r6, r4 /* 80167C3C 00164B9C 55 04 0F FE */ srwi r4, r8, 0x1f /* 80167C40 00164BA0 7C 04 00 50 */ subf r0, r4, r0 /* 80167C44 00164BA4 80 E3 00 10 */ lwz r7, 0x10(r3) /* 80167C48 00164BA8 54 C6 10 3A */ slwi r6, r6, 2 /* 80167C4C 00164BAC 7C E7 32 14 */ add r7, r7, r6 /* 80167C50 00164BB0 54 00 28 3E */ rotlwi r0, r0, 5 /* 80167C54 00164BB4 7C 80 22 14 */ add r4, r0, r4 /* 80167C58 00164BB8 80 07 00 00 */ lwz r0, 0(r7) /* 80167C5C 00164BBC 7C A4 20 30 */ slw r4, r5, r4 /* 80167C60 00164BC0 90 E1 00 14 */ stw r7, 0x14(r1) /* 80167C64 00164BC4 7C 80 00 39 */ and. r0, r4, r0 /* 80167C68 00164BC8 90 E1 00 10 */ stw r7, 0x10(r1) /* 80167C6C 00164BCC 90 E1 00 20 */ stw r7, 0x20(r1) /* 80167C70 00164BD0 90 81 00 24 */ stw r4, 0x24(r1) /* 80167C74 00164BD4 41 82 00 0C */ beq lbl_80167C80 /* 80167C78 00164BD8 38 60 00 01 */ li r3, 1 /* 80167C7C 00164BDC 48 00 00 80 */ b lbl_80167CFC lbl_80167C80: /* 80167C80 00164BE0 39 08 00 01 */ addi r8, r8, 1 /* 80167C84 00164BE4 42 00 FF AC */ bdnz lbl_80167C30 lbl_80167C88: /* 80167C88 00164BE8 80 03 00 14 */ lwz r0, 0x14(r3) /* 80167C8C 00164BEC 39 00 00 00 */ li r8, 0 /* 80167C90 00164BF0 38 A0 00 01 */ li r5, 1 /* 80167C94 00164BF4 7C 09 03 A6 */ mtctr r0 /* 80167C98 00164BF8 2C 00 00 00 */ cmpwi r0, 0 /* 80167C9C 00164BFC 40 81 00 5C */ ble lbl_80167CF8 lbl_80167CA0: /* 80167CA0 00164C00 7D 04 2E 70 */ srawi r4, r8, 5 /* 80167CA4 00164C04 55 00 D8 08 */ slwi r0, r8, 0x1b /* 80167CA8 00164C08 7C C4 01 94 */ addze r6, r4 /* 80167CAC 00164C0C 55 04 0F FE */ srwi r4, r8, 0x1f /* 80167CB0 00164C10 7C 04 00 50 */ subf r0, r4, r0 /* 80167CB4 00164C14 80 E3 00 24 */ lwz r7, 0x24(r3) /* 80167CB8 00164C18 54 C6 10 3A */ slwi r6, r6, 2 /* 80167CBC 00164C1C 7C E7 32 14 */ add r7, r7, r6 /* 80167CC0 00164C20 54 00 28 3E */ rotlwi r0, r0, 5 /* 80167CC4 00164C24 7C 80 22 14 */ add r4, r0, r4 /* 80167CC8 00164C28 80 07 00 00 */ lwz r0, 0(r7) /* 80167CCC 00164C2C 7C A4 20 30 */ slw r4, r5, r4 /* 80167CD0 00164C30 90 E1 00 0C */ stw r7, 0xc(r1) /* 80167CD4 00164C34 7C 80 00 39 */ and. r0, r4, r0 /* 80167CD8 00164C38 90 E1 00 08 */ stw r7, 8(r1) /* 80167CDC 00164C3C 90 E1 00 18 */ stw r7, 0x18(r1) /* 80167CE0 00164C40 90 81 00 1C */ stw r4, 0x1c(r1) /* 80167CE4 00164C44 41 82 00 0C */ beq lbl_80167CF0 /* 80167CE8 00164C48 38 60 00 01 */ li r3, 1 /* 80167CEC 00164C4C 48 00 00 10 */ b lbl_80167CFC lbl_80167CF0: /* 80167CF0 00164C50 39 08 00 01 */ addi r8, r8, 1 /* 80167CF4 00164C54 42 00 FF AC */ bdnz lbl_80167CA0 lbl_80167CF8: /* 80167CF8 00164C58 88 63 00 38 */ lbz r3, 0x38(r3) lbl_80167CFC: /* 80167CFC 00164C5C 38 21 00 30 */ addi r1, r1, 0x30 /* 80167D00 00164C60 4E 80 00 20 */ blr .global IsAreaVisible__13CMapWorldInfoCF7TAreaId IsAreaVisible__13CMapWorldInfoCF7TAreaId: /* 80167D04 00164C64 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80167D08 00164C68 7C 08 02 A6 */ mflr r0 /* 80167D0C 00164C6C 90 01 00 24 */ stw r0, 0x24(r1) /* 80167D10 00164C70 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80167D14 00164C74 3B E0 00 01 */ li r31, 1 /* 80167D18 00164C78 93 C1 00 18 */ stw r30, 0x18(r1) /* 80167D1C 00164C7C 7C 9E 23 78 */ mr r30, r4 /* 80167D20 00164C80 93 A1 00 14 */ stw r29, 0x14(r1) /* 80167D24 00164C84 7C 7D 1B 78 */ mr r29, r3 /* 80167D28 00164C88 80 04 00 00 */ lwz r0, 0(r4) /* 80167D2C 00164C8C 38 81 00 0C */ addi r4, r1, 0xc /* 80167D30 00164C90 90 01 00 0C */ stw r0, 0xc(r1) /* 80167D34 00164C94 48 00 00 4D */ bl IsAreaVisited__13CMapWorldInfoCF7TAreaId /* 80167D38 00164C98 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80167D3C 00164C9C 40 82 00 24 */ bne lbl_80167D60 /* 80167D40 00164CA0 80 1E 00 00 */ lwz r0, 0(r30) /* 80167D44 00164CA4 7F A3 EB 78 */ mr r3, r29 /* 80167D48 00164CA8 38 81 00 08 */ addi r4, r1, 8 /* 80167D4C 00164CAC 90 01 00 08 */ stw r0, 8(r1) /* 80167D50 00164CB0 48 00 05 D5 */ bl IsMapped__13CMapWorldInfoCF7TAreaId /* 80167D54 00164CB4 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 80167D58 00164CB8 40 82 00 08 */ bne lbl_80167D60 /* 80167D5C 00164CBC 3B E0 00 00 */ li r31, 0 lbl_80167D60: /* 80167D60 00164CC0 80 01 00 24 */ lwz r0, 0x24(r1) /* 80167D64 00164CC4 7F E3 FB 78 */ mr r3, r31 /* 80167D68 00164CC8 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80167D6C 00164CCC 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80167D70 00164CD0 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80167D74 00164CD4 7C 08 03 A6 */ mtlr r0 /* 80167D78 00164CD8 38 21 00 20 */ addi r1, r1, 0x20 /* 80167D7C 00164CDC 4E 80 00 20 */ blr .global IsAreaVisited__13CMapWorldInfoCF7TAreaId IsAreaVisited__13CMapWorldInfoCF7TAreaId: /* 80167D80 00164CE0 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80167D84 00164CE4 7C 08 02 A6 */ mflr r0 /* 80167D88 00164CE8 90 01 00 54 */ stw r0, 0x54(r1) /* 80167D8C 00164CEC 93 E1 00 4C */ stw r31, 0x4c(r1) /* 80167D90 00164CF0 7C 9F 23 78 */ mr r31, r4 /* 80167D94 00164CF4 93 C1 00 48 */ stw r30, 0x48(r1) /* 80167D98 00164CF8 7C 7E 1B 78 */ mr r30, r3 /* 80167D9C 00164CFC 80 64 00 00 */ lwz r3, 0(r4) /* 80167DA0 00164D00 80 1E 00 00 */ lwz r0, 0(r30) /* 80167DA4 00164D04 38 63 00 01 */ addi r3, r3, 1 /* 80167DA8 00164D08 7C 03 00 00 */ cmpw r3, r0 /* 80167DAC 00164D0C 40 81 00 80 */ ble lbl_80167E2C /* 80167DB0 00164D10 54 60 D8 08 */ slwi r0, r3, 0x1b /* 80167DB4 00164D14 54 64 0F FE */ srwi r4, r3, 0x1f /* 80167DB8 00164D18 7C 04 00 50 */ subf r0, r4, r0 /* 80167DBC 00164D1C 7C 65 2E 70 */ srawi r5, r3, 5 /* 80167DC0 00164D20 54 00 28 3E */ rotlwi r0, r0, 5 /* 80167DC4 00164D24 38 7E 00 04 */ addi r3, r30, 4 /* 80167DC8 00164D28 7C 80 22 14 */ add r4, r0, r4 /* 80167DCC 00164D2C 7C A5 01 94 */ addze r5, r5 /* 80167DD0 00164D30 7C 04 00 D0 */ neg r0, r4 /* 80167DD4 00164D34 7C 00 23 78 */ or r0, r0, r4 /* 80167DD8 00164D38 54 00 0F FE */ srwi r0, r0, 0x1f /* 80167DDC 00164D3C 7C 85 02 14 */ add r4, r5, r0 /* 80167DE0 00164D40 4B EF BD 45 */ bl "reserve__Q24rstl37vectorFi" /* 80167DE4 00164D44 80 1E 00 10 */ lwz r0, 0x10(r30) /* 80167DE8 00164D48 7F C3 F3 78 */ mr r3, r30 /* 80167DEC 00164D4C 80 FE 00 00 */ lwz r7, 0(r30) /* 80167DF0 00164D50 38 81 00 30 */ addi r4, r1, 0x30 /* 80167DF4 00164D54 80 BF 00 00 */ lwz r5, 0(r31) /* 80167DF8 00164D58 38 C0 00 00 */ li r6, 0 /* 80167DFC 00164D5C 90 01 00 18 */ stw r0, 0x18(r1) /* 80167E00 00164D60 7C A7 28 50 */ subf r5, r7, r5 /* 80167E04 00164D64 90 01 00 14 */ stw r0, 0x14(r1) /* 80167E08 00164D68 38 A5 00 01 */ addi r5, r5, 1 /* 80167E0C 00164D6C 90 01 00 10 */ stw r0, 0x10(r1) /* 80167E10 00164D70 90 01 00 24 */ stw r0, 0x24(r1) /* 80167E14 00164D74 90 E1 00 28 */ stw r7, 0x28(r1) /* 80167E18 00164D78 90 01 00 2C */ stw r0, 0x2c(r1) /* 80167E1C 00164D7C 90 01 00 30 */ stw r0, 0x30(r1) /* 80167E20 00164D80 90 E1 00 34 */ stw r7, 0x34(r1) /* 80167E24 00164D84 90 01 00 38 */ stw r0, 0x38(r1) /* 80167E28 00164D88 48 00 00 75 */ bl sub_80167e9c lbl_80167E2C: /* 80167E2C 00164D8C 80 9F 00 00 */ lwz r4, 0(r31) /* 80167E30 00164D90 38 A0 00 01 */ li r5, 1 /* 80167E34 00164D94 80 DE 00 10 */ lwz r6, 0x10(r30) /* 80167E38 00164D98 7C 83 2E 70 */ srawi r3, r4, 5 /* 80167E3C 00164D9C 54 80 D8 08 */ slwi r0, r4, 0x1b /* 80167E40 00164DA0 7C 63 01 94 */ addze r3, r3 /* 80167E44 00164DA4 54 84 0F FE */ srwi r4, r4, 0x1f /* 80167E48 00164DA8 54 63 10 3A */ slwi r3, r3, 2 /* 80167E4C 00164DAC 7C C6 1A 14 */ add r6, r6, r3 /* 80167E50 00164DB0 7C 04 00 50 */ subf r0, r4, r0 /* 80167E54 00164DB4 54 03 28 3E */ rotlwi r3, r0, 5 /* 80167E58 00164DB8 80 06 00 00 */ lwz r0, 0(r6) /* 80167E5C 00164DBC 7C 63 22 14 */ add r3, r3, r4 /* 80167E60 00164DC0 90 C1 00 0C */ stw r6, 0xc(r1) /* 80167E64 00164DC4 7C A4 18 30 */ slw r4, r5, r3 /* 80167E68 00164DC8 7C 83 00 38 */ and r3, r4, r0 /* 80167E6C 00164DCC 90 C1 00 08 */ stw r6, 8(r1) /* 80167E70 00164DD0 7C 03 00 D0 */ neg r0, r3 /* 80167E74 00164DD4 7C 00 1B 78 */ or r0, r0, r3 /* 80167E78 00164DD8 90 C1 00 1C */ stw r6, 0x1c(r1) /* 80167E7C 00164DDC 54 03 0F FE */ srwi r3, r0, 0x1f /* 80167E80 00164DE0 90 81 00 20 */ stw r4, 0x20(r1) /* 80167E84 00164DE4 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 80167E88 00164DE8 83 C1 00 48 */ lwz r30, 0x48(r1) /* 80167E8C 00164DEC 80 01 00 54 */ lwz r0, 0x54(r1) /* 80167E90 00164DF0 7C 08 03 A6 */ mtlr r0 /* 80167E94 00164DF4 38 21 00 50 */ addi r1, r1, 0x50 /* 80167E98 00164DF8 4E 80 00 20 */ blr .global sub_80167e9c sub_80167e9c: /* 80167E9C 00164DFC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80167EA0 00164E00 7C 08 02 A6 */ mflr r0 /* 80167EA4 00164E04 90 01 00 24 */ stw r0, 0x24(r1) /* 80167EA8 00164E08 93 E1 00 1C */ stw r31, 0x1c(r1) /* 80167EAC 00164E0C 93 C1 00 18 */ stw r30, 0x18(r1) /* 80167EB0 00164E10 7C 7E 1B 78 */ mr r30, r3 /* 80167EB4 00164E14 93 A1 00 14 */ stw r29, 0x14(r1) /* 80167EB8 00164E18 7C DD 33 78 */ mr r29, r6 /* 80167EBC 00164E1C 93 81 00 10 */ stw r28, 0x10(r1) /* 80167EC0 00164E20 7C BC 2B 78 */ mr r28, r5 /* 80167EC4 00164E24 80 84 00 04 */ lwz r4, 4(r4) /* 80167EC8 00164E28 7C 9F 23 78 */ mr r31, r4 /* 80167ECC 00164E2C 48 00 02 CD */ bl sub_80168198 /* 80167ED0 00164E30 57 A0 06 3F */ clrlwi. r0, r29, 0x18 /* 80167ED4 00164E34 41 82 01 58 */ beq lbl_8016802C /* 80167ED8 00164E38 2C 1C 00 00 */ cmpwi r28, 0 /* 80167EDC 00164E3C 7F 83 E3 78 */ mr r3, r28 /* 80167EE0 00164E40 40 81 02 98 */ ble lbl_80168178 /* 80167EE4 00164E44 57 80 F0 BF */ rlwinm. r0, r28, 0x1e, 2, 0x1f /* 80167EE8 00164E48 7C 09 03 A6 */ mtctr r0 /* 80167EEC 00164E4C 41 82 00 F4 */ beq lbl_80167FE0 lbl_80167EF0: /* 80167EF0 00164E50 7F EB 2E 70 */ srawi r11, r31, 5 /* 80167EF4 00164E54 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 80167EF8 00164E58 57 E5 0F FE */ srwi r5, r31, 0x1f /* 80167EFC 00164E5C 81 9E 00 10 */ lwz r12, 0x10(r30) /* 80167F00 00164E60 7D 4B 01 94 */ addze r10, r11 /* 80167F04 00164E64 3B FF 00 01 */ addi r31, r31, 1 /* 80167F08 00164E68 7C 85 30 50 */ subf r4, r5, r6 /* 80167F0C 00164E6C 38 E0 00 01 */ li r7, 1 /* 80167F10 00164E70 55 49 10 3A */ slwi r9, r10, 2 /* 80167F14 00164E74 7F EB 2E 70 */ srawi r11, r31, 5 /* 80167F18 00164E78 54 84 28 3E */ rotlwi r4, r4, 5 /* 80167F1C 00164E7C 7D 0C 48 2E */ lwzx r8, r12, r9 /* 80167F20 00164E80 7C 04 2A 14 */ add r0, r4, r5 /* 80167F24 00164E84 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 80167F28 00164E88 57 E5 0F FE */ srwi r5, r31, 0x1f /* 80167F2C 00164E8C 7D 4B 01 94 */ addze r10, r11 /* 80167F30 00164E90 7C E0 00 30 */ slw r0, r7, r0 /* 80167F34 00164E94 3B FF 00 01 */ addi r31, r31, 1 /* 80167F38 00164E98 7C 85 30 50 */ subf r4, r5, r6 /* 80167F3C 00164E9C 7D 00 03 78 */ or r0, r8, r0 /* 80167F40 00164EA0 7F EB 2E 70 */ srawi r11, r31, 5 /* 80167F44 00164EA4 7C 0C 49 2E */ stwx r0, r12, r9 /* 80167F48 00164EA8 55 49 10 3A */ slwi r9, r10, 2 /* 80167F4C 00164EAC 54 84 28 3E */ rotlwi r4, r4, 5 /* 80167F50 00164EB0 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 80167F54 00164EB4 7C 04 2A 14 */ add r0, r4, r5 /* 80167F58 00164EB8 81 9E 00 10 */ lwz r12, 0x10(r30) /* 80167F5C 00164EBC 57 E5 0F FE */ srwi r5, r31, 0x1f /* 80167F60 00164EC0 7D 4B 01 94 */ addze r10, r11 /* 80167F64 00164EC4 7C 85 30 50 */ subf r4, r5, r6 /* 80167F68 00164EC8 7D 0C 48 2E */ lwzx r8, r12, r9 /* 80167F6C 00164ECC 7C E0 00 30 */ slw r0, r7, r0 /* 80167F70 00164ED0 3B FF 00 01 */ addi r31, r31, 1 /* 80167F74 00164ED4 7D 00 03 78 */ or r0, r8, r0 /* 80167F78 00164ED8 54 84 28 3E */ rotlwi r4, r4, 5 /* 80167F7C 00164EDC 7C 0C 49 2E */ stwx r0, r12, r9 /* 80167F80 00164EE0 7C 04 2A 14 */ add r0, r4, r5 /* 80167F84 00164EE4 55 49 10 3A */ slwi r9, r10, 2 /* 80167F88 00164EE8 7F EB 2E 70 */ srawi r11, r31, 5 /* 80167F8C 00164EEC 81 9E 00 10 */ lwz r12, 0x10(r30) /* 80167F90 00164EF0 7C E0 00 30 */ slw r0, r7, r0 /* 80167F94 00164EF4 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 80167F98 00164EF8 57 E5 0F FE */ srwi r5, r31, 0x1f /* 80167F9C 00164EFC 7D 0C 48 2E */ lwzx r8, r12, r9 /* 80167FA0 00164F00 7C 85 30 50 */ subf r4, r5, r6 /* 80167FA4 00164F04 7D 4B 01 94 */ addze r10, r11 /* 80167FA8 00164F08 3B FF 00 01 */ addi r31, r31, 1 /* 80167FAC 00164F0C 7D 00 03 78 */ or r0, r8, r0 /* 80167FB0 00164F10 54 84 28 3E */ rotlwi r4, r4, 5 /* 80167FB4 00164F14 7C 0C 49 2E */ stwx r0, r12, r9 /* 80167FB8 00164F18 7C 04 2A 14 */ add r0, r4, r5 /* 80167FBC 00164F1C 55 49 10 3A */ slwi r9, r10, 2 /* 80167FC0 00164F20 81 9E 00 10 */ lwz r12, 0x10(r30) /* 80167FC4 00164F24 7C E0 00 30 */ slw r0, r7, r0 /* 80167FC8 00164F28 7D 0C 48 2E */ lwzx r8, r12, r9 /* 80167FCC 00164F2C 7D 00 03 78 */ or r0, r8, r0 /* 80167FD0 00164F30 7C 0C 49 2E */ stwx r0, r12, r9 /* 80167FD4 00164F34 42 00 FF 1C */ bdnz lbl_80167EF0 /* 80167FD8 00164F38 70 63 00 03 */ andi. r3, r3, 3 /* 80167FDC 00164F3C 41 82 01 9C */ beq lbl_80168178 lbl_80167FE0: /* 80167FE0 00164F40 7C 69 03 A6 */ mtctr r3 /* 80167FE4 00164F44 38 E0 00 01 */ li r7, 1 lbl_80167FE8: /* 80167FE8 00164F48 7F E0 FB 78 */ mr r0, r31 /* 80167FEC 00164F4C 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 80167FF0 00164F50 57 E5 0F FE */ srwi r5, r31, 0x1f /* 80167FF4 00164F54 81 9E 00 10 */ lwz r12, 0x10(r30) /* 80167FF8 00164F58 7C 0B 2E 70 */ srawi r11, r0, 5 /* 80167FFC 00164F5C 3B FF 00 01 */ addi r31, r31, 1 /* 80168000 00164F60 7D 4B 01 94 */ addze r10, r11 /* 80168004 00164F64 7C 85 30 50 */ subf r4, r5, r6 /* 80168008 00164F68 55 49 10 3A */ slwi r9, r10, 2 /* 8016800C 00164F6C 54 84 28 3E */ rotlwi r4, r4, 5 /* 80168010 00164F70 7D 0C 48 2E */ lwzx r8, r12, r9 /* 80168014 00164F74 7C 04 2A 14 */ add r0, r4, r5 /* 80168018 00164F78 7C E0 00 30 */ slw r0, r7, r0 /* 8016801C 00164F7C 7D 00 03 78 */ or r0, r8, r0 /* 80168020 00164F80 7C 0C 49 2E */ stwx r0, r12, r9 /* 80168024 00164F84 42 00 FF C4 */ bdnz lbl_80167FE8 /* 80168028 00164F88 48 00 01 50 */ b lbl_80168178 lbl_8016802C: /* 8016802C 00164F8C 2C 1C 00 00 */ cmpwi r28, 0 /* 80168030 00164F90 7F 83 E3 78 */ mr r3, r28 /* 80168034 00164F94 40 81 01 44 */ ble lbl_80168178 /* 80168038 00164F98 57 80 F0 BF */ rlwinm. r0, r28, 0x1e, 2, 0x1f /* 8016803C 00164F9C 7C 09 03 A6 */ mtctr r0 /* 80168040 00164FA0 41 82 00 F4 */ beq lbl_80168134 lbl_80168044: /* 80168044 00164FA4 7F EB 2E 70 */ srawi r11, r31, 5 /* 80168048 00164FA8 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 8016804C 00164FAC 57 E5 0F FE */ srwi r5, r31, 0x1f /* 80168050 00164FB0 81 9E 00 10 */ lwz r12, 0x10(r30) /* 80168054 00164FB4 7D 4B 01 94 */ addze r10, r11 /* 80168058 00164FB8 3B FF 00 01 */ addi r31, r31, 1 /* 8016805C 00164FBC 7C 85 30 50 */ subf r4, r5, r6 /* 80168060 00164FC0 38 E0 00 01 */ li r7, 1 /* 80168064 00164FC4 55 49 10 3A */ slwi r9, r10, 2 /* 80168068 00164FC8 7F EB 2E 70 */ srawi r11, r31, 5 /* 8016806C 00164FCC 54 84 28 3E */ rotlwi r4, r4, 5 /* 80168070 00164FD0 7D 0C 48 2E */ lwzx r8, r12, r9 /* 80168074 00164FD4 7C 04 2A 14 */ add r0, r4, r5 /* 80168078 00164FD8 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 8016807C 00164FDC 57 E5 0F FE */ srwi r5, r31, 0x1f /* 80168080 00164FE0 7D 4B 01 94 */ addze r10, r11 /* 80168084 00164FE4 7C E0 00 30 */ slw r0, r7, r0 /* 80168088 00164FE8 3B FF 00 01 */ addi r31, r31, 1 /* 8016808C 00164FEC 7C 85 30 50 */ subf r4, r5, r6 /* 80168090 00164FF0 7D 00 00 78 */ andc r0, r8, r0 /* 80168094 00164FF4 7F EB 2E 70 */ srawi r11, r31, 5 /* 80168098 00164FF8 7C 0C 49 2E */ stwx r0, r12, r9 /* 8016809C 00164FFC 55 49 10 3A */ slwi r9, r10, 2 /* 801680A0 00165000 54 84 28 3E */ rotlwi r4, r4, 5 /* 801680A4 00165004 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 801680A8 00165008 7C 04 2A 14 */ add r0, r4, r5 /* 801680AC 0016500C 81 9E 00 10 */ lwz r12, 0x10(r30) /* 801680B0 00165010 57 E5 0F FE */ srwi r5, r31, 0x1f /* 801680B4 00165014 7D 4B 01 94 */ addze r10, r11 /* 801680B8 00165018 7C 85 30 50 */ subf r4, r5, r6 /* 801680BC 0016501C 7D 0C 48 2E */ lwzx r8, r12, r9 /* 801680C0 00165020 7C E0 00 30 */ slw r0, r7, r0 /* 801680C4 00165024 3B FF 00 01 */ addi r31, r31, 1 /* 801680C8 00165028 7D 00 00 78 */ andc r0, r8, r0 /* 801680CC 0016502C 54 84 28 3E */ rotlwi r4, r4, 5 /* 801680D0 00165030 7C 0C 49 2E */ stwx r0, r12, r9 /* 801680D4 00165034 7C 04 2A 14 */ add r0, r4, r5 /* 801680D8 00165038 55 49 10 3A */ slwi r9, r10, 2 /* 801680DC 0016503C 7F EB 2E 70 */ srawi r11, r31, 5 /* 801680E0 00165040 81 9E 00 10 */ lwz r12, 0x10(r30) /* 801680E4 00165044 7C E0 00 30 */ slw r0, r7, r0 /* 801680E8 00165048 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 801680EC 0016504C 57 E5 0F FE */ srwi r5, r31, 0x1f /* 801680F0 00165050 7D 0C 48 2E */ lwzx r8, r12, r9 /* 801680F4 00165054 7C 85 30 50 */ subf r4, r5, r6 /* 801680F8 00165058 7D 4B 01 94 */ addze r10, r11 /* 801680FC 0016505C 3B FF 00 01 */ addi r31, r31, 1 /* 80168100 00165060 7D 00 00 78 */ andc r0, r8, r0 /* 80168104 00165064 54 84 28 3E */ rotlwi r4, r4, 5 /* 80168108 00165068 7C 0C 49 2E */ stwx r0, r12, r9 /* 8016810C 0016506C 7C 04 2A 14 */ add r0, r4, r5 /* 80168110 00165070 55 49 10 3A */ slwi r9, r10, 2 /* 80168114 00165074 81 9E 00 10 */ lwz r12, 0x10(r30) /* 80168118 00165078 7C E0 00 30 */ slw r0, r7, r0 /* 8016811C 0016507C 7D 0C 48 2E */ lwzx r8, r12, r9 /* 80168120 00165080 7D 00 00 78 */ andc r0, r8, r0 /* 80168124 00165084 7C 0C 49 2E */ stwx r0, r12, r9 /* 80168128 00165088 42 00 FF 1C */ bdnz lbl_80168044 /* 8016812C 0016508C 70 63 00 03 */ andi. r3, r3, 3 /* 80168130 00165090 41 82 00 48 */ beq lbl_80168178 lbl_80168134: /* 80168134 00165094 7C 69 03 A6 */ mtctr r3 /* 80168138 00165098 38 E0 00 01 */ li r7, 1 lbl_8016813C: /* 8016813C 0016509C 7F EB 2E 70 */ srawi r11, r31, 5 /* 80168140 001650A0 57 E6 D8 08 */ slwi r6, r31, 0x1b /* 80168144 001650A4 57 E5 0F FE */ srwi r5, r31, 0x1f /* 80168148 001650A8 81 9E 00 10 */ lwz r12, 0x10(r30) /* 8016814C 001650AC 7D 4B 01 94 */ addze r10, r11 /* 80168150 001650B0 3B FF 00 01 */ addi r31, r31, 1 /* 80168154 001650B4 7C 85 30 50 */ subf r4, r5, r6 /* 80168158 001650B8 55 49 10 3A */ slwi r9, r10, 2 /* 8016815C 001650BC 54 84 28 3E */ rotlwi r4, r4, 5 /* 80168160 001650C0 7D 0C 48 2E */ lwzx r8, r12, r9 /* 80168164 001650C4 7C 04 2A 14 */ add r0, r4, r5 /* 80168168 001650C8 7C E0 00 30 */ slw r0, r7, r0 /* 8016816C 001650CC 7D 00 00 78 */ andc r0, r8, r0 /* 80168170 001650D0 7C 0C 49 2E */ stwx r0, r12, r9 /* 80168174 001650D4 42 00 FF C8 */ bdnz lbl_8016813C lbl_80168178: /* 80168178 001650D8 80 01 00 24 */ lwz r0, 0x24(r1) /* 8016817C 001650DC 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80168180 001650E0 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80168184 001650E4 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80168188 001650E8 83 81 00 10 */ lwz r28, 0x10(r1) /* 8016818C 001650EC 7C 08 03 A6 */ mtlr r0 /* 80168190 001650F0 38 21 00 20 */ addi r1, r1, 0x20 /* 80168194 001650F4 4E 80 00 20 */ blr .global sub_80168198 sub_80168198: /* 80168198 001650F8 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8016819C 001650FC 7C 08 02 A6 */ mflr r0 /* 801681A0 00165100 90 01 00 24 */ stw r0, 0x24(r1) /* 801681A4 00165104 93 E1 00 1C */ stw r31, 0x1c(r1) /* 801681A8 00165108 7C BF 2B 78 */ mr r31, r5 /* 801681AC 0016510C 93 C1 00 18 */ stw r30, 0x18(r1) /* 801681B0 00165110 7C 9E 23 78 */ mr r30, r4 /* 801681B4 00165114 93 A1 00 14 */ stw r29, 0x14(r1) /* 801681B8 00165118 7C 7D 1B 78 */ mr r29, r3 /* 801681BC 0016511C 93 81 00 10 */ stw r28, 0x10(r1) /* 801681C0 00165120 80 03 00 08 */ lwz r0, 8(r3) /* 801681C4 00165124 80 63 00 00 */ lwz r3, 0(r3) /* 801681C8 00165128 54 00 28 34 */ slwi r0, r0, 5 /* 801681CC 0016512C 7F 83 00 50 */ subf r28, r3, r0 /* 801681D0 00165130 48 00 00 58 */ b lbl_80168228 lbl_801681D4: /* 801681D4 00165134 80 1D 00 08 */ lwz r0, 8(r29) /* 801681D8 00165138 80 BD 00 0C */ lwz r5, 0xc(r29) /* 801681DC 0016513C 7C 00 28 00 */ cmpw r0, r5 /* 801681E0 00165140 41 80 00 1C */ blt lbl_801681FC /* 801681E4 00165144 2C 05 00 00 */ cmpwi r5, 0 /* 801681E8 00165148 38 7D 00 04 */ addi r3, r29, 4 /* 801681EC 0016514C 38 80 00 04 */ li r4, 4 /* 801681F0 00165150 41 82 00 08 */ beq lbl_801681F8 /* 801681F4 00165154 54 A4 08 3C */ slwi r4, r5, 1 lbl_801681F8: /* 801681F8 00165158 4B EF B9 2D */ bl "reserve__Q24rstl37vectorFi" lbl_801681FC: /* 801681FC 0016515C 80 1D 00 08 */ lwz r0, 8(r29) /* 80168200 00165160 80 7D 00 10 */ lwz r3, 0x10(r29) /* 80168204 00165164 54 00 10 3A */ slwi r0, r0, 2 /* 80168208 00165168 7C 63 02 15 */ add. r3, r3, r0 /* 8016820C 0016516C 41 82 00 0C */ beq lbl_80168218 /* 80168210 00165170 80 0D 8D 8C */ lwz r0, lbl_805A794C@sda21(r13) /* 80168214 00165174 90 03 00 00 */ stw r0, 0(r3) lbl_80168218: /* 80168218 00165178 80 7D 00 08 */ lwz r3, 8(r29) /* 8016821C 0016517C 3B 9C 00 20 */ addi r28, r28, 0x20 /* 80168220 00165180 38 03 00 01 */ addi r0, r3, 1 /* 80168224 00165184 90 1D 00 08 */ stw r0, 8(r29) lbl_80168228: /* 80168228 00165188 7C 1C F8 00 */ cmpw r28, r31 /* 8016822C 0016518C 41 80 FF A8 */ blt lbl_801681D4 /* 80168230 00165190 80 7D 00 00 */ lwz r3, 0(r29) /* 80168234 00165194 38 83 FF FF */ addi r4, r3, -1 /* 80168238 00165198 38 04 00 01 */ addi r0, r4, 1 /* 8016823C 0016519C 7C 1E 00 50 */ subf r0, r30, r0 /* 80168240 001651A0 7C 09 03 A6 */ mtctr r0 /* 80168244 001651A4 7C 04 F0 00 */ cmpw r4, r30 /* 80168248 001651A8 41 80 00 B0 */ blt lbl_801682F8 lbl_8016824C: /* 8016824C 001651AC 7C 86 2E 70 */ srawi r6, r4, 5 /* 80168250 001651B0 54 80 D8 08 */ slwi r0, r4, 0x1b /* 80168254 001651B4 54 85 0F FE */ srwi r5, r4, 0x1f /* 80168258 001651B8 80 7D 00 10 */ lwz r3, 0x10(r29) /* 8016825C 001651BC 7C C6 01 94 */ addze r6, r6 /* 80168260 001651C0 39 00 00 01 */ li r8, 1 /* 80168264 001651C4 7C 05 00 50 */ subf r0, r5, r0 /* 80168268 001651C8 54 C6 10 3A */ slwi r6, r6, 2 /* 8016826C 001651CC 54 00 28 3E */ rotlwi r0, r0, 5 /* 80168270 001651D0 7C C3 30 2E */ lwzx r6, r3, r6 /* 80168274 001651D4 7C 00 2A 14 */ add r0, r0, r5 /* 80168278 001651D8 7D 00 00 30 */ slw r0, r8, r0 /* 8016827C 001651DC 7C C0 00 39 */ and. r0, r6, r0 /* 80168280 001651E0 41 82 00 3C */ beq lbl_801682BC /* 80168284 001651E4 7C A4 FA 14 */ add r5, r4, r31 /* 80168288 001651E8 7C A0 2E 70 */ srawi r0, r5, 5 /* 8016828C 001651EC 7C C0 01 94 */ addze r6, r0 /* 80168290 001651F0 54 A0 D8 08 */ slwi r0, r5, 0x1b /* 80168294 001651F4 54 A5 0F FE */ srwi r5, r5, 0x1f /* 80168298 001651F8 7C 05 00 50 */ subf r0, r5, r0 /* 8016829C 001651FC 54 C7 10 3A */ slwi r7, r6, 2 /* 801682A0 00165200 54 00 28 3E */ rotlwi r0, r0, 5 /* 801682A4 00165204 7C C3 38 2E */ lwzx r6, r3, r7 /* 801682A8 00165208 7C 00 2A 14 */ add r0, r0, r5 /* 801682AC 0016520C 7D 00 00 30 */ slw r0, r8, r0 /* 801682B0 00165210 7C C0 03 78 */ or r0, r6, r0 /* 801682B4 00165214 7C 03 39 2E */ stwx r0, r3, r7 /* 801682B8 00165218 48 00 00 38 */ b lbl_801682F0 lbl_801682BC: /* 801682BC 0016521C 7C A4 FA 14 */ add r5, r4, r31 /* 801682C0 00165220 7C A0 2E 70 */ srawi r0, r5, 5 /* 801682C4 00165224 7C C0 01 94 */ addze r6, r0 /* 801682C8 00165228 54 A0 D8 08 */ slwi r0, r5, 0x1b /* 801682CC 0016522C 54 A5 0F FE */ srwi r5, r5, 0x1f /* 801682D0 00165230 7C 05 00 50 */ subf r0, r5, r0 /* 801682D4 00165234 54 C7 10 3A */ slwi r7, r6, 2 /* 801682D8 00165238 54 00 28 3E */ rotlwi r0, r0, 5 /* 801682DC 0016523C 7C C3 38 2E */ lwzx r6, r3, r7 /* 801682E0 00165240 7C 00 2A 14 */ add r0, r0, r5 /* 801682E4 00165244 7D 00 00 30 */ slw r0, r8, r0 /* 801682E8 00165248 7C C0 00 78 */ andc r0, r6, r0 /* 801682EC 0016524C 7C 03 39 2E */ stwx r0, r3, r7 lbl_801682F0: /* 801682F0 00165250 38 84 FF FF */ addi r4, r4, -1 /* 801682F4 00165254 42 00 FF 58 */ bdnz lbl_8016824C lbl_801682F8: /* 801682F8 00165258 80 1D 00 00 */ lwz r0, 0(r29) /* 801682FC 0016525C 7C 00 FA 14 */ add r0, r0, r31 /* 80168300 00165260 90 1D 00 00 */ stw r0, 0(r29) /* 80168304 00165264 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80168308 00165268 83 C1 00 18 */ lwz r30, 0x18(r1) /* 8016830C 0016526C 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80168310 00165270 83 81 00 10 */ lwz r28, 0x10(r1) /* 80168314 00165274 80 01 00 24 */ lwz r0, 0x24(r1) /* 80168318 00165278 7C 08 03 A6 */ mtlr r0 /* 8016831C 0016527C 38 21 00 20 */ addi r1, r1, 0x20 /* 80168320 00165280 4E 80 00 20 */ blr .global IsMapped__13CMapWorldInfoCF7TAreaId IsMapped__13CMapWorldInfoCF7TAreaId: /* 80168324 00165284 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80168328 00165288 7C 08 02 A6 */ mflr r0 /* 8016832C 0016528C 90 01 00 54 */ stw r0, 0x54(r1) /* 80168330 00165290 93 E1 00 4C */ stw r31, 0x4c(r1) /* 80168334 00165294 7C 9F 23 78 */ mr r31, r4 /* 80168338 00165298 93 C1 00 48 */ stw r30, 0x48(r1) /* 8016833C 0016529C 7C 7E 1B 78 */ mr r30, r3 /* 80168340 001652A0 80 64 00 00 */ lwz r3, 0(r4) /* 80168344 001652A4 80 1E 00 14 */ lwz r0, 0x14(r30) /* 80168348 001652A8 38 63 00 01 */ addi r3, r3, 1 /* 8016834C 001652AC 7C 03 00 00 */ cmpw r3, r0 /* 80168350 001652B0 40 81 00 80 */ ble lbl_801683D0 /* 80168354 001652B4 54 60 D8 08 */ slwi r0, r3, 0x1b /* 80168358 001652B8 54 64 0F FE */ srwi r4, r3, 0x1f /* 8016835C 001652BC 7C 04 00 50 */ subf r0, r4, r0 /* 80168360 001652C0 7C 65 2E 70 */ srawi r5, r3, 5 /* 80168364 001652C4 54 00 28 3E */ rotlwi r0, r0, 5 /* 80168368 001652C8 38 7E 00 18 */ addi r3, r30, 0x18 /* 8016836C 001652CC 7C 80 22 14 */ add r4, r0, r4 /* 80168370 001652D0 7C A5 01 94 */ addze r5, r5 /* 80168374 001652D4 7C 04 00 D0 */ neg r0, r4 /* 80168378 001652D8 7C 00 23 78 */ or r0, r0, r4 /* 8016837C 001652DC 54 00 0F FE */ srwi r0, r0, 0x1f /* 80168380 001652E0 7C 85 02 14 */ add r4, r5, r0 /* 80168384 001652E4 4B EF B7 A1 */ bl "reserve__Q24rstl37vectorFi" /* 80168388 001652E8 80 1E 00 24 */ lwz r0, 0x24(r30) /* 8016838C 001652EC 38 7E 00 14 */ addi r3, r30, 0x14 /* 80168390 001652F0 80 FE 00 14 */ lwz r7, 0x14(r30) /* 80168394 001652F4 38 81 00 30 */ addi r4, r1, 0x30 /* 80168398 001652F8 80 BF 00 00 */ lwz r5, 0(r31) /* 8016839C 001652FC 38 C0 00 00 */ li r6, 0 /* 801683A0 00165300 90 01 00 18 */ stw r0, 0x18(r1) /* 801683A4 00165304 7C A7 28 50 */ subf r5, r7, r5 /* 801683A8 00165308 90 01 00 14 */ stw r0, 0x14(r1) /* 801683AC 0016530C 38 A5 00 01 */ addi r5, r5, 1 /* 801683B0 00165310 90 01 00 10 */ stw r0, 0x10(r1) /* 801683B4 00165314 90 01 00 24 */ stw r0, 0x24(r1) /* 801683B8 00165318 90 E1 00 28 */ stw r7, 0x28(r1) /* 801683BC 0016531C 90 01 00 2C */ stw r0, 0x2c(r1) /* 801683C0 00165320 90 01 00 30 */ stw r0, 0x30(r1) /* 801683C4 00165324 90 E1 00 34 */ stw r7, 0x34(r1) /* 801683C8 00165328 90 01 00 38 */ stw r0, 0x38(r1) /* 801683CC 0016532C 4B FF FA D1 */ bl sub_80167e9c lbl_801683D0: /* 801683D0 00165330 80 9F 00 00 */ lwz r4, 0(r31) /* 801683D4 00165334 38 A0 00 01 */ li r5, 1 /* 801683D8 00165338 80 DE 00 24 */ lwz r6, 0x24(r30) /* 801683DC 0016533C 7C 83 2E 70 */ srawi r3, r4, 5 /* 801683E0 00165340 54 80 D8 08 */ slwi r0, r4, 0x1b /* 801683E4 00165344 7C 63 01 94 */ addze r3, r3 /* 801683E8 00165348 54 84 0F FE */ srwi r4, r4, 0x1f /* 801683EC 0016534C 54 63 10 3A */ slwi r3, r3, 2 /* 801683F0 00165350 7C C6 1A 14 */ add r6, r6, r3 /* 801683F4 00165354 7C 04 00 50 */ subf r0, r4, r0 /* 801683F8 00165358 54 03 28 3E */ rotlwi r3, r0, 5 /* 801683FC 0016535C 80 06 00 00 */ lwz r0, 0(r6) /* 80168400 00165360 7C 63 22 14 */ add r3, r3, r4 /* 80168404 00165364 90 C1 00 0C */ stw r6, 0xc(r1) /* 80168408 00165368 7C A4 18 30 */ slw r4, r5, r3 /* 8016840C 0016536C 7C 83 00 38 */ and r3, r4, r0 /* 80168410 00165370 90 C1 00 08 */ stw r6, 8(r1) /* 80168414 00165374 7C 03 00 D0 */ neg r0, r3 /* 80168418 00165378 7C 00 1B 78 */ or r0, r0, r3 /* 8016841C 0016537C 90 C1 00 1C */ stw r6, 0x1c(r1) /* 80168420 00165380 54 03 0F FE */ srwi r3, r0, 0x1f /* 80168424 00165384 90 81 00 20 */ stw r4, 0x20(r1) /* 80168428 00165388 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 8016842C 0016538C 83 C1 00 48 */ lwz r30, 0x48(r1) /* 80168430 00165390 80 01 00 54 */ lwz r0, 0x54(r1) /* 80168434 00165394 7C 08 03 A6 */ mtlr r0 /* 80168438 00165398 38 21 00 50 */ addi r1, r1, 0x50 /* 8016843C 0016539C 4E 80 00 20 */ blr .global IsWorldVisible__13CMapWorldInfoCF7TAreaId IsWorldVisible__13CMapWorldInfoCF7TAreaId: /* 80168440 001653A0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80168444 001653A4 7C 08 02 A6 */ mflr r0 /* 80168448 001653A8 90 01 00 14 */ stw r0, 0x14(r1) /* 8016844C 001653AC 88 03 00 38 */ lbz r0, 0x38(r3) /* 80168450 001653B0 28 00 00 00 */ cmplwi r0, 0 /* 80168454 001653B4 41 82 00 0C */ beq lbl_80168460 /* 80168458 001653B8 38 60 00 01 */ li r3, 1 /* 8016845C 001653BC 48 00 00 14 */ b lbl_80168470 lbl_80168460: /* 80168460 001653C0 80 04 00 00 */ lwz r0, 0(r4) /* 80168464 001653C4 38 81 00 08 */ addi r4, r1, 8 /* 80168468 001653C8 90 01 00 08 */ stw r0, 8(r1) /* 8016846C 001653CC 4B FF FE B9 */ bl IsMapped__13CMapWorldInfoCF7TAreaId lbl_80168470: /* 80168470 001653D0 80 01 00 14 */ lwz r0, 0x14(r1) /* 80168474 001653D4 7C 08 03 A6 */ mtlr r0 /* 80168478 001653D8 38 21 00 10 */ addi r1, r1, 0x10 /* 8016847C 001653DC 4E 80 00 20 */ blr .global SetIsMapped__13CMapWorldInfoCF7TAreaId SetIsMapped__13CMapWorldInfoCF7TAreaId: /* 80168480 001653E0 94 21 FF B0 */ stwu r1, -0x50(r1) /* 80168484 001653E4 7C 08 02 A6 */ mflr r0 /* 80168488 001653E8 90 01 00 54 */ stw r0, 0x54(r1) /* 8016848C 001653EC 93 E1 00 4C */ stw r31, 0x4c(r1) /* 80168490 001653F0 7C BF 2B 78 */ mr r31, r5 /* 80168494 001653F4 93 C1 00 48 */ stw r30, 0x48(r1) /* 80168498 001653F8 7C 9E 23 78 */ mr r30, r4 /* 8016849C 001653FC 93 A1 00 44 */ stw r29, 0x44(r1) /* 801684A0 00165400 7C 7D 1B 78 */ mr r29, r3 /* 801684A4 00165404 80 64 00 00 */ lwz r3, 0(r4) /* 801684A8 00165408 80 1D 00 14 */ lwz r0, 0x14(r29) /* 801684AC 0016540C 38 63 00 01 */ addi r3, r3, 1 /* 801684B0 00165410 7C 03 00 00 */ cmpw r3, r0 /* 801684B4 00165414 40 81 00 80 */ ble lbl_80168534 /* 801684B8 00165418 54 60 D8 08 */ slwi r0, r3, 0x1b /* 801684BC 0016541C 54 64 0F FE */ srwi r4, r3, 0x1f /* 801684C0 00165420 7C 04 00 50 */ subf r0, r4, r0 /* 801684C4 00165424 7C 65 2E 70 */ srawi r5, r3, 5 /* 801684C8 00165428 54 00 28 3E */ rotlwi r0, r0, 5 /* 801684CC 0016542C 38 7D 00 18 */ addi r3, r29, 0x18 /* 801684D0 00165430 7C 80 22 14 */ add r4, r0, r4 /* 801684D4 00165434 7C A5 01 94 */ addze r5, r5 /* 801684D8 00165438 7C 04 00 D0 */ neg r0, r4 /* 801684DC 0016543C 7C 00 23 78 */ or r0, r0, r4 /* 801684E0 00165440 54 00 0F FE */ srwi r0, r0, 0x1f /* 801684E4 00165444 7C 85 02 14 */ add r4, r5, r0 /* 801684E8 00165448 4B EF B6 3D */ bl "reserve__Q24rstl37vectorFi" /* 801684EC 0016544C 80 1D 00 24 */ lwz r0, 0x24(r29) /* 801684F0 00165450 38 7D 00 14 */ addi r3, r29, 0x14 /* 801684F4 00165454 80 FD 00 14 */ lwz r7, 0x14(r29) /* 801684F8 00165458 38 81 00 30 */ addi r4, r1, 0x30 /* 801684FC 0016545C 80 BE 00 00 */ lwz r5, 0(r30) /* 80168500 00165460 38 C0 00 00 */ li r6, 0 /* 80168504 00165464 90 01 00 18 */ stw r0, 0x18(r1) /* 80168508 00165468 7C A7 28 50 */ subf r5, r7, r5 /* 8016850C 0016546C 90 01 00 14 */ stw r0, 0x14(r1) /* 80168510 00165470 38 A5 00 01 */ addi r5, r5, 1 /* 80168514 00165474 90 01 00 10 */ stw r0, 0x10(r1) /* 80168518 00165478 90 01 00 24 */ stw r0, 0x24(r1) /* 8016851C 0016547C 90 E1 00 28 */ stw r7, 0x28(r1) /* 80168520 00165480 90 01 00 2C */ stw r0, 0x2c(r1) /* 80168524 00165484 90 01 00 30 */ stw r0, 0x30(r1) /* 80168528 00165488 90 E1 00 34 */ stw r7, 0x34(r1) /* 8016852C 0016548C 90 01 00 38 */ stw r0, 0x38(r1) /* 80168530 00165490 4B FF F9 6D */ bl sub_80167e9c lbl_80168534: /* 80168534 00165494 80 DE 00 00 */ lwz r6, 0(r30) /* 80168538 00165498 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 8016853C 0016549C 80 FD 00 24 */ lwz r7, 0x24(r29) /* 80168540 001654A0 38 A0 00 01 */ li r5, 1 /* 80168544 001654A4 54 C4 D8 08 */ slwi r4, r6, 0x1b /* 80168548 001654A8 54 C3 0F FE */ srwi r3, r6, 0x1f /* 8016854C 001654AC 7C 03 20 50 */ subf r0, r3, r4 /* 80168550 001654B0 7C C6 2E 70 */ srawi r6, r6, 5 /* 80168554 001654B4 7C 86 01 94 */ addze r4, r6 /* 80168558 001654B8 54 00 28 3E */ rotlwi r0, r0, 5 /* 8016855C 001654BC 54 84 10 3A */ slwi r4, r4, 2 /* 80168560 001654C0 7C E7 22 14 */ add r7, r7, r4 /* 80168564 001654C4 7C 00 1A 14 */ add r0, r0, r3 /* 80168568 001654C8 7C A4 00 30 */ slw r4, r5, r0 /* 8016856C 001654CC 90 E1 00 0C */ stw r7, 0xc(r1) /* 80168570 001654D0 90 E1 00 08 */ stw r7, 8(r1) /* 80168574 001654D4 90 E1 00 1C */ stw r7, 0x1c(r1) /* 80168578 001654D8 90 81 00 20 */ stw r4, 0x20(r1) /* 8016857C 001654DC 41 82 00 14 */ beq lbl_80168590 /* 80168580 001654E0 80 07 00 00 */ lwz r0, 0(r7) /* 80168584 001654E4 7C 00 23 78 */ or r0, r0, r4 /* 80168588 001654E8 90 07 00 00 */ stw r0, 0(r7) /* 8016858C 001654EC 48 00 00 10 */ b lbl_8016859C lbl_80168590: /* 80168590 001654F0 80 67 00 00 */ lwz r3, 0(r7) /* 80168594 001654F4 7C 60 20 78 */ andc r0, r3, r4 /* 80168598 001654F8 90 07 00 00 */ stw r0, 0(r7) lbl_8016859C: /* 8016859C 001654FC 80 01 00 54 */ lwz r0, 0x54(r1) /* 801685A0 00165500 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 801685A4 00165504 83 C1 00 48 */ lwz r30, 0x48(r1) /* 801685A8 00165508 83 A1 00 44 */ lwz r29, 0x44(r1) /* 801685AC 0016550C 7C 08 03 A6 */ mtlr r0 /* 801685B0 00165510 38 21 00 50 */ addi r1, r1, 0x50 /* 801685B4 00165514 4E 80 00 20 */ blr .global SetAreaVisited__13CMapWorldInfoF7TAreaIdb SetAreaVisited__13CMapWorldInfoF7TAreaIdb: /* 801685B8 00165518 94 21 FF B0 */ stwu r1, -0x50(r1) /* 801685BC 0016551C 7C 08 02 A6 */ mflr r0 /* 801685C0 00165520 90 01 00 54 */ stw r0, 0x54(r1) /* 801685C4 00165524 93 E1 00 4C */ stw r31, 0x4c(r1) /* 801685C8 00165528 7C BF 2B 78 */ mr r31, r5 /* 801685CC 0016552C 93 C1 00 48 */ stw r30, 0x48(r1) /* 801685D0 00165530 7C 9E 23 78 */ mr r30, r4 /* 801685D4 00165534 93 A1 00 44 */ stw r29, 0x44(r1) /* 801685D8 00165538 7C 7D 1B 78 */ mr r29, r3 /* 801685DC 0016553C 80 64 00 00 */ lwz r3, 0(r4) /* 801685E0 00165540 80 1D 00 00 */ lwz r0, 0(r29) /* 801685E4 00165544 38 63 00 01 */ addi r3, r3, 1 /* 801685E8 00165548 7C 03 00 00 */ cmpw r3, r0 /* 801685EC 0016554C 40 81 00 80 */ ble lbl_8016866C /* 801685F0 00165550 54 60 D8 08 */ slwi r0, r3, 0x1b /* 801685F4 00165554 54 64 0F FE */ srwi r4, r3, 0x1f /* 801685F8 00165558 7C 04 00 50 */ subf r0, r4, r0 /* 801685FC 0016555C 7C 65 2E 70 */ srawi r5, r3, 5 /* 80168600 00165560 54 00 28 3E */ rotlwi r0, r0, 5 /* 80168604 00165564 38 7D 00 04 */ addi r3, r29, 4 /* 80168608 00165568 7C 80 22 14 */ add r4, r0, r4 /* 8016860C 0016556C 7C A5 01 94 */ addze r5, r5 /* 80168610 00165570 7C 04 00 D0 */ neg r0, r4 /* 80168614 00165574 7C 00 23 78 */ or r0, r0, r4 /* 80168618 00165578 54 00 0F FE */ srwi r0, r0, 0x1f /* 8016861C 0016557C 7C 85 02 14 */ add r4, r5, r0 /* 80168620 00165580 4B EF B5 05 */ bl "reserve__Q24rstl37vectorFi" /* 80168624 00165584 80 1D 00 10 */ lwz r0, 0x10(r29) /* 80168628 00165588 7F A3 EB 78 */ mr r3, r29 /* 8016862C 0016558C 80 FD 00 00 */ lwz r7, 0(r29) /* 80168630 00165590 38 81 00 30 */ addi r4, r1, 0x30 /* 80168634 00165594 80 BE 00 00 */ lwz r5, 0(r30) /* 80168638 00165598 38 C0 00 00 */ li r6, 0 /* 8016863C 0016559C 90 01 00 18 */ stw r0, 0x18(r1) /* 80168640 001655A0 7C A7 28 50 */ subf r5, r7, r5 /* 80168644 001655A4 90 01 00 14 */ stw r0, 0x14(r1) /* 80168648 001655A8 38 A5 00 01 */ addi r5, r5, 1 /* 8016864C 001655AC 90 01 00 10 */ stw r0, 0x10(r1) /* 80168650 001655B0 90 01 00 24 */ stw r0, 0x24(r1) /* 80168654 001655B4 90 E1 00 28 */ stw r7, 0x28(r1) /* 80168658 001655B8 90 01 00 2C */ stw r0, 0x2c(r1) /* 8016865C 001655BC 90 01 00 30 */ stw r0, 0x30(r1) /* 80168660 001655C0 90 E1 00 34 */ stw r7, 0x34(r1) /* 80168664 001655C4 90 01 00 38 */ stw r0, 0x38(r1) /* 80168668 001655C8 4B FF F8 35 */ bl sub_80167e9c lbl_8016866C: /* 8016866C 001655CC 80 DE 00 00 */ lwz r6, 0(r30) /* 80168670 001655D0 57 E0 06 3F */ clrlwi. r0, r31, 0x18 /* 80168674 001655D4 80 FD 00 10 */ lwz r7, 0x10(r29) /* 80168678 001655D8 38 A0 00 01 */ li r5, 1 /* 8016867C 001655DC 54 C4 D8 08 */ slwi r4, r6, 0x1b /* 80168680 001655E0 54 C3 0F FE */ srwi r3, r6, 0x1f /* 80168684 001655E4 7C 03 20 50 */ subf r0, r3, r4 /* 80168688 001655E8 7C C6 2E 70 */ srawi r6, r6, 5 /* 8016868C 001655EC 7C 86 01 94 */ addze r4, r6 /* 80168690 001655F0 54 00 28 3E */ rotlwi r0, r0, 5 /* 80168694 001655F4 54 84 10 3A */ slwi r4, r4, 2 /* 80168698 001655F8 7C E7 22 14 */ add r7, r7, r4 /* 8016869C 001655FC 7C 00 1A 14 */ add r0, r0, r3 /* 801686A0 00165600 7C A4 00 30 */ slw r4, r5, r0 /* 801686A4 00165604 90 E1 00 0C */ stw r7, 0xc(r1) /* 801686A8 00165608 90 E1 00 08 */ stw r7, 8(r1) /* 801686AC 0016560C 90 E1 00 1C */ stw r7, 0x1c(r1) /* 801686B0 00165610 90 81 00 20 */ stw r4, 0x20(r1) /* 801686B4 00165614 41 82 00 14 */ beq lbl_801686C8 /* 801686B8 00165618 80 07 00 00 */ lwz r0, 0(r7) /* 801686BC 0016561C 7C 00 23 78 */ or r0, r0, r4 /* 801686C0 00165620 90 07 00 00 */ stw r0, 0(r7) /* 801686C4 00165624 48 00 00 10 */ b lbl_801686D4 lbl_801686C8: /* 801686C8 00165628 80 67 00 00 */ lwz r3, 0(r7) /* 801686CC 0016562C 7C 60 20 78 */ andc r0, r3, r4 /* 801686D0 00165630 90 07 00 00 */ stw r0, 0(r7) lbl_801686D4: /* 801686D4 00165634 80 01 00 54 */ lwz r0, 0x54(r1) /* 801686D8 00165638 83 E1 00 4C */ lwz r31, 0x4c(r1) /* 801686DC 0016563C 83 C1 00 48 */ lwz r30, 0x48(r1) /* 801686E0 00165640 83 A1 00 44 */ lwz r29, 0x44(r1) /* 801686E4 00165644 7C 08 03 A6 */ mtlr r0 /* 801686E8 00165648 38 21 00 50 */ addi r1, r1, 0x50 /* 801686EC 0016564C 4E 80 00 20 */ blr .global IsDoorVisited__13CMapWorldInfoCF9TEditorId IsDoorVisited__13CMapWorldInfoCF9TEditorId: /* 801686F0 00165650 94 21 FF D0 */ stwu r1, -0x30(r1) /* 801686F4 00165654 7C 08 02 A6 */ mflr r0 /* 801686F8 00165658 90 01 00 34 */ stw r0, 0x34(r1) /* 801686FC 0016565C 38 E1 00 10 */ addi r7, r1, 0x10 /* 80168700 00165660 88 A1 00 08 */ lbz r5, 8(r1) /* 80168704 00165664 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80168708 00165668 7C 9F 23 78 */ mr r31, r4 /* 8016870C 0016566C 7F E6 FB 78 */ mr r6, r31 /* 80168710 00165670 38 81 00 20 */ addi r4, r1, 0x20 /* 80168714 00165674 93 C1 00 28 */ stw r30, 0x28(r1) /* 80168718 00165678 7C 7E 1B 78 */ mr r30, r3 /* 8016871C 0016567C 80 03 00 2C */ lwz r0, 0x2c(r3) /* 80168720 00165680 81 03 00 34 */ lwz r8, 0x34(r3) /* 80168724 00165684 38 61 00 24 */ addi r3, r1, 0x24 /* 80168728 00165688 54 00 18 38 */ slwi r0, r0, 3 /* 8016872C 0016568C 98 A1 00 0C */ stb r5, 0xc(r1) /* 80168730 00165690 7C 08 02 14 */ add r0, r8, r0 /* 80168734 00165694 98 A1 00 10 */ stb r5, 0x10(r1) /* 80168738 00165698 38 A1 00 18 */ addi r5, r1, 0x18 /* 8016873C 0016569C 90 01 00 14 */ stw r0, 0x14(r1) /* 80168740 001656A0 90 01 00 18 */ stw r0, 0x18(r1) /* 80168744 001656A4 91 01 00 1C */ stw r8, 0x1c(r1) /* 80168748 001656A8 91 01 00 20 */ stw r8, 0x20(r1) /* 8016874C 001656AC 48 00 0E 49 */ bl "lower_bound,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>Fi" /* 801687E4 00165744 89 21 00 08 */ lbz r9, 8(r1) /* 801687E8 00165748 7F C6 F3 78 */ mr r6, r30 /* 801687EC 0016574C 38 61 00 2C */ addi r3, r1, 0x2c /* 801687F0 00165750 38 81 00 28 */ addi r4, r1, 0x28 /* 801687F4 00165754 99 21 00 10 */ stb r9, 0x10(r1) /* 801687F8 00165758 38 A1 00 20 */ addi r5, r1, 0x20 /* 801687FC 0016575C 38 E1 00 10 */ addi r7, r1, 0x10 /* 80168800 00165760 80 1D 00 2C */ lwz r0, 0x2c(r29) /* 80168804 00165764 81 1D 00 34 */ lwz r8, 0x34(r29) /* 80168808 00165768 54 00 18 38 */ slwi r0, r0, 3 /* 8016880C 0016576C 99 21 00 0C */ stb r9, 0xc(r1) /* 80168810 00165770 7D 08 02 14 */ add r8, r8, r0 /* 80168814 00165774 91 01 00 20 */ stw r8, 0x20(r1) /* 80168818 00165778 80 1D 00 34 */ lwz r0, 0x34(r29) /* 8016881C 0016577C 91 01 00 1C */ stw r8, 0x1c(r1) /* 80168820 00165780 90 01 00 24 */ stw r0, 0x24(r1) /* 80168824 00165784 90 01 00 28 */ stw r0, 0x28(r1) /* 80168828 00165788 48 00 0D 6D */ bl "lower_bound,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vectorFi" /* 80168EE4 00165E44 80 FD 00 10 */ lwz r7, 0x10(r29) /* 80168EE8 00165E48 38 00 00 00 */ li r0, 0 /* 80168EEC 00165E4C 90 01 00 18 */ stw r0, 0x18(r1) /* 80168EF0 00165E50 7F A3 EB 78 */ mr r3, r29 /* 80168EF4 00165E54 7F C5 F3 78 */ mr r5, r30 /* 80168EF8 00165E58 7F E6 FB 78 */ mr r6, r31 /* 80168EFC 00165E5C 90 E1 00 10 */ stw r7, 0x10(r1) /* 80168F00 00165E60 38 81 00 20 */ addi r4, r1, 0x20 /* 80168F04 00165E64 90 E1 00 0C */ stw r7, 0xc(r1) /* 80168F08 00165E68 90 E1 00 08 */ stw r7, 8(r1) /* 80168F0C 00165E6C 90 E1 00 14 */ stw r7, 0x14(r1) /* 80168F10 00165E70 90 E1 00 1C */ stw r7, 0x1c(r1) /* 80168F14 00165E74 90 E1 00 20 */ stw r7, 0x20(r1) /* 80168F18 00165E78 90 01 00 24 */ stw r0, 0x24(r1) /* 80168F1C 00165E7C 90 E1 00 28 */ stw r7, 0x28(r1) /* 80168F20 00165E80 4B FF EF 7D */ bl sub_80167e9c /* 80168F24 00165E84 80 01 00 44 */ lwz r0, 0x44(r1) /* 80168F28 00165E88 7F A3 EB 78 */ mr r3, r29 /* 80168F2C 00165E8C 83 E1 00 3C */ lwz r31, 0x3c(r1) /* 80168F30 00165E90 83 C1 00 38 */ lwz r30, 0x38(r1) /* 80168F34 00165E94 83 A1 00 34 */ lwz r29, 0x34(r1) /* 80168F38 00165E98 7C 08 03 A6 */ mtlr r0 /* 80168F3C 00165E9C 38 21 00 40 */ addi r1, r1, 0x40 /* 80168F40 00165EA0 4E 80 00 20 */ blr .global __ct__13CMapWorldInfoFR16CBitStreamReaderRC18CWorldSaveGameInfoUi __ct__13CMapWorldInfoFR16CBitStreamReaderRC18CWorldSaveGameInfoUi: /* 80168F44 00165EA4 94 21 FF 80 */ stwu r1, -0x80(r1) /* 80168F48 00165EA8 7C 08 02 A6 */ mflr r0 /* 80168F4C 00165EAC 90 01 00 84 */ stw r0, 0x84(r1) /* 80168F50 00165EB0 38 00 00 00 */ li r0, 0 /* 80168F54 00165EB4 BF 01 00 60 */ stmw r24, 0x60(r1) /* 80168F58 00165EB8 7C 99 23 78 */ mr r25, r4 /* 80168F5C 00165EBC 7C 78 1B 78 */ mr r24, r3 /* 80168F60 00165EC0 7C BA 2B 78 */ mr r26, r5 /* 80168F64 00165EC4 7C C4 33 78 */ mr r4, r6 /* 80168F68 00165EC8 90 03 00 00 */ stw r0, 0(r3) /* 80168F6C 00165ECC 90 03 00 08 */ stw r0, 8(r3) /* 80168F70 00165ED0 90 03 00 0C */ stw r0, 0xc(r3) /* 80168F74 00165ED4 90 03 00 10 */ stw r0, 0x10(r3) /* 80168F78 00165ED8 90 03 00 14 */ stw r0, 0x14(r3) /* 80168F7C 00165EDC 90 03 00 1C */ stw r0, 0x1c(r3) /* 80168F80 00165EE0 90 03 00 20 */ stw r0, 0x20(r3) /* 80168F84 00165EE4 90 03 00 24 */ stw r0, 0x24(r3) /* 80168F88 00165EE8 90 03 00 2C */ stw r0, 0x2c(r3) /* 80168F8C 00165EEC 90 03 00 30 */ stw r0, 0x30(r3) /* 80168F90 00165EF0 90 03 00 34 */ stw r0, 0x34(r3) /* 80168F94 00165EF4 98 03 00 38 */ stb r0, 0x38(r3) /* 80168F98 00165EF8 80 6D A0 84 */ lwz r3, gpMemoryCard@sda21(r13) /* 80168F9C 00165EFC 48 0D FF 71 */ bl GetSaveWorldMemory__11CMemoryCardCFi /* 80168FA0 00165F00 83 83 00 08 */ lwz r28, 8(r3) /* 80168FA4 00165F04 38 78 00 04 */ addi r3, r24, 4 /* 80168FA8 00165F08 57 80 D8 08 */ slwi r0, r28, 0x1b /* 80168FAC 00165F0C 57 85 0F FE */ srwi r5, r28, 0x1f /* 80168FB0 00165F10 7C 85 00 50 */ subf r4, r5, r0 /* 80168FB4 00165F14 7F 80 2E 70 */ srawi r0, r28, 5 /* 80168FB8 00165F18 54 84 28 3E */ rotlwi r4, r4, 5 /* 80168FBC 00165F1C 7F C4 2A 14 */ add r30, r4, r5 /* 80168FC0 00165F20 7F A0 01 94 */ addze r29, r0 /* 80168FC4 00165F24 7C 1E 00 D0 */ neg r0, r30 /* 80168FC8 00165F28 7C 00 F3 78 */ or r0, r0, r30 /* 80168FCC 00165F2C 54 00 0F FE */ srwi r0, r0, 0x1f /* 80168FD0 00165F30 7C 9D 02 14 */ add r4, r29, r0 /* 80168FD4 00165F34 4B EF AB 51 */ bl "reserve__Q24rstl37vectorFi" /* 80168FD8 00165F38 3B 60 00 00 */ li r27, 0 /* 80168FDC 00165F3C 48 00 01 14 */ b lbl_801690F0 lbl_80168FE0: /* 80168FE0 00165F40 7F 23 CB 78 */ mr r3, r25 /* 80168FE4 00165F44 38 80 00 01 */ li r4, 1 /* 80168FE8 00165F48 48 1D 5D 51 */ bl ReadBits__12CInputStreamFUi /* 80168FEC 00165F4C 80 98 00 00 */ lwz r4, 0(r24) /* 80168FF0 00165F50 7C 03 00 D0 */ neg r0, r3 /* 80168FF4 00165F54 7C 05 1B 78 */ or r5, r0, r3 /* 80168FF8 00165F58 54 80 D8 08 */ slwi r0, r4, 0x1b /* 80168FFC 00165F5C 54 83 0F FE */ srwi r3, r4, 0x1f /* 80169000 00165F60 7C 03 00 50 */ subf r0, r3, r0 /* 80169004 00165F64 54 BF 0F FE */ srwi r31, r5, 0x1f /* 80169008 00165F68 54 00 28 3E */ rotlwi r0, r0, 5 /* 8016900C 00165F6C 7C 00 1A 15 */ add. r0, r0, r3 /* 80169010 00165F70 40 82 00 54 */ bne lbl_80169064 /* 80169014 00165F74 80 18 00 08 */ lwz r0, 8(r24) /* 80169018 00165F78 80 B8 00 0C */ lwz r5, 0xc(r24) /* 8016901C 00165F7C 7C 00 28 00 */ cmpw r0, r5 /* 80169020 00165F80 41 80 00 1C */ blt lbl_8016903C /* 80169024 00165F84 2C 05 00 00 */ cmpwi r5, 0 /* 80169028 00165F88 38 78 00 04 */ addi r3, r24, 4 /* 8016902C 00165F8C 38 80 00 04 */ li r4, 4 /* 80169030 00165F90 41 82 00 08 */ beq lbl_80169038 /* 80169034 00165F94 54 A4 08 3C */ slwi r4, r5, 1 lbl_80169038: /* 80169038 00165F98 4B EF AA ED */ bl "reserve__Q24rstl37vectorFi" lbl_8016903C: /* 8016903C 00165F9C 80 18 00 08 */ lwz r0, 8(r24) /* 80169040 00165FA0 80 78 00 10 */ lwz r3, 0x10(r24) /* 80169044 00165FA4 54 00 10 3A */ slwi r0, r0, 2 /* 80169048 00165FA8 7C 63 02 15 */ add. r3, r3, r0 /* 8016904C 00165FAC 41 82 00 0C */ beq lbl_80169058 /* 80169050 00165FB0 80 0D 8D 88 */ lwz r0, lbl_805A7948@sda21(r13) /* 80169054 00165FB4 90 03 00 00 */ stw r0, 0(r3) lbl_80169058: /* 80169058 00165FB8 80 78 00 08 */ lwz r3, 8(r24) /* 8016905C 00165FBC 38 03 00 01 */ addi r0, r3, 1 /* 80169060 00165FC0 90 18 00 08 */ stw r0, 8(r24) lbl_80169064: /* 80169064 00165FC4 80 78 00 00 */ lwz r3, 0(r24) /* 80169068 00165FC8 28 1F 00 00 */ cmplwi r31, 0 /* 8016906C 00165FCC 38 03 00 01 */ addi r0, r3, 1 /* 80169070 00165FD0 90 18 00 00 */ stw r0, 0(r24) /* 80169074 00165FD4 41 82 00 40 */ beq lbl_801690B4 /* 80169078 00165FD8 7C 64 2E 70 */ srawi r4, r3, 5 /* 8016907C 00165FDC 54 60 D8 08 */ slwi r0, r3, 0x1b /* 80169080 00165FE0 54 63 0F FE */ srwi r3, r3, 0x1f /* 80169084 00165FE4 80 F8 00 10 */ lwz r7, 0x10(r24) /* 80169088 00165FE8 7C A4 01 94 */ addze r5, r4 /* 8016908C 00165FEC 38 80 00 01 */ li r4, 1 /* 80169090 00165FF0 7C 03 00 50 */ subf r0, r3, r0 /* 80169094 00165FF4 54 A6 10 3A */ slwi r6, r5, 2 /* 80169098 00165FF8 54 00 28 3E */ rotlwi r0, r0, 5 /* 8016909C 00165FFC 7C A7 30 2E */ lwzx r5, r7, r6 /* 801690A0 00166000 7C 00 1A 14 */ add r0, r0, r3 /* 801690A4 00166004 7C 80 00 30 */ slw r0, r4, r0 /* 801690A8 00166008 7C A0 03 78 */ or r0, r5, r0 /* 801690AC 0016600C 7C 07 31 2E */ stwx r0, r7, r6 /* 801690B0 00166010 48 00 00 3C */ b lbl_801690EC lbl_801690B4: /* 801690B4 00166014 7C 64 2E 70 */ srawi r4, r3, 5 /* 801690B8 00166018 54 60 D8 08 */ slwi r0, r3, 0x1b /* 801690BC 0016601C 54 63 0F FE */ srwi r3, r3, 0x1f /* 801690C0 00166020 80 F8 00 10 */ lwz r7, 0x10(r24) /* 801690C4 00166024 7C A4 01 94 */ addze r5, r4 /* 801690C8 00166028 38 80 00 01 */ li r4, 1 /* 801690CC 0016602C 7C 03 00 50 */ subf r0, r3, r0 /* 801690D0 00166030 54 A6 10 3A */ slwi r6, r5, 2 /* 801690D4 00166034 54 00 28 3E */ rotlwi r0, r0, 5 /* 801690D8 00166038 7C A7 30 2E */ lwzx r5, r7, r6 /* 801690DC 0016603C 7C 00 1A 14 */ add r0, r0, r3 /* 801690E0 00166040 7C 80 00 30 */ slw r0, r4, r0 /* 801690E4 00166044 7C A0 00 78 */ andc r0, r5, r0 /* 801690E8 00166048 7C 07 31 2E */ stwx r0, r7, r6 lbl_801690EC: /* 801690EC 0016604C 3B 7B 00 01 */ addi r27, r27, 1 lbl_801690F0: /* 801690F0 00166050 7C 1B E0 00 */ cmpw r27, r28 /* 801690F4 00166054 41 80 FE EC */ blt lbl_80168FE0 /* 801690F8 00166058 7C 1E 00 D0 */ neg r0, r30 /* 801690FC 0016605C 38 78 00 18 */ addi r3, r24, 0x18 /* 80169100 00166060 7C 00 F3 78 */ or r0, r0, r30 /* 80169104 00166064 54 00 0F FE */ srwi r0, r0, 0x1f /* 80169108 00166068 7C 9D 02 14 */ add r4, r29, r0 /* 8016910C 0016606C 4B EF AA 19 */ bl "reserve__Q24rstl37vectorFi" /* 80169110 00166070 3B 60 00 00 */ li r27, 0 /* 80169114 00166074 48 00 01 14 */ b lbl_80169228 lbl_80169118: /* 80169118 00166078 7F 23 CB 78 */ mr r3, r25 /* 8016911C 0016607C 38 80 00 01 */ li r4, 1 /* 80169120 00166080 48 1D 5C 19 */ bl ReadBits__12CInputStreamFUi /* 80169124 00166084 80 98 00 14 */ lwz r4, 0x14(r24) /* 80169128 00166088 7C 03 00 D0 */ neg r0, r3 /* 8016912C 0016608C 7C 05 1B 78 */ or r5, r0, r3 /* 80169130 00166090 54 80 D8 08 */ slwi r0, r4, 0x1b /* 80169134 00166094 54 83 0F FE */ srwi r3, r4, 0x1f /* 80169138 00166098 7C 03 00 50 */ subf r0, r3, r0 /* 8016913C 0016609C 54 BF 0F FE */ srwi r31, r5, 0x1f /* 80169140 001660A0 54 00 28 3E */ rotlwi r0, r0, 5 /* 80169144 001660A4 7C 00 1A 15 */ add. r0, r0, r3 /* 80169148 001660A8 40 82 00 54 */ bne lbl_8016919C /* 8016914C 001660AC 80 18 00 1C */ lwz r0, 0x1c(r24) /* 80169150 001660B0 80 B8 00 20 */ lwz r5, 0x20(r24) /* 80169154 001660B4 7C 00 28 00 */ cmpw r0, r5 /* 80169158 001660B8 41 80 00 1C */ blt lbl_80169174 /* 8016915C 001660BC 2C 05 00 00 */ cmpwi r5, 0 /* 80169160 001660C0 38 78 00 18 */ addi r3, r24, 0x18 /* 80169164 001660C4 38 80 00 04 */ li r4, 4 /* 80169168 001660C8 41 82 00 08 */ beq lbl_80169170 /* 8016916C 001660CC 54 A4 08 3C */ slwi r4, r5, 1 lbl_80169170: /* 80169170 001660D0 4B EF A9 B5 */ bl "reserve__Q24rstl37vectorFi" lbl_80169174: /* 80169174 001660D4 80 18 00 1C */ lwz r0, 0x1c(r24) /* 80169178 001660D8 80 78 00 24 */ lwz r3, 0x24(r24) /* 8016917C 001660DC 54 00 10 3A */ slwi r0, r0, 2 /* 80169180 001660E0 7C 63 02 15 */ add. r3, r3, r0 /* 80169184 001660E4 41 82 00 0C */ beq lbl_80169190 /* 80169188 001660E8 80 0D 8D 88 */ lwz r0, lbl_805A7948@sda21(r13) /* 8016918C 001660EC 90 03 00 00 */ stw r0, 0(r3) lbl_80169190: /* 80169190 001660F0 80 78 00 1C */ lwz r3, 0x1c(r24) /* 80169194 001660F4 38 03 00 01 */ addi r0, r3, 1 /* 80169198 001660F8 90 18 00 1C */ stw r0, 0x1c(r24) lbl_8016919C: /* 8016919C 001660FC 80 78 00 14 */ lwz r3, 0x14(r24) /* 801691A0 00166100 28 1F 00 00 */ cmplwi r31, 0 /* 801691A4 00166104 38 03 00 01 */ addi r0, r3, 1 /* 801691A8 00166108 90 18 00 14 */ stw r0, 0x14(r24) /* 801691AC 0016610C 41 82 00 40 */ beq lbl_801691EC /* 801691B0 00166110 7C 64 2E 70 */ srawi r4, r3, 5 /* 801691B4 00166114 54 60 D8 08 */ slwi r0, r3, 0x1b /* 801691B8 00166118 54 63 0F FE */ srwi r3, r3, 0x1f /* 801691BC 0016611C 80 F8 00 24 */ lwz r7, 0x24(r24) /* 801691C0 00166120 7C A4 01 94 */ addze r5, r4 /* 801691C4 00166124 38 80 00 01 */ li r4, 1 /* 801691C8 00166128 7C 03 00 50 */ subf r0, r3, r0 /* 801691CC 0016612C 54 A6 10 3A */ slwi r6, r5, 2 /* 801691D0 00166130 54 00 28 3E */ rotlwi r0, r0, 5 /* 801691D4 00166134 7C A7 30 2E */ lwzx r5, r7, r6 /* 801691D8 00166138 7C 00 1A 14 */ add r0, r0, r3 /* 801691DC 0016613C 7C 80 00 30 */ slw r0, r4, r0 /* 801691E0 00166140 7C A0 03 78 */ or r0, r5, r0 /* 801691E4 00166144 7C 07 31 2E */ stwx r0, r7, r6 /* 801691E8 00166148 48 00 00 3C */ b lbl_80169224 lbl_801691EC: /* 801691EC 0016614C 7C 64 2E 70 */ srawi r4, r3, 5 /* 801691F0 00166150 54 60 D8 08 */ slwi r0, r3, 0x1b /* 801691F4 00166154 54 63 0F FE */ srwi r3, r3, 0x1f /* 801691F8 00166158 80 F8 00 24 */ lwz r7, 0x24(r24) /* 801691FC 0016615C 7C A4 01 94 */ addze r5, r4 /* 80169200 00166160 38 80 00 01 */ li r4, 1 /* 80169204 00166164 7C 03 00 50 */ subf r0, r3, r0 /* 80169208 00166168 54 A6 10 3A */ slwi r6, r5, 2 /* 8016920C 0016616C 54 00 28 3E */ rotlwi r0, r0, 5 /* 80169210 00166170 7C A7 30 2E */ lwzx r5, r7, r6 /* 80169214 00166174 7C 00 1A 14 */ add r0, r0, r3 /* 80169218 00166178 7C 80 00 30 */ slw r0, r4, r0 /* 8016921C 0016617C 7C A0 00 78 */ andc r0, r5, r0 /* 80169220 00166180 7C 07 31 2E */ stwx r0, r7, r6 lbl_80169224: /* 80169224 00166184 3B 7B 00 01 */ addi r27, r27, 1 lbl_80169228: /* 80169228 00166188 7C 1B E0 00 */ cmpw r27, r28 /* 8016922C 0016618C 41 80 FE EC */ blt lbl_80169118 /* 80169230 00166190 80 9A 00 38 */ lwz r4, 0x38(r26) /* 80169234 00166194 38 61 00 44 */ addi r3, r1, 0x44 /* 80169238 00166198 38 A0 00 00 */ li r5, 0 /* 8016923C 0016619C 4B FF FC 3D */ bl sub_80168e78 /* 80169240 001661A0 3B 60 00 00 */ li r27, 0 /* 80169244 001661A4 48 00 00 80 */ b lbl_801692C4 lbl_80169248: /* 80169248 001661A8 7F 23 CB 78 */ mr r3, r25 /* 8016924C 001661AC 38 80 00 01 */ li r4, 1 /* 80169250 001661B0 48 1D 5A E9 */ bl ReadBits__12CInputStreamFUi /* 80169254 001661B4 57 60 D8 08 */ slwi r0, r27, 0x1b /* 80169258 001661B8 57 64 0F FE */ srwi r4, r27, 0x1f /* 8016925C 001661BC 7F 65 2E 70 */ srawi r5, r27, 5 /* 80169260 001661C0 7C C3 00 D0 */ neg r6, r3 /* 80169264 001661C4 7C 04 00 50 */ subf r0, r4, r0 /* 80169268 001661C8 80 E1 00 54 */ lwz r7, 0x54(r1) /* 8016926C 001661CC 7C C6 1B 78 */ or r6, r6, r3 /* 80169270 001661D0 7C A5 01 94 */ addze r5, r5 /* 80169274 001661D4 54 00 28 3E */ rotlwi r0, r0, 5 /* 80169278 001661D8 38 60 00 01 */ li r3, 1 /* 8016927C 001661DC 54 A5 10 3A */ slwi r5, r5, 2 /* 80169280 001661E0 54 C6 0F FF */ rlwinm. r6, r6, 1, 0x1f, 0x1f /* 80169284 001661E4 7C E7 2A 14 */ add r7, r7, r5 /* 80169288 001661E8 7C 00 22 14 */ add r0, r0, r4 /* 8016928C 001661EC 7C 64 00 30 */ slw r4, r3, r0 /* 80169290 001661F0 90 E1 00 18 */ stw r7, 0x18(r1) /* 80169294 001661F4 90 E1 00 14 */ stw r7, 0x14(r1) /* 80169298 001661F8 90 E1 00 3C */ stw r7, 0x3c(r1) /* 8016929C 001661FC 90 81 00 40 */ stw r4, 0x40(r1) /* 801692A0 00166200 41 82 00 14 */ beq lbl_801692B4 /* 801692A4 00166204 80 07 00 00 */ lwz r0, 0(r7) /* 801692A8 00166208 7C 00 23 78 */ or r0, r0, r4 /* 801692AC 0016620C 90 07 00 00 */ stw r0, 0(r7) /* 801692B0 00166210 48 00 00 10 */ b lbl_801692C0 lbl_801692B4: /* 801692B4 00166214 80 67 00 00 */ lwz r3, 0(r7) /* 801692B8 00166218 7C 60 20 78 */ andc r0, r3, r4 /* 801692BC 0016621C 90 07 00 00 */ stw r0, 0(r7) lbl_801692C0: /* 801692C0 00166220 3B 7B 00 01 */ addi r27, r27, 1 lbl_801692C4: /* 801692C4 00166224 80 01 00 44 */ lwz r0, 0x44(r1) /* 801692C8 00166228 7C 1B 00 00 */ cmpw r27, r0 /* 801692CC 0016622C 41 80 FF 7C */ blt lbl_80169248 /* 801692D0 00166230 7F 23 CB 78 */ mr r3, r25 /* 801692D4 00166234 38 80 00 01 */ li r4, 1 /* 801692D8 00166238 48 1D 5A 61 */ bl ReadBits__12CInputStreamFUi /* 801692DC 0016623C 7C 83 00 D0 */ neg r4, r3 /* 801692E0 00166240 88 01 00 10 */ lbz r0, 0x10(r1) /* 801692E4 00166244 7C 84 1B 78 */ or r4, r4, r3 /* 801692E8 00166248 38 61 00 2C */ addi r3, r1, 0x2c /* 801692EC 0016624C 54 86 0F FE */ srwi r6, r4, 0x1f /* 801692F0 00166250 98 01 00 0C */ stb r0, 0xc(r1) /* 801692F4 00166254 38 81 00 34 */ addi r4, r1, 0x34 /* 801692F8 00166258 38 A1 00 08 */ addi r5, r1, 8 /* 801692FC 0016625C 98 D8 00 38 */ stb r6, 0x38(r24) /* 80169300 00166260 98 01 00 08 */ stb r0, 8(r1) /* 80169304 00166264 80 18 00 2C */ lwz r0, 0x2c(r24) /* 80169308 00166268 80 D8 00 34 */ lwz r6, 0x34(r24) /* 8016930C 0016626C 54 00 18 38 */ slwi r0, r0, 3 /* 80169310 00166270 7C C6 02 14 */ add r6, r6, r0 /* 80169314 00166274 90 C1 00 34 */ stw r6, 0x34(r1) /* 80169318 00166278 80 18 00 34 */ lwz r0, 0x34(r24) /* 8016931C 0016627C 90 C1 00 38 */ stw r6, 0x38(r1) /* 80169320 00166280 90 01 00 30 */ stw r0, 0x30(r1) /* 80169324 00166284 90 01 00 2C */ stw r0, 0x2c(r1) /* 80169328 00166288 48 00 00 95 */ bl sub_801693bc /* 8016932C 0016628C 80 01 00 4C */ lwz r0, 0x4c(r1) /* 80169330 00166290 80 61 00 54 */ lwz r3, 0x54(r1) /* 80169334 00166294 54 00 10 3A */ slwi r0, r0, 2 /* 80169338 00166298 7C 03 02 14 */ add r0, r3, r0 /* 8016933C 0016629C 90 61 00 20 */ stw r3, 0x20(r1) /* 80169340 001662A0 7C 64 1B 78 */ mr r4, r3 /* 80169344 001662A4 90 01 00 28 */ stw r0, 0x28(r1) /* 80169348 001662A8 90 01 00 24 */ stw r0, 0x24(r1) /* 8016934C 001662AC 90 61 00 1C */ stw r3, 0x1c(r1) /* 80169350 001662B0 48 00 00 08 */ b lbl_80169358 lbl_80169354: /* 80169354 001662B4 38 84 00 04 */ addi r4, r4, 4 lbl_80169358: /* 80169358 001662B8 7C 04 00 40 */ cmplw r4, r0 /* 8016935C 001662BC 40 82 FF F8 */ bne lbl_80169354 /* 80169360 001662C0 28 03 00 00 */ cmplwi r3, 0 /* 80169364 001662C4 41 82 00 08 */ beq lbl_8016936C /* 80169368 001662C8 48 1A C5 C9 */ bl Free__7CMemoryFPCv lbl_8016936C: /* 8016936C 001662CC 7F 03 C3 78 */ mr r3, r24 /* 80169370 001662D0 BB 01 00 60 */ lmw r24, 0x60(r1) /* 80169374 001662D4 80 01 00 84 */ lwz r0, 0x84(r1) /* 80169378 001662D8 7C 08 03 A6 */ mtlr r0 /* 8016937C 001662DC 38 21 00 80 */ addi r1, r1, 0x80 /* 80169380 001662E0 4E 80 00 20 */ blr .global __ct__13CMapWorldInfoFv __ct__13CMapWorldInfoFv: /* 80169384 001662E4 38 00 00 00 */ li r0, 0 /* 80169388 001662E8 90 03 00 00 */ stw r0, 0(r3) /* 8016938C 001662EC 90 03 00 08 */ stw r0, 8(r3) /* 80169390 001662F0 90 03 00 0C */ stw r0, 0xc(r3) /* 80169394 001662F4 90 03 00 10 */ stw r0, 0x10(r3) /* 80169398 001662F8 90 03 00 14 */ stw r0, 0x14(r3) /* 8016939C 001662FC 90 03 00 1C */ stw r0, 0x1c(r3) /* 801693A0 00166300 90 03 00 20 */ stw r0, 0x20(r3) /* 801693A4 00166304 90 03 00 24 */ stw r0, 0x24(r3) /* 801693A8 00166308 90 03 00 2C */ stw r0, 0x2c(r3) /* 801693AC 0016630C 90 03 00 30 */ stw r0, 0x30(r3) /* 801693B0 00166310 90 03 00 34 */ stw r0, 0x34(r3) /* 801693B4 00166314 98 03 00 38 */ stb r0, 0x38(r3) /* 801693B8 00166318 4E 80 00 20 */ blr .global sub_801693bc sub_801693bc: /* 801693BC 0016631C 94 21 FF A0 */ stwu r1, -0x60(r1) /* 801693C0 00166320 7C 08 02 A6 */ mflr r0 /* 801693C4 00166324 90 01 00 64 */ stw r0, 0x64(r1) /* 801693C8 00166328 93 E1 00 5C */ stw r31, 0x5c(r1) /* 801693CC 0016632C 7C BF 2B 78 */ mr r31, r5 /* 801693D0 00166330 93 C1 00 58 */ stw r30, 0x58(r1) /* 801693D4 00166334 7C 9E 23 78 */ mr r30, r4 /* 801693D8 00166338 93 A1 00 54 */ stw r29, 0x54(r1) /* 801693DC 0016633C 7C 7D 1B 78 */ mr r29, r3 /* 801693E0 00166340 93 81 00 50 */ stw r28, 0x50(r1) /* 801693E4 00166344 80 63 00 00 */ lwz r3, 0(r3) /* 801693E8 00166348 80 A4 00 00 */ lwz r5, 0(r4) /* 801693EC 0016634C 7C 03 28 50 */ subf r0, r3, r5 /* 801693F0 00166350 7C 00 1E 70 */ srawi r0, r0, 3 /* 801693F4 00166354 7C 80 01 94 */ addze r4, r0 /* 801693F8 00166358 2C 04 00 01 */ cmpwi r4, 1 /* 801693FC 0016635C 40 81 01 78 */ ble lbl_80169574 /* 80169400 00166360 2C 04 00 14 */ cmpwi r4, 0x14 /* 80169404 00166364 41 81 00 30 */ bgt lbl_80169434 /* 80169408 00166368 88 FF 00 00 */ lbz r7, 0(r31) /* 8016940C 0016636C 38 61 00 34 */ addi r3, r1, 0x34 /* 80169410 00166370 80 DE 00 00 */ lwz r6, 0(r30) /* 80169414 00166374 38 81 00 30 */ addi r4, r1, 0x30 /* 80169418 00166378 80 1D 00 00 */ lwz r0, 0(r29) /* 8016941C 0016637C 38 A1 00 14 */ addi r5, r1, 0x14 /* 80169420 00166380 98 E1 00 14 */ stb r7, 0x14(r1) /* 80169424 00166384 90 C1 00 30 */ stw r6, 0x30(r1) /* 80169428 00166388 90 01 00 34 */ stw r0, 0x34(r1) /* 8016942C 0016638C 48 00 04 65 */ bl sub_80169890 /* 80169430 00166390 48 00 01 44 */ b lbl_80169574 lbl_80169434: /* 80169434 00166394 54 80 0F FE */ srwi r0, r4, 0x1f /* 80169438 00166398 38 A5 FF F8 */ addi r5, r5, -8 /* 8016943C 0016639C 7C 80 22 14 */ add r4, r0, r4 /* 80169440 001663A0 88 1F 00 00 */ lbz r0, 0(r31) /* 80169444 001663A4 7C 84 0E 70 */ srawi r4, r4, 1 /* 80169448 001663A8 90 A1 00 3C */ stw r5, 0x3c(r1) /* 8016944C 001663AC 54 84 18 38 */ slwi r4, r4, 3 /* 80169450 001663B0 38 C1 00 10 */ addi r6, r1, 0x10 /* 80169454 001663B4 7F 83 22 14 */ add r28, r3, r4 /* 80169458 001663B8 98 01 00 10 */ stb r0, 0x10(r1) /* 8016945C 001663BC 7F 84 E3 78 */ mr r4, r28 /* 80169460 001663C0 48 00 03 8D */ bl sub_801697ec /* 80169464 001663C4 80 9D 00 00 */ lwz r4, 0(r29) /* 80169468 001663C8 80 61 00 3C */ lwz r3, 0x3c(r1) /* 8016946C 001663CC 38 84 00 08 */ addi r4, r4, 8 /* 80169470 001663D0 80 BC 00 00 */ lwz r5, 0(r28) /* 80169474 001663D4 38 03 FF F8 */ addi r0, r3, -8 /* 80169478 001663D8 90 81 00 38 */ stw r4, 0x38(r1) /* 8016947C 001663DC 54 A9 01 BE */ clrlwi r9, r5, 6 /* 80169480 001663E0 90 01 00 3C */ stw r0, 0x3c(r1) /* 80169484 001663E4 48 00 00 10 */ b lbl_80169494 lbl_80169488: /* 80169488 001663E8 80 61 00 38 */ lwz r3, 0x38(r1) /* 8016948C 001663EC 38 03 00 08 */ addi r0, r3, 8 /* 80169490 001663F0 90 01 00 38 */ stw r0, 0x38(r1) lbl_80169494: /* 80169494 001663F4 80 61 00 38 */ lwz r3, 0x38(r1) /* 80169498 001663F8 80 03 00 00 */ lwz r0, 0(r3) /* 8016949C 001663FC 54 00 01 BE */ clrlwi r0, r0, 6 /* 801694A0 00166400 7C 00 48 40 */ cmplw r0, r9 /* 801694A4 00166404 41 80 FF E4 */ blt lbl_80169488 /* 801694A8 00166408 48 00 00 10 */ b lbl_801694B8 lbl_801694AC: /* 801694AC 0016640C 80 61 00 3C */ lwz r3, 0x3c(r1) /* 801694B0 00166410 38 03 FF F8 */ addi r0, r3, -8 /* 801694B4 00166414 90 01 00 3C */ stw r0, 0x3c(r1) lbl_801694B8: /* 801694B8 00166418 80 61 00 3C */ lwz r3, 0x3c(r1) /* 801694BC 0016641C 80 03 00 00 */ lwz r0, 0(r3) /* 801694C0 00166420 54 00 01 BE */ clrlwi r0, r0, 6 /* 801694C4 00166424 7C 09 00 40 */ cmplw r9, r0 /* 801694C8 00166428 41 80 FF E4 */ blt lbl_801694AC /* 801694CC 0016642C 80 01 00 38 */ lwz r0, 0x38(r1) /* 801694D0 00166430 7C 00 18 40 */ cmplw r0, r3 /* 801694D4 00166434 40 80 00 50 */ bge lbl_80169524 /* 801694D8 00166438 80 E1 00 38 */ lwz r7, 0x38(r1) /* 801694DC 0016643C 81 01 00 3C */ lwz r8, 0x3c(r1) /* 801694E0 00166440 80 C7 00 00 */ lwz r6, 0(r7) /* 801694E4 00166444 38 67 00 08 */ addi r3, r7, 8 /* 801694E8 00166448 88 A7 00 04 */ lbz r5, 4(r7) /* 801694EC 0016644C 38 08 FF F8 */ addi r0, r8, -8 /* 801694F0 00166450 80 88 00 00 */ lwz r4, 0(r8) /* 801694F4 00166454 91 01 00 28 */ stw r8, 0x28(r1) /* 801694F8 00166458 90 87 00 00 */ stw r4, 0(r7) /* 801694FC 0016645C 88 88 00 04 */ lbz r4, 4(r8) /* 80169500 00166460 90 E1 00 2C */ stw r7, 0x2c(r1) /* 80169504 00166464 98 87 00 04 */ stb r4, 4(r7) /* 80169508 00166468 90 C8 00 00 */ stw r6, 0(r8) /* 8016950C 0016646C 90 C1 00 40 */ stw r6, 0x40(r1) /* 80169510 00166470 98 A1 00 44 */ stb r5, 0x44(r1) /* 80169514 00166474 98 A8 00 04 */ stb r5, 4(r8) /* 80169518 00166478 90 61 00 38 */ stw r3, 0x38(r1) /* 8016951C 0016647C 90 01 00 3C */ stw r0, 0x3c(r1) /* 80169520 00166480 4B FF FF 74 */ b lbl_80169494 lbl_80169524: /* 80169524 00166484 88 FF 00 00 */ lbz r7, 0(r31) /* 80169528 00166488 38 61 00 24 */ addi r3, r1, 0x24 /* 8016952C 0016648C 80 C1 00 38 */ lwz r6, 0x38(r1) /* 80169530 00166490 38 81 00 20 */ addi r4, r1, 0x20 /* 80169534 00166494 80 1D 00 00 */ lwz r0, 0(r29) /* 80169538 00166498 38 A1 00 0C */ addi r5, r1, 0xc /* 8016953C 0016649C 98 E1 00 0C */ stb r7, 0xc(r1) /* 80169540 001664A0 90 C1 00 20 */ stw r6, 0x20(r1) /* 80169544 001664A4 90 01 00 24 */ stw r0, 0x24(r1) /* 80169548 001664A8 4B FF FE 75 */ bl sub_801693bc /* 8016954C 001664AC 88 FF 00 00 */ lbz r7, 0(r31) /* 80169550 001664B0 38 61 00 1C */ addi r3, r1, 0x1c /* 80169554 001664B4 80 DE 00 00 */ lwz r6, 0(r30) /* 80169558 001664B8 38 81 00 18 */ addi r4, r1, 0x18 /* 8016955C 001664BC 80 01 00 38 */ lwz r0, 0x38(r1) /* 80169560 001664C0 38 A1 00 08 */ addi r5, r1, 8 /* 80169564 001664C4 98 E1 00 08 */ stb r7, 8(r1) /* 80169568 001664C8 90 C1 00 18 */ stw r6, 0x18(r1) /* 8016956C 001664CC 90 01 00 1C */ stw r0, 0x1c(r1) /* 80169570 001664D0 4B FF FE 4D */ bl sub_801693bc lbl_80169574: /* 80169574 001664D4 80 01 00 64 */ lwz r0, 0x64(r1) /* 80169578 001664D8 83 E1 00 5C */ lwz r31, 0x5c(r1) /* 8016957C 001664DC 83 C1 00 58 */ lwz r30, 0x58(r1) /* 80169580 001664E0 83 A1 00 54 */ lwz r29, 0x54(r1) /* 80169584 001664E4 83 81 00 50 */ lwz r28, 0x50(r1) /* 80169588 001664E8 7C 08 03 A6 */ mtlr r0 /* 8016958C 001664EC 38 21 00 60 */ addi r1, r1, 0x60 /* 80169590 001664F0 4E 80 00 20 */ blr .global "lower_bound,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vector,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>,9TEditorId,Q24rstl73pair_sorter_finder,Q24rstl16less<9TEditorId>>>__4rstlFQ24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>,Q24rstl17rmemory_allocator>Q24rstl144pointer_iterator,Q24rstl62vector,Q24rstl17rmemory_allocator>Fi" "reserve__Q24rstl62vector,Q24rstl17rmemory_allocator>Fi": /* 8016965C 001665BC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80169660 001665C0 7C 08 02 A6 */ mflr r0 /* 80169664 001665C4 90 01 00 34 */ stw r0, 0x34(r1) /* 80169668 001665C8 93 E1 00 2C */ stw r31, 0x2c(r1) /* 8016966C 001665CC 7C 9F 23 78 */ mr r31, r4 /* 80169670 001665D0 93 C1 00 28 */ stw r30, 0x28(r1) /* 80169674 001665D4 7C 7E 1B 78 */ mr r30, r3 /* 80169678 001665D8 93 A1 00 24 */ stw r29, 0x24(r1) /* 8016967C 001665DC 80 03 00 08 */ lwz r0, 8(r3) /* 80169680 001665E0 7C 1F 00 00 */ cmpw r31, r0 /* 80169684 001665E4 40 81 00 B0 */ ble lbl_80169734 /* 80169688 001665E8 57 E3 18 39 */ rlwinm. r3, r31, 3, 0, 0x1c /* 8016968C 001665EC 40 82 00 0C */ bne lbl_80169698 /* 80169690 001665F0 3B A0 00 00 */ li r29, 0 /* 80169694 001665F4 48 00 00 18 */ b lbl_801696AC lbl_80169698: /* 80169698 001665F8 3C 80 80 3D */ lis r4, lbl_803D0428@ha /* 8016969C 001665FC 38 A0 00 00 */ li r5, 0 /* 801696A0 00166600 38 84 04 28 */ addi r4, r4, lbl_803D0428@l /* 801696A4 00166604 48 1A C1 75 */ bl __nwa__FUlPCcPCc /* 801696A8 00166608 7C 7D 1B 78 */ mr r29, r3 lbl_801696AC: /* 801696AC 0016660C 80 1E 00 04 */ lwz r0, 4(r30) /* 801696B0 00166610 7F A4 EB 78 */ mr r4, r29 /* 801696B4 00166614 80 BE 00 0C */ lwz r5, 0xc(r30) /* 801696B8 00166618 54 00 18 38 */ slwi r0, r0, 3 /* 801696BC 0016661C 7C 65 02 14 */ add r3, r5, r0 /* 801696C0 00166620 90 A1 00 10 */ stw r5, 0x10(r1) /* 801696C4 00166624 90 61 00 08 */ stw r3, 8(r1) /* 801696C8 00166628 90 61 00 0C */ stw r3, 0xc(r1) /* 801696CC 0016662C 90 A1 00 14 */ stw r5, 0x14(r1) /* 801696D0 00166630 48 00 00 24 */ b lbl_801696F4 lbl_801696D4: /* 801696D4 00166634 28 04 00 00 */ cmplwi r4, 0 /* 801696D8 00166638 41 82 00 14 */ beq lbl_801696EC /* 801696DC 0016663C 80 05 00 00 */ lwz r0, 0(r5) /* 801696E0 00166640 90 04 00 00 */ stw r0, 0(r4) /* 801696E4 00166644 88 05 00 04 */ lbz r0, 4(r5) /* 801696E8 00166648 98 04 00 04 */ stb r0, 4(r4) lbl_801696EC: /* 801696EC 0016664C 38 84 00 08 */ addi r4, r4, 8 /* 801696F0 00166650 38 A5 00 08 */ addi r5, r5, 8 lbl_801696F4: /* 801696F4 00166654 7C 05 18 40 */ cmplw r5, r3 /* 801696F8 00166658 40 82 FF DC */ bne lbl_801696D4 /* 801696FC 0016665C 80 1E 00 04 */ lwz r0, 4(r30) /* 80169700 00166660 80 7E 00 0C */ lwz r3, 0xc(r30) /* 80169704 00166664 54 00 18 38 */ slwi r0, r0, 3 /* 80169708 00166668 7C 64 1B 78 */ mr r4, r3 /* 8016970C 0016666C 7C 03 02 14 */ add r0, r3, r0 /* 80169710 00166670 48 00 00 08 */ b lbl_80169718 lbl_80169714: /* 80169714 00166674 38 84 00 08 */ addi r4, r4, 8 lbl_80169718: /* 80169718 00166678 7C 04 00 40 */ cmplw r4, r0 /* 8016971C 0016667C 40 82 FF F8 */ bne lbl_80169714 /* 80169720 00166680 28 03 00 00 */ cmplwi r3, 0 /* 80169724 00166684 41 82 00 08 */ beq lbl_8016972C /* 80169728 00166688 48 1A C2 09 */ bl Free__7CMemoryFPCv lbl_8016972C: /* 8016972C 0016668C 93 BE 00 0C */ stw r29, 0xc(r30) /* 80169730 00166690 93 FE 00 08 */ stw r31, 8(r30) lbl_80169734: /* 80169734 00166694 80 01 00 34 */ lwz r0, 0x34(r1) /* 80169738 00166698 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 8016973C 0016669C 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80169740 001666A0 83 A1 00 24 */ lwz r29, 0x24(r1) /* 80169744 001666A4 7C 08 03 A6 */ mtlr r0 /* 80169748 001666A8 38 21 00 30 */ addi r1, r1, 0x30 /* 8016974C 001666AC 4E 80 00 20 */ blr .global sub_80169750 sub_80169750: /* 80169750 001666B0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80169754 001666B4 7C 08 02 A6 */ mflr r0 /* 80169758 001666B8 90 01 00 14 */ stw r0, 0x14(r1) /* 8016975C 001666BC 38 A1 00 0C */ addi r5, r1, 0xc /* 80169760 001666C0 88 01 00 08 */ lbz r0, 8(r1) /* 80169764 001666C4 98 01 00 0C */ stb r0, 0xc(r1) /* 80169768 001666C8 48 00 00 15 */ bl sub_8016977c /* 8016976C 001666CC 80 01 00 14 */ lwz r0, 0x14(r1) /* 80169770 001666D0 7C 08 03 A6 */ mtlr r0 /* 80169774 001666D4 38 21 00 10 */ addi r1, r1, 0x10 /* 80169778 001666D8 4E 80 00 20 */ blr .global sub_8016977c sub_8016977c: /* 8016977C 001666DC 80 A3 00 00 */ lwz r5, 0(r3) /* 80169780 001666E0 54 80 18 38 */ slwi r0, r4, 3 /* 80169784 001666E4 7C 05 02 14 */ add r0, r5, r0 /* 80169788 001666E8 90 03 00 00 */ stw r0, 0(r3) /* 8016978C 001666EC 4E 80 00 20 */ blr .global sub_80169790 sub_80169790: /* 80169790 001666F0 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80169794 001666F4 7C 08 02 A6 */ mflr r0 /* 80169798 001666F8 90 01 00 24 */ stw r0, 0x24(r1) /* 8016979C 001666FC 38 A1 00 0C */ addi r5, r1, 0xc /* 801697A0 00166700 88 E1 00 08 */ lbz r7, 8(r1) /* 801697A4 00166704 80 C4 00 00 */ lwz r6, 0(r4) /* 801697A8 00166708 38 81 00 10 */ addi r4, r1, 0x10 /* 801697AC 0016670C 80 03 00 00 */ lwz r0, 0(r3) /* 801697B0 00166710 38 61 00 14 */ addi r3, r1, 0x14 /* 801697B4 00166714 90 C1 00 10 */ stw r6, 0x10(r1) /* 801697B8 00166718 98 E1 00 0C */ stb r7, 0xc(r1) /* 801697BC 0016671C 90 01 00 14 */ stw r0, 0x14(r1) /* 801697C0 00166720 48 00 00 15 */ bl sub_801697d4 /* 801697C4 00166724 80 01 00 24 */ lwz r0, 0x24(r1) /* 801697C8 00166728 7C 08 03 A6 */ mtlr r0 /* 801697CC 0016672C 38 21 00 20 */ addi r1, r1, 0x20 /* 801697D0 00166730 4E 80 00 20 */ blr .global sub_801697d4 sub_801697d4: /* 801697D4 00166734 80 63 00 00 */ lwz r3, 0(r3) /* 801697D8 00166738 80 04 00 00 */ lwz r0, 0(r4) /* 801697DC 0016673C 7C 03 00 50 */ subf r0, r3, r0 /* 801697E0 00166740 7C 00 1E 70 */ srawi r0, r0, 3 /* 801697E4 00166744 7C 60 01 94 */ addze r3, r0 /* 801697E8 00166748 4E 80 00 20 */ blr .global sub_801697ec sub_801697ec: /* 801697EC 0016674C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 801697F0 00166750 80 E4 00 00 */ lwz r7, 0(r4) /* 801697F4 00166754 81 03 00 00 */ lwz r8, 0(r3) /* 801697F8 00166758 54 E6 01 BE */ clrlwi r6, r7, 6 /* 801697FC 0016675C 55 00 01 BE */ clrlwi r0, r8, 6 /* 80169800 00166760 7C 06 00 40 */ cmplw r6, r0 /* 80169804 00166764 40 80 00 24 */ bge lbl_80169828 /* 80169808 00166768 88 C3 00 04 */ lbz r6, 4(r3) /* 8016980C 0016676C 91 01 00 08 */ stw r8, 8(r1) /* 80169810 00166770 90 E3 00 00 */ stw r7, 0(r3) /* 80169814 00166774 88 04 00 04 */ lbz r0, 4(r4) /* 80169818 00166778 98 C1 00 0C */ stb r6, 0xc(r1) /* 8016981C 0016677C 98 03 00 04 */ stb r0, 4(r3) /* 80169820 00166780 91 04 00 00 */ stw r8, 0(r4) /* 80169824 00166784 98 C4 00 04 */ stb r6, 4(r4) lbl_80169828: /* 80169828 00166788 81 25 00 00 */ lwz r9, 0(r5) /* 8016982C 0016678C 80 E4 00 00 */ lwz r7, 0(r4) /* 80169830 00166790 55 28 01 BE */ clrlwi r8, r9, 6 /* 80169834 00166794 54 E0 01 BE */ clrlwi r0, r7, 6 /* 80169838 00166798 7C 08 00 40 */ cmplw r8, r0 /* 8016983C 0016679C 40 80 00 4C */ bge lbl_80169888 /* 80169840 001667A0 88 C5 00 04 */ lbz r6, 4(r5) /* 80169844 001667A4 91 21 00 10 */ stw r9, 0x10(r1) /* 80169848 001667A8 90 E5 00 00 */ stw r7, 0(r5) /* 8016984C 001667AC 88 04 00 04 */ lbz r0, 4(r4) /* 80169850 001667B0 98 C1 00 14 */ stb r6, 0x14(r1) /* 80169854 001667B4 98 05 00 04 */ stb r0, 4(r5) /* 80169858 001667B8 80 A3 00 00 */ lwz r5, 0(r3) /* 8016985C 001667BC 54 A0 01 BE */ clrlwi r0, r5, 6 /* 80169860 001667C0 7C 08 00 40 */ cmplw r8, r0 /* 80169864 001667C4 40 80 00 1C */ bge lbl_80169880 /* 80169868 001667C8 90 A4 00 00 */ stw r5, 0(r4) /* 8016986C 001667CC 88 03 00 04 */ lbz r0, 4(r3) /* 80169870 001667D0 98 04 00 04 */ stb r0, 4(r4) /* 80169874 001667D4 91 23 00 00 */ stw r9, 0(r3) /* 80169878 001667D8 98 C3 00 04 */ stb r6, 4(r3) /* 8016987C 001667DC 48 00 00 0C */ b lbl_80169888 lbl_80169880: /* 80169880 001667E0 91 24 00 00 */ stw r9, 0(r4) /* 80169884 001667E4 98 C4 00 04 */ stb r6, 4(r4) lbl_80169888: /* 80169888 001667E8 38 21 00 20 */ addi r1, r1, 0x20 /* 8016988C 001667EC 4E 80 00 20 */ blr .global sub_80169890 sub_80169890: /* 80169890 001667F0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80169894 001667F4 80 C3 00 00 */ lwz r6, 0(r3) /* 80169898 001667F8 38 C6 00 08 */ addi r6, r6, 8 /* 8016989C 001667FC 48 00 00 6C */ b lbl_80169908 lbl_801698A0: /* 801698A0 00166800 80 A6 00 00 */ lwz r5, 0(r6) /* 801698A4 00166804 7C C8 33 78 */ mr r8, r6 /* 801698A8 00166808 88 06 00 04 */ lbz r0, 4(r6) /* 801698AC 0016680C 38 E6 FF F8 */ addi r7, r6, -8 /* 801698B0 00166810 90 A1 00 08 */ stw r5, 8(r1) /* 801698B4 00166814 54 A5 01 BE */ clrlwi r5, r5, 6 /* 801698B8 00166818 98 01 00 0C */ stb r0, 0xc(r1) /* 801698BC 0016681C 48 00 00 1C */ b lbl_801698D8 lbl_801698C0: /* 801698C0 00166820 80 07 00 00 */ lwz r0, 0(r7) /* 801698C4 00166824 90 08 00 00 */ stw r0, 0(r8) /* 801698C8 00166828 88 07 00 04 */ lbz r0, 4(r7) /* 801698CC 0016682C 38 E7 FF F8 */ addi r7, r7, -8 /* 801698D0 00166830 98 08 00 04 */ stb r0, 4(r8) /* 801698D4 00166834 39 08 FF F8 */ addi r8, r8, -8 lbl_801698D8: /* 801698D8 00166838 80 03 00 00 */ lwz r0, 0(r3) /* 801698DC 0016683C 7C 00 40 40 */ cmplw r0, r8 /* 801698E0 00166840 40 80 00 14 */ bge lbl_801698F4 /* 801698E4 00166844 80 07 00 00 */ lwz r0, 0(r7) /* 801698E8 00166848 54 00 01 BE */ clrlwi r0, r0, 6 /* 801698EC 0016684C 7C 05 00 40 */ cmplw r5, r0 /* 801698F0 00166850 41 80 FF D0 */ blt lbl_801698C0 lbl_801698F4: /* 801698F4 00166854 80 A1 00 08 */ lwz r5, 8(r1) /* 801698F8 00166858 38 C6 00 08 */ addi r6, r6, 8 /* 801698FC 0016685C 88 01 00 0C */ lbz r0, 0xc(r1) /* 80169900 00166860 90 A8 00 00 */ stw r5, 0(r8) /* 80169904 00166864 98 08 00 04 */ stb r0, 4(r8) lbl_80169908: /* 80169908 00166868 80 04 00 00 */ lwz r0, 0(r4) /* 8016990C 0016686C 7C 06 00 40 */ cmplw r6, r0 /* 80169910 00166870 41 80 FF 90 */ blt lbl_801698A0 /* 80169914 00166874 38 21 00 10 */ addi r1, r1, 0x10 /* 80169918 00166878 4E 80 00 20 */ blr .section .rodata .balign 8 .global lbl_803D0428 lbl_803D0428: # ROM: 0x3CD428 .asciz "??(??)" .balign 4