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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global __cvt_fp2unsigned
__cvt_fp2unsigned:
/* 801C7000 001C2C60 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801C7004 001C2C64 3C 80 80 40 */ lis r4, lbl_803FC6C0@ha
/* 801C7008 001C2C68 38 84 C6 C0 */ addi r4, r4, lbl_803FC6C0@l
/* 801C700C 001C2C6C 38 60 00 00 */ li r3, 0
/* 801C7010 001C2C70 C8 04 00 00 */ lfd f0, 0(r4)
/* 801C7014 001C2C74 C8 64 00 08 */ lfd f3, 8(r4)
/* 801C7018 001C2C78 C8 84 00 10 */ lfd f4, 0x10(r4)
/* 801C701C 001C2C7C FC 01 00 00 */ fcmpu cr0, f1, f0
/* 801C7020 001C2C80 FF 01 18 00 */ fcmpu cr6, f1, f3
/* 801C7024 001C2C84 41 80 00 30 */ blt lbl_801C7054
/* 801C7028 001C2C88 38 63 FF FF */ addi r3, r3, -1
/* 801C702C 001C2C8C 40 98 00 28 */ bge cr6, lbl_801C7054
/* 801C7030 001C2C90 FF 81 20 00 */ fcmpu cr7, f1, f4
/* 801C7034 001C2C94 FC 40 08 90 */ fmr f2, f1
/* 801C7038 001C2C98 41 9C 00 08 */ blt cr7, lbl_801C7040
/* 801C703C 001C2C9C FC 41 20 28 */ fsub f2, f1, f4
lbl_801C7040:
/* 801C7040 001C2CA0 FC 40 10 1E */ fctiwz f2, f2
/* 801C7044 001C2CA4 D8 41 00 08 */ stfd f2, 8(r1)
/* 801C7048 001C2CA8 80 61 00 0C */ lwz r3, 0xc(r1)
/* 801C704C 001C2CAC 41 9C 00 08 */ blt cr7, lbl_801C7054
/* 801C7050 001C2CB0 3C 63 80 00 */ addis r3, r3, 0x8000
lbl_801C7054:
/* 801C7054 001C2CB4 38 21 00 10 */ addi r1, r1, 0x10
/* 801C7058 001C2CB8 4E 80 00 20 */ blr
.global __save_fpr
__save_fpr:
/* 801C705C 001C2CBC D9 CB FF 70 */ stfd f14, -0x90(r11)
/* 801C7060 001C2CC0 D9 EB FF 78 */ stfd f15, -0x88(r11)
/* 801C7064 001C2CC4 DA 0B FF 80 */ stfd f16, -0x80(r11)
/* 801C7068 001C2CC8 DA 2B FF 88 */ stfd f17, -0x78(r11)
/* 801C706C 001C2CCC DA 4B FF 90 */ stfd f18, -0x70(r11)
/* 801C7070 001C2CD0 DA 6B FF 98 */ stfd f19, -0x68(r11)
/* 801C7074 001C2CD4 DA 8B FF A0 */ stfd f20, -0x60(r11)
/* 801C7078 001C2CD8 DA AB FF A8 */ stfd f21, -0x58(r11)
/* 801C707C 001C2CDC DA CB FF B0 */ stfd f22, -0x50(r11)
.global _savefpr_23
_savefpr_23:
/* 801C7080 001C2CE0 DA EB FF B8 */ stfd f23, -0x48(r11)
/* 801C7084 001C2CE4 DB 0B FF C0 */ stfd f24, -0x40(r11)
/* 801C7088 001C2CE8 DB 2B FF C8 */ stfd f25, -0x38(r11)
.global _savefpr_26
_savefpr_26:
/* 801C708C 001C2CEC DB 4B FF D0 */ stfd f26, -0x30(r11)
.global _savefpr_27
_savefpr_27:
/* 801C7090 001C2CF0 DB 6B FF D8 */ stfd f27, -0x28(r11)
/* 801C7094 001C2CF4 DB 8B FF E0 */ stfd f28, -0x20(r11)
/* 801C7098 001C2CF8 DB AB FF E8 */ stfd f29, -0x18(r11)
/* 801C709C 001C2CFC DB CB FF F0 */ stfd f30, -0x10(r11)
/* 801C70A0 001C2D00 DB EB FF F8 */ stfd f31, -8(r11)
/* 801C70A4 001C2D04 4E 80 00 20 */ blr
.global __restore_fpr
__restore_fpr:
/* 801C70A8 001C2D08 C9 CB FF 70 */ lfd f14, -0x90(r11)
/* 801C70AC 001C2D0C C9 EB FF 78 */ lfd f15, -0x88(r11)
/* 801C70B0 001C2D10 CA 0B FF 80 */ lfd f16, -0x80(r11)
/* 801C70B4 001C2D14 CA 2B FF 88 */ lfd f17, -0x78(r11)
/* 801C70B8 001C2D18 CA 4B FF 90 */ lfd f18, -0x70(r11)
/* 801C70BC 001C2D1C CA 6B FF 98 */ lfd f19, -0x68(r11)
/* 801C70C0 001C2D20 CA 8B FF A0 */ lfd f20, -0x60(r11)
/* 801C70C4 001C2D24 CA AB FF A8 */ lfd f21, -0x58(r11)
/* 801C70C8 001C2D28 CA CB FF B0 */ lfd f22, -0x50(r11)
.global _restfpr_23
_restfpr_23:
/* 801C70CC 001C2D2C CA EB FF B8 */ lfd f23, -0x48(r11)
/* 801C70D0 001C2D30 CB 0B FF C0 */ lfd f24, -0x40(r11)
/* 801C70D4 001C2D34 CB 2B FF C8 */ lfd f25, -0x38(r11)
.global _restfpr_26
_restfpr_26:
/* 801C70D8 001C2D38 CB 4B FF D0 */ lfd f26, -0x30(r11)
.global _restfpr_27
_restfpr_27:
/* 801C70DC 001C2D3C CB 6B FF D8 */ lfd f27, -0x28(r11)
/* 801C70E0 001C2D40 CB 8B FF E0 */ lfd f28, -0x20(r11)
/* 801C70E4 001C2D44 CB AB FF E8 */ lfd f29, -0x18(r11)
/* 801C70E8 001C2D48 CB CB FF F0 */ lfd f30, -0x10(r11)
/* 801C70EC 001C2D4C CB EB FF F8 */ lfd f31, -8(r11)
/* 801C70F0 001C2D50 4E 80 00 20 */ blr
.global __save_gpr
__save_gpr:
/* 801C70F4 001C2D54 91 CB FF B8 */ stw r14, -0x48(r11)
.global _savegpr_15
_savegpr_15:
/* 801C70F8 001C2D58 91 EB FF BC */ stw r15, -0x44(r11)
.global _savegpr_16
_savegpr_16:
/* 801C70FC 001C2D5C 92 0B FF C0 */ stw r16, -0x40(r11)
.global _savegpr_17
_savegpr_17:
/* 801C7100 001C2D60 92 2B FF C4 */ stw r17, -0x3c(r11)
.global _savegpr_18
_savegpr_18:
/* 801C7104 001C2D64 92 4B FF C8 */ stw r18, -0x38(r11)
.global _savegpr_19
_savegpr_19:
/* 801C7108 001C2D68 92 6B FF CC */ stw r19, -0x34(r11)
.global _savegpr_20
_savegpr_20:
/* 801C710C 001C2D6C 92 8B FF D0 */ stw r20, -0x30(r11)
.global _savegpr_21
_savegpr_21:
/* 801C7110 001C2D70 92 AB FF D4 */ stw r21, -0x2c(r11)
.global _savegpr_22
_savegpr_22:
/* 801C7114 001C2D74 92 CB FF D8 */ stw r22, -0x28(r11)
.global _savegpr_23
_savegpr_23:
/* 801C7118 001C2D78 92 EB FF DC */ stw r23, -0x24(r11)
.global _savegpr_24
_savegpr_24:
/* 801C711C 001C2D7C 93 0B FF E0 */ stw r24, -0x20(r11)
.global _savegpr_25
_savegpr_25:
/* 801C7120 001C2D80 93 2B FF E4 */ stw r25, -0x1c(r11)
.global _savegpr_26
_savegpr_26:
/* 801C7124 001C2D84 93 4B FF E8 */ stw r26, -0x18(r11)
.global _savegpr_27
_savegpr_27:
/* 801C7128 001C2D88 93 6B FF EC */ stw r27, -0x14(r11)
.global _savegpr_28
_savegpr_28:
/* 801C712C 001C2D8C 93 8B FF F0 */ stw r28, -0x10(r11)
.global _savegpr_29
_savegpr_29:
/* 801C7130 001C2D90 93 AB FF F4 */ stw r29, -0xc(r11)
/* 801C7134 001C2D94 93 CB FF F8 */ stw r30, -8(r11)
/* 801C7138 001C2D98 93 EB FF FC */ stw r31, -4(r11)
/* 801C713C 001C2D9C 4E 80 00 20 */ blr
.global __restore_gpr
__restore_gpr:
/* 801C7140 001C2DA0 81 CB FF B8 */ lwz r14, -0x48(r11)
.global _restgpr_15
_restgpr_15:
/* 801C7144 001C2DA4 81 EB FF BC */ lwz r15, -0x44(r11)
.global _restgpr_16
_restgpr_16:
/* 801C7148 001C2DA8 82 0B FF C0 */ lwz r16, -0x40(r11)
.global _restgpr_17
_restgpr_17:
/* 801C714C 001C2DAC 82 2B FF C4 */ lwz r17, -0x3c(r11)
.global _restgpr_18
_restgpr_18:
/* 801C7150 001C2DB0 82 4B FF C8 */ lwz r18, -0x38(r11)
.global _restgpr_19
_restgpr_19:
/* 801C7154 001C2DB4 82 6B FF CC */ lwz r19, -0x34(r11)
.global _restgpr_20
_restgpr_20:
/* 801C7158 001C2DB8 82 8B FF D0 */ lwz r20, -0x30(r11)
.global _restgpr_21
_restgpr_21:
/* 801C715C 001C2DBC 82 AB FF D4 */ lwz r21, -0x2c(r11)
.global _restgpr_22
_restgpr_22:
/* 801C7160 001C2DC0 82 CB FF D8 */ lwz r22, -0x28(r11)
.global _restgpr_23
_restgpr_23:
/* 801C7164 001C2DC4 82 EB FF DC */ lwz r23, -0x24(r11)
.global _restgpr_24
_restgpr_24:
/* 801C7168 001C2DC8 83 0B FF E0 */ lwz r24, -0x20(r11)
.global _restgpr_25
_restgpr_25:
/* 801C716C 001C2DCC 83 2B FF E4 */ lwz r25, -0x1c(r11)
.global _restgpr_26
_restgpr_26:
/* 801C7170 001C2DD0 83 4B FF E8 */ lwz r26, -0x18(r11)
.global _restgpr_27
_restgpr_27:
/* 801C7174 001C2DD4 83 6B FF EC */ lwz r27, -0x14(r11)
.global _restgpr_28
_restgpr_28:
/* 801C7178 001C2DD8 83 8B FF F0 */ lwz r28, -0x10(r11)
.global _restgpr_29
_restgpr_29:
/* 801C717C 001C2DDC 83 AB FF F4 */ lwz r29, -0xc(r11)
/* 801C7180 001C2DE0 83 CB FF F8 */ lwz r30, -8(r11)
/* 801C7184 001C2DE4 83 EB FF FC */ lwz r31, -4(r11)
/* 801C7188 001C2DE8 4E 80 00 20 */ blr
.global __div2u
__div2u:
/* 801C718C 001C2DEC 2C 03 00 00 */ cmpwi r3, 0
/* 801C7190 001C2DF0 7C 60 00 34 */ cntlzw r0, r3
/* 801C7194 001C2DF4 7C 89 00 34 */ cntlzw r9, r4
/* 801C7198 001C2DF8 40 82 00 08 */ bne lbl_801C71A0
/* 801C719C 001C2DFC 38 09 00 20 */ addi r0, r9, 0x20
lbl_801C71A0:
/* 801C71A0 001C2E00 2C 05 00 00 */ cmpwi r5, 0
/* 801C71A4 001C2E04 7C A9 00 34 */ cntlzw r9, r5
/* 801C71A8 001C2E08 7C CA 00 34 */ cntlzw r10, r6
/* 801C71AC 001C2E0C 40 82 00 08 */ bne lbl_801C71B4
/* 801C71B0 001C2E10 39 2A 00 20 */ addi r9, r10, 0x20
lbl_801C71B4:
/* 801C71B4 001C2E14 7C 00 48 00 */ cmpw r0, r9
/* 801C71B8 001C2E18 21 40 00 40 */ subfic r10, r0, 0x40
/* 801C71BC 001C2E1C 41 81 00 B0 */ bgt lbl_801C726C
/* 801C71C0 001C2E20 39 29 00 01 */ addi r9, r9, 1
/* 801C71C4 001C2E24 21 29 00 40 */ subfic r9, r9, 0x40
/* 801C71C8 001C2E28 7C 00 4A 14 */ add r0, r0, r9
/* 801C71CC 001C2E2C 7D 29 50 50 */ subf r9, r9, r10
/* 801C71D0 001C2E30 7D 29 03 A6 */ mtctr r9
/* 801C71D4 001C2E34 2C 09 00 20 */ cmpwi r9, 0x20
/* 801C71D8 001C2E38 38 E9 FF E0 */ addi r7, r9, -32
/* 801C71DC 001C2E3C 41 80 00 10 */ blt lbl_801C71EC
/* 801C71E0 001C2E40 7C 68 3C 30 */ srw r8, r3, r7
/* 801C71E4 001C2E44 38 E0 00 00 */ li r7, 0
/* 801C71E8 001C2E48 48 00 00 18 */ b lbl_801C7200
lbl_801C71EC:
/* 801C71EC 001C2E4C 7C 88 4C 30 */ srw r8, r4, r9
/* 801C71F0 001C2E50 20 E9 00 20 */ subfic r7, r9, 0x20
/* 801C71F4 001C2E54 7C 67 38 30 */ slw r7, r3, r7
/* 801C71F8 001C2E58 7D 08 3B 78 */ or r8, r8, r7
/* 801C71FC 001C2E5C 7C 67 4C 30 */ srw r7, r3, r9
lbl_801C7200:
/* 801C7200 001C2E60 2C 00 00 20 */ cmpwi r0, 0x20
/* 801C7204 001C2E64 31 20 FF E0 */ addic r9, r0, -32
/* 801C7208 001C2E68 41 80 00 10 */ blt lbl_801C7218
/* 801C720C 001C2E6C 7C 83 48 30 */ slw r3, r4, r9
/* 801C7210 001C2E70 38 80 00 00 */ li r4, 0
/* 801C7214 001C2E74 48 00 00 18 */ b lbl_801C722C
lbl_801C7218:
/* 801C7218 001C2E78 7C 63 00 30 */ slw r3, r3, r0
/* 801C721C 001C2E7C 21 20 00 20 */ subfic r9, r0, 0x20
/* 801C7220 001C2E80 7C 89 4C 30 */ srw r9, r4, r9
/* 801C7224 001C2E84 7C 63 4B 78 */ or r3, r3, r9
/* 801C7228 001C2E88 7C 84 00 30 */ slw r4, r4, r0
lbl_801C722C:
/* 801C722C 001C2E8C 39 40 FF FF */ li r10, -1
/* 801C7230 001C2E90 30 E7 00 00 */ addic r7, r7, 0
lbl_801C7234:
/* 801C7234 001C2E94 7C 84 21 14 */ adde r4, r4, r4
/* 801C7238 001C2E98 7C 63 19 14 */ adde r3, r3, r3
/* 801C723C 001C2E9C 7D 08 41 14 */ adde r8, r8, r8
/* 801C7240 001C2EA0 7C E7 39 14 */ adde r7, r7, r7
/* 801C7244 001C2EA4 7C 06 40 10 */ subfc r0, r6, r8
/* 801C7248 001C2EA8 7D 25 39 11 */ subfe. r9, r5, r7
/* 801C724C 001C2EAC 41 80 00 10 */ blt lbl_801C725C
/* 801C7250 001C2EB0 7C 08 03 78 */ mr r8, r0
/* 801C7254 001C2EB4 7D 27 4B 78 */ mr r7, r9
/* 801C7258 001C2EB8 30 0A 00 01 */ addic r0, r10, 1
lbl_801C725C:
/* 801C725C 001C2EBC 42 00 FF D8 */ bdnz lbl_801C7234
/* 801C7260 001C2EC0 7C 84 21 14 */ adde r4, r4, r4
/* 801C7264 001C2EC4 7C 63 19 14 */ adde r3, r3, r3
/* 801C7268 001C2EC8 4E 80 00 20 */ blr
lbl_801C726C:
/* 801C726C 001C2ECC 38 80 00 00 */ li r4, 0
/* 801C7270 001C2ED0 38 60 00 00 */ li r3, 0
/* 801C7274 001C2ED4 4E 80 00 20 */ blr
.global __div2i
__div2i:
/* 801C7278 001C2ED8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801C727C 001C2EDC 54 69 00 01 */ rlwinm. r9, r3, 0, 0, 0
/* 801C7280 001C2EE0 41 82 00 0C */ beq lbl_801C728C
/* 801C7284 001C2EE4 20 84 00 00 */ subfic r4, r4, 0
/* 801C7288 001C2EE8 7C 63 01 90 */ subfze r3, r3
lbl_801C728C:
/* 801C728C 001C2EEC 91 21 00 08 */ stw r9, 8(r1)
/* 801C7290 001C2EF0 54 AA 00 01 */ rlwinm. r10, r5, 0, 0, 0
/* 801C7294 001C2EF4 41 82 00 0C */ beq lbl_801C72A0
/* 801C7298 001C2EF8 20 C6 00 00 */ subfic r6, r6, 0
/* 801C729C 001C2EFC 7C A5 01 90 */ subfze r5, r5
lbl_801C72A0:
/* 801C72A0 001C2F00 91 41 00 0C */ stw r10, 0xc(r1)
/* 801C72A4 001C2F04 2C 03 00 00 */ cmpwi r3, 0
/* 801C72A8 001C2F08 7C 60 00 34 */ cntlzw r0, r3
/* 801C72AC 001C2F0C 7C 89 00 34 */ cntlzw r9, r4
/* 801C72B0 001C2F10 40 82 00 08 */ bne lbl_801C72B8
/* 801C72B4 001C2F14 38 09 00 20 */ addi r0, r9, 0x20
lbl_801C72B8:
/* 801C72B8 001C2F18 2C 05 00 00 */ cmpwi r5, 0
/* 801C72BC 001C2F1C 7C A9 00 34 */ cntlzw r9, r5
/* 801C72C0 001C2F20 7C CA 00 34 */ cntlzw r10, r6
/* 801C72C4 001C2F24 40 82 00 08 */ bne lbl_801C72CC
/* 801C72C8 001C2F28 39 2A 00 20 */ addi r9, r10, 0x20
lbl_801C72CC:
/* 801C72CC 001C2F2C 7C 00 48 00 */ cmpw r0, r9
/* 801C72D0 001C2F30 21 40 00 40 */ subfic r10, r0, 0x40
/* 801C72D4 001C2F34 41 81 00 CC */ bgt lbl_801C73A0
/* 801C72D8 001C2F38 39 29 00 01 */ addi r9, r9, 1
/* 801C72DC 001C2F3C 21 29 00 40 */ subfic r9, r9, 0x40
/* 801C72E0 001C2F40 7C 00 4A 14 */ add r0, r0, r9
/* 801C72E4 001C2F44 7D 29 50 50 */ subf r9, r9, r10
/* 801C72E8 001C2F48 7D 29 03 A6 */ mtctr r9
/* 801C72EC 001C2F4C 2C 09 00 20 */ cmpwi r9, 0x20
/* 801C72F0 001C2F50 38 E9 FF E0 */ addi r7, r9, -32
/* 801C72F4 001C2F54 41 80 00 10 */ blt lbl_801C7304
/* 801C72F8 001C2F58 7C 68 3C 30 */ srw r8, r3, r7
/* 801C72FC 001C2F5C 38 E0 00 00 */ li r7, 0
/* 801C7300 001C2F60 48 00 00 18 */ b lbl_801C7318
lbl_801C7304:
/* 801C7304 001C2F64 7C 88 4C 30 */ srw r8, r4, r9
/* 801C7308 001C2F68 20 E9 00 20 */ subfic r7, r9, 0x20
/* 801C730C 001C2F6C 7C 67 38 30 */ slw r7, r3, r7
/* 801C7310 001C2F70 7D 08 3B 78 */ or r8, r8, r7
/* 801C7314 001C2F74 7C 67 4C 30 */ srw r7, r3, r9
lbl_801C7318:
/* 801C7318 001C2F78 2C 00 00 20 */ cmpwi r0, 0x20
/* 801C731C 001C2F7C 31 20 FF E0 */ addic r9, r0, -32
/* 801C7320 001C2F80 41 80 00 10 */ blt lbl_801C7330
/* 801C7324 001C2F84 7C 83 48 30 */ slw r3, r4, r9
/* 801C7328 001C2F88 38 80 00 00 */ li r4, 0
/* 801C732C 001C2F8C 48 00 00 18 */ b lbl_801C7344
lbl_801C7330:
/* 801C7330 001C2F90 7C 63 00 30 */ slw r3, r3, r0
/* 801C7334 001C2F94 21 20 00 20 */ subfic r9, r0, 0x20
/* 801C7338 001C2F98 7C 89 4C 30 */ srw r9, r4, r9
/* 801C733C 001C2F9C 7C 63 4B 78 */ or r3, r3, r9
/* 801C7340 001C2FA0 7C 84 00 30 */ slw r4, r4, r0
lbl_801C7344:
/* 801C7344 001C2FA4 39 40 FF FF */ li r10, -1
/* 801C7348 001C2FA8 30 E7 00 00 */ addic r7, r7, 0
lbl_801C734C:
/* 801C734C 001C2FAC 7C 84 21 14 */ adde r4, r4, r4
/* 801C7350 001C2FB0 7C 63 19 14 */ adde r3, r3, r3
/* 801C7354 001C2FB4 7D 08 41 14 */ adde r8, r8, r8
/* 801C7358 001C2FB8 7C E7 39 14 */ adde r7, r7, r7
/* 801C735C 001C2FBC 7C 06 40 10 */ subfc r0, r6, r8
/* 801C7360 001C2FC0 7D 25 39 11 */ subfe. r9, r5, r7
/* 801C7364 001C2FC4 41 80 00 10 */ blt lbl_801C7374
/* 801C7368 001C2FC8 7C 08 03 78 */ mr r8, r0
/* 801C736C 001C2FCC 7D 27 4B 78 */ mr r7, r9
/* 801C7370 001C2FD0 30 0A 00 01 */ addic r0, r10, 1
lbl_801C7374:
/* 801C7374 001C2FD4 42 00 FF D8 */ bdnz lbl_801C734C
/* 801C7378 001C2FD8 7C 84 21 14 */ adde r4, r4, r4
/* 801C737C 001C2FDC 7C 63 19 14 */ adde r3, r3, r3
/* 801C7380 001C2FE0 81 21 00 08 */ lwz r9, 8(r1)
/* 801C7384 001C2FE4 81 41 00 0C */ lwz r10, 0xc(r1)
/* 801C7388 001C2FE8 7D 27 52 79 */ xor. r7, r9, r10
/* 801C738C 001C2FEC 41 82 00 10 */ beq lbl_801C739C
/* 801C7390 001C2FF0 2C 09 00 00 */ cmpwi r9, 0
/* 801C7394 001C2FF4 20 84 00 00 */ subfic r4, r4, 0
/* 801C7398 001C2FF8 7C 63 01 90 */ subfze r3, r3
lbl_801C739C:
/* 801C739C 001C2FFC 48 00 00 0C */ b lbl_801C73A8
lbl_801C73A0:
/* 801C73A0 001C3000 38 80 00 00 */ li r4, 0
/* 801C73A4 001C3004 38 60 00 00 */ li r3, 0
lbl_801C73A8:
/* 801C73A8 001C3008 38 21 00 10 */ addi r1, r1, 0x10
/* 801C73AC 001C300C 4E 80 00 20 */ blr
.global __mod2u
__mod2u:
/* 801C73B0 001C3010 2C 03 00 00 */ cmpwi r3, 0
/* 801C73B4 001C3014 7C 60 00 34 */ cntlzw r0, r3
/* 801C73B8 001C3018 7C 89 00 34 */ cntlzw r9, r4
/* 801C73BC 001C301C 40 82 00 08 */ bne lbl_801C73C4
/* 801C73C0 001C3020 38 09 00 20 */ addi r0, r9, 0x20
lbl_801C73C4:
/* 801C73C4 001C3024 2C 05 00 00 */ cmpwi r5, 0
/* 801C73C8 001C3028 7C A9 00 34 */ cntlzw r9, r5
/* 801C73CC 001C302C 7C CA 00 34 */ cntlzw r10, r6
/* 801C73D0 001C3030 40 82 00 08 */ bne lbl_801C73D8
/* 801C73D4 001C3034 39 2A 00 20 */ addi r9, r10, 0x20
lbl_801C73D8:
/* 801C73D8 001C3038 7C 00 48 00 */ cmpw r0, r9
/* 801C73DC 001C303C 21 40 00 40 */ subfic r10, r0, 0x40
/* 801C73E0 001C3040 41 81 00 B0 */ bgt lbl_801C7490
/* 801C73E4 001C3044 39 29 00 01 */ addi r9, r9, 1
/* 801C73E8 001C3048 21 29 00 40 */ subfic r9, r9, 0x40
/* 801C73EC 001C304C 7C 00 4A 14 */ add r0, r0, r9
/* 801C73F0 001C3050 7D 29 50 50 */ subf r9, r9, r10
/* 801C73F4 001C3054 7D 29 03 A6 */ mtctr r9
/* 801C73F8 001C3058 2C 09 00 20 */ cmpwi r9, 0x20
/* 801C73FC 001C305C 38 E9 FF E0 */ addi r7, r9, -32
/* 801C7400 001C3060 41 80 00 10 */ blt lbl_801C7410
/* 801C7404 001C3064 7C 68 3C 30 */ srw r8, r3, r7
/* 801C7408 001C3068 38 E0 00 00 */ li r7, 0
/* 801C740C 001C306C 48 00 00 18 */ b lbl_801C7424
lbl_801C7410:
/* 801C7410 001C3070 7C 88 4C 30 */ srw r8, r4, r9
/* 801C7414 001C3074 20 E9 00 20 */ subfic r7, r9, 0x20
/* 801C7418 001C3078 7C 67 38 30 */ slw r7, r3, r7
/* 801C741C 001C307C 7D 08 3B 78 */ or r8, r8, r7
/* 801C7420 001C3080 7C 67 4C 30 */ srw r7, r3, r9
lbl_801C7424:
/* 801C7424 001C3084 2C 00 00 20 */ cmpwi r0, 0x20
/* 801C7428 001C3088 31 20 FF E0 */ addic r9, r0, -32
/* 801C742C 001C308C 41 80 00 10 */ blt lbl_801C743C
/* 801C7430 001C3090 7C 83 48 30 */ slw r3, r4, r9
/* 801C7434 001C3094 38 80 00 00 */ li r4, 0
/* 801C7438 001C3098 48 00 00 18 */ b lbl_801C7450
lbl_801C743C:
/* 801C743C 001C309C 7C 63 00 30 */ slw r3, r3, r0
/* 801C7440 001C30A0 21 20 00 20 */ subfic r9, r0, 0x20
/* 801C7444 001C30A4 7C 89 4C 30 */ srw r9, r4, r9
/* 801C7448 001C30A8 7C 63 4B 78 */ or r3, r3, r9
/* 801C744C 001C30AC 7C 84 00 30 */ slw r4, r4, r0
lbl_801C7450:
/* 801C7450 001C30B0 39 40 FF FF */ li r10, -1
/* 801C7454 001C30B4 30 E7 00 00 */ addic r7, r7, 0
lbl_801C7458:
/* 801C7458 001C30B8 7C 84 21 14 */ adde r4, r4, r4
/* 801C745C 001C30BC 7C 63 19 14 */ adde r3, r3, r3
/* 801C7460 001C30C0 7D 08 41 14 */ adde r8, r8, r8
/* 801C7464 001C30C4 7C E7 39 14 */ adde r7, r7, r7
/* 801C7468 001C30C8 7C 06 40 10 */ subfc r0, r6, r8
/* 801C746C 001C30CC 7D 25 39 11 */ subfe. r9, r5, r7
/* 801C7470 001C30D0 41 80 00 10 */ blt lbl_801C7480
/* 801C7474 001C30D4 7C 08 03 78 */ mr r8, r0
/* 801C7478 001C30D8 7D 27 4B 78 */ mr r7, r9
/* 801C747C 001C30DC 30 0A 00 01 */ addic r0, r10, 1
lbl_801C7480:
/* 801C7480 001C30E0 42 00 FF D8 */ bdnz lbl_801C7458
/* 801C7484 001C30E4 7D 04 43 78 */ mr r4, r8
/* 801C7488 001C30E8 7C E3 3B 78 */ mr r3, r7
/* 801C748C 001C30EC 4E 80 00 20 */ blr
lbl_801C7490:
/* 801C7490 001C30F0 4E 80 00 20 */ blr
.global __mod2i
__mod2i:
/* 801C7494 001C30F4 2F 83 00 00 */ cmpwi cr7, r3, 0
/* 801C7498 001C30F8 40 9C 00 0C */ bge cr7, lbl_801C74A4
/* 801C749C 001C30FC 20 84 00 00 */ subfic r4, r4, 0
/* 801C74A0 001C3100 7C 63 01 90 */ subfze r3, r3
lbl_801C74A4:
/* 801C74A4 001C3104 2C 05 00 00 */ cmpwi r5, 0
/* 801C74A8 001C3108 40 80 00 0C */ bge lbl_801C74B4
/* 801C74AC 001C310C 20 C6 00 00 */ subfic r6, r6, 0
/* 801C74B0 001C3110 7C A5 01 90 */ subfze r5, r5
lbl_801C74B4:
/* 801C74B4 001C3114 2C 03 00 00 */ cmpwi r3, 0
/* 801C74B8 001C3118 7C 60 00 34 */ cntlzw r0, r3
/* 801C74BC 001C311C 7C 89 00 34 */ cntlzw r9, r4
/* 801C74C0 001C3120 40 82 00 08 */ bne lbl_801C74C8
/* 801C74C4 001C3124 38 09 00 20 */ addi r0, r9, 0x20
lbl_801C74C8:
/* 801C74C8 001C3128 2C 05 00 00 */ cmpwi r5, 0
/* 801C74CC 001C312C 7C A9 00 34 */ cntlzw r9, r5
/* 801C74D0 001C3130 7C CA 00 34 */ cntlzw r10, r6
/* 801C74D4 001C3134 40 82 00 08 */ bne lbl_801C74DC
/* 801C74D8 001C3138 39 2A 00 20 */ addi r9, r10, 0x20
lbl_801C74DC:
/* 801C74DC 001C313C 7C 00 48 00 */ cmpw r0, r9
/* 801C74E0 001C3140 21 40 00 40 */ subfic r10, r0, 0x40
/* 801C74E4 001C3144 41 81 00 AC */ bgt lbl_801C7590
/* 801C74E8 001C3148 39 29 00 01 */ addi r9, r9, 1
/* 801C74EC 001C314C 21 29 00 40 */ subfic r9, r9, 0x40
/* 801C74F0 001C3150 7C 00 4A 14 */ add r0, r0, r9
/* 801C74F4 001C3154 7D 29 50 50 */ subf r9, r9, r10
/* 801C74F8 001C3158 7D 29 03 A6 */ mtctr r9
/* 801C74FC 001C315C 2C 09 00 20 */ cmpwi r9, 0x20
/* 801C7500 001C3160 38 E9 FF E0 */ addi r7, r9, -32
/* 801C7504 001C3164 41 80 00 10 */ blt lbl_801C7514
/* 801C7508 001C3168 7C 68 3C 30 */ srw r8, r3, r7
/* 801C750C 001C316C 38 E0 00 00 */ li r7, 0
/* 801C7510 001C3170 48 00 00 18 */ b lbl_801C7528
lbl_801C7514:
/* 801C7514 001C3174 7C 88 4C 30 */ srw r8, r4, r9
/* 801C7518 001C3178 20 E9 00 20 */ subfic r7, r9, 0x20
/* 801C751C 001C317C 7C 67 38 30 */ slw r7, r3, r7
/* 801C7520 001C3180 7D 08 3B 78 */ or r8, r8, r7
/* 801C7524 001C3184 7C 67 4C 30 */ srw r7, r3, r9
lbl_801C7528:
/* 801C7528 001C3188 2C 00 00 20 */ cmpwi r0, 0x20
/* 801C752C 001C318C 31 20 FF E0 */ addic r9, r0, -32
/* 801C7530 001C3190 41 80 00 10 */ blt lbl_801C7540
/* 801C7534 001C3194 7C 83 48 30 */ slw r3, r4, r9
/* 801C7538 001C3198 38 80 00 00 */ li r4, 0
/* 801C753C 001C319C 48 00 00 18 */ b lbl_801C7554
lbl_801C7540:
/* 801C7540 001C31A0 7C 63 00 30 */ slw r3, r3, r0
/* 801C7544 001C31A4 21 20 00 20 */ subfic r9, r0, 0x20
/* 801C7548 001C31A8 7C 89 4C 30 */ srw r9, r4, r9
/* 801C754C 001C31AC 7C 63 4B 78 */ or r3, r3, r9
/* 801C7550 001C31B0 7C 84 00 30 */ slw r4, r4, r0
lbl_801C7554:
/* 801C7554 001C31B4 39 40 FF FF */ li r10, -1
/* 801C7558 001C31B8 30 E7 00 00 */ addic r7, r7, 0
lbl_801C755C:
/* 801C755C 001C31BC 7C 84 21 14 */ adde r4, r4, r4
/* 801C7560 001C31C0 7C 63 19 14 */ adde r3, r3, r3
/* 801C7564 001C31C4 7D 08 41 14 */ adde r8, r8, r8
/* 801C7568 001C31C8 7C E7 39 14 */ adde r7, r7, r7
/* 801C756C 001C31CC 7C 06 40 10 */ subfc r0, r6, r8
/* 801C7570 001C31D0 7D 25 39 11 */ subfe. r9, r5, r7
/* 801C7574 001C31D4 41 80 00 10 */ blt lbl_801C7584
/* 801C7578 001C31D8 7C 08 03 78 */ mr r8, r0
/* 801C757C 001C31DC 7D 27 4B 78 */ mr r7, r9
/* 801C7580 001C31E0 30 0A 00 01 */ addic r0, r10, 1
lbl_801C7584:
/* 801C7584 001C31E4 42 00 FF D8 */ bdnz lbl_801C755C
/* 801C7588 001C31E8 7D 04 43 78 */ mr r4, r8
/* 801C758C 001C31EC 7C E3 3B 78 */ mr r3, r7
lbl_801C7590:
/* 801C7590 001C31F0 40 9C 00 0C */ bge cr7, lbl_801C759C
/* 801C7594 001C31F4 20 84 00 00 */ subfic r4, r4, 0
/* 801C7598 001C31F8 7C 63 01 90 */ subfze r3, r3
lbl_801C759C:
/* 801C759C 001C31FC 4E 80 00 20 */ blr
.global __shl2i
__shl2i:
/* 801C75A0 001C3200 21 05 00 20 */ subfic r8, r5, 0x20
/* 801C75A4 001C3204 31 25 FF E0 */ addic r9, r5, -32
/* 801C75A8 001C3208 7C 63 28 30 */ slw r3, r3, r5
/* 801C75AC 001C320C 7C 8A 44 30 */ srw r10, r4, r8
/* 801C75B0 001C3210 7C 63 53 78 */ or r3, r3, r10
/* 801C75B4 001C3214 7C 8A 48 30 */ slw r10, r4, r9
/* 801C75B8 001C3218 7C 63 53 78 */ or r3, r3, r10
/* 801C75BC 001C321C 7C 84 28 30 */ slw r4, r4, r5
/* 801C75C0 001C3220 4E 80 00 20 */ blr
.global __cvt_sll_flt
__cvt_sll_flt:
/* 801C75C4 001C3224 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801C75C8 001C3228 54 65 00 01 */ rlwinm. r5, r3, 0, 0, 0
/* 801C75CC 001C322C 41 82 00 0C */ beq lbl_801C75D8
/* 801C75D0 001C3230 20 84 00 00 */ subfic r4, r4, 0
/* 801C75D4 001C3234 7C 63 01 90 */ subfze r3, r3
lbl_801C75D8:
/* 801C75D8 001C3238 7C 67 23 79 */ or. r7, r3, r4
/* 801C75DC 001C323C 38 C0 00 00 */ li r6, 0
/* 801C75E0 001C3240 41 82 00 80 */ beq lbl_801C7660
/* 801C75E4 001C3244 7C 67 00 34 */ cntlzw r7, r3
/* 801C75E8 001C3248 7C 88 00 34 */ cntlzw r8, r4
/* 801C75EC 001C324C 54 E9 D0 08 */ rlwinm r9, r7, 0x1a, 0, 4
/* 801C75F0 001C3250 7D 29 FE 70 */ srawi r9, r9, 0x1f
/* 801C75F4 001C3254 7D 29 40 38 */ and r9, r9, r8
/* 801C75F8 001C3258 7C E7 4A 14 */ add r7, r7, r9
/* 801C75FC 001C325C 21 07 00 20 */ subfic r8, r7, 0x20
/* 801C7600 001C3260 31 27 FF E0 */ addic r9, r7, -32
/* 801C7604 001C3264 7C 63 38 30 */ slw r3, r3, r7
/* 801C7608 001C3268 7C 8A 44 30 */ srw r10, r4, r8
/* 801C760C 001C326C 7C 63 53 78 */ or r3, r3, r10
/* 801C7610 001C3270 7C 8A 48 30 */ slw r10, r4, r9
/* 801C7614 001C3274 7C 63 53 78 */ or r3, r3, r10
/* 801C7618 001C3278 7C 84 38 30 */ slw r4, r4, r7
/* 801C761C 001C327C 7C C7 30 50 */ subf r6, r7, r6
/* 801C7620 001C3280 54 87 05 7E */ clrlwi r7, r4, 0x15
/* 801C7624 001C3284 2C 07 04 00 */ cmpwi r7, 0x400
/* 801C7628 001C3288 38 C6 04 3E */ addi r6, r6, 0x43e
/* 801C762C 001C328C 41 80 00 1C */ blt lbl_801C7648
/* 801C7630 001C3290 41 81 00 0C */ bgt lbl_801C763C
/* 801C7634 001C3294 54 87 05 29 */ rlwinm. r7, r4, 0, 0x14, 0x14
/* 801C7638 001C3298 41 82 00 10 */ beq lbl_801C7648
lbl_801C763C:
/* 801C763C 001C329C 30 84 08 00 */ addic r4, r4, 0x800
/* 801C7640 001C32A0 7C 63 01 94 */ addze r3, r3
/* 801C7644 001C32A4 7C C6 01 94 */ addze r6, r6
lbl_801C7648:
/* 801C7648 001C32A8 54 84 A8 3E */ rotlwi r4, r4, 0x15
/* 801C764C 001C32AC 50 64 A8 14 */ rlwimi r4, r3, 0x15, 0, 0xa
/* 801C7650 001C32B0 54 63 AB 3E */ rlwinm r3, r3, 0x15, 0xc, 0x1f
/* 801C7654 001C32B4 54 C6 A0 16 */ slwi r6, r6, 0x14
/* 801C7658 001C32B8 7C C3 1B 78 */ or r3, r6, r3
/* 801C765C 001C32BC 7C A3 1B 78 */ or r3, r5, r3
lbl_801C7660:
/* 801C7660 001C32C0 90 61 00 08 */ stw r3, 8(r1)
/* 801C7664 001C32C4 90 81 00 0C */ stw r4, 0xc(r1)
/* 801C7668 001C32C8 C8 21 00 08 */ lfd f1, 8(r1)
/* 801C766C 001C32CC FC 20 08 18 */ frsp f1, f1
/* 801C7670 001C32D0 38 21 00 10 */ addi r1, r1, 0x10
/* 801C7674 001C32D4 4E 80 00 20 */ blr
.global func_801C7678 #either __cvt_ull_flt or __cvt_dbl_usll
func_801C7678:
/* 801C7678 001C32D8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801C767C 001C32DC 7C 67 23 79 */ or. r7, r3, r4
/* 801C7680 001C32E0 38 C0 00 00 */ li r6, 0
/* 801C7684 001C32E4 41 82 00 7C */ beq lbl_801C7700
/* 801C7688 001C32E8 7C 67 00 34 */ cntlzw r7, r3
/* 801C768C 001C32EC 7C 88 00 34 */ cntlzw r8, r4
/* 801C7690 001C32F0 54 E9 D0 08 */ rlwinm r9, r7, 0x1a, 0, 4
/* 801C7694 001C32F4 7D 29 FE 70 */ srawi r9, r9, 0x1f
/* 801C7698 001C32F8 7D 29 40 38 */ and r9, r9, r8
/* 801C769C 001C32FC 7C E7 4A 14 */ add r7, r7, r9
/* 801C76A0 001C3300 21 07 00 20 */ subfic r8, r7, 0x20
/* 801C76A4 001C3304 31 27 FF E0 */ addic r9, r7, -32
/* 801C76A8 001C3308 7C 63 38 30 */ slw r3, r3, r7
/* 801C76AC 001C330C 7C 8A 44 30 */ srw r10, r4, r8
/* 801C76B0 001C3310 7C 63 53 78 */ or r3, r3, r10
/* 801C76B4 001C3314 7C 8A 48 30 */ slw r10, r4, r9
/* 801C76B8 001C3318 7C 63 53 78 */ or r3, r3, r10
/* 801C76BC 001C331C 7C 84 38 30 */ slw r4, r4, r7
/* 801C76C0 001C3320 7C C7 30 50 */ subf r6, r7, r6
/* 801C76C4 001C3324 54 87 05 7E */ clrlwi r7, r4, 0x15
/* 801C76C8 001C3328 2C 07 04 00 */ cmpwi r7, 0x400
/* 801C76CC 001C332C 38 C6 04 3E */ addi r6, r6, 0x43e
/* 801C76D0 001C3330 41 80 00 1C */ blt lbl_801C76EC
/* 801C76D4 001C3334 41 81 00 0C */ bgt lbl_801C76E0
/* 801C76D8 001C3338 54 87 05 29 */ rlwinm. r7, r4, 0, 0x14, 0x14
/* 801C76DC 001C333C 41 82 00 10 */ beq lbl_801C76EC
lbl_801C76E0:
/* 801C76E0 001C3340 30 84 08 00 */ addic r4, r4, 0x800
/* 801C76E4 001C3344 7C 63 01 94 */ addze r3, r3
/* 801C76E8 001C3348 7C C6 01 94 */ addze r6, r6
lbl_801C76EC:
/* 801C76EC 001C334C 54 84 A8 3E */ rotlwi r4, r4, 0x15
/* 801C76F0 001C3350 50 64 A8 14 */ rlwimi r4, r3, 0x15, 0, 0xa
/* 801C76F4 001C3354 54 63 AB 3E */ rlwinm r3, r3, 0x15, 0xc, 0x1f
/* 801C76F8 001C3358 54 C6 A0 16 */ slwi r6, r6, 0x14
/* 801C76FC 001C335C 7C C3 1B 78 */ or r3, r6, r3
lbl_801C7700:
/* 801C7700 001C3360 90 61 00 08 */ stw r3, 8(r1)
/* 801C7704 001C3364 90 81 00 0C */ stw r4, 0xc(r1)
/* 801C7708 001C3368 C8 21 00 08 */ lfd f1, 8(r1)
/* 801C770C 001C336C FC 20 08 18 */ frsp f1, f1
/* 801C7710 001C3370 38 21 00 10 */ addi r1, r1, 0x10
/* 801C7714 001C3374 4E 80 00 20 */ blr
.global __cvt_dbl_ull
__cvt_dbl_ull:
/* 801C7718 001C3378 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 801C771C 001C337C D8 21 00 08 */ stfd f1, 8(r1)
/* 801C7720 001C3380 80 61 00 08 */ lwz r3, 8(r1)
/* 801C7724 001C3384 80 81 00 0C */ lwz r4, 0xc(r1)
/* 801C7728 001C3388 54 65 65 7E */ rlwinm r5, r3, 0xc, 0x15, 0x1f
/* 801C772C 001C338C 28 05 03 FF */ cmplwi r5, 0x3ff
/* 801C7730 001C3390 40 80 00 10 */ bge lbl_801C7740
lbl_801C7734:
/* 801C7734 001C3394 38 60 00 00 */ li r3, 0
/* 801C7738 001C3398 38 80 00 00 */ li r4, 0
/* 801C773C 001C339C 48 00 00 7C */ b lbl_801C77B8
lbl_801C7740:
/* 801C7740 001C33A0 54 66 00 01 */ rlwinm. r6, r3, 0, 0, 0
/* 801C7744 001C33A4 40 82 FF F0 */ bne lbl_801C7734
/* 801C7748 001C33A8 54 63 03 3E */ clrlwi r3, r3, 0xc
/* 801C774C 001C33AC 64 63 00 10 */ oris r3, r3, 0x10
/* 801C7750 001C33B0 38 A5 FB CD */ addi r5, r5, -1075
/* 801C7754 001C33B4 2C 05 00 00 */ cmpwi r5, 0
/* 801C7758 001C33B8 40 80 00 2C */ bge lbl_801C7784
/* 801C775C 001C33BC 7C A5 00 D0 */ neg r5, r5
/* 801C7760 001C33C0 21 05 00 20 */ subfic r8, r5, 0x20
/* 801C7764 001C33C4 31 25 FF E0 */ addic r9, r5, -32
/* 801C7768 001C33C8 7C 84 2C 30 */ srw r4, r4, r5
/* 801C776C 001C33CC 7C 6A 40 30 */ slw r10, r3, r8
/* 801C7770 001C33D0 7C 84 53 78 */ or r4, r4, r10
/* 801C7774 001C33D4 7C 6A 4C 30 */ srw r10, r3, r9
/* 801C7778 001C33D8 7C 84 53 78 */ or r4, r4, r10
/* 801C777C 001C33DC 7C 63 2C 30 */ srw r3, r3, r5
/* 801C7780 001C33E0 48 00 00 38 */ b lbl_801C77B8
lbl_801C7784:
/* 801C7784 001C33E4 2C 05 00 0B */ cmpwi r5, 0xb
/* 801C7788 001C33E8 40 A1 00 10 */ ble+ lbl_801C7798
/* 801C778C 001C33EC 38 60 FF FF */ li r3, -1
/* 801C7790 001C33F0 38 80 FF FF */ li r4, -1
/* 801C7794 001C33F4 48 00 00 24 */ b lbl_801C77B8
lbl_801C7798:
/* 801C7798 001C33F8 21 05 00 20 */ subfic r8, r5, 0x20
/* 801C779C 001C33FC 31 25 FF E0 */ addic r9, r5, -32
/* 801C77A0 001C3400 7C 63 28 30 */ slw r3, r3, r5
/* 801C77A4 001C3404 7C 8A 44 30 */ srw r10, r4, r8
/* 801C77A8 001C3408 7C 63 53 78 */ or r3, r3, r10
/* 801C77AC 001C340C 7C 8A 48 30 */ slw r10, r4, r9
/* 801C77B0 001C3410 7C 63 53 78 */ or r3, r3, r10
/* 801C77B4 001C3414 7C 84 28 30 */ slw r4, r4, r5
lbl_801C77B8:
/* 801C77B8 001C3418 38 21 00 10 */ addi r1, r1, 0x10
/* 801C77BC 001C341C 4E 80 00 20 */ blr
|