1044 lines
49 KiB
ArmAsm
1044 lines
49 KiB
ArmAsm
.include "macros.inc"
|
|
|
|
.section .text, "ax" # 0x80006A00 - 0x80406260
|
|
.global SDP_InitDiscoveryDb
|
|
SDP_InitDiscoveryDb:
|
|
/* 8009C790 000985D0 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8009C794 000985D4 7C 08 02 A6 */ mflr r0
|
|
/* 8009C798 000985D8 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 8009C79C 000985DC 39 61 00 20 */ addi r11, r1, 0x20
|
|
/* 8009C7A0 000985E0 4B F6 AB 99 */ bl func_80007338
|
|
/* 8009C7A4 000985E4 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009C7A8 000985E8 7C 7B 1B 78 */ mr r27, r3
|
|
/* 8009C7AC 000985EC 7C 9A 23 78 */ mr r26, r4
|
|
/* 8009C7B0 000985F0 7C BC 2B 78 */ mr r28, r5
|
|
/* 8009C7B4 000985F4 7C DD 33 78 */ mr r29, r6
|
|
/* 8009C7B8 000985F8 7C FE 3B 78 */ mr r30, r7
|
|
/* 8009C7BC 000985FC 7D 1F 43 78 */ mr r31, r8
|
|
/* 8009C7C0 00098600 41 82 00 1C */ beq lbl_8009C7DC
|
|
/* 8009C7C4 00098604 28 04 00 6C */ cmplwi r4, 0x6c
|
|
/* 8009C7C8 00098608 41 80 00 14 */ blt lbl_8009C7DC
|
|
/* 8009C7CC 0009860C 28 07 00 0C */ cmplwi r7, 0xc
|
|
/* 8009C7D0 00098610 41 81 00 0C */ bgt lbl_8009C7DC
|
|
/* 8009C7D4 00098614 28 05 00 03 */ cmplwi r5, 3
|
|
/* 8009C7D8 00098618 40 81 00 40 */ ble lbl_8009C818
|
|
lbl_8009C7DC:
|
|
/* 8009C7DC 0009861C 3C 60 80 50 */ lis r3, sdp_cb@ha
|
|
/* 8009C7E0 00098620 38 63 9C 20 */ addi r3, r3, sdp_cb@l
|
|
/* 8009C7E4 00098624 88 03 46 30 */ lbz r0, 0x4630(r3)
|
|
/* 8009C7E8 00098628 28 00 00 01 */ cmplwi r0, 1
|
|
/* 8009C7EC 0009862C 41 80 00 24 */ blt lbl_8009C810
|
|
/* 8009C7F0 00098630 3C 80 80 44 */ lis r4, $$21415@ha
|
|
/* 8009C7F4 00098634 7F 65 DB 78 */ mr r5, r27
|
|
/* 8009C7F8 00098638 7F 46 D3 78 */ mr r6, r26
|
|
/* 8009C7FC 0009863C 7F 87 E3 78 */ mr r7, r28
|
|
/* 8009C800 00098640 7F C8 F3 78 */ mr r8, r30
|
|
/* 8009C804 00098644 38 84 F9 50 */ addi r4, r4, $$21415@l
|
|
/* 8009C808 00098648 3C 60 00 0A */ lis r3, 0xa
|
|
/* 8009C80C 0009864C 4B FD B1 55 */ bl LogMsg_0
|
|
lbl_8009C810:
|
|
/* 8009C810 00098650 38 60 00 00 */ li r3, 0
|
|
/* 8009C814 00098654 48 00 02 DC */ b lbl_8009CAF0
|
|
lbl_8009C818:
|
|
/* 8009C818 00098658 7F 45 D3 78 */ mr r5, r26
|
|
/* 8009C81C 0009865C 38 80 00 00 */ li r4, 0
|
|
/* 8009C820 00098660 4B F6 7B 31 */ bl memset
|
|
/* 8009C824 00098664 38 BA FF 94 */ addi r5, r26, -108
|
|
/* 8009C828 00098668 38 1B 00 6C */ addi r0, r27, 0x6c
|
|
/* 8009C82C 0009866C 38 60 00 00 */ li r3, 0
|
|
/* 8009C830 00098670 2C 1C 00 00 */ cmpwi r28, 0
|
|
/* 8009C834 00098674 90 BB 00 00 */ stw r5, 0(r27)
|
|
/* 8009C838 00098678 38 80 00 00 */ li r4, 0
|
|
/* 8009C83C 0009867C 90 BB 00 04 */ stw r5, 4(r27)
|
|
/* 8009C840 00098680 90 7B 00 08 */ stw r3, 8(r27)
|
|
/* 8009C844 00098684 90 1B 00 68 */ stw r0, 0x68(r27)
|
|
/* 8009C848 00098688 41 82 01 D8 */ beq lbl_8009CA20
|
|
/* 8009C84C 0009868C 28 1C 00 08 */ cmplwi r28, 8
|
|
/* 8009C850 00098690 3C 7C 00 01 */ addis r3, r28, 1
|
|
/* 8009C854 00098694 38 63 FF F8 */ addi r3, r3, -8
|
|
/* 8009C858 00098698 40 81 01 74 */ ble lbl_8009C9CC
|
|
/* 8009C85C 0009869C 54 63 04 3E */ clrlwi r3, r3, 0x10
|
|
/* 8009C860 000986A0 38 03 00 07 */ addi r0, r3, 7
|
|
/* 8009C864 000986A4 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8009C868 000986A8 7C 09 03 A6 */ mtctr r0
|
|
/* 8009C86C 000986AC 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8009C870 000986B0 40 81 01 5C */ ble lbl_8009C9CC
|
|
lbl_8009C874:
|
|
/* 8009C874 000986B4 54 80 04 3E */ clrlwi r0, r4, 0x10
|
|
/* 8009C878 000986B8 80 BD 00 00 */ lwz r5, 0(r29)
|
|
/* 8009C87C 000986BC 1C 60 00 14 */ mulli r3, r0, 0x14
|
|
/* 8009C880 000986C0 80 1D 00 04 */ lwz r0, 4(r29)
|
|
/* 8009C884 000986C4 38 84 00 08 */ addi r4, r4, 8
|
|
/* 8009C888 000986C8 7C 7B 1A 14 */ add r3, r27, r3
|
|
/* 8009C88C 000986CC 90 A3 00 10 */ stw r5, 0x10(r3)
|
|
/* 8009C890 000986D0 90 03 00 14 */ stw r0, 0x14(r3)
|
|
/* 8009C894 000986D4 80 BD 00 08 */ lwz r5, 8(r29)
|
|
/* 8009C898 000986D8 80 1D 00 0C */ lwz r0, 0xc(r29)
|
|
/* 8009C89C 000986DC 90 A3 00 18 */ stw r5, 0x18(r3)
|
|
/* 8009C8A0 000986E0 90 03 00 1C */ stw r0, 0x1c(r3)
|
|
/* 8009C8A4 000986E4 80 1D 00 10 */ lwz r0, 0x10(r29)
|
|
/* 8009C8A8 000986E8 90 03 00 20 */ stw r0, 0x20(r3)
|
|
/* 8009C8AC 000986EC 80 BD 00 14 */ lwz r5, 0x14(r29)
|
|
/* 8009C8B0 000986F0 80 1D 00 18 */ lwz r0, 0x18(r29)
|
|
/* 8009C8B4 000986F4 90 A3 00 24 */ stw r5, 0x24(r3)
|
|
/* 8009C8B8 000986F8 90 03 00 28 */ stw r0, 0x28(r3)
|
|
/* 8009C8BC 000986FC 80 BD 00 1C */ lwz r5, 0x1c(r29)
|
|
/* 8009C8C0 00098700 80 1D 00 20 */ lwz r0, 0x20(r29)
|
|
/* 8009C8C4 00098704 90 A3 00 2C */ stw r5, 0x2c(r3)
|
|
/* 8009C8C8 00098708 90 03 00 30 */ stw r0, 0x30(r3)
|
|
/* 8009C8CC 0009870C 80 1D 00 24 */ lwz r0, 0x24(r29)
|
|
/* 8009C8D0 00098710 90 03 00 34 */ stw r0, 0x34(r3)
|
|
/* 8009C8D4 00098714 80 BD 00 28 */ lwz r5, 0x28(r29)
|
|
/* 8009C8D8 00098718 80 1D 00 2C */ lwz r0, 0x2c(r29)
|
|
/* 8009C8DC 0009871C 90 A3 00 38 */ stw r5, 0x38(r3)
|
|
/* 8009C8E0 00098720 90 03 00 3C */ stw r0, 0x3c(r3)
|
|
/* 8009C8E4 00098724 80 BD 00 30 */ lwz r5, 0x30(r29)
|
|
/* 8009C8E8 00098728 80 1D 00 34 */ lwz r0, 0x34(r29)
|
|
/* 8009C8EC 0009872C 90 A3 00 40 */ stw r5, 0x40(r3)
|
|
/* 8009C8F0 00098730 90 03 00 44 */ stw r0, 0x44(r3)
|
|
/* 8009C8F4 00098734 80 1D 00 38 */ lwz r0, 0x38(r29)
|
|
/* 8009C8F8 00098738 90 03 00 48 */ stw r0, 0x48(r3)
|
|
/* 8009C8FC 0009873C 80 BD 00 3C */ lwz r5, 0x3c(r29)
|
|
/* 8009C900 00098740 80 1D 00 40 */ lwz r0, 0x40(r29)
|
|
/* 8009C904 00098744 90 A3 00 4C */ stw r5, 0x4c(r3)
|
|
/* 8009C908 00098748 90 03 00 50 */ stw r0, 0x50(r3)
|
|
/* 8009C90C 0009874C 80 BD 00 44 */ lwz r5, 0x44(r29)
|
|
/* 8009C910 00098750 80 1D 00 48 */ lwz r0, 0x48(r29)
|
|
/* 8009C914 00098754 90 A3 00 54 */ stw r5, 0x54(r3)
|
|
/* 8009C918 00098758 90 03 00 58 */ stw r0, 0x58(r3)
|
|
/* 8009C91C 0009875C 80 1D 00 4C */ lwz r0, 0x4c(r29)
|
|
/* 8009C920 00098760 90 03 00 5C */ stw r0, 0x5c(r3)
|
|
/* 8009C924 00098764 80 BD 00 50 */ lwz r5, 0x50(r29)
|
|
/* 8009C928 00098768 80 1D 00 54 */ lwz r0, 0x54(r29)
|
|
/* 8009C92C 0009876C 90 A3 00 60 */ stw r5, 0x60(r3)
|
|
/* 8009C930 00098770 90 03 00 64 */ stw r0, 0x64(r3)
|
|
/* 8009C934 00098774 80 BD 00 58 */ lwz r5, 0x58(r29)
|
|
/* 8009C938 00098778 80 1D 00 5C */ lwz r0, 0x5c(r29)
|
|
/* 8009C93C 0009877C 90 A3 00 68 */ stw r5, 0x68(r3)
|
|
/* 8009C940 00098780 90 03 00 6C */ stw r0, 0x6c(r3)
|
|
/* 8009C944 00098784 80 1D 00 60 */ lwz r0, 0x60(r29)
|
|
/* 8009C948 00098788 90 03 00 70 */ stw r0, 0x70(r3)
|
|
/* 8009C94C 0009878C 80 BD 00 64 */ lwz r5, 0x64(r29)
|
|
/* 8009C950 00098790 80 1D 00 68 */ lwz r0, 0x68(r29)
|
|
/* 8009C954 00098794 90 A3 00 74 */ stw r5, 0x74(r3)
|
|
/* 8009C958 00098798 90 03 00 78 */ stw r0, 0x78(r3)
|
|
/* 8009C95C 0009879C 80 BD 00 6C */ lwz r5, 0x6c(r29)
|
|
/* 8009C960 000987A0 80 1D 00 70 */ lwz r0, 0x70(r29)
|
|
/* 8009C964 000987A4 90 A3 00 7C */ stw r5, 0x7c(r3)
|
|
/* 8009C968 000987A8 90 03 00 80 */ stw r0, 0x80(r3)
|
|
/* 8009C96C 000987AC 80 1D 00 74 */ lwz r0, 0x74(r29)
|
|
/* 8009C970 000987B0 90 03 00 84 */ stw r0, 0x84(r3)
|
|
/* 8009C974 000987B4 80 BD 00 78 */ lwz r5, 0x78(r29)
|
|
/* 8009C978 000987B8 80 1D 00 7C */ lwz r0, 0x7c(r29)
|
|
/* 8009C97C 000987BC 90 A3 00 88 */ stw r5, 0x88(r3)
|
|
/* 8009C980 000987C0 90 03 00 8C */ stw r0, 0x8c(r3)
|
|
/* 8009C984 000987C4 80 BD 00 80 */ lwz r5, 0x80(r29)
|
|
/* 8009C988 000987C8 80 1D 00 84 */ lwz r0, 0x84(r29)
|
|
/* 8009C98C 000987CC 90 A3 00 90 */ stw r5, 0x90(r3)
|
|
/* 8009C990 000987D0 90 03 00 94 */ stw r0, 0x94(r3)
|
|
/* 8009C994 000987D4 80 1D 00 88 */ lwz r0, 0x88(r29)
|
|
/* 8009C998 000987D8 90 03 00 98 */ stw r0, 0x98(r3)
|
|
/* 8009C99C 000987DC 80 BD 00 8C */ lwz r5, 0x8c(r29)
|
|
/* 8009C9A0 000987E0 80 1D 00 90 */ lwz r0, 0x90(r29)
|
|
/* 8009C9A4 000987E4 90 A3 00 9C */ stw r5, 0x9c(r3)
|
|
/* 8009C9A8 000987E8 90 03 00 A0 */ stw r0, 0xa0(r3)
|
|
/* 8009C9AC 000987EC 80 BD 00 94 */ lwz r5, 0x94(r29)
|
|
/* 8009C9B0 000987F0 80 1D 00 98 */ lwz r0, 0x98(r29)
|
|
/* 8009C9B4 000987F4 90 A3 00 A4 */ stw r5, 0xa4(r3)
|
|
/* 8009C9B8 000987F8 90 03 00 A8 */ stw r0, 0xa8(r3)
|
|
/* 8009C9BC 000987FC 80 1D 00 9C */ lwz r0, 0x9c(r29)
|
|
/* 8009C9C0 00098800 3B BD 00 A0 */ addi r29, r29, 0xa0
|
|
/* 8009C9C4 00098804 90 03 00 AC */ stw r0, 0xac(r3)
|
|
/* 8009C9C8 00098808 42 00 FE AC */ bdnz lbl_8009C874
|
|
lbl_8009C9CC:
|
|
/* 8009C9CC 0009880C 54 83 04 3E */ clrlwi r3, r4, 0x10
|
|
/* 8009C9D0 00098810 7C 03 E0 50 */ subf r0, r3, r28
|
|
/* 8009C9D4 00098814 7C 09 03 A6 */ mtctr r0
|
|
/* 8009C9D8 00098818 7C 03 E0 40 */ cmplw r3, r28
|
|
/* 8009C9DC 0009881C 40 80 00 44 */ bge lbl_8009CA20
|
|
lbl_8009C9E0:
|
|
/* 8009C9E0 00098820 54 80 04 3E */ clrlwi r0, r4, 0x10
|
|
/* 8009C9E4 00098824 80 7D 00 00 */ lwz r3, 0(r29)
|
|
/* 8009C9E8 00098828 1C A0 00 14 */ mulli r5, r0, 0x14
|
|
/* 8009C9EC 0009882C 80 1D 00 04 */ lwz r0, 4(r29)
|
|
/* 8009C9F0 00098830 38 84 00 01 */ addi r4, r4, 1
|
|
/* 8009C9F4 00098834 7C BB 2A 14 */ add r5, r27, r5
|
|
/* 8009C9F8 00098838 90 65 00 10 */ stw r3, 0x10(r5)
|
|
/* 8009C9FC 0009883C 90 05 00 14 */ stw r0, 0x14(r5)
|
|
/* 8009CA00 00098840 80 7D 00 08 */ lwz r3, 8(r29)
|
|
/* 8009CA04 00098844 80 1D 00 0C */ lwz r0, 0xc(r29)
|
|
/* 8009CA08 00098848 90 65 00 18 */ stw r3, 0x18(r5)
|
|
/* 8009CA0C 0009884C 90 05 00 1C */ stw r0, 0x1c(r5)
|
|
/* 8009CA10 00098850 80 1D 00 10 */ lwz r0, 0x10(r29)
|
|
/* 8009CA14 00098854 3B BD 00 14 */ addi r29, r29, 0x14
|
|
/* 8009CA18 00098858 90 05 00 20 */ stw r0, 0x20(r5)
|
|
/* 8009CA1C 0009885C 42 00 FF C4 */ bdnz lbl_8009C9E0
|
|
lbl_8009CA20:
|
|
/* 8009CA20 00098860 2C 1E 00 00 */ cmpwi r30, 0
|
|
/* 8009CA24 00098864 B3 9B 00 0C */ sth r28, 0xc(r27)
|
|
/* 8009CA28 00098868 38 A0 00 00 */ li r5, 0
|
|
/* 8009CA2C 0009886C 41 82 00 B0 */ beq lbl_8009CADC
|
|
/* 8009CA30 00098870 28 1E 00 08 */ cmplwi r30, 8
|
|
/* 8009CA34 00098874 3C 7E 00 01 */ addis r3, r30, 1
|
|
/* 8009CA38 00098878 38 63 FF F8 */ addi r3, r3, -8
|
|
/* 8009CA3C 0009887C 40 81 00 70 */ ble lbl_8009CAAC
|
|
/* 8009CA40 00098880 54 63 04 3E */ clrlwi r3, r3, 0x10
|
|
/* 8009CA44 00098884 38 03 00 07 */ addi r0, r3, 7
|
|
/* 8009CA48 00098888 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8009CA4C 0009888C 7C 09 03 A6 */ mtctr r0
|
|
/* 8009CA50 00098890 28 03 00 00 */ cmplwi r3, 0
|
|
/* 8009CA54 00098894 40 81 00 58 */ ble lbl_8009CAAC
|
|
lbl_8009CA58:
|
|
/* 8009CA58 00098898 54 A3 0B FC */ rlwinm r3, r5, 1, 0xf, 0x1e
|
|
/* 8009CA5C 0009889C A0 1F 00 00 */ lhz r0, 0(r31)
|
|
/* 8009CA60 000988A0 7C 7B 1A 14 */ add r3, r27, r3
|
|
/* 8009CA64 000988A4 38 A5 00 08 */ addi r5, r5, 8
|
|
/* 8009CA68 000988A8 B0 03 00 4E */ sth r0, 0x4e(r3)
|
|
/* 8009CA6C 000988AC A0 1F 00 02 */ lhz r0, 2(r31)
|
|
/* 8009CA70 000988B0 B0 03 00 50 */ sth r0, 0x50(r3)
|
|
/* 8009CA74 000988B4 A0 1F 00 04 */ lhz r0, 4(r31)
|
|
/* 8009CA78 000988B8 B0 03 00 52 */ sth r0, 0x52(r3)
|
|
/* 8009CA7C 000988BC A0 1F 00 06 */ lhz r0, 6(r31)
|
|
/* 8009CA80 000988C0 B0 03 00 54 */ sth r0, 0x54(r3)
|
|
/* 8009CA84 000988C4 A0 1F 00 08 */ lhz r0, 8(r31)
|
|
/* 8009CA88 000988C8 B0 03 00 56 */ sth r0, 0x56(r3)
|
|
/* 8009CA8C 000988CC A0 1F 00 0A */ lhz r0, 0xa(r31)
|
|
/* 8009CA90 000988D0 B0 03 00 58 */ sth r0, 0x58(r3)
|
|
/* 8009CA94 000988D4 A0 1F 00 0C */ lhz r0, 0xc(r31)
|
|
/* 8009CA98 000988D8 B0 03 00 5A */ sth r0, 0x5a(r3)
|
|
/* 8009CA9C 000988DC A0 1F 00 0E */ lhz r0, 0xe(r31)
|
|
/* 8009CAA0 000988E0 3B FF 00 10 */ addi r31, r31, 0x10
|
|
/* 8009CAA4 000988E4 B0 03 00 5C */ sth r0, 0x5c(r3)
|
|
/* 8009CAA8 000988E8 42 00 FF B0 */ bdnz lbl_8009CA58
|
|
lbl_8009CAAC:
|
|
/* 8009CAAC 000988EC 54 A3 04 3E */ clrlwi r3, r5, 0x10
|
|
/* 8009CAB0 000988F0 7C 03 F0 50 */ subf r0, r3, r30
|
|
/* 8009CAB4 000988F4 7C 09 03 A6 */ mtctr r0
|
|
/* 8009CAB8 000988F8 7C 03 F0 40 */ cmplw r3, r30
|
|
/* 8009CABC 000988FC 40 80 00 20 */ bge lbl_8009CADC
|
|
lbl_8009CAC0:
|
|
/* 8009CAC0 00098900 54 A0 0B FC */ rlwinm r0, r5, 1, 0xf, 0x1e
|
|
/* 8009CAC4 00098904 A0 9F 00 00 */ lhz r4, 0(r31)
|
|
/* 8009CAC8 00098908 7C 7B 02 14 */ add r3, r27, r0
|
|
/* 8009CACC 0009890C 38 A5 00 01 */ addi r5, r5, 1
|
|
/* 8009CAD0 00098910 B0 83 00 4E */ sth r4, 0x4e(r3)
|
|
/* 8009CAD4 00098914 3B FF 00 02 */ addi r31, r31, 2
|
|
/* 8009CAD8 00098918 42 00 FF E8 */ bdnz lbl_8009CAC0
|
|
lbl_8009CADC:
|
|
/* 8009CADC 0009891C 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009CAE0 00098920 7F 64 DB 78 */ mr r4, r27
|
|
/* 8009CAE4 00098924 48 00 52 C5 */ bl sdpu_sort_attr_list
|
|
/* 8009CAE8 00098928 B3 DB 00 4C */ sth r30, 0x4c(r27)
|
|
/* 8009CAEC 0009892C 38 60 00 01 */ li r3, 1
|
|
lbl_8009CAF0:
|
|
/* 8009CAF0 00098930 39 61 00 20 */ addi r11, r1, 0x20
|
|
/* 8009CAF4 00098934 4B F6 A8 91 */ bl func_80007384
|
|
/* 8009CAF8 00098938 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8009CAFC 0009893C 7C 08 03 A6 */ mtlr r0
|
|
/* 8009CB00 00098940 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8009CB04 00098944 4E 80 00 20 */ blr
|
|
|
|
.global SDP_ServiceSearchRequest
|
|
SDP_ServiceSearchRequest:
|
|
/* 8009CB08 00098948 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8009CB0C 0009894C 7C 08 02 A6 */ mflr r0
|
|
/* 8009CB10 00098950 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8009CB14 00098954 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8009CB18 00098958 7C BF 2B 78 */ mr r31, r5
|
|
/* 8009CB1C 0009895C 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8009CB20 00098960 7C 9E 23 78 */ mr r30, r4
|
|
/* 8009CB24 00098964 48 00 32 91 */ bl sdp_conn_originate
|
|
/* 8009CB28 00098968 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009CB2C 0009896C 40 82 00 0C */ bne lbl_8009CB38
|
|
/* 8009CB30 00098970 38 60 00 00 */ li r3, 0
|
|
/* 8009CB34 00098974 48 00 00 18 */ b lbl_8009CB4C
|
|
lbl_8009CB38:
|
|
/* 8009CB38 00098978 38 00 00 00 */ li r0, 0
|
|
/* 8009CB3C 0009897C 98 03 04 74 */ stb r0, 0x474(r3)
|
|
/* 8009CB40 00098980 93 C3 04 10 */ stw r30, 0x410(r3)
|
|
/* 8009CB44 00098984 93 E3 04 14 */ stw r31, 0x414(r3)
|
|
/* 8009CB48 00098988 38 60 00 01 */ li r3, 1
|
|
lbl_8009CB4C:
|
|
/* 8009CB4C 0009898C 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8009CB50 00098990 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8009CB54 00098994 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8009CB58 00098998 7C 08 03 A6 */ mtlr r0
|
|
/* 8009CB5C 0009899C 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8009CB60 000989A0 4E 80 00 20 */ blr
|
|
|
|
.global SDP_ServiceSearchAttributeRequest
|
|
SDP_ServiceSearchAttributeRequest:
|
|
/* 8009CB64 000989A4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
|
/* 8009CB68 000989A8 7C 08 02 A6 */ mflr r0
|
|
/* 8009CB6C 000989AC 90 01 00 14 */ stw r0, 0x14(r1)
|
|
/* 8009CB70 000989B0 93 E1 00 0C */ stw r31, 0xc(r1)
|
|
/* 8009CB74 000989B4 7C BF 2B 78 */ mr r31, r5
|
|
/* 8009CB78 000989B8 93 C1 00 08 */ stw r30, 8(r1)
|
|
/* 8009CB7C 000989BC 7C 9E 23 78 */ mr r30, r4
|
|
/* 8009CB80 000989C0 48 00 32 35 */ bl sdp_conn_originate
|
|
/* 8009CB84 000989C4 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009CB88 000989C8 40 82 00 0C */ bne lbl_8009CB94
|
|
/* 8009CB8C 000989CC 38 60 00 00 */ li r3, 0
|
|
/* 8009CB90 000989D0 48 00 00 20 */ b lbl_8009CBB0
|
|
lbl_8009CB94:
|
|
/* 8009CB94 000989D4 38 80 00 00 */ li r4, 0
|
|
/* 8009CB98 000989D8 38 00 00 01 */ li r0, 1
|
|
/* 8009CB9C 000989DC 98 83 04 74 */ stb r4, 0x474(r3)
|
|
/* 8009CBA0 000989E0 93 C3 04 10 */ stw r30, 0x410(r3)
|
|
/* 8009CBA4 000989E4 93 E3 04 14 */ stw r31, 0x414(r3)
|
|
/* 8009CBA8 000989E8 98 03 04 75 */ stb r0, 0x475(r3)
|
|
/* 8009CBAC 000989EC 38 60 00 01 */ li r3, 1
|
|
lbl_8009CBB0:
|
|
/* 8009CBB0 000989F0 80 01 00 14 */ lwz r0, 0x14(r1)
|
|
/* 8009CBB4 000989F4 83 E1 00 0C */ lwz r31, 0xc(r1)
|
|
/* 8009CBB8 000989F8 83 C1 00 08 */ lwz r30, 8(r1)
|
|
/* 8009CBBC 000989FC 7C 08 03 A6 */ mtlr r0
|
|
/* 8009CBC0 00098A00 38 21 00 10 */ addi r1, r1, 0x10
|
|
/* 8009CBC4 00098A04 4E 80 00 20 */ blr
|
|
|
|
.global SDP_FindAttributeInRec
|
|
SDP_FindAttributeInRec:
|
|
/* 8009CBC8 00098A08 80 63 00 00 */ lwz r3, 0(r3)
|
|
/* 8009CBCC 00098A0C 48 00 00 14 */ b lbl_8009CBE0
|
|
lbl_8009CBD0:
|
|
/* 8009CBD0 00098A10 A0 03 00 04 */ lhz r0, 4(r3)
|
|
/* 8009CBD4 00098A14 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8009CBD8 00098A18 4D 82 00 20 */ beqlr
|
|
/* 8009CBDC 00098A1C 80 63 00 00 */ lwz r3, 0(r3)
|
|
lbl_8009CBE0:
|
|
/* 8009CBE0 00098A20 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009CBE4 00098A24 40 82 FF EC */ bne lbl_8009CBD0
|
|
/* 8009CBE8 00098A28 38 60 00 00 */ li r3, 0
|
|
/* 8009CBEC 00098A2C 4E 80 00 20 */ blr
|
|
|
|
.global SDP_FindServiceInDb
|
|
SDP_FindServiceInDb:
|
|
/* 8009CBF0 00098A30 2C 05 00 00 */ cmpwi r5, 0
|
|
/* 8009CBF4 00098A34 40 82 00 0C */ bne lbl_8009CC00
|
|
/* 8009CBF8 00098A38 80 63 00 08 */ lwz r3, 8(r3)
|
|
/* 8009CBFC 00098A3C 48 00 00 B0 */ b lbl_8009CCAC
|
|
lbl_8009CC00:
|
|
/* 8009CC00 00098A40 80 65 00 04 */ lwz r3, 4(r5)
|
|
/* 8009CC04 00098A44 48 00 00 A8 */ b lbl_8009CCAC
|
|
lbl_8009CC08:
|
|
/* 8009CC08 00098A48 80 C3 00 00 */ lwz r6, 0(r3)
|
|
/* 8009CC0C 00098A4C 48 00 00 94 */ b lbl_8009CCA0
|
|
lbl_8009CC10:
|
|
/* 8009CC10 00098A50 A0 A6 00 04 */ lhz r5, 4(r6)
|
|
/* 8009CC14 00098A54 28 05 00 01 */ cmplwi r5, 1
|
|
/* 8009CC18 00098A58 40 82 00 54 */ bne lbl_8009CC6C
|
|
/* 8009CC1C 00098A5C A0 06 00 06 */ lhz r0, 6(r6)
|
|
/* 8009CC20 00098A60 7C 00 66 70 */ srawi r0, r0, 0xc
|
|
/* 8009CC24 00098A64 2C 00 00 06 */ cmpwi r0, 6
|
|
/* 8009CC28 00098A68 40 82 00 44 */ bne lbl_8009CC6C
|
|
/* 8009CC2C 00098A6C 80 C6 00 08 */ lwz r6, 8(r6)
|
|
/* 8009CC30 00098A70 48 00 00 30 */ b lbl_8009CC60
|
|
lbl_8009CC34:
|
|
/* 8009CC34 00098A74 A0 A6 00 06 */ lhz r5, 6(r6)
|
|
/* 8009CC38 00098A78 7C A0 66 70 */ srawi r0, r5, 0xc
|
|
/* 8009CC3C 00098A7C 2C 00 00 03 */ cmpwi r0, 3
|
|
/* 8009CC40 00098A80 40 82 00 1C */ bne lbl_8009CC5C
|
|
/* 8009CC44 00098A84 54 A0 05 3E */ clrlwi r0, r5, 0x14
|
|
/* 8009CC48 00098A88 2C 00 00 02 */ cmpwi r0, 2
|
|
/* 8009CC4C 00098A8C 40 82 00 10 */ bne lbl_8009CC5C
|
|
/* 8009CC50 00098A90 A0 06 00 08 */ lhz r0, 8(r6)
|
|
/* 8009CC54 00098A94 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8009CC58 00098A98 4D 82 00 20 */ beqlr
|
|
lbl_8009CC5C:
|
|
/* 8009CC5C 00098A9C 80 C6 00 00 */ lwz r6, 0(r6)
|
|
lbl_8009CC60:
|
|
/* 8009CC60 00098AA0 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8009CC64 00098AA4 40 82 FF D0 */ bne lbl_8009CC34
|
|
/* 8009CC68 00098AA8 48 00 00 40 */ b lbl_8009CCA8
|
|
lbl_8009CC6C:
|
|
/* 8009CC6C 00098AAC 28 05 00 03 */ cmplwi r5, 3
|
|
/* 8009CC70 00098AB0 40 82 00 2C */ bne lbl_8009CC9C
|
|
/* 8009CC74 00098AB4 A0 A6 00 06 */ lhz r5, 6(r6)
|
|
/* 8009CC78 00098AB8 7C A0 66 70 */ srawi r0, r5, 0xc
|
|
/* 8009CC7C 00098ABC 2C 00 00 03 */ cmpwi r0, 3
|
|
/* 8009CC80 00098AC0 40 82 00 1C */ bne lbl_8009CC9C
|
|
/* 8009CC84 00098AC4 54 A0 05 3E */ clrlwi r0, r5, 0x14
|
|
/* 8009CC88 00098AC8 2C 00 00 02 */ cmpwi r0, 2
|
|
/* 8009CC8C 00098ACC 40 82 00 10 */ bne lbl_8009CC9C
|
|
/* 8009CC90 00098AD0 A0 06 00 08 */ lhz r0, 8(r6)
|
|
/* 8009CC94 00098AD4 7C 00 20 40 */ cmplw r0, r4
|
|
/* 8009CC98 00098AD8 4D 82 00 20 */ beqlr
|
|
lbl_8009CC9C:
|
|
/* 8009CC9C 00098ADC 80 C6 00 00 */ lwz r6, 0(r6)
|
|
lbl_8009CCA0:
|
|
/* 8009CCA0 00098AE0 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8009CCA4 00098AE4 40 82 FF 6C */ bne lbl_8009CC10
|
|
lbl_8009CCA8:
|
|
/* 8009CCA8 00098AE8 80 63 00 04 */ lwz r3, 4(r3)
|
|
lbl_8009CCAC:
|
|
/* 8009CCAC 00098AEC 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009CCB0 00098AF0 40 82 FF 58 */ bne lbl_8009CC08
|
|
/* 8009CCB4 00098AF4 38 60 00 00 */ li r3, 0
|
|
/* 8009CCB8 00098AF8 4E 80 00 20 */ blr
|
|
|
|
.global SDP_FindServiceUUIDInDb
|
|
SDP_FindServiceUUIDInDb:
|
|
/* 8009CCBC 00098AFC 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8009CCC0 00098B00 7C 08 02 A6 */ mflr r0
|
|
/* 8009CCC4 00098B04 2C 05 00 00 */ cmpwi r5, 0
|
|
/* 8009CCC8 00098B08 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 8009CCCC 00098B0C 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
/* 8009CCD0 00098B10 93 C1 00 18 */ stw r30, 0x18(r1)
|
|
/* 8009CCD4 00098B14 93 A1 00 14 */ stw r29, 0x14(r1)
|
|
/* 8009CCD8 00098B18 7C 9D 23 78 */ mr r29, r4
|
|
/* 8009CCDC 00098B1C 40 82 00 0C */ bne lbl_8009CCE8
|
|
/* 8009CCE0 00098B20 83 E3 00 08 */ lwz r31, 8(r3)
|
|
/* 8009CCE4 00098B24 48 00 00 B8 */ b lbl_8009CD9C
|
|
lbl_8009CCE8:
|
|
/* 8009CCE8 00098B28 83 E5 00 04 */ lwz r31, 4(r5)
|
|
/* 8009CCEC 00098B2C 48 00 00 B0 */ b lbl_8009CD9C
|
|
lbl_8009CCF0:
|
|
/* 8009CCF0 00098B30 83 DF 00 00 */ lwz r30, 0(r31)
|
|
/* 8009CCF4 00098B34 48 00 00 9C */ b lbl_8009CD90
|
|
lbl_8009CCF8:
|
|
/* 8009CCF8 00098B38 A0 7E 00 04 */ lhz r3, 4(r30)
|
|
/* 8009CCFC 00098B3C 28 03 00 01 */ cmplwi r3, 1
|
|
/* 8009CD00 00098B40 40 82 00 58 */ bne lbl_8009CD58
|
|
/* 8009CD04 00098B44 A0 1E 00 06 */ lhz r0, 6(r30)
|
|
/* 8009CD08 00098B48 7C 00 66 70 */ srawi r0, r0, 0xc
|
|
/* 8009CD0C 00098B4C 2C 00 00 06 */ cmpwi r0, 6
|
|
/* 8009CD10 00098B50 40 82 00 48 */ bne lbl_8009CD58
|
|
/* 8009CD14 00098B54 83 DE 00 08 */ lwz r30, 8(r30)
|
|
/* 8009CD18 00098B58 48 00 00 34 */ b lbl_8009CD4C
|
|
lbl_8009CD1C:
|
|
/* 8009CD1C 00098B5C A0 1E 00 06 */ lhz r0, 6(r30)
|
|
/* 8009CD20 00098B60 7C 00 66 70 */ srawi r0, r0, 0xc
|
|
/* 8009CD24 00098B64 2C 00 00 03 */ cmpwi r0, 3
|
|
/* 8009CD28 00098B68 40 82 00 20 */ bne lbl_8009CD48
|
|
/* 8009CD2C 00098B6C 7F A3 EB 78 */ mr r3, r29
|
|
/* 8009CD30 00098B70 7F C4 F3 78 */ mr r4, r30
|
|
/* 8009CD34 00098B74 48 00 4F E5 */ bl sdpu_compare_uuid_with_attr
|
|
/* 8009CD38 00098B78 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009CD3C 00098B7C 41 82 00 0C */ beq lbl_8009CD48
|
|
/* 8009CD40 00098B80 7F E3 FB 78 */ mr r3, r31
|
|
/* 8009CD44 00098B84 48 00 00 64 */ b lbl_8009CDA8
|
|
lbl_8009CD48:
|
|
/* 8009CD48 00098B88 83 DE 00 00 */ lwz r30, 0(r30)
|
|
lbl_8009CD4C:
|
|
/* 8009CD4C 00098B8C 2C 1E 00 00 */ cmpwi r30, 0
|
|
/* 8009CD50 00098B90 40 82 FF CC */ bne lbl_8009CD1C
|
|
/* 8009CD54 00098B94 48 00 00 44 */ b lbl_8009CD98
|
|
lbl_8009CD58:
|
|
/* 8009CD58 00098B98 28 03 00 03 */ cmplwi r3, 3
|
|
/* 8009CD5C 00098B9C 40 82 00 30 */ bne lbl_8009CD8C
|
|
/* 8009CD60 00098BA0 A0 1E 00 06 */ lhz r0, 6(r30)
|
|
/* 8009CD64 00098BA4 7C 00 66 70 */ srawi r0, r0, 0xc
|
|
/* 8009CD68 00098BA8 2C 00 00 03 */ cmpwi r0, 3
|
|
/* 8009CD6C 00098BAC 40 82 00 20 */ bne lbl_8009CD8C
|
|
/* 8009CD70 00098BB0 7F A3 EB 78 */ mr r3, r29
|
|
/* 8009CD74 00098BB4 7F C4 F3 78 */ mr r4, r30
|
|
/* 8009CD78 00098BB8 48 00 4F A1 */ bl sdpu_compare_uuid_with_attr
|
|
/* 8009CD7C 00098BBC 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009CD80 00098BC0 41 82 00 0C */ beq lbl_8009CD8C
|
|
/* 8009CD84 00098BC4 7F E3 FB 78 */ mr r3, r31
|
|
/* 8009CD88 00098BC8 48 00 00 20 */ b lbl_8009CDA8
|
|
lbl_8009CD8C:
|
|
/* 8009CD8C 00098BCC 83 DE 00 00 */ lwz r30, 0(r30)
|
|
lbl_8009CD90:
|
|
/* 8009CD90 00098BD0 2C 1E 00 00 */ cmpwi r30, 0
|
|
/* 8009CD94 00098BD4 40 82 FF 64 */ bne lbl_8009CCF8
|
|
lbl_8009CD98:
|
|
/* 8009CD98 00098BD8 83 FF 00 04 */ lwz r31, 4(r31)
|
|
lbl_8009CD9C:
|
|
/* 8009CD9C 00098BDC 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009CDA0 00098BE0 40 82 FF 50 */ bne lbl_8009CCF0
|
|
/* 8009CDA4 00098BE4 38 60 00 00 */ li r3, 0
|
|
lbl_8009CDA8:
|
|
/* 8009CDA8 00098BE8 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8009CDAC 00098BEC 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
/* 8009CDB0 00098BF0 83 C1 00 18 */ lwz r30, 0x18(r1)
|
|
/* 8009CDB4 00098BF4 83 A1 00 14 */ lwz r29, 0x14(r1)
|
|
/* 8009CDB8 00098BF8 7C 08 03 A6 */ mtlr r0
|
|
/* 8009CDBC 00098BFC 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8009CDC0 00098C00 4E 80 00 20 */ blr
|
|
|
|
.global SDP_SetLocalDiRecord
|
|
SDP_SetLocalDiRecord:
|
|
/* 8009CDC4 00098C04 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8009CDC8 00098C08 7C 08 02 A6 */ mflr r0
|
|
/* 8009CDCC 00098C0C 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009CDD0 00098C10 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 8009CDD4 00098C14 38 00 12 00 */ li r0, 0x1200
|
|
/* 8009CDD8 00098C18 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
/* 8009CDDC 00098C1C 3B E0 00 00 */ li r31, 0
|
|
/* 8009CDE0 00098C20 93 C1 00 18 */ stw r30, 0x18(r1)
|
|
/* 8009CDE4 00098C24 93 A1 00 14 */ stw r29, 0x14(r1)
|
|
/* 8009CDE8 00098C28 7C 7D 1B 78 */ mr r29, r3
|
|
/* 8009CDEC 00098C2C 93 81 00 10 */ stw r28, 0x10(r1)
|
|
/* 8009CDF0 00098C30 7C 9C 23 78 */ mr r28, r4
|
|
/* 8009CDF4 00098C34 B0 01 00 0C */ sth r0, 0xc(r1)
|
|
/* 8009CDF8 00098C38 93 E4 00 00 */ stw r31, 0(r4)
|
|
/* 8009CDFC 00098C3C 40 82 00 0C */ bne lbl_8009CE08
|
|
/* 8009CE00 00098C40 38 60 00 0B */ li r3, 0xb
|
|
/* 8009CE04 00098C44 48 00 03 00 */ b lbl_8009D104
|
|
lbl_8009CE08:
|
|
/* 8009CE08 00098C48 88 03 00 08 */ lbz r0, 8(r3)
|
|
/* 8009CE0C 00098C4C 28 00 00 01 */ cmplwi r0, 1
|
|
/* 8009CE10 00098C50 40 82 00 1C */ bne lbl_8009CE2C
|
|
/* 8009CE14 00098C54 3C 60 80 50 */ lis r3, sdp_cb@ha
|
|
/* 8009CE18 00098C58 38 63 9C 20 */ addi r3, r3, sdp_cb@l
|
|
/* 8009CE1C 00098C5C 83 C3 12 1C */ lwz r30, 0x121c(r3)
|
|
/* 8009CE20 00098C60 2C 1E 00 00 */ cmpwi r30, 0
|
|
/* 8009CE24 00098C64 41 82 00 08 */ beq lbl_8009CE2C
|
|
/* 8009CE28 00098C68 48 00 00 1C */ b lbl_8009CE44
|
|
lbl_8009CE2C:
|
|
/* 8009CE2C 00098C6C 48 00 0A 7D */ bl SDP_CreateRecord
|
|
/* 8009CE30 00098C70 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009CE34 00098C74 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8009CE38 00098C78 40 82 00 0C */ bne lbl_8009CE44
|
|
/* 8009CE3C 00098C7C 38 60 00 06 */ li r3, 6
|
|
/* 8009CE40 00098C80 48 00 02 C4 */ b lbl_8009D104
|
|
lbl_8009CE44:
|
|
/* 8009CE44 00098C84 93 DC 00 00 */ stw r30, 0(r28)
|
|
/* 8009CE48 00098C88 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009CE4C 00098C8C 38 A1 00 0C */ addi r5, r1, 0xc
|
|
/* 8009CE50 00098C90 38 80 00 01 */ li r4, 1
|
|
/* 8009CE54 00098C94 48 00 10 B9 */ bl SDP_AddServiceClassIdList
|
|
/* 8009CE58 00098C98 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009CE5C 00098C9C 40 82 00 08 */ bne lbl_8009CE64
|
|
/* 8009CE60 00098CA0 3B E0 00 07 */ li r31, 7
|
|
lbl_8009CE64:
|
|
/* 8009CE64 00098CA4 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009CE68 00098CA8 40 82 00 38 */ bne lbl_8009CEA0
|
|
/* 8009CE6C 00098CAC 38 60 00 00 */ li r3, 0
|
|
/* 8009CE70 00098CB0 38 00 00 09 */ li r0, 9
|
|
/* 8009CE74 00098CB4 98 61 00 08 */ stb r3, 8(r1)
|
|
/* 8009CE78 00098CB8 38 E1 00 08 */ addi r7, r1, 8
|
|
/* 8009CE7C 00098CBC 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009CE80 00098CC0 38 80 02 00 */ li r4, 0x200
|
|
/* 8009CE84 00098CC4 98 01 00 09 */ stb r0, 9(r1)
|
|
/* 8009CE88 00098CC8 38 A0 00 01 */ li r5, 1
|
|
/* 8009CE8C 00098CCC 38 C0 00 02 */ li r6, 2
|
|
/* 8009CE90 00098CD0 48 00 0C 0D */ bl SDP_AddAttribute
|
|
/* 8009CE94 00098CD4 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009CE98 00098CD8 40 82 00 08 */ bne lbl_8009CEA0
|
|
/* 8009CE9C 00098CDC 3B E0 00 07 */ li r31, 7
|
|
lbl_8009CEA0:
|
|
/* 8009CEA0 00098CE0 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009CEA4 00098CE4 40 82 00 54 */ bne lbl_8009CEF8
|
|
/* 8009CEA8 00098CE8 88 1D 00 09 */ lbz r0, 9(r29)
|
|
/* 8009CEAC 00098CEC 7C 00 07 75 */ extsb. r0, r0
|
|
/* 8009CEB0 00098CF0 41 82 00 48 */ beq lbl_8009CEF8
|
|
/* 8009CEB4 00098CF4 38 7D 00 09 */ addi r3, r29, 9
|
|
/* 8009CEB8 00098CF8 4B F6 9B D5 */ bl strlen
|
|
/* 8009CEBC 00098CFC 38 03 00 01 */ addi r0, r3, 1
|
|
/* 8009CEC0 00098D00 28 00 00 50 */ cmplwi r0, 0x50
|
|
/* 8009CEC4 00098D04 41 81 00 30 */ bgt lbl_8009CEF4
|
|
/* 8009CEC8 00098D08 38 7D 00 09 */ addi r3, r29, 9
|
|
/* 8009CECC 00098D0C 4B F6 9B C1 */ bl strlen
|
|
/* 8009CED0 00098D10 7C 64 1B 78 */ mr r4, r3
|
|
/* 8009CED4 00098D14 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009CED8 00098D18 38 C4 00 01 */ addi r6, r4, 1
|
|
/* 8009CEDC 00098D1C 38 FD 00 09 */ addi r7, r29, 9
|
|
/* 8009CEE0 00098D20 38 80 00 0B */ li r4, 0xb
|
|
/* 8009CEE4 00098D24 38 A0 00 08 */ li r5, 8
|
|
/* 8009CEE8 00098D28 48 00 0B B5 */ bl SDP_AddAttribute
|
|
/* 8009CEEC 00098D2C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009CEF0 00098D30 40 82 00 08 */ bne lbl_8009CEF8
|
|
lbl_8009CEF4:
|
|
/* 8009CEF4 00098D34 3B E0 00 07 */ li r31, 7
|
|
lbl_8009CEF8:
|
|
/* 8009CEF8 00098D38 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009CEFC 00098D3C 40 82 00 54 */ bne lbl_8009CF50
|
|
/* 8009CF00 00098D40 88 1D 00 59 */ lbz r0, 0x59(r29)
|
|
/* 8009CF04 00098D44 7C 00 07 75 */ extsb. r0, r0
|
|
/* 8009CF08 00098D48 41 82 00 48 */ beq lbl_8009CF50
|
|
/* 8009CF0C 00098D4C 38 7D 00 59 */ addi r3, r29, 0x59
|
|
/* 8009CF10 00098D50 4B F6 9B 7D */ bl strlen
|
|
/* 8009CF14 00098D54 38 03 00 01 */ addi r0, r3, 1
|
|
/* 8009CF18 00098D58 28 00 00 50 */ cmplwi r0, 0x50
|
|
/* 8009CF1C 00098D5C 41 81 00 30 */ bgt lbl_8009CF4C
|
|
/* 8009CF20 00098D60 38 7D 00 59 */ addi r3, r29, 0x59
|
|
/* 8009CF24 00098D64 4B F6 9B 69 */ bl strlen
|
|
/* 8009CF28 00098D68 7C 64 1B 78 */ mr r4, r3
|
|
/* 8009CF2C 00098D6C 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009CF30 00098D70 38 C4 00 01 */ addi r6, r4, 1
|
|
/* 8009CF34 00098D74 38 FD 00 59 */ addi r7, r29, 0x59
|
|
/* 8009CF38 00098D78 38 80 01 01 */ li r4, 0x101
|
|
/* 8009CF3C 00098D7C 38 A0 00 04 */ li r5, 4
|
|
/* 8009CF40 00098D80 48 00 0B 5D */ bl SDP_AddAttribute
|
|
/* 8009CF44 00098D84 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009CF48 00098D88 40 82 00 08 */ bne lbl_8009CF50
|
|
lbl_8009CF4C:
|
|
/* 8009CF4C 00098D8C 3B E0 00 07 */ li r31, 7
|
|
lbl_8009CF50:
|
|
/* 8009CF50 00098D90 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009CF54 00098D94 40 82 00 54 */ bne lbl_8009CFA8
|
|
/* 8009CF58 00098D98 88 1D 00 A9 */ lbz r0, 0xa9(r29)
|
|
/* 8009CF5C 00098D9C 7C 00 07 75 */ extsb. r0, r0
|
|
/* 8009CF60 00098DA0 41 82 00 48 */ beq lbl_8009CFA8
|
|
/* 8009CF64 00098DA4 38 7D 00 A9 */ addi r3, r29, 0xa9
|
|
/* 8009CF68 00098DA8 4B F6 9B 25 */ bl strlen
|
|
/* 8009CF6C 00098DAC 38 03 00 01 */ addi r0, r3, 1
|
|
/* 8009CF70 00098DB0 28 00 00 50 */ cmplwi r0, 0x50
|
|
/* 8009CF74 00098DB4 41 81 00 30 */ bgt lbl_8009CFA4
|
|
/* 8009CF78 00098DB8 38 7D 00 A9 */ addi r3, r29, 0xa9
|
|
/* 8009CF7C 00098DBC 4B F6 9B 11 */ bl strlen
|
|
/* 8009CF80 00098DC0 7C 64 1B 78 */ mr r4, r3
|
|
/* 8009CF84 00098DC4 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009CF88 00098DC8 38 C4 00 01 */ addi r6, r4, 1
|
|
/* 8009CF8C 00098DCC 38 FD 00 A9 */ addi r7, r29, 0xa9
|
|
/* 8009CF90 00098DD0 38 80 00 0A */ li r4, 0xa
|
|
/* 8009CF94 00098DD4 38 A0 00 08 */ li r5, 8
|
|
/* 8009CF98 00098DD8 48 00 0B 05 */ bl SDP_AddAttribute
|
|
/* 8009CF9C 00098DDC 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009CFA0 00098DE0 40 82 00 08 */ bne lbl_8009CFA8
|
|
lbl_8009CFA4:
|
|
/* 8009CFA4 00098DE4 3B E0 00 07 */ li r31, 7
|
|
lbl_8009CFA8:
|
|
/* 8009CFA8 00098DE8 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009CFAC 00098DEC 40 82 00 3C */ bne lbl_8009CFE8
|
|
/* 8009CFB0 00098DF0 A0 1D 00 00 */ lhz r0, 0(r29)
|
|
/* 8009CFB4 00098DF4 38 E1 00 08 */ addi r7, r1, 8
|
|
/* 8009CFB8 00098DF8 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009CFBC 00098DFC 38 80 02 01 */ li r4, 0x201
|
|
/* 8009CFC0 00098E00 7C 00 46 70 */ srawi r0, r0, 8
|
|
/* 8009CFC4 00098E04 38 A0 00 01 */ li r5, 1
|
|
/* 8009CFC8 00098E08 98 01 00 08 */ stb r0, 8(r1)
|
|
/* 8009CFCC 00098E0C 38 C0 00 02 */ li r6, 2
|
|
/* 8009CFD0 00098E10 A0 1D 00 00 */ lhz r0, 0(r29)
|
|
/* 8009CFD4 00098E14 98 01 00 09 */ stb r0, 9(r1)
|
|
/* 8009CFD8 00098E18 48 00 0A C5 */ bl SDP_AddAttribute
|
|
/* 8009CFDC 00098E1C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009CFE0 00098E20 40 82 00 08 */ bne lbl_8009CFE8
|
|
/* 8009CFE4 00098E24 3B E0 00 07 */ li r31, 7
|
|
lbl_8009CFE8:
|
|
/* 8009CFE8 00098E28 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009CFEC 00098E2C 40 82 00 3C */ bne lbl_8009D028
|
|
/* 8009CFF0 00098E30 A0 1D 00 04 */ lhz r0, 4(r29)
|
|
/* 8009CFF4 00098E34 38 E1 00 08 */ addi r7, r1, 8
|
|
/* 8009CFF8 00098E38 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009CFFC 00098E3C 38 80 02 02 */ li r4, 0x202
|
|
/* 8009D000 00098E40 7C 00 46 70 */ srawi r0, r0, 8
|
|
/* 8009D004 00098E44 38 A0 00 01 */ li r5, 1
|
|
/* 8009D008 00098E48 98 01 00 08 */ stb r0, 8(r1)
|
|
/* 8009D00C 00098E4C 38 C0 00 02 */ li r6, 2
|
|
/* 8009D010 00098E50 A0 1D 00 04 */ lhz r0, 4(r29)
|
|
/* 8009D014 00098E54 98 01 00 09 */ stb r0, 9(r1)
|
|
/* 8009D018 00098E58 48 00 0A 85 */ bl SDP_AddAttribute
|
|
/* 8009D01C 00098E5C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009D020 00098E60 40 82 00 08 */ bne lbl_8009D028
|
|
/* 8009D024 00098E64 3B E0 00 07 */ li r31, 7
|
|
lbl_8009D028:
|
|
/* 8009D028 00098E68 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009D02C 00098E6C 40 82 00 3C */ bne lbl_8009D068
|
|
/* 8009D030 00098E70 A0 1D 00 06 */ lhz r0, 6(r29)
|
|
/* 8009D034 00098E74 38 E1 00 08 */ addi r7, r1, 8
|
|
/* 8009D038 00098E78 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D03C 00098E7C 38 80 02 03 */ li r4, 0x203
|
|
/* 8009D040 00098E80 7C 00 46 70 */ srawi r0, r0, 8
|
|
/* 8009D044 00098E84 38 A0 00 01 */ li r5, 1
|
|
/* 8009D048 00098E88 98 01 00 08 */ stb r0, 8(r1)
|
|
/* 8009D04C 00098E8C 38 C0 00 02 */ li r6, 2
|
|
/* 8009D050 00098E90 A0 1D 00 06 */ lhz r0, 6(r29)
|
|
/* 8009D054 00098E94 98 01 00 09 */ stb r0, 9(r1)
|
|
/* 8009D058 00098E98 48 00 0A 45 */ bl SDP_AddAttribute
|
|
/* 8009D05C 00098E9C 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009D060 00098EA0 40 82 00 08 */ bne lbl_8009D068
|
|
/* 8009D064 00098EA4 3B E0 00 07 */ li r31, 7
|
|
lbl_8009D068:
|
|
/* 8009D068 00098EA8 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009D06C 00098EAC 40 82 00 28 */ bne lbl_8009D094
|
|
/* 8009D070 00098EB0 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D074 00098EB4 38 FD 00 08 */ addi r7, r29, 8
|
|
/* 8009D078 00098EB8 38 80 02 04 */ li r4, 0x204
|
|
/* 8009D07C 00098EBC 38 A0 00 05 */ li r5, 5
|
|
/* 8009D080 00098EC0 38 C0 00 01 */ li r6, 1
|
|
/* 8009D084 00098EC4 48 00 0A 19 */ bl SDP_AddAttribute
|
|
/* 8009D088 00098EC8 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009D08C 00098ECC 40 82 00 08 */ bne lbl_8009D094
|
|
/* 8009D090 00098ED0 3B E0 00 07 */ li r31, 7
|
|
lbl_8009D094:
|
|
/* 8009D094 00098ED4 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009D098 00098ED8 40 82 00 3C */ bne lbl_8009D0D4
|
|
/* 8009D09C 00098EDC A0 1D 00 02 */ lhz r0, 2(r29)
|
|
/* 8009D0A0 00098EE0 38 E1 00 08 */ addi r7, r1, 8
|
|
/* 8009D0A4 00098EE4 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D0A8 00098EE8 38 80 02 05 */ li r4, 0x205
|
|
/* 8009D0AC 00098EEC 7C 00 46 70 */ srawi r0, r0, 8
|
|
/* 8009D0B0 00098EF0 38 A0 00 01 */ li r5, 1
|
|
/* 8009D0B4 00098EF4 98 01 00 08 */ stb r0, 8(r1)
|
|
/* 8009D0B8 00098EF8 38 C0 00 02 */ li r6, 2
|
|
/* 8009D0BC 00098EFC A0 1D 00 02 */ lhz r0, 2(r29)
|
|
/* 8009D0C0 00098F00 98 01 00 09 */ stb r0, 9(r1)
|
|
/* 8009D0C4 00098F04 48 00 09 D9 */ bl SDP_AddAttribute
|
|
/* 8009D0C8 00098F08 54 60 06 3F */ clrlwi. r0, r3, 0x18
|
|
/* 8009D0CC 00098F0C 40 82 00 08 */ bne lbl_8009D0D4
|
|
/* 8009D0D0 00098F10 3B E0 00 07 */ li r31, 7
|
|
lbl_8009D0D4:
|
|
/* 8009D0D4 00098F14 2C 1F 00 00 */ cmpwi r31, 0
|
|
/* 8009D0D8 00098F18 41 82 00 10 */ beq lbl_8009D0E8
|
|
/* 8009D0DC 00098F1C 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D0E0 00098F20 48 00 08 A9 */ bl SDP_DeleteRecord
|
|
/* 8009D0E4 00098F24 48 00 00 1C */ b lbl_8009D100
|
|
lbl_8009D0E8:
|
|
/* 8009D0E8 00098F28 88 1D 00 08 */ lbz r0, 8(r29)
|
|
/* 8009D0EC 00098F2C 28 00 00 01 */ cmplwi r0, 1
|
|
/* 8009D0F0 00098F30 40 82 00 10 */ bne lbl_8009D100
|
|
/* 8009D0F4 00098F34 3C 60 80 50 */ lis r3, sdp_cb@ha
|
|
/* 8009D0F8 00098F38 38 63 9C 20 */ addi r3, r3, sdp_cb@l
|
|
/* 8009D0FC 00098F3C 93 C3 12 1C */ stw r30, 0x121c(r3)
|
|
lbl_8009D100:
|
|
/* 8009D100 00098F40 7F E3 FB 78 */ mr r3, r31
|
|
lbl_8009D104:
|
|
/* 8009D104 00098F44 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8009D108 00098F48 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
/* 8009D10C 00098F4C 83 C1 00 18 */ lwz r30, 0x18(r1)
|
|
/* 8009D110 00098F50 83 A1 00 14 */ lwz r29, 0x14(r1)
|
|
/* 8009D114 00098F54 83 81 00 10 */ lwz r28, 0x10(r1)
|
|
/* 8009D118 00098F58 7C 08 03 A6 */ mtlr r0
|
|
/* 8009D11C 00098F5C 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8009D120 00098F60 4E 80 00 20 */ blr
|
|
|
|
.global SDP_GetLocalDiRecord
|
|
SDP_GetLocalDiRecord:
|
|
/* 8009D124 00098F64 94 21 FF E0 */ stwu r1, -0x20(r1)
|
|
/* 8009D128 00098F68 7C 08 02 A6 */ mflr r0
|
|
/* 8009D12C 00098F6C 90 01 00 24 */ stw r0, 0x24(r1)
|
|
/* 8009D130 00098F70 93 E1 00 1C */ stw r31, 0x1c(r1)
|
|
/* 8009D134 00098F74 3B E0 00 09 */ li r31, 9
|
|
/* 8009D138 00098F78 93 C1 00 18 */ stw r30, 0x18(r1)
|
|
/* 8009D13C 00098F7C 93 A1 00 14 */ stw r29, 0x14(r1)
|
|
/* 8009D140 00098F80 7C 7D 1B 78 */ mr r29, r3
|
|
/* 8009D144 00098F84 93 81 00 10 */ stw r28, 0x10(r1)
|
|
/* 8009D148 00098F88 7C 9C 23 78 */ mr r28, r4
|
|
/* 8009D14C 00098F8C 80 04 00 00 */ lwz r0, 0(r4)
|
|
/* 8009D150 00098F90 2C 00 00 00 */ cmpwi r0, 0
|
|
/* 8009D154 00098F94 40 82 00 14 */ bne lbl_8009D168
|
|
/* 8009D158 00098F98 3C 60 80 50 */ lis r3, sdp_cb@ha
|
|
/* 8009D15C 00098F9C 38 63 9C 20 */ addi r3, r3, sdp_cb@l
|
|
/* 8009D160 00098FA0 80 03 12 1C */ lwz r0, 0x121c(r3)
|
|
/* 8009D164 00098FA4 90 04 00 00 */ stw r0, 0(r4)
|
|
lbl_8009D168:
|
|
/* 8009D168 00098FA8 80 64 00 00 */ lwz r3, 0(r4)
|
|
/* 8009D16C 00098FAC 48 00 06 A1 */ bl sdp_db_find_record
|
|
/* 8009D170 00098FB0 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D174 00098FB4 7C 7E 1B 78 */ mr r30, r3
|
|
/* 8009D178 00098FB8 41 82 04 30 */ beq lbl_8009D5A8
|
|
/* 8009D17C 00098FBC 7F A3 EB 78 */ mr r3, r29
|
|
/* 8009D180 00098FC0 38 80 00 00 */ li r4, 0
|
|
/* 8009D184 00098FC4 38 A0 00 FA */ li r5, 0xfa
|
|
/* 8009D188 00098FC8 4B F6 71 C9 */ bl memset
|
|
/* 8009D18C 00098FCC 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D190 00098FD0 3B E0 00 00 */ li r31, 0
|
|
/* 8009D194 00098FD4 38 80 02 00 */ li r4, 0x200
|
|
/* 8009D198 00098FD8 38 A0 02 00 */ li r5, 0x200
|
|
/* 8009D19C 00098FDC 48 00 06 CD */ bl sdp_db_find_attr_in_rec
|
|
/* 8009D1A0 00098FE0 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D1A4 00098FE4 41 82 00 1C */ beq lbl_8009D1C0
|
|
/* 8009D1A8 00098FE8 80 83 00 04 */ lwz r4, 4(r3)
|
|
/* 8009D1AC 00098FEC 88 64 00 00 */ lbz r3, 0(r4)
|
|
/* 8009D1B0 00098FF0 88 04 00 01 */ lbz r0, 1(r4)
|
|
/* 8009D1B4 00098FF4 54 63 40 2E */ slwi r3, r3, 8
|
|
/* 8009D1B8 00098FF8 7C 03 02 14 */ add r0, r3, r0
|
|
/* 8009D1BC 00098FFC B0 1D 00 00 */ sth r0, 0(r29)
|
|
lbl_8009D1C0:
|
|
/* 8009D1C0 00099000 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D1C4 00099004 38 80 02 01 */ li r4, 0x201
|
|
/* 8009D1C8 00099008 38 A0 02 01 */ li r5, 0x201
|
|
/* 8009D1CC 0009900C 48 00 06 9D */ bl sdp_db_find_attr_in_rec
|
|
/* 8009D1D0 00099010 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D1D4 00099014 41 82 00 1C */ beq lbl_8009D1F0
|
|
/* 8009D1D8 00099018 80 83 00 04 */ lwz r4, 4(r3)
|
|
/* 8009D1DC 0009901C 88 64 00 00 */ lbz r3, 0(r4)
|
|
/* 8009D1E0 00099020 88 04 00 01 */ lbz r0, 1(r4)
|
|
/* 8009D1E4 00099024 54 63 40 2E */ slwi r3, r3, 8
|
|
/* 8009D1E8 00099028 7C 03 02 14 */ add r0, r3, r0
|
|
/* 8009D1EC 0009902C B0 1D 00 02 */ sth r0, 2(r29)
|
|
lbl_8009D1F0:
|
|
/* 8009D1F0 00099030 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D1F4 00099034 38 80 02 02 */ li r4, 0x202
|
|
/* 8009D1F8 00099038 38 A0 02 02 */ li r5, 0x202
|
|
/* 8009D1FC 0009903C 48 00 06 6D */ bl sdp_db_find_attr_in_rec
|
|
/* 8009D200 00099040 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D204 00099044 41 82 00 1C */ beq lbl_8009D220
|
|
/* 8009D208 00099048 80 83 00 04 */ lwz r4, 4(r3)
|
|
/* 8009D20C 0009904C 88 64 00 00 */ lbz r3, 0(r4)
|
|
/* 8009D210 00099050 88 04 00 01 */ lbz r0, 1(r4)
|
|
/* 8009D214 00099054 54 63 40 2E */ slwi r3, r3, 8
|
|
/* 8009D218 00099058 7C 03 02 14 */ add r0, r3, r0
|
|
/* 8009D21C 0009905C B0 1D 00 06 */ sth r0, 6(r29)
|
|
lbl_8009D220:
|
|
/* 8009D220 00099060 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D224 00099064 38 80 02 03 */ li r4, 0x203
|
|
/* 8009D228 00099068 38 A0 02 03 */ li r5, 0x203
|
|
/* 8009D22C 0009906C 48 00 06 3D */ bl sdp_db_find_attr_in_rec
|
|
/* 8009D230 00099070 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D234 00099074 41 82 00 1C */ beq lbl_8009D250
|
|
/* 8009D238 00099078 80 83 00 04 */ lwz r4, 4(r3)
|
|
/* 8009D23C 0009907C 88 64 00 00 */ lbz r3, 0(r4)
|
|
/* 8009D240 00099080 88 04 00 01 */ lbz r0, 1(r4)
|
|
/* 8009D244 00099084 54 63 40 2E */ slwi r3, r3, 8
|
|
/* 8009D248 00099088 7C 03 02 14 */ add r0, r3, r0
|
|
/* 8009D24C 0009908C B0 1D 00 08 */ sth r0, 8(r29)
|
|
lbl_8009D250:
|
|
/* 8009D250 00099090 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D254 00099094 38 80 02 05 */ li r4, 0x205
|
|
/* 8009D258 00099098 38 A0 02 05 */ li r5, 0x205
|
|
/* 8009D25C 0009909C 48 00 06 0D */ bl sdp_db_find_attr_in_rec
|
|
/* 8009D260 000990A0 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D264 000990A4 41 82 00 1C */ beq lbl_8009D280
|
|
/* 8009D268 000990A8 80 83 00 04 */ lwz r4, 4(r3)
|
|
/* 8009D26C 000990AC 88 64 00 00 */ lbz r3, 0(r4)
|
|
/* 8009D270 000990B0 88 04 00 01 */ lbz r0, 1(r4)
|
|
/* 8009D274 000990B4 54 63 40 2E */ slwi r3, r3, 8
|
|
/* 8009D278 000990B8 7C 03 02 14 */ add r0, r3, r0
|
|
/* 8009D27C 000990BC B0 1D 00 04 */ sth r0, 4(r29)
|
|
lbl_8009D280:
|
|
/* 8009D280 000990C0 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D284 000990C4 38 80 02 04 */ li r4, 0x204
|
|
/* 8009D288 000990C8 38 A0 02 04 */ li r5, 0x204
|
|
/* 8009D28C 000990CC 48 00 05 DD */ bl sdp_db_find_attr_in_rec
|
|
/* 8009D290 000990D0 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D294 000990D4 41 82 00 10 */ beq lbl_8009D2A4
|
|
/* 8009D298 000990D8 80 63 00 04 */ lwz r3, 4(r3)
|
|
/* 8009D29C 000990DC 88 03 00 00 */ lbz r0, 0(r3)
|
|
/* 8009D2A0 000990E0 98 1D 00 0A */ stb r0, 0xa(r29)
|
|
lbl_8009D2A4:
|
|
/* 8009D2A4 000990E4 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D2A8 000990E8 38 80 00 0B */ li r4, 0xb
|
|
/* 8009D2AC 000990EC 38 A0 00 0B */ li r5, 0xb
|
|
/* 8009D2B0 000990F0 48 00 05 B9 */ bl sdp_db_find_attr_in_rec
|
|
/* 8009D2B4 000990F4 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D2B8 000990F8 41 82 00 EC */ beq lbl_8009D3A4
|
|
/* 8009D2BC 000990FC 80 03 00 00 */ lwz r0, 0(r3)
|
|
/* 8009D2C0 00099100 38 80 00 50 */ li r4, 0x50
|
|
/* 8009D2C4 00099104 28 00 00 50 */ cmplwi r0, 0x50
|
|
/* 8009D2C8 00099108 40 80 00 08 */ bge lbl_8009D2D0
|
|
/* 8009D2CC 0009910C 7C 04 03 78 */ mr r4, r0
|
|
lbl_8009D2D0:
|
|
/* 8009D2D0 00099110 2C 84 00 00 */ cmpwi cr1, r4, 0
|
|
/* 8009D2D4 00099114 80 E3 00 04 */ lwz r7, 4(r3)
|
|
/* 8009D2D8 00099118 39 00 00 00 */ li r8, 0
|
|
/* 8009D2DC 0009911C 40 85 00 C8 */ ble cr1, lbl_8009D3A4
|
|
/* 8009D2E0 00099120 2C 04 00 08 */ cmpwi r4, 8
|
|
/* 8009D2E4 00099124 38 A4 FF F8 */ addi r5, r4, -8
|
|
/* 8009D2E8 00099128 40 81 00 90 */ ble lbl_8009D378
|
|
/* 8009D2EC 0009912C 38 C0 00 00 */ li r6, 0
|
|
/* 8009D2F0 00099130 41 84 00 18 */ blt cr1, lbl_8009D308
|
|
/* 8009D2F4 00099134 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
|
|
/* 8009D2F8 00099138 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
|
|
/* 8009D2FC 0009913C 7C 04 00 00 */ cmpw r4, r0
|
|
/* 8009D300 00099140 41 81 00 08 */ bgt lbl_8009D308
|
|
/* 8009D304 00099144 38 C0 00 01 */ li r6, 1
|
|
lbl_8009D308:
|
|
/* 8009D308 00099148 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8009D30C 0009914C 41 82 00 6C */ beq lbl_8009D378
|
|
/* 8009D310 00099150 38 05 00 07 */ addi r0, r5, 7
|
|
/* 8009D314 00099154 38 7D 00 0B */ addi r3, r29, 0xb
|
|
/* 8009D318 00099158 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8009D31C 0009915C 7C 09 03 A6 */ mtctr r0
|
|
/* 8009D320 00099160 2C 05 00 00 */ cmpwi r5, 0
|
|
/* 8009D324 00099164 40 81 00 54 */ ble lbl_8009D378
|
|
lbl_8009D328:
|
|
/* 8009D328 00099168 88 07 00 00 */ lbz r0, 0(r7)
|
|
/* 8009D32C 0009916C 39 08 00 08 */ addi r8, r8, 8
|
|
/* 8009D330 00099170 98 03 00 00 */ stb r0, 0(r3)
|
|
/* 8009D334 00099174 88 07 00 01 */ lbz r0, 1(r7)
|
|
/* 8009D338 00099178 98 03 00 01 */ stb r0, 1(r3)
|
|
/* 8009D33C 0009917C 88 07 00 02 */ lbz r0, 2(r7)
|
|
/* 8009D340 00099180 98 03 00 02 */ stb r0, 2(r3)
|
|
/* 8009D344 00099184 88 07 00 03 */ lbz r0, 3(r7)
|
|
/* 8009D348 00099188 98 03 00 03 */ stb r0, 3(r3)
|
|
/* 8009D34C 0009918C 88 07 00 04 */ lbz r0, 4(r7)
|
|
/* 8009D350 00099190 98 03 00 04 */ stb r0, 4(r3)
|
|
/* 8009D354 00099194 88 07 00 05 */ lbz r0, 5(r7)
|
|
/* 8009D358 00099198 98 03 00 05 */ stb r0, 5(r3)
|
|
/* 8009D35C 0009919C 88 07 00 06 */ lbz r0, 6(r7)
|
|
/* 8009D360 000991A0 98 03 00 06 */ stb r0, 6(r3)
|
|
/* 8009D364 000991A4 88 07 00 07 */ lbz r0, 7(r7)
|
|
/* 8009D368 000991A8 38 E7 00 08 */ addi r7, r7, 8
|
|
/* 8009D36C 000991AC 98 03 00 07 */ stb r0, 7(r3)
|
|
/* 8009D370 000991B0 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8009D374 000991B4 42 00 FF B4 */ bdnz lbl_8009D328
|
|
lbl_8009D378:
|
|
/* 8009D378 000991B8 7C 7D 42 14 */ add r3, r29, r8
|
|
/* 8009D37C 000991BC 7C 08 20 50 */ subf r0, r8, r4
|
|
/* 8009D380 000991C0 38 63 00 0B */ addi r3, r3, 0xb
|
|
/* 8009D384 000991C4 7C 09 03 A6 */ mtctr r0
|
|
/* 8009D388 000991C8 7C 08 20 00 */ cmpw r8, r4
|
|
/* 8009D38C 000991CC 40 80 00 18 */ bge lbl_8009D3A4
|
|
lbl_8009D390:
|
|
/* 8009D390 000991D0 88 07 00 00 */ lbz r0, 0(r7)
|
|
/* 8009D394 000991D4 38 E7 00 01 */ addi r7, r7, 1
|
|
/* 8009D398 000991D8 98 03 00 00 */ stb r0, 0(r3)
|
|
/* 8009D39C 000991DC 38 63 00 01 */ addi r3, r3, 1
|
|
/* 8009D3A0 000991E0 42 00 FF F0 */ bdnz lbl_8009D390
|
|
lbl_8009D3A4:
|
|
/* 8009D3A4 000991E4 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D3A8 000991E8 38 80 01 01 */ li r4, 0x101
|
|
/* 8009D3AC 000991EC 38 A0 01 01 */ li r5, 0x101
|
|
/* 8009D3B0 000991F0 48 00 04 B9 */ bl sdp_db_find_attr_in_rec
|
|
/* 8009D3B4 000991F4 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D3B8 000991F8 41 82 00 EC */ beq lbl_8009D4A4
|
|
/* 8009D3BC 000991FC 80 03 00 00 */ lwz r0, 0(r3)
|
|
/* 8009D3C0 00099200 38 80 00 50 */ li r4, 0x50
|
|
/* 8009D3C4 00099204 28 00 00 50 */ cmplwi r0, 0x50
|
|
/* 8009D3C8 00099208 40 80 00 08 */ bge lbl_8009D3D0
|
|
/* 8009D3CC 0009920C 7C 04 03 78 */ mr r4, r0
|
|
lbl_8009D3D0:
|
|
/* 8009D3D0 00099210 2C 84 00 00 */ cmpwi cr1, r4, 0
|
|
/* 8009D3D4 00099214 80 E3 00 04 */ lwz r7, 4(r3)
|
|
/* 8009D3D8 00099218 39 00 00 00 */ li r8, 0
|
|
/* 8009D3DC 0009921C 40 85 00 C8 */ ble cr1, lbl_8009D4A4
|
|
/* 8009D3E0 00099220 2C 04 00 08 */ cmpwi r4, 8
|
|
/* 8009D3E4 00099224 38 A4 FF F8 */ addi r5, r4, -8
|
|
/* 8009D3E8 00099228 40 81 00 90 */ ble lbl_8009D478
|
|
/* 8009D3EC 0009922C 38 C0 00 00 */ li r6, 0
|
|
/* 8009D3F0 00099230 41 84 00 18 */ blt cr1, lbl_8009D408
|
|
/* 8009D3F4 00099234 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
|
|
/* 8009D3F8 00099238 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
|
|
/* 8009D3FC 0009923C 7C 04 00 00 */ cmpw r4, r0
|
|
/* 8009D400 00099240 41 81 00 08 */ bgt lbl_8009D408
|
|
/* 8009D404 00099244 38 C0 00 01 */ li r6, 1
|
|
lbl_8009D408:
|
|
/* 8009D408 00099248 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8009D40C 0009924C 41 82 00 6C */ beq lbl_8009D478
|
|
/* 8009D410 00099250 38 05 00 07 */ addi r0, r5, 7
|
|
/* 8009D414 00099254 38 7D 00 5B */ addi r3, r29, 0x5b
|
|
/* 8009D418 00099258 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8009D41C 0009925C 7C 09 03 A6 */ mtctr r0
|
|
/* 8009D420 00099260 2C 05 00 00 */ cmpwi r5, 0
|
|
/* 8009D424 00099264 40 81 00 54 */ ble lbl_8009D478
|
|
lbl_8009D428:
|
|
/* 8009D428 00099268 88 07 00 00 */ lbz r0, 0(r7)
|
|
/* 8009D42C 0009926C 39 08 00 08 */ addi r8, r8, 8
|
|
/* 8009D430 00099270 98 03 00 00 */ stb r0, 0(r3)
|
|
/* 8009D434 00099274 88 07 00 01 */ lbz r0, 1(r7)
|
|
/* 8009D438 00099278 98 03 00 01 */ stb r0, 1(r3)
|
|
/* 8009D43C 0009927C 88 07 00 02 */ lbz r0, 2(r7)
|
|
/* 8009D440 00099280 98 03 00 02 */ stb r0, 2(r3)
|
|
/* 8009D444 00099284 88 07 00 03 */ lbz r0, 3(r7)
|
|
/* 8009D448 00099288 98 03 00 03 */ stb r0, 3(r3)
|
|
/* 8009D44C 0009928C 88 07 00 04 */ lbz r0, 4(r7)
|
|
/* 8009D450 00099290 98 03 00 04 */ stb r0, 4(r3)
|
|
/* 8009D454 00099294 88 07 00 05 */ lbz r0, 5(r7)
|
|
/* 8009D458 00099298 98 03 00 05 */ stb r0, 5(r3)
|
|
/* 8009D45C 0009929C 88 07 00 06 */ lbz r0, 6(r7)
|
|
/* 8009D460 000992A0 98 03 00 06 */ stb r0, 6(r3)
|
|
/* 8009D464 000992A4 88 07 00 07 */ lbz r0, 7(r7)
|
|
/* 8009D468 000992A8 38 E7 00 08 */ addi r7, r7, 8
|
|
/* 8009D46C 000992AC 98 03 00 07 */ stb r0, 7(r3)
|
|
/* 8009D470 000992B0 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8009D474 000992B4 42 00 FF B4 */ bdnz lbl_8009D428
|
|
lbl_8009D478:
|
|
/* 8009D478 000992B8 7C 7D 42 14 */ add r3, r29, r8
|
|
/* 8009D47C 000992BC 7C 08 20 50 */ subf r0, r8, r4
|
|
/* 8009D480 000992C0 38 63 00 5B */ addi r3, r3, 0x5b
|
|
/* 8009D484 000992C4 7C 09 03 A6 */ mtctr r0
|
|
/* 8009D488 000992C8 7C 08 20 00 */ cmpw r8, r4
|
|
/* 8009D48C 000992CC 40 80 00 18 */ bge lbl_8009D4A4
|
|
lbl_8009D490:
|
|
/* 8009D490 000992D0 88 07 00 00 */ lbz r0, 0(r7)
|
|
/* 8009D494 000992D4 38 E7 00 01 */ addi r7, r7, 1
|
|
/* 8009D498 000992D8 98 03 00 00 */ stb r0, 0(r3)
|
|
/* 8009D49C 000992DC 38 63 00 01 */ addi r3, r3, 1
|
|
/* 8009D4A0 000992E0 42 00 FF F0 */ bdnz lbl_8009D490
|
|
lbl_8009D4A4:
|
|
/* 8009D4A4 000992E4 7F C3 F3 78 */ mr r3, r30
|
|
/* 8009D4A8 000992E8 38 80 00 0A */ li r4, 0xa
|
|
/* 8009D4AC 000992EC 38 A0 00 0A */ li r5, 0xa
|
|
/* 8009D4B0 000992F0 48 00 03 B9 */ bl sdp_db_find_attr_in_rec
|
|
/* 8009D4B4 000992F4 2C 03 00 00 */ cmpwi r3, 0
|
|
/* 8009D4B8 000992F8 41 82 00 F8 */ beq lbl_8009D5B0
|
|
/* 8009D4BC 000992FC 80 03 00 00 */ lwz r0, 0(r3)
|
|
/* 8009D4C0 00099300 38 80 00 50 */ li r4, 0x50
|
|
/* 8009D4C4 00099304 28 00 00 50 */ cmplwi r0, 0x50
|
|
/* 8009D4C8 00099308 40 80 00 08 */ bge lbl_8009D4D0
|
|
/* 8009D4CC 0009930C 7C 04 03 78 */ mr r4, r0
|
|
lbl_8009D4D0:
|
|
/* 8009D4D0 00099310 2C 84 00 00 */ cmpwi cr1, r4, 0
|
|
/* 8009D4D4 00099314 80 E3 00 04 */ lwz r7, 4(r3)
|
|
/* 8009D4D8 00099318 39 00 00 00 */ li r8, 0
|
|
/* 8009D4DC 0009931C 40 85 00 D4 */ ble cr1, lbl_8009D5B0
|
|
/* 8009D4E0 00099320 2C 04 00 08 */ cmpwi r4, 8
|
|
/* 8009D4E4 00099324 38 A4 FF F8 */ addi r5, r4, -8
|
|
/* 8009D4E8 00099328 40 81 00 90 */ ble lbl_8009D578
|
|
/* 8009D4EC 0009932C 38 C0 00 00 */ li r6, 0
|
|
/* 8009D4F0 00099330 41 84 00 18 */ blt cr1, lbl_8009D508
|
|
/* 8009D4F4 00099334 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
|
|
/* 8009D4F8 00099338 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
|
|
/* 8009D4FC 0009933C 7C 04 00 00 */ cmpw r4, r0
|
|
/* 8009D500 00099340 41 81 00 08 */ bgt lbl_8009D508
|
|
/* 8009D504 00099344 38 C0 00 01 */ li r6, 1
|
|
lbl_8009D508:
|
|
/* 8009D508 00099348 2C 06 00 00 */ cmpwi r6, 0
|
|
/* 8009D50C 0009934C 41 82 00 6C */ beq lbl_8009D578
|
|
/* 8009D510 00099350 38 05 00 07 */ addi r0, r5, 7
|
|
/* 8009D514 00099354 38 7D 00 AB */ addi r3, r29, 0xab
|
|
/* 8009D518 00099358 54 00 E8 FE */ srwi r0, r0, 3
|
|
/* 8009D51C 0009935C 7C 09 03 A6 */ mtctr r0
|
|
/* 8009D520 00099360 2C 05 00 00 */ cmpwi r5, 0
|
|
/* 8009D524 00099364 40 81 00 54 */ ble lbl_8009D578
|
|
lbl_8009D528:
|
|
/* 8009D528 00099368 88 07 00 00 */ lbz r0, 0(r7)
|
|
/* 8009D52C 0009936C 39 08 00 08 */ addi r8, r8, 8
|
|
/* 8009D530 00099370 98 03 00 00 */ stb r0, 0(r3)
|
|
/* 8009D534 00099374 88 07 00 01 */ lbz r0, 1(r7)
|
|
/* 8009D538 00099378 98 03 00 01 */ stb r0, 1(r3)
|
|
/* 8009D53C 0009937C 88 07 00 02 */ lbz r0, 2(r7)
|
|
/* 8009D540 00099380 98 03 00 02 */ stb r0, 2(r3)
|
|
/* 8009D544 00099384 88 07 00 03 */ lbz r0, 3(r7)
|
|
/* 8009D548 00099388 98 03 00 03 */ stb r0, 3(r3)
|
|
/* 8009D54C 0009938C 88 07 00 04 */ lbz r0, 4(r7)
|
|
/* 8009D550 00099390 98 03 00 04 */ stb r0, 4(r3)
|
|
/* 8009D554 00099394 88 07 00 05 */ lbz r0, 5(r7)
|
|
/* 8009D558 00099398 98 03 00 05 */ stb r0, 5(r3)
|
|
/* 8009D55C 0009939C 88 07 00 06 */ lbz r0, 6(r7)
|
|
/* 8009D560 000993A0 98 03 00 06 */ stb r0, 6(r3)
|
|
/* 8009D564 000993A4 88 07 00 07 */ lbz r0, 7(r7)
|
|
/* 8009D568 000993A8 38 E7 00 08 */ addi r7, r7, 8
|
|
/* 8009D56C 000993AC 98 03 00 07 */ stb r0, 7(r3)
|
|
/* 8009D570 000993B0 38 63 00 08 */ addi r3, r3, 8
|
|
/* 8009D574 000993B4 42 00 FF B4 */ bdnz lbl_8009D528
|
|
lbl_8009D578:
|
|
/* 8009D578 000993B8 7C 7D 42 14 */ add r3, r29, r8
|
|
/* 8009D57C 000993BC 7C 08 20 50 */ subf r0, r8, r4
|
|
/* 8009D580 000993C0 38 63 00 AB */ addi r3, r3, 0xab
|
|
/* 8009D584 000993C4 7C 09 03 A6 */ mtctr r0
|
|
/* 8009D588 000993C8 7C 08 20 00 */ cmpw r8, r4
|
|
/* 8009D58C 000993CC 40 80 00 24 */ bge lbl_8009D5B0
|
|
lbl_8009D590:
|
|
/* 8009D590 000993D0 88 07 00 00 */ lbz r0, 0(r7)
|
|
/* 8009D594 000993D4 38 E7 00 01 */ addi r7, r7, 1
|
|
/* 8009D598 000993D8 98 03 00 00 */ stb r0, 0(r3)
|
|
/* 8009D59C 000993DC 38 63 00 01 */ addi r3, r3, 1
|
|
/* 8009D5A0 000993E0 42 00 FF F0 */ bdnz lbl_8009D590
|
|
/* 8009D5A4 000993E4 48 00 00 0C */ b lbl_8009D5B0
|
|
lbl_8009D5A8:
|
|
/* 8009D5A8 000993E8 38 00 00 00 */ li r0, 0
|
|
/* 8009D5AC 000993EC 90 1C 00 00 */ stw r0, 0(r28)
|
|
lbl_8009D5B0:
|
|
/* 8009D5B0 000993F0 7F E3 FB 78 */ mr r3, r31
|
|
/* 8009D5B4 000993F4 83 E1 00 1C */ lwz r31, 0x1c(r1)
|
|
/* 8009D5B8 000993F8 83 C1 00 18 */ lwz r30, 0x18(r1)
|
|
/* 8009D5BC 000993FC 83 A1 00 14 */ lwz r29, 0x14(r1)
|
|
/* 8009D5C0 00099400 83 81 00 10 */ lwz r28, 0x10(r1)
|
|
/* 8009D5C4 00099404 80 01 00 24 */ lwz r0, 0x24(r1)
|
|
/* 8009D5C8 00099408 7C 08 03 A6 */ mtlr r0
|
|
/* 8009D5CC 0009940C 38 21 00 20 */ addi r1, r1, 0x20
|
|
/* 8009D5D0 00099410 4E 80 00 20 */ blr
|
|
|
|
.global SDP_SetTraceLevel
|
|
SDP_SetTraceLevel:
|
|
/* 8009D5D4 00099414 28 03 00 FF */ cmplwi r3, 0xff
|
|
/* 8009D5D8 00099418 41 82 00 10 */ beq lbl_8009D5E8
|
|
/* 8009D5DC 0009941C 3C 80 80 50 */ lis r4, sdp_cb@ha
|
|
/* 8009D5E0 00099420 38 84 9C 20 */ addi r4, r4, sdp_cb@l
|
|
/* 8009D5E4 00099424 98 64 46 30 */ stb r3, 0x4630(r4)
|
|
lbl_8009D5E8:
|
|
/* 8009D5E8 00099428 3C 60 80 50 */ lis r3, sdp_cb@ha
|
|
/* 8009D5EC 0009942C 38 63 9C 20 */ addi r3, r3, sdp_cb@l
|
|
/* 8009D5F0 00099430 88 63 46 30 */ lbz r3, 0x4630(r3)
|
|
/* 8009D5F4 00099434 4E 80 00 20 */ blr
|
|
|
|
.section .data, "wa" # 0x80421040 - 0x80496700
|
|
.global $$21415
|
|
$$21415:
|
|
.asciz "SDP_InitDiscoveryDb Illegal param: p_db 0x%x, len %d, num_uuid %d, num_attr %d"
|
|
.balign 4
|