.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global sdp_db_service_search sdp_db_service_search: /* 802E2C50 002DE8B0 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802E2C54 002DE8B4 7C 08 02 A6 */ mflr r0 /* 802E2C58 002DE8B8 90 01 00 34 */ stw r0, 0x34(r1) /* 802E2C5C 002DE8BC 39 61 00 30 */ addi r11, r1, 0x30 /* 802E2C60 002DE8C0 4B EE 44 BD */ bl _savegpr_24 /* 802E2C64 002DE8C4 3C A0 80 57 */ lis r5, lbl_8056C840@ha /* 802E2C68 002DE8C8 2C 03 00 00 */ cmpwi r3, 0 /* 802E2C6C 002DE8CC 38 A5 C8 40 */ addi r5, r5, lbl_8056C840@l /* 802E2C70 002DE8D0 7C 9D 23 78 */ mr r29, r4 /* 802E2C74 002DE8D4 A0 05 12 22 */ lhz r0, 0x1222(r5) /* 802E2C78 002DE8D8 1C 00 02 98 */ mulli r0, r0, 0x298 /* 802E2C7C 002DE8DC 7C 85 02 14 */ add r4, r5, r0 /* 802E2C80 002DE8E0 3B C4 12 24 */ addi r30, r4, 0x1224 /* 802E2C84 002DE8E4 40 82 00 0C */ bne lbl_802E2C90 /* 802E2C88 002DE8E8 3B 85 12 24 */ addi r28, r5, 0x1224 /* 802E2C8C 002DE8EC 48 00 00 DC */ b lbl_802E2D68 lbl_802E2C90: /* 802E2C90 002DE8F0 3B 83 02 98 */ addi r28, r3, 0x298 /* 802E2C94 002DE8F4 48 00 00 D4 */ b lbl_802E2D68 lbl_802E2C98: /* 802E2C98 002DE8F8 3B E0 00 00 */ li r31, 0 /* 802E2C9C 002DE8FC 48 00 00 A0 */ b lbl_802E2D3C lbl_802E2CA0: /* 802E2CA0 002DE900 57 E0 04 3E */ clrlwi r0, r31, 0x10 /* 802E2CA4 002DE904 3B 1C 00 0C */ addi r24, r28, 0xc /* 802E2CA8 002DE908 1C 00 00 12 */ mulli r0, r0, 0x12 /* 802E2CAC 002DE90C 3B 20 00 00 */ li r25, 0 /* 802E2CB0 002DE910 7F 7D 02 14 */ add r27, r29, r0 /* 802E2CB4 002DE914 3B 5B 00 04 */ addi r26, r27, 4 /* 802E2CB8 002DE918 48 00 00 60 */ b lbl_802E2D18 lbl_802E2CBC: /* 802E2CBC 002DE91C 88 18 00 0A */ lbz r0, 0xa(r24) /* 802E2CC0 002DE920 28 00 00 03 */ cmplwi r0, 3 /* 802E2CC4 002DE924 40 82 00 24 */ bne lbl_802E2CE8 /* 802E2CC8 002DE928 80 78 00 04 */ lwz r3, 4(r24) /* 802E2CCC 002DE92C 7F 45 D3 78 */ mr r5, r26 /* 802E2CD0 002DE930 80 98 00 00 */ lwz r4, 0(r24) /* 802E2CD4 002DE934 A0 DB 00 02 */ lhz r6, 2(r27) /* 802E2CD8 002DE938 48 00 44 25 */ bl sdpu_compare_uuid_arrays /* 802E2CDC 002DE93C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802E2CE0 002DE940 40 82 00 48 */ bne lbl_802E2D28 /* 802E2CE4 002DE944 48 00 00 2C */ b lbl_802E2D10 lbl_802E2CE8: /* 802E2CE8 002DE948 28 00 00 06 */ cmplwi r0, 6 /* 802E2CEC 002DE94C 40 82 00 24 */ bne lbl_802E2D10 /* 802E2CF0 002DE950 80 78 00 04 */ lwz r3, 4(r24) /* 802E2CF4 002DE954 7F 45 D3 78 */ mr r5, r26 /* 802E2CF8 002DE958 80 98 00 00 */ lwz r4, 0(r24) /* 802E2CFC 002DE95C 38 E0 00 00 */ li r7, 0 /* 802E2D00 002DE960 A0 DB 00 02 */ lhz r6, 2(r27) /* 802E2D04 002DE964 48 00 00 89 */ bl find_uuid_in_seq /* 802E2D08 002DE968 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802E2D0C 002DE96C 40 82 00 1C */ bne lbl_802E2D28 lbl_802E2D10: /* 802E2D10 002DE970 3B 39 00 01 */ addi r25, r25, 1 /* 802E2D14 002DE974 3B 18 00 0C */ addi r24, r24, 0xc lbl_802E2D18: /* 802E2D18 002DE978 A0 1C 00 08 */ lhz r0, 8(r28) /* 802E2D1C 002DE97C 57 23 04 3E */ clrlwi r3, r25, 0x10 /* 802E2D20 002DE980 7C 03 00 40 */ cmplw r3, r0 /* 802E2D24 002DE984 41 80 FF 98 */ blt lbl_802E2CBC lbl_802E2D28: /* 802E2D28 002DE988 A0 1C 00 08 */ lhz r0, 8(r28) /* 802E2D2C 002DE98C 57 23 04 3E */ clrlwi r3, r25, 0x10 /* 802E2D30 002DE990 7C 03 00 40 */ cmplw r3, r0 /* 802E2D34 002DE994 41 82 00 18 */ beq lbl_802E2D4C /* 802E2D38 002DE998 3B FF 00 01 */ addi r31, r31, 1 lbl_802E2D3C: /* 802E2D3C 002DE99C A0 1D 00 00 */ lhz r0, 0(r29) /* 802E2D40 002DE9A0 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 802E2D44 002DE9A4 7C 03 00 40 */ cmplw r3, r0 /* 802E2D48 002DE9A8 41 80 FF 58 */ blt lbl_802E2CA0 lbl_802E2D4C: /* 802E2D4C 002DE9AC A0 1D 00 00 */ lhz r0, 0(r29) /* 802E2D50 002DE9B0 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 802E2D54 002DE9B4 7C 03 00 40 */ cmplw r3, r0 /* 802E2D58 002DE9B8 40 82 00 0C */ bne lbl_802E2D64 /* 802E2D5C 002DE9BC 7F 83 E3 78 */ mr r3, r28 /* 802E2D60 002DE9C0 48 00 00 14 */ b lbl_802E2D74 lbl_802E2D64: /* 802E2D64 002DE9C4 3B 9C 02 98 */ addi r28, r28, 0x298 lbl_802E2D68: /* 802E2D68 002DE9C8 7C 1C F0 40 */ cmplw r28, r30 /* 802E2D6C 002DE9CC 41 80 FF 2C */ blt lbl_802E2C98 /* 802E2D70 002DE9D0 38 60 00 00 */ li r3, 0 lbl_802E2D74: /* 802E2D74 002DE9D4 39 61 00 30 */ addi r11, r1, 0x30 /* 802E2D78 002DE9D8 4B EE 43 F1 */ bl _restgpr_24 /* 802E2D7C 002DE9DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802E2D80 002DE9E0 7C 08 03 A6 */ mtlr r0 /* 802E2D84 002DE9E4 38 21 00 30 */ addi r1, r1, 0x30 /* 802E2D88 002DE9E8 4E 80 00 20 */ blr .global find_uuid_in_seq find_uuid_in_seq: /* 802E2D8C 002DE9EC 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802E2D90 002DE9F0 7C 08 02 A6 */ mflr r0 /* 802E2D94 002DE9F4 90 01 00 34 */ stw r0, 0x34(r1) /* 802E2D98 002DE9F8 39 61 00 30 */ addi r11, r1, 0x30 /* 802E2D9C 002DE9FC 4B EE 43 89 */ bl _savegpr_26 /* 802E2DA0 002DEA00 2C 07 00 03 */ cmpwi r7, 3 /* 802E2DA4 002DEA04 7C 7A 1B 78 */ mr r26, r3 /* 802E2DA8 002DEA08 7C BB 2B 78 */ mr r27, r5 /* 802E2DAC 002DEA0C 7C DC 33 78 */ mr r28, r6 /* 802E2DB0 002DEA10 7C FD 3B 78 */ mr r29, r7 /* 802E2DB4 002DEA14 7F E3 22 14 */ add r31, r3, r4 /* 802E2DB8 002DEA18 40 81 00 88 */ ble lbl_802E2E40 /* 802E2DBC 002DEA1C 38 60 00 00 */ li r3, 0 /* 802E2DC0 002DEA20 48 00 00 8C */ b lbl_802E2E4C /* 802E2DC4 002DEA24 48 00 00 7C */ b lbl_802E2E40 lbl_802E2DC8: /* 802E2DC8 002DEA28 8B DA 00 00 */ lbz r30, 0(r26) /* 802E2DCC 002DEA2C 38 7A 00 01 */ addi r3, r26, 1 /* 802E2DD0 002DEA30 38 A1 00 08 */ addi r5, r1, 8 /* 802E2DD4 002DEA34 7F C4 F3 78 */ mr r4, r30 /* 802E2DD8 002DEA38 48 00 41 75 */ bl sdpu_get_len_from_type /* 802E2DDC 002DEA3C 57 C0 EE FE */ rlwinm r0, r30, 0x1d, 0x1b, 0x1f /* 802E2DE0 002DEA40 7C 7A 1B 78 */ mr r26, r3 /* 802E2DE4 002DEA44 28 00 00 03 */ cmplwi r0, 3 /* 802E2DE8 002DEA48 40 82 00 24 */ bne lbl_802E2E0C /* 802E2DEC 002DEA4C 80 81 00 08 */ lwz r4, 8(r1) /* 802E2DF0 002DEA50 7F 65 DB 78 */ mr r5, r27 /* 802E2DF4 002DEA54 7F 86 E3 78 */ mr r6, r28 /* 802E2DF8 002DEA58 48 00 43 05 */ bl sdpu_compare_uuid_arrays /* 802E2DFC 002DEA5C 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802E2E00 002DEA60 41 82 00 38 */ beq lbl_802E2E38 /* 802E2E04 002DEA64 38 60 00 01 */ li r3, 1 /* 802E2E08 002DEA68 48 00 00 44 */ b lbl_802E2E4C lbl_802E2E0C: /* 802E2E0C 002DEA6C 28 00 00 06 */ cmplwi r0, 6 /* 802E2E10 002DEA70 40 82 00 28 */ bne lbl_802E2E38 /* 802E2E14 002DEA74 80 81 00 08 */ lwz r4, 8(r1) /* 802E2E18 002DEA78 7F 65 DB 78 */ mr r5, r27 /* 802E2E1C 002DEA7C 7F 86 E3 78 */ mr r6, r28 /* 802E2E20 002DEA80 38 FD 00 01 */ addi r7, r29, 1 /* 802E2E24 002DEA84 4B FF FF 69 */ bl find_uuid_in_seq /* 802E2E28 002DEA88 54 60 06 3F */ clrlwi. r0, r3, 0x18 /* 802E2E2C 002DEA8C 41 82 00 0C */ beq lbl_802E2E38 /* 802E2E30 002DEA90 38 60 00 01 */ li r3, 1 /* 802E2E34 002DEA94 48 00 00 18 */ b lbl_802E2E4C lbl_802E2E38: /* 802E2E38 002DEA98 80 01 00 08 */ lwz r0, 8(r1) /* 802E2E3C 002DEA9C 7F 5A 02 14 */ add r26, r26, r0 lbl_802E2E40: /* 802E2E40 002DEAA0 7C 1A F8 40 */ cmplw r26, r31 /* 802E2E44 002DEAA4 41 80 FF 84 */ blt lbl_802E2DC8 /* 802E2E48 002DEAA8 38 60 00 00 */ li r3, 0 lbl_802E2E4C: /* 802E2E4C 002DEAAC 39 61 00 30 */ addi r11, r1, 0x30 /* 802E2E50 002DEAB0 4B EE 43 21 */ bl _restgpr_26 /* 802E2E54 002DEAB4 80 01 00 34 */ lwz r0, 0x34(r1) /* 802E2E58 002DEAB8 7C 08 03 A6 */ mtlr r0 /* 802E2E5C 002DEABC 38 21 00 30 */ addi r1, r1, 0x30 /* 802E2E60 002DEAC0 4E 80 00 20 */ blr .global sdp_db_find_record sdp_db_find_record: /* 802E2E64 002DEAC4 3C A0 80 57 */ lis r5, lbl_8056C840@ha /* 802E2E68 002DEAC8 38 00 02 98 */ li r0, 0x298 /* 802E2E6C 002DEACC 38 A5 C8 40 */ addi r5, r5, lbl_8056C840@l /* 802E2E70 002DEAD0 A0 85 12 22 */ lhz r4, 0x1222(r5) /* 802E2E74 002DEAD4 38 C5 12 24 */ addi r6, r5, 0x1224 /* 802E2E78 002DEAD8 1C 84 02 98 */ mulli r4, r4, 0x298 /* 802E2E7C 002DEADC 7C 85 22 14 */ add r4, r5, r4 /* 802E2E80 002DEAE0 38 A4 12 24 */ addi r5, r4, 0x1224 /* 802E2E84 002DEAE4 38 85 02 97 */ addi r4, r5, 0x297 /* 802E2E88 002DEAE8 7C 86 20 50 */ subf r4, r6, r4 /* 802E2E8C 002DEAEC 7C 84 03 96 */ divwu r4, r4, r0 /* 802E2E90 002DEAF0 7C 89 03 A6 */ mtctr r4 /* 802E2E94 002DEAF4 7C 06 28 40 */ cmplw r6, r5 /* 802E2E98 002DEAF8 40 80 00 20 */ bge lbl_802E2EB8 lbl_802E2E9C: /* 802E2E9C 002DEAFC 80 06 00 00 */ lwz r0, 0(r6) /* 802E2EA0 002DEB00 7C 00 18 40 */ cmplw r0, r3 /* 802E2EA4 002DEB04 40 82 00 0C */ bne lbl_802E2EB0 /* 802E2EA8 002DEB08 7C C3 33 78 */ mr r3, r6 /* 802E2EAC 002DEB0C 4E 80 00 20 */ blr lbl_802E2EB0: /* 802E2EB0 002DEB10 38 C6 02 98 */ addi r6, r6, 0x298 /* 802E2EB4 002DEB14 42 00 FF E8 */ bdnz lbl_802E2E9C lbl_802E2EB8: /* 802E2EB8 002DEB18 38 60 00 00 */ li r3, 0 /* 802E2EBC 002DEB1C 4E 80 00 20 */ blr .global sdp_db_find_attr_in_rec sdp_db_find_attr_in_rec: /* 802E2EC0 002DEB20 A0 C3 00 08 */ lhz r6, 8(r3) /* 802E2EC4 002DEB24 38 63 00 0C */ addi r3, r3, 0xc /* 802E2EC8 002DEB28 38 E0 00 00 */ li r7, 0 /* 802E2ECC 002DEB2C 48 00 00 20 */ b lbl_802E2EEC lbl_802E2ED0: /* 802E2ED0 002DEB30 A0 03 00 08 */ lhz r0, 8(r3) /* 802E2ED4 002DEB34 7C 00 20 40 */ cmplw r0, r4 /* 802E2ED8 002DEB38 41 80 00 0C */ blt lbl_802E2EE4 /* 802E2EDC 002DEB3C 7C 00 28 40 */ cmplw r0, r5 /* 802E2EE0 002DEB40 4C 81 00 20 */ blelr lbl_802E2EE4: /* 802E2EE4 002DEB44 38 E7 00 01 */ addi r7, r7, 1 /* 802E2EE8 002DEB48 38 63 00 0C */ addi r3, r3, 0xc lbl_802E2EEC: /* 802E2EEC 002DEB4C 54 E0 04 3E */ clrlwi r0, r7, 0x10 /* 802E2EF0 002DEB50 7C 00 30 40 */ cmplw r0, r6 /* 802E2EF4 002DEB54 41 80 FF DC */ blt lbl_802E2ED0 /* 802E2EF8 002DEB58 38 60 00 00 */ li r3, 0 /* 802E2EFC 002DEB5C 4E 80 00 20 */ blr .global SDP_CreateRecord SDP_CreateRecord: /* 802E2F00 002DEB60 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802E2F04 002DEB64 7C 08 02 A6 */ mflr r0 /* 802E2F08 002DEB68 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E2F0C 002DEB6C 90 01 00 24 */ stw r0, 0x24(r1) /* 802E2F10 002DEB70 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E2F14 002DEB74 93 E1 00 1C */ stw r31, 0x1c(r1) /* 802E2F18 002DEB78 3B E3 12 1C */ addi r31, r3, 0x121c /* 802E2F1C 002DEB7C A0 03 12 22 */ lhz r0, 0x1222(r3) /* 802E2F20 002DEB80 28 00 00 14 */ cmplwi r0, 0x14 /* 802E2F24 002DEB84 40 80 00 A4 */ bge lbl_802E2FC8 /* 802E2F28 002DEB88 1C 00 02 98 */ mulli r0, r0, 0x298 /* 802E2F2C 002DEB8C 38 80 00 00 */ li r4, 0 /* 802E2F30 002DEB90 38 A0 02 98 */ li r5, 0x298 /* 802E2F34 002DEB94 7C 7F 02 14 */ add r3, r31, r0 /* 802E2F38 002DEB98 38 63 00 08 */ addi r3, r3, 8 /* 802E2F3C 002DEB9C 4B D2 11 C9 */ bl memset /* 802E2F40 002DEBA0 A0 9F 00 06 */ lhz r4, 6(r31) /* 802E2F44 002DEBA4 2C 04 00 00 */ cmpwi r4, 0 /* 802E2F48 002DEBA8 41 82 00 1C */ beq lbl_802E2F64 /* 802E2F4C 002DEBAC 38 04 FF FF */ addi r0, r4, -1 /* 802E2F50 002DEBB0 1C 00 02 98 */ mulli r0, r0, 0x298 /* 802E2F54 002DEBB4 7C 7F 02 14 */ add r3, r31, r0 /* 802E2F58 002DEBB8 80 63 00 08 */ lwz r3, 8(r3) /* 802E2F5C 002DEBBC 38 63 00 01 */ addi r3, r3, 1 /* 802E2F60 002DEBC0 48 00 00 08 */ b lbl_802E2F68 lbl_802E2F64: /* 802E2F64 002DEBC4 3C 60 00 01 */ lis r3, 1 lbl_802E2F68: /* 802E2F68 002DEBC8 1C 84 02 98 */ mulli r4, r4, 0x298 /* 802E2F6C 002DEBCC 54 60 46 3E */ srwi r0, r3, 0x18 /* 802E2F70 002DEBD0 54 66 86 3E */ rlwinm r6, r3, 0x10, 0x18, 0x1f /* 802E2F74 002DEBD4 98 01 00 08 */ stb r0, 8(r1) /* 802E2F78 002DEBD8 54 60 C6 3E */ rlwinm r0, r3, 0x18, 0x18, 0x1f /* 802E2F7C 002DEBDC 7C 9F 22 14 */ add r4, r31, r4 /* 802E2F80 002DEBE0 90 64 00 08 */ stw r3, 8(r4) /* 802E2F84 002DEBE4 38 E1 00 08 */ addi r7, r1, 8 /* 802E2F88 002DEBE8 38 80 00 00 */ li r4, 0 /* 802E2F8C 002DEBEC 38 A0 00 01 */ li r5, 1 /* 802E2F90 002DEBF0 A1 1F 00 06 */ lhz r8, 6(r31) /* 802E2F94 002DEBF4 98 C1 00 09 */ stb r6, 9(r1) /* 802E2F98 002DEBF8 38 C0 00 04 */ li r6, 4 /* 802E2F9C 002DEBFC 39 08 00 01 */ addi r8, r8, 1 /* 802E2FA0 002DEC00 B1 1F 00 06 */ sth r8, 6(r31) /* 802E2FA4 002DEC04 98 01 00 0A */ stb r0, 0xa(r1) /* 802E2FA8 002DEC08 98 61 00 0B */ stb r3, 0xb(r1) /* 802E2FAC 002DEC0C 48 00 01 49 */ bl SDP_AddAttribute /* 802E2FB0 002DEC10 A0 7F 00 06 */ lhz r3, 6(r31) /* 802E2FB4 002DEC14 38 03 FF FF */ addi r0, r3, -1 /* 802E2FB8 002DEC18 1C 00 02 98 */ mulli r0, r0, 0x298 /* 802E2FBC 002DEC1C 7C 7F 02 14 */ add r3, r31, r0 /* 802E2FC0 002DEC20 80 63 00 08 */ lwz r3, 8(r3) /* 802E2FC4 002DEC24 48 00 00 08 */ b lbl_802E2FCC lbl_802E2FC8: /* 802E2FC8 002DEC28 38 60 00 00 */ li r3, 0 lbl_802E2FCC: /* 802E2FCC 002DEC2C 80 01 00 24 */ lwz r0, 0x24(r1) /* 802E2FD0 002DEC30 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 802E2FD4 002DEC34 7C 08 03 A6 */ mtlr r0 /* 802E2FD8 002DEC38 38 21 00 20 */ addi r1, r1, 0x20 /* 802E2FDC 002DEC3C 4E 80 00 20 */ blr .global SDP_DeleteRecord SDP_DeleteRecord: /* 802E2FE0 002DEC40 3C 80 80 57 */ lis r4, lbl_8056C840@ha /* 802E2FE4 002DEC44 2C 03 00 00 */ cmpwi r3, 0 /* 802E2FE8 002DEC48 38 84 C8 40 */ addi r4, r4, lbl_8056C840@l /* 802E2FEC 002DEC4C 39 44 12 24 */ addi r10, r4, 0x1224 /* 802E2FF0 002DEC50 41 82 00 10 */ beq lbl_802E3000 /* 802E2FF4 002DEC54 A0 84 12 22 */ lhz r4, 0x1222(r4) /* 802E2FF8 002DEC58 2C 04 00 00 */ cmpwi r4, 0 /* 802E2FFC 002DEC5C 40 82 00 24 */ bne lbl_802E3020 lbl_802E3000: /* 802E3000 002DEC60 3C 80 80 57 */ lis r4, lbl_8056C840@ha /* 802E3004 002DEC64 38 00 00 00 */ li r0, 0 /* 802E3008 002DEC68 38 84 C8 40 */ addi r4, r4, lbl_8056C840@l /* 802E300C 002DEC6C 38 60 00 01 */ li r3, 1 /* 802E3010 002DEC70 B0 04 12 22 */ sth r0, 0x1222(r4) /* 802E3014 002DEC74 90 04 12 1C */ stw r0, 0x121c(r4) /* 802E3018 002DEC78 98 04 12 20 */ stb r0, 0x1220(r4) /* 802E301C 002DEC7C 4E 80 00 20 */ blr lbl_802E3020: /* 802E3020 002DEC80 39 20 00 00 */ li r9, 0 /* 802E3024 002DEC84 48 00 00 BC */ b lbl_802E30E0 lbl_802E3028: /* 802E3028 002DEC88 80 0A 00 00 */ lwz r0, 0(r10) /* 802E302C 002DEC8C 7C 00 18 40 */ cmplw r0, r3 /* 802E3030 002DEC90 40 82 00 A8 */ bne lbl_802E30D8 /* 802E3034 002DEC94 3C A0 80 57 */ lis r5, lbl_8056C840@ha /* 802E3038 002DEC98 38 E0 00 53 */ li r7, 0x53 /* 802E303C 002DEC9C 38 A5 C8 40 */ addi r5, r5, lbl_8056C840@l /* 802E3040 002DECA0 48 00 00 60 */ b lbl_802E30A0 lbl_802E3044: /* 802E3044 002DECA4 39 0A FF FC */ addi r8, r10, -4 /* 802E3048 002DECA8 38 CA 02 94 */ addi r6, r10, 0x294 /* 802E304C 002DECAC 7C E9 03 A6 */ mtctr r7 lbl_802E3050: /* 802E3050 002DECB0 80 86 00 04 */ lwz r4, 4(r6) /* 802E3054 002DECB4 84 06 00 08 */ lwzu r0, 8(r6) /* 802E3058 002DECB8 90 88 00 04 */ stw r4, 4(r8) /* 802E305C 002DECBC 94 08 00 08 */ stwu r0, 8(r8) /* 802E3060 002DECC0 42 00 FF F0 */ bdnz lbl_802E3050 /* 802E3064 002DECC4 39 00 00 00 */ li r8, 0 /* 802E3068 002DECC8 48 00 00 20 */ b lbl_802E3088 lbl_802E306C: /* 802E306C 002DECCC 55 00 04 3E */ clrlwi r0, r8, 0x10 /* 802E3070 002DECD0 39 08 00 01 */ addi r8, r8, 1 /* 802E3074 002DECD4 1C 00 00 0C */ mulli r0, r0, 0xc /* 802E3078 002DECD8 7C CA 02 14 */ add r6, r10, r0 /* 802E307C 002DECDC 80 86 00 10 */ lwz r4, 0x10(r6) /* 802E3080 002DECE0 38 04 FD 68 */ addi r0, r4, -664 /* 802E3084 002DECE4 90 06 00 10 */ stw r0, 0x10(r6) lbl_802E3088: /* 802E3088 002DECE8 A0 0A 00 08 */ lhz r0, 8(r10) /* 802E308C 002DECEC 55 04 04 3E */ clrlwi r4, r8, 0x10 /* 802E3090 002DECF0 7C 04 00 40 */ cmplw r4, r0 /* 802E3094 002DECF4 41 80 FF D8 */ blt lbl_802E306C /* 802E3098 002DECF8 39 29 00 01 */ addi r9, r9, 1 /* 802E309C 002DECFC 39 4A 02 98 */ addi r10, r10, 0x298 lbl_802E30A0: /* 802E30A0 002DED00 A0 85 12 22 */ lhz r4, 0x1222(r5) /* 802E30A4 002DED04 55 20 04 3E */ clrlwi r0, r9, 0x10 /* 802E30A8 002DED08 7C 00 20 40 */ cmplw r0, r4 /* 802E30AC 002DED0C 41 80 FF 98 */ blt lbl_802E3044 /* 802E30B0 002DED10 80 05 12 1C */ lwz r0, 0x121c(r5) /* 802E30B4 002DED14 38 84 FF FF */ addi r4, r4, -1 /* 802E30B8 002DED18 B0 85 12 22 */ sth r4, 0x1222(r5) /* 802E30BC 002DED1C 7C 00 18 40 */ cmplw r0, r3 /* 802E30C0 002DED20 40 82 00 10 */ bne lbl_802E30D0 /* 802E30C4 002DED24 38 00 00 00 */ li r0, 0 /* 802E30C8 002DED28 90 05 12 1C */ stw r0, 0x121c(r5) /* 802E30CC 002DED2C 98 05 12 20 */ stb r0, 0x1220(r5) lbl_802E30D0: /* 802E30D0 002DED30 38 60 00 01 */ li r3, 1 /* 802E30D4 002DED34 4E 80 00 20 */ blr lbl_802E30D8: /* 802E30D8 002DED38 39 29 00 01 */ addi r9, r9, 1 /* 802E30DC 002DED3C 39 4A 02 98 */ addi r10, r10, 0x298 lbl_802E30E0: /* 802E30E0 002DED40 55 20 04 3E */ clrlwi r0, r9, 0x10 /* 802E30E4 002DED44 7C 00 20 40 */ cmplw r0, r4 /* 802E30E8 002DED48 41 80 FF 40 */ blt lbl_802E3028 /* 802E30EC 002DED4C 38 60 00 00 */ li r3, 0 /* 802E30F0 002DED50 4E 80 00 20 */ blr .global SDP_AddAttribute SDP_AddAttribute: /* 802E30F4 002DED54 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802E30F8 002DED58 7C 08 02 A6 */ mflr r0 /* 802E30FC 002DED5C 90 01 00 34 */ stw r0, 0x34(r1) /* 802E3100 002DED60 39 61 00 30 */ addi r11, r1, 0x30 /* 802E3104 002DED64 4B EE 40 15 */ bl _savegpr_23 /* 802E3108 002DED68 3D 00 80 57 */ lis r8, lbl_8056C840@ha /* 802E310C 002DED6C 7C BA 2B 78 */ mr r26, r5 /* 802E3110 002DED70 39 08 C8 40 */ addi r8, r8, lbl_8056C840@l /* 802E3114 002DED74 7C 78 1B 78 */ mr r24, r3 /* 802E3118 002DED78 A1 28 12 22 */ lhz r9, 0x1222(r8) /* 802E311C 002DED7C 7C 99 23 78 */ mr r25, r4 /* 802E3120 002DED80 7C DB 33 78 */ mr r27, r6 /* 802E3124 002DED84 7C FC 3B 78 */ mr r28, r7 /* 802E3128 002DED88 3B C8 12 24 */ addi r30, r8, 0x1224 /* 802E312C 002DED8C 38 A0 00 00 */ li r5, 0 /* 802E3130 002DED90 48 00 03 34 */ b lbl_802E3464 lbl_802E3134: /* 802E3134 002DED94 80 1E 00 00 */ lwz r0, 0(r30) /* 802E3138 002DED98 7C 00 18 40 */ cmplw r0, r3 /* 802E313C 002DED9C 40 82 03 20 */ bne lbl_802E345C /* 802E3140 002DEDA0 A0 7E 00 08 */ lhz r3, 8(r30) /* 802E3144 002DEDA4 3B BE 00 0C */ addi r29, r30, 0xc /* 802E3148 002DEDA8 3B E0 00 00 */ li r31, 0 /* 802E314C 002DEDAC 48 00 00 2C */ b lbl_802E3178 lbl_802E3150: /* 802E3150 002DEDB0 A0 1D 00 08 */ lhz r0, 8(r29) /* 802E3154 002DEDB4 7C 00 20 40 */ cmplw r0, r4 /* 802E3158 002DEDB8 40 82 00 14 */ bne lbl_802E316C /* 802E315C 002DEDBC 7F 03 C3 78 */ mr r3, r24 /* 802E3160 002DEDC0 7F 24 CB 78 */ mr r4, r25 /* 802E3164 002DEDC4 48 00 05 7D */ bl SDP_DeleteAttribute /* 802E3168 002DEDC8 48 00 00 1C */ b lbl_802E3184 lbl_802E316C: /* 802E316C 002DEDCC 41 81 00 18 */ bgt lbl_802E3184 /* 802E3170 002DEDD0 3B FF 00 01 */ addi r31, r31, 1 /* 802E3174 002DEDD4 3B BD 00 0C */ addi r29, r29, 0xc lbl_802E3178: /* 802E3178 002DEDD8 57 E0 04 3E */ clrlwi r0, r31, 0x10 /* 802E317C 002DEDDC 7C 00 18 40 */ cmplw r0, r3 /* 802E3180 002DEDE0 41 80 FF D0 */ blt lbl_802E3150 lbl_802E3184: /* 802E3184 002DEDE4 A0 BE 00 08 */ lhz r5, 8(r30) /* 802E3188 002DEDE8 28 05 00 19 */ cmplwi r5, 0x19 /* 802E318C 002DEDEC 40 82 00 0C */ bne lbl_802E3198 /* 802E3190 002DEDF0 38 60 00 00 */ li r3, 0 /* 802E3194 002DEDF4 48 00 02 E0 */ b lbl_802E3474 lbl_802E3198: /* 802E3198 002DEDF8 57 E0 04 3E */ clrlwi r0, r31, 0x10 /* 802E319C 002DEDFC 7C 00 28 40 */ cmplw r0, r5 /* 802E31A0 002DEE00 40 82 00 14 */ bne lbl_802E31B4 /* 802E31A4 002DEE04 1C 05 00 0C */ mulli r0, r5, 0xc /* 802E31A8 002DEE08 7C 7E 02 14 */ add r3, r30, r0 /* 802E31AC 002DEE0C 3B A3 00 0C */ addi r29, r3, 0xc /* 802E31B0 002DEE10 48 00 01 C8 */ b lbl_802E3378 lbl_802E31B4: /* 802E31B4 002DEE14 7C 85 00 40 */ cmplw cr1, r5, r0 /* 802E31B8 002DEE18 40 85 01 C0 */ ble cr1, lbl_802E3378 /* 802E31BC 002DEE1C 7C 1F 28 50 */ subf r0, r31, r5 /* 802E31C0 002DEE20 38 7F 00 08 */ addi r3, r31, 8 /* 802E31C4 002DEE24 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 802E31C8 002DEE28 28 00 00 08 */ cmplwi r0, 8 /* 802E31CC 002DEE2C 40 81 01 68 */ ble lbl_802E3334 /* 802E31D0 002DEE30 41 84 01 64 */ blt cr1, lbl_802E3334 /* 802E31D4 002DEE34 54 63 04 3E */ clrlwi r3, r3, 0x10 /* 802E31D8 002DEE38 38 05 00 07 */ addi r0, r5, 7 /* 802E31DC 002DEE3C 7C 03 00 50 */ subf r0, r3, r0 /* 802E31E0 002DEE40 54 00 E8 FE */ srwi r0, r0, 3 /* 802E31E4 002DEE44 7C 09 03 A6 */ mtctr r0 /* 802E31E8 002DEE48 7C 05 18 40 */ cmplw r5, r3 /* 802E31EC 002DEE4C 40 81 01 48 */ ble lbl_802E3334 lbl_802E31F0: /* 802E31F0 002DEE50 54 A0 04 3E */ clrlwi r0, r5, 0x10 /* 802E31F4 002DEE54 3C 65 00 01 */ addis r3, r5, 1 /* 802E31F8 002DEE58 1C 80 00 0C */ mulli r4, r0, 0xc /* 802E31FC 002DEE5C 7D 24 F0 6E */ lwzux r9, r4, r30 /* 802E3200 002DEE60 38 C3 FF FF */ addi r6, r3, -1 /* 802E3204 002DEE64 38 03 FF FE */ addi r0, r3, -2 /* 802E3208 002DEE68 80 E4 00 04 */ lwz r7, 4(r4) /* 802E320C 002DEE6C 54 C6 04 3E */ clrlwi r6, r6, 0x10 /* 802E3210 002DEE70 1D 06 00 0C */ mulli r8, r6, 0xc /* 802E3214 002DEE74 38 A5 FF F8 */ addi r5, r5, -8 /* 802E3218 002DEE78 91 24 00 0C */ stw r9, 0xc(r4) /* 802E321C 002DEE7C 54 06 04 3E */ clrlwi r6, r0, 0x10 /* 802E3220 002DEE80 38 03 FF FD */ addi r0, r3, -3 /* 802E3224 002DEE84 90 E4 00 10 */ stw r7, 0x10(r4) /* 802E3228 002DEE88 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 802E322C 002DEE8C 7E FE 42 14 */ add r23, r30, r8 /* 802E3230 002DEE90 81 64 00 08 */ lwz r11, 8(r4) /* 802E3234 002DEE94 1D 46 00 0C */ mulli r10, r6, 0xc /* 802E3238 002DEE98 38 C3 FF FC */ addi r6, r3, -4 /* 802E323C 002DEE9C 91 64 00 14 */ stw r11, 0x14(r4) /* 802E3240 002DEEA0 1D 20 00 0C */ mulli r9, r0, 0xc /* 802E3244 002DEEA4 38 03 FF FB */ addi r0, r3, -5 /* 802E3248 002DEEA8 7D 9E 40 2E */ lwzx r12, r30, r8 /* 802E324C 002DEEAC 54 C6 04 3E */ clrlwi r6, r6, 0x10 /* 802E3250 002DEEB0 81 77 00 04 */ lwz r11, 4(r23) /* 802E3254 002DEEB4 54 07 04 3E */ clrlwi r7, r0, 0x10 /* 802E3258 002DEEB8 91 84 00 00 */ stw r12, 0(r4) /* 802E325C 002DEEBC 7D 9E 52 14 */ add r12, r30, r10 /* 802E3260 002DEEC0 38 03 FF FA */ addi r0, r3, -6 /* 802E3264 002DEEC4 7D 5E 4A 14 */ add r10, r30, r9 /* 802E3268 002DEEC8 1D 06 00 0C */ mulli r8, r6, 0xc /* 802E326C 002DEECC 91 64 00 04 */ stw r11, 4(r4) /* 802E3270 002DEED0 54 06 04 3E */ clrlwi r6, r0, 0x10 /* 802E3274 002DEED4 38 03 FF F9 */ addi r0, r3, -7 /* 802E3278 002DEED8 1C 66 00 0C */ mulli r3, r6, 0xc /* 802E327C 002DEEDC 80 D7 00 08 */ lwz r6, 8(r23) /* 802E3280 002DEEE0 54 00 04 3E */ clrlwi r0, r0, 0x10 /* 802E3284 002DEEE4 90 C4 00 08 */ stw r6, 8(r4) /* 802E3288 002DEEE8 7D 3E 42 14 */ add r9, r30, r8 /* 802E328C 002DEEEC 1C E7 00 0C */ mulli r7, r7, 0xc /* 802E3290 002DEEF0 81 6C 00 00 */ lwz r11, 0(r12) /* 802E3294 002DEEF4 7D 1E 3A 14 */ add r8, r30, r7 /* 802E3298 002DEEF8 7C FE 1A 14 */ add r7, r30, r3 /* 802E329C 002DEEFC 80 6C 00 04 */ lwz r3, 4(r12) /* 802E32A0 002DEF00 1C 00 00 0C */ mulli r0, r0, 0xc /* 802E32A4 002DEF04 91 64 FF F4 */ stw r11, -0xc(r4) /* 802E32A8 002DEF08 90 64 FF F8 */ stw r3, -8(r4) /* 802E32AC 002DEF0C 7C DE 02 14 */ add r6, r30, r0 /* 802E32B0 002DEF10 80 0C 00 08 */ lwz r0, 8(r12) /* 802E32B4 002DEF14 90 04 FF FC */ stw r0, -4(r4) /* 802E32B8 002DEF18 80 6A 00 00 */ lwz r3, 0(r10) /* 802E32BC 002DEF1C 80 0A 00 04 */ lwz r0, 4(r10) /* 802E32C0 002DEF20 90 64 FF E8 */ stw r3, -0x18(r4) /* 802E32C4 002DEF24 90 04 FF EC */ stw r0, -0x14(r4) /* 802E32C8 002DEF28 80 0A 00 08 */ lwz r0, 8(r10) /* 802E32CC 002DEF2C 90 04 FF F0 */ stw r0, -0x10(r4) /* 802E32D0 002DEF30 80 69 00 00 */ lwz r3, 0(r9) /* 802E32D4 002DEF34 80 09 00 04 */ lwz r0, 4(r9) /* 802E32D8 002DEF38 90 64 FF DC */ stw r3, -0x24(r4) /* 802E32DC 002DEF3C 90 04 FF E0 */ stw r0, -0x20(r4) /* 802E32E0 002DEF40 80 09 00 08 */ lwz r0, 8(r9) /* 802E32E4 002DEF44 90 04 FF E4 */ stw r0, -0x1c(r4) /* 802E32E8 002DEF48 80 68 00 00 */ lwz r3, 0(r8) /* 802E32EC 002DEF4C 80 08 00 04 */ lwz r0, 4(r8) /* 802E32F0 002DEF50 90 64 FF D0 */ stw r3, -0x30(r4) /* 802E32F4 002DEF54 90 04 FF D4 */ stw r0, -0x2c(r4) /* 802E32F8 002DEF58 80 08 00 08 */ lwz r0, 8(r8) /* 802E32FC 002DEF5C 90 04 FF D8 */ stw r0, -0x28(r4) /* 802E3300 002DEF60 80 67 00 00 */ lwz r3, 0(r7) /* 802E3304 002DEF64 80 07 00 04 */ lwz r0, 4(r7) /* 802E3308 002DEF68 90 64 FF C4 */ stw r3, -0x3c(r4) /* 802E330C 002DEF6C 90 04 FF C8 */ stw r0, -0x38(r4) /* 802E3310 002DEF70 80 07 00 08 */ lwz r0, 8(r7) /* 802E3314 002DEF74 90 04 FF CC */ stw r0, -0x34(r4) /* 802E3318 002DEF78 80 66 00 00 */ lwz r3, 0(r6) /* 802E331C 002DEF7C 80 06 00 04 */ lwz r0, 4(r6) /* 802E3320 002DEF80 90 64 FF B8 */ stw r3, -0x48(r4) /* 802E3324 002DEF84 90 04 FF BC */ stw r0, -0x44(r4) /* 802E3328 002DEF88 80 06 00 08 */ lwz r0, 8(r6) /* 802E332C 002DEF8C 90 04 FF C0 */ stw r0, -0x40(r4) /* 802E3330 002DEF90 42 00 FE C0 */ bdnz lbl_802E31F0 lbl_802E3334: /* 802E3334 002DEF94 57 E3 04 3E */ clrlwi r3, r31, 0x10 /* 802E3338 002DEF98 54 A4 04 3E */ clrlwi r4, r5, 0x10 /* 802E333C 002DEF9C 7C 03 20 50 */ subf r0, r3, r4 /* 802E3340 002DEFA0 7C 09 03 A6 */ mtctr r0 /* 802E3344 002DEFA4 7C 04 18 40 */ cmplw r4, r3 /* 802E3348 002DEFA8 40 81 00 30 */ ble lbl_802E3378 lbl_802E334C: /* 802E334C 002DEFAC 54 A0 04 3E */ clrlwi r0, r5, 0x10 /* 802E3350 002DEFB0 38 A5 FF FF */ addi r5, r5, -1 /* 802E3354 002DEFB4 1C 00 00 0C */ mulli r0, r0, 0xc /* 802E3358 002DEFB8 7C 9E 02 14 */ add r4, r30, r0 /* 802E335C 002DEFBC 7C 7E 00 2E */ lwzx r3, r30, r0 /* 802E3360 002DEFC0 80 04 00 04 */ lwz r0, 4(r4) /* 802E3364 002DEFC4 90 64 00 0C */ stw r3, 0xc(r4) /* 802E3368 002DEFC8 90 04 00 10 */ stw r0, 0x10(r4) /* 802E336C 002DEFCC 80 04 00 08 */ lwz r0, 8(r4) /* 802E3370 002DEFD0 90 04 00 14 */ stw r0, 0x14(r4) /* 802E3374 002DEFD4 42 00 FF D8 */ bdnz lbl_802E334C lbl_802E3378: /* 802E3378 002DEFD8 A0 7E 00 08 */ lhz r3, 8(r30) /* 802E337C 002DEFDC 38 03 00 01 */ addi r0, r3, 1 /* 802E3380 002DEFE0 B0 1E 00 08 */ sth r0, 8(r30) /* 802E3384 002DEFE4 B3 3D 00 08 */ sth r25, 8(r29) /* 802E3388 002DEFE8 93 7D 00 00 */ stw r27, 0(r29) /* 802E338C 002DEFEC 9B 5D 00 0A */ stb r26, 0xa(r29) /* 802E3390 002DEFF0 80 DE 00 04 */ lwz r6, 4(r30) /* 802E3394 002DEFF4 7C 06 DA 14 */ add r0, r6, r27 /* 802E3398 002DEFF8 28 00 01 5E */ cmplwi r0, 0x15e /* 802E339C 002DEFFC 41 80 00 50 */ blt lbl_802E33EC /* 802E33A0 002DF000 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E33A4 002DF004 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E33A8 002DF008 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E33AC 002DF00C 28 00 00 02 */ cmplwi r0, 2 /* 802E33B0 002DF010 41 80 00 20 */ blt lbl_802E33D0 /* 802E33B4 002DF014 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E33B8 002DF018 3C 80 80 44 */ lis r4, lbl_80444FB0@ha /* 802E33BC 002DF01C 7F 65 DB 78 */ mr r5, r27 /* 802E33C0 002DF020 20 C6 01 5E */ subfic r6, r6, 0x15e /* 802E33C4 002DF024 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E33C8 002DF028 38 84 4F B0 */ addi r4, r4, lbl_80444FB0@l /* 802E33CC 002DF02C 4B FD 9B 75 */ bl LogMsg_2 lbl_802E33D0: /* 802E33D0 002DF030 80 1E 00 04 */ lwz r0, 4(r30) /* 802E33D4 002DF034 38 60 00 00 */ li r3, 0 /* 802E33D8 002DF038 23 60 01 5E */ subfic r27, r0, 0x15e /* 802E33DC 002DF03C 7C 7C D9 AE */ stbx r3, r28, r27 /* 802E33E0 002DF040 80 1E 00 04 */ lwz r0, 4(r30) /* 802E33E4 002DF044 20 00 01 5F */ subfic r0, r0, 0x15f /* 802E33E8 002DF048 7C 7C 01 AE */ stbx r3, r28, r0 lbl_802E33EC: /* 802E33EC 002DF04C 2C 1B 00 00 */ cmpwi r27, 0 /* 802E33F0 002DF050 41 82 00 40 */ beq lbl_802E3430 /* 802E33F4 002DF054 2C 1C 00 00 */ cmpwi r28, 0 /* 802E33F8 002DF058 41 82 00 38 */ beq lbl_802E3430 /* 802E33FC 002DF05C 80 1E 00 04 */ lwz r0, 4(r30) /* 802E3400 002DF060 7F 84 E3 78 */ mr r4, r28 /* 802E3404 002DF064 7F 65 DB 78 */ mr r5, r27 /* 802E3408 002DF068 7C 7E 02 14 */ add r3, r30, r0 /* 802E340C 002DF06C 38 63 01 38 */ addi r3, r3, 0x138 /* 802E3410 002DF070 4B D2 0B F1 */ bl memcpy /* 802E3414 002DF074 80 1E 00 04 */ lwz r0, 4(r30) /* 802E3418 002DF078 7C 7E 02 14 */ add r3, r30, r0 /* 802E341C 002DF07C 38 03 01 38 */ addi r0, r3, 0x138 /* 802E3420 002DF080 90 1D 00 04 */ stw r0, 4(r29) /* 802E3424 002DF084 80 1E 00 04 */ lwz r0, 4(r30) /* 802E3428 002DF088 7C 00 DA 14 */ add r0, r0, r27 /* 802E342C 002DF08C 90 1E 00 04 */ stw r0, 4(r30) lbl_802E3430: /* 802E3430 002DF090 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E3434 002DF094 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E3438 002DF098 80 03 12 1C */ lwz r0, 0x121c(r3) /* 802E343C 002DF09C 7C 18 00 40 */ cmplw r24, r0 /* 802E3440 002DF0A0 40 82 00 14 */ bne lbl_802E3454 /* 802E3444 002DF0A4 28 19 80 01 */ cmplwi r25, 0x8001 /* 802E3448 002DF0A8 40 82 00 0C */ bne lbl_802E3454 /* 802E344C 002DF0AC 38 00 00 01 */ li r0, 1 /* 802E3450 002DF0B0 98 03 12 20 */ stb r0, 0x1220(r3) lbl_802E3454: /* 802E3454 002DF0B4 38 60 00 01 */ li r3, 1 /* 802E3458 002DF0B8 48 00 00 1C */ b lbl_802E3474 lbl_802E345C: /* 802E345C 002DF0BC 38 A5 00 01 */ addi r5, r5, 1 /* 802E3460 002DF0C0 3B DE 02 98 */ addi r30, r30, 0x298 lbl_802E3464: /* 802E3464 002DF0C4 54 A0 04 3E */ clrlwi r0, r5, 0x10 /* 802E3468 002DF0C8 7C 00 48 40 */ cmplw r0, r9 /* 802E346C 002DF0CC 41 80 FC C8 */ blt lbl_802E3134 /* 802E3470 002DF0D0 38 60 00 00 */ li r3, 0 lbl_802E3474: /* 802E3474 002DF0D4 39 61 00 30 */ addi r11, r1, 0x30 /* 802E3478 002DF0D8 4B EE 3C ED */ bl _restgpr_23 /* 802E347C 002DF0DC 80 01 00 34 */ lwz r0, 0x34(r1) /* 802E3480 002DF0E0 7C 08 03 A6 */ mtlr r0 /* 802E3484 002DF0E4 38 21 00 30 */ addi r1, r1, 0x30 /* 802E3488 002DF0E8 4E 80 00 20 */ blr .global SDP_AddUuidSequence SDP_AddUuidSequence: /* 802E348C 002DF0EC 94 21 FF 40 */ stwu r1, -0xc0(r1) /* 802E3490 002DF0F0 7C 08 02 A6 */ mflr r0 /* 802E3494 002DF0F4 38 E0 00 00 */ li r7, 0 /* 802E3498 002DF0F8 90 01 00 C4 */ stw r0, 0xc4(r1) /* 802E349C 002DF0FC 93 E1 00 BC */ stw r31, 0xbc(r1) /* 802E34A0 002DF100 3B E1 00 08 */ addi r31, r1, 8 /* 802E34A4 002DF104 93 C1 00 B8 */ stw r30, 0xb8(r1) /* 802E34A8 002DF108 7C 9E 23 78 */ mr r30, r4 /* 802E34AC 002DF10C 38 80 00 19 */ li r4, 0x19 /* 802E34B0 002DF110 93 A1 00 B4 */ stw r29, 0xb4(r1) /* 802E34B4 002DF114 7C 7D 1B 78 */ mr r29, r3 /* 802E34B8 002DF118 7F E3 FB 78 */ mr r3, r31 /* 802E34BC 002DF11C 7C A9 03 A6 */ mtctr r5 /* 802E34C0 002DF120 28 05 00 00 */ cmplwi r5, 0 /* 802E34C4 002DF124 40 81 00 6C */ ble lbl_802E3530 lbl_802E34C8: /* 802E34C8 002DF128 98 9F 00 00 */ stb r4, 0(r31) /* 802E34CC 002DF12C A0 06 00 00 */ lhz r0, 0(r6) /* 802E34D0 002DF130 7C 00 46 70 */ srawi r0, r0, 8 /* 802E34D4 002DF134 98 1F 00 01 */ stb r0, 1(r31) /* 802E34D8 002DF138 A0 06 00 00 */ lhz r0, 0(r6) /* 802E34DC 002DF13C 98 1F 00 02 */ stb r0, 2(r31) /* 802E34E0 002DF140 3B FF 00 03 */ addi r31, r31, 3 /* 802E34E4 002DF144 7C 03 F8 50 */ subf r0, r3, r31 /* 802E34E8 002DF148 2C 00 00 4D */ cmpwi r0, 0x4d /* 802E34EC 002DF14C 40 81 00 38 */ ble lbl_802E3524 /* 802E34F0 002DF150 3C 60 80 57 */ lis r3, lbl_8056C840@ha /* 802E34F4 002DF154 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l /* 802E34F8 002DF158 88 03 46 30 */ lbz r0, 0x4630(r3) /* 802E34FC 002DF15C 28 00 00 02 */ cmplwi r0, 2 /* 802E3500 002DF160 41 80 00 30 */ blt lbl_802E3530 /* 802E3504 002DF164 3C 60 00 0A */ lis r3, 0x000A0001@ha /* 802E3508 002DF168 3C 80 80 44 */ lis r4, lbl_80444FEC@ha /* 802E350C 002DF16C 7C A6 2B 78 */ mr r6, r5 /* 802E3510 002DF170 54 E5 04 3E */ clrlwi r5, r7, 0x10 /* 802E3514 002DF174 38 63 00 01 */ addi r3, r3, 0x000A0001@l /* 802E3518 002DF178 38 84 4F EC */ addi r4, r4, lbl_80444FEC@l /* 802E351C 002DF17C 4B FD 9A 25 */ bl LogMsg_2 /* 802E3520 002DF180 48 00 00 10 */ b lbl_802E3530 lbl_802E3524: /* 802E3524 002DF184 38 E7 00 01 */ addi r7, r7, 1 /* 802E3528 002DF188 38 C6 00 02 */ addi r6, r6, 2 /* 802E352C 002DF18C 42 00 FF 9C */ bdnz lbl_802E34C8 lbl_802E3530: /* 802E3530 002DF190 38 E1 00 08 */ addi r7, r1, 8 /* 802E3534 002DF194 7F A3 EB 78 */ mr r3, r29 /* 802E3538 002DF198 7F C4 F3 78 */ mr r4, r30 /* 802E353C 002DF19C 38 A0 00 06 */ li r5, 6 /* 802E3540 002DF1A0 7C C7 F8 50 */ subf r6, r7, r31 /* 802E3544 002DF1A4 4B FF FB B1 */ bl SDP_AddAttribute /* 802E3548 002DF1A8 80 01 00 C4 */ lwz r0, 0xc4(r1) /* 802E354C 002DF1AC 83 E1 00 BC */ lwz r31, 0xbc(r1) /* 802E3550 002DF1B0 83 C1 00 B8 */ lwz r30, 0xb8(r1) /* 802E3554 002DF1B4 83 A1 00 B4 */ lwz r29, 0xb4(r1) /* 802E3558 002DF1B8 7C 08 03 A6 */ mtlr r0 /* 802E355C 002DF1BC 38 21 00 C0 */ addi r1, r1, 0xc0 /* 802E3560 002DF1C0 4E 80 00 20 */ blr .global SDP_AddServiceClassIdList SDP_AddServiceClassIdList: /* 802E3564 002DF1C4 94 21 FF 50 */ stwu r1, -0xb0(r1) /* 802E3568 002DF1C8 7C 08 02 A6 */ mflr r0 /* 802E356C 002DF1CC 2C 04 00 00 */ cmpwi r4, 0 /* 802E3570 002DF1D0 38 C0 00 00 */ li r6, 0 /* 802E3574 002DF1D4 90 01 00 B4 */ stw r0, 0xb4(r1) /* 802E3578 002DF1D8 39 01 00 08 */ addi r8, r1, 8 /* 802E357C 002DF1DC 41 82 01 40 */ beq lbl_802E36BC /* 802E3580 002DF1E0 28 04 00 08 */ cmplwi r4, 8 /* 802E3584 002DF1E4 3C E4 00 01 */ addis r7, r4, 1 /* 802E3588 002DF1E8 38 E7 FF F8 */ addi r7, r7, -8 /* 802E358C 002DF1EC 40 81 00 F0 */ ble lbl_802E367C /* 802E3590 002DF1F0 54 E9 04 3E */ clrlwi r9, r7, 0x10 /* 802E3594 002DF1F4 38 00 00 19 */ li r0, 0x19 /* 802E3598 002DF1F8 38 E9 00 07 */ addi r7, r9, 7 /* 802E359C 002DF1FC 54 E7 E8 FE */ srwi r7, r7, 3 /* 802E35A0 002DF200 7C E9 03 A6 */ mtctr r7 /* 802E35A4 002DF204 28 09 00 00 */ cmplwi r9, 0 /* 802E35A8 002DF208 40 81 00 D4 */ ble lbl_802E367C lbl_802E35AC: /* 802E35AC 002DF20C 98 08 00 00 */ stb r0, 0(r8) /* 802E35B0 002DF210 38 C6 00 08 */ addi r6, r6, 8 /* 802E35B4 002DF214 A0 E5 00 00 */ lhz r7, 0(r5) /* 802E35B8 002DF218 7C E7 46 70 */ srawi r7, r7, 8 /* 802E35BC 002DF21C 98 E8 00 01 */ stb r7, 1(r8) /* 802E35C0 002DF220 A0 E5 00 00 */ lhz r7, 0(r5) /* 802E35C4 002DF224 98 E8 00 02 */ stb r7, 2(r8) /* 802E35C8 002DF228 98 08 00 03 */ stb r0, 3(r8) /* 802E35CC 002DF22C A0 E5 00 02 */ lhz r7, 2(r5) /* 802E35D0 002DF230 7C E7 46 70 */ srawi r7, r7, 8 /* 802E35D4 002DF234 98 E8 00 04 */ stb r7, 4(r8) /* 802E35D8 002DF238 A0 E5 00 02 */ lhz r7, 2(r5) /* 802E35DC 002DF23C 98 E8 00 05 */ stb r7, 5(r8) /* 802E35E0 002DF240 98 08 00 06 */ stb r0, 6(r8) /* 802E35E4 002DF244 A0 E5 00 04 */ lhz r7, 4(r5) /* 802E35E8 002DF248 7C E7 46 70 */ srawi r7, r7, 8 /* 802E35EC 002DF24C 98 E8 00 07 */ stb r7, 7(r8) /* 802E35F0 002DF250 A0 E5 00 04 */ lhz r7, 4(r5) /* 802E35F4 002DF254 98 E8 00 08 */ stb r7, 8(r8) /* 802E35F8 002DF258 98 08 00 09 */ stb r0, 9(r8) /* 802E35FC 002DF25C A0 E5 00 06 */ lhz r7, 6(r5) /* 802E3600 002DF260 7C E7 46 70 */ srawi r7, r7, 8 /* 802E3604 002DF264 98 E8 00 0A */ stb r7, 0xa(r8) /* 802E3608 002DF268 A0 E5 00 06 */ lhz r7, 6(r5) /* 802E360C 002DF26C 98 E8 00 0B */ stb r7, 0xb(r8) /* 802E3610 002DF270 98 08 00 0C */ stb r0, 0xc(r8) /* 802E3614 002DF274 A0 E5 00 08 */ lhz r7, 8(r5) /* 802E3618 002DF278 7C E7 46 70 */ srawi r7, r7, 8 /* 802E361C 002DF27C 98 E8 00 0D */ stb r7, 0xd(r8) /* 802E3620 002DF280 A0 E5 00 08 */ lhz r7, 8(r5) /* 802E3624 002DF284 98 E8 00 0E */ stb r7, 0xe(r8) /* 802E3628 002DF288 98 08 00 0F */ stb r0, 0xf(r8) /* 802E362C 002DF28C A0 E5 00 0A */ lhz r7, 0xa(r5) /* 802E3630 002DF290 7C E7 46 70 */ srawi r7, r7, 8 /* 802E3634 002DF294 98 E8 00 10 */ stb r7, 0x10(r8) /* 802E3638 002DF298 A0 E5 00 0A */ lhz r7, 0xa(r5) /* 802E363C 002DF29C 98 E8 00 11 */ stb r7, 0x11(r8) /* 802E3640 002DF2A0 98 08 00 12 */ stb r0, 0x12(r8) /* 802E3644 002DF2A4 A0 E5 00 0C */ lhz r7, 0xc(r5) /* 802E3648 002DF2A8 7C E7 46 70 */ srawi r7, r7, 8 /* 802E364C 002DF2AC 98 E8 00 13 */ stb r7, 0x13(r8) /* 802E3650 002DF2B0 A0 E5 00 0C */ lhz r7, 0xc(r5) /* 802E3654 002DF2B4 98 E8 00 14 */ stb r7, 0x14(r8) /* 802E3658 002DF2B8 98 08 00 15 */ stb r0, 0x15(r8) /* 802E365C 002DF2BC A0 E5 00 0E */ lhz r7, 0xe(r5) /* 802E3660 002DF2C0 7C E7 46 70 */ srawi r7, r7, 8 /* 802E3664 002DF2C4 98 E8 00 16 */ stb r7, 0x16(r8) /* 802E3668 002DF2C8 A0 E5 00 0E */ lhz r7, 0xe(r5) /* 802E366C 002DF2CC 38 A5 00 10 */ addi r5, r5, 0x10 /* 802E3670 002DF2D0 98 E8 00 17 */ stb r7, 0x17(r8) /* 802E3674 002DF2D4 39 08 00 18 */ addi r8, r8, 0x18 /* 802E3678 002DF2D8 42 00 FF 34 */ bdnz lbl_802E35AC lbl_802E367C: /* 802E367C 002DF2DC 54 C7 04 3E */ clrlwi r7, r6, 0x10 /* 802E3680 002DF2E0 39 20 00 19 */ li r9, 0x19 /* 802E3684 002DF2E4 7C 07 20 50 */ subf r0, r7, r4 /* 802E3688 002DF2E8 7C 09 03 A6 */ mtctr r0 /* 802E368C 002DF2EC 7C 07 20 40 */ cmplw r7, r4 /* 802E3690 002DF2F0 40 80 00 2C */ bge lbl_802E36BC lbl_802E3694: /* 802E3694 002DF2F4 99 28 00 00 */ stb r9, 0(r8) /* 802E3698 002DF2F8 38 C6 00 01 */ addi r6, r6, 1 /* 802E369C 002DF2FC A0 05 00 00 */ lhz r0, 0(r5) /* 802E36A0 002DF300 7C 00 46 70 */ srawi r0, r0, 8 /* 802E36A4 002DF304 98 08 00 01 */ stb r0, 1(r8) /* 802E36A8 002DF308 A0 05 00 00 */ lhz r0, 0(r5) /* 802E36AC 002DF30C 38 A5 00 02 */ addi r5, r5, 2 /* 802E36B0 002DF310 98 08 00 02 */ stb r0, 2(r8) /* 802E36B4 002DF314 39 08 00 03 */ addi r8, r8, 3 /* 802E36B8 002DF318 42 00 FF DC */ bdnz lbl_802E3694 lbl_802E36BC: /* 802E36BC 002DF31C 38 E1 00 08 */ addi r7, r1, 8 /* 802E36C0 002DF320 38 80 00 01 */ li r4, 1 /* 802E36C4 002DF324 7C C7 40 50 */ subf r6, r7, r8 /* 802E36C8 002DF328 38 A0 00 06 */ li r5, 6 /* 802E36CC 002DF32C 4B FF FA 29 */ bl SDP_AddAttribute /* 802E36D0 002DF330 80 01 00 B4 */ lwz r0, 0xb4(r1) /* 802E36D4 002DF334 7C 08 03 A6 */ mtlr r0 /* 802E36D8 002DF338 38 21 00 B0 */ addi r1, r1, 0xb0 /* 802E36DC 002DF33C 4E 80 00 20 */ blr .global SDP_DeleteAttribute SDP_DeleteAttribute: /* 802E36E0 002DF340 94 21 FF D0 */ stwu r1, -0x30(r1) /* 802E36E4 002DF344 7C 08 02 A6 */ mflr r0 /* 802E36E8 002DF348 90 01 00 34 */ stw r0, 0x34(r1) /* 802E36EC 002DF34C 39 61 00 30 */ addi r11, r1, 0x30 /* 802E36F0 002DF350 4B EE 3A 31 */ bl _savegpr_25 /* 802E36F4 002DF354 3F 60 80 57 */ lis r27, lbl_8056C840@ha /* 802E36F8 002DF358 7C 79 1B 78 */ mr r25, r3 /* 802E36FC 002DF35C 3B 7B C8 40 */ addi r27, r27, lbl_8056C840@l /* 802E3700 002DF360 7C 9A 23 78 */ mr r26, r4 /* 802E3704 002DF364 3B FB 12 24 */ addi r31, r27, 0x1224 /* 802E3708 002DF368 38 60 00 00 */ li r3, 0 /* 802E370C 002DF36C 3F 80 00 0A */ lis r28, 0xa /* 802E3710 002DF370 3F A0 80 44 */ lis r29, 0x8044 /* 802E3714 002DF374 48 00 01 DC */ b lbl_802E38F0 lbl_802E3718: /* 802E3718 002DF378 80 1F 00 00 */ lwz r0, 0(r31) /* 802E371C 002DF37C 7C 00 C8 40 */ cmplw r0, r25 /* 802E3720 002DF380 40 82 01 C8 */ bne lbl_802E38E8 /* 802E3724 002DF384 88 1B 46 30 */ lbz r0, 0x4630(r27) /* 802E3728 002DF388 3B DF 00 0C */ addi r30, r31, 0xc /* 802E372C 002DF38C 28 00 00 03 */ cmplwi r0, 3 /* 802E3730 002DF390 41 80 00 18 */ blt lbl_802E3748 /* 802E3734 002DF394 7F 45 D3 78 */ mr r5, r26 /* 802E3738 002DF398 7F 26 CB 78 */ mr r6, r25 /* 802E373C 002DF39C 38 7C 00 02 */ addi r3, r28, 2 /* 802E3740 002DF3A0 38 9D 50 20 */ addi r4, r29, 0x5020 /* 802E3744 002DF3A4 4B FD 97 FD */ bl LogMsg_2 lbl_802E3748: /* 802E3748 002DF3A8 A0 9F 00 08 */ lhz r4, 8(r31) /* 802E374C 002DF3AC 38 60 00 00 */ li r3, 0 /* 802E3750 002DF3B0 48 00 01 8C */ b lbl_802E38DC lbl_802E3754: /* 802E3754 002DF3B4 A0 1E 00 08 */ lhz r0, 8(r30) /* 802E3758 002DF3B8 7C 00 D0 40 */ cmplw r0, r26 /* 802E375C 002DF3BC 40 82 01 78 */ bne lbl_802E38D4 /* 802E3760 002DF3C0 80 1E 00 00 */ lwz r0, 0(r30) /* 802E3764 002DF3C4 80 9E 00 04 */ lwz r4, 4(r30) /* 802E3768 002DF3C8 2C 00 00 00 */ cmpwi r0, 0 /* 802E376C 002DF3CC 41 82 00 40 */ beq lbl_802E37AC /* 802E3770 002DF3D0 38 E0 00 00 */ li r7, 0 /* 802E3774 002DF3D4 48 00 00 28 */ b lbl_802E379C lbl_802E3778: /* 802E3778 002DF3D8 54 E5 04 3E */ clrlwi r5, r7, 0x10 /* 802E377C 002DF3DC 1C A5 00 0C */ mulli r5, r5, 0xc /* 802E3780 002DF3E0 7C DF 2A 14 */ add r6, r31, r5 /* 802E3784 002DF3E4 80 A6 00 10 */ lwz r5, 0x10(r6) /* 802E3788 002DF3E8 7C 05 20 40 */ cmplw r5, r4 /* 802E378C 002DF3EC 40 81 00 0C */ ble lbl_802E3798 /* 802E3790 002DF3F0 7C A0 28 50 */ subf r5, r0, r5 /* 802E3794 002DF3F4 90 A6 00 10 */ stw r5, 0x10(r6) lbl_802E3798: /* 802E3798 002DF3F8 38 E7 00 01 */ addi r7, r7, 1 lbl_802E379C: /* 802E379C 002DF3FC A0 BF 00 08 */ lhz r5, 8(r31) /* 802E37A0 002DF400 54 E6 04 3E */ clrlwi r6, r7, 0x10 /* 802E37A4 002DF404 7C 06 28 40 */ cmplw r6, r5 /* 802E37A8 002DF408 41 80 FF D0 */ blt lbl_802E3778 lbl_802E37AC: /* 802E37AC 002DF40C A0 BF 00 08 */ lhz r5, 8(r31) /* 802E37B0 002DF410 38 A5 FF FF */ addi r5, r5, -1 /* 802E37B4 002DF414 B0 BF 00 08 */ sth r5, 8(r31) /* 802E37B8 002DF418 48 00 00 24 */ b lbl_802E37DC lbl_802E37BC: /* 802E37BC 002DF41C 80 DE 00 0C */ lwz r6, 0xc(r30) /* 802E37C0 002DF420 38 63 00 01 */ addi r3, r3, 1 /* 802E37C4 002DF424 80 BE 00 10 */ lwz r5, 0x10(r30) /* 802E37C8 002DF428 90 DE 00 00 */ stw r6, 0(r30) /* 802E37CC 002DF42C 90 BE 00 04 */ stw r5, 4(r30) /* 802E37D0 002DF430 80 BE 00 14 */ lwz r5, 0x14(r30) /* 802E37D4 002DF434 90 BE 00 08 */ stw r5, 8(r30) /* 802E37D8 002DF438 3B DE 00 0C */ addi r30, r30, 0xc lbl_802E37DC: /* 802E37DC 002DF43C A0 BF 00 08 */ lhz r5, 8(r31) /* 802E37E0 002DF440 54 66 04 3E */ clrlwi r6, r3, 0x10 /* 802E37E4 002DF444 7C 06 28 40 */ cmplw r6, r5 /* 802E37E8 002DF448 41 80 FF D4 */ blt lbl_802E37BC /* 802E37EC 002DF44C 2C 00 00 00 */ cmpwi r0, 0 /* 802E37F0 002DF450 41 82 00 DC */ beq lbl_802E38CC /* 802E37F4 002DF454 38 BF 01 38 */ addi r5, r31, 0x138 /* 802E37F8 002DF458 7C C4 02 14 */ add r6, r4, r0 /* 802E37FC 002DF45C 80 7F 00 04 */ lwz r3, 4(r31) /* 802E3800 002DF460 7C A5 30 50 */ subf r5, r5, r6 /* 802E3804 002DF464 38 E0 00 00 */ li r7, 0 /* 802E3808 002DF468 7C 65 18 50 */ subf r3, r5, r3 /* 802E380C 002DF46C 54 68 04 3F */ clrlwi. r8, r3, 0x10 /* 802E3810 002DF470 41 82 00 B0 */ beq lbl_802E38C0 /* 802E3814 002DF474 28 08 00 08 */ cmplwi r8, 8 /* 802E3818 002DF478 3C 68 00 01 */ addis r3, r8, 1 /* 802E381C 002DF47C 38 63 FF F8 */ addi r3, r3, -8 /* 802E3820 002DF480 40 81 00 70 */ ble lbl_802E3890 /* 802E3824 002DF484 54 65 04 3E */ clrlwi r5, r3, 0x10 /* 802E3828 002DF488 38 65 00 07 */ addi r3, r5, 7 /* 802E382C 002DF48C 54 63 E8 FE */ srwi r3, r3, 3 /* 802E3830 002DF490 7C 69 03 A6 */ mtctr r3 /* 802E3834 002DF494 28 05 00 00 */ cmplwi r5, 0 /* 802E3838 002DF498 40 81 00 58 */ ble lbl_802E3890 lbl_802E383C: /* 802E383C 002DF49C 88 66 00 00 */ lbz r3, 0(r6) /* 802E3840 002DF4A0 7C A4 02 14 */ add r5, r4, r0 /* 802E3844 002DF4A4 38 E7 00 08 */ addi r7, r7, 8 /* 802E3848 002DF4A8 38 C6 00 08 */ addi r6, r6, 8 /* 802E384C 002DF4AC 98 64 00 00 */ stb r3, 0(r4) /* 802E3850 002DF4B0 88 65 00 01 */ lbz r3, 1(r5) /* 802E3854 002DF4B4 98 64 00 01 */ stb r3, 1(r4) /* 802E3858 002DF4B8 88 65 00 02 */ lbz r3, 2(r5) /* 802E385C 002DF4BC 98 64 00 02 */ stb r3, 2(r4) /* 802E3860 002DF4C0 88 65 00 03 */ lbz r3, 3(r5) /* 802E3864 002DF4C4 98 64 00 03 */ stb r3, 3(r4) /* 802E3868 002DF4C8 88 65 00 04 */ lbz r3, 4(r5) /* 802E386C 002DF4CC 98 64 00 04 */ stb r3, 4(r4) /* 802E3870 002DF4D0 88 65 00 05 */ lbz r3, 5(r5) /* 802E3874 002DF4D4 98 64 00 05 */ stb r3, 5(r4) /* 802E3878 002DF4D8 88 65 00 06 */ lbz r3, 6(r5) /* 802E387C 002DF4DC 98 64 00 06 */ stb r3, 6(r4) /* 802E3880 002DF4E0 88 65 00 07 */ lbz r3, 7(r5) /* 802E3884 002DF4E4 98 64 00 07 */ stb r3, 7(r4) /* 802E3888 002DF4E8 38 84 00 08 */ addi r4, r4, 8 /* 802E388C 002DF4EC 42 00 FF B0 */ bdnz lbl_802E383C lbl_802E3890: /* 802E3890 002DF4F0 54 E6 04 3E */ clrlwi r6, r7, 0x10 /* 802E3894 002DF4F4 7C A0 22 14 */ add r5, r0, r4 /* 802E3898 002DF4F8 7C 66 40 50 */ subf r3, r6, r8 /* 802E389C 002DF4FC 7C 69 03 A6 */ mtctr r3 /* 802E38A0 002DF500 7C 06 40 40 */ cmplw r6, r8 /* 802E38A4 002DF504 40 80 00 1C */ bge lbl_802E38C0 lbl_802E38A8: /* 802E38A8 002DF508 88 65 00 00 */ lbz r3, 0(r5) /* 802E38AC 002DF50C 38 E7 00 01 */ addi r7, r7, 1 /* 802E38B0 002DF510 38 A5 00 01 */ addi r5, r5, 1 /* 802E38B4 002DF514 98 64 00 00 */ stb r3, 0(r4) /* 802E38B8 002DF518 38 84 00 01 */ addi r4, r4, 1 /* 802E38BC 002DF51C 42 00 FF EC */ bdnz lbl_802E38A8 lbl_802E38C0: /* 802E38C0 002DF520 80 7F 00 04 */ lwz r3, 4(r31) /* 802E38C4 002DF524 7C 00 18 50 */ subf r0, r0, r3 /* 802E38C8 002DF528 90 1F 00 04 */ stw r0, 4(r31) lbl_802E38CC: /* 802E38CC 002DF52C 38 60 00 01 */ li r3, 1 /* 802E38D0 002DF530 48 00 00 34 */ b lbl_802E3904 lbl_802E38D4: /* 802E38D4 002DF534 38 63 00 01 */ addi r3, r3, 1 /* 802E38D8 002DF538 3B DE 00 0C */ addi r30, r30, 0xc lbl_802E38DC: /* 802E38DC 002DF53C 54 60 04 3E */ clrlwi r0, r3, 0x10 /* 802E38E0 002DF540 7C 00 20 40 */ cmplw r0, r4 /* 802E38E4 002DF544 41 80 FE 70 */ blt lbl_802E3754 lbl_802E38E8: /* 802E38E8 002DF548 38 63 00 01 */ addi r3, r3, 1 /* 802E38EC 002DF54C 3B FF 02 98 */ addi r31, r31, 0x298 lbl_802E38F0: /* 802E38F0 002DF550 A0 1B 12 22 */ lhz r0, 0x1222(r27) /* 802E38F4 002DF554 54 64 04 3E */ clrlwi r4, r3, 0x10 /* 802E38F8 002DF558 7C 04 00 40 */ cmplw r4, r0 /* 802E38FC 002DF55C 41 80 FE 1C */ blt lbl_802E3718 /* 802E3900 002DF560 38 60 00 00 */ li r3, 0 lbl_802E3904: /* 802E3904 002DF564 39 61 00 30 */ addi r11, r1, 0x30 /* 802E3908 002DF568 4B EE 38 65 */ bl _restgpr_25 /* 802E390C 002DF56C 80 01 00 34 */ lwz r0, 0x34(r1) /* 802E3910 002DF570 7C 08 03 A6 */ mtlr r0 /* 802E3914 002DF574 38 21 00 30 */ addi r1, r1, 0x30 /* 802E3918 002DF578 4E 80 00 20 */ blr