1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global sdpu_build_uuid_seq
sdpu_build_uuid_seq:
/* 802E391C 002DF57C 38 00 00 35 */ li r0, 0x35
/* 802E3920 002DF580 39 63 00 01 */ addi r11, r3, 1
/* 802E3924 002DF584 7D 6A 5B 78 */ mr r10, r11
/* 802E3928 002DF588 98 03 00 00 */ stb r0, 0(r3)
/* 802E392C 002DF58C 39 20 00 00 */ li r9, 0
/* 802E3930 002DF590 38 C0 00 1C */ li r6, 0x1c
/* 802E3934 002DF594 38 E0 00 1A */ li r7, 0x1a
/* 802E3938 002DF598 39 00 00 19 */ li r8, 0x19
/* 802E393C 002DF59C 7C 89 03 A6 */ mtctr r4
/* 802E3940 002DF5A0 28 04 00 00 */ cmplwi r4, 0
/* 802E3944 002DF5A4 39 6B 00 01 */ addi r11, r11, 1
/* 802E3948 002DF5A8 40 81 00 AC */ ble lbl_802E39F4
lbl_802E394C:
/* 802E394C 002DF5AC A0 05 00 00 */ lhz r0, 0(r5)
/* 802E3950 002DF5B0 28 00 00 02 */ cmplwi r0, 2
/* 802E3954 002DF5B4 40 82 00 24 */ bne lbl_802E3978
/* 802E3958 002DF5B8 99 0B 00 00 */ stb r8, 0(r11)
/* 802E395C 002DF5BC A0 05 00 04 */ lhz r0, 4(r5)
/* 802E3960 002DF5C0 7C 00 46 70 */ srawi r0, r0, 8
/* 802E3964 002DF5C4 98 0B 00 01 */ stb r0, 1(r11)
/* 802E3968 002DF5C8 A0 05 00 04 */ lhz r0, 4(r5)
/* 802E396C 002DF5CC 98 0B 00 02 */ stb r0, 2(r11)
/* 802E3970 002DF5D0 39 6B 00 03 */ addi r11, r11, 3
/* 802E3974 002DF5D4 48 00 00 74 */ b lbl_802E39E8
lbl_802E3978:
/* 802E3978 002DF5D8 28 00 00 04 */ cmplwi r0, 4
/* 802E397C 002DF5DC 40 82 00 3C */ bne lbl_802E39B8
/* 802E3980 002DF5E0 98 EB 00 00 */ stb r7, 0(r11)
/* 802E3984 002DF5E4 80 05 00 04 */ lwz r0, 4(r5)
/* 802E3988 002DF5E8 54 00 46 3E */ srwi r0, r0, 0x18
/* 802E398C 002DF5EC 98 0B 00 01 */ stb r0, 1(r11)
/* 802E3990 002DF5F0 80 05 00 04 */ lwz r0, 4(r5)
/* 802E3994 002DF5F4 54 00 86 3E */ rlwinm r0, r0, 0x10, 0x18, 0x1f
/* 802E3998 002DF5F8 98 0B 00 02 */ stb r0, 2(r11)
/* 802E399C 002DF5FC 80 05 00 04 */ lwz r0, 4(r5)
/* 802E39A0 002DF600 54 00 C6 3E */ rlwinm r0, r0, 0x18, 0x18, 0x1f
/* 802E39A4 002DF604 98 0B 00 03 */ stb r0, 3(r11)
/* 802E39A8 002DF608 80 05 00 04 */ lwz r0, 4(r5)
/* 802E39AC 002DF60C 98 0B 00 04 */ stb r0, 4(r11)
/* 802E39B0 002DF610 39 6B 00 05 */ addi r11, r11, 5
/* 802E39B4 002DF614 48 00 00 34 */ b lbl_802E39E8
lbl_802E39B8:
/* 802E39B8 002DF618 98 CB 00 00 */ stb r6, 0(r11)
/* 802E39BC 002DF61C 38 80 00 00 */ li r4, 0
/* 802E39C0 002DF620 39 6B 00 01 */ addi r11, r11, 1
/* 802E39C4 002DF624 48 00 00 18 */ b lbl_802E39DC
lbl_802E39C8:
/* 802E39C8 002DF628 7C 65 22 14 */ add r3, r5, r4
/* 802E39CC 002DF62C 38 84 00 01 */ addi r4, r4, 1
/* 802E39D0 002DF630 88 03 00 04 */ lbz r0, 4(r3)
/* 802E39D4 002DF634 98 0B 00 00 */ stb r0, 0(r11)
/* 802E39D8 002DF638 39 6B 00 01 */ addi r11, r11, 1
lbl_802E39DC:
/* 802E39DC 002DF63C A0 05 00 00 */ lhz r0, 0(r5)
/* 802E39E0 002DF640 7C 04 00 00 */ cmpw r4, r0
/* 802E39E4 002DF644 41 80 FF E4 */ blt lbl_802E39C8
lbl_802E39E8:
/* 802E39E8 002DF648 39 29 00 01 */ addi r9, r9, 1
/* 802E39EC 002DF64C 38 A5 00 14 */ addi r5, r5, 0x14
/* 802E39F0 002DF650 42 00 FF 5C */ bdnz lbl_802E394C
lbl_802E39F4:
/* 802E39F4 002DF654 7C 8A 58 50 */ subf r4, r10, r11
/* 802E39F8 002DF658 7D 63 5B 78 */ mr r3, r11
/* 802E39FC 002DF65C 38 04 FF FF */ addi r0, r4, -1
/* 802E3A00 002DF660 98 0A 00 00 */ stb r0, 0(r10)
/* 802E3A04 002DF664 4E 80 00 20 */ blr
.global sdp_snd_service_search_req
sdp_snd_service_search_req:
/* 802E3A08 002DF668 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802E3A0C 002DF66C 7C 08 02 A6 */ mflr r0
/* 802E3A10 002DF670 90 01 00 34 */ stw r0, 0x34(r1)
/* 802E3A14 002DF674 39 61 00 30 */ addi r11, r1, 0x30
/* 802E3A18 002DF678 4B EE 37 09 */ bl _savegpr_25
/* 802E3A1C 002DF67C 7C 7A 1B 78 */ mr r26, r3
/* 802E3A20 002DF680 7C 9B 23 78 */ mr r27, r4
/* 802E3A24 002DF684 7C BC 2B 78 */ mr r28, r5
/* 802E3A28 002DF688 38 60 00 02 */ li r3, 2
/* 802E3A2C 002DF68C 4B FD 62 21 */ bl GKI_getpoolbuf
/* 802E3A30 002DF690 2C 03 00 00 */ cmpwi r3, 0
/* 802E3A34 002DF694 7C 7D 1B 78 */ mr r29, r3
/* 802E3A38 002DF698 40 82 00 14 */ bne lbl_802E3A4C
/* 802E3A3C 002DF69C 7F 43 D3 78 */ mr r3, r26
/* 802E3A40 002DF6A0 38 80 00 06 */ li r4, 6
/* 802E3A44 002DF6A4 48 00 1A DD */ bl sdp_disconnect
/* 802E3A48 002DF6A8 48 00 00 D8 */ b lbl_802E3B20
lbl_802E3A4C:
/* 802E3A4C 002DF6AC 38 00 00 09 */ li r0, 9
/* 802E3A50 002DF6B0 3B C3 00 11 */ addi r30, r3, 0x11
/* 802E3A54 002DF6B4 B0 03 00 04 */ sth r0, 4(r3)
/* 802E3A58 002DF6B8 38 00 00 02 */ li r0, 2
/* 802E3A5C 002DF6BC 3B FE 00 03 */ addi r31, r30, 3
/* 802E3A60 002DF6C0 98 03 00 11 */ stb r0, 0x11(r3)
/* 802E3A64 002DF6C4 38 7F 00 02 */ addi r3, r31, 2
/* 802E3A68 002DF6C8 A0 1A 04 70 */ lhz r0, 0x470(r26)
/* 802E3A6C 002DF6CC 7C 00 46 70 */ srawi r0, r0, 8
/* 802E3A70 002DF6D0 98 1E 00 01 */ stb r0, 1(r30)
/* 802E3A74 002DF6D4 A0 1A 04 70 */ lhz r0, 0x470(r26)
/* 802E3A78 002DF6D8 98 1E 00 02 */ stb r0, 2(r30)
/* 802E3A7C 002DF6DC A0 9A 04 70 */ lhz r4, 0x470(r26)
/* 802E3A80 002DF6E0 80 DA 04 10 */ lwz r6, 0x410(r26)
/* 802E3A84 002DF6E4 38 04 00 01 */ addi r0, r4, 1
/* 802E3A88 002DF6E8 B0 1A 04 70 */ sth r0, 0x470(r26)
/* 802E3A8C 002DF6EC 38 A6 00 10 */ addi r5, r6, 0x10
/* 802E3A90 002DF6F0 A0 86 00 0C */ lhz r4, 0xc(r6)
/* 802E3A94 002DF6F4 4B FF FE 89 */ bl sdpu_build_uuid_seq
/* 802E3A98 002DF6F8 3C 80 80 57 */ lis r4, lbl_8056C840@ha
/* 802E3A9C 002DF6FC 2C 1B 00 00 */ cmpwi r27, 0
/* 802E3AA0 002DF700 38 84 C8 40 */ addi r4, r4, lbl_8056C840@l
/* 802E3AA4 002DF704 3B 23 00 03 */ addi r25, r3, 3
/* 802E3AA8 002DF708 A0 04 46 2E */ lhz r0, 0x462e(r4)
/* 802E3AAC 002DF70C 7C 00 46 70 */ srawi r0, r0, 8
/* 802E3AB0 002DF710 98 03 00 00 */ stb r0, 0(r3)
/* 802E3AB4 002DF714 A0 04 46 2E */ lhz r0, 0x462e(r4)
/* 802E3AB8 002DF718 98 03 00 01 */ stb r0, 1(r3)
/* 802E3ABC 002DF71C 9B 63 00 02 */ stb r27, 2(r3)
/* 802E3AC0 002DF720 41 82 00 20 */ beq lbl_802E3AE0
/* 802E3AC4 002DF724 2C 1C 00 00 */ cmpwi r28, 0
/* 802E3AC8 002DF728 41 82 00 18 */ beq lbl_802E3AE0
/* 802E3ACC 002DF72C 7F 23 CB 78 */ mr r3, r25
/* 802E3AD0 002DF730 7F 84 E3 78 */ mr r4, r28
/* 802E3AD4 002DF734 7F 65 DB 78 */ mr r5, r27
/* 802E3AD8 002DF738 4B D2 05 29 */ bl memcpy
/* 802E3ADC 002DF73C 7F 39 DA 14 */ add r25, r25, r27
lbl_802E3AE0:
/* 802E3AE0 002DF740 7C 9F C8 50 */ subf r4, r31, r25
/* 802E3AE4 002DF744 38 60 00 01 */ li r3, 1
/* 802E3AE8 002DF748 38 C4 FF FE */ addi r6, r4, -2
/* 802E3AEC 002DF74C 7C 1E C8 50 */ subf r0, r30, r25
/* 802E3AF0 002DF750 54 C5 C6 3E */ rlwinm r5, r6, 0x18, 0x18, 0x1f
/* 802E3AF4 002DF754 7F A4 EB 78 */ mr r4, r29
/* 802E3AF8 002DF758 98 BF 00 00 */ stb r5, 0(r31)
/* 802E3AFC 002DF75C 98 DF 00 01 */ stb r6, 1(r31)
/* 802E3B00 002DF760 98 7A 04 74 */ stb r3, 0x474(r26)
/* 802E3B04 002DF764 B0 1D 00 02 */ sth r0, 2(r29)
/* 802E3B08 002DF768 A0 7A 00 22 */ lhz r3, 0x22(r26)
/* 802E3B0C 002DF76C 4B FF 25 E5 */ bl L2CA_DataWrite
/* 802E3B10 002DF770 38 7A 00 08 */ addi r3, r26, 8
/* 802E3B14 002DF774 38 80 00 05 */ li r4, 5
/* 802E3B18 002DF778 38 A0 00 1E */ li r5, 0x1e
/* 802E3B1C 002DF77C 4B FD 99 C1 */ bl btu_start_timer
lbl_802E3B20:
/* 802E3B20 002DF780 39 61 00 30 */ addi r11, r1, 0x30
/* 802E3B24 002DF784 4B EE 36 49 */ bl _restgpr_25
/* 802E3B28 002DF788 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802E3B2C 002DF78C 7C 08 03 A6 */ mtlr r0
/* 802E3B30 002DF790 38 21 00 30 */ addi r1, r1, 0x30
/* 802E3B34 002DF794 4E 80 00 20 */ blr
.global sdp_disc_connected
sdp_disc_connected:
/* 802E3B38 002DF798 88 03 04 75 */ lbz r0, 0x475(r3)
/* 802E3B3C 002DF79C 2C 00 00 00 */ cmpwi r0, 0
/* 802E3B40 002DF7A0 41 82 00 18 */ beq lbl_802E3B58
/* 802E3B44 002DF7A4 38 00 00 03 */ li r0, 3
/* 802E3B48 002DF7A8 38 80 00 00 */ li r4, 0
/* 802E3B4C 002DF7AC 98 03 04 74 */ stb r0, 0x474(r3)
/* 802E3B50 002DF7B0 38 A0 00 00 */ li r5, 0
/* 802E3B54 002DF7B4 48 00 05 48 */ b process_service_search_attr_rsp
lbl_802E3B58:
/* 802E3B58 002DF7B8 38 00 00 00 */ li r0, 0
/* 802E3B5C 002DF7BC 38 80 00 00 */ li r4, 0
/* 802E3B60 002DF7C0 B0 03 04 6C */ sth r0, 0x46c(r3)
/* 802E3B64 002DF7C4 38 A0 00 00 */ li r5, 0
/* 802E3B68 002DF7C8 4B FF FE A0 */ b sdp_snd_service_search_req
.global sdp_disc_server_rsp
sdp_disc_server_rsp:
/* 802E3B6C 002DF7CC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802E3B70 002DF7D0 7C 08 02 A6 */ mflr r0
/* 802E3B74 002DF7D4 90 01 00 24 */ stw r0, 0x24(r1)
/* 802E3B78 002DF7D8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 802E3B7C 002DF7DC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 802E3B80 002DF7E0 3B C0 00 01 */ li r30, 1
/* 802E3B84 002DF7E4 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802E3B88 002DF7E8 7C 9D 23 78 */ mr r29, r4
/* 802E3B8C 002DF7EC 93 81 00 10 */ stw r28, 0x10(r1)
/* 802E3B90 002DF7F0 7C 7C 1B 78 */ mr r28, r3
/* 802E3B94 002DF7F4 38 63 00 08 */ addi r3, r3, 8
/* 802E3B98 002DF7F8 4B FD 99 B5 */ bl btu_stop_timer
/* 802E3B9C 002DF7FC A0 1D 00 04 */ lhz r0, 4(r29)
/* 802E3BA0 002DF800 A0 7D 00 02 */ lhz r3, 2(r29)
/* 802E3BA4 002DF804 7C 9D 02 14 */ add r4, r29, r0
/* 802E3BA8 002DF808 8B E4 00 08 */ lbz r31, 8(r4)
/* 802E3BAC 002DF80C 38 A3 FF FF */ addi r5, r3, -1
/* 802E3BB0 002DF810 2C 1F 00 05 */ cmpwi r31, 5
/* 802E3BB4 002DF814 B0 BD 00 02 */ sth r5, 2(r29)
/* 802E3BB8 002DF818 41 82 00 44 */ beq lbl_802E3BFC
/* 802E3BBC 002DF81C 40 80 00 10 */ bge lbl_802E3BCC
/* 802E3BC0 002DF820 2C 1F 00 03 */ cmpwi r31, 3
/* 802E3BC4 002DF824 41 82 00 14 */ beq lbl_802E3BD8
/* 802E3BC8 002DF828 48 00 00 78 */ b lbl_802E3C40
lbl_802E3BCC:
/* 802E3BCC 002DF82C 2C 1F 00 07 */ cmpwi r31, 7
/* 802E3BD0 002DF830 41 82 00 50 */ beq lbl_802E3C20
/* 802E3BD4 002DF834 48 00 00 6C */ b lbl_802E3C40
lbl_802E3BD8:
/* 802E3BD8 002DF838 88 1C 04 74 */ lbz r0, 0x474(r28)
/* 802E3BDC 002DF83C 28 00 00 01 */ cmplwi r0, 1
/* 802E3BE0 002DF840 40 82 00 60 */ bne lbl_802E3C40
/* 802E3BE4 002DF844 7F 83 E3 78 */ mr r3, r28
/* 802E3BE8 002DF848 38 84 00 09 */ addi r4, r4, 9
/* 802E3BEC 002DF84C 54 A5 04 3E */ clrlwi r5, r5, 0x10
/* 802E3BF0 002DF850 48 00 00 BD */ bl process_service_search_rsp
/* 802E3BF4 002DF854 3B C0 00 00 */ li r30, 0
/* 802E3BF8 002DF858 48 00 00 48 */ b lbl_802E3C40
lbl_802E3BFC:
/* 802E3BFC 002DF85C 88 1C 04 74 */ lbz r0, 0x474(r28)
/* 802E3C00 002DF860 28 00 00 02 */ cmplwi r0, 2
/* 802E3C04 002DF864 40 82 00 3C */ bne lbl_802E3C40
/* 802E3C08 002DF868 7F 83 E3 78 */ mr r3, r28
/* 802E3C0C 002DF86C 38 84 00 09 */ addi r4, r4, 9
/* 802E3C10 002DF870 54 A5 04 3E */ clrlwi r5, r5, 0x10
/* 802E3C14 002DF874 48 00 01 E1 */ bl process_service_attr_rsp
/* 802E3C18 002DF878 3B C0 00 00 */ li r30, 0
/* 802E3C1C 002DF87C 48 00 00 24 */ b lbl_802E3C40
lbl_802E3C20:
/* 802E3C20 002DF880 88 1C 04 74 */ lbz r0, 0x474(r28)
/* 802E3C24 002DF884 28 00 00 03 */ cmplwi r0, 3
/* 802E3C28 002DF888 40 82 00 18 */ bne lbl_802E3C40
/* 802E3C2C 002DF88C 7F 83 E3 78 */ mr r3, r28
/* 802E3C30 002DF890 38 84 00 09 */ addi r4, r4, 9
/* 802E3C34 002DF894 54 A5 04 3E */ clrlwi r5, r5, 0x10
/* 802E3C38 002DF898 48 00 04 65 */ bl process_service_search_attr_rsp
/* 802E3C3C 002DF89C 3B C0 00 00 */ li r30, 0
lbl_802E3C40:
/* 802E3C40 002DF8A0 2C 1E 00 00 */ cmpwi r30, 0
/* 802E3C44 002DF8A4 41 82 00 48 */ beq lbl_802E3C8C
/* 802E3C48 002DF8A8 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E3C4C 002DF8AC 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E3C50 002DF8B0 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E3C54 002DF8B4 28 00 00 02 */ cmplwi r0, 2
/* 802E3C58 002DF8B8 41 80 00 20 */ blt lbl_802E3C78
/* 802E3C5C 002DF8BC 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E3C60 002DF8C0 3C 80 80 44 */ lis r4, lbl_80445048@ha
/* 802E3C64 002DF8C4 88 DC 04 74 */ lbz r6, 0x474(r28)
/* 802E3C68 002DF8C8 7F E5 FB 78 */ mr r5, r31
/* 802E3C6C 002DF8CC 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E3C70 002DF8D0 38 84 50 48 */ addi r4, r4, lbl_80445048@l
/* 802E3C74 002DF8D4 4B FD 92 CD */ bl LogMsg_2
lbl_802E3C78:
/* 802E3C78 002DF8D8 3C 80 00 01 */ lis r4, 0x0000FFF3@ha
/* 802E3C7C 002DF8DC 7F 83 E3 78 */ mr r3, r28
/* 802E3C80 002DF8E0 38 04 FF F3 */ addi r0, r4, 0x0000FFF3@l
/* 802E3C84 002DF8E4 54 04 04 3E */ clrlwi r4, r0, 0x10
/* 802E3C88 002DF8E8 48 00 18 99 */ bl sdp_disconnect
lbl_802E3C8C:
/* 802E3C8C 002DF8EC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802E3C90 002DF8F0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802E3C94 002DF8F4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802E3C98 002DF8F8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802E3C9C 002DF8FC 83 81 00 10 */ lwz r28, 0x10(r1)
/* 802E3CA0 002DF900 7C 08 03 A6 */ mtlr r0
/* 802E3CA4 002DF904 38 21 00 20 */ addi r1, r1, 0x20
/* 802E3CA8 002DF908 4E 80 00 20 */ blr
.global process_service_search_rsp
process_service_search_rsp:
/* 802E3CAC 002DF90C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802E3CB0 002DF910 7C 08 02 A6 */ mflr r0
/* 802E3CB4 002DF914 38 A4 00 08 */ addi r5, r4, 8
/* 802E3CB8 002DF918 90 01 00 14 */ stw r0, 0x14(r1)
/* 802E3CBC 002DF91C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802E3CC0 002DF920 7C 7F 1B 78 */ mr r31, r3
/* 802E3CC4 002DF924 88 C4 00 06 */ lbz r6, 6(r4)
/* 802E3CC8 002DF928 88 04 00 07 */ lbz r0, 7(r4)
/* 802E3CCC 002DF92C 54 C4 40 2E */ slwi r4, r6, 8
/* 802E3CD0 002DF930 A1 23 04 6C */ lhz r9, 0x46c(r3)
/* 802E3CD4 002DF934 7C 04 02 14 */ add r0, r4, r0
/* 802E3CD8 002DF938 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 802E3CDC 002DF93C 7C 09 02 14 */ add r0, r9, r0
/* 802E3CE0 002DF940 54 06 04 3F */ clrlwi. r6, r0, 0x10
/* 802E3CE4 002DF944 B0 03 04 6C */ sth r0, 0x46c(r3)
/* 802E3CE8 002DF948 40 82 00 44 */ bne lbl_802E3D2C
/* 802E3CEC 002DF94C 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E3CF0 002DF950 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E3CF4 002DF954 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E3CF8 002DF958 28 00 00 02 */ cmplwi r0, 2
/* 802E3CFC 002DF95C 41 80 00 18 */ blt lbl_802E3D14
/* 802E3D00 002DF960 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E3D04 002DF964 3C 80 80 44 */ lis r4, lbl_80445070@ha
/* 802E3D08 002DF968 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E3D0C 002DF96C 38 84 50 70 */ addi r4, r4, lbl_80445070@l
/* 802E3D10 002DF970 4B FD 92 01 */ bl LogMsg_0
lbl_802E3D14:
/* 802E3D14 002DF974 3C 80 00 01 */ lis r4, 0x0000FFF0@ha
/* 802E3D18 002DF978 7F E3 FB 78 */ mr r3, r31
/* 802E3D1C 002DF97C 38 04 FF F0 */ addi r0, r4, 0x0000FFF0@l
/* 802E3D20 002DF980 54 04 04 3E */ clrlwi r4, r0, 0x10
/* 802E3D24 002DF984 48 00 17 FD */ bl sdp_disconnect
/* 802E3D28 002DF988 48 00 00 B8 */ b lbl_802E3DE0
lbl_802E3D2C:
/* 802E3D2C 002DF98C 3C 80 80 57 */ lis r4, lbl_8056C840@ha
/* 802E3D30 002DF990 38 84 C8 40 */ addi r4, r4, lbl_8056C840@l
/* 802E3D34 002DF994 A0 04 46 2E */ lhz r0, 0x462e(r4)
/* 802E3D38 002DF998 7C 06 00 40 */ cmplw r6, r0
/* 802E3D3C 002DF99C 40 81 00 48 */ ble lbl_802E3D84
/* 802E3D40 002DF9A0 B0 03 04 6C */ sth r0, 0x46c(r3)
/* 802E3D44 002DF9A4 48 00 00 40 */ b lbl_802E3D84
lbl_802E3D48:
/* 802E3D48 002DF9A8 55 20 13 BA */ rlwinm r0, r9, 2, 0xe, 0x1d
/* 802E3D4C 002DF9AC 88 E5 00 00 */ lbz r7, 0(r5)
/* 802E3D50 002DF9B0 88 C5 00 01 */ lbz r6, 1(r5)
/* 802E3D54 002DF9B4 7C 83 02 14 */ add r4, r3, r0
/* 802E3D58 002DF9B8 88 05 00 02 */ lbz r0, 2(r5)
/* 802E3D5C 002DF9BC 54 E8 C0 0E */ slwi r8, r7, 0x18
/* 802E3D60 002DF9C0 88 E5 00 03 */ lbz r7, 3(r5)
/* 802E3D64 002DF9C4 54 C6 80 1E */ slwi r6, r6, 0x10
/* 802E3D68 002DF9C8 54 00 40 2E */ slwi r0, r0, 8
/* 802E3D6C 002DF9CC 38 A5 00 04 */ addi r5, r5, 4
/* 802E3D70 002DF9D0 7C C8 32 14 */ add r6, r8, r6
/* 802E3D74 002DF9D4 39 29 00 01 */ addi r9, r9, 1
/* 802E3D78 002DF9D8 7C 07 02 14 */ add r0, r7, r0
/* 802E3D7C 002DF9DC 7C 06 02 14 */ add r0, r6, r0
/* 802E3D80 002DF9E0 90 04 04 18 */ stw r0, 0x418(r4)
lbl_802E3D84:
/* 802E3D84 002DF9E4 A0 03 04 6C */ lhz r0, 0x46c(r3)
/* 802E3D88 002DF9E8 55 24 04 3E */ clrlwi r4, r9, 0x10
/* 802E3D8C 002DF9EC 7C 04 00 40 */ cmplw r4, r0
/* 802E3D90 002DF9F0 41 80 FF B8 */ blt lbl_802E3D48
/* 802E3D94 002DF9F4 88 85 00 00 */ lbz r4, 0(r5)
/* 802E3D98 002DF9F8 2C 04 00 00 */ cmpwi r4, 0
/* 802E3D9C 002DF9FC 41 82 00 2C */ beq lbl_802E3DC8
/* 802E3DA0 002DFA00 28 04 00 10 */ cmplwi r4, 0x10
/* 802E3DA4 002DFA04 40 81 00 14 */ ble lbl_802E3DB8
/* 802E3DA8 002DFA08 7F E3 FB 78 */ mr r3, r31
/* 802E3DAC 002DFA0C 38 80 00 05 */ li r4, 5
/* 802E3DB0 002DFA10 48 00 17 71 */ bl sdp_disconnect
/* 802E3DB4 002DFA14 48 00 00 2C */ b lbl_802E3DE0
lbl_802E3DB8:
/* 802E3DB8 002DFA18 7F E3 FB 78 */ mr r3, r31
/* 802E3DBC 002DFA1C 38 A5 00 01 */ addi r5, r5, 1
/* 802E3DC0 002DFA20 4B FF FC 49 */ bl sdp_snd_service_search_req
/* 802E3DC4 002DFA24 48 00 00 1C */ b lbl_802E3DE0
lbl_802E3DC8:
/* 802E3DC8 002DFA28 38 00 00 02 */ li r0, 2
/* 802E3DCC 002DFA2C 38 80 00 00 */ li r4, 0
/* 802E3DD0 002DFA30 98 03 04 74 */ stb r0, 0x474(r3)
/* 802E3DD4 002DFA34 7F E3 FB 78 */ mr r3, r31
/* 802E3DD8 002DFA38 38 A0 00 00 */ li r5, 0
/* 802E3DDC 002DFA3C 48 00 00 19 */ bl process_service_attr_rsp
lbl_802E3DE0:
/* 802E3DE0 002DFA40 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802E3DE4 002DFA44 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802E3DE8 002DFA48 7C 08 03 A6 */ mtlr r0
/* 802E3DEC 002DFA4C 38 21 00 10 */ addi r1, r1, 0x10
/* 802E3DF0 002DFA50 4E 80 00 20 */ blr
.global process_service_attr_rsp
process_service_attr_rsp:
/* 802E3DF4 002DFA54 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802E3DF8 002DFA58 7C 08 02 A6 */ mflr r0
/* 802E3DFC 002DFA5C 90 01 00 34 */ stw r0, 0x34(r1)
/* 802E3E00 002DFA60 39 61 00 30 */ addi r11, r1, 0x30
/* 802E3E04 002DFA64 4B EE 33 1D */ bl _savegpr_25
/* 802E3E08 002DFA68 2C 04 00 00 */ cmpwi r4, 0
/* 802E3E0C 002DFA6C 7C 7A 1B 78 */ mr r26, r3
/* 802E3E10 002DFA70 7C 9B 23 78 */ mr r27, r4
/* 802E3E14 002DFA74 3B A0 00 00 */ li r29, 0
/* 802E3E18 002DFA78 41 82 00 D0 */ beq lbl_802E3EE8
/* 802E3E1C 002DFA7C 88 A4 00 04 */ lbz r5, 4(r4)
/* 802E3E20 002DFA80 3B 64 00 06 */ addi r27, r4, 6
/* 802E3E24 002DFA84 88 04 00 05 */ lbz r0, 5(r4)
/* 802E3E28 002DFA88 54 A4 40 2E */ slwi r4, r5, 8
/* 802E3E2C 002DFA8C A0 A3 00 24 */ lhz r5, 0x24(r3)
/* 802E3E30 002DFA90 7C 04 02 14 */ add r0, r4, r0
/* 802E3E34 002DFA94 54 19 04 3E */ clrlwi r25, r0, 0x10
/* 802E3E38 002DFA98 7C 05 CA 14 */ add r0, r5, r25
/* 802E3E3C 002DFA9C 2C 00 03 E8 */ cmpwi r0, 0x3e8
/* 802E3E40 002DFAA0 40 81 00 10 */ ble lbl_802E3E50
/* 802E3E44 002DFAA4 38 80 00 04 */ li r4, 4
/* 802E3E48 002DFAA8 48 00 16 D9 */ bl sdp_disconnect
/* 802E3E4C 002DFAAC 48 00 02 38 */ b lbl_802E4084
lbl_802E3E50:
/* 802E3E50 002DFAB0 7C 63 2A 14 */ add r3, r3, r5
/* 802E3E54 002DFAB4 7F 64 DB 78 */ mr r4, r27
/* 802E3E58 002DFAB8 7F 25 CB 78 */ mr r5, r25
/* 802E3E5C 002DFABC 38 63 00 26 */ addi r3, r3, 0x26
/* 802E3E60 002DFAC0 4B D2 01 A1 */ bl memcpy
/* 802E3E64 002DFAC4 A0 1A 00 24 */ lhz r0, 0x24(r26)
/* 802E3E68 002DFAC8 7C 00 CA 14 */ add r0, r0, r25
/* 802E3E6C 002DFACC B0 1A 00 24 */ sth r0, 0x24(r26)
/* 802E3E70 002DFAD0 7C 7B C8 EE */ lbzux r3, r27, r25
/* 802E3E74 002DFAD4 2C 03 00 00 */ cmpwi r3, 0
/* 802E3E78 002DFAD8 41 82 00 24 */ beq lbl_802E3E9C
/* 802E3E7C 002DFADC 28 03 00 10 */ cmplwi r3, 0x10
/* 802E3E80 002DFAE0 40 81 00 14 */ ble lbl_802E3E94
/* 802E3E84 002DFAE4 7F 43 D3 78 */ mr r3, r26
/* 802E3E88 002DFAE8 38 80 00 05 */ li r4, 5
/* 802E3E8C 002DFAEC 48 00 16 95 */ bl sdp_disconnect
/* 802E3E90 002DFAF0 48 00 01 F4 */ b lbl_802E4084
lbl_802E3E94:
/* 802E3E94 002DFAF4 3B A0 00 01 */ li r29, 1
/* 802E3E98 002DFAF8 48 00 00 50 */ b lbl_802E3EE8
lbl_802E3E9C:
/* 802E3E9C 002DFAFC 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 802E3EA0 002DFB00 7F 43 D3 78 */ mr r3, r26
/* 802E3EA4 002DFB04 7C BA 02 14 */ add r5, r26, r0
/* 802E3EA8 002DFB08 38 9A 00 26 */ addi r4, r26, 0x26
/* 802E3EAC 002DFB0C 38 A5 00 26 */ addi r5, r5, 0x26
/* 802E3EB0 002DFB10 48 00 04 C1 */ bl save_attr_seq
/* 802E3EB4 002DFB14 2C 03 00 00 */ cmpwi r3, 0
/* 802E3EB8 002DFB18 40 82 00 1C */ bne lbl_802E3ED4
/* 802E3EBC 002DFB1C 3C 80 00 01 */ lis r4, 0x0000FFF4@ha
/* 802E3EC0 002DFB20 7F 43 D3 78 */ mr r3, r26
/* 802E3EC4 002DFB24 38 04 FF F4 */ addi r0, r4, 0x0000FFF4@l
/* 802E3EC8 002DFB28 54 04 04 3E */ clrlwi r4, r0, 0x10
/* 802E3ECC 002DFB2C 48 00 16 55 */ bl sdp_disconnect
/* 802E3ED0 002DFB30 48 00 01 B4 */ b lbl_802E4084
lbl_802E3ED4:
/* 802E3ED4 002DFB34 A0 7A 04 6E */ lhz r3, 0x46e(r26)
/* 802E3ED8 002DFB38 38 00 00 00 */ li r0, 0
/* 802E3EDC 002DFB3C B0 1A 00 24 */ sth r0, 0x24(r26)
/* 802E3EE0 002DFB40 38 03 00 01 */ addi r0, r3, 1
/* 802E3EE4 002DFB44 B0 1A 04 6E */ sth r0, 0x46e(r26)
lbl_802E3EE8:
/* 802E3EE8 002DFB48 A0 7A 04 6E */ lhz r3, 0x46e(r26)
/* 802E3EEC 002DFB4C A0 1A 04 6C */ lhz r0, 0x46c(r26)
/* 802E3EF0 002DFB50 7C 03 00 40 */ cmplw r3, r0
/* 802E3EF4 002DFB54 40 80 01 84 */ bge lbl_802E4078
/* 802E3EF8 002DFB58 38 60 00 02 */ li r3, 2
/* 802E3EFC 002DFB5C 4B FD 5D 51 */ bl GKI_getpoolbuf
/* 802E3F00 002DFB60 2C 03 00 00 */ cmpwi r3, 0
/* 802E3F04 002DFB64 7C 7C 1B 78 */ mr r28, r3
/* 802E3F08 002DFB68 40 82 00 14 */ bne lbl_802E3F1C
/* 802E3F0C 002DFB6C 7F 43 D3 78 */ mr r3, r26
/* 802E3F10 002DFB70 38 80 00 06 */ li r4, 6
/* 802E3F14 002DFB74 48 00 16 0D */ bl sdp_disconnect
/* 802E3F18 002DFB78 48 00 01 6C */ b lbl_802E4084
lbl_802E3F1C:
/* 802E3F1C 002DFB7C 38 00 00 09 */ li r0, 9
/* 802E3F20 002DFB80 3C 80 80 57 */ lis r4, lbl_8056C840@ha
/* 802E3F24 002DFB84 B0 03 00 04 */ sth r0, 4(r3)
/* 802E3F28 002DFB88 3B E3 00 11 */ addi r31, r3, 0x11
/* 802E3F2C 002DFB8C 38 00 00 04 */ li r0, 4
/* 802E3F30 002DFB90 38 84 C8 40 */ addi r4, r4, lbl_8056C840@l
/* 802E3F34 002DFB94 98 1F 00 00 */ stb r0, 0(r31)
/* 802E3F38 002DFB98 38 7F 00 03 */ addi r3, r31, 3
/* 802E3F3C 002DFB9C 7C 7E 1B 78 */ mr r30, r3
/* 802E3F40 002DFBA0 A0 1A 04 70 */ lhz r0, 0x470(r26)
/* 802E3F44 002DFBA4 38 63 00 08 */ addi r3, r3, 8
/* 802E3F48 002DFBA8 7C 00 46 70 */ srawi r0, r0, 8
/* 802E3F4C 002DFBAC 98 1F 00 01 */ stb r0, 1(r31)
/* 802E3F50 002DFBB0 A0 1A 04 70 */ lhz r0, 0x470(r26)
/* 802E3F54 002DFBB4 98 1F 00 02 */ stb r0, 2(r31)
/* 802E3F58 002DFBB8 A0 BA 04 70 */ lhz r5, 0x470(r26)
/* 802E3F5C 002DFBBC A0 1A 04 6E */ lhz r0, 0x46e(r26)
/* 802E3F60 002DFBC0 38 A5 00 01 */ addi r5, r5, 1
/* 802E3F64 002DFBC4 54 00 10 3A */ slwi r0, r0, 2
/* 802E3F68 002DFBC8 B0 BA 04 70 */ sth r5, 0x470(r26)
/* 802E3F6C 002DFBCC 7C BA 02 14 */ add r5, r26, r0
/* 802E3F70 002DFBD0 80 05 04 18 */ lwz r0, 0x418(r5)
/* 802E3F74 002DFBD4 54 00 46 3E */ srwi r0, r0, 0x18
/* 802E3F78 002DFBD8 98 1F 00 05 */ stb r0, 5(r31)
/* 802E3F7C 002DFBDC A0 1A 04 6E */ lhz r0, 0x46e(r26)
/* 802E3F80 002DFBE0 54 00 10 3A */ slwi r0, r0, 2
/* 802E3F84 002DFBE4 7C BA 02 14 */ add r5, r26, r0
/* 802E3F88 002DFBE8 80 05 04 18 */ lwz r0, 0x418(r5)
/* 802E3F8C 002DFBEC 54 00 86 3E */ rlwinm r0, r0, 0x10, 0x18, 0x1f
/* 802E3F90 002DFBF0 98 1F 00 06 */ stb r0, 6(r31)
/* 802E3F94 002DFBF4 A0 1A 04 6E */ lhz r0, 0x46e(r26)
/* 802E3F98 002DFBF8 54 00 10 3A */ slwi r0, r0, 2
/* 802E3F9C 002DFBFC 7C BA 02 14 */ add r5, r26, r0
/* 802E3FA0 002DFC00 80 05 04 18 */ lwz r0, 0x418(r5)
/* 802E3FA4 002DFC04 54 00 C6 3E */ rlwinm r0, r0, 0x18, 0x18, 0x1f
/* 802E3FA8 002DFC08 98 1F 00 07 */ stb r0, 7(r31)
/* 802E3FAC 002DFC0C A0 1A 04 6E */ lhz r0, 0x46e(r26)
/* 802E3FB0 002DFC10 54 00 10 3A */ slwi r0, r0, 2
/* 802E3FB4 002DFC14 7C BA 02 14 */ add r5, r26, r0
/* 802E3FB8 002DFC18 80 05 04 18 */ lwz r0, 0x418(r5)
/* 802E3FBC 002DFC1C 98 1F 00 08 */ stb r0, 8(r31)
/* 802E3FC0 002DFC20 A0 04 46 2C */ lhz r0, 0x462c(r4)
/* 802E3FC4 002DFC24 7C 00 46 70 */ srawi r0, r0, 8
/* 802E3FC8 002DFC28 98 1F 00 09 */ stb r0, 9(r31)
/* 802E3FCC 002DFC2C A0 04 46 2C */ lhz r0, 0x462c(r4)
/* 802E3FD0 002DFC30 98 1F 00 0A */ stb r0, 0xa(r31)
/* 802E3FD4 002DFC34 80 9A 04 10 */ lwz r4, 0x410(r26)
/* 802E3FD8 002DFC38 A0 A4 00 4C */ lhz r5, 0x4c(r4)
/* 802E3FDC 002DFC3C 2C 05 00 00 */ cmpwi r5, 0
/* 802E3FE0 002DFC40 41 82 00 14 */ beq lbl_802E3FF4
/* 802E3FE4 002DFC44 38 84 00 4E */ addi r4, r4, 0x4e
/* 802E3FE8 002DFC48 48 00 25 65 */ bl sdpu_build_attrib_seq
/* 802E3FEC 002DFC4C 7C 79 1B 78 */ mr r25, r3
/* 802E3FF0 002DFC50 48 00 00 14 */ b lbl_802E4004
lbl_802E3FF4:
/* 802E3FF4 002DFC54 38 80 00 00 */ li r4, 0
/* 802E3FF8 002DFC58 38 A0 00 00 */ li r5, 0
/* 802E3FFC 002DFC5C 48 00 25 51 */ bl sdpu_build_attrib_seq
/* 802E4000 002DFC60 7C 79 1B 78 */ mr r25, r3
lbl_802E4004:
/* 802E4004 002DFC64 2C 1D 00 00 */ cmpwi r29, 0
/* 802E4008 002DFC68 41 82 00 28 */ beq lbl_802E4030
/* 802E400C 002DFC6C 88 BB 00 00 */ lbz r5, 0(r27)
/* 802E4010 002DFC70 7F 23 CB 78 */ mr r3, r25
/* 802E4014 002DFC74 7F 64 DB 78 */ mr r4, r27
/* 802E4018 002DFC78 38 A5 00 01 */ addi r5, r5, 1
/* 802E401C 002DFC7C 4B D1 FF E5 */ bl memcpy
/* 802E4020 002DFC80 88 1B 00 00 */ lbz r0, 0(r27)
/* 802E4024 002DFC84 7C 60 CA 14 */ add r3, r0, r25
/* 802E4028 002DFC88 38 83 00 01 */ addi r4, r3, 1
/* 802E402C 002DFC8C 48 00 00 10 */ b lbl_802E403C
lbl_802E4030:
/* 802E4030 002DFC90 38 00 00 00 */ li r0, 0
/* 802E4034 002DFC94 38 99 00 01 */ addi r4, r25, 1
/* 802E4038 002DFC98 98 19 00 00 */ stb r0, 0(r25)
lbl_802E403C:
/* 802E403C 002DFC9C 7C 7E 20 50 */ subf r3, r30, r4
/* 802E4040 002DFCA0 7C 1F 20 50 */ subf r0, r31, r4
/* 802E4044 002DFCA4 38 A3 FF FE */ addi r5, r3, -2
/* 802E4048 002DFCA8 7F 84 E3 78 */ mr r4, r28
/* 802E404C 002DFCAC 54 A3 C6 3E */ rlwinm r3, r5, 0x18, 0x18, 0x1f
/* 802E4050 002DFCB0 98 7E 00 00 */ stb r3, 0(r30)
/* 802E4054 002DFCB4 98 BE 00 01 */ stb r5, 1(r30)
/* 802E4058 002DFCB8 B0 1C 00 02 */ sth r0, 2(r28)
/* 802E405C 002DFCBC A0 7A 00 22 */ lhz r3, 0x22(r26)
/* 802E4060 002DFCC0 4B FF 20 91 */ bl L2CA_DataWrite
/* 802E4064 002DFCC4 38 7A 00 08 */ addi r3, r26, 8
/* 802E4068 002DFCC8 38 80 00 05 */ li r4, 5
/* 802E406C 002DFCCC 38 A0 00 1E */ li r5, 0x1e
/* 802E4070 002DFCD0 4B FD 94 6D */ bl btu_start_timer
/* 802E4074 002DFCD4 48 00 00 10 */ b lbl_802E4084
lbl_802E4078:
/* 802E4078 002DFCD8 7F 43 D3 78 */ mr r3, r26
/* 802E407C 002DFCDC 38 80 00 00 */ li r4, 0
/* 802E4080 002DFCE0 48 00 14 A1 */ bl sdp_disconnect
lbl_802E4084:
/* 802E4084 002DFCE4 39 61 00 30 */ addi r11, r1, 0x30
/* 802E4088 002DFCE8 4B EE 30 E5 */ bl _restgpr_25
/* 802E408C 002DFCEC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802E4090 002DFCF0 7C 08 03 A6 */ mtlr r0
/* 802E4094 002DFCF4 38 21 00 30 */ addi r1, r1, 0x30
/* 802E4098 002DFCF8 4E 80 00 20 */ blr
.global process_service_search_attr_rsp
process_service_search_attr_rsp:
/* 802E409C 002DFCFC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802E40A0 002DFD00 7C 08 02 A6 */ mflr r0
/* 802E40A4 002DFD04 90 01 00 34 */ stw r0, 0x34(r1)
/* 802E40A8 002DFD08 39 61 00 30 */ addi r11, r1, 0x30
/* 802E40AC 002DFD0C 4B EE 30 79 */ bl _savegpr_26
/* 802E40B0 002DFD10 2C 04 00 00 */ cmpwi r4, 0
/* 802E40B4 002DFD14 7C 7B 1B 78 */ mr r27, r3
/* 802E40B8 002DFD18 7C 9C 23 78 */ mr r28, r4
/* 802E40BC 002DFD1C 3B A0 00 00 */ li r29, 0
/* 802E40C0 002DFD20 41 82 00 80 */ beq lbl_802E4140
/* 802E40C4 002DFD24 88 A4 00 04 */ lbz r5, 4(r4)
/* 802E40C8 002DFD28 3B 84 00 06 */ addi r28, r4, 6
/* 802E40CC 002DFD2C 88 04 00 05 */ lbz r0, 5(r4)
/* 802E40D0 002DFD30 54 A4 40 2E */ slwi r4, r5, 8
/* 802E40D4 002DFD34 A0 A3 00 24 */ lhz r5, 0x24(r3)
/* 802E40D8 002DFD38 7C 04 02 14 */ add r0, r4, r0
/* 802E40DC 002DFD3C 54 1A 04 3E */ clrlwi r26, r0, 0x10
/* 802E40E0 002DFD40 7C 05 D2 14 */ add r0, r5, r26
/* 802E40E4 002DFD44 2C 00 03 E8 */ cmpwi r0, 0x3e8
/* 802E40E8 002DFD48 40 81 00 10 */ ble lbl_802E40F8
/* 802E40EC 002DFD4C 38 80 00 04 */ li r4, 4
/* 802E40F0 002DFD50 48 00 14 31 */ bl sdp_disconnect
/* 802E40F4 002DFD54 48 00 02 64 */ b lbl_802E4358
lbl_802E40F8:
/* 802E40F8 002DFD58 7C 63 2A 14 */ add r3, r3, r5
/* 802E40FC 002DFD5C 7F 84 E3 78 */ mr r4, r28
/* 802E4100 002DFD60 7F 45 D3 78 */ mr r5, r26
/* 802E4104 002DFD64 38 63 00 26 */ addi r3, r3, 0x26
/* 802E4108 002DFD68 4B D1 FE F9 */ bl memcpy
/* 802E410C 002DFD6C A0 1B 00 24 */ lhz r0, 0x24(r27)
/* 802E4110 002DFD70 7C 00 D2 14 */ add r0, r0, r26
/* 802E4114 002DFD74 B0 1B 00 24 */ sth r0, 0x24(r27)
/* 802E4118 002DFD78 7C 1C D0 EE */ lbzux r0, r28, r26
/* 802E411C 002DFD7C 2C 00 00 00 */ cmpwi r0, 0
/* 802E4120 002DFD80 41 82 00 20 */ beq lbl_802E4140
/* 802E4124 002DFD84 28 00 00 10 */ cmplwi r0, 0x10
/* 802E4128 002DFD88 40 81 00 14 */ ble lbl_802E413C
/* 802E412C 002DFD8C 7F 63 DB 78 */ mr r3, r27
/* 802E4130 002DFD90 38 80 00 05 */ li r4, 5
/* 802E4134 002DFD94 48 00 13 ED */ bl sdp_disconnect
/* 802E4138 002DFD98 48 00 02 20 */ b lbl_802E4358
lbl_802E413C:
/* 802E413C 002DFD9C 3B A0 00 01 */ li r29, 1
lbl_802E4140:
/* 802E4140 002DFDA0 2C 1D 00 00 */ cmpwi r29, 0
/* 802E4144 002DFDA4 40 82 00 0C */ bne lbl_802E4150
/* 802E4148 002DFDA8 2C 1C 00 00 */ cmpwi r28, 0
/* 802E414C 002DFDAC 40 82 01 40 */ bne lbl_802E428C
lbl_802E4150:
/* 802E4150 002DFDB0 38 60 00 02 */ li r3, 2
/* 802E4154 002DFDB4 4B FD 5A F9 */ bl GKI_getpoolbuf
/* 802E4158 002DFDB8 2C 03 00 00 */ cmpwi r3, 0
/* 802E415C 002DFDBC 7C 7E 1B 78 */ mr r30, r3
/* 802E4160 002DFDC0 40 82 00 14 */ bne lbl_802E4174
/* 802E4164 002DFDC4 7F 63 DB 78 */ mr r3, r27
/* 802E4168 002DFDC8 38 80 00 06 */ li r4, 6
/* 802E416C 002DFDCC 48 00 13 B5 */ bl sdp_disconnect
/* 802E4170 002DFDD0 48 00 01 E8 */ b lbl_802E4358
lbl_802E4174:
/* 802E4174 002DFDD4 38 00 00 09 */ li r0, 9
/* 802E4178 002DFDD8 3B E3 00 11 */ addi r31, r3, 0x11
/* 802E417C 002DFDDC B0 03 00 04 */ sth r0, 4(r3)
/* 802E4180 002DFDE0 38 00 00 06 */ li r0, 6
/* 802E4184 002DFDE4 3B BF 00 03 */ addi r29, r31, 3
/* 802E4188 002DFDE8 98 03 00 11 */ stb r0, 0x11(r3)
/* 802E418C 002DFDEC 38 7D 00 02 */ addi r3, r29, 2
/* 802E4190 002DFDF0 A0 1B 04 70 */ lhz r0, 0x470(r27)
/* 802E4194 002DFDF4 7C 00 46 70 */ srawi r0, r0, 8
/* 802E4198 002DFDF8 98 1F 00 01 */ stb r0, 1(r31)
/* 802E419C 002DFDFC A0 1B 04 70 */ lhz r0, 0x470(r27)
/* 802E41A0 002DFE00 98 1F 00 02 */ stb r0, 2(r31)
/* 802E41A4 002DFE04 A0 9B 04 70 */ lhz r4, 0x470(r27)
/* 802E41A8 002DFE08 80 DB 04 10 */ lwz r6, 0x410(r27)
/* 802E41AC 002DFE0C 38 04 00 01 */ addi r0, r4, 1
/* 802E41B0 002DFE10 B0 1B 04 70 */ sth r0, 0x470(r27)
/* 802E41B4 002DFE14 38 A6 00 10 */ addi r5, r6, 0x10
/* 802E41B8 002DFE18 A0 86 00 0C */ lhz r4, 0xc(r6)
/* 802E41BC 002DFE1C 4B FF F7 61 */ bl sdpu_build_uuid_seq
/* 802E41C0 002DFE20 3C 80 80 57 */ lis r4, lbl_8056C840@ha
/* 802E41C4 002DFE24 38 C3 00 02 */ addi r6, r3, 2
/* 802E41C8 002DFE28 38 84 C8 40 */ addi r4, r4, lbl_8056C840@l
/* 802E41CC 002DFE2C A0 04 46 2C */ lhz r0, 0x462c(r4)
/* 802E41D0 002DFE30 7C 00 46 70 */ srawi r0, r0, 8
/* 802E41D4 002DFE34 98 03 00 00 */ stb r0, 0(r3)
/* 802E41D8 002DFE38 A0 04 46 2C */ lhz r0, 0x462c(r4)
/* 802E41DC 002DFE3C 98 03 00 01 */ stb r0, 1(r3)
/* 802E41E0 002DFE40 80 9B 04 10 */ lwz r4, 0x410(r27)
/* 802E41E4 002DFE44 A0 A4 00 4C */ lhz r5, 0x4c(r4)
/* 802E41E8 002DFE48 2C 05 00 00 */ cmpwi r5, 0
/* 802E41EC 002DFE4C 41 82 00 18 */ beq lbl_802E4204
/* 802E41F0 002DFE50 7C C3 33 78 */ mr r3, r6
/* 802E41F4 002DFE54 38 84 00 4E */ addi r4, r4, 0x4e
/* 802E41F8 002DFE58 48 00 23 55 */ bl sdpu_build_attrib_seq
/* 802E41FC 002DFE5C 7C 7A 1B 78 */ mr r26, r3
/* 802E4200 002DFE60 48 00 00 18 */ b lbl_802E4218
lbl_802E4204:
/* 802E4204 002DFE64 7C C3 33 78 */ mr r3, r6
/* 802E4208 002DFE68 38 80 00 00 */ li r4, 0
/* 802E420C 002DFE6C 38 A0 00 00 */ li r5, 0
/* 802E4210 002DFE70 48 00 23 3D */ bl sdpu_build_attrib_seq
/* 802E4214 002DFE74 7C 7A 1B 78 */ mr r26, r3
lbl_802E4218:
/* 802E4218 002DFE78 2C 1C 00 00 */ cmpwi r28, 0
/* 802E421C 002DFE7C 41 82 00 28 */ beq lbl_802E4244
/* 802E4220 002DFE80 88 BC 00 00 */ lbz r5, 0(r28)
/* 802E4224 002DFE84 7F 43 D3 78 */ mr r3, r26
/* 802E4228 002DFE88 7F 84 E3 78 */ mr r4, r28
/* 802E422C 002DFE8C 38 A5 00 01 */ addi r5, r5, 1
/* 802E4230 002DFE90 4B D1 FD D1 */ bl memcpy
/* 802E4234 002DFE94 88 1C 00 00 */ lbz r0, 0(r28)
/* 802E4238 002DFE98 7C 60 D2 14 */ add r3, r0, r26
/* 802E423C 002DFE9C 38 83 00 01 */ addi r4, r3, 1
/* 802E4240 002DFEA0 48 00 00 10 */ b lbl_802E4250
lbl_802E4244:
/* 802E4244 002DFEA4 38 00 00 00 */ li r0, 0
/* 802E4248 002DFEA8 38 9A 00 01 */ addi r4, r26, 1
/* 802E424C 002DFEAC 98 1A 00 00 */ stb r0, 0(r26)
lbl_802E4250:
/* 802E4250 002DFEB0 7C 7D 20 50 */ subf r3, r29, r4
/* 802E4254 002DFEB4 7C 1F 20 50 */ subf r0, r31, r4
/* 802E4258 002DFEB8 38 A3 FF FE */ addi r5, r3, -2
/* 802E425C 002DFEBC 7F C4 F3 78 */ mr r4, r30
/* 802E4260 002DFEC0 54 A3 C6 3E */ rlwinm r3, r5, 0x18, 0x18, 0x1f
/* 802E4264 002DFEC4 98 7D 00 00 */ stb r3, 0(r29)
/* 802E4268 002DFEC8 98 BD 00 01 */ stb r5, 1(r29)
/* 802E426C 002DFECC B0 1E 00 02 */ sth r0, 2(r30)
/* 802E4270 002DFED0 A0 7B 00 22 */ lhz r3, 0x22(r27)
/* 802E4274 002DFED4 4B FF 1E 7D */ bl L2CA_DataWrite
/* 802E4278 002DFED8 38 7B 00 08 */ addi r3, r27, 8
/* 802E427C 002DFEDC 38 80 00 05 */ li r4, 5
/* 802E4280 002DFEE0 38 A0 00 1E */ li r5, 0x1e
/* 802E4284 002DFEE4 4B FD 92 59 */ bl btu_start_timer
/* 802E4288 002DFEE8 48 00 00 D0 */ b lbl_802E4358
lbl_802E428C:
/* 802E428C 002DFEEC 88 BB 00 26 */ lbz r5, 0x26(r27)
/* 802E4290 002DFEF0 38 7B 00 27 */ addi r3, r27, 0x27
/* 802E4294 002DFEF4 7C A0 1E 70 */ srawi r0, r5, 3
/* 802E4298 002DFEF8 2C 00 00 06 */ cmpwi r0, 6
/* 802E429C 002DFEFC 41 82 00 30 */ beq lbl_802E42CC
/* 802E42A0 002DFF00 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E42A4 002DFF04 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E42A8 002DFF08 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E42AC 002DFF0C 28 00 00 02 */ cmplwi r0, 2
/* 802E42B0 002DFF10 41 80 00 A8 */ blt lbl_802E4358
/* 802E42B4 002DFF14 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E42B8 002DFF18 3C 80 80 44 */ lis r4, lbl_80445098@ha
/* 802E42BC 002DFF1C 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E42C0 002DFF20 38 84 50 98 */ addi r4, r4, lbl_80445098@l
/* 802E42C4 002DFF24 4B FD 8C 65 */ bl LogMsg_1
/* 802E42C8 002DFF28 48 00 00 90 */ b lbl_802E4358
lbl_802E42CC:
/* 802E42CC 002DFF2C 7C A4 2B 78 */ mr r4, r5
/* 802E42D0 002DFF30 38 A1 00 08 */ addi r5, r1, 8
/* 802E42D4 002DFF34 48 00 2C 79 */ bl sdpu_get_len_from_type
/* 802E42D8 002DFF38 A0 BB 00 24 */ lhz r5, 0x24(r27)
/* 802E42DC 002DFF3C 7C 64 1B 78 */ mr r4, r3
/* 802E42E0 002DFF40 80 01 00 08 */ lwz r0, 8(r1)
/* 802E42E4 002DFF44 7C BB 2A 14 */ add r5, r27, r5
/* 802E42E8 002DFF48 3B 45 00 26 */ addi r26, r5, 0x26
/* 802E42EC 002DFF4C 7C 03 02 14 */ add r0, r3, r0
/* 802E42F0 002DFF50 7C 00 D0 40 */ cmplw r0, r26
/* 802E42F4 002DFF54 41 82 00 50 */ beq lbl_802E4344
/* 802E42F8 002DFF58 7F 63 DB 78 */ mr r3, r27
/* 802E42FC 002DFF5C 38 80 00 05 */ li r4, 5
/* 802E4300 002DFF60 48 00 12 21 */ bl sdp_disconnect
/* 802E4304 002DFF64 48 00 00 54 */ b lbl_802E4358
/* 802E4308 002DFF68 48 00 00 3C */ b lbl_802E4344
lbl_802E430C:
/* 802E430C 002DFF6C A0 1B 00 24 */ lhz r0, 0x24(r27)
/* 802E4310 002DFF70 7F 63 DB 78 */ mr r3, r27
/* 802E4314 002DFF74 7C BB 02 14 */ add r5, r27, r0
/* 802E4318 002DFF78 38 A5 00 26 */ addi r5, r5, 0x26
/* 802E431C 002DFF7C 48 00 00 55 */ bl save_attr_seq
/* 802E4320 002DFF80 2C 03 00 00 */ cmpwi r3, 0
/* 802E4324 002DFF84 7C 64 1B 78 */ mr r4, r3
/* 802E4328 002DFF88 40 82 00 1C */ bne lbl_802E4344
/* 802E432C 002DFF8C 3C 80 00 01 */ lis r4, 0x0000FFF4@ha
/* 802E4330 002DFF90 7F 63 DB 78 */ mr r3, r27
/* 802E4334 002DFF94 38 04 FF F4 */ addi r0, r4, 0x0000FFF4@l
/* 802E4338 002DFF98 54 04 04 3E */ clrlwi r4, r0, 0x10
/* 802E433C 002DFF9C 48 00 11 E5 */ bl sdp_disconnect
/* 802E4340 002DFFA0 48 00 00 18 */ b lbl_802E4358
lbl_802E4344:
/* 802E4344 002DFFA4 7C 04 D0 40 */ cmplw r4, r26
/* 802E4348 002DFFA8 41 80 FF C4 */ blt lbl_802E430C
/* 802E434C 002DFFAC 7F 63 DB 78 */ mr r3, r27
/* 802E4350 002DFFB0 38 80 00 00 */ li r4, 0
/* 802E4354 002DFFB4 48 00 11 CD */ bl sdp_disconnect
lbl_802E4358:
/* 802E4358 002DFFB8 39 61 00 30 */ addi r11, r1, 0x30
/* 802E435C 002DFFBC 4B EE 2E 15 */ bl _restgpr_26
/* 802E4360 002DFFC0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802E4364 002DFFC4 7C 08 03 A6 */ mtlr r0
/* 802E4368 002DFFC8 38 21 00 30 */ addi r1, r1, 0x30
/* 802E436C 002DFFCC 4E 80 00 20 */ blr
.global save_attr_seq
save_attr_seq:
/* 802E4370 002DFFD0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802E4374 002DFFD4 7C 08 02 A6 */ mflr r0
/* 802E4378 002DFFD8 90 01 00 34 */ stw r0, 0x34(r1)
/* 802E437C 002DFFDC 39 61 00 30 */ addi r11, r1, 0x30
/* 802E4380 002DFFE0 4B EE 2D A5 */ bl _savegpr_26
/* 802E4384 002DFFE4 88 C4 00 00 */ lbz r6, 0(r4)
/* 802E4388 002DFFE8 3F E0 80 44 */ lis r31, lbl_80445048@ha
/* 802E438C 002DFFEC 7C 7A 1B 78 */ mr r26, r3
/* 802E4390 002DFFF0 7C BB 2B 78 */ mr r27, r5
/* 802E4394 002DFFF4 7C C0 1E 70 */ srawi r0, r6, 3
/* 802E4398 002DFFF8 3B FF 50 48 */ addi r31, r31, lbl_80445048@l
/* 802E439C 002DFFFC 2C 00 00 06 */ cmpwi r0, 6
/* 802E43A0 002E0000 38 64 00 01 */ addi r3, r4, 1
/* 802E43A4 002E0004 41 82 00 34 */ beq lbl_802E43D8
/* 802E43A8 002E0008 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E43AC 002E000C 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E43B0 002E0010 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E43B4 002E0014 28 00 00 02 */ cmplwi r0, 2
/* 802E43B8 002E0018 41 80 00 18 */ blt lbl_802E43D0
/* 802E43BC 002E001C 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E43C0 002E0020 7C C5 33 78 */ mr r5, r6
/* 802E43C4 002E0024 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E43C8 002E0028 38 9F 00 50 */ addi r4, r31, 0x50
/* 802E43CC 002E002C 4B FD 8B 5D */ bl LogMsg_1
lbl_802E43D0:
/* 802E43D0 002E0030 38 60 00 00 */ li r3, 0
/* 802E43D4 002E0034 48 00 01 70 */ b lbl_802E4544
lbl_802E43D8:
/* 802E43D8 002E0038 7C C4 33 78 */ mr r4, r6
/* 802E43DC 002E003C 38 A1 00 0C */ addi r5, r1, 0xc
/* 802E43E0 002E0040 48 00 2B 6D */ bl sdpu_get_len_from_type
/* 802E43E4 002E0044 80 A1 00 0C */ lwz r5, 0xc(r1)
/* 802E43E8 002E0048 7C 7E 1B 78 */ mr r30, r3
/* 802E43EC 002E004C 7C 03 2A 14 */ add r0, r3, r5
/* 802E43F0 002E0050 7C 00 D8 40 */ cmplw r0, r27
/* 802E43F4 002E0054 40 81 00 30 */ ble lbl_802E4424
/* 802E43F8 002E0058 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E43FC 002E005C 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E4400 002E0060 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E4404 002E0064 28 00 00 02 */ cmplwi r0, 2
/* 802E4408 002E0068 41 80 00 14 */ blt lbl_802E441C
/* 802E440C 002E006C 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E4410 002E0070 38 9F 00 78 */ addi r4, r31, 0x78
/* 802E4414 002E0074 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E4418 002E0078 4B FD 8B 11 */ bl LogMsg_1
lbl_802E441C:
/* 802E441C 002E007C 38 60 00 00 */ li r3, 0
/* 802E4420 002E0080 48 00 01 24 */ b lbl_802E4544
lbl_802E4424:
/* 802E4424 002E0084 80 7A 04 10 */ lwz r3, 0x410(r26)
/* 802E4428 002E0088 38 9A 00 02 */ addi r4, r26, 2
/* 802E442C 002E008C 48 00 01 31 */ bl add_record
/* 802E4430 002E0090 2C 03 00 00 */ cmpwi r3, 0
/* 802E4434 002E0094 7C 7B 1B 78 */ mr r27, r3
/* 802E4438 002E0098 40 82 00 30 */ bne lbl_802E4468
/* 802E443C 002E009C 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E4440 002E00A0 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E4444 002E00A4 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E4448 002E00A8 28 00 00 02 */ cmplwi r0, 2
/* 802E444C 002E00AC 41 80 00 14 */ blt lbl_802E4460
/* 802E4450 002E00B0 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E4454 002E00B4 38 9F 00 98 */ addi r4, r31, 0x98
/* 802E4458 002E00B8 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E445C 002E00BC 4B FD 8A B5 */ bl LogMsg_0
lbl_802E4460:
/* 802E4460 002E00C0 38 60 00 00 */ li r3, 0
/* 802E4464 002E00C4 48 00 00 E0 */ b lbl_802E4544
lbl_802E4468:
/* 802E4468 002E00C8 80 01 00 0C */ lwz r0, 0xc(r1)
/* 802E446C 002E00CC 7F 9E 02 14 */ add r28, r30, r0
/* 802E4470 002E00D0 48 00 00 C8 */ b lbl_802E4538
lbl_802E4474:
/* 802E4474 002E00D4 8B BE 00 00 */ lbz r29, 0(r30)
/* 802E4478 002E00D8 38 7E 00 01 */ addi r3, r30, 1
/* 802E447C 002E00DC 38 A1 00 08 */ addi r5, r1, 8
/* 802E4480 002E00E0 7F A4 EB 78 */ mr r4, r29
/* 802E4484 002E00E4 48 00 2A C9 */ bl sdpu_get_len_from_type
/* 802E4488 002E00E8 57 A0 EE FE */ rlwinm r0, r29, 0x1d, 0x1b, 0x1f
/* 802E448C 002E00EC 2C 00 00 01 */ cmpwi r0, 1
/* 802E4490 002E00F0 40 82 00 10 */ bne lbl_802E44A0
/* 802E4494 002E00F4 80 01 00 08 */ lwz r0, 8(r1)
/* 802E4498 002E00F8 28 00 00 02 */ cmplwi r0, 2
/* 802E449C 002E00FC 41 82 00 38 */ beq lbl_802E44D4
lbl_802E44A0:
/* 802E44A0 002E0100 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E44A4 002E0104 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E44A8 002E0108 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E44AC 002E010C 28 00 00 02 */ cmplwi r0, 2
/* 802E44B0 002E0110 41 80 00 1C */ blt lbl_802E44CC
/* 802E44B4 002E0114 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E44B8 002E0118 80 C1 00 08 */ lwz r6, 8(r1)
/* 802E44BC 002E011C 7F A5 EB 78 */ mr r5, r29
/* 802E44C0 002E0120 38 9F 00 A8 */ addi r4, r31, 0xa8
/* 802E44C4 002E0124 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E44C8 002E0128 4B FD 8A 79 */ bl LogMsg_2
lbl_802E44CC:
/* 802E44CC 002E012C 38 60 00 00 */ li r3, 0
/* 802E44D0 002E0130 48 00 00 74 */ b lbl_802E4544
lbl_802E44D4:
/* 802E44D4 002E0134 88 83 00 00 */ lbz r4, 0(r3)
/* 802E44D8 002E0138 7F 65 DB 78 */ mr r5, r27
/* 802E44DC 002E013C 88 03 00 01 */ lbz r0, 1(r3)
/* 802E44E0 002E0140 38 E0 00 00 */ li r7, 0
/* 802E44E4 002E0144 54 86 40 2E */ slwi r6, r4, 8
/* 802E44E8 002E0148 80 9A 04 10 */ lwz r4, 0x410(r26)
/* 802E44EC 002E014C 7C 06 02 14 */ add r0, r6, r0
/* 802E44F0 002E0150 39 00 00 00 */ li r8, 0
/* 802E44F4 002E0154 54 06 04 3E */ clrlwi r6, r0, 0x10
/* 802E44F8 002E0158 38 63 00 02 */ addi r3, r3, 2
/* 802E44FC 002E015C 48 00 01 01 */ bl add_attr
/* 802E4500 002E0160 2C 03 00 00 */ cmpwi r3, 0
/* 802E4504 002E0164 7C 7E 1B 78 */ mr r30, r3
/* 802E4508 002E0168 40 82 00 30 */ bne lbl_802E4538
/* 802E450C 002E016C 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E4510 002E0170 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E4514 002E0174 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E4518 002E0178 28 00 00 02 */ cmplwi r0, 2
/* 802E451C 002E017C 41 80 00 14 */ blt lbl_802E4530
/* 802E4520 002E0180 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E4524 002E0184 38 9F 00 98 */ addi r4, r31, 0x98
/* 802E4528 002E0188 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E452C 002E018C 4B FD 89 E5 */ bl LogMsg_0
lbl_802E4530:
/* 802E4530 002E0190 38 60 00 00 */ li r3, 0
/* 802E4534 002E0194 48 00 00 10 */ b lbl_802E4544
lbl_802E4538:
/* 802E4538 002E0198 7C 1E E0 40 */ cmplw r30, r28
/* 802E453C 002E019C 41 80 FF 38 */ blt lbl_802E4474
/* 802E4540 002E01A0 7F C3 F3 78 */ mr r3, r30
lbl_802E4544:
/* 802E4544 002E01A4 39 61 00 30 */ addi r11, r1, 0x30
/* 802E4548 002E01A8 4B EE 2C 29 */ bl _restgpr_26
/* 802E454C 002E01AC 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802E4550 002E01B0 7C 08 03 A6 */ mtlr r0
/* 802E4554 002E01B4 38 21 00 30 */ addi r1, r1, 0x30
/* 802E4558 002E01B8 4E 80 00 20 */ blr
.global add_record
add_record:
/* 802E455C 002E01BC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802E4560 002E01C0 7C 08 02 A6 */ mflr r0
/* 802E4564 002E01C4 90 01 00 14 */ stw r0, 0x14(r1)
/* 802E4568 002E01C8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802E456C 002E01CC 93 C1 00 08 */ stw r30, 8(r1)
/* 802E4570 002E01D0 7C 7E 1B 78 */ mr r30, r3
/* 802E4574 002E01D4 80 A3 00 04 */ lwz r5, 4(r3)
/* 802E4578 002E01D8 28 05 00 14 */ cmplwi r5, 0x14
/* 802E457C 002E01DC 40 80 00 0C */ bge lbl_802E4588
/* 802E4580 002E01E0 38 60 00 00 */ li r3, 0
/* 802E4584 002E01E4 48 00 00 60 */ b lbl_802E45E4
lbl_802E4588:
/* 802E4588 002E01E8 83 E3 00 68 */ lwz r31, 0x68(r3)
/* 802E458C 002E01EC 38 05 FF EC */ addi r0, r5, -20
/* 802E4590 002E01F0 90 03 00 04 */ stw r0, 4(r3)
/* 802E4594 002E01F4 38 00 00 00 */ li r0, 0
/* 802E4598 002E01F8 38 DF 00 14 */ addi r6, r31, 0x14
/* 802E459C 002E01FC 38 A0 00 06 */ li r5, 6
/* 802E45A0 002E0200 90 C3 00 68 */ stw r6, 0x68(r3)
/* 802E45A4 002E0204 38 7F 00 0C */ addi r3, r31, 0xc
/* 802E45A8 002E0208 90 1F 00 00 */ stw r0, 0(r31)
/* 802E45AC 002E020C 90 1F 00 04 */ stw r0, 4(r31)
/* 802E45B0 002E0210 4B D1 FA 51 */ bl memcpy
/* 802E45B4 002E0214 80 7E 00 08 */ lwz r3, 8(r30)
/* 802E45B8 002E0218 2C 03 00 00 */ cmpwi r3, 0
/* 802E45BC 002E021C 40 82 00 14 */ bne lbl_802E45D0
/* 802E45C0 002E0220 93 FE 00 08 */ stw r31, 8(r30)
/* 802E45C4 002E0224 48 00 00 1C */ b lbl_802E45E0
/* 802E45C8 002E0228 48 00 00 08 */ b lbl_802E45D0
lbl_802E45CC:
/* 802E45CC 002E022C 7C 03 03 78 */ mr r3, r0
lbl_802E45D0:
/* 802E45D0 002E0230 80 03 00 04 */ lwz r0, 4(r3)
/* 802E45D4 002E0234 2C 00 00 00 */ cmpwi r0, 0
/* 802E45D8 002E0238 40 82 FF F4 */ bne lbl_802E45CC
/* 802E45DC 002E023C 93 E3 00 04 */ stw r31, 4(r3)
lbl_802E45E0:
/* 802E45E0 002E0240 7F E3 FB 78 */ mr r3, r31
lbl_802E45E4:
/* 802E45E4 002E0244 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802E45E8 002E0248 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802E45EC 002E024C 83 C1 00 08 */ lwz r30, 8(r1)
/* 802E45F0 002E0250 7C 08 03 A6 */ mtlr r0
/* 802E45F4 002E0254 38 21 00 10 */ addi r1, r1, 0x10
/* 802E45F8 002E0258 4E 80 00 20 */ blr
.global add_attr
add_attr:
/* 802E45FC 002E025C 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802E4600 002E0260 7C 08 02 A6 */ mflr r0
/* 802E4604 002E0264 90 01 00 44 */ stw r0, 0x44(r1)
/* 802E4608 002E0268 39 61 00 40 */ addi r11, r1, 0x40
/* 802E460C 002E026C 4B EE 2B 05 */ bl _savegpr_21
/* 802E4610 002E0270 8A A3 00 00 */ lbz r21, 0(r3)
/* 802E4614 002E0274 3F E0 80 44 */ lis r31, lbl_80445048@ha
/* 802E4618 002E0278 7C 97 23 78 */ mr r23, r4
/* 802E461C 002E027C 7C B8 2B 78 */ mr r24, r5
/* 802E4620 002E0280 7C D9 33 78 */ mr r25, r6
/* 802E4624 002E0284 7C FA 3B 78 */ mr r26, r7
/* 802E4628 002E0288 7E A4 AB 78 */ mr r4, r21
/* 802E462C 002E028C 3B FF 50 48 */ addi r31, r31, lbl_80445048@l
/* 802E4630 002E0290 55 1C 06 30 */ rlwinm r28, r8, 0, 0x18, 0x18
/* 802E4634 002E0294 55 1B 06 7E */ clrlwi r27, r8, 0x19
/* 802E4638 002E0298 38 A1 00 08 */ addi r5, r1, 8
/* 802E463C 002E029C 38 63 00 01 */ addi r3, r3, 1
/* 802E4640 002E02A0 48 00 29 0D */ bl sdpu_get_len_from_type
/* 802E4644 002E02A4 80 01 00 08 */ lwz r0, 8(r1)
/* 802E4648 002E02A8 7C 76 1B 78 */ mr r22, r3
/* 802E464C 002E02AC 56 A6 EF 3E */ rlwinm r6, r21, 0x1d, 0x1c, 0x1f
/* 802E4650 002E02B0 38 80 00 0C */ li r4, 0xc
/* 802E4654 002E02B4 54 05 05 3E */ clrlwi r5, r0, 0x14
/* 802E4658 002E02B8 28 05 00 04 */ cmplwi r5, 4
/* 802E465C 002E02BC 90 A1 00 08 */ stw r5, 8(r1)
/* 802E4660 002E02C0 40 81 00 08 */ ble lbl_802E4668
/* 802E4664 002E02C4 38 85 00 08 */ addi r4, r5, 8
lbl_802E4668:
/* 802E4668 002E02C8 38 84 00 03 */ addi r4, r4, 3
/* 802E466C 002E02CC 80 17 00 04 */ lwz r0, 4(r23)
/* 802E4670 002E02D0 54 9E 00 3A */ rlwinm r30, r4, 0, 0, 0x1d
/* 802E4674 002E02D4 7C 00 F0 40 */ cmplw r0, r30
/* 802E4678 002E02D8 40 80 00 0C */ bge lbl_802E4684
/* 802E467C 002E02DC 38 60 00 00 */ li r3, 0
/* 802E4680 002E02E0 48 00 04 FC */ b lbl_802E4B7C
lbl_802E4684:
/* 802E4684 002E02E4 83 B7 00 68 */ lwz r29, 0x68(r23)
/* 802E4688 002E02E8 54 C0 61 26 */ rlwinm r0, r6, 0xc, 4, 0x13
/* 802E468C 002E02EC 28 06 00 08 */ cmplwi r6, 8
/* 802E4690 002E02F0 38 80 00 00 */ li r4, 0
/* 802E4694 002E02F4 B3 3D 00 04 */ sth r25, 4(r29)
/* 802E4698 002E02F8 80 A1 00 08 */ lwz r5, 8(r1)
/* 802E469C 002E02FC 54 A5 04 3E */ clrlwi r5, r5, 0x10
/* 802E46A0 002E0300 7C A5 03 78 */ or r5, r5, r0
/* 802E46A4 002E0304 B0 BD 00 06 */ sth r5, 6(r29)
/* 802E46A8 002E0308 90 9D 00 00 */ stw r4, 0(r29)
/* 802E46AC 002E030C 41 81 04 50 */ bgt lbl_802E4AFC
/* 802E46B0 002E0310 3C A0 80 44 */ lis r5, lbl_80445180@ha
/* 802E46B4 002E0314 54 C4 10 3A */ slwi r4, r6, 2
/* 802E46B8 002E0318 38 A5 51 80 */ addi r5, r5, lbl_80445180@l
/* 802E46BC 002E031C 7C A5 20 2E */ lwzx r5, r5, r4
/* 802E46C0 002E0320 7C A9 03 A6 */ mtctr r5
/* 802E46C4 002E0324 4E 80 04 20 */ bctr
/* 802E46C8 002E0328 2C 1C 00 00 */ cmpwi r28, 0
/* 802E46CC 002E032C 41 82 00 AC */ beq lbl_802E4778
/* 802E46D0 002E0330 80 01 00 08 */ lwz r0, 8(r1)
/* 802E46D4 002E0334 28 00 00 02 */ cmplwi r0, 2
/* 802E46D8 002E0338 40 82 00 A0 */ bne lbl_802E4778
/* 802E46DC 002E033C 88 83 00 00 */ lbz r4, 0(r3)
/* 802E46E0 002E0340 88 03 00 01 */ lbz r0, 1(r3)
/* 802E46E4 002E0344 54 84 40 2E */ slwi r4, r4, 8
/* 802E46E8 002E0348 7C 04 02 14 */ add r0, r4, r0
/* 802E46EC 002E034C 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 802E46F0 002E0350 28 00 00 04 */ cmplwi r0, 4
/* 802E46F4 002E0354 40 82 00 84 */ bne lbl_802E4778
/* 802E46F8 002E0358 80 B7 00 68 */ lwz r5, 0x68(r23)
/* 802E46FC 002E035C 28 1B 00 05 */ cmplwi r27, 5
/* 802E4700 002E0360 80 97 00 04 */ lwz r4, 4(r23)
/* 802E4704 002E0364 3B C0 00 00 */ li r30, 0
/* 802E4708 002E0368 38 A5 00 0C */ addi r5, r5, 0xc
/* 802E470C 002E036C 38 04 FF F4 */ addi r0, r4, -12
/* 802E4710 002E0370 90 B7 00 68 */ stw r5, 0x68(r23)
/* 802E4714 002E0374 90 17 00 04 */ stw r0, 4(r23)
/* 802E4718 002E0378 80 01 00 08 */ lwz r0, 8(r1)
/* 802E471C 002E037C 7C 83 02 14 */ add r4, r3, r0
/* 802E4720 002E0380 3A A4 00 02 */ addi r21, r4, 2
/* 802E4724 002E0384 41 80 00 2C */ blt lbl_802E4750
/* 802E4728 002E0388 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E472C 002E038C 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E4730 002E0390 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E4734 002E0394 28 00 00 01 */ cmplwi r0, 1
/* 802E4738 002E0398 41 80 00 10 */ blt lbl_802E4748
/* 802E473C 002E039C 38 9F 00 D8 */ addi r4, r31, 0xd8
/* 802E4740 002E03A0 3C 60 00 0A */ lis r3, 0xa
/* 802E4744 002E03A4 4B FD 87 CD */ bl LogMsg_0
lbl_802E4748:
/* 802E4748 002E03A8 7E A3 AB 78 */ mr r3, r21
/* 802E474C 002E03AC 48 00 04 30 */ b lbl_802E4B7C
lbl_802E4750:
/* 802E4750 002E03B0 38 1B 00 01 */ addi r0, r27, 1
/* 802E4754 002E03B4 7E E4 BB 78 */ mr r4, r23
/* 802E4758 002E03B8 7F 05 C3 78 */ mr r5, r24
/* 802E475C 002E03BC 7F A7 EB 78 */ mr r7, r29
/* 802E4760 002E03C0 54 08 06 3E */ clrlwi r8, r0, 0x18
/* 802E4764 002E03C4 38 C0 00 04 */ li r6, 4
/* 802E4768 002E03C8 38 63 00 02 */ addi r3, r3, 2
/* 802E476C 002E03CC 4B FF FE 91 */ bl add_attr
/* 802E4770 002E03D0 7C 76 1B 78 */ mr r22, r3
/* 802E4774 002E03D4 48 00 03 88 */ b lbl_802E4AFC
lbl_802E4778:
/* 802E4778 002E03D8 80 01 00 08 */ lwz r0, 8(r1)
/* 802E477C 002E03DC 2C 00 00 03 */ cmpwi r0, 3
/* 802E4780 002E03E0 41 82 00 84 */ beq lbl_802E4804
/* 802E4784 002E03E4 40 80 00 14 */ bge lbl_802E4798
/* 802E4788 002E03E8 2C 00 00 01 */ cmpwi r0, 1
/* 802E478C 002E03EC 41 82 00 18 */ beq lbl_802E47A4
/* 802E4790 002E03F0 40 80 00 24 */ bge lbl_802E47B4
/* 802E4794 002E03F4 48 00 00 70 */ b lbl_802E4804
lbl_802E4798:
/* 802E4798 002E03F8 2C 00 00 05 */ cmpwi r0, 5
/* 802E479C 002E03FC 40 80 00 68 */ bge lbl_802E4804
/* 802E47A0 002E0400 48 00 00 30 */ b lbl_802E47D0
lbl_802E47A4:
/* 802E47A4 002E0404 88 03 00 00 */ lbz r0, 0(r3)
/* 802E47A8 002E0408 3A C3 00 01 */ addi r22, r3, 1
/* 802E47AC 002E040C 98 1D 00 08 */ stb r0, 8(r29)
/* 802E47B0 002E0410 48 00 03 4C */ b lbl_802E4AFC
lbl_802E47B4:
/* 802E47B4 002E0414 88 83 00 00 */ lbz r4, 0(r3)
/* 802E47B8 002E0418 3A C3 00 02 */ addi r22, r3, 2
/* 802E47BC 002E041C 88 03 00 01 */ lbz r0, 1(r3)
/* 802E47C0 002E0420 54 83 40 2E */ slwi r3, r4, 8
/* 802E47C4 002E0424 7C 03 02 14 */ add r0, r3, r0
/* 802E47C8 002E0428 B0 1D 00 08 */ sth r0, 8(r29)
/* 802E47CC 002E042C 48 00 03 30 */ b lbl_802E4AFC
lbl_802E47D0:
/* 802E47D0 002E0430 88 A3 00 00 */ lbz r5, 0(r3)
/* 802E47D4 002E0434 3A C3 00 04 */ addi r22, r3, 4
/* 802E47D8 002E0438 88 03 00 02 */ lbz r0, 2(r3)
/* 802E47DC 002E043C 88 83 00 01 */ lbz r4, 1(r3)
/* 802E47E0 002E0440 54 A6 C0 0E */ slwi r6, r5, 0x18
/* 802E47E4 002E0444 54 00 40 2E */ slwi r0, r0, 8
/* 802E47E8 002E0448 54 85 80 1E */ slwi r5, r4, 0x10
/* 802E47EC 002E044C 88 83 00 03 */ lbz r4, 3(r3)
/* 802E47F0 002E0450 7C 66 2A 14 */ add r3, r6, r5
/* 802E47F4 002E0454 7C 04 02 14 */ add r0, r4, r0
/* 802E47F8 002E0458 7C 03 02 14 */ add r0, r3, r0
/* 802E47FC 002E045C 90 1D 00 08 */ stw r0, 8(r29)
/* 802E4800 002E0460 48 00 02 FC */ b lbl_802E4AFC
lbl_802E4804:
/* 802E4804 002E0464 38 7D 00 08 */ addi r3, r29, 8
/* 802E4808 002E0468 38 80 00 00 */ li r4, 0
/* 802E480C 002E046C 48 00 00 18 */ b lbl_802E4824
lbl_802E4810:
/* 802E4810 002E0470 88 16 00 00 */ lbz r0, 0(r22)
/* 802E4814 002E0474 38 84 00 01 */ addi r4, r4, 1
/* 802E4818 002E0478 3A D6 00 01 */ addi r22, r22, 1
/* 802E481C 002E047C 98 03 00 00 */ stb r0, 0(r3)
/* 802E4820 002E0480 38 63 00 01 */ addi r3, r3, 1
lbl_802E4824:
/* 802E4824 002E0484 80 01 00 08 */ lwz r0, 8(r1)
/* 802E4828 002E0488 7C 04 00 00 */ cmpw r4, r0
/* 802E482C 002E048C 41 80 FF E4 */ blt lbl_802E4810
/* 802E4830 002E0490 48 00 02 CC */ b lbl_802E4AFC
/* 802E4834 002E0494 80 A1 00 08 */ lwz r5, 8(r1)
/* 802E4838 002E0498 2C 05 00 04 */ cmpwi r5, 4
/* 802E483C 002E049C 41 82 00 3C */ beq lbl_802E4878
/* 802E4840 002E04A0 40 80 00 10 */ bge lbl_802E4850
/* 802E4844 002E04A4 2C 05 00 02 */ cmpwi r5, 2
/* 802E4848 002E04A8 41 82 00 14 */ beq lbl_802E485C
/* 802E484C 002E04AC 48 00 01 4C */ b lbl_802E4998
lbl_802E4850:
/* 802E4850 002E04B0 2C 05 00 10 */ cmpwi r5, 0x10
/* 802E4854 002E04B4 41 82 00 7C */ beq lbl_802E48D0
/* 802E4858 002E04B8 48 00 01 40 */ b lbl_802E4998
lbl_802E485C:
/* 802E485C 002E04BC 88 83 00 00 */ lbz r4, 0(r3)
/* 802E4860 002E04C0 3A C3 00 02 */ addi r22, r3, 2
/* 802E4864 002E04C4 88 03 00 01 */ lbz r0, 1(r3)
/* 802E4868 002E04C8 54 83 40 2E */ slwi r3, r4, 8
/* 802E486C 002E04CC 7C 03 02 14 */ add r0, r3, r0
/* 802E4870 002E04D0 B0 1D 00 08 */ sth r0, 8(r29)
/* 802E4874 002E04D4 48 00 02 88 */ b lbl_802E4AFC
lbl_802E4878:
/* 802E4878 002E04D8 88 E3 00 00 */ lbz r7, 0(r3)
/* 802E487C 002E04DC 3A C3 00 04 */ addi r22, r3, 4
/* 802E4880 002E04E0 88 C3 00 01 */ lbz r6, 1(r3)
/* 802E4884 002E04E4 3C 80 00 01 */ lis r4, 1
/* 802E4888 002E04E8 54 E8 C0 0E */ slwi r8, r7, 0x18
/* 802E488C 002E04EC 88 A3 00 02 */ lbz r5, 2(r3)
/* 802E4890 002E04F0 54 C7 80 1E */ slwi r7, r6, 0x10
/* 802E4894 002E04F4 88 C3 00 03 */ lbz r6, 3(r3)
/* 802E4898 002E04F8 54 A3 40 2E */ slwi r3, r5, 8
/* 802E489C 002E04FC 7C A8 3A 14 */ add r5, r8, r7
/* 802E48A0 002E0500 7C 66 1A 14 */ add r3, r6, r3
/* 802E48A4 002E0504 7C 65 1A 14 */ add r3, r5, r3
/* 802E48A8 002E0508 7C 03 20 40 */ cmplw r3, r4
/* 802E48AC 002E050C 90 7D 00 08 */ stw r3, 8(r29)
/* 802E48B0 002E0510 40 80 02 4C */ bge lbl_802E4AFC
/* 802E48B4 002E0514 38 60 00 02 */ li r3, 2
/* 802E48B8 002E0518 60 00 00 02 */ ori r0, r0, 2
/* 802E48BC 002E051C 90 61 00 08 */ stw r3, 8(r1)
/* 802E48C0 002E0520 B0 1D 00 06 */ sth r0, 6(r29)
/* 802E48C4 002E0524 80 1D 00 08 */ lwz r0, 8(r29)
/* 802E48C8 002E0528 B0 1D 00 08 */ sth r0, 8(r29)
/* 802E48CC 002E052C 48 00 02 30 */ b lbl_802E4AFC
lbl_802E48D0:
/* 802E48D0 002E0530 7E C3 B3 78 */ mr r3, r22
/* 802E48D4 002E0534 48 00 27 49 */ bl sdpu_is_base_uuid
/* 802E48D8 002E0538 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802E48DC 002E053C 41 82 00 8C */ beq lbl_802E4968
/* 802E48E0 002E0540 88 16 00 00 */ lbz r0, 0(r22)
/* 802E48E4 002E0544 2C 00 00 00 */ cmpwi r0, 0
/* 802E48E8 002E0548 40 82 00 3C */ bne lbl_802E4924
/* 802E48EC 002E054C 88 16 00 01 */ lbz r0, 1(r22)
/* 802E48F0 002E0550 2C 00 00 00 */ cmpwi r0, 0
/* 802E48F4 002E0554 40 82 00 30 */ bne lbl_802E4924
/* 802E48F8 002E0558 A0 1D 00 06 */ lhz r0, 6(r29)
/* 802E48FC 002E055C 54 00 00 26 */ rlwinm r0, r0, 0, 0, 0x13
/* 802E4900 002E0560 60 00 00 02 */ ori r0, r0, 2
/* 802E4904 002E0564 B0 1D 00 06 */ sth r0, 6(r29)
/* 802E4908 002E0568 88 76 00 02 */ lbz r3, 2(r22)
/* 802E490C 002E056C 88 16 00 03 */ lbz r0, 3(r22)
/* 802E4910 002E0570 3A D6 00 10 */ addi r22, r22, 0x10
/* 802E4914 002E0574 54 63 40 2E */ slwi r3, r3, 8
/* 802E4918 002E0578 7C 03 02 14 */ add r0, r3, r0
/* 802E491C 002E057C B0 1D 00 08 */ sth r0, 8(r29)
/* 802E4920 002E0580 48 00 01 DC */ b lbl_802E4AFC
lbl_802E4924:
/* 802E4924 002E0584 A0 1D 00 06 */ lhz r0, 6(r29)
/* 802E4928 002E0588 54 00 00 26 */ rlwinm r0, r0, 0, 0, 0x13
/* 802E492C 002E058C 60 00 00 04 */ ori r0, r0, 4
/* 802E4930 002E0590 B0 1D 00 06 */ sth r0, 6(r29)
/* 802E4934 002E0594 88 96 00 00 */ lbz r4, 0(r22)
/* 802E4938 002E0598 88 76 00 01 */ lbz r3, 1(r22)
/* 802E493C 002E059C 88 16 00 02 */ lbz r0, 2(r22)
/* 802E4940 002E05A0 54 85 C0 0E */ slwi r5, r4, 0x18
/* 802E4944 002E05A4 88 96 00 03 */ lbz r4, 3(r22)
/* 802E4948 002E05A8 54 63 80 1E */ slwi r3, r3, 0x10
/* 802E494C 002E05AC 54 00 40 2E */ slwi r0, r0, 8
/* 802E4950 002E05B0 3A D6 00 10 */ addi r22, r22, 0x10
/* 802E4954 002E05B4 7C 65 1A 14 */ add r3, r5, r3
/* 802E4958 002E05B8 7C 04 02 14 */ add r0, r4, r0
/* 802E495C 002E05BC 7C 03 02 14 */ add r0, r3, r0
/* 802E4960 002E05C0 90 1D 00 08 */ stw r0, 8(r29)
/* 802E4964 002E05C4 48 00 01 98 */ b lbl_802E4AFC
lbl_802E4968:
/* 802E4968 002E05C8 38 7D 00 08 */ addi r3, r29, 8
/* 802E496C 002E05CC 38 80 00 00 */ li r4, 0
/* 802E4970 002E05D0 48 00 00 18 */ b lbl_802E4988
lbl_802E4974:
/* 802E4974 002E05D4 88 16 00 00 */ lbz r0, 0(r22)
/* 802E4978 002E05D8 38 84 00 01 */ addi r4, r4, 1
/* 802E497C 002E05DC 3A D6 00 01 */ addi r22, r22, 1
/* 802E4980 002E05E0 98 03 00 00 */ stb r0, 0(r3)
/* 802E4984 002E05E4 38 63 00 01 */ addi r3, r3, 1
lbl_802E4988:
/* 802E4988 002E05E8 80 01 00 08 */ lwz r0, 8(r1)
/* 802E498C 002E05EC 7C 04 00 00 */ cmpw r4, r0
/* 802E4990 002E05F0 41 80 FF E4 */ blt lbl_802E4974
/* 802E4994 002E05F4 48 00 01 68 */ b lbl_802E4AFC
lbl_802E4998:
/* 802E4998 002E05F8 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E499C 002E05FC 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E49A0 002E0600 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E49A4 002E0604 28 00 00 02 */ cmplwi r0, 2
/* 802E49A8 002E0608 41 80 00 14 */ blt lbl_802E49BC
/* 802E49AC 002E060C 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E49B0 002E0610 38 9F 00 F4 */ addi r4, r31, 0xf4
/* 802E49B4 002E0614 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E49B8 002E0618 4B FD 85 71 */ bl LogMsg_1
lbl_802E49BC:
/* 802E49BC 002E061C 80 01 00 08 */ lwz r0, 8(r1)
/* 802E49C0 002E0620 7C 76 02 14 */ add r3, r22, r0
/* 802E49C4 002E0624 48 00 01 B8 */ b lbl_802E4B7C
/* 802E49C8 002E0628 80 B7 00 68 */ lwz r5, 0x68(r23)
/* 802E49CC 002E062C 28 1B 00 05 */ cmplwi r27, 5
/* 802E49D0 002E0630 80 97 00 04 */ lwz r4, 4(r23)
/* 802E49D4 002E0634 3B C0 00 00 */ li r30, 0
/* 802E49D8 002E0638 38 A5 00 0C */ addi r5, r5, 0xc
/* 802E49DC 002E063C 38 04 FF F4 */ addi r0, r4, -12
/* 802E49E0 002E0640 90 B7 00 68 */ stw r5, 0x68(r23)
/* 802E49E4 002E0644 90 17 00 04 */ stw r0, 4(r23)
/* 802E49E8 002E0648 80 01 00 08 */ lwz r0, 8(r1)
/* 802E49EC 002E064C 7E A3 02 14 */ add r21, r3, r0
/* 802E49F0 002E0650 41 80 00 2C */ blt lbl_802E4A1C
/* 802E49F4 002E0654 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E49F8 002E0658 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E49FC 002E065C 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E4A00 002E0660 28 00 00 01 */ cmplwi r0, 1
/* 802E4A04 002E0664 41 80 00 10 */ blt lbl_802E4A14
/* 802E4A08 002E0668 38 9F 00 D8 */ addi r4, r31, 0xd8
/* 802E4A0C 002E066C 3C 60 00 0A */ lis r3, 0xa
/* 802E4A10 002E0670 4B FD 85 01 */ bl LogMsg_0
lbl_802E4A14:
/* 802E4A14 002E0674 7E A3 AB 78 */ mr r3, r21
/* 802E4A18 002E0678 48 00 01 64 */ b lbl_802E4B7C
lbl_802E4A1C:
/* 802E4A1C 002E067C 2C 1C 00 00 */ cmpwi r28, 0
/* 802E4A20 002E0680 40 82 00 0C */ bne lbl_802E4A2C
/* 802E4A24 002E0684 28 19 00 0D */ cmplwi r25, 0xd
/* 802E4A28 002E0688 40 82 00 0C */ bne lbl_802E4A34
lbl_802E4A2C:
/* 802E4A2C 002E068C 63 60 00 80 */ ori r0, r27, 0x80
/* 802E4A30 002E0690 54 1B 06 3E */ clrlwi r27, r0, 0x18
lbl_802E4A34:
/* 802E4A34 002E0694 57 63 06 3E */ clrlwi r3, r27, 0x18
/* 802E4A38 002E0698 3B 23 00 01 */ addi r25, r3, 1
/* 802E4A3C 002E069C 48 00 00 34 */ b lbl_802E4A70
lbl_802E4A40:
/* 802E4A40 002E06A0 7E C3 B3 78 */ mr r3, r22
/* 802E4A44 002E06A4 7E E4 BB 78 */ mr r4, r23
/* 802E4A48 002E06A8 7F 05 C3 78 */ mr r5, r24
/* 802E4A4C 002E06AC 7F A7 EB 78 */ mr r7, r29
/* 802E4A50 002E06B0 57 28 06 3E */ clrlwi r8, r25, 0x18
/* 802E4A54 002E06B4 38 C0 00 00 */ li r6, 0
/* 802E4A58 002E06B8 4B FF FB A5 */ bl add_attr
/* 802E4A5C 002E06BC 2C 03 00 00 */ cmpwi r3, 0
/* 802E4A60 002E06C0 7C 76 1B 78 */ mr r22, r3
/* 802E4A64 002E06C4 40 82 00 0C */ bne lbl_802E4A70
/* 802E4A68 002E06C8 38 60 00 00 */ li r3, 0
/* 802E4A6C 002E06CC 48 00 01 10 */ b lbl_802E4B7C
lbl_802E4A70:
/* 802E4A70 002E06D0 7C 16 A8 40 */ cmplw r22, r21
/* 802E4A74 002E06D4 41 80 FF CC */ blt lbl_802E4A40
/* 802E4A78 002E06D8 48 00 00 84 */ b lbl_802E4AFC
/* 802E4A7C 002E06DC 38 7D 00 08 */ addi r3, r29, 8
/* 802E4A80 002E06E0 38 80 00 00 */ li r4, 0
/* 802E4A84 002E06E4 48 00 00 18 */ b lbl_802E4A9C
lbl_802E4A88:
/* 802E4A88 002E06E8 88 16 00 00 */ lbz r0, 0(r22)
/* 802E4A8C 002E06EC 38 84 00 01 */ addi r4, r4, 1
/* 802E4A90 002E06F0 3A D6 00 01 */ addi r22, r22, 1
/* 802E4A94 002E06F4 98 03 00 00 */ stb r0, 0(r3)
/* 802E4A98 002E06F8 38 63 00 01 */ addi r3, r3, 1
lbl_802E4A9C:
/* 802E4A9C 002E06FC 80 01 00 08 */ lwz r0, 8(r1)
/* 802E4AA0 002E0700 7C 04 00 00 */ cmpw r4, r0
/* 802E4AA4 002E0704 41 80 FF E4 */ blt lbl_802E4A88
/* 802E4AA8 002E0708 48 00 00 54 */ b lbl_802E4AFC
/* 802E4AAC 002E070C 80 A1 00 08 */ lwz r5, 8(r1)
/* 802E4AB0 002E0710 2C 05 00 01 */ cmpwi r5, 1
/* 802E4AB4 002E0714 41 82 00 08 */ beq lbl_802E4ABC
/* 802E4AB8 002E0718 48 00 00 14 */ b lbl_802E4ACC
lbl_802E4ABC:
/* 802E4ABC 002E071C 88 03 00 00 */ lbz r0, 0(r3)
/* 802E4AC0 002E0720 3A C3 00 01 */ addi r22, r3, 1
/* 802E4AC4 002E0724 98 1D 00 08 */ stb r0, 8(r29)
/* 802E4AC8 002E0728 48 00 00 34 */ b lbl_802E4AFC
lbl_802E4ACC:
/* 802E4ACC 002E072C 3C 60 80 57 */ lis r3, lbl_8056C840@ha
/* 802E4AD0 002E0730 38 63 C8 40 */ addi r3, r3, lbl_8056C840@l
/* 802E4AD4 002E0734 88 03 46 30 */ lbz r0, 0x4630(r3)
/* 802E4AD8 002E0738 28 00 00 02 */ cmplwi r0, 2
/* 802E4ADC 002E073C 41 80 00 14 */ blt lbl_802E4AF0
/* 802E4AE0 002E0740 3C 60 00 0A */ lis r3, 0x000A0001@ha
/* 802E4AE4 002E0744 38 9F 01 14 */ addi r4, r31, 0x114
/* 802E4AE8 002E0748 38 63 00 01 */ addi r3, r3, 0x000A0001@l
/* 802E4AEC 002E074C 4B FD 84 3D */ bl LogMsg_1
lbl_802E4AF0:
/* 802E4AF0 002E0750 80 01 00 08 */ lwz r0, 8(r1)
/* 802E4AF4 002E0754 7C 76 02 14 */ add r3, r22, r0
/* 802E4AF8 002E0758 48 00 00 84 */ b lbl_802E4B7C
lbl_802E4AFC:
/* 802E4AFC 002E075C 80 77 00 68 */ lwz r3, 0x68(r23)
/* 802E4B00 002E0760 2C 1A 00 00 */ cmpwi r26, 0
/* 802E4B04 002E0764 80 17 00 04 */ lwz r0, 4(r23)
/* 802E4B08 002E0768 7C 63 F2 14 */ add r3, r3, r30
/* 802E4B0C 002E076C 7C 1E 00 50 */ subf r0, r30, r0
/* 802E4B10 002E0770 90 77 00 68 */ stw r3, 0x68(r23)
/* 802E4B14 002E0774 90 17 00 04 */ stw r0, 4(r23)
/* 802E4B18 002E0778 40 82 00 34 */ bne lbl_802E4B4C
/* 802E4B1C 002E077C 80 78 00 00 */ lwz r3, 0(r24)
/* 802E4B20 002E0780 2C 03 00 00 */ cmpwi r3, 0
/* 802E4B24 002E0784 40 82 00 14 */ bne lbl_802E4B38
/* 802E4B28 002E0788 93 B8 00 00 */ stw r29, 0(r24)
/* 802E4B2C 002E078C 48 00 00 4C */ b lbl_802E4B78
/* 802E4B30 002E0790 48 00 00 08 */ b lbl_802E4B38
lbl_802E4B34:
/* 802E4B34 002E0794 7C 03 03 78 */ mr r3, r0
lbl_802E4B38:
/* 802E4B38 002E0798 80 03 00 00 */ lwz r0, 0(r3)
/* 802E4B3C 002E079C 2C 00 00 00 */ cmpwi r0, 0
/* 802E4B40 002E07A0 40 82 FF F4 */ bne lbl_802E4B34
/* 802E4B44 002E07A4 93 A3 00 00 */ stw r29, 0(r3)
/* 802E4B48 002E07A8 48 00 00 30 */ b lbl_802E4B78
lbl_802E4B4C:
/* 802E4B4C 002E07AC 80 7A 00 08 */ lwz r3, 8(r26)
/* 802E4B50 002E07B0 2C 03 00 00 */ cmpwi r3, 0
/* 802E4B54 002E07B4 40 82 00 14 */ bne lbl_802E4B68
/* 802E4B58 002E07B8 93 BA 00 08 */ stw r29, 8(r26)
/* 802E4B5C 002E07BC 48 00 00 1C */ b lbl_802E4B78
/* 802E4B60 002E07C0 48 00 00 08 */ b lbl_802E4B68
lbl_802E4B64:
/* 802E4B64 002E07C4 7C 03 03 78 */ mr r3, r0
lbl_802E4B68:
/* 802E4B68 002E07C8 80 03 00 00 */ lwz r0, 0(r3)
/* 802E4B6C 002E07CC 2C 00 00 00 */ cmpwi r0, 0
/* 802E4B70 002E07D0 40 82 FF F4 */ bne lbl_802E4B64
/* 802E4B74 002E07D4 93 A3 00 00 */ stw r29, 0(r3)
lbl_802E4B78:
/* 802E4B78 002E07D8 7E C3 B3 78 */ mr r3, r22
lbl_802E4B7C:
/* 802E4B7C 002E07DC 39 61 00 40 */ addi r11, r1, 0x40
/* 802E4B80 002E07E0 4B EE 25 DD */ bl _restgpr_21
/* 802E4B84 002E07E4 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802E4B88 002E07E8 7C 08 03 A6 */ mtlr r0
/* 802E4B8C 002E07EC 38 21 00 40 */ addi r1, r1, 0x40
/* 802E4B90 002E07F0 4E 80 00 20 */ blr
|