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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global bta_dm_init_pm
bta_dm_init_pm:
/* 802C05F8 002BC258 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802C05FC 002BC25C 7C 08 02 A6 */ mflr r0
/* 802C0600 002BC260 3C 60 80 57 */ lis r3, lbl_80568918@ha
/* 802C0604 002BC264 38 80 00 00 */ li r4, 0
/* 802C0608 002BC268 90 01 00 14 */ stw r0, 0x14(r1)
/* 802C060C 002BC26C 38 63 89 18 */ addi r3, r3, lbl_80568918@l
/* 802C0610 002BC270 38 A0 00 2E */ li r5, 0x2e
/* 802C0614 002BC274 4B D4 3A F1 */ bl memset
/* 802C0618 002BC278 80 6D 89 F0 */ lwz r3, lbl_8063DCB0-_SDA_BASE_(r13)
/* 802C061C 002BC27C 88 03 00 01 */ lbz r0, 1(r3)
/* 802C0620 002BC280 2C 00 00 00 */ cmpwi r0, 0
/* 802C0624 002BC284 41 82 00 2C */ beq lbl_802C0650
/* 802C0628 002BC288 3C 60 80 2C */ lis r3, bta_dm_pm_cback@ha
/* 802C062C 002BC28C 38 63 06 78 */ addi r3, r3, bta_dm_pm_cback@l
/* 802C0630 002BC290 4B FF D0 25 */ bl bta_sys_pm_register
/* 802C0634 002BC294 3C 80 80 57 */ lis r4, lbl_80568814@ha
/* 802C0638 002BC298 3C A0 80 2C */ lis r5, bta_dm_pm_btm_cback@ha
/* 802C063C 002BC29C 38 84 88 14 */ addi r4, r4, lbl_80568814@l
/* 802C0640 002BC2A0 38 60 00 03 */ li r3, 3
/* 802C0644 002BC2A4 38 84 00 95 */ addi r4, r4, 0x95
/* 802C0648 002BC2A8 38 A5 0D 78 */ addi r5, r5, bta_dm_pm_btm_cback@l
/* 802C064C 002BC2AC 48 00 87 A1 */ bl BTM_PmRegister
lbl_802C0650:
/* 802C0650 002BC2B0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802C0654 002BC2B4 7C 08 03 A6 */ mtlr r0
/* 802C0658 002BC2B8 38 21 00 10 */ addi r1, r1, 0x10
/* 802C065C 002BC2BC 4E 80 00 20 */ blr
.global bta_dm_disable_pm
bta_dm_disable_pm:
/* 802C0660 002BC2C0 3C 80 80 57 */ lis r4, lbl_80568814@ha
/* 802C0664 002BC2C4 38 60 00 04 */ li r3, 4
/* 802C0668 002BC2C8 38 84 88 14 */ addi r4, r4, lbl_80568814@l
/* 802C066C 002BC2CC 38 A0 00 00 */ li r5, 0
/* 802C0670 002BC2D0 38 84 00 95 */ addi r4, r4, 0x95
/* 802C0674 002BC2D4 48 00 87 78 */ b BTM_PmRegister
bta_dm_pm_cback:
/* 802C0678 002BC2D8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 802C067C 002BC2DC 7C 08 02 A6 */ mflr r0
/* 802C0680 002BC2E0 90 01 00 44 */ stw r0, 0x44(r1)
/* 802C0684 002BC2E4 39 61 00 40 */ addi r11, r1, 0x40
/* 802C0688 002BC2E8 4B F0 6A 91 */ bl _savegpr_23
/* 802C068C 002BC2EC 7C 79 1B 78 */ mr r25, r3
/* 802C0690 002BC2F0 7C 9A 23 78 */ mr r26, r4
/* 802C0694 002BC2F4 7C BB 2B 78 */ mr r27, r5
/* 802C0698 002BC2F8 7C DC 33 78 */ mr r28, r6
/* 802C069C 002BC2FC 38 61 00 0C */ addi r3, r1, 0xc
/* 802C06A0 002BC300 48 00 61 E5 */ bl BTM_ReadLocalVersion
/* 802C06A4 002BC304 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 802C06A8 002BC308 40 82 00 6C */ bne lbl_802C0714
/* 802C06AC 002BC30C A0 01 00 12 */ lhz r0, 0x12(r1)
/* 802C06B0 002BC310 28 00 00 0F */ cmplwi r0, 0xf
/* 802C06B4 002BC314 40 82 00 60 */ bne lbl_802C0714
/* 802C06B8 002BC318 88 01 00 0C */ lbz r0, 0xc(r1)
/* 802C06BC 002BC31C 28 00 00 03 */ cmplwi r0, 3
/* 802C06C0 002BC320 40 80 00 54 */ bge lbl_802C0714
/* 802C06C4 002BC324 28 19 00 04 */ cmplwi r25, 4
/* 802C06C8 002BC328 40 82 00 28 */ bne lbl_802C06F0
/* 802C06CC 002BC32C 3C A0 80 40 */ lis r5, lbl_803FDAC0@ha
/* 802C06D0 002BC330 7F 83 E3 78 */ mr r3, r28
/* 802C06D4 002BC334 38 A5 DA C0 */ addi r5, r5, lbl_803FDAC0@l
/* 802C06D8 002BC338 38 81 00 08 */ addi r4, r1, 8
/* 802C06DC 002BC33C A0 05 00 04 */ lhz r0, 4(r5)
/* 802C06E0 002BC340 70 00 00 0B */ andi. r0, r0, 0xb
/* 802C06E4 002BC344 B0 01 00 08 */ sth r0, 8(r1)
/* 802C06E8 002BC348 48 00 35 AD */ bl BTM_SetLinkPolicy
/* 802C06EC 002BC34C 48 00 00 28 */ b lbl_802C0714
lbl_802C06F0:
/* 802C06F0 002BC350 28 19 00 05 */ cmplwi r25, 5
/* 802C06F4 002BC354 40 82 00 20 */ bne lbl_802C0714
/* 802C06F8 002BC358 3C A0 80 40 */ lis r5, lbl_803FDAC0@ha
/* 802C06FC 002BC35C 7F 83 E3 78 */ mr r3, r28
/* 802C0700 002BC360 38 A5 DA C0 */ addi r5, r5, lbl_803FDAC0@l
/* 802C0704 002BC364 38 81 00 08 */ addi r4, r1, 8
/* 802C0708 002BC368 A0 05 00 04 */ lhz r0, 4(r5)
/* 802C070C 002BC36C B0 01 00 08 */ sth r0, 8(r1)
/* 802C0710 002BC370 48 00 35 85 */ bl BTM_SetLinkPolicy
lbl_802C0714:
/* 802C0714 002BC374 80 AD 89 F0 */ lwz r5, lbl_8063DCB0-_SDA_BASE_(r13)
/* 802C0718 002BC378 3B C0 00 01 */ li r30, 1
/* 802C071C 002BC37C 88 85 00 01 */ lbz r4, 1(r5)
/* 802C0720 002BC380 48 00 00 38 */ b lbl_802C0758
lbl_802C0724:
/* 802C0724 002BC384 57 C3 06 3E */ clrlwi r3, r30, 0x18
/* 802C0728 002BC388 57 C0 15 BA */ rlwinm r0, r30, 2, 0x16, 0x1d
/* 802C072C 002BC38C 7C 03 00 50 */ subf r0, r3, r0
/* 802C0730 002BC390 7C 65 02 14 */ add r3, r5, r0
/* 802C0734 002BC394 7C 05 00 AE */ lbzx r0, r5, r0
/* 802C0738 002BC398 7C 1A 00 40 */ cmplw r26, r0
/* 802C073C 002BC39C 40 82 00 18 */ bne lbl_802C0754
/* 802C0740 002BC3A0 88 03 00 01 */ lbz r0, 1(r3)
/* 802C0744 002BC3A4 28 00 00 FF */ cmplwi r0, 0xff
/* 802C0748 002BC3A8 41 82 00 1C */ beq lbl_802C0764
/* 802C074C 002BC3AC 7C 1B 00 40 */ cmplw r27, r0
/* 802C0750 002BC3B0 41 82 00 14 */ beq lbl_802C0764
lbl_802C0754:
/* 802C0754 002BC3B4 3B DE 00 01 */ addi r30, r30, 1
lbl_802C0758:
/* 802C0758 002BC3B8 57 C0 06 3E */ clrlwi r0, r30, 0x18
/* 802C075C 002BC3BC 7C 00 20 40 */ cmplw r0, r4
/* 802C0760 002BC3C0 40 81 FF C4 */ ble lbl_802C0724
lbl_802C0764:
/* 802C0764 002BC3C4 88 05 00 01 */ lbz r0, 1(r5)
/* 802C0768 002BC3C8 57 C3 06 3E */ clrlwi r3, r30, 0x18
/* 802C076C 002BC3CC 7C 03 00 40 */ cmplw r3, r0
/* 802C0770 002BC3D0 41 81 02 70 */ bgt lbl_802C09E0
/* 802C0774 002BC3D4 3E E0 80 57 */ lis r23, lbl_80568814@ha
/* 802C0778 002BC3D8 3B E0 00 00 */ li r31, 0
/* 802C077C 002BC3DC 3A F7 88 14 */ addi r23, r23, lbl_80568814@l
lbl_802C0780:
/* 802C0780 002BC3E0 57 FD 2C F4 */ rlwinm r29, r31, 5, 0x13, 0x1a
/* 802C0784 002BC3E4 7F 17 EA 14 */ add r24, r23, r29
/* 802C0788 002BC3E8 88 18 00 B6 */ lbz r0, 0xb6(r24)
/* 802C078C 002BC3EC 2C 00 00 00 */ cmpwi r0, 0
/* 802C0790 002BC3F0 41 82 00 30 */ beq lbl_802C07C0
/* 802C0794 002BC3F4 7F 84 E3 78 */ mr r4, r28
/* 802C0798 002BC3F8 38 78 00 B0 */ addi r3, r24, 0xb0
/* 802C079C 002BC3FC 4B FF CD F9 */ bl bdcmp
/* 802C07A0 002BC400 2C 03 00 00 */ cmpwi r3, 0
/* 802C07A4 002BC404 40 82 00 1C */ bne lbl_802C07C0
/* 802C07A8 002BC408 7F 03 C3 78 */ mr r3, r24
/* 802C07AC 002BC40C 38 63 00 98 */ addi r3, r3, 0x98
/* 802C07B0 002BC410 4B FF D2 99 */ bl bta_sys_stop_timer
/* 802C07B4 002BC414 38 00 00 00 */ li r0, 0
/* 802C07B8 002BC418 98 18 00 B6 */ stb r0, 0xb6(r24)
/* 802C07BC 002BC41C 48 00 00 10 */ b lbl_802C07CC
lbl_802C07C0:
/* 802C07C0 002BC420 3B FF 00 01 */ addi r31, r31, 1
/* 802C07C4 002BC424 28 1F 00 03 */ cmplwi r31, 3
/* 802C07C8 002BC428 41 80 FF B8 */ blt lbl_802C0780
lbl_802C07CC:
/* 802C07CC 002BC42C 57 C4 06 3E */ clrlwi r4, r30, 0x18
/* 802C07D0 002BC430 57 C3 15 BA */ rlwinm r3, r30, 2, 0x16, 0x1d
/* 802C07D4 002BC434 7F C4 18 50 */ subf r30, r4, r3
/* 802C07D8 002BC438 80 0D 89 F0 */ lwz r0, lbl_8063DCB0-_SDA_BASE_(r13)
/* 802C07DC 002BC43C 80 8D 89 F4 */ lwz r4, lbl_8063DCB4-_SDA_BASE_(r13)
/* 802C07E0 002BC440 57 3F 1D 78 */ rlwinm r31, r25, 3, 0x15, 0x1c
/* 802C07E4 002BC444 7C 60 F2 14 */ add r3, r0, r30
/* 802C07E8 002BC448 88 03 00 02 */ lbz r0, 2(r3)
/* 802C07EC 002BC44C 1C 00 00 4A */ mulli r0, r0, 0x4a
/* 802C07F0 002BC450 7C 04 02 14 */ add r0, r4, r0
/* 802C07F4 002BC454 7C 60 FA 14 */ add r3, r0, r31
/* 802C07F8 002BC458 88 03 00 02 */ lbz r0, 2(r3)
/* 802C07FC 002BC45C 2C 00 00 00 */ cmpwi r0, 0
/* 802C0800 002BC460 41 82 01 E0 */ beq lbl_802C09E0
/* 802C0804 002BC464 3E E0 80 57 */ lis r23, lbl_80568918@ha
/* 802C0808 002BC468 3B A0 00 00 */ li r29, 0
/* 802C080C 002BC46C 3B 17 89 18 */ addi r24, r23, lbl_80568918@l
/* 802C0810 002BC470 48 00 00 44 */ b lbl_802C0854
lbl_802C0814:
/* 802C0814 002BC474 57 A3 06 3E */ clrlwi r3, r29, 0x18
/* 802C0818 002BC478 57 A0 1D 78 */ rlwinm r0, r29, 3, 0x15, 0x1c
/* 802C081C 002BC47C 7C 00 1A 14 */ add r0, r0, r3
/* 802C0820 002BC480 7C 78 02 14 */ add r3, r24, r0
/* 802C0824 002BC484 88 03 00 07 */ lbz r0, 7(r3)
/* 802C0828 002BC488 7C 1A 00 40 */ cmplw r26, r0
/* 802C082C 002BC48C 40 82 00 24 */ bne lbl_802C0850
/* 802C0830 002BC490 88 03 00 08 */ lbz r0, 8(r3)
/* 802C0834 002BC494 7C 1B 00 40 */ cmplw r27, r0
/* 802C0838 002BC498 40 82 00 18 */ bne lbl_802C0850
/* 802C083C 002BC49C 7F 84 E3 78 */ mr r4, r28
/* 802C0840 002BC4A0 38 63 00 01 */ addi r3, r3, 1
/* 802C0844 002BC4A4 4B FF CD 51 */ bl bdcmp
/* 802C0848 002BC4A8 2C 03 00 00 */ cmpwi r3, 0
/* 802C084C 002BC4AC 41 82 00 18 */ beq lbl_802C0864
lbl_802C0850:
/* 802C0850 002BC4B0 3B BD 00 01 */ addi r29, r29, 1
lbl_802C0854:
/* 802C0854 002BC4B4 88 17 89 18 */ lbz r0, -0x76e8(r23)
/* 802C0858 002BC4B8 57 A3 06 3E */ clrlwi r3, r29, 0x18
/* 802C085C 002BC4BC 7C 03 00 40 */ cmplw r3, r0
/* 802C0860 002BC4C0 41 80 FF B4 */ blt lbl_802C0814
lbl_802C0864:
/* 802C0864 002BC4C4 80 0D 89 F0 */ lwz r0, lbl_8063DCB0-_SDA_BASE_(r13)
/* 802C0868 002BC4C8 80 8D 89 F4 */ lwz r4, lbl_8063DCB4-_SDA_BASE_(r13)
/* 802C086C 002BC4CC 7C 60 F2 14 */ add r3, r0, r30
/* 802C0870 002BC4D0 88 03 00 02 */ lbz r0, 2(r3)
/* 802C0874 002BC4D4 1C 00 00 4A */ mulli r0, r0, 0x4a
/* 802C0878 002BC4D8 7C 04 02 14 */ add r0, r4, r0
/* 802C087C 002BC4DC 7C 60 FA 14 */ add r3, r0, r31
/* 802C0880 002BC4E0 88 03 00 02 */ lbz r0, 2(r3)
/* 802C0884 002BC4E4 28 00 00 10 */ cmplwi r0, 0x10
/* 802C0888 002BC4E8 40 82 00 70 */ bne lbl_802C08F8
/* 802C088C 002BC4EC 3F 60 80 57 */ lis r27, lbl_80568918@ha
/* 802C0890 002BC4F0 57 A3 06 3E */ clrlwi r3, r29, 0x18
/* 802C0894 002BC4F4 88 1B 89 18 */ lbz r0, lbl_80568918@l(r27)
/* 802C0898 002BC4F8 7C 03 00 40 */ cmplw r3, r0
/* 802C089C 002BC4FC 41 82 00 C8 */ beq lbl_802C0964
/* 802C08A0 002BC500 3B 5B 89 18 */ addi r26, r27, -30440
/* 802C08A4 002BC504 48 00 00 38 */ b lbl_802C08DC
lbl_802C08A8:
/* 802C08A8 002BC508 57 A6 06 3E */ clrlwi r6, r29, 0x18
/* 802C08AC 002BC50C 57 A4 1D 78 */ rlwinm r4, r29, 3, 0x15, 0x1c
/* 802C08B0 002BC510 38 66 00 01 */ addi r3, r6, 1
/* 802C08B4 002BC514 38 A0 00 09 */ li r5, 9
/* 802C08B8 002BC518 54 60 18 38 */ slwi r0, r3, 3
/* 802C08BC 002BC51C 7C 84 32 14 */ add r4, r4, r6
/* 802C08C0 002BC520 7C 00 1A 14 */ add r0, r0, r3
/* 802C08C4 002BC524 7C 7A 22 14 */ add r3, r26, r4
/* 802C08C8 002BC528 7C 9A 02 14 */ add r4, r26, r0
/* 802C08CC 002BC52C 38 63 00 01 */ addi r3, r3, 1
/* 802C08D0 002BC530 38 84 00 01 */ addi r4, r4, 1
/* 802C08D4 002BC534 4B D4 37 2D */ bl memcpy
/* 802C08D8 002BC538 3B BD 00 01 */ addi r29, r29, 1
lbl_802C08DC:
/* 802C08DC 002BC53C 88 7B 89 18 */ lbz r3, -0x76e8(r27)
/* 802C08E0 002BC540 57 A0 06 3E */ clrlwi r0, r29, 0x18
/* 802C08E4 002BC544 7C 00 18 40 */ cmplw r0, r3
/* 802C08E8 002BC548 41 80 FF C0 */ blt lbl_802C08A8
/* 802C08EC 002BC54C 38 03 FF FF */ addi r0, r3, -1
/* 802C08F0 002BC550 98 1B 89 18 */ stb r0, -0x76e8(r27)
/* 802C08F4 002BC554 48 00 00 70 */ b lbl_802C0964
lbl_802C08F8:
/* 802C08F8 002BC558 3F C0 80 57 */ lis r30, lbl_80568918@ha
/* 802C08FC 002BC55C 57 A4 06 3E */ clrlwi r4, r29, 0x18
/* 802C0900 002BC560 88 1E 89 18 */ lbz r0, lbl_80568918@l(r30)
/* 802C0904 002BC564 7C 04 00 40 */ cmplw r4, r0
/* 802C0908 002BC568 40 82 00 5C */ bne lbl_802C0964
/* 802C090C 002BC56C 28 00 00 05 */ cmplwi r0, 5
/* 802C0910 002BC570 40 82 00 24 */ bne lbl_802C0934
/* 802C0914 002BC574 88 0D AE F8 */ lbz r0, lbl_806401B8-_SDA_BASE_(r13)
/* 802C0918 002BC578 28 00 00 02 */ cmplwi r0, 2
/* 802C091C 002BC57C 41 80 00 C4 */ blt lbl_802C09E0
/* 802C0920 002BC580 3C 80 80 44 */ lis r4, lbl_804401A8@ha
/* 802C0924 002BC584 38 60 05 01 */ li r3, 0x501
/* 802C0928 002BC588 38 84 01 A8 */ addi r4, r4, lbl_804401A8@l
/* 802C092C 002BC58C 4B FF C5 E5 */ bl LogMsg_0
/* 802C0930 002BC590 48 00 00 B0 */ b lbl_802C09E0
lbl_802C0934:
/* 802C0934 002BC594 57 A3 1D 78 */ rlwinm r3, r29, 3, 0x15, 0x1c
/* 802C0938 002BC598 38 1E 89 18 */ addi r0, r30, -30440
/* 802C093C 002BC59C 7C 63 22 14 */ add r3, r3, r4
/* 802C0940 002BC5A0 7F 84 E3 78 */ mr r4, r28
/* 802C0944 002BC5A4 7C A0 1A 14 */ add r5, r0, r3
/* 802C0948 002BC5A8 9B 45 00 07 */ stb r26, 7(r5)
/* 802C094C 002BC5AC 38 65 00 01 */ addi r3, r5, 1
/* 802C0950 002BC5B0 9B 65 00 08 */ stb r27, 8(r5)
/* 802C0954 002BC5B4 4B FF CC 0D */ bl bdcpy
/* 802C0958 002BC5B8 88 7E 89 18 */ lbz r3, -0x76e8(r30)
/* 802C095C 002BC5BC 38 03 00 01 */ addi r0, r3, 1
/* 802C0960 002BC5C0 98 1E 89 18 */ stb r0, -0x76e8(r30)
lbl_802C0964:
/* 802C0964 002BC5C4 3C 60 80 57 */ lis r3, lbl_80568814@ha
/* 802C0968 002BC5C8 3B 00 00 00 */ li r24, 0
/* 802C096C 002BC5CC 3B 43 88 14 */ addi r26, r3, lbl_80568814@l
/* 802C0970 002BC5D0 48 00 00 38 */ b lbl_802C09A8
lbl_802C0974:
/* 802C0974 002BC5D4 57 00 06 3E */ clrlwi r0, r24, 0x18
/* 802C0978 002BC5D8 7F 84 E3 78 */ mr r4, r28
/* 802C097C 002BC5DC 1E E0 00 0B */ mulli r23, r0, 0xb
/* 802C0980 002BC5E0 7C 7A BA 14 */ add r3, r26, r23
/* 802C0984 002BC5E4 4B FF CC 11 */ bl bdcmp
/* 802C0988 002BC5E8 2C 03 00 00 */ cmpwi r3, 0
/* 802C098C 002BC5EC 40 82 00 18 */ bne lbl_802C09A4
/* 802C0990 002BC5F0 7C 7A BA 14 */ add r3, r26, r23
/* 802C0994 002BC5F4 38 00 00 00 */ li r0, 0
/* 802C0998 002BC5F8 98 03 00 09 */ stb r0, 9(r3)
/* 802C099C 002BC5FC 98 03 00 0A */ stb r0, 0xa(r3)
/* 802C09A0 002BC600 48 00 00 18 */ b lbl_802C09B8
lbl_802C09A4:
/* 802C09A4 002BC604 3B 18 00 01 */ addi r24, r24, 1
lbl_802C09A8:
/* 802C09A8 002BC608 88 1A 00 4D */ lbz r0, 0x4d(r26)
/* 802C09AC 002BC60C 57 03 06 3E */ clrlwi r3, r24, 0x18
/* 802C09B0 002BC610 7C 03 00 40 */ cmplw r3, r0
/* 802C09B4 002BC614 41 80 FF C0 */ blt lbl_802C0974
lbl_802C09B8:
/* 802C09B8 002BC618 3C C0 80 57 */ lis r6, lbl_80568918@ha
/* 802C09BC 002BC61C 57 A5 06 3E */ clrlwi r5, r29, 0x18
/* 802C09C0 002BC620 57 A0 1D 78 */ rlwinm r0, r29, 3, 0x15, 0x1c
/* 802C09C4 002BC624 7F 83 E3 78 */ mr r3, r28
/* 802C09C8 002BC628 38 C6 89 18 */ addi r6, r6, lbl_80568918@l
/* 802C09CC 002BC62C 38 80 00 00 */ li r4, 0
/* 802C09D0 002BC630 7C 00 2A 14 */ add r0, r0, r5
/* 802C09D4 002BC634 7C A6 02 14 */ add r5, r6, r0
/* 802C09D8 002BC638 9B 25 00 09 */ stb r25, 9(r5)
/* 802C09DC 002BC63C 48 00 00 1D */ bl bta_dm_pm_set_mode
lbl_802C09E0:
/* 802C09E0 002BC640 39 61 00 40 */ addi r11, r1, 0x40
/* 802C09E4 002BC644 4B F0 67 81 */ bl _restgpr_23
/* 802C09E8 002BC648 80 01 00 44 */ lwz r0, 0x44(r1)
/* 802C09EC 002BC64C 7C 08 03 A6 */ mtlr r0
/* 802C09F0 002BC650 38 21 00 40 */ addi r1, r1, 0x40
/* 802C09F4 002BC654 4E 80 00 20 */ blr
.global bta_dm_pm_set_mode
bta_dm_pm_set_mode:
/* 802C09F8 002BC658 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 802C09FC 002BC65C 7C 08 02 A6 */ mflr r0
/* 802C0A00 002BC660 90 01 00 54 */ stw r0, 0x54(r1)
/* 802C0A04 002BC664 39 61 00 50 */ addi r11, r1, 0x50
/* 802C0A08 002BC668 4B F0 67 05 */ bl _savegpr_20
/* 802C0A0C 002BC66C 3C A0 80 57 */ lis r5, lbl_80568814@ha
/* 802C0A10 002BC670 7C 74 1B 78 */ mr r20, r3
/* 802C0A14 002BC674 3B 85 88 14 */ addi r28, r5, lbl_80568814@l
/* 802C0A18 002BC678 7C 95 23 78 */ mr r21, r4
/* 802C0A1C 002BC67C 88 1C 00 4D */ lbz r0, 0x4d(r28)
/* 802C0A20 002BC680 3B 60 00 00 */ li r27, 0
/* 802C0A24 002BC684 3B 40 00 00 */ li r26, 0
/* 802C0A28 002BC688 3B 20 00 00 */ li r25, 0
/* 802C0A2C 002BC68C 2C 00 00 00 */ cmpwi r0, 0
/* 802C0A30 002BC690 3B 00 00 00 */ li r24, 0
/* 802C0A34 002BC694 3A E0 00 00 */ li r23, 0
/* 802C0A38 002BC698 3A C0 00 00 */ li r22, 0
/* 802C0A3C 002BC69C 41 82 03 24 */ beq lbl_802C0D60
/* 802C0A40 002BC6A0 3B C0 00 00 */ li r30, 0
/* 802C0A44 002BC6A4 48 00 00 30 */ b lbl_802C0A74
lbl_802C0A48:
/* 802C0A48 002BC6A8 57 C0 06 3E */ clrlwi r0, r30, 0x18
/* 802C0A4C 002BC6AC 7E 84 A3 78 */ mr r4, r20
/* 802C0A50 002BC6B0 1F A0 00 0B */ mulli r29, r0, 0xb
/* 802C0A54 002BC6B4 7C 7C EA 14 */ add r3, r28, r29
/* 802C0A58 002BC6B8 4B FF CB 3D */ bl bdcmp
/* 802C0A5C 002BC6BC 2C 03 00 00 */ cmpwi r3, 0
/* 802C0A60 002BC6C0 40 82 00 10 */ bne lbl_802C0A70
/* 802C0A64 002BC6C4 7F 1C EA 14 */ add r24, r28, r29
/* 802C0A68 002BC6C8 8B 38 00 0A */ lbz r25, 0xa(r24)
/* 802C0A6C 002BC6CC 48 00 00 18 */ b lbl_802C0A84
lbl_802C0A70:
/* 802C0A70 002BC6D0 3B DE 00 01 */ addi r30, r30, 1
lbl_802C0A74:
/* 802C0A74 002BC6D4 88 1C 00 4D */ lbz r0, 0x4d(r28)
/* 802C0A78 002BC6D8 57 C3 06 3E */ clrlwi r3, r30, 0x18
/* 802C0A7C 002BC6DC 7C 03 00 40 */ cmplw r3, r0
/* 802C0A80 002BC6E0 41 80 FF C8 */ blt lbl_802C0A48
lbl_802C0A84:
/* 802C0A84 002BC6E4 2C 18 00 00 */ cmpwi r24, 0
/* 802C0A88 002BC6E8 41 82 02 D8 */ beq lbl_802C0D60
/* 802C0A8C 002BC6EC 3F C0 80 57 */ lis r30, lbl_80568918@ha
/* 802C0A90 002BC6F0 3B 80 00 00 */ li r28, 0
/* 802C0A94 002BC6F4 3B FE 89 18 */ addi r31, r30, lbl_80568918@l
/* 802C0A98 002BC6F8 48 00 01 30 */ b lbl_802C0BC8
lbl_802C0A9C:
/* 802C0A9C 002BC6FC 57 83 06 3E */ clrlwi r3, r28, 0x18
/* 802C0AA0 002BC700 57 80 1D 78 */ rlwinm r0, r28, 3, 0x15, 0x1c
/* 802C0AA4 002BC704 7F A0 1A 14 */ add r29, r0, r3
/* 802C0AA8 002BC708 7E 84 A3 78 */ mr r4, r20
/* 802C0AAC 002BC70C 7C 7F EA 14 */ add r3, r31, r29
/* 802C0AB0 002BC710 38 63 00 01 */ addi r3, r3, 1
/* 802C0AB4 002BC714 4B FF CA E1 */ bl bdcmp
/* 802C0AB8 002BC718 2C 03 00 00 */ cmpwi r3, 0
/* 802C0ABC 002BC71C 40 82 01 08 */ bne lbl_802C0BC4
/* 802C0AC0 002BC720 80 ED 89 F0 */ lwz r7, lbl_8063DCB0-_SDA_BASE_(r13)
/* 802C0AC4 002BC724 7D 1F EA 14 */ add r8, r31, r29
/* 802C0AC8 002BC728 88 68 00 08 */ lbz r3, 8(r8)
/* 802C0ACC 002BC72C 39 20 00 01 */ li r9, 1
/* 802C0AD0 002BC730 88 C7 00 01 */ lbz r6, 1(r7)
/* 802C0AD4 002BC734 88 88 00 07 */ lbz r4, 7(r8)
/* 802C0AD8 002BC738 48 00 00 38 */ b lbl_802C0B10
lbl_802C0ADC:
/* 802C0ADC 002BC73C 55 25 06 3E */ clrlwi r5, r9, 0x18
/* 802C0AE0 002BC740 55 20 15 BA */ rlwinm r0, r9, 2, 0x16, 0x1d
/* 802C0AE4 002BC744 7C 05 00 50 */ subf r0, r5, r0
/* 802C0AE8 002BC748 7C A7 02 14 */ add r5, r7, r0
/* 802C0AEC 002BC74C 7C 07 00 AE */ lbzx r0, r7, r0
/* 802C0AF0 002BC750 7C 00 20 40 */ cmplw r0, r4
/* 802C0AF4 002BC754 40 82 00 18 */ bne lbl_802C0B0C
/* 802C0AF8 002BC758 88 05 00 01 */ lbz r0, 1(r5)
/* 802C0AFC 002BC75C 28 00 00 FF */ cmplwi r0, 0xff
/* 802C0B00 002BC760 41 82 00 1C */ beq lbl_802C0B1C
/* 802C0B04 002BC764 7C 00 18 40 */ cmplw r0, r3
/* 802C0B08 002BC768 41 82 00 14 */ beq lbl_802C0B1C
lbl_802C0B0C:
/* 802C0B0C 002BC76C 39 29 00 01 */ addi r9, r9, 1
lbl_802C0B10:
/* 802C0B10 002BC770 55 20 06 3E */ clrlwi r0, r9, 0x18
/* 802C0B14 002BC774 7C 00 30 40 */ cmplw r0, r6
/* 802C0B18 002BC778 40 81 FF C4 */ ble lbl_802C0ADC
lbl_802C0B1C:
/* 802C0B1C 002BC77C 55 23 06 3E */ clrlwi r3, r9, 0x18
/* 802C0B20 002BC780 55 20 15 BA */ rlwinm r0, r9, 2, 0x16, 0x1d
/* 802C0B24 002BC784 7C 63 00 50 */ subf r3, r3, r0
/* 802C0B28 002BC788 88 08 00 09 */ lbz r0, 9(r8)
/* 802C0B2C 002BC78C 7C 87 1A 14 */ add r4, r7, r3
/* 802C0B30 002BC790 80 6D 89 F4 */ lwz r3, lbl_8063DCB4-_SDA_BASE_(r13)
/* 802C0B34 002BC794 88 84 00 02 */ lbz r4, 2(r4)
/* 802C0B38 002BC798 54 00 18 38 */ slwi r0, r0, 3
/* 802C0B3C 002BC79C 1C 84 00 4A */ mulli r4, r4, 0x4a
/* 802C0B40 002BC7A0 7C A3 22 14 */ add r5, r3, r4
/* 802C0B44 002BC7A4 7C 65 02 14 */ add r3, r5, r0
/* 802C0B48 002BC7A8 88 05 00 00 */ lbz r0, 0(r5)
/* 802C0B4C 002BC7AC 88 83 00 02 */ lbz r4, 2(r3)
/* 802C0B50 002BC7B0 7E F7 03 78 */ or r23, r23, r0
/* 802C0B54 002BC7B4 7F 20 20 39 */ and. r0, r25, r4
/* 802C0B58 002BC7B8 40 82 00 34 */ bne lbl_802C0B8C
/* 802C0B5C 002BC7BC 7C 7F EA 14 */ add r3, r31, r29
/* 802C0B60 002BC7C0 57 60 06 3E */ clrlwi r0, r27, 0x18
/* 802C0B64 002BC7C4 88 63 00 09 */ lbz r3, 9(r3)
/* 802C0B68 002BC7C8 54 63 18 38 */ slwi r3, r3, 3
/* 802C0B6C 002BC7CC 7C A5 1A 14 */ add r5, r5, r3
/* 802C0B70 002BC7D0 88 65 00 02 */ lbz r3, 2(r5)
/* 802C0B74 002BC7D4 7C 03 00 40 */ cmplw r3, r0
/* 802C0B78 002BC7D8 7E D6 1B 78 */ or r22, r22, r3
/* 802C0B7C 002BC7DC 40 81 00 48 */ ble lbl_802C0BC4
/* 802C0B80 002BC7E0 A3 45 00 04 */ lhz r26, 4(r5)
/* 802C0B84 002BC7E4 7C 9B 23 78 */ mr r27, r4
/* 802C0B88 002BC7E8 48 00 00 3C */ b lbl_802C0BC4
lbl_802C0B8C:
/* 802C0B8C 002BC7EC 88 63 00 06 */ lbz r3, 6(r3)
/* 802C0B90 002BC7F0 7F 20 18 39 */ and. r0, r25, r3
/* 802C0B94 002BC7F4 40 82 00 30 */ bne lbl_802C0BC4
/* 802C0B98 002BC7F8 7C 9F EA 14 */ add r4, r31, r29
/* 802C0B9C 002BC7FC 57 60 06 3E */ clrlwi r0, r27, 0x18
/* 802C0BA0 002BC800 88 84 00 09 */ lbz r4, 9(r4)
/* 802C0BA4 002BC804 54 84 18 38 */ slwi r4, r4, 3
/* 802C0BA8 002BC808 7C A5 22 14 */ add r5, r5, r4
/* 802C0BAC 002BC80C 88 85 00 06 */ lbz r4, 6(r5)
/* 802C0BB0 002BC810 7C 04 00 40 */ cmplw r4, r0
/* 802C0BB4 002BC814 7E D6 23 78 */ or r22, r22, r4
/* 802C0BB8 002BC818 40 81 00 0C */ ble lbl_802C0BC4
/* 802C0BBC 002BC81C 7C 7B 1B 78 */ mr r27, r3
/* 802C0BC0 002BC820 A3 45 00 08 */ lhz r26, 8(r5)
lbl_802C0BC4:
/* 802C0BC4 002BC824 3B 9C 00 01 */ addi r28, r28, 1
lbl_802C0BC8:
/* 802C0BC8 002BC828 88 1E 89 18 */ lbz r0, -0x76e8(r30)
/* 802C0BCC 002BC82C 57 83 06 3E */ clrlwi r3, r28, 0x18
/* 802C0BD0 002BC830 7C 03 00 40 */ cmplw r3, r0
/* 802C0BD4 002BC834 41 80 FE C8 */ blt lbl_802C0A9C
/* 802C0BD8 002BC838 57 60 07 BF */ clrlwi. r0, r27, 0x1e
/* 802C0BDC 002BC83C 41 82 00 24 */ beq lbl_802C0C00
/* 802C0BE0 002BC840 56 E3 06 3E */ clrlwi r3, r23, 0x18
/* 802C0BE4 002BC844 57 60 06 3E */ clrlwi r0, r27, 0x18
/* 802C0BE8 002BC848 7C 60 00 39 */ and. r0, r3, r0
/* 802C0BEC 002BC84C 40 82 00 14 */ bne lbl_802C0C00
/* 802C0BF0 002BC850 7E E0 B0 38 */ and r0, r23, r22
/* 802C0BF4 002BC854 54 1B 07 BF */ clrlwi. r27, r0, 0x1e
/* 802C0BF8 002BC858 40 82 00 08 */ bne lbl_802C0C00
/* 802C0BFC 002BC85C 3B 40 00 00 */ li r26, 0
lbl_802C0C00:
/* 802C0C00 002BC860 2C 15 00 00 */ cmpwi r21, 0
/* 802C0C04 002BC864 40 82 00 A0 */ bne lbl_802C0CA4
/* 802C0C08 002BC868 2C 1A 00 00 */ cmpwi r26, 0
/* 802C0C0C 002BC86C 41 82 00 98 */ beq lbl_802C0CA4
/* 802C0C10 002BC870 3E A0 80 57 */ lis r21, lbl_80568814@ha
/* 802C0C14 002BC874 38 00 00 03 */ li r0, 3
/* 802C0C18 002BC878 3A B5 88 14 */ addi r21, r21, lbl_80568814@l
/* 802C0C1C 002BC87C 38 80 00 00 */ li r4, 0
/* 802C0C20 002BC880 7C 09 03 A6 */ mtctr r0
lbl_802C0C24:
/* 802C0C24 002BC884 54 96 2C F4 */ rlwinm r22, r4, 5, 0x13, 0x1a
/* 802C0C28 002BC888 7C 75 B2 14 */ add r3, r21, r22
/* 802C0C2C 002BC88C 88 03 00 B6 */ lbz r0, 0xb6(r3)
/* 802C0C30 002BC890 2C 00 00 00 */ cmpwi r0, 0
/* 802C0C34 002BC894 40 82 00 3C */ bne lbl_802C0C70
/* 802C0C38 002BC898 38 00 00 01 */ li r0, 1
/* 802C0C3C 002BC89C 7E 84 A3 78 */ mr r4, r20
/* 802C0C40 002BC8A0 98 03 00 B6 */ stb r0, 0xb6(r3)
/* 802C0C44 002BC8A4 38 63 00 B0 */ addi r3, r3, 0xb0
/* 802C0C48 002BC8A8 4B FF C9 19 */ bl bdcpy
/* 802C0C4C 002BC8AC 3C 80 80 2C */ lis r4, bta_dm_pm_timer_cback@ha
/* 802C0C50 002BC8B0 7C 75 B2 14 */ add r3, r21, r22
/* 802C0C54 002BC8B4 38 84 0D F0 */ addi r4, r4, bta_dm_pm_timer_cback@l
/* 802C0C58 002BC8B8 7F 45 D3 78 */ mr r5, r26
/* 802C0C5C 002BC8BC 90 83 00 A0 */ stw r4, 0xa0(r3)
/* 802C0C60 002BC8C0 38 63 00 98 */ addi r3, r3, 0x98
/* 802C0C64 002BC8C4 38 80 00 00 */ li r4, 0
/* 802C0C68 002BC8C8 4B FF CD C1 */ bl bta_sys_start_timer
/* 802C0C6C 002BC8CC 48 00 00 F4 */ b lbl_802C0D60
lbl_802C0C70:
/* 802C0C70 002BC8D0 38 84 00 01 */ addi r4, r4, 1
/* 802C0C74 002BC8D4 54 80 06 3E */ clrlwi r0, r4, 0x18
/* 802C0C78 002BC8D8 42 00 FF AC */ bdnz lbl_802C0C24
/* 802C0C7C 002BC8DC 28 00 00 03 */ cmplwi r0, 3
/* 802C0C80 002BC8E0 40 82 00 24 */ bne lbl_802C0CA4
/* 802C0C84 002BC8E4 88 0D AE F8 */ lbz r0, lbl_806401B8-_SDA_BASE_(r13)
/* 802C0C88 002BC8E8 28 00 00 02 */ cmplwi r0, 2
/* 802C0C8C 002BC8EC 41 80 00 D4 */ blt lbl_802C0D60
/* 802C0C90 002BC8F0 3C 80 80 44 */ lis r4, lbl_804401D4@ha
/* 802C0C94 002BC8F4 38 60 05 01 */ li r3, 0x501
/* 802C0C98 002BC8F8 38 84 01 D4 */ addi r4, r4, lbl_804401D4@l
/* 802C0C9C 002BC8FC 4B FF C2 75 */ bl LogMsg_0
/* 802C0CA0 002BC900 48 00 00 C0 */ b lbl_802C0D60
lbl_802C0CA4:
/* 802C0CA4 002BC904 57 60 06 3F */ clrlwi. r0, r27, 0x18
/* 802C0CA8 002BC908 41 82 00 B8 */ beq lbl_802C0D60
/* 802C0CAC 002BC90C 28 00 00 01 */ cmplwi r0, 1
/* 802C0CB0 002BC910 40 82 00 44 */ bne lbl_802C0CF4
/* 802C0CB4 002BC914 38 00 00 01 */ li r0, 1
/* 802C0CB8 002BC918 7E 83 A3 78 */ mr r3, r20
/* 802C0CBC 002BC91C 98 18 00 09 */ stb r0, 9(r24)
/* 802C0CC0 002BC920 38 81 00 09 */ addi r4, r1, 9
/* 802C0CC4 002BC924 48 00 83 B5 */ bl BTM_ReadPowerMode
/* 802C0CC8 002BC928 88 01 00 09 */ lbz r0, 9(r1)
/* 802C0CCC 002BC92C 28 00 00 03 */ cmplwi r0, 3
/* 802C0CD0 002BC930 41 82 00 90 */ beq lbl_802C0D60
/* 802C0CD4 002BC934 3C 60 80 57 */ lis r3, lbl_80568814@ha
/* 802C0CD8 002BC938 80 AD 89 F8 */ lwz r5, lbl_8063DCB8-_SDA_BASE_(r13)
/* 802C0CDC 002BC93C 38 63 88 14 */ addi r3, r3, lbl_80568814@l
/* 802C0CE0 002BC940 7E 84 A3 78 */ mr r4, r20
/* 802C0CE4 002BC944 88 63 00 95 */ lbz r3, 0x95(r3)
/* 802C0CE8 002BC948 38 A5 00 0A */ addi r5, r5, 0xa
/* 802C0CEC 002BC94C 48 00 81 BD */ bl BTM_SetPowerMode
/* 802C0CF0 002BC950 48 00 00 70 */ b lbl_802C0D60
lbl_802C0CF4:
/* 802C0CF4 002BC954 28 00 00 02 */ cmplwi r0, 2
/* 802C0CF8 002BC958 40 82 00 40 */ bne lbl_802C0D38
/* 802C0CFC 002BC95C 38 00 00 02 */ li r0, 2
/* 802C0D00 002BC960 7E 83 A3 78 */ mr r3, r20
/* 802C0D04 002BC964 98 18 00 09 */ stb r0, 9(r24)
/* 802C0D08 002BC968 38 81 00 08 */ addi r4, r1, 8
/* 802C0D0C 002BC96C 48 00 83 6D */ bl BTM_ReadPowerMode
/* 802C0D10 002BC970 88 01 00 08 */ lbz r0, 8(r1)
/* 802C0D14 002BC974 28 00 00 02 */ cmplwi r0, 2
/* 802C0D18 002BC978 41 82 00 48 */ beq lbl_802C0D60
/* 802C0D1C 002BC97C 3C 60 80 57 */ lis r3, lbl_80568814@ha
/* 802C0D20 002BC980 80 AD 89 F8 */ lwz r5, lbl_8063DCB8-_SDA_BASE_(r13)
/* 802C0D24 002BC984 38 63 88 14 */ addi r3, r3, lbl_80568814@l
/* 802C0D28 002BC988 7E 84 A3 78 */ mr r4, r20
/* 802C0D2C 002BC98C 88 63 00 95 */ lbz r3, 0x95(r3)
/* 802C0D30 002BC990 48 00 81 79 */ bl BTM_SetPowerMode
/* 802C0D34 002BC994 48 00 00 2C */ b lbl_802C0D60
lbl_802C0D38:
/* 802C0D38 002BC998 28 00 00 04 */ cmplwi r0, 4
/* 802C0D3C 002BC99C 40 82 00 24 */ bne lbl_802C0D60
/* 802C0D40 002BC9A0 3C 60 80 57 */ lis r3, lbl_80568814@ha
/* 802C0D44 002BC9A4 38 00 00 00 */ li r0, 0
/* 802C0D48 002BC9A8 38 63 88 14 */ addi r3, r3, lbl_80568814@l
/* 802C0D4C 002BC9AC 98 01 00 14 */ stb r0, 0x14(r1)
/* 802C0D50 002BC9B0 88 63 00 95 */ lbz r3, 0x95(r3)
/* 802C0D54 002BC9B4 7E 84 A3 78 */ mr r4, r20
/* 802C0D58 002BC9B8 38 A1 00 0C */ addi r5, r1, 0xc
/* 802C0D5C 002BC9BC 48 00 81 4D */ bl BTM_SetPowerMode
lbl_802C0D60:
/* 802C0D60 002BC9C0 39 61 00 50 */ addi r11, r1, 0x50
/* 802C0D64 002BC9C4 4B F0 63 F5 */ bl _restgpr_20
/* 802C0D68 002BC9C8 80 01 00 54 */ lwz r0, 0x54(r1)
/* 802C0D6C 002BC9CC 7C 08 03 A6 */ mtlr r0
/* 802C0D70 002BC9D0 38 21 00 50 */ addi r1, r1, 0x50
/* 802C0D74 002BC9D4 4E 80 00 20 */ blr
bta_dm_pm_btm_cback:
/* 802C0D78 002BC9D8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C0D7C 002BC9DC 7C 08 02 A6 */ mflr r0
/* 802C0D80 002BC9E0 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C0D84 002BC9E4 39 61 00 20 */ addi r11, r1, 0x20
/* 802C0D88 002BC9E8 4B F0 63 A1 */ bl _savegpr_27
/* 802C0D8C 002BC9EC 7C 7B 1B 78 */ mr r27, r3
/* 802C0D90 002BC9F0 7C 9C 23 78 */ mr r28, r4
/* 802C0D94 002BC9F4 7C BD 2B 78 */ mr r29, r5
/* 802C0D98 002BC9F8 7C DE 33 78 */ mr r30, r6
/* 802C0D9C 002BC9FC 38 60 00 14 */ li r3, 0x14
/* 802C0DA0 002BCA00 4B FF 8D 0D */ bl GKI_getbuf
/* 802C0DA4 002BCA04 2C 03 00 00 */ cmpwi r3, 0
/* 802C0DA8 002BCA08 7C 7F 1B 78 */ mr r31, r3
/* 802C0DAC 002BCA0C 41 82 00 2C */ beq lbl_802C0DD8
/* 802C0DB0 002BCA10 38 00 01 09 */ li r0, 0x109
/* 802C0DB4 002BCA14 7F 64 DB 78 */ mr r4, r27
/* 802C0DB8 002BCA18 B0 03 00 00 */ sth r0, 0(r3)
/* 802C0DBC 002BCA1C 9B 83 00 0E */ stb r28, 0xe(r3)
/* 802C0DC0 002BCA20 B3 A3 00 10 */ sth r29, 0x10(r3)
/* 802C0DC4 002BCA24 9B C3 00 12 */ stb r30, 0x12(r3)
/* 802C0DC8 002BCA28 38 63 00 08 */ addi r3, r3, 8
/* 802C0DCC 002BCA2C 4B FF C7 95 */ bl bdcpy
/* 802C0DD0 002BCA30 7F E3 FB 78 */ mr r3, r31
/* 802C0DD4 002BCA34 4B FF CC 39 */ bl bta_sys_sendmsg
lbl_802C0DD8:
/* 802C0DD8 002BCA38 39 61 00 20 */ addi r11, r1, 0x20
/* 802C0DDC 002BCA3C 4B F0 63 99 */ bl _restgpr_27
/* 802C0DE0 002BCA40 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C0DE4 002BCA44 7C 08 03 A6 */ mtlr r0
/* 802C0DE8 002BCA48 38 21 00 20 */ addi r1, r1, 0x20
/* 802C0DEC 002BCA4C 4E 80 00 20 */ blr
bta_dm_pm_timer_cback:
/* 802C0DF0 002BCA50 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802C0DF4 002BCA54 7C 08 02 A6 */ mflr r0
/* 802C0DF8 002BCA58 3C 80 80 57 */ lis r4, lbl_80568814@ha
/* 802C0DFC 002BCA5C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802C0E00 002BCA60 38 84 88 14 */ addi r4, r4, lbl_80568814@l
/* 802C0E04 002BCA64 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802C0E08 002BCA68 93 C1 00 08 */ stw r30, 8(r1)
/* 802C0E0C 002BCA6C 3B C0 00 00 */ li r30, 0
/* 802C0E10 002BCA70 88 04 00 B6 */ lbz r0, 0xb6(r4)
/* 802C0E14 002BCA74 2C 00 00 00 */ cmpwi r0, 0
/* 802C0E18 002BCA78 41 82 00 1C */ beq lbl_802C0E34
/* 802C0E1C 002BCA7C 38 04 00 98 */ addi r0, r4, 0x98
/* 802C0E20 002BCA80 7C 00 18 40 */ cmplw r0, r3
/* 802C0E24 002BCA84 40 82 00 10 */ bne lbl_802C0E34
/* 802C0E28 002BCA88 38 00 00 00 */ li r0, 0
/* 802C0E2C 002BCA8C 98 04 00 B6 */ stb r0, 0xb6(r4)
/* 802C0E30 002BCA90 48 00 00 58 */ b lbl_802C0E88
lbl_802C0E34:
/* 802C0E34 002BCA94 88 04 00 D6 */ lbz r0, 0xd6(r4)
/* 802C0E38 002BCA98 3B C0 00 01 */ li r30, 1
/* 802C0E3C 002BCA9C 2C 00 00 00 */ cmpwi r0, 0
/* 802C0E40 002BCAA0 41 82 00 1C */ beq lbl_802C0E5C
/* 802C0E44 002BCAA4 38 04 00 B8 */ addi r0, r4, 0xb8
/* 802C0E48 002BCAA8 7C 00 18 40 */ cmplw r0, r3
/* 802C0E4C 002BCAAC 40 82 00 10 */ bne lbl_802C0E5C
/* 802C0E50 002BCAB0 38 00 00 00 */ li r0, 0
/* 802C0E54 002BCAB4 98 04 00 D6 */ stb r0, 0xd6(r4)
/* 802C0E58 002BCAB8 48 00 00 30 */ b lbl_802C0E88
lbl_802C0E5C:
/* 802C0E5C 002BCABC 88 04 00 F6 */ lbz r0, 0xf6(r4)
/* 802C0E60 002BCAC0 3B C0 00 02 */ li r30, 2
/* 802C0E64 002BCAC4 2C 00 00 00 */ cmpwi r0, 0
/* 802C0E68 002BCAC8 41 82 00 1C */ beq lbl_802C0E84
/* 802C0E6C 002BCACC 38 04 00 D8 */ addi r0, r4, 0xd8
/* 802C0E70 002BCAD0 7C 00 18 40 */ cmplw r0, r3
/* 802C0E74 002BCAD4 40 82 00 10 */ bne lbl_802C0E84
/* 802C0E78 002BCAD8 38 00 00 00 */ li r0, 0
/* 802C0E7C 002BCADC 98 04 00 F6 */ stb r0, 0xf6(r4)
/* 802C0E80 002BCAE0 48 00 00 08 */ b lbl_802C0E88
lbl_802C0E84:
/* 802C0E84 002BCAE4 3B C0 00 03 */ li r30, 3
lbl_802C0E88:
/* 802C0E88 002BCAE8 28 1E 00 03 */ cmplwi r30, 3
/* 802C0E8C 002BCAEC 41 82 00 44 */ beq lbl_802C0ED0
/* 802C0E90 002BCAF0 38 60 00 0E */ li r3, 0xe
/* 802C0E94 002BCAF4 4B FF 8C 19 */ bl GKI_getbuf
/* 802C0E98 002BCAF8 2C 03 00 00 */ cmpwi r3, 0
/* 802C0E9C 002BCAFC 7C 7F 1B 78 */ mr r31, r3
/* 802C0EA0 002BCB00 41 82 00 30 */ beq lbl_802C0ED0
/* 802C0EA4 002BCB04 3C 80 80 57 */ lis r4, lbl_80568814@ha
/* 802C0EA8 002BCB08 38 A0 01 0A */ li r5, 0x10a
/* 802C0EAC 002BCB0C 38 84 88 14 */ addi r4, r4, lbl_80568814@l
/* 802C0EB0 002BCB10 57 C0 2C F4 */ rlwinm r0, r30, 5, 0x13, 0x1a
/* 802C0EB4 002BCB14 B0 A3 00 00 */ sth r5, 0(r3)
/* 802C0EB8 002BCB18 7C 84 02 14 */ add r4, r4, r0
/* 802C0EBC 002BCB1C 38 84 00 B0 */ addi r4, r4, 0xb0
/* 802C0EC0 002BCB20 38 63 00 08 */ addi r3, r3, 8
/* 802C0EC4 002BCB24 4B FF C6 9D */ bl bdcpy
/* 802C0EC8 002BCB28 7F E3 FB 78 */ mr r3, r31
/* 802C0ECC 002BCB2C 4B FF CB 41 */ bl bta_sys_sendmsg
lbl_802C0ED0:
/* 802C0ED0 002BCB30 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802C0ED4 002BCB34 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802C0ED8 002BCB38 83 C1 00 08 */ lwz r30, 8(r1)
/* 802C0EDC 002BCB3C 7C 08 03 A6 */ mtlr r0
/* 802C0EE0 002BCB40 38 21 00 10 */ addi r1, r1, 0x10
/* 802C0EE4 002BCB44 4E 80 00 20 */ blr
bta_dm_pm_btm_status:
/* 802C0EE8 002BCB48 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802C0EEC 002BCB4C 7C 08 02 A6 */ mflr r0
/* 802C0EF0 002BCB50 90 01 00 24 */ stw r0, 0x24(r1)
/* 802C0EF4 002BCB54 39 61 00 20 */ addi r11, r1, 0x20
/* 802C0EF8 002BCB58 4B F0 62 31 */ bl _savegpr_27
/* 802C0EFC 002BCB5C 3F C0 80 57 */ lis r30, lbl_80568814@ha
/* 802C0F00 002BCB60 7C 7F 1B 78 */ mr r31, r3
/* 802C0F04 002BCB64 3B DE 88 14 */ addi r30, r30, lbl_80568814@l
/* 802C0F08 002BCB68 3B 60 00 00 */ li r27, 0
lbl_802C0F0C:
/* 802C0F0C 002BCB6C 57 7C 2C F4 */ rlwinm r28, r27, 5, 0x13, 0x1a
/* 802C0F10 002BCB70 7F BE E2 14 */ add r29, r30, r28
/* 802C0F14 002BCB74 88 1D 00 B6 */ lbz r0, 0xb6(r29)
/* 802C0F18 002BCB78 2C 00 00 00 */ cmpwi r0, 0
/* 802C0F1C 002BCB7C 41 82 00 30 */ beq lbl_802C0F4C
/* 802C0F20 002BCB80 38 7D 00 B0 */ addi r3, r29, 0xb0
/* 802C0F24 002BCB84 38 9F 00 08 */ addi r4, r31, 8
/* 802C0F28 002BCB88 4B FF C6 6D */ bl bdcmp
/* 802C0F2C 002BCB8C 2C 03 00 00 */ cmpwi r3, 0
/* 802C0F30 002BCB90 40 82 00 1C */ bne lbl_802C0F4C
/* 802C0F34 002BCB94 7F A3 EB 78 */ mr r3, r29
/* 802C0F38 002BCB98 38 63 00 98 */ addi r3, r3, 0x98
/* 802C0F3C 002BCB9C 4B FF CB 0D */ bl bta_sys_stop_timer
/* 802C0F40 002BCBA0 38 00 00 00 */ li r0, 0
/* 802C0F44 002BCBA4 98 1D 00 B6 */ stb r0, 0xb6(r29)
/* 802C0F48 002BCBA8 48 00 00 10 */ b lbl_802C0F58
lbl_802C0F4C:
/* 802C0F4C 002BCBAC 3B 7B 00 01 */ addi r27, r27, 1
/* 802C0F50 002BCBB0 28 1B 00 03 */ cmplwi r27, 3
/* 802C0F54 002BCBB4 41 80 FF B8 */ blt lbl_802C0F0C
lbl_802C0F58:
/* 802C0F58 002BCBB8 88 1F 00 0E */ lbz r0, 0xe(r31)
/* 802C0F5C 002BCBBC 2C 00 00 00 */ cmpwi r0, 0
/* 802C0F60 002BCBC0 41 82 00 08 */ beq lbl_802C0F68
/* 802C0F64 002BCBC4 48 00 00 8C */ b lbl_802C0FF0
lbl_802C0F68:
/* 802C0F68 002BCBC8 88 1F 00 12 */ lbz r0, 0x12(r31)
/* 802C0F6C 002BCBCC 2C 00 00 00 */ cmpwi r0, 0
/* 802C0F70 002BCBD0 41 82 00 74 */ beq lbl_802C0FE4
/* 802C0F74 002BCBD4 3C 60 80 57 */ lis r3, lbl_80568814@ha
/* 802C0F78 002BCBD8 3B A0 00 00 */ li r29, 0
/* 802C0F7C 002BCBDC 3B C3 88 14 */ addi r30, r3, lbl_80568814@l
/* 802C0F80 002BCBE0 48 00 00 50 */ b lbl_802C0FD0
lbl_802C0F84:
/* 802C0F84 002BCBE4 57 A0 06 3E */ clrlwi r0, r29, 0x18
/* 802C0F88 002BCBE8 38 9F 00 08 */ addi r4, r31, 8
/* 802C0F8C 002BCBEC 1F 80 00 0B */ mulli r28, r0, 0xb
/* 802C0F90 002BCBF0 7C 7E E2 14 */ add r3, r30, r28
/* 802C0F94 002BCBF4 4B FF C6 01 */ bl bdcmp
/* 802C0F98 002BCBF8 2C 03 00 00 */ cmpwi r3, 0
/* 802C0F9C 002BCBFC 40 82 00 30 */ bne lbl_802C0FCC
/* 802C0FA0 002BCC00 7C BE E2 14 */ add r5, r30, r28
/* 802C0FA4 002BCC04 88 05 00 09 */ lbz r0, 9(r5)
/* 802C0FA8 002BCC08 54 06 07 BF */ clrlwi. r6, r0, 0x1e
/* 802C0FAC 002BCC0C 41 82 00 44 */ beq lbl_802C0FF0
/* 802C0FB0 002BCC10 88 05 00 0A */ lbz r0, 0xa(r5)
/* 802C0FB4 002BCC14 38 7F 00 08 */ addi r3, r31, 8
/* 802C0FB8 002BCC18 38 80 00 00 */ li r4, 0
/* 802C0FBC 002BCC1C 7C 00 33 78 */ or r0, r0, r6
/* 802C0FC0 002BCC20 98 05 00 0A */ stb r0, 0xa(r5)
/* 802C0FC4 002BCC24 4B FF FA 35 */ bl bta_dm_pm_set_mode
/* 802C0FC8 002BCC28 48 00 00 28 */ b lbl_802C0FF0
lbl_802C0FCC:
/* 802C0FCC 002BCC2C 3B BD 00 01 */ addi r29, r29, 1
lbl_802C0FD0:
/* 802C0FD0 002BCC30 88 1E 00 4D */ lbz r0, 0x4d(r30)
/* 802C0FD4 002BCC34 57 A3 06 3E */ clrlwi r3, r29, 0x18
/* 802C0FD8 002BCC38 7C 03 00 40 */ cmplw r3, r0
/* 802C0FDC 002BCC3C 41 80 FF A8 */ blt lbl_802C0F84
/* 802C0FE0 002BCC40 48 00 00 10 */ b lbl_802C0FF0
lbl_802C0FE4:
/* 802C0FE4 002BCC44 38 7F 00 08 */ addi r3, r31, 8
/* 802C0FE8 002BCC48 38 80 00 00 */ li r4, 0
/* 802C0FEC 002BCC4C 4B FF FA 0D */ bl bta_dm_pm_set_mode
lbl_802C0FF0:
/* 802C0FF0 002BCC50 39 61 00 20 */ addi r11, r1, 0x20
/* 802C0FF4 002BCC54 4B F0 61 81 */ bl _restgpr_27
/* 802C0FF8 002BCC58 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802C0FFC 002BCC5C 7C 08 03 A6 */ mtlr r0
/* 802C1000 002BCC60 38 21 00 20 */ addi r1, r1, 0x20
/* 802C1004 002BCC64 4E 80 00 20 */ blr
bta_dm_pm_timer:
/* 802C1008 002BCC68 38 80 00 01 */ li r4, 1
/* 802C100C 002BCC6C 38 63 00 08 */ addi r3, r3, 8
/* 802C1010 002BCC70 4B FF F9 E8 */ b bta_dm_pm_set_mode
|