.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global DWC_InitLanMatch DWC_InitLanMatch: /* 8031D4B0 00319110 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8031D4B4 00319114 7C 08 02 A6 */ mflr r0 /* 8031D4B8 00319118 38 60 00 05 */ li r3, 5 /* 8031D4BC 0031911C 38 80 02 10 */ li r4, 0x210 /* 8031D4C0 00319120 90 01 00 14 */ stw r0, 0x14(r1) /* 8031D4C4 00319124 4B FF F4 29 */ bl DWC_Alloc /* 8031D4C8 00319128 90 6D B0 38 */ stw r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031D4CC 0031912C 38 80 00 00 */ li r4, 0 /* 8031D4D0 00319130 38 A0 00 04 */ li r5, 4 /* 8031D4D4 00319134 4B CE 6C 31 */ bl memset /* 8031D4D8 00319138 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031D4DC 0031913C 38 80 00 00 */ li r4, 0 /* 8031D4E0 00319140 38 00 FF FF */ li r0, -1 /* 8031D4E4 00319144 90 83 00 00 */ stw r4, 0(r3) /* 8031D4E8 00319148 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031D4EC 0031914C 90 03 01 74 */ stw r0, 0x174(r3) /* 8031D4F0 00319150 4B F5 52 C9 */ bl OSGetTime /* 8031D4F4 00319154 80 AD B0 38 */ lwz r5, lbl_806402F8-_SDA_BASE_(r13) /* 8031D4F8 00319158 90 85 02 0C */ stw r4, 0x20c(r5) /* 8031D4FC 0031915C 90 65 02 08 */ stw r3, 0x208(r5) /* 8031D500 00319160 80 01 00 14 */ lwz r0, 0x14(r1) /* 8031D504 00319164 7C 08 03 A6 */ mtlr r0 /* 8031D508 00319168 38 21 00 10 */ addi r1, r1, 0x10 /* 8031D50C 0031916C 4E 80 00 20 */ blr .global DWC_SetRecvLanMatchCallback DWC_SetRecvLanMatchCallback: /* 8031D510 00319170 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031D514 00319174 90 64 02 00 */ stw r3, 0x200(r4) /* 8031D518 00319178 4E 80 00 20 */ blr .global DWC_SetSendLanMatchCallback DWC_SetSendLanMatchCallback: /* 8031D51C 0031917C 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031D520 00319180 90 64 02 04 */ stw r3, 0x204(r4) /* 8031D524 00319184 4E 80 00 20 */ blr .global DWC_ProcessLanMatch DWC_ProcessLanMatch: /* 8031D528 00319188 94 21 FF C0 */ stwu r1, -0x40(r1) /* 8031D52C 0031918C 7C 08 02 A6 */ mflr r0 /* 8031D530 00319190 90 01 00 44 */ stw r0, 0x44(r1) /* 8031D534 00319194 39 61 00 40 */ addi r11, r1, 0x40 /* 8031D538 00319198 4B EA 9B E9 */ bl _savegpr_25 /* 8031D53C 0031919C 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031D540 003191A0 2C 03 00 00 */ cmpwi r3, 0 /* 8031D544 003191A4 41 82 0A A0 */ beq lbl_8031DFE4 /* 8031D548 003191A8 80 03 00 00 */ lwz r0, 0(r3) /* 8031D54C 003191AC 2C 00 00 00 */ cmpwi r0, 0 /* 8031D550 003191B0 40 81 00 78 */ ble lbl_8031D5C8 /* 8031D554 003191B4 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031D558 003191B8 80 63 00 00 */ lwz r3, 0(r3) /* 8031D55C 003191BC 48 02 C4 E1 */ bl gt2Think /* 8031D560 003191C0 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031D564 003191C4 80 03 00 00 */ lwz r0, 0(r3) /* 8031D568 003191C8 2C 00 00 08 */ cmpwi r0, 8 /* 8031D56C 003191CC 40 80 00 5C */ bge lbl_8031D5C8 /* 8031D570 003191D0 80 8D B0 40 */ lwz r4, lbl_80640300-_SDA_BASE_(r13) /* 8031D574 003191D4 80 64 00 00 */ lwz r3, 0(r4) /* 8031D578 003191D8 2C 03 00 00 */ cmpwi r3, 0 /* 8031D57C 003191DC 41 82 00 4C */ beq lbl_8031D5C8 /* 8031D580 003191E0 80 04 00 08 */ lwz r0, 8(r4) /* 8031D584 003191E4 2C 00 00 00 */ cmpwi r0, 0 /* 8031D588 003191E8 41 82 00 38 */ beq lbl_8031D5C0 /* 8031D58C 003191EC 48 04 12 6D */ bl ServerBrowserThink /* 8031D590 003191F0 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031D594 003191F4 80 03 00 04 */ lwz r0, 4(r3) /* 8031D598 003191F8 2C 00 00 01 */ cmpwi r0, 1 /* 8031D59C 003191FC 40 82 00 24 */ bne lbl_8031D5C0 /* 8031D5A0 00319200 38 00 00 00 */ li r0, 0 /* 8031D5A4 00319204 38 80 00 01 */ li r4, 1 /* 8031D5A8 00319208 90 03 00 04 */ stw r0, 4(r3) /* 8031D5AC 0031920C 38 A0 2B 67 */ li r5, 0x2b67 /* 8031D5B0 00319210 38 C0 2B 67 */ li r6, 0x2b67 /* 8031D5B4 00319214 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031D5B8 00319218 80 63 00 00 */ lwz r3, 0(r3) /* 8031D5BC 0031921C 48 04 10 71 */ bl func_8035E62C lbl_8031D5C0: /* 8031D5C0 00319220 38 60 00 00 */ li r3, 0 /* 8031D5C4 00319224 48 03 0D 1D */ bl qr2_think lbl_8031D5C8: /* 8031D5C8 00319228 80 CD B0 38 */ lwz r6, lbl_806402F8-_SDA_BASE_(r13) /* 8031D5CC 0031922C 80 06 00 00 */ lwz r0, 0(r6) /* 8031D5D0 00319230 2C 00 00 02 */ cmpwi r0, 2 /* 8031D5D4 00319234 41 82 0A 10 */ beq lbl_8031DFE4 /* 8031D5D8 00319238 40 80 00 14 */ bge lbl_8031D5EC /* 8031D5DC 0031923C 2C 00 00 00 */ cmpwi r0, 0 /* 8031D5E0 00319240 41 82 00 1C */ beq lbl_8031D5FC /* 8031D5E4 00319244 40 80 01 F0 */ bge lbl_8031D7D4 /* 8031D5E8 00319248 48 00 09 FC */ b lbl_8031DFE4 lbl_8031D5EC: /* 8031D5EC 0031924C 2C 00 00 04 */ cmpwi r0, 4 /* 8031D5F0 00319250 41 82 09 0C */ beq lbl_8031DEFC /* 8031D5F4 00319254 40 80 09 F0 */ bge lbl_8031DFE4 /* 8031D5F8 00319258 48 00 07 5C */ b lbl_8031DD54 lbl_8031D5FC: /* 8031D5FC 0031925C 4B FD 9C 55 */ bl SOGetHostID /* 8031D600 00319260 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031D604 00319264 90 64 01 70 */ stw r3, 0x170(r4) /* 8031D608 00319268 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031D60C 0031926C 80 63 01 70 */ lwz r3, 0x170(r3) /* 8031D610 00319270 2C 03 00 00 */ cmpwi r3, 0 /* 8031D614 00319274 41 82 01 04 */ beq lbl_8031D718 /* 8031D618 00319278 38 80 00 00 */ li r4, 0 /* 8031D61C 0031927C 38 A0 00 00 */ li r5, 0 /* 8031D620 00319280 48 03 05 2D */ bl gt2AddressToString /* 8031D624 00319284 3C 80 80 44 */ lis r4, lbl_80446BE0@ha /* 8031D628 00319288 7C 65 1B 78 */ mr r5, r3 /* 8031D62C 0031928C 38 84 6B E0 */ addi r4, r4, lbl_80446BE0@l /* 8031D630 00319290 38 60 00 01 */ li r3, 1 /* 8031D634 00319294 4C C6 31 82 */ crclr 6 /* 8031D638 00319298 4B FF F4 FD */ bl DWC_Printf /* 8031D63C 0031929C 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031D640 003192A0 3B 40 00 01 */ li r26, 1 /* 8031D644 003192A4 93 43 00 00 */ stw r26, 0(r3) /* 8031D648 003192A8 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031D64C 003192AC 80 63 01 70 */ lwz r3, 0x170(r3) /* 8031D650 003192B0 48 00 0B 99 */ bl cn_init /* 8031D654 003192B4 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031D658 003192B8 3C C0 80 32 */ lis r6, ss_playerKey@ha /* 8031D65C 003192BC 3C A0 80 32 */ lis r5, ss_teamKey@ha /* 8031D660 003192C0 3C 60 80 32 */ lis r3, ss_keyList@ha /* 8031D664 003192C4 38 E4 00 08 */ addi r7, r4, 8 /* 8031D668 003192C8 3C 80 80 32 */ lis r4, ss_count@ha /* 8031D66C 003192CC 90 ED B0 40 */ stw r7, lbl_80640300-_SDA_BASE_(r13) /* 8031D670 003192D0 3D 20 80 32 */ lis r9, ss_addError@ha /* 8031D674 003192D4 3D 40 80 32 */ lis r10, ss_serverKey@ha /* 8031D678 003192D8 38 C6 E1 D0 */ addi r6, r6, ss_playerKey@l /* 8031D67C 003192DC 93 47 00 04 */ stw r26, 4(r7) /* 8031D680 003192E0 38 A5 E1 D4 */ addi r5, r5, ss_teamKey@l /* 8031D684 003192E4 83 62 A4 B4 */ lwz r27, lbl_80642AB4-_SDA2_BASE_(r2) /* 8031D688 003192E8 38 63 E1 D8 */ addi r3, r3, ss_keyList@l /* 8031D68C 003192EC 90 C1 00 08 */ stw r6, 8(r1) /* 8031D690 003192F0 38 84 E1 DC */ addi r4, r4, ss_count@l /* 8031D694 003192F4 83 82 A4 B0 */ lwz r28, lbl_80642AB0-_SDA2_BASE_(r2) /* 8031D698 003192F8 39 29 E1 E4 */ addi r9, r9, ss_addError@l /* 8031D69C 003192FC 90 A1 00 0C */ stw r5, 0xc(r1) /* 8031D6A0 00319300 3B 20 00 00 */ li r25, 0 /* 8031D6A4 00319304 7F 86 E3 78 */ mr r6, r28 /* 8031D6A8 00319308 7F 67 DB 78 */ mr r7, r27 /* 8031D6AC 0031930C 90 61 00 10 */ stw r3, 0x10(r1) /* 8031D6B0 00319310 39 4A E1 CC */ addi r10, r10, ss_serverKey@l /* 8031D6B4 00319314 38 60 00 00 */ li r3, 0 /* 8031D6B8 00319318 38 A0 2B 67 */ li r5, 0x2b67 /* 8031D6BC 0031931C 90 81 00 14 */ stw r4, 0x14(r1) /* 8031D6C0 00319320 38 80 00 00 */ li r4, 0 /* 8031D6C4 00319324 39 00 00 00 */ li r8, 0 /* 8031D6C8 00319328 91 21 00 18 */ stw r9, 0x18(r1) /* 8031D6CC 0031932C 39 20 00 00 */ li r9, 0 /* 8031D6D0 00319330 93 21 00 1C */ stw r25, 0x1c(r1) /* 8031D6D4 00319334 48 03 0A F9 */ bl func_8034E1CC /* 8031D6D8 00319338 3D 40 80 32 */ lis r10, ss_serverBrowsing@ha /* 8031D6DC 0031933C 93 21 00 08 */ stw r25, 8(r1) /* 8031D6E0 00319340 7F 83 E3 78 */ mr r3, r28 /* 8031D6E4 00319344 7F 84 E3 78 */ mr r4, r28 /* 8031D6E8 00319348 7F 65 DB 78 */ mr r5, r27 /* 8031D6EC 0031934C 39 4A E1 60 */ addi r10, r10, ss_serverBrowsing@l /* 8031D6F0 00319350 38 C0 00 00 */ li r6, 0 /* 8031D6F4 00319354 38 E0 00 0A */ li r7, 0xa /* 8031D6F8 00319358 39 00 00 01 */ li r8, 1 /* 8031D6FC 0031935C 39 20 00 01 */ li r9, 1 /* 8031D700 00319360 48 04 0C B9 */ bl ServerBrowserNewA /* 8031D704 00319364 80 8D B0 40 */ lwz r4, lbl_80640300-_SDA_BASE_(r13) /* 8031D708 00319368 90 64 00 00 */ stw r3, 0(r4) /* 8031D70C 0031936C 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031D710 00319370 93 43 00 08 */ stw r26, 8(r3) /* 8031D714 00319374 48 00 08 D0 */ b lbl_8031DFE4 lbl_8031D718: /* 8031D718 00319378 4B F5 50 A1 */ bl OSGetTime /* 8031D71C 0031937C 3C A0 80 00 */ lis r5, 0x800000F8@ha /* 8031D720 00319380 81 0D B0 38 */ lwz r8, lbl_806402F8-_SDA_BASE_(r13) /* 8031D724 00319384 80 05 00 F8 */ lwz r0, 0x800000F8@l(r5) /* 8031D728 00319388 3C A0 10 62 */ lis r5, 0x10624DD3@ha /* 8031D72C 0031938C 38 C5 4D D3 */ addi r6, r5, 0x10624DD3@l /* 8031D730 00319390 80 E8 02 0C */ lwz r7, 0x20c(r8) /* 8031D734 00319394 54 05 F0 BE */ srwi r5, r0, 2 /* 8031D738 00319398 38 00 27 10 */ li r0, 0x2710 /* 8031D73C 0031939C 7C A6 28 16 */ mulhwu r5, r6, r5 /* 8031D740 003193A0 7C E7 20 10 */ subfc r7, r7, r4 /* 8031D744 003193A4 80 C8 02 08 */ lwz r6, 0x208(r8) /* 8031D748 003193A8 7C C6 19 10 */ subfe r6, r6, r3 /* 8031D74C 003193AC 54 A4 D1 BE */ srwi r4, r5, 6 /* 8031D750 003193B0 7C 64 00 16 */ mulhwu r3, r4, r0 /* 8031D754 003193B4 1C 84 27 10 */ mulli r4, r4, 0x2710 /* 8031D758 003193B8 7C 07 20 10 */ subfc r0, r7, r4 /* 8031D75C 003193BC 7C 06 19 10 */ subfe r0, r6, r3 /* 8031D760 003193C0 7C 04 21 10 */ subfe r0, r4, r4 /* 8031D764 003193C4 7C 00 00 D1 */ neg. r0, r0 /* 8031D768 003193C8 41 82 08 7C */ beq lbl_8031DFE4 /* 8031D76C 003193CC 81 88 01 FC */ lwz r12, 0x1fc(r8) /* 8031D770 003193D0 38 60 00 06 */ li r3, 6 /* 8031D774 003193D4 7D 89 03 A6 */ mtctr r12 /* 8031D778 003193D8 4E 80 04 21 */ bctrl /* 8031D77C 003193DC 38 60 00 00 */ li r3, 0 /* 8031D780 003193E0 48 03 0E B5 */ bl qr2_shutdown /* 8031D784 003193E4 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031D788 003193E8 80 63 00 00 */ lwz r3, 0(r3) /* 8031D78C 003193EC 48 04 0D 11 */ bl ServerBrowserFree /* 8031D790 003193F0 3B 20 00 00 */ li r25, 0 /* 8031D794 003193F4 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031D798 003193F8 93 2D B0 40 */ stw r25, lbl_80640300-_SDA_BASE_(r13) /* 8031D79C 003193FC 80 63 00 00 */ lwz r3, 0(r3) /* 8031D7A0 00319400 48 02 C5 B1 */ bl func_80349D50 /* 8031D7A4 00319404 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031D7A8 00319408 80 63 00 00 */ lwz r3, 0(r3) /* 8031D7AC 0031940C 48 02 C2 4D */ bl gt2CloseSocket /* 8031D7B0 00319410 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031D7B4 00319414 93 2D B0 3C */ stw r25, lbl_806402FC-_SDA_BASE_(r13) /* 8031D7B8 00319418 2C 04 00 00 */ cmpwi r4, 0 /* 8031D7BC 0031941C 41 82 08 28 */ beq lbl_8031DFE4 /* 8031D7C0 00319420 38 60 00 05 */ li r3, 5 /* 8031D7C4 00319424 38 A0 00 00 */ li r5, 0 /* 8031D7C8 00319428 4B FF F1 C1 */ bl DWC_Free /* 8031D7CC 0031942C 93 2D B0 38 */ stw r25, lbl_806402F8-_SDA_BASE_(r13) /* 8031D7D0 00319430 48 00 08 14 */ b lbl_8031DFE4 lbl_8031D7D4: /* 8031D7D4 00319434 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031D7D8 00319438 80 63 00 00 */ lwz r3, 0(r3) /* 8031D7DC 0031943C 48 04 10 DD */ bl ServerBrowserCount /* 8031D7E0 00319440 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031D7E4 00319444 83 64 01 78 */ lwz r27, 0x178(r4) /* 8031D7E8 00319448 7C 03 D8 00 */ cmpw r3, r27 /* 8031D7EC 0031944C 41 80 07 F8 */ blt lbl_8031DFE4 /* 8031D7F0 00319450 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031D7F4 00319454 38 00 00 00 */ li r0, 0 /* 8031D7F8 00319458 3B 20 00 00 */ li r25, 0 /* 8031D7FC 0031945C 3B 40 00 00 */ li r26, 0 /* 8031D800 00319460 90 03 00 08 */ stw r0, 8(r3) /* 8031D804 00319464 48 00 00 2C */ b lbl_8031D830 lbl_8031D808: /* 8031D808 00319468 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031D80C 0031946C 7F 24 CB 78 */ mr r4, r25 /* 8031D810 00319470 80 63 00 00 */ lwz r3, 0(r3) /* 8031D814 00319474 48 04 10 9D */ bl ServerBrowserGetServer /* 8031D818 00319478 48 04 00 0D */ bl SBServerGetPublicInetAddress /* 8031D81C 0031947C 80 0D B0 40 */ lwz r0, lbl_80640300-_SDA_BASE_(r13) /* 8031D820 00319480 3B 39 00 01 */ addi r25, r25, 1 /* 8031D824 00319484 7C 80 D2 14 */ add r4, r0, r26 /* 8031D828 00319488 3B 5A 00 04 */ addi r26, r26, 4 /* 8031D82C 0031948C 90 64 00 0C */ stw r3, 0xc(r4) lbl_8031D830: /* 8031D830 00319490 7C 19 D8 00 */ cmpw r25, r27 /* 8031D834 00319494 41 80 FF D4 */ blt lbl_8031D808 /* 8031D838 00319498 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031D83C 0031949C 34 BB FF FF */ addic. r5, r27, -1 /* 8031D840 003194A0 3B 83 00 0C */ addi r28, r3, 0xc /* 8031D844 003194A4 40 81 04 58 */ ble lbl_8031DC9C /* 8031D848 003194A8 54 A0 0F FE */ srwi r0, r5, 0x1f /* 8031D84C 003194AC 80 DC 00 00 */ lwz r6, 0(r28) /* 8031D850 003194B0 7C 00 2A 14 */ add r0, r0, r5 /* 8031D854 003194B4 38 FC 00 04 */ addi r7, r28, 4 /* 8031D858 003194B8 54 04 08 3A */ rlwinm r4, r0, 1, 0, 0x1d /* 8031D85C 003194BC 3B E0 00 00 */ li r31, 0 /* 8031D860 003194C0 7C 1C 20 2E */ lwzx r0, r28, r4 /* 8031D864 003194C4 38 60 00 00 */ li r3, 0 /* 8031D868 003194C8 90 1C 00 00 */ stw r0, 0(r28) /* 8031D86C 003194CC 7C DC 21 2E */ stwx r6, r28, r4 /* 8031D870 003194D0 7C A9 03 A6 */ mtctr r5 /* 8031D874 003194D4 2C 05 00 01 */ cmpwi r5, 1 /* 8031D878 003194D8 41 80 00 30 */ blt lbl_8031D8A8 lbl_8031D87C: /* 8031D87C 003194DC 80 87 00 00 */ lwz r4, 0(r7) /* 8031D880 003194E0 80 1C 00 00 */ lwz r0, 0(r28) /* 8031D884 003194E4 7C 04 00 40 */ cmplw r4, r0 /* 8031D888 003194E8 40 80 00 18 */ bge lbl_8031D8A0 /* 8031D88C 003194EC 38 63 00 04 */ addi r3, r3, 4 /* 8031D890 003194F0 3B FF 00 01 */ addi r31, r31, 1 /* 8031D894 003194F4 7C 1C 18 2E */ lwzx r0, r28, r3 /* 8031D898 003194F8 90 07 00 00 */ stw r0, 0(r7) /* 8031D89C 003194FC 7C 9C 19 2E */ stwx r4, r28, r3 lbl_8031D8A0: /* 8031D8A0 00319500 38 E7 00 04 */ addi r7, r7, 4 /* 8031D8A4 00319504 42 00 FF D8 */ bdnz lbl_8031D87C lbl_8031D8A8: /* 8031D8A8 00319508 57 F9 10 3A */ slwi r25, r31, 2 /* 8031D8AC 0031950C 80 7C 00 00 */ lwz r3, 0(r28) /* 8031D8B0 00319510 7C 1C C8 2E */ lwzx r0, r28, r25 /* 8031D8B4 00319514 34 BF FF FF */ addic. r5, r31, -1 /* 8031D8B8 00319518 90 1C 00 00 */ stw r0, 0(r28) /* 8031D8BC 0031951C 7C 7C C9 2E */ stwx r3, r28, r25 /* 8031D8C0 00319520 40 81 01 D0 */ ble lbl_8031DA90 /* 8031D8C4 00319524 54 A0 0F FE */ srwi r0, r5, 0x1f /* 8031D8C8 00319528 80 DC 00 00 */ lwz r6, 0(r28) /* 8031D8CC 0031952C 7C 00 2A 14 */ add r0, r0, r5 /* 8031D8D0 00319530 38 FC 00 04 */ addi r7, r28, 4 /* 8031D8D4 00319534 54 04 08 3A */ rlwinm r4, r0, 1, 0, 0x1d /* 8031D8D8 00319538 3B C0 00 00 */ li r30, 0 /* 8031D8DC 0031953C 7C 1C 20 2E */ lwzx r0, r28, r4 /* 8031D8E0 00319540 38 60 00 00 */ li r3, 0 /* 8031D8E4 00319544 90 1C 00 00 */ stw r0, 0(r28) /* 8031D8E8 00319548 7C DC 21 2E */ stwx r6, r28, r4 /* 8031D8EC 0031954C 7C A9 03 A6 */ mtctr r5 /* 8031D8F0 00319550 2C 05 00 01 */ cmpwi r5, 1 /* 8031D8F4 00319554 41 80 00 30 */ blt lbl_8031D924 lbl_8031D8F8: /* 8031D8F8 00319558 80 87 00 00 */ lwz r4, 0(r7) /* 8031D8FC 0031955C 80 1C 00 00 */ lwz r0, 0(r28) /* 8031D900 00319560 7C 04 00 40 */ cmplw r4, r0 /* 8031D904 00319564 40 80 00 18 */ bge lbl_8031D91C /* 8031D908 00319568 38 63 00 04 */ addi r3, r3, 4 /* 8031D90C 0031956C 3B DE 00 01 */ addi r30, r30, 1 /* 8031D910 00319570 7C 1C 18 2E */ lwzx r0, r28, r3 /* 8031D914 00319574 90 07 00 00 */ stw r0, 0(r7) /* 8031D918 00319578 7C 9C 19 2E */ stwx r4, r28, r3 lbl_8031D91C: /* 8031D91C 0031957C 38 E7 00 04 */ addi r7, r7, 4 /* 8031D920 00319580 42 00 FF D8 */ bdnz lbl_8031D8F8 lbl_8031D924: /* 8031D924 00319584 57 DA 10 3A */ slwi r26, r30, 2 /* 8031D928 00319588 80 7C 00 00 */ lwz r3, 0(r28) /* 8031D92C 0031958C 7C 1C D0 2E */ lwzx r0, r28, r26 /* 8031D930 00319590 34 BE FF FF */ addic. r5, r30, -1 /* 8031D934 00319594 90 1C 00 00 */ stw r0, 0(r28) /* 8031D938 00319598 7C 7C D1 2E */ stwx r3, r28, r26 /* 8031D93C 0031959C 40 81 00 98 */ ble lbl_8031D9D4 /* 8031D940 003195A0 54 A0 0F FE */ srwi r0, r5, 0x1f /* 8031D944 003195A4 80 DC 00 00 */ lwz r6, 0(r28) /* 8031D948 003195A8 7C 00 2A 14 */ add r0, r0, r5 /* 8031D94C 003195AC 38 FC 00 04 */ addi r7, r28, 4 /* 8031D950 003195B0 54 04 08 3A */ rlwinm r4, r0, 1, 0, 0x1d /* 8031D954 003195B4 3B A0 00 00 */ li r29, 0 /* 8031D958 003195B8 7C 1C 20 2E */ lwzx r0, r28, r4 /* 8031D95C 003195BC 38 60 00 00 */ li r3, 0 /* 8031D960 003195C0 90 1C 00 00 */ stw r0, 0(r28) /* 8031D964 003195C4 7C DC 21 2E */ stwx r6, r28, r4 /* 8031D968 003195C8 7C A9 03 A6 */ mtctr r5 /* 8031D96C 003195CC 2C 05 00 01 */ cmpwi r5, 1 /* 8031D970 003195D0 41 80 00 30 */ blt lbl_8031D9A0 lbl_8031D974: /* 8031D974 003195D4 80 87 00 00 */ lwz r4, 0(r7) /* 8031D978 003195D8 80 1C 00 00 */ lwz r0, 0(r28) /* 8031D97C 003195DC 7C 04 00 40 */ cmplw r4, r0 /* 8031D980 003195E0 40 80 00 18 */ bge lbl_8031D998 /* 8031D984 003195E4 38 63 00 04 */ addi r3, r3, 4 /* 8031D988 003195E8 3B BD 00 01 */ addi r29, r29, 1 /* 8031D98C 003195EC 7C 1C 18 2E */ lwzx r0, r28, r3 /* 8031D990 003195F0 90 07 00 00 */ stw r0, 0(r7) /* 8031D994 003195F4 7C 9C 19 2E */ stwx r4, r28, r3 lbl_8031D998: /* 8031D998 003195F8 38 E7 00 04 */ addi r7, r7, 4 /* 8031D99C 003195FC 42 00 FF D8 */ bdnz lbl_8031D974 lbl_8031D9A0: /* 8031D9A0 00319600 57 A6 10 3A */ slwi r6, r29, 2 /* 8031D9A4 00319604 80 FC 00 00 */ lwz r7, 0(r28) /* 8031D9A8 00319608 7C 1C 30 2E */ lwzx r0, r28, r6 /* 8031D9AC 0031960C 7F 83 E3 78 */ mr r3, r28 /* 8031D9B0 00319610 38 BD FF FF */ addi r5, r29, -1 /* 8031D9B4 00319614 38 80 00 00 */ li r4, 0 /* 8031D9B8 00319618 90 1C 00 00 */ stw r0, 0(r28) /* 8031D9BC 0031961C 7C FC 31 2E */ stwx r7, r28, r6 /* 8031D9C0 00319620 48 00 0F 51 */ bl ss_qsort /* 8031D9C4 00319624 7F 83 E3 78 */ mr r3, r28 /* 8031D9C8 00319628 38 9D 00 01 */ addi r4, r29, 1 /* 8031D9CC 0031962C 38 BE FF FF */ addi r5, r30, -1 /* 8031D9D0 00319630 48 00 0F 41 */ bl ss_qsort lbl_8031D9D4: /* 8031D9D4 00319634 3B BE 00 01 */ addi r29, r30, 1 /* 8031D9D8 00319638 38 FF FF FF */ addi r7, r31, -1 /* 8031D9DC 0031963C 7C 1D 38 00 */ cmpw r29, r7 /* 8031D9E0 00319640 40 80 00 B0 */ bge lbl_8031DA90 /* 8031D9E4 00319644 7C 7F F2 14 */ add r3, r31, r30 /* 8031D9E8 00319648 7C DC D2 14 */ add r6, r28, r26 /* 8031D9EC 0031964C 54 60 0F FE */ srwi r0, r3, 0x1f /* 8031D9F0 00319650 81 26 00 04 */ lwz r9, 4(r6) /* 8031D9F4 00319654 7C 60 1A 14 */ add r3, r0, r3 /* 8031D9F8 00319658 39 1E 00 02 */ addi r8, r30, 2 /* 8031D9FC 0031965C 54 65 08 3A */ rlwinm r5, r3, 1, 0, 0x1d /* 8031DA00 00319660 38 07 00 01 */ addi r0, r7, 1 /* 8031DA04 00319664 7C 9C 28 2E */ lwzx r4, r28, r5 /* 8031DA08 00319668 55 03 10 3A */ slwi r3, r8, 2 /* 8031DA0C 0031966C 7D 5C 1A 14 */ add r10, r28, r3 /* 8031DA10 00319670 7C 08 00 50 */ subf r0, r8, r0 /* 8031DA14 00319674 90 86 00 04 */ stw r4, 4(r6) /* 8031DA18 00319678 57 A3 10 3A */ slwi r3, r29, 2 /* 8031DA1C 0031967C 7D 3C 29 2E */ stwx r9, r28, r5 /* 8031DA20 00319680 7C 09 03 A6 */ mtctr r0 /* 8031DA24 00319684 7C 08 38 00 */ cmpw r8, r7 /* 8031DA28 00319688 41 81 00 30 */ bgt lbl_8031DA58 lbl_8031DA2C: /* 8031DA2C 0031968C 80 8A 00 00 */ lwz r4, 0(r10) /* 8031DA30 00319690 80 06 00 04 */ lwz r0, 4(r6) /* 8031DA34 00319694 7C 04 00 40 */ cmplw r4, r0 /* 8031DA38 00319698 40 80 00 18 */ bge lbl_8031DA50 /* 8031DA3C 0031969C 38 63 00 04 */ addi r3, r3, 4 /* 8031DA40 003196A0 3B BD 00 01 */ addi r29, r29, 1 /* 8031DA44 003196A4 7C 1C 18 2E */ lwzx r0, r28, r3 /* 8031DA48 003196A8 90 0A 00 00 */ stw r0, 0(r10) /* 8031DA4C 003196AC 7C 9C 19 2E */ stwx r4, r28, r3 lbl_8031DA50: /* 8031DA50 003196B0 39 4A 00 04 */ addi r10, r10, 4 /* 8031DA54 003196B4 42 00 FF D8 */ bdnz lbl_8031DA2C lbl_8031DA58: /* 8031DA58 003196B8 7C FC D2 14 */ add r7, r28, r26 /* 8031DA5C 003196BC 57 A6 10 3A */ slwi r6, r29, 2 /* 8031DA60 003196C0 81 07 00 04 */ lwz r8, 4(r7) /* 8031DA64 003196C4 7F 83 E3 78 */ mr r3, r28 /* 8031DA68 003196C8 7C 1C 30 2E */ lwzx r0, r28, r6 /* 8031DA6C 003196CC 38 9E 00 01 */ addi r4, r30, 1 /* 8031DA70 003196D0 38 BD FF FF */ addi r5, r29, -1 /* 8031DA74 003196D4 90 07 00 04 */ stw r0, 4(r7) /* 8031DA78 003196D8 7D 1C 31 2E */ stwx r8, r28, r6 /* 8031DA7C 003196DC 48 00 0E 95 */ bl ss_qsort /* 8031DA80 003196E0 7F 83 E3 78 */ mr r3, r28 /* 8031DA84 003196E4 38 9D 00 01 */ addi r4, r29, 1 /* 8031DA88 003196E8 38 BF FF FF */ addi r5, r31, -1 /* 8031DA8C 003196EC 48 00 0E 85 */ bl ss_qsort lbl_8031DA90: /* 8031DA90 003196F0 3B DF 00 01 */ addi r30, r31, 1 /* 8031DA94 003196F4 38 FB FF FF */ addi r7, r27, -1 /* 8031DA98 003196F8 7C 1E 38 00 */ cmpw r30, r7 /* 8031DA9C 003196FC 40 80 02 00 */ bge lbl_8031DC9C /* 8031DAA0 00319700 7C 7B FA 14 */ add r3, r27, r31 /* 8031DAA4 00319704 7C DC CA 14 */ add r6, r28, r25 /* 8031DAA8 00319708 54 60 0F FE */ srwi r0, r3, 0x1f /* 8031DAAC 0031970C 81 26 00 04 */ lwz r9, 4(r6) /* 8031DAB0 00319710 7C 60 1A 14 */ add r3, r0, r3 /* 8031DAB4 00319714 39 1F 00 02 */ addi r8, r31, 2 /* 8031DAB8 00319718 54 65 08 3A */ rlwinm r5, r3, 1, 0, 0x1d /* 8031DABC 0031971C 38 07 00 01 */ addi r0, r7, 1 /* 8031DAC0 00319720 7C 9C 28 2E */ lwzx r4, r28, r5 /* 8031DAC4 00319724 55 03 10 3A */ slwi r3, r8, 2 /* 8031DAC8 00319728 7D 5C 1A 14 */ add r10, r28, r3 /* 8031DACC 0031972C 7C 08 00 50 */ subf r0, r8, r0 /* 8031DAD0 00319730 90 86 00 04 */ stw r4, 4(r6) /* 8031DAD4 00319734 57 C3 10 3A */ slwi r3, r30, 2 /* 8031DAD8 00319738 7D 3C 29 2E */ stwx r9, r28, r5 /* 8031DADC 0031973C 7C 09 03 A6 */ mtctr r0 /* 8031DAE0 00319740 7C 08 38 00 */ cmpw r8, r7 /* 8031DAE4 00319744 41 81 00 30 */ bgt lbl_8031DB14 lbl_8031DAE8: /* 8031DAE8 00319748 80 8A 00 00 */ lwz r4, 0(r10) /* 8031DAEC 0031974C 80 06 00 04 */ lwz r0, 4(r6) /* 8031DAF0 00319750 7C 04 00 40 */ cmplw r4, r0 /* 8031DAF4 00319754 40 80 00 18 */ bge lbl_8031DB0C /* 8031DAF8 00319758 38 63 00 04 */ addi r3, r3, 4 /* 8031DAFC 0031975C 3B DE 00 01 */ addi r30, r30, 1 /* 8031DB00 00319760 7C 1C 18 2E */ lwzx r0, r28, r3 /* 8031DB04 00319764 90 0A 00 00 */ stw r0, 0(r10) /* 8031DB08 00319768 7C 9C 19 2E */ stwx r4, r28, r3 lbl_8031DB0C: /* 8031DB0C 0031976C 39 4A 00 04 */ addi r10, r10, 4 /* 8031DB10 00319770 42 00 FF D8 */ bdnz lbl_8031DAE8 lbl_8031DB14: /* 8031DB14 00319774 7C FC CA 14 */ add r7, r28, r25 /* 8031DB18 00319778 57 D9 10 3A */ slwi r25, r30, 2 /* 8031DB1C 0031977C 80 67 00 04 */ lwz r3, 4(r7) /* 8031DB20 00319780 3B BF 00 01 */ addi r29, r31, 1 /* 8031DB24 00319784 7C 1C C8 2E */ lwzx r0, r28, r25 /* 8031DB28 00319788 38 DE FF FF */ addi r6, r30, -1 /* 8031DB2C 0031978C 7C 1D 30 00 */ cmpw r29, r6 /* 8031DB30 00319790 90 07 00 04 */ stw r0, 4(r7) /* 8031DB34 00319794 7C 7C C9 2E */ stwx r3, r28, r25 /* 8031DB38 00319798 40 80 00 A8 */ bge lbl_8031DBE0 /* 8031DB3C 0031979C 7C 9E FA 14 */ add r4, r30, r31 /* 8031DB40 003197A0 81 27 00 04 */ lwz r9, 4(r7) /* 8031DB44 003197A4 54 83 0F FE */ srwi r3, r4, 0x1f /* 8031DB48 003197A8 39 1F 00 02 */ addi r8, r31, 2 /* 8031DB4C 003197AC 7C 83 22 14 */ add r4, r3, r4 /* 8031DB50 003197B0 38 06 00 01 */ addi r0, r6, 1 /* 8031DB54 003197B4 54 85 08 3A */ rlwinm r5, r4, 1, 0, 0x1d /* 8031DB58 003197B8 55 03 10 3A */ slwi r3, r8, 2 /* 8031DB5C 003197BC 7C 9C 28 2E */ lwzx r4, r28, r5 /* 8031DB60 003197C0 7C 08 00 50 */ subf r0, r8, r0 /* 8031DB64 003197C4 90 87 00 04 */ stw r4, 4(r7) /* 8031DB68 003197C8 7C 9C 1A 14 */ add r4, r28, r3 /* 8031DB6C 003197CC 57 A3 10 3A */ slwi r3, r29, 2 /* 8031DB70 003197D0 7D 3C 29 2E */ stwx r9, r28, r5 /* 8031DB74 003197D4 7C 09 03 A6 */ mtctr r0 /* 8031DB78 003197D8 7C 08 30 00 */ cmpw r8, r6 /* 8031DB7C 003197DC 41 81 00 30 */ bgt lbl_8031DBAC lbl_8031DB80: /* 8031DB80 003197E0 80 A4 00 00 */ lwz r5, 0(r4) /* 8031DB84 003197E4 80 07 00 04 */ lwz r0, 4(r7) /* 8031DB88 003197E8 7C 05 00 40 */ cmplw r5, r0 /* 8031DB8C 003197EC 40 80 00 18 */ bge lbl_8031DBA4 /* 8031DB90 003197F0 38 63 00 04 */ addi r3, r3, 4 /* 8031DB94 003197F4 3B BD 00 01 */ addi r29, r29, 1 /* 8031DB98 003197F8 7C 1C 18 2E */ lwzx r0, r28, r3 /* 8031DB9C 003197FC 90 04 00 00 */ stw r0, 0(r4) /* 8031DBA0 00319800 7C BC 19 2E */ stwx r5, r28, r3 lbl_8031DBA4: /* 8031DBA4 00319804 38 84 00 04 */ addi r4, r4, 4 /* 8031DBA8 00319808 42 00 FF D8 */ bdnz lbl_8031DB80 lbl_8031DBAC: /* 8031DBAC 0031980C 57 A6 10 3A */ slwi r6, r29, 2 /* 8031DBB0 00319810 81 07 00 04 */ lwz r8, 4(r7) /* 8031DBB4 00319814 7C 1C 30 2E */ lwzx r0, r28, r6 /* 8031DBB8 00319818 7F 83 E3 78 */ mr r3, r28 /* 8031DBBC 0031981C 38 9F 00 01 */ addi r4, r31, 1 /* 8031DBC0 00319820 38 BD FF FF */ addi r5, r29, -1 /* 8031DBC4 00319824 90 07 00 04 */ stw r0, 4(r7) /* 8031DBC8 00319828 7D 1C 31 2E */ stwx r8, r28, r6 /* 8031DBCC 0031982C 48 00 0D 45 */ bl ss_qsort /* 8031DBD0 00319830 7F 83 E3 78 */ mr r3, r28 /* 8031DBD4 00319834 38 9D 00 01 */ addi r4, r29, 1 /* 8031DBD8 00319838 38 BE FF FF */ addi r5, r30, -1 /* 8031DBDC 0031983C 48 00 0D 35 */ bl ss_qsort lbl_8031DBE0: /* 8031DBE0 00319840 3B BE 00 01 */ addi r29, r30, 1 /* 8031DBE4 00319844 38 FB FF FF */ addi r7, r27, -1 /* 8031DBE8 00319848 7C 1D 38 00 */ cmpw r29, r7 /* 8031DBEC 0031984C 40 80 00 B0 */ bge lbl_8031DC9C /* 8031DBF0 00319850 7C 7B F2 14 */ add r3, r27, r30 /* 8031DBF4 00319854 7C DC CA 14 */ add r6, r28, r25 /* 8031DBF8 00319858 54 60 0F FE */ srwi r0, r3, 0x1f /* 8031DBFC 0031985C 81 26 00 04 */ lwz r9, 4(r6) /* 8031DC00 00319860 7C 60 1A 14 */ add r3, r0, r3 /* 8031DC04 00319864 39 1E 00 02 */ addi r8, r30, 2 /* 8031DC08 00319868 54 65 08 3A */ rlwinm r5, r3, 1, 0, 0x1d /* 8031DC0C 0031986C 38 07 00 01 */ addi r0, r7, 1 /* 8031DC10 00319870 7C 9C 28 2E */ lwzx r4, r28, r5 /* 8031DC14 00319874 55 03 10 3A */ slwi r3, r8, 2 /* 8031DC18 00319878 7D 5C 1A 14 */ add r10, r28, r3 /* 8031DC1C 0031987C 7C 08 00 50 */ subf r0, r8, r0 /* 8031DC20 00319880 90 86 00 04 */ stw r4, 4(r6) /* 8031DC24 00319884 57 A3 10 3A */ slwi r3, r29, 2 /* 8031DC28 00319888 7D 3C 29 2E */ stwx r9, r28, r5 /* 8031DC2C 0031988C 7C 09 03 A6 */ mtctr r0 /* 8031DC30 00319890 7C 08 38 00 */ cmpw r8, r7 /* 8031DC34 00319894 41 81 00 30 */ bgt lbl_8031DC64 lbl_8031DC38: /* 8031DC38 00319898 80 8A 00 00 */ lwz r4, 0(r10) /* 8031DC3C 0031989C 80 06 00 04 */ lwz r0, 4(r6) /* 8031DC40 003198A0 7C 04 00 40 */ cmplw r4, r0 /* 8031DC44 003198A4 40 80 00 18 */ bge lbl_8031DC5C /* 8031DC48 003198A8 38 63 00 04 */ addi r3, r3, 4 /* 8031DC4C 003198AC 3B BD 00 01 */ addi r29, r29, 1 /* 8031DC50 003198B0 7C 1C 18 2E */ lwzx r0, r28, r3 /* 8031DC54 003198B4 90 0A 00 00 */ stw r0, 0(r10) /* 8031DC58 003198B8 7C 9C 19 2E */ stwx r4, r28, r3 lbl_8031DC5C: /* 8031DC5C 003198BC 39 4A 00 04 */ addi r10, r10, 4 /* 8031DC60 003198C0 42 00 FF D8 */ bdnz lbl_8031DC38 lbl_8031DC64: /* 8031DC64 003198C4 7C FC CA 14 */ add r7, r28, r25 /* 8031DC68 003198C8 57 A6 10 3A */ slwi r6, r29, 2 /* 8031DC6C 003198CC 81 07 00 04 */ lwz r8, 4(r7) /* 8031DC70 003198D0 7F 83 E3 78 */ mr r3, r28 /* 8031DC74 003198D4 7C 1C 30 2E */ lwzx r0, r28, r6 /* 8031DC78 003198D8 38 9E 00 01 */ addi r4, r30, 1 /* 8031DC7C 003198DC 38 BD FF FF */ addi r5, r29, -1 /* 8031DC80 003198E0 90 07 00 04 */ stw r0, 4(r7) /* 8031DC84 003198E4 7D 1C 31 2E */ stwx r8, r28, r6 /* 8031DC88 003198E8 48 00 0C 89 */ bl ss_qsort /* 8031DC8C 003198EC 7F 83 E3 78 */ mr r3, r28 /* 8031DC90 003198F0 38 9D 00 01 */ addi r4, r29, 1 /* 8031DC94 003198F4 38 BB FF FF */ addi r5, r27, -1 /* 8031DC98 003198F8 48 00 0C 79 */ bl ss_qsort lbl_8031DC9C: /* 8031DC9C 003198FC 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031DCA0 00319900 80 AD B0 38 */ lwz r5, lbl_806402F8-_SDA_BASE_(r13) /* 8031DCA4 00319904 80 63 00 0C */ lwz r3, 0xc(r3) /* 8031DCA8 00319908 80 05 01 70 */ lwz r0, 0x170(r5) /* 8031DCAC 0031990C 7C 03 00 40 */ cmplw r3, r0 /* 8031DCB0 00319910 41 82 03 34 */ beq lbl_8031DFE4 /* 8031DCB4 00319914 38 00 00 05 */ li r0, 5 /* 8031DCB8 00319918 38 80 00 00 */ li r4, 0 /* 8031DCBC 0031991C 90 05 00 00 */ stw r0, 0(r5) /* 8031DCC0 00319920 83 4D B0 3C */ lwz r26, lbl_806402FC-_SDA_BASE_(r13) /* 8031DCC4 00319924 7F 45 D3 78 */ mr r5, r26 /* 8031DCC8 00319928 48 00 00 0C */ b lbl_8031DCD4 lbl_8031DCCC: /* 8031DCCC 0031992C 38 A5 00 08 */ addi r5, r5, 8 /* 8031DCD0 00319930 38 84 00 01 */ addi r4, r4, 1 lbl_8031DCD4: /* 8031DCD4 00319934 80 05 00 14 */ lwz r0, 0x14(r5) /* 8031DCD8 00319938 2C 00 00 00 */ cmpwi r0, 0 /* 8031DCDC 0031993C 41 82 00 0C */ beq lbl_8031DCE8 /* 8031DCE0 00319940 2C 04 00 10 */ cmpwi r4, 0x10 /* 8031DCE4 00319944 41 80 FF E8 */ blt lbl_8031DCCC lbl_8031DCE8: /* 8031DCE8 00319948 2C 04 00 10 */ cmpwi r4, 0x10 /* 8031DCEC 0031994C 40 80 00 2C */ bge lbl_8031DD18 /* 8031DCF0 00319950 90 9A 00 94 */ stw r4, 0x94(r26) /* 8031DCF4 00319954 54 86 18 38 */ slwi r6, r4, 3 /* 8031DCF8 00319958 38 A0 00 00 */ li r5, 0 /* 8031DCFC 0031995C 80 0D B0 3C */ lwz r0, lbl_806402FC-_SDA_BASE_(r13) /* 8031DD00 00319960 7C 80 32 14 */ add r4, r0, r6 /* 8031DD04 00319964 90 A4 00 18 */ stw r5, 0x18(r4) /* 8031DD08 00319968 83 4D B0 3C */ lwz r26, lbl_806402FC-_SDA_BASE_(r13) /* 8031DD0C 0031996C 7C 9A 32 14 */ add r4, r26, r6 /* 8031DD10 00319970 3B 24 00 14 */ addi r25, r4, 0x14 /* 8031DD14 00319974 48 00 00 08 */ b lbl_8031DD1C lbl_8031DD18: /* 8031DD18 00319978 3B 20 00 00 */ li r25, 0 lbl_8031DD1C: /* 8031DD1C 0031997C 38 80 30 39 */ li r4, 0x3039 /* 8031DD20 00319980 38 A0 00 00 */ li r5, 0 /* 8031DD24 00319984 48 02 FE 29 */ bl gt2AddressToString /* 8031DD28 00319988 80 CD B0 3C */ lwz r6, lbl_806402FC-_SDA_BASE_(r13) /* 8031DD2C 0031998C 7C 65 1B 78 */ mr r5, r3 /* 8031DD30 00319990 7F 24 CB 78 */ mr r4, r25 /* 8031DD34 00319994 39 3A 00 04 */ addi r9, r26, 4 /* 8031DD38 00319998 80 66 00 00 */ lwz r3, 0(r6) /* 8031DD3C 0031999C 38 C0 00 00 */ li r6, 0 /* 8031DD40 003199A0 38 E0 00 00 */ li r7, 0 /* 8031DD44 003199A4 39 00 27 10 */ li r8, 0x2710 /* 8031DD48 003199A8 39 40 00 00 */ li r10, 0 /* 8031DD4C 003199AC 48 02 BD 49 */ bl gt2Connect /* 8031DD50 003199B0 48 00 02 94 */ b lbl_8031DFE4 lbl_8031DD54: /* 8031DD54 003199B4 80 A6 01 74 */ lwz r5, 0x174(r6) /* 8031DD58 003199B8 2C 05 FF FF */ cmpwi r5, -1 /* 8031DD5C 003199BC 41 82 02 88 */ beq lbl_8031DFE4 /* 8031DD60 003199C0 80 66 01 78 */ lwz r3, 0x178(r6) /* 8031DD64 003199C4 80 ED B0 3C */ lwz r7, lbl_806402FC-_SDA_BASE_(r13) /* 8031DD68 003199C8 37 23 FF FF */ addic. r25, r3, -1 /* 8031DD6C 003199CC 38 87 00 14 */ addi r4, r7, 0x14 /* 8031DD70 003199D0 57 20 10 3A */ slwi r0, r25, 2 /* 8031DD74 003199D4 7C 67 02 14 */ add r3, r7, r0 /* 8031DD78 003199D8 7F 29 03 A6 */ mtctr r25 /* 8031DD7C 003199DC 40 81 00 FC */ ble lbl_8031DE78 lbl_8031DD80: /* 8031DD80 003199E0 80 06 01 74 */ lwz r0, 0x174(r6) /* 8031DD84 003199E4 7C 19 00 00 */ cmpw r25, r0 /* 8031DD88 003199E8 41 82 00 E4 */ beq lbl_8031DE6C /* 8031DD8C 003199EC 80 03 00 94 */ lwz r0, 0x94(r3) /* 8031DD90 003199F0 2C 00 FF FF */ cmpwi r0, -1 /* 8031DD94 003199F4 40 82 00 0C */ bne lbl_8031DDA0 /* 8031DD98 003199F8 38 00 00 00 */ li r0, 0 /* 8031DD9C 003199FC 48 00 00 0C */ b lbl_8031DDA8 lbl_8031DDA0: /* 8031DDA0 00319A00 54 00 18 38 */ slwi r0, r0, 3 /* 8031DDA4 00319A04 7C 04 02 14 */ add r0, r4, r0 lbl_8031DDA8: /* 8031DDA8 00319A08 2C 00 00 00 */ cmpwi r0, 0 /* 8031DDAC 00319A0C 40 82 00 C0 */ bne lbl_8031DE6C /* 8031DDB0 00319A10 7C 19 28 00 */ cmpw r25, r5 /* 8031DDB4 00319A14 40 81 00 C4 */ ble lbl_8031DE78 /* 8031DDB8 00319A18 38 60 00 06 */ li r3, 6 /* 8031DDBC 00319A1C 57 20 18 38 */ slwi r0, r25, 3 /* 8031DDC0 00319A20 90 66 00 00 */ stw r3, 0(r6) /* 8031DDC4 00319A24 38 A0 00 00 */ li r5, 0 /* 8031DDC8 00319A28 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031DDCC 00319A2C 83 6D B0 3C */ lwz r27, lbl_806402FC-_SDA_BASE_(r13) /* 8031DDD0 00319A30 7C 63 02 14 */ add r3, r3, r0 /* 8031DDD4 00319A34 80 63 01 7C */ lwz r3, 0x17c(r3) /* 8031DDD8 00319A38 7F 64 DB 78 */ mr r4, r27 /* 8031DDDC 00319A3C 48 00 00 0C */ b lbl_8031DDE8 lbl_8031DDE0: /* 8031DDE0 00319A40 38 84 00 08 */ addi r4, r4, 8 /* 8031DDE4 00319A44 38 A5 00 01 */ addi r5, r5, 1 lbl_8031DDE8: /* 8031DDE8 00319A48 80 04 00 14 */ lwz r0, 0x14(r4) /* 8031DDEC 00319A4C 2C 00 00 00 */ cmpwi r0, 0 /* 8031DDF0 00319A50 41 82 00 0C */ beq lbl_8031DDFC /* 8031DDF4 00319A54 2C 05 00 10 */ cmpwi r5, 0x10 /* 8031DDF8 00319A58 41 80 FF E8 */ blt lbl_8031DDE0 lbl_8031DDFC: /* 8031DDFC 00319A5C 2C 05 00 10 */ cmpwi r5, 0x10 /* 8031DE00 00319A60 40 80 00 30 */ bge lbl_8031DE30 /* 8031DE04 00319A64 57 20 10 3A */ slwi r0, r25, 2 /* 8031DE08 00319A68 54 A6 18 38 */ slwi r6, r5, 3 /* 8031DE0C 00319A6C 7C 9B 02 14 */ add r4, r27, r0 /* 8031DE10 00319A70 90 A4 00 94 */ stw r5, 0x94(r4) /* 8031DE14 00319A74 80 0D B0 3C */ lwz r0, lbl_806402FC-_SDA_BASE_(r13) /* 8031DE18 00319A78 7C 80 32 14 */ add r4, r0, r6 /* 8031DE1C 00319A7C 93 24 00 18 */ stw r25, 0x18(r4) /* 8031DE20 00319A80 83 6D B0 3C */ lwz r27, lbl_806402FC-_SDA_BASE_(r13) /* 8031DE24 00319A84 7C 9B 32 14 */ add r4, r27, r6 /* 8031DE28 00319A88 3B 44 00 14 */ addi r26, r4, 0x14 /* 8031DE2C 00319A8C 48 00 00 08 */ b lbl_8031DE34 lbl_8031DE30: /* 8031DE30 00319A90 3B 40 00 00 */ li r26, 0 lbl_8031DE34: /* 8031DE34 00319A94 38 80 30 39 */ li r4, 0x3039 /* 8031DE38 00319A98 38 A0 00 00 */ li r5, 0 /* 8031DE3C 00319A9C 48 02 FD 11 */ bl gt2AddressToString /* 8031DE40 00319AA0 80 CD B0 3C */ lwz r6, lbl_806402FC-_SDA_BASE_(r13) /* 8031DE44 00319AA4 7C 65 1B 78 */ mr r5, r3 /* 8031DE48 00319AA8 7F 44 D3 78 */ mr r4, r26 /* 8031DE4C 00319AAC 39 3B 00 04 */ addi r9, r27, 4 /* 8031DE50 00319AB0 80 66 00 00 */ lwz r3, 0(r6) /* 8031DE54 00319AB4 38 C0 00 00 */ li r6, 0 /* 8031DE58 00319AB8 38 E0 00 00 */ li r7, 0 /* 8031DE5C 00319ABC 39 00 27 10 */ li r8, 0x2710 /* 8031DE60 00319AC0 39 40 00 00 */ li r10, 0 /* 8031DE64 00319AC4 48 02 BC 31 */ bl gt2Connect /* 8031DE68 00319AC8 48 00 00 10 */ b lbl_8031DE78 lbl_8031DE6C: /* 8031DE6C 00319ACC 38 63 FF FC */ addi r3, r3, -4 /* 8031DE70 00319AD0 3B 39 FF FF */ addi r25, r25, -1 /* 8031DE74 00319AD4 42 00 FF 0C */ bdnz lbl_8031DD80 lbl_8031DE78: /* 8031DE78 00319AD8 2C 19 00 00 */ cmpwi r25, 0 /* 8031DE7C 00319ADC 40 82 01 68 */ bne lbl_8031DFE4 /* 8031DE80 00319AE0 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031DE84 00319AE4 38 80 00 07 */ li r4, 7 /* 8031DE88 00319AE8 38 00 00 01 */ li r0, 1 /* 8031DE8C 00319AEC 90 83 00 00 */ stw r4, 0(r3) /* 8031DE90 00319AF0 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031DE94 00319AF4 90 03 01 2C */ stw r0, 0x12c(r3) /* 8031DE98 00319AF8 80 AD B0 3C */ lwz r5, lbl_806402FC-_SDA_BASE_(r13) /* 8031DE9C 00319AFC 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031DEA0 00319B00 80 05 00 94 */ lwz r0, 0x94(r5) /* 8031DEA4 00319B04 38 83 01 2C */ addi r4, r3, 0x12c /* 8031DEA8 00319B08 2C 00 FF FF */ cmpwi r0, -1 /* 8031DEAC 00319B0C 40 82 00 0C */ bne lbl_8031DEB8 /* 8031DEB0 00319B10 38 60 00 00 */ li r3, 0 /* 8031DEB4 00319B14 48 00 00 10 */ b lbl_8031DEC4 lbl_8031DEB8: /* 8031DEB8 00319B18 54 00 18 38 */ slwi r0, r0, 3 /* 8031DEBC 00319B1C 7C 65 02 14 */ add r3, r5, r0 /* 8031DEC0 00319B20 38 63 00 14 */ addi r3, r3, 0x14 lbl_8031DEC4: /* 8031DEC4 00319B24 80 63 00 00 */ lwz r3, 0(r3) /* 8031DEC8 00319B28 38 A0 00 44 */ li r5, 0x44 /* 8031DECC 00319B2C 38 C0 00 01 */ li r6, 1 /* 8031DED0 00319B30 48 02 BD 6D */ bl gt2Send /* 8031DED4 00319B34 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031DED8 00319B38 80 03 00 00 */ lwz r0, 0(r3) /* 8031DEDC 00319B3C 2C 00 00 08 */ cmpwi r0, 8 /* 8031DEE0 00319B40 40 82 01 04 */ bne lbl_8031DFE4 /* 8031DEE4 00319B44 81 83 02 04 */ lwz r12, 0x204(r3) /* 8031DEE8 00319B48 38 60 00 44 */ li r3, 0x44 /* 8031DEEC 00319B4C 38 80 00 00 */ li r4, 0 /* 8031DEF0 00319B50 7D 89 03 A6 */ mtctr r12 /* 8031DEF4 00319B54 4E 80 04 21 */ bctrl /* 8031DEF8 00319B58 48 00 00 EC */ b lbl_8031DFE4 lbl_8031DEFC: /* 8031DEFC 00319B5C 80 86 01 78 */ lwz r4, 0x178(r6) /* 8031DF00 00319B60 38 66 00 08 */ addi r3, r6, 8 /* 8031DF04 00319B64 38 A0 00 01 */ li r5, 1 /* 8031DF08 00319B68 38 04 FF FF */ addi r0, r4, -1 /* 8031DF0C 00319B6C 7C 09 03 A6 */ mtctr r0 /* 8031DF10 00319B70 2C 04 00 01 */ cmpwi r4, 1 /* 8031DF14 00319B74 40 81 00 1C */ ble lbl_8031DF30 lbl_8031DF18: /* 8031DF18 00319B78 80 03 01 80 */ lwz r0, 0x180(r3) /* 8031DF1C 00319B7C 2C 00 00 00 */ cmpwi r0, 0 /* 8031DF20 00319B80 41 82 00 10 */ beq lbl_8031DF30 /* 8031DF24 00319B84 38 63 00 08 */ addi r3, r3, 8 /* 8031DF28 00319B88 38 A5 00 01 */ addi r5, r5, 1 /* 8031DF2C 00319B8C 42 00 FF EC */ bdnz lbl_8031DF18 lbl_8031DF30: /* 8031DF30 00319B90 80 06 01 78 */ lwz r0, 0x178(r6) /* 8031DF34 00319B94 7C 05 00 00 */ cmpw r5, r0 /* 8031DF38 00319B98 40 82 00 AC */ bne lbl_8031DFE4 /* 8031DF3C 00319B9C 38 00 00 02 */ li r0, 2 /* 8031DF40 00319BA0 3B 40 00 01 */ li r26, 1 /* 8031DF44 00319BA4 90 06 01 2C */ stw r0, 0x12c(r6) /* 8031DF48 00319BA8 3B 20 00 04 */ li r25, 4 /* 8031DF4C 00319BAC 48 00 00 6C */ b lbl_8031DFB8 lbl_8031DF50: /* 8031DF50 00319BB0 80 AD B0 3C */ lwz r5, lbl_806402FC-_SDA_BASE_(r13) /* 8031DF54 00319BB4 38 84 01 2C */ addi r4, r4, 0x12c /* 8031DF58 00319BB8 7C 65 CA 14 */ add r3, r5, r25 /* 8031DF5C 00319BBC 80 03 00 94 */ lwz r0, 0x94(r3) /* 8031DF60 00319BC0 2C 00 FF FF */ cmpwi r0, -1 /* 8031DF64 00319BC4 40 82 00 0C */ bne lbl_8031DF70 /* 8031DF68 00319BC8 38 60 00 00 */ li r3, 0 /* 8031DF6C 00319BCC 48 00 00 10 */ b lbl_8031DF7C lbl_8031DF70: /* 8031DF70 00319BD0 54 00 18 38 */ slwi r0, r0, 3 /* 8031DF74 00319BD4 7C 65 02 14 */ add r3, r5, r0 /* 8031DF78 00319BD8 38 63 00 14 */ addi r3, r3, 0x14 lbl_8031DF7C: /* 8031DF7C 00319BDC 80 63 00 00 */ lwz r3, 0(r3) /* 8031DF80 00319BE0 38 A0 00 44 */ li r5, 0x44 /* 8031DF84 00319BE4 38 C0 00 01 */ li r6, 1 /* 8031DF88 00319BE8 48 02 BC B5 */ bl gt2Send /* 8031DF8C 00319BEC 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031DF90 00319BF0 80 03 00 00 */ lwz r0, 0(r3) /* 8031DF94 00319BF4 2C 00 00 08 */ cmpwi r0, 8 /* 8031DF98 00319BF8 40 82 00 18 */ bne lbl_8031DFB0 /* 8031DF9C 00319BFC 81 83 02 04 */ lwz r12, 0x204(r3) /* 8031DFA0 00319C00 7F 44 D3 78 */ mr r4, r26 /* 8031DFA4 00319C04 38 60 00 44 */ li r3, 0x44 /* 8031DFA8 00319C08 7D 89 03 A6 */ mtctr r12 /* 8031DFAC 00319C0C 4E 80 04 21 */ bctrl lbl_8031DFB0: /* 8031DFB0 00319C10 3B 39 00 04 */ addi r25, r25, 4 /* 8031DFB4 00319C14 3B 5A 00 01 */ addi r26, r26, 1 lbl_8031DFB8: /* 8031DFB8 00319C18 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031DFBC 00319C1C 80 04 01 78 */ lwz r0, 0x178(r4) /* 8031DFC0 00319C20 7C 1A 00 00 */ cmpw r26, r0 /* 8031DFC4 00319C24 41 80 FF 8C */ blt lbl_8031DF50 /* 8031DFC8 00319C28 38 00 00 08 */ li r0, 8 /* 8031DFCC 00319C2C 38 60 00 00 */ li r3, 0 /* 8031DFD0 00319C30 90 04 00 00 */ stw r0, 0(r4) /* 8031DFD4 00319C34 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031DFD8 00319C38 81 84 01 FC */ lwz r12, 0x1fc(r4) /* 8031DFDC 00319C3C 7D 89 03 A6 */ mtctr r12 /* 8031DFE0 00319C40 4E 80 04 21 */ bctrl lbl_8031DFE4: /* 8031DFE4 00319C44 39 61 00 40 */ addi r11, r1, 0x40 /* 8031DFE8 00319C48 4B EA 91 85 */ bl _restgpr_25 /* 8031DFEC 00319C4C 80 01 00 44 */ lwz r0, 0x44(r1) /* 8031DFF0 00319C50 7C 08 03 A6 */ mtlr r0 /* 8031DFF4 00319C54 38 21 00 40 */ addi r1, r1, 0x40 /* 8031DFF8 00319C58 4E 80 00 20 */ blr .global DWC_StartLanMatch DWC_StartLanMatch: /* 8031DFFC 00319C5C 80 AD B0 38 */ lwz r5, lbl_806402F8-_SDA_BASE_(r13) /* 8031E000 00319C60 90 65 01 78 */ stw r3, 0x178(r5) /* 8031E004 00319C64 38 60 00 01 */ li r3, 1 /* 8031E008 00319C68 80 AD B0 38 */ lwz r5, lbl_806402F8-_SDA_BASE_(r13) /* 8031E00C 00319C6C 90 85 01 FC */ stw r4, 0x1fc(r5) /* 8031E010 00319C70 4E 80 00 20 */ blr .global DWC_ShutdownLanMatch DWC_ShutdownLanMatch: /* 8031E014 00319C74 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8031E018 00319C78 7C 08 02 A6 */ mflr r0 /* 8031E01C 00319C7C 38 60 00 00 */ li r3, 0 /* 8031E020 00319C80 90 01 00 14 */ stw r0, 0x14(r1) /* 8031E024 00319C84 93 E1 00 0C */ stw r31, 0xc(r1) /* 8031E028 00319C88 48 03 06 0D */ bl qr2_shutdown /* 8031E02C 00319C8C 80 6D B0 40 */ lwz r3, lbl_80640300-_SDA_BASE_(r13) /* 8031E030 00319C90 80 63 00 00 */ lwz r3, 0(r3) /* 8031E034 00319C94 48 04 04 69 */ bl ServerBrowserFree /* 8031E038 00319C98 3B E0 00 00 */ li r31, 0 /* 8031E03C 00319C9C 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E040 00319CA0 93 ED B0 40 */ stw r31, lbl_80640300-_SDA_BASE_(r13) /* 8031E044 00319CA4 80 63 00 00 */ lwz r3, 0(r3) /* 8031E048 00319CA8 48 02 BD 09 */ bl func_80349D50 /* 8031E04C 00319CAC 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E050 00319CB0 80 63 00 00 */ lwz r3, 0(r3) /* 8031E054 00319CB4 48 02 B9 A5 */ bl gt2CloseSocket /* 8031E058 00319CB8 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031E05C 00319CBC 93 ED B0 3C */ stw r31, lbl_806402FC-_SDA_BASE_(r13) /* 8031E060 00319CC0 2C 04 00 00 */ cmpwi r4, 0 /* 8031E064 00319CC4 41 82 00 14 */ beq lbl_8031E078 /* 8031E068 00319CC8 38 60 00 05 */ li r3, 5 /* 8031E06C 00319CCC 38 A0 00 00 */ li r5, 0 /* 8031E070 00319CD0 4B FF E9 19 */ bl DWC_Free /* 8031E074 00319CD4 93 ED B0 38 */ stw r31, lbl_806402F8-_SDA_BASE_(r13) lbl_8031E078: /* 8031E078 00319CD8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8031E07C 00319CDC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8031E080 00319CE0 7C 08 03 A6 */ mtlr r0 /* 8031E084 00319CE4 38 21 00 10 */ addi r1, r1, 0x10 /* 8031E088 00319CE8 4E 80 00 20 */ blr .global DWC_GetMyAIDLanMatch DWC_GetMyAIDLanMatch: /* 8031E08C 00319CEC 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E090 00319CF0 80 03 00 00 */ lwz r0, 0(r3) /* 8031E094 00319CF4 2C 00 00 08 */ cmpwi r0, 8 /* 8031E098 00319CF8 41 80 00 10 */ blt lbl_8031E0A8 /* 8031E09C 00319CFC 80 63 01 74 */ lwz r3, 0x174(r3) /* 8031E0A0 00319D00 2C 03 00 00 */ cmpwi r3, 0 /* 8031E0A4 00319D04 4C 80 00 20 */ bgelr lbl_8031E0A8: /* 8031E0A8 00319D08 38 60 FF FF */ li r3, -1 /* 8031E0AC 00319D0C 4E 80 00 20 */ blr .global DWC_SendLanMatch DWC_SendLanMatch: /* 8031E0B0 00319D10 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8031E0B4 00319D14 7C 08 02 A6 */ mflr r0 /* 8031E0B8 00319D18 90 01 00 14 */ stw r0, 0x14(r1) /* 8031E0BC 00319D1C 54 60 10 3A */ slwi r0, r3, 2 /* 8031E0C0 00319D20 93 E1 00 0C */ stw r31, 0xc(r1) /* 8031E0C4 00319D24 7C BF 2B 78 */ mr r31, r5 /* 8031E0C8 00319D28 93 C1 00 08 */ stw r30, 8(r1) /* 8031E0CC 00319D2C 7C 7E 1B 78 */ mr r30, r3 /* 8031E0D0 00319D30 80 ED B0 3C */ lwz r7, lbl_806402FC-_SDA_BASE_(r13) /* 8031E0D4 00319D34 7C 67 02 14 */ add r3, r7, r0 /* 8031E0D8 00319D38 80 03 00 94 */ lwz r0, 0x94(r3) /* 8031E0DC 00319D3C 2C 00 FF FF */ cmpwi r0, -1 /* 8031E0E0 00319D40 40 82 00 0C */ bne lbl_8031E0EC /* 8031E0E4 00319D44 38 60 00 00 */ li r3, 0 /* 8031E0E8 00319D48 48 00 00 10 */ b lbl_8031E0F8 lbl_8031E0EC: /* 8031E0EC 00319D4C 54 00 18 38 */ slwi r0, r0, 3 /* 8031E0F0 00319D50 7C 67 02 14 */ add r3, r7, r0 /* 8031E0F4 00319D54 38 63 00 14 */ addi r3, r3, 0x14 lbl_8031E0F8: /* 8031E0F8 00319D58 80 63 00 00 */ lwz r3, 0(r3) /* 8031E0FC 00319D5C 7F E5 FB 78 */ mr r5, r31 /* 8031E100 00319D60 48 02 BB 3D */ bl gt2Send /* 8031E104 00319D64 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E108 00319D68 80 03 00 00 */ lwz r0, 0(r3) /* 8031E10C 00319D6C 2C 00 00 08 */ cmpwi r0, 8 /* 8031E110 00319D70 40 82 00 18 */ bne lbl_8031E128 /* 8031E114 00319D74 81 83 02 04 */ lwz r12, 0x204(r3) /* 8031E118 00319D78 7F E3 FB 78 */ mr r3, r31 /* 8031E11C 00319D7C 7F C4 F3 78 */ mr r4, r30 /* 8031E120 00319D80 7D 89 03 A6 */ mtctr r12 /* 8031E124 00319D84 4E 80 04 21 */ bctrl lbl_8031E128: /* 8031E128 00319D88 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8031E12C 00319D8C 38 60 00 01 */ li r3, 1 /* 8031E130 00319D90 83 C1 00 08 */ lwz r30, 8(r1) /* 8031E134 00319D94 80 01 00 14 */ lwz r0, 0x14(r1) /* 8031E138 00319D98 7C 08 03 A6 */ mtlr r0 /* 8031E13C 00319D9C 38 21 00 10 */ addi r1, r1, 0x10 /* 8031E140 00319DA0 4E 80 00 20 */ blr cn_sockerror: /* 8031E144 00319DA4 3C 60 80 44 */ lis r3, lbl_80446BF4@ha /* 8031E148 00319DA8 3C A0 80 44 */ lis r5, lbl_80446C04@ha /* 8031E14C 00319DAC 38 63 6B F4 */ addi r3, r3, lbl_80446BF4@l /* 8031E150 00319DB0 38 80 01 A8 */ li r4, 0x1a8 /* 8031E154 00319DB4 38 A5 6C 04 */ addi r5, r5, lbl_80446C04@l /* 8031E158 00319DB8 4C C6 31 82 */ crclr 6 /* 8031E15C 00319DBC 4B F4 D3 40 */ b OSPanic ss_serverBrowsing: /* 8031E160 00319DC0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8031E164 00319DC4 7C 08 02 A6 */ mflr r0 /* 8031E168 00319DC8 38 60 00 01 */ li r3, 1 /* 8031E16C 00319DCC 90 01 00 14 */ stw r0, 0x14(r1) /* 8031E170 00319DD0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8031E174 00319DD4 7C 9F 23 78 */ mr r31, r4 /* 8031E178 00319DD8 3C 80 80 44 */ lis r4, lbl_80446C14@ha /* 8031E17C 00319DDC 7F E5 FB 78 */ mr r5, r31 /* 8031E180 00319DE0 38 84 6C 14 */ addi r4, r4, lbl_80446C14@l /* 8031E184 00319DE4 4C C6 31 82 */ crclr 6 /* 8031E188 00319DE8 4B FF E9 AD */ bl DWC_Printf /* 8031E18C 00319DEC 2C 1F 00 03 */ cmpwi r31, 3 /* 8031E190 00319DF0 41 82 00 28 */ beq lbl_8031E1B8 /* 8031E194 00319DF4 40 80 00 10 */ bge lbl_8031E1A4 /* 8031E198 00319DF8 2C 1F 00 02 */ cmpwi r31, 2 /* 8031E19C 00319DFC 40 80 00 1C */ bge lbl_8031E1B8 /* 8031E1A0 00319E00 48 00 00 18 */ b lbl_8031E1B8 lbl_8031E1A4: /* 8031E1A4 00319E04 2C 1F 00 05 */ cmpwi r31, 5 /* 8031E1A8 00319E08 40 80 00 10 */ bge lbl_8031E1B8 /* 8031E1AC 00319E0C 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E1B0 00319E10 38 00 00 01 */ li r0, 1 /* 8031E1B4 00319E14 90 03 00 0C */ stw r0, 0xc(r3) lbl_8031E1B8: /* 8031E1B8 00319E18 80 01 00 14 */ lwz r0, 0x14(r1) /* 8031E1BC 00319E1C 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8031E1C0 00319E20 7C 08 03 A6 */ mtlr r0 /* 8031E1C4 00319E24 38 21 00 10 */ addi r1, r1, 0x10 /* 8031E1C8 00319E28 4E 80 00 20 */ blr ss_serverKey: /* 8031E1CC 00319E2C 4E 80 00 20 */ blr ss_playerKey: /* 8031E1D0 00319E30 4E 80 00 20 */ blr ss_teamKey: /* 8031E1D4 00319E34 4E 80 00 20 */ blr ss_keyList: /* 8031E1D8 00319E38 4E 80 00 20 */ blr ss_count: /* 8031E1DC 00319E3C 38 60 00 00 */ li r3, 0 /* 8031E1E0 00319E40 4E 80 00 20 */ blr ss_addError: /* 8031E1E4 00319E44 4E 80 00 20 */ blr .global cn_init cn_init: /* 8031E1E8 00319E48 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8031E1EC 00319E4C 7C 08 02 A6 */ mflr r0 /* 8031E1F0 00319E50 38 80 FF FF */ li r4, -1 /* 8031E1F4 00319E54 90 01 00 14 */ stw r0, 0x14(r1) /* 8031E1F8 00319E58 38 00 00 01 */ li r0, 1 /* 8031E1FC 00319E5C 93 E1 00 0C */ stw r31, 0xc(r1) /* 8031E200 00319E60 7C 7F 1B 78 */ mr r31, r3 /* 8031E204 00319E64 80 AD B0 38 */ lwz r5, lbl_806402F8-_SDA_BASE_(r13) /* 8031E208 00319E68 38 65 00 54 */ addi r3, r5, 0x54 /* 8031E20C 00319E6C 38 A0 00 40 */ li r5, 0x40 /* 8031E210 00319E70 90 6D B0 3C */ stw r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E214 00319E74 90 03 00 D4 */ stw r0, 0xd4(r3) /* 8031E218 00319E78 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E21C 00319E7C 38 63 00 94 */ addi r3, r3, 0x94 /* 8031E220 00319E80 4B CE 5E E5 */ bl memset /* 8031E224 00319E84 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E228 00319E88 38 00 FF FF */ li r0, -1 /* 8031E22C 00319E8C 38 80 00 00 */ li r4, 0 /* 8031E230 00319E90 38 A0 00 10 */ li r5, 0x10 /* 8031E234 00319E94 90 03 00 18 */ stw r0, 0x18(r3) /* 8031E238 00319E98 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E23C 00319E9C 90 03 00 20 */ stw r0, 0x20(r3) /* 8031E240 00319EA0 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E244 00319EA4 90 03 00 28 */ stw r0, 0x28(r3) /* 8031E248 00319EA8 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E24C 00319EAC 90 03 00 30 */ stw r0, 0x30(r3) /* 8031E250 00319EB0 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E254 00319EB4 90 03 00 38 */ stw r0, 0x38(r3) /* 8031E258 00319EB8 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E25C 00319EBC 90 03 00 40 */ stw r0, 0x40(r3) /* 8031E260 00319EC0 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E264 00319EC4 90 03 00 48 */ stw r0, 0x48(r3) /* 8031E268 00319EC8 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E26C 00319ECC 90 03 00 50 */ stw r0, 0x50(r3) /* 8031E270 00319ED0 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E274 00319ED4 90 03 00 58 */ stw r0, 0x58(r3) /* 8031E278 00319ED8 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E27C 00319EDC 90 03 00 60 */ stw r0, 0x60(r3) /* 8031E280 00319EE0 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E284 00319EE4 90 03 00 68 */ stw r0, 0x68(r3) /* 8031E288 00319EE8 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E28C 00319EEC 90 03 00 70 */ stw r0, 0x70(r3) /* 8031E290 00319EF0 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E294 00319EF4 90 03 00 78 */ stw r0, 0x78(r3) /* 8031E298 00319EF8 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E29C 00319EFC 90 03 00 80 */ stw r0, 0x80(r3) /* 8031E2A0 00319F00 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E2A4 00319F04 90 03 00 88 */ stw r0, 0x88(r3) /* 8031E2A8 00319F08 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E2AC 00319F0C 90 03 00 90 */ stw r0, 0x90(r3) /* 8031E2B0 00319F10 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E2B4 00319F14 38 63 00 04 */ addi r3, r3, 4 /* 8031E2B8 00319F18 4B CE 5E 4D */ bl memset /* 8031E2BC 00319F1C 3C 80 80 32 */ lis r4, cn_connected@ha /* 8031E2C0 00319F20 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E2C4 00319F24 38 84 E3 40 */ addi r4, r4, cn_connected@l /* 8031E2C8 00319F28 3D 00 80 32 */ lis r8, cn_received@ha /* 8031E2CC 00319F2C 90 83 00 04 */ stw r4, 4(r3) /* 8031E2D0 00319F30 3C E0 80 32 */ lis r7, cn_closed@ha /* 8031E2D4 00319F34 39 08 E4 44 */ addi r8, r8, cn_received@l /* 8031E2D8 00319F38 7F E3 FB 78 */ mr r3, r31 /* 8031E2DC 00319F3C 80 CD B0 3C */ lwz r6, lbl_806402FC-_SDA_BASE_(r13) /* 8031E2E0 00319F40 38 E7 E5 A4 */ addi r7, r7, cn_closed@l /* 8031E2E4 00319F44 38 80 30 39 */ li r4, 0x3039 /* 8031E2E8 00319F48 38 A0 00 00 */ li r5, 0 /* 8031E2EC 00319F4C 91 06 00 08 */ stw r8, 8(r6) /* 8031E2F0 00319F50 80 CD B0 3C */ lwz r6, lbl_806402FC-_SDA_BASE_(r13) /* 8031E2F4 00319F54 90 E6 00 0C */ stw r7, 0xc(r6) /* 8031E2F8 00319F58 48 02 F8 55 */ bl gt2AddressToString /* 8031E2FC 00319F5C 7C 64 1B 78 */ mr r4, r3 /* 8031E300 00319F60 3C E0 80 32 */ lis r7, cn_sockerror@ha /* 8031E304 00319F64 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E308 00319F68 38 E7 E1 44 */ addi r7, r7, cn_sockerror@l /* 8031E30C 00319F6C 38 A0 00 00 */ li r5, 0 /* 8031E310 00319F70 38 C0 00 00 */ li r6, 0 /* 8031E314 00319F74 48 02 B6 DD */ bl gt2CreateSocket /* 8031E318 00319F78 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E31C 00319F7C 3C 80 80 32 */ lis r4, cn_listen@ha /* 8031E320 00319F80 38 84 E5 BC */ addi r4, r4, cn_listen@l /* 8031E324 00319F84 80 63 00 00 */ lwz r3, 0(r3) /* 8031E328 00319F88 48 02 B7 61 */ bl gt2Listen /* 8031E32C 00319F8C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8031E330 00319F90 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8031E334 00319F94 7C 08 03 A6 */ mtlr r0 /* 8031E338 00319F98 38 21 00 10 */ addi r1, r1, 0x10 /* 8031E33C 00319F9C 4E 80 00 20 */ blr cn_connected: /* 8031E340 00319FA0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8031E344 00319FA4 7C 08 02 A6 */ mflr r0 /* 8031E348 00319FA8 2C 04 00 00 */ cmpwi r4, 0 /* 8031E34C 00319FAC 90 01 00 14 */ stw r0, 0x14(r1) /* 8031E350 00319FB0 93 E1 00 0C */ stw r31, 0xc(r1) /* 8031E354 00319FB4 7C 9F 23 78 */ mr r31, r4 /* 8031E358 00319FB8 93 C1 00 08 */ stw r30, 8(r1) /* 8031E35C 00319FBC 7C 7E 1B 78 */ mr r30, r3 /* 8031E360 00319FC0 40 82 00 14 */ bne lbl_8031E374 /* 8031E364 00319FC4 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E368 00319FC8 38 00 00 03 */ li r0, 3 /* 8031E36C 00319FCC 90 03 00 00 */ stw r0, 0(r3) /* 8031E370 00319FD0 48 00 00 8C */ b lbl_8031E3FC lbl_8031E374: /* 8031E374 00319FD4 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031E378 00319FD8 38 A0 00 01 */ li r5, 1 /* 8031E37C 00319FDC 38 00 00 10 */ li r0, 0x10 /* 8031E380 00319FE0 38 C0 00 00 */ li r6, 0 /* 8031E384 00319FE4 90 A4 00 00 */ stw r5, 0(r4) /* 8031E388 00319FE8 80 AD B0 3C */ lwz r5, lbl_806402FC-_SDA_BASE_(r13) /* 8031E38C 00319FEC 7C A4 2B 78 */ mr r4, r5 /* 8031E390 00319FF0 7C 09 03 A6 */ mtctr r0 lbl_8031E394: /* 8031E394 00319FF4 80 04 00 14 */ lwz r0, 0x14(r4) /* 8031E398 00319FF8 7C 03 00 40 */ cmplw r3, r0 /* 8031E39C 00319FFC 40 82 00 14 */ bne lbl_8031E3B0 /* 8031E3A0 0031A000 54 C0 18 38 */ slwi r0, r6, 3 /* 8031E3A4 0031A004 7C 65 02 14 */ add r3, r5, r0 /* 8031E3A8 0031A008 80 03 00 18 */ lwz r0, 0x18(r3) /* 8031E3AC 0031A00C 48 00 00 14 */ b lbl_8031E3C0 lbl_8031E3B0: /* 8031E3B0 0031A010 38 84 00 08 */ addi r4, r4, 8 /* 8031E3B4 0031A014 38 C6 00 01 */ addi r6, r6, 1 /* 8031E3B8 0031A018 42 00 FF DC */ bdnz lbl_8031E394 /* 8031E3BC 0031A01C 38 00 FF FF */ li r0, -1 lbl_8031E3C0: /* 8031E3C0 0031A020 54 00 10 3A */ slwi r0, r0, 2 /* 8031E3C4 0031A024 7C 65 02 14 */ add r3, r5, r0 /* 8031E3C8 0031A028 80 03 00 94 */ lwz r0, 0x94(r3) /* 8031E3CC 0031A02C 2C 00 FF FF */ cmpwi r0, -1 /* 8031E3D0 0031A030 41 82 00 2C */ beq lbl_8031E3FC /* 8031E3D4 0031A034 38 80 FF FF */ li r4, -1 /* 8031E3D8 0031A038 54 05 18 38 */ slwi r5, r0, 3 /* 8031E3DC 0031A03C 90 83 00 94 */ stw r4, 0x94(r3) /* 8031E3E0 0031A040 80 0D B0 3C */ lwz r0, lbl_806402FC-_SDA_BASE_(r13) /* 8031E3E4 0031A044 7C 60 2A 14 */ add r3, r0, r5 /* 8031E3E8 0031A048 90 83 00 18 */ stw r4, 0x18(r3) /* 8031E3EC 0031A04C 80 0D B0 3C */ lwz r0, lbl_806402FC-_SDA_BASE_(r13) /* 8031E3F0 0031A050 7C 60 2A 14 */ add r3, r0, r5 /* 8031E3F4 0031A054 80 63 00 14 */ lwz r3, 0x14(r3) /* 8031E3F8 0031A058 48 02 B9 45 */ bl gt2CloseConnectionHard lbl_8031E3FC: /* 8031E3FC 0031A05C 7F C3 F3 78 */ mr r3, r30 /* 8031E400 0031A060 48 02 B9 B9 */ bl func_80349DB8 /* 8031E404 0031A064 38 80 00 00 */ li r4, 0 /* 8031E408 0031A068 38 A0 00 00 */ li r5, 0 /* 8031E40C 0031A06C 48 02 F7 41 */ bl gt2AddressToString /* 8031E410 0031A070 3C 80 80 44 */ lis r4, lbl_80446C2C@ha /* 8031E414 0031A074 7C 65 1B 78 */ mr r5, r3 /* 8031E418 0031A078 7F E6 FB 78 */ mr r6, r31 /* 8031E41C 0031A07C 38 60 00 01 */ li r3, 1 /* 8031E420 0031A080 38 84 6C 2C */ addi r4, r4, lbl_80446C2C@l /* 8031E424 0031A084 4C C6 31 82 */ crclr 6 /* 8031E428 0031A088 4B FF E7 0D */ bl DWC_Printf /* 8031E42C 0031A08C 80 01 00 14 */ lwz r0, 0x14(r1) /* 8031E430 0031A090 83 E1 00 0C */ lwz r31, 0xc(r1) /* 8031E434 0031A094 83 C1 00 08 */ lwz r30, 8(r1) /* 8031E438 0031A098 7C 08 03 A6 */ mtlr r0 /* 8031E43C 0031A09C 38 21 00 10 */ addi r1, r1, 0x10 /* 8031E440 0031A0A0 4E 80 00 20 */ blr cn_received: /* 8031E444 0031A0A4 81 0D B0 38 */ lwz r8, lbl_806402F8-_SDA_BASE_(r13) /* 8031E448 0031A0A8 38 E0 00 00 */ li r7, 0 /* 8031E44C 0031A0AC 80 08 00 00 */ lwz r0, 0(r8) /* 8031E450 0031A0B0 2C 00 00 07 */ cmpwi r0, 7 /* 8031E454 0031A0B4 41 82 01 30 */ beq lbl_8031E584 /* 8031E458 0031A0B8 40 80 00 1C */ bge lbl_8031E474 /* 8031E45C 0031A0BC 2C 00 00 04 */ cmpwi r0, 4 /* 8031E460 0031A0C0 41 82 00 C0 */ beq lbl_8031E520 /* 8031E464 0031A0C4 4C 80 00 20 */ bgelr /* 8031E468 0031A0C8 2C 00 00 03 */ cmpwi r0, 3 /* 8031E46C 0031A0CC 40 80 00 5C */ bge lbl_8031E4C8 /* 8031E470 0031A0D0 4E 80 00 20 */ blr lbl_8031E474: /* 8031E474 0031A0D4 2C 00 00 09 */ cmpwi r0, 9 /* 8031E478 0031A0D8 4C 80 00 20 */ bgelr /* 8031E47C 0031A0DC 81 2D B0 3C */ lwz r9, lbl_806402FC-_SDA_BASE_(r13) /* 8031E480 0031A0E0 38 00 00 10 */ li r0, 0x10 /* 8031E484 0031A0E4 38 C0 00 00 */ li r6, 0 /* 8031E488 0031A0E8 7D 27 4B 78 */ mr r7, r9 /* 8031E48C 0031A0EC 7C 09 03 A6 */ mtctr r0 lbl_8031E490: /* 8031E490 0031A0F0 80 07 00 14 */ lwz r0, 0x14(r7) /* 8031E494 0031A0F4 7C 03 00 40 */ cmplw r3, r0 /* 8031E498 0031A0F8 40 82 00 14 */ bne lbl_8031E4AC /* 8031E49C 0031A0FC 54 C0 18 38 */ slwi r0, r6, 3 /* 8031E4A0 0031A100 7C 69 02 14 */ add r3, r9, r0 /* 8031E4A4 0031A104 80 63 00 18 */ lwz r3, 0x18(r3) /* 8031E4A8 0031A108 48 00 00 14 */ b lbl_8031E4BC lbl_8031E4AC: /* 8031E4AC 0031A10C 38 E7 00 08 */ addi r7, r7, 8 /* 8031E4B0 0031A110 38 C6 00 01 */ addi r6, r6, 1 /* 8031E4B4 0031A114 42 00 FF DC */ bdnz lbl_8031E490 /* 8031E4B8 0031A118 38 60 FF FF */ li r3, -1 lbl_8031E4BC: /* 8031E4BC 0031A11C 81 88 02 00 */ lwz r12, 0x200(r8) /* 8031E4C0 0031A120 7D 89 03 A6 */ mtctr r12 /* 8031E4C4 0031A124 4E 80 04 20 */ bctr lbl_8031E4C8: /* 8031E4C8 0031A128 38 C0 00 00 */ li r6, 0 /* 8031E4CC 0031A12C 48 00 00 44 */ b lbl_8031E510 lbl_8031E4D0: /* 8031E4D0 0031A130 80 0D B0 38 */ lwz r0, lbl_806402F8-_SDA_BASE_(r13) /* 8031E4D4 0031A134 7C 60 32 14 */ add r3, r0, r6 /* 8031E4D8 0031A138 90 A3 01 7C */ stw r5, 0x17c(r3) /* 8031E4DC 0031A13C 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E4E0 0031A140 80 03 01 70 */ lwz r0, 0x170(r3) /* 8031E4E4 0031A144 7C 05 00 40 */ cmplw r5, r0 /* 8031E4E8 0031A148 40 82 00 0C */ bne lbl_8031E4F4 /* 8031E4EC 0031A14C 90 E3 01 74 */ stw r7, 0x174(r3) /* 8031E4F0 0031A150 48 00 00 14 */ b lbl_8031E504 lbl_8031E4F4: /* 8031E4F4 0031A154 80 AD B0 3C */ lwz r5, lbl_806402FC-_SDA_BASE_(r13) /* 8031E4F8 0031A158 80 65 00 D4 */ lwz r3, 0xd4(r5) /* 8031E4FC 0031A15C 38 03 00 01 */ addi r0, r3, 1 /* 8031E500 0031A160 90 05 00 D4 */ stw r0, 0xd4(r5) lbl_8031E504: /* 8031E504 0031A164 38 C6 00 08 */ addi r6, r6, 8 /* 8031E508 0031A168 38 84 00 04 */ addi r4, r4, 4 /* 8031E50C 0031A16C 38 E7 00 01 */ addi r7, r7, 1 lbl_8031E510: /* 8031E510 0031A170 80 A4 00 04 */ lwz r5, 4(r4) /* 8031E514 0031A174 2C 05 00 00 */ cmpwi r5, 0 /* 8031E518 0031A178 40 82 FF B8 */ bne lbl_8031E4D0 /* 8031E51C 0031A17C 4E 80 00 20 */ blr lbl_8031E520: /* 8031E520 0031A180 80 CD B0 3C */ lwz r6, lbl_806402FC-_SDA_BASE_(r13) /* 8031E524 0031A184 38 00 00 10 */ li r0, 0x10 /* 8031E528 0031A188 38 80 00 00 */ li r4, 0 /* 8031E52C 0031A18C 7C C5 33 78 */ mr r5, r6 /* 8031E530 0031A190 7C 09 03 A6 */ mtctr r0 lbl_8031E534: /* 8031E534 0031A194 80 05 00 14 */ lwz r0, 0x14(r5) /* 8031E538 0031A198 7C 03 00 40 */ cmplw r3, r0 /* 8031E53C 0031A19C 40 82 00 14 */ bne lbl_8031E550 /* 8031E540 0031A1A0 54 80 18 38 */ slwi r0, r4, 3 /* 8031E544 0031A1A4 7C 66 02 14 */ add r3, r6, r0 /* 8031E548 0031A1A8 80 A3 00 18 */ lwz r5, 0x18(r3) /* 8031E54C 0031A1AC 48 00 00 14 */ b lbl_8031E560 lbl_8031E550: /* 8031E550 0031A1B0 38 A5 00 08 */ addi r5, r5, 8 /* 8031E554 0031A1B4 38 84 00 01 */ addi r4, r4, 1 /* 8031E558 0031A1B8 42 00 FF DC */ bdnz lbl_8031E534 /* 8031E55C 0031A1BC 38 A0 FF FF */ li r5, -1 lbl_8031E560: /* 8031E560 0031A1C0 54 A0 18 38 */ slwi r0, r5, 3 /* 8031E564 0031A1C4 3C 80 80 44 */ lis r4, lbl_80446C40@ha /* 8031E568 0031A1C8 7C 68 02 14 */ add r3, r8, r0 /* 8031E56C 0031A1CC 38 00 00 01 */ li r0, 1 /* 8031E570 0031A1D0 38 84 6C 40 */ addi r4, r4, lbl_80446C40@l /* 8031E574 0031A1D4 90 03 01 80 */ stw r0, 0x180(r3) /* 8031E578 0031A1D8 38 60 00 01 */ li r3, 1 /* 8031E57C 0031A1DC 4C C6 31 82 */ crclr 6 /* 8031E580 0031A1E0 4B FF E5 B4 */ b DWC_Printf lbl_8031E584: /* 8031E584 0031A1E4 38 00 00 08 */ li r0, 8 /* 8031E588 0031A1E8 38 60 00 00 */ li r3, 0 /* 8031E58C 0031A1EC 90 08 00 00 */ stw r0, 0(r8) /* 8031E590 0031A1F0 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031E594 0031A1F4 81 84 01 FC */ lwz r12, 0x1fc(r4) /* 8031E598 0031A1F8 7D 89 03 A6 */ mtctr r12 /* 8031E59C 0031A1FC 4E 80 04 20 */ bctr /* 8031E5A0 0031A200 4E 80 00 20 */ blr cn_closed: /* 8031E5A4 0031A204 3C 60 80 44 */ lis r3, lbl_80446C50@ha /* 8031E5A8 0031A208 7C 85 23 78 */ mr r5, r4 /* 8031E5AC 0031A20C 38 83 6C 50 */ addi r4, r3, lbl_80446C50@l /* 8031E5B0 0031A210 38 60 00 01 */ li r3, 1 /* 8031E5B4 0031A214 4C C6 31 82 */ crclr 6 /* 8031E5B8 0031A218 4B FF E5 7C */ b DWC_Printf cn_listen: /* 8031E5BC 0031A21C 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8031E5C0 0031A220 7C 08 02 A6 */ mflr r0 /* 8031E5C4 0031A224 90 01 00 24 */ stw r0, 0x24(r1) /* 8031E5C8 0031A228 39 61 00 20 */ addi r11, r1, 0x20 /* 8031E5CC 0031A22C 4B EA 8B 5D */ bl _savegpr_27 /* 8031E5D0 0031A230 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E5D4 0031A234 7C 9C 23 78 */ mr r28, r4 /* 8031E5D8 0031A238 7C BD 2B 78 */ mr r29, r5 /* 8031E5DC 0031A23C 7C DE 33 78 */ mr r30, r6 /* 8031E5E0 0031A240 80 03 00 00 */ lwz r0, 0(r3) /* 8031E5E4 0031A244 3B E0 00 00 */ li r31, 0 /* 8031E5E8 0031A248 2C 00 00 03 */ cmpwi r0, 3 /* 8031E5EC 0031A24C 41 82 02 08 */ beq lbl_8031E7F4 /* 8031E5F0 0031A250 40 80 00 14 */ bge lbl_8031E604 /* 8031E5F4 0031A254 2C 00 00 01 */ cmpwi r0, 1 /* 8031E5F8 0031A258 41 82 00 20 */ beq lbl_8031E618 /* 8031E5FC 0031A25C 40 80 00 24 */ bge lbl_8031E620 /* 8031E600 0031A260 48 00 02 A4 */ b lbl_8031E8A4 lbl_8031E604: /* 8031E604 0031A264 2C 00 00 08 */ cmpwi r0, 8 /* 8031E608 0031A268 40 80 02 9C */ bge lbl_8031E8A4 /* 8031E60C 0031A26C 2C 00 00 06 */ cmpwi r0, 6 /* 8031E610 0031A270 40 80 01 E4 */ bge lbl_8031E7F4 /* 8031E614 0031A274 48 00 02 90 */ b lbl_8031E8A4 lbl_8031E618: /* 8031E618 0031A278 38 00 00 02 */ li r0, 2 /* 8031E61C 0031A27C 90 03 00 00 */ stw r0, 0(r3) lbl_8031E620: /* 8031E620 0031A280 80 CD B0 3C */ lwz r6, lbl_806402FC-_SDA_BASE_(r13) /* 8031E624 0031A284 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E628 0031A288 80 A6 00 D4 */ lwz r5, 0xd4(r6) /* 8031E62C 0031A28C 80 03 01 78 */ lwz r0, 0x178(r3) /* 8031E630 0031A290 7C 05 00 00 */ cmpw r5, r0 /* 8031E634 0031A294 40 80 02 80 */ bge lbl_8031E8B4 /* 8031E638 0031A298 38 05 00 01 */ addi r0, r5, 1 /* 8031E63C 0031A29C 38 E0 00 00 */ li r7, 0 /* 8031E640 0031A2A0 90 06 00 D4 */ stw r0, 0xd4(r6) /* 8031E644 0031A2A4 81 0D B0 3C */ lwz r8, lbl_806402FC-_SDA_BASE_(r13) /* 8031E648 0031A2A8 7D 03 43 78 */ mr r3, r8 /* 8031E64C 0031A2AC 48 00 00 0C */ b lbl_8031E658 lbl_8031E650: /* 8031E650 0031A2B0 38 63 00 08 */ addi r3, r3, 8 /* 8031E654 0031A2B4 38 E7 00 01 */ addi r7, r7, 1 lbl_8031E658: /* 8031E658 0031A2B8 80 03 00 14 */ lwz r0, 0x14(r3) /* 8031E65C 0031A2BC 2C 00 00 00 */ cmpwi r0, 0 /* 8031E660 0031A2C0 41 82 00 0C */ beq lbl_8031E66C /* 8031E664 0031A2C4 2C 07 00 10 */ cmpwi r7, 0x10 /* 8031E668 0031A2C8 41 80 FF E8 */ blt lbl_8031E650 lbl_8031E66C: /* 8031E66C 0031A2CC 2C 07 00 10 */ cmpwi r7, 0x10 /* 8031E670 0031A2D0 40 80 00 30 */ bge lbl_8031E6A0 /* 8031E674 0031A2D4 54 A0 10 3A */ slwi r0, r5, 2 /* 8031E678 0031A2D8 54 E6 18 38 */ slwi r6, r7, 3 /* 8031E67C 0031A2DC 7C 68 02 14 */ add r3, r8, r0 /* 8031E680 0031A2E0 90 E3 00 94 */ stw r7, 0x94(r3) /* 8031E684 0031A2E4 80 0D B0 3C */ lwz r0, lbl_806402FC-_SDA_BASE_(r13) /* 8031E688 0031A2E8 7C 60 32 14 */ add r3, r0, r6 /* 8031E68C 0031A2EC 90 A3 00 18 */ stw r5, 0x18(r3) /* 8031E690 0031A2F0 80 0D B0 3C */ lwz r0, lbl_806402FC-_SDA_BASE_(r13) /* 8031E694 0031A2F4 7C 60 32 14 */ add r3, r0, r6 /* 8031E698 0031A2F8 38 63 00 14 */ addi r3, r3, 0x14 /* 8031E69C 0031A2FC 48 00 00 08 */ b lbl_8031E6A4 lbl_8031E6A0: /* 8031E6A0 0031A300 38 60 00 00 */ li r3, 0 lbl_8031E6A4: /* 8031E6A4 0031A304 90 83 00 00 */ stw r4, 0(r3) /* 8031E6A8 0031A308 7F 83 E3 78 */ mr r3, r28 /* 8031E6AC 0031A30C 80 8D B0 3C */ lwz r4, lbl_806402FC-_SDA_BASE_(r13) /* 8031E6B0 0031A310 38 84 00 04 */ addi r4, r4, 4 /* 8031E6B4 0031A314 48 02 B3 D9 */ bl gt2Accept /* 8031E6B8 0031A318 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031E6BC 0031A31C 3B E0 00 01 */ li r31, 1 /* 8031E6C0 0031A320 80 6D B0 3C */ lwz r3, lbl_806402FC-_SDA_BASE_(r13) /* 8031E6C4 0031A324 80 04 01 78 */ lwz r0, 0x178(r4) /* 8031E6C8 0031A328 80 63 00 D4 */ lwz r3, 0xd4(r3) /* 8031E6CC 0031A32C 7C 03 00 00 */ cmpw r3, r0 /* 8031E6D0 0031A330 40 82 01 E4 */ bne lbl_8031E8B4 /* 8031E6D4 0031A334 38 60 00 04 */ li r3, 4 /* 8031E6D8 0031A338 38 00 00 00 */ li r0, 0 /* 8031E6DC 0031A33C 90 64 00 00 */ stw r3, 0(r4) /* 8031E6E0 0031A340 38 80 00 00 */ li r4, 0 /* 8031E6E4 0031A344 38 A0 00 40 */ li r5, 0x40 /* 8031E6E8 0031A348 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E6EC 0031A34C 90 03 01 74 */ stw r0, 0x174(r3) /* 8031E6F0 0031A350 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E6F4 0031A354 90 03 01 2C */ stw r0, 0x12c(r3) /* 8031E6F8 0031A358 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E6FC 0031A35C 38 63 01 30 */ addi r3, r3, 0x130 /* 8031E700 0031A360 4B CE 5A 05 */ bl memset /* 8031E704 0031A364 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E708 0031A368 3B 60 00 01 */ li r27, 1 /* 8031E70C 0031A36C 3B 80 00 04 */ li r28, 4 /* 8031E710 0031A370 80 03 01 70 */ lwz r0, 0x170(r3) /* 8031E714 0031A374 90 03 01 30 */ stw r0, 0x130(r3) /* 8031E718 0031A378 48 00 00 44 */ b lbl_8031E75C lbl_8031E71C: /* 8031E71C 0031A37C 7C 64 E2 14 */ add r3, r4, r28 /* 8031E720 0031A380 80 03 00 94 */ lwz r0, 0x94(r3) /* 8031E724 0031A384 2C 00 FF FF */ cmpwi r0, -1 /* 8031E728 0031A388 40 82 00 0C */ bne lbl_8031E734 /* 8031E72C 0031A38C 38 60 00 00 */ li r3, 0 /* 8031E730 0031A390 48 00 00 10 */ b lbl_8031E740 lbl_8031E734: /* 8031E734 0031A394 54 00 18 38 */ slwi r0, r0, 3 /* 8031E738 0031A398 7C 64 02 14 */ add r3, r4, r0 /* 8031E73C 0031A39C 38 63 00 14 */ addi r3, r3, 0x14 lbl_8031E740: /* 8031E740 0031A3A0 80 63 00 00 */ lwz r3, 0(r3) /* 8031E744 0031A3A4 48 02 B6 75 */ bl func_80349DB8 /* 8031E748 0031A3A8 80 0D B0 38 */ lwz r0, lbl_806402F8-_SDA_BASE_(r13) /* 8031E74C 0031A3AC 3B 7B 00 01 */ addi r27, r27, 1 /* 8031E750 0031A3B0 7C 80 E2 14 */ add r4, r0, r28 /* 8031E754 0031A3B4 3B 9C 00 04 */ addi r28, r28, 4 /* 8031E758 0031A3B8 90 64 01 30 */ stw r3, 0x130(r4) lbl_8031E75C: /* 8031E75C 0031A3BC 80 8D B0 3C */ lwz r4, lbl_806402FC-_SDA_BASE_(r13) /* 8031E760 0031A3C0 80 04 00 D4 */ lwz r0, 0xd4(r4) /* 8031E764 0031A3C4 7C 1B 00 00 */ cmpw r27, r0 /* 8031E768 0031A3C8 41 80 FF B4 */ blt lbl_8031E71C /* 8031E76C 0031A3CC 3B 60 00 01 */ li r27, 1 /* 8031E770 0031A3D0 3B 80 00 04 */ li r28, 4 /* 8031E774 0031A3D4 48 00 00 6C */ b lbl_8031E7E0 lbl_8031E778: /* 8031E778 0031A3D8 7C 65 E2 14 */ add r3, r5, r28 /* 8031E77C 0031A3DC 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031E780 0031A3E0 80 03 00 94 */ lwz r0, 0x94(r3) /* 8031E784 0031A3E4 38 84 01 2C */ addi r4, r4, 0x12c /* 8031E788 0031A3E8 2C 00 FF FF */ cmpwi r0, -1 /* 8031E78C 0031A3EC 40 82 00 0C */ bne lbl_8031E798 /* 8031E790 0031A3F0 38 60 00 00 */ li r3, 0 /* 8031E794 0031A3F4 48 00 00 10 */ b lbl_8031E7A4 lbl_8031E798: /* 8031E798 0031A3F8 54 00 18 38 */ slwi r0, r0, 3 /* 8031E79C 0031A3FC 7C 65 02 14 */ add r3, r5, r0 /* 8031E7A0 0031A400 38 63 00 14 */ addi r3, r3, 0x14 lbl_8031E7A4: /* 8031E7A4 0031A404 80 63 00 00 */ lwz r3, 0(r3) /* 8031E7A8 0031A408 38 A0 00 44 */ li r5, 0x44 /* 8031E7AC 0031A40C 38 C0 00 01 */ li r6, 1 /* 8031E7B0 0031A410 48 02 B4 8D */ bl gt2Send /* 8031E7B4 0031A414 80 6D B0 38 */ lwz r3, lbl_806402F8-_SDA_BASE_(r13) /* 8031E7B8 0031A418 80 03 00 00 */ lwz r0, 0(r3) /* 8031E7BC 0031A41C 2C 00 00 08 */ cmpwi r0, 8 /* 8031E7C0 0031A420 40 82 00 18 */ bne lbl_8031E7D8 /* 8031E7C4 0031A424 81 83 02 04 */ lwz r12, 0x204(r3) /* 8031E7C8 0031A428 7F 64 DB 78 */ mr r4, r27 /* 8031E7CC 0031A42C 38 60 00 44 */ li r3, 0x44 /* 8031E7D0 0031A430 7D 89 03 A6 */ mtctr r12 /* 8031E7D4 0031A434 4E 80 04 21 */ bctrl lbl_8031E7D8: /* 8031E7D8 0031A438 3B 9C 00 04 */ addi r28, r28, 4 /* 8031E7DC 0031A43C 3B 7B 00 01 */ addi r27, r27, 1 lbl_8031E7E0: /* 8031E7E0 0031A440 80 AD B0 3C */ lwz r5, lbl_806402FC-_SDA_BASE_(r13) /* 8031E7E4 0031A444 80 05 00 D4 */ lwz r0, 0xd4(r5) /* 8031E7E8 0031A448 7C 1B 00 00 */ cmpw r27, r0 /* 8031E7EC 0031A44C 41 80 FF 8C */ blt lbl_8031E778 /* 8031E7F0 0031A450 48 00 00 C4 */ b lbl_8031E8B4 lbl_8031E7F4: /* 8031E7F4 0031A454 7F 83 E3 78 */ mr r3, r28 /* 8031E7F8 0031A458 3B 60 00 00 */ li r27, 0 /* 8031E7FC 0031A45C 48 02 B5 BD */ bl func_80349DB8 /* 8031E800 0031A460 80 8D B0 38 */ lwz r4, lbl_806402F8-_SDA_BASE_(r13) /* 8031E804 0031A464 48 00 00 14 */ b lbl_8031E818 lbl_8031E808: /* 8031E808 0031A468 7C 03 00 40 */ cmplw r3, r0 /* 8031E80C 0031A46C 41 82 00 18 */ beq lbl_8031E824 /* 8031E810 0031A470 38 84 00 08 */ addi r4, r4, 8 /* 8031E814 0031A474 3B 7B 00 01 */ addi r27, r27, 1 lbl_8031E818: /* 8031E818 0031A478 80 04 01 7C */ lwz r0, 0x17c(r4) /* 8031E81C 0031A47C 2C 00 00 00 */ cmpwi r0, 0 /* 8031E820 0031A480 40 82 FF E8 */ bne lbl_8031E808 lbl_8031E824: /* 8031E824 0031A484 80 CD B0 3C */ lwz r6, lbl_806402FC-_SDA_BASE_(r13) /* 8031E828 0031A488 38 80 00 00 */ li r4, 0 /* 8031E82C 0031A48C 7C C3 33 78 */ mr r3, r6 /* 8031E830 0031A490 48 00 00 0C */ b lbl_8031E83C lbl_8031E834: /* 8031E834 0031A494 38 63 00 08 */ addi r3, r3, 8 /* 8031E838 0031A498 38 84 00 01 */ addi r4, r4, 1 lbl_8031E83C: /* 8031E83C 0031A49C 80 03 00 14 */ lwz r0, 0x14(r3) /* 8031E840 0031A4A0 2C 00 00 00 */ cmpwi r0, 0 /* 8031E844 0031A4A4 41 82 00 0C */ beq lbl_8031E850 /* 8031E848 0031A4A8 2C 04 00 10 */ cmpwi r4, 0x10 /* 8031E84C 0031A4AC 41 80 FF E8 */ blt lbl_8031E834 lbl_8031E850: /* 8031E850 0031A4B0 2C 04 00 10 */ cmpwi r4, 0x10 /* 8031E854 0031A4B4 40 80 00 30 */ bge lbl_8031E884 /* 8031E858 0031A4B8 57 60 10 3A */ slwi r0, r27, 2 /* 8031E85C 0031A4BC 54 85 18 38 */ slwi r5, r4, 3 /* 8031E860 0031A4C0 7C 66 02 14 */ add r3, r6, r0 /* 8031E864 0031A4C4 90 83 00 94 */ stw r4, 0x94(r3) /* 8031E868 0031A4C8 80 0D B0 3C */ lwz r0, lbl_806402FC-_SDA_BASE_(r13) /* 8031E86C 0031A4CC 7C 60 2A 14 */ add r3, r0, r5 /* 8031E870 0031A4D0 93 63 00 18 */ stw r27, 0x18(r3) /* 8031E874 0031A4D4 80 0D B0 3C */ lwz r0, lbl_806402FC-_SDA_BASE_(r13) /* 8031E878 0031A4D8 7C 60 2A 14 */ add r3, r0, r5 /* 8031E87C 0031A4DC 38 63 00 14 */ addi r3, r3, 0x14 /* 8031E880 0031A4E0 48 00 00 08 */ b lbl_8031E888 lbl_8031E884: /* 8031E884 0031A4E4 38 60 00 00 */ li r3, 0 lbl_8031E888: /* 8031E888 0031A4E8 93 83 00 00 */ stw r28, 0(r3) /* 8031E88C 0031A4EC 7F 83 E3 78 */ mr r3, r28 /* 8031E890 0031A4F0 80 8D B0 3C */ lwz r4, lbl_806402FC-_SDA_BASE_(r13) /* 8031E894 0031A4F4 38 84 00 04 */ addi r4, r4, 4 /* 8031E898 0031A4F8 48 02 B1 F5 */ bl gt2Accept /* 8031E89C 0031A4FC 3B E0 00 01 */ li r31, 1 /* 8031E8A0 0031A500 48 00 00 14 */ b lbl_8031E8B4 lbl_8031E8A4: /* 8031E8A4 0031A504 7F 83 E3 78 */ mr r3, r28 /* 8031E8A8 0031A508 38 80 00 00 */ li r4, 0 /* 8031E8AC 0031A50C 38 A0 00 00 */ li r5, 0 /* 8031E8B0 0031A510 48 02 B1 E1 */ bl gt2Reject lbl_8031E8B4: /* 8031E8B4 0031A514 2C 1F 00 00 */ cmpwi r31, 0 /* 8031E8B8 0031A518 3B 8D 8D 60 */ addi r28, r13, lbl_8063E020-_SDA_BASE_ /* 8031E8BC 0031A51C 41 82 00 08 */ beq lbl_8031E8C4 /* 8031E8C0 0031A520 3B 8D 8D 58 */ addi r28, r13, lbl_8063E018-_SDA_BASE_ lbl_8031E8C4: /* 8031E8C4 0031A524 7F A3 EB 78 */ mr r3, r29 /* 8031E8C8 0031A528 7F C4 F3 78 */ mr r4, r30 /* 8031E8CC 0031A52C 38 A0 00 00 */ li r5, 0 /* 8031E8D0 0031A530 48 02 F2 7D */ bl gt2AddressToString /* 8031E8D4 0031A534 80 ED B0 38 */ lwz r7, lbl_806402F8-_SDA_BASE_(r13) /* 8031E8D8 0031A538 3C 80 80 44 */ lis r4, lbl_80446C60@ha /* 8031E8DC 0031A53C 7C 66 1B 78 */ mr r6, r3 /* 8031E8E0 0031A540 7F 85 E3 78 */ mr r5, r28 /* 8031E8E4 0031A544 80 E7 00 00 */ lwz r7, 0(r7) /* 8031E8E8 0031A548 38 84 6C 60 */ addi r4, r4, lbl_80446C60@l /* 8031E8EC 0031A54C 38 60 00 01 */ li r3, 1 /* 8031E8F0 0031A550 4C C6 31 82 */ crclr 6 /* 8031E8F4 0031A554 4B FF E2 41 */ bl DWC_Printf /* 8031E8F8 0031A558 39 61 00 20 */ addi r11, r1, 0x20 /* 8031E8FC 0031A55C 4B EA 88 79 */ bl _restgpr_27 /* 8031E900 0031A560 80 01 00 24 */ lwz r0, 0x24(r1) /* 8031E904 0031A564 7C 08 03 A6 */ mtlr r0 /* 8031E908 0031A568 38 21 00 20 */ addi r1, r1, 0x20 /* 8031E90C 0031A56C 4E 80 00 20 */ blr .global ss_qsort ss_qsort: /* 8031E910 0031A570 94 21 FF D0 */ stwu r1, -0x30(r1) /* 8031E914 0031A574 7C 08 02 A6 */ mflr r0 /* 8031E918 0031A578 90 01 00 34 */ stw r0, 0x34(r1) /* 8031E91C 0031A57C 39 61 00 30 */ addi r11, r1, 0x30 /* 8031E920 0031A580 4B EA 88 01 */ bl _savegpr_25 /* 8031E924 0031A584 7C 04 28 00 */ cmpw r4, r5 /* 8031E928 0031A588 7C 79 1B 78 */ mr r25, r3 /* 8031E92C 0031A58C 7C BA 2B 78 */ mr r26, r5 /* 8031E930 0031A590 40 80 04 A4 */ bge lbl_8031EDD4 /* 8031E934 0031A594 7C E4 2A 14 */ add r7, r4, r5 /* 8031E938 0031A598 54 80 10 3A */ slwi r0, r4, 2 /* 8031E93C 0031A59C 54 E6 0F FE */ srwi r6, r7, 0x1f /* 8031E940 0031A5A0 39 84 00 01 */ addi r12, r4, 1 /* 8031E944 0031A5A4 7C E6 3A 14 */ add r7, r6, r7 /* 8031E948 0031A5A8 7D 63 00 2E */ lwzx r11, r3, r0 /* 8031E94C 0031A5AC 54 EA 08 3A */ rlwinm r10, r7, 1, 0, 0x1d /* 8031E950 0031A5B0 38 C5 00 01 */ addi r6, r5, 1 /* 8031E954 0031A5B4 7D 23 50 2E */ lwzx r9, r3, r10 /* 8031E958 0031A5B8 55 88 10 3A */ slwi r8, r12, 2 /* 8031E95C 0031A5BC 7C CC 30 50 */ subf r6, r12, r6 /* 8031E960 0031A5C0 7C 9B 23 78 */ mr r27, r4 /* 8031E964 0031A5C4 7D 23 01 2E */ stwx r9, r3, r0 /* 8031E968 0031A5C8 7C 07 03 78 */ mr r7, r0 /* 8031E96C 0031A5CC 7D 03 42 14 */ add r8, r3, r8 /* 8031E970 0031A5D0 7D 63 51 2E */ stwx r11, r3, r10 /* 8031E974 0031A5D4 7C C9 03 A6 */ mtctr r6 /* 8031E978 0031A5D8 7C 0C 28 00 */ cmpw r12, r5 /* 8031E97C 0031A5DC 41 81 00 30 */ bgt lbl_8031E9AC lbl_8031E980: /* 8031E980 0031A5E0 80 C8 00 00 */ lwz r6, 0(r8) /* 8031E984 0031A5E4 7C A3 00 2E */ lwzx r5, r3, r0 /* 8031E988 0031A5E8 7C 06 28 40 */ cmplw r6, r5 /* 8031E98C 0031A5EC 40 80 00 18 */ bge lbl_8031E9A4 /* 8031E990 0031A5F0 38 E7 00 04 */ addi r7, r7, 4 /* 8031E994 0031A5F4 3B 7B 00 01 */ addi r27, r27, 1 /* 8031E998 0031A5F8 7C A3 38 2E */ lwzx r5, r3, r7 /* 8031E99C 0031A5FC 90 A8 00 00 */ stw r5, 0(r8) /* 8031E9A0 0031A600 7C C3 39 2E */ stwx r6, r3, r7 lbl_8031E9A4: /* 8031E9A4 0031A604 39 08 00 04 */ addi r8, r8, 4 /* 8031E9A8 0031A608 42 00 FF D8 */ bdnz lbl_8031E980 lbl_8031E9AC: /* 8031E9AC 0031A60C 57 7C 10 3A */ slwi r28, r27, 2 /* 8031E9B0 0031A610 39 3B FF FF */ addi r9, r27, -1 /* 8031E9B4 0031A614 7C C3 00 2E */ lwzx r6, r3, r0 /* 8031E9B8 0031A618 7C 04 48 00 */ cmpw r4, r9 /* 8031E9BC 0031A61C 7C A3 E0 2E */ lwzx r5, r3, r28 /* 8031E9C0 0031A620 7C A3 01 2E */ stwx r5, r3, r0 /* 8031E9C4 0031A624 7C C3 E1 2E */ stwx r6, r3, r28 /* 8031E9C8 0031A628 40 80 02 00 */ bge lbl_8031EBC8 /* 8031E9CC 0031A62C 7C A4 DA 14 */ add r5, r4, r27 /* 8031E9D0 0031A630 39 44 00 01 */ addi r10, r4, 1 /* 8031E9D4 0031A634 39 05 FF FF */ addi r8, r5, -1 /* 8031E9D8 0031A638 7D 63 00 2E */ lwzx r11, r3, r0 /* 8031E9DC 0031A63C 55 07 0F FE */ srwi r7, r8, 0x1f /* 8031E9E0 0031A640 38 A9 00 01 */ addi r5, r9, 1 /* 8031E9E4 0031A644 7C E7 42 14 */ add r7, r7, r8 /* 8031E9E8 0031A648 55 46 10 3A */ slwi r6, r10, 2 /* 8031E9EC 0031A64C 54 E8 08 3A */ rlwinm r8, r7, 1, 0, 0x1d /* 8031E9F0 0031A650 7C AA 28 50 */ subf r5, r10, r5 /* 8031E9F4 0031A654 7C E3 40 2E */ lwzx r7, r3, r8 /* 8031E9F8 0031A658 7D 83 32 14 */ add r12, r3, r6 /* 8031E9FC 0031A65C 7C 9F 23 78 */ mr r31, r4 /* 8031EA00 0031A660 54 86 10 3A */ slwi r6, r4, 2 /* 8031EA04 0031A664 7C E3 01 2E */ stwx r7, r3, r0 /* 8031EA08 0031A668 7D 63 41 2E */ stwx r11, r3, r8 /* 8031EA0C 0031A66C 7C A9 03 A6 */ mtctr r5 /* 8031EA10 0031A670 7C 0A 48 00 */ cmpw r10, r9 /* 8031EA14 0031A674 41 81 00 30 */ bgt lbl_8031EA44 lbl_8031EA18: /* 8031EA18 0031A678 80 EC 00 00 */ lwz r7, 0(r12) /* 8031EA1C 0031A67C 7C A3 00 2E */ lwzx r5, r3, r0 /* 8031EA20 0031A680 7C 07 28 40 */ cmplw r7, r5 /* 8031EA24 0031A684 40 80 00 18 */ bge lbl_8031EA3C /* 8031EA28 0031A688 38 C6 00 04 */ addi r6, r6, 4 /* 8031EA2C 0031A68C 3B FF 00 01 */ addi r31, r31, 1 /* 8031EA30 0031A690 7C A3 30 2E */ lwzx r5, r3, r6 /* 8031EA34 0031A694 90 AC 00 00 */ stw r5, 0(r12) /* 8031EA38 0031A698 7C E3 31 2E */ stwx r7, r3, r6 lbl_8031EA3C: /* 8031EA3C 0031A69C 39 8C 00 04 */ addi r12, r12, 4 /* 8031EA40 0031A6A0 42 00 FF D8 */ bdnz lbl_8031EA18 lbl_8031EA44: /* 8031EA44 0031A6A4 57 FD 10 3A */ slwi r29, r31, 2 /* 8031EA48 0031A6A8 39 3F FF FF */ addi r9, r31, -1 /* 8031EA4C 0031A6AC 7C C3 00 2E */ lwzx r6, r3, r0 /* 8031EA50 0031A6B0 7C 04 48 00 */ cmpw r4, r9 /* 8031EA54 0031A6B4 7C A3 E8 2E */ lwzx r5, r3, r29 /* 8031EA58 0031A6B8 7C A3 01 2E */ stwx r5, r3, r0 /* 8031EA5C 0031A6BC 7C C3 E9 2E */ stwx r6, r3, r29 /* 8031EA60 0031A6C0 40 80 00 AC */ bge lbl_8031EB0C /* 8031EA64 0031A6C4 7C A4 FA 14 */ add r5, r4, r31 /* 8031EA68 0031A6C8 39 44 00 01 */ addi r10, r4, 1 /* 8031EA6C 0031A6CC 39 05 FF FF */ addi r8, r5, -1 /* 8031EA70 0031A6D0 7D 63 00 2E */ lwzx r11, r3, r0 /* 8031EA74 0031A6D4 55 07 0F FE */ srwi r7, r8, 0x1f /* 8031EA78 0031A6D8 38 A9 00 01 */ addi r5, r9, 1 /* 8031EA7C 0031A6DC 7C E7 42 14 */ add r7, r7, r8 /* 8031EA80 0031A6E0 55 46 10 3A */ slwi r6, r10, 2 /* 8031EA84 0031A6E4 54 E8 08 3A */ rlwinm r8, r7, 1, 0, 0x1d /* 8031EA88 0031A6E8 7C AA 28 50 */ subf r5, r10, r5 /* 8031EA8C 0031A6EC 7C E3 40 2E */ lwzx r7, r3, r8 /* 8031EA90 0031A6F0 7D 83 32 14 */ add r12, r3, r6 /* 8031EA94 0031A6F4 7C 9E 23 78 */ mr r30, r4 /* 8031EA98 0031A6F8 54 86 10 3A */ slwi r6, r4, 2 /* 8031EA9C 0031A6FC 7C E3 01 2E */ stwx r7, r3, r0 /* 8031EAA0 0031A700 7D 63 41 2E */ stwx r11, r3, r8 /* 8031EAA4 0031A704 7C A9 03 A6 */ mtctr r5 /* 8031EAA8 0031A708 7C 0A 48 00 */ cmpw r10, r9 /* 8031EAAC 0031A70C 41 81 00 30 */ bgt lbl_8031EADC lbl_8031EAB0: /* 8031EAB0 0031A710 80 EC 00 00 */ lwz r7, 0(r12) /* 8031EAB4 0031A714 7C A3 00 2E */ lwzx r5, r3, r0 /* 8031EAB8 0031A718 7C 07 28 40 */ cmplw r7, r5 /* 8031EABC 0031A71C 40 80 00 18 */ bge lbl_8031EAD4 /* 8031EAC0 0031A720 38 C6 00 04 */ addi r6, r6, 4 /* 8031EAC4 0031A724 3B DE 00 01 */ addi r30, r30, 1 /* 8031EAC8 0031A728 7C A3 30 2E */ lwzx r5, r3, r6 /* 8031EACC 0031A72C 90 AC 00 00 */ stw r5, 0(r12) /* 8031EAD0 0031A730 7C E3 31 2E */ stwx r7, r3, r6 lbl_8031EAD4: /* 8031EAD4 0031A734 39 8C 00 04 */ addi r12, r12, 4 /* 8031EAD8 0031A738 42 00 FF D8 */ bdnz lbl_8031EAB0 lbl_8031EADC: /* 8031EADC 0031A73C 57 C7 10 3A */ slwi r7, r30, 2 /* 8031EAE0 0031A740 7D 03 00 2E */ lwzx r8, r3, r0 /* 8031EAE4 0031A744 7C C3 38 2E */ lwzx r6, r3, r7 /* 8031EAE8 0031A748 38 BE FF FF */ addi r5, r30, -1 /* 8031EAEC 0031A74C 7C C3 01 2E */ stwx r6, r3, r0 /* 8031EAF0 0031A750 7D 03 39 2E */ stwx r8, r3, r7 /* 8031EAF4 0031A754 7F 23 CB 78 */ mr r3, r25 /* 8031EAF8 0031A758 4B FF FE 19 */ bl ss_qsort /* 8031EAFC 0031A75C 7F 23 CB 78 */ mr r3, r25 /* 8031EB00 0031A760 38 9E 00 01 */ addi r4, r30, 1 /* 8031EB04 0031A764 38 BF FF FF */ addi r5, r31, -1 /* 8031EB08 0031A768 4B FF FE 09 */ bl ss_qsort lbl_8031EB0C: /* 8031EB0C 0031A76C 3B DF 00 01 */ addi r30, r31, 1 /* 8031EB10 0031A770 38 FB FF FF */ addi r7, r27, -1 /* 8031EB14 0031A774 7C 1E 38 00 */ cmpw r30, r7 /* 8031EB18 0031A778 40 80 00 B0 */ bge lbl_8031EBC8 /* 8031EB1C 0031A77C 7C 7B FA 14 */ add r3, r27, r31 /* 8031EB20 0031A780 7C D9 EA 14 */ add r6, r25, r29 /* 8031EB24 0031A784 54 60 0F FE */ srwi r0, r3, 0x1f /* 8031EB28 0031A788 81 26 00 04 */ lwz r9, 4(r6) /* 8031EB2C 0031A78C 7C 60 1A 14 */ add r3, r0, r3 /* 8031EB30 0031A790 39 1F 00 02 */ addi r8, r31, 2 /* 8031EB34 0031A794 54 65 08 3A */ rlwinm r5, r3, 1, 0, 0x1d /* 8031EB38 0031A798 38 07 00 01 */ addi r0, r7, 1 /* 8031EB3C 0031A79C 7C 99 28 2E */ lwzx r4, r25, r5 /* 8031EB40 0031A7A0 55 03 10 3A */ slwi r3, r8, 2 /* 8031EB44 0031A7A4 7D 59 1A 14 */ add r10, r25, r3 /* 8031EB48 0031A7A8 7C 08 00 50 */ subf r0, r8, r0 /* 8031EB4C 0031A7AC 90 86 00 04 */ stw r4, 4(r6) /* 8031EB50 0031A7B0 57 C3 10 3A */ slwi r3, r30, 2 /* 8031EB54 0031A7B4 7D 39 29 2E */ stwx r9, r25, r5 /* 8031EB58 0031A7B8 7C 09 03 A6 */ mtctr r0 /* 8031EB5C 0031A7BC 7C 08 38 00 */ cmpw r8, r7 /* 8031EB60 0031A7C0 41 81 00 30 */ bgt lbl_8031EB90 lbl_8031EB64: /* 8031EB64 0031A7C4 80 8A 00 00 */ lwz r4, 0(r10) /* 8031EB68 0031A7C8 80 06 00 04 */ lwz r0, 4(r6) /* 8031EB6C 0031A7CC 7C 04 00 40 */ cmplw r4, r0 /* 8031EB70 0031A7D0 40 80 00 18 */ bge lbl_8031EB88 /* 8031EB74 0031A7D4 38 63 00 04 */ addi r3, r3, 4 /* 8031EB78 0031A7D8 3B DE 00 01 */ addi r30, r30, 1 /* 8031EB7C 0031A7DC 7C 19 18 2E */ lwzx r0, r25, r3 /* 8031EB80 0031A7E0 90 0A 00 00 */ stw r0, 0(r10) /* 8031EB84 0031A7E4 7C 99 19 2E */ stwx r4, r25, r3 lbl_8031EB88: /* 8031EB88 0031A7E8 39 4A 00 04 */ addi r10, r10, 4 /* 8031EB8C 0031A7EC 42 00 FF D8 */ bdnz lbl_8031EB64 lbl_8031EB90: /* 8031EB90 0031A7F0 7C F9 EA 14 */ add r7, r25, r29 /* 8031EB94 0031A7F4 57 C6 10 3A */ slwi r6, r30, 2 /* 8031EB98 0031A7F8 81 07 00 04 */ lwz r8, 4(r7) /* 8031EB9C 0031A7FC 7F 23 CB 78 */ mr r3, r25 /* 8031EBA0 0031A800 7C 19 30 2E */ lwzx r0, r25, r6 /* 8031EBA4 0031A804 38 9F 00 01 */ addi r4, r31, 1 /* 8031EBA8 0031A808 38 BE FF FF */ addi r5, r30, -1 /* 8031EBAC 0031A80C 90 07 00 04 */ stw r0, 4(r7) /* 8031EBB0 0031A810 7D 19 31 2E */ stwx r8, r25, r6 /* 8031EBB4 0031A814 4B FF FD 5D */ bl ss_qsort /* 8031EBB8 0031A818 7F 23 CB 78 */ mr r3, r25 /* 8031EBBC 0031A81C 38 9E 00 01 */ addi r4, r30, 1 /* 8031EBC0 0031A820 38 BB FF FF */ addi r5, r27, -1 /* 8031EBC4 0031A824 4B FF FD 4D */ bl ss_qsort lbl_8031EBC8: /* 8031EBC8 0031A828 3B FB 00 01 */ addi r31, r27, 1 /* 8031EBCC 0031A82C 7C 1F D0 00 */ cmpw r31, r26 /* 8031EBD0 0031A830 40 80 02 04 */ bge lbl_8031EDD4 /* 8031EBD4 0031A834 7C 7B D2 14 */ add r3, r27, r26 /* 8031EBD8 0031A838 7C D9 E2 14 */ add r6, r25, r28 /* 8031EBDC 0031A83C 38 83 00 01 */ addi r4, r3, 1 /* 8031EBE0 0031A840 81 06 00 04 */ lwz r8, 4(r6) /* 8031EBE4 0031A844 54 83 0F FE */ srwi r3, r4, 0x1f /* 8031EBE8 0031A848 38 FB 00 02 */ addi r7, r27, 2 /* 8031EBEC 0031A84C 7C 83 22 14 */ add r4, r3, r4 /* 8031EBF0 0031A850 38 1A 00 01 */ addi r0, r26, 1 /* 8031EBF4 0031A854 54 85 08 3A */ rlwinm r5, r4, 1, 0, 0x1d /* 8031EBF8 0031A858 54 E3 10 3A */ slwi r3, r7, 2 /* 8031EBFC 0031A85C 7C 99 28 2E */ lwzx r4, r25, r5 /* 8031EC00 0031A860 7D 39 1A 14 */ add r9, r25, r3 /* 8031EC04 0031A864 7C 07 00 50 */ subf r0, r7, r0 /* 8031EC08 0031A868 57 E3 10 3A */ slwi r3, r31, 2 /* 8031EC0C 0031A86C 90 86 00 04 */ stw r4, 4(r6) /* 8031EC10 0031A870 7D 19 29 2E */ stwx r8, r25, r5 /* 8031EC14 0031A874 7C 09 03 A6 */ mtctr r0 /* 8031EC18 0031A878 7C 07 D0 00 */ cmpw r7, r26 /* 8031EC1C 0031A87C 41 81 00 30 */ bgt lbl_8031EC4C lbl_8031EC20: /* 8031EC20 0031A880 80 89 00 00 */ lwz r4, 0(r9) /* 8031EC24 0031A884 80 06 00 04 */ lwz r0, 4(r6) /* 8031EC28 0031A888 7C 04 00 40 */ cmplw r4, r0 /* 8031EC2C 0031A88C 40 80 00 18 */ bge lbl_8031EC44 /* 8031EC30 0031A890 38 63 00 04 */ addi r3, r3, 4 /* 8031EC34 0031A894 3B FF 00 01 */ addi r31, r31, 1 /* 8031EC38 0031A898 7C 19 18 2E */ lwzx r0, r25, r3 /* 8031EC3C 0031A89C 90 09 00 00 */ stw r0, 0(r9) /* 8031EC40 0031A8A0 7C 99 19 2E */ stwx r4, r25, r3 lbl_8031EC44: /* 8031EC44 0031A8A4 39 29 00 04 */ addi r9, r9, 4 /* 8031EC48 0031A8A8 42 00 FF D8 */ bdnz lbl_8031EC20 lbl_8031EC4C: /* 8031EC4C 0031A8AC 7C F9 E2 14 */ add r7, r25, r28 /* 8031EC50 0031A8B0 57 FC 10 3A */ slwi r28, r31, 2 /* 8031EC54 0031A8B4 80 67 00 04 */ lwz r3, 4(r7) /* 8031EC58 0031A8B8 3B DB 00 01 */ addi r30, r27, 1 /* 8031EC5C 0031A8BC 7C 19 E0 2E */ lwzx r0, r25, r28 /* 8031EC60 0031A8C0 38 DF FF FF */ addi r6, r31, -1 /* 8031EC64 0031A8C4 7C 1E 30 00 */ cmpw r30, r6 /* 8031EC68 0031A8C8 90 07 00 04 */ stw r0, 4(r7) /* 8031EC6C 0031A8CC 7C 79 E1 2E */ stwx r3, r25, r28 /* 8031EC70 0031A8D0 40 80 00 A8 */ bge lbl_8031ED18 /* 8031EC74 0031A8D4 7C 9F DA 14 */ add r4, r31, r27 /* 8031EC78 0031A8D8 81 27 00 04 */ lwz r9, 4(r7) /* 8031EC7C 0031A8DC 54 83 0F FE */ srwi r3, r4, 0x1f /* 8031EC80 0031A8E0 39 1B 00 02 */ addi r8, r27, 2 /* 8031EC84 0031A8E4 7C 83 22 14 */ add r4, r3, r4 /* 8031EC88 0031A8E8 38 06 00 01 */ addi r0, r6, 1 /* 8031EC8C 0031A8EC 54 85 08 3A */ rlwinm r5, r4, 1, 0, 0x1d /* 8031EC90 0031A8F0 55 03 10 3A */ slwi r3, r8, 2 /* 8031EC94 0031A8F4 7C 99 28 2E */ lwzx r4, r25, r5 /* 8031EC98 0031A8F8 7C 08 00 50 */ subf r0, r8, r0 /* 8031EC9C 0031A8FC 90 87 00 04 */ stw r4, 4(r7) /* 8031ECA0 0031A900 7C 99 1A 14 */ add r4, r25, r3 /* 8031ECA4 0031A904 57 C3 10 3A */ slwi r3, r30, 2 /* 8031ECA8 0031A908 7D 39 29 2E */ stwx r9, r25, r5 /* 8031ECAC 0031A90C 7C 09 03 A6 */ mtctr r0 /* 8031ECB0 0031A910 7C 08 30 00 */ cmpw r8, r6 /* 8031ECB4 0031A914 41 81 00 30 */ bgt lbl_8031ECE4 lbl_8031ECB8: /* 8031ECB8 0031A918 80 A4 00 00 */ lwz r5, 0(r4) /* 8031ECBC 0031A91C 80 07 00 04 */ lwz r0, 4(r7) /* 8031ECC0 0031A920 7C 05 00 40 */ cmplw r5, r0 /* 8031ECC4 0031A924 40 80 00 18 */ bge lbl_8031ECDC /* 8031ECC8 0031A928 38 63 00 04 */ addi r3, r3, 4 /* 8031ECCC 0031A92C 3B DE 00 01 */ addi r30, r30, 1 /* 8031ECD0 0031A930 7C 19 18 2E */ lwzx r0, r25, r3 /* 8031ECD4 0031A934 90 04 00 00 */ stw r0, 0(r4) /* 8031ECD8 0031A938 7C B9 19 2E */ stwx r5, r25, r3 lbl_8031ECDC: /* 8031ECDC 0031A93C 38 84 00 04 */ addi r4, r4, 4 /* 8031ECE0 0031A940 42 00 FF D8 */ bdnz lbl_8031ECB8 lbl_8031ECE4: /* 8031ECE4 0031A944 57 C6 10 3A */ slwi r6, r30, 2 /* 8031ECE8 0031A948 81 07 00 04 */ lwz r8, 4(r7) /* 8031ECEC 0031A94C 7C 19 30 2E */ lwzx r0, r25, r6 /* 8031ECF0 0031A950 7F 23 CB 78 */ mr r3, r25 /* 8031ECF4 0031A954 38 9B 00 01 */ addi r4, r27, 1 /* 8031ECF8 0031A958 38 BE FF FF */ addi r5, r30, -1 /* 8031ECFC 0031A95C 90 07 00 04 */ stw r0, 4(r7) /* 8031ED00 0031A960 7D 19 31 2E */ stwx r8, r25, r6 /* 8031ED04 0031A964 4B FF FC 0D */ bl ss_qsort /* 8031ED08 0031A968 7F 23 CB 78 */ mr r3, r25 /* 8031ED0C 0031A96C 38 9E 00 01 */ addi r4, r30, 1 /* 8031ED10 0031A970 38 BF FF FF */ addi r5, r31, -1 /* 8031ED14 0031A974 4B FF FB FD */ bl ss_qsort lbl_8031ED18: /* 8031ED18 0031A978 3B DF 00 01 */ addi r30, r31, 1 /* 8031ED1C 0031A97C 7C 1E D0 00 */ cmpw r30, r26 /* 8031ED20 0031A980 40 80 00 B4 */ bge lbl_8031EDD4 /* 8031ED24 0031A984 7C 7F D2 14 */ add r3, r31, r26 /* 8031ED28 0031A988 7C D9 E2 14 */ add r6, r25, r28 /* 8031ED2C 0031A98C 38 83 00 01 */ addi r4, r3, 1 /* 8031ED30 0031A990 81 06 00 04 */ lwz r8, 4(r6) /* 8031ED34 0031A994 54 83 0F FE */ srwi r3, r4, 0x1f /* 8031ED38 0031A998 38 FF 00 02 */ addi r7, r31, 2 /* 8031ED3C 0031A99C 7C 83 22 14 */ add r4, r3, r4 /* 8031ED40 0031A9A0 38 1A 00 01 */ addi r0, r26, 1 /* 8031ED44 0031A9A4 54 85 08 3A */ rlwinm r5, r4, 1, 0, 0x1d /* 8031ED48 0031A9A8 54 E3 10 3A */ slwi r3, r7, 2 /* 8031ED4C 0031A9AC 7C 99 28 2E */ lwzx r4, r25, r5 /* 8031ED50 0031A9B0 7D 39 1A 14 */ add r9, r25, r3 /* 8031ED54 0031A9B4 7C 07 00 50 */ subf r0, r7, r0 /* 8031ED58 0031A9B8 57 C3 10 3A */ slwi r3, r30, 2 /* 8031ED5C 0031A9BC 90 86 00 04 */ stw r4, 4(r6) /* 8031ED60 0031A9C0 7D 19 29 2E */ stwx r8, r25, r5 /* 8031ED64 0031A9C4 7C 09 03 A6 */ mtctr r0 /* 8031ED68 0031A9C8 7C 07 D0 00 */ cmpw r7, r26 /* 8031ED6C 0031A9CC 41 81 00 30 */ bgt lbl_8031ED9C lbl_8031ED70: /* 8031ED70 0031A9D0 80 89 00 00 */ lwz r4, 0(r9) /* 8031ED74 0031A9D4 80 06 00 04 */ lwz r0, 4(r6) /* 8031ED78 0031A9D8 7C 04 00 40 */ cmplw r4, r0 /* 8031ED7C 0031A9DC 40 80 00 18 */ bge lbl_8031ED94 /* 8031ED80 0031A9E0 38 63 00 04 */ addi r3, r3, 4 /* 8031ED84 0031A9E4 3B DE 00 01 */ addi r30, r30, 1 /* 8031ED88 0031A9E8 7C 19 18 2E */ lwzx r0, r25, r3 /* 8031ED8C 0031A9EC 90 09 00 00 */ stw r0, 0(r9) /* 8031ED90 0031A9F0 7C 99 19 2E */ stwx r4, r25, r3 lbl_8031ED94: /* 8031ED94 0031A9F4 39 29 00 04 */ addi r9, r9, 4 /* 8031ED98 0031A9F8 42 00 FF D8 */ bdnz lbl_8031ED70 lbl_8031ED9C: /* 8031ED9C 0031A9FC 7C F9 E2 14 */ add r7, r25, r28 /* 8031EDA0 0031AA00 57 C6 10 3A */ slwi r6, r30, 2 /* 8031EDA4 0031AA04 81 07 00 04 */ lwz r8, 4(r7) /* 8031EDA8 0031AA08 7F 23 CB 78 */ mr r3, r25 /* 8031EDAC 0031AA0C 7C 19 30 2E */ lwzx r0, r25, r6 /* 8031EDB0 0031AA10 38 9F 00 01 */ addi r4, r31, 1 /* 8031EDB4 0031AA14 38 BE FF FF */ addi r5, r30, -1 /* 8031EDB8 0031AA18 90 07 00 04 */ stw r0, 4(r7) /* 8031EDBC 0031AA1C 7D 19 31 2E */ stwx r8, r25, r6 /* 8031EDC0 0031AA20 4B FF FB 51 */ bl ss_qsort /* 8031EDC4 0031AA24 7F 23 CB 78 */ mr r3, r25 /* 8031EDC8 0031AA28 7F 45 D3 78 */ mr r5, r26 /* 8031EDCC 0031AA2C 38 9E 00 01 */ addi r4, r30, 1 /* 8031EDD0 0031AA30 4B FF FB 41 */ bl ss_qsort lbl_8031EDD4: /* 8031EDD4 0031AA34 39 61 00 30 */ addi r11, r1, 0x30 /* 8031EDD8 0031AA38 4B EA 83 95 */ bl _restgpr_25 /* 8031EDDC 0031AA3C 80 01 00 34 */ lwz r0, 0x34(r1) /* 8031EDE0 0031AA40 7C 08 03 A6 */ mtlr r0 /* 8031EDE4 0031AA44 38 21 00 30 */ addi r1, r1, 0x30 /* 8031EDE8 0031AA48 4E 80 00 20 */ blr