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
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global gsiLargeIntResize
gsiLargeIntResize:
/* 803397B0 00335410 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 803397B4 00335414 7C 08 02 A6 */ mflr r0
/* 803397B8 00335418 28 04 00 40 */ cmplwi r4, 0x40
/* 803397BC 0033541C 90 01 00 14 */ stw r0, 0x14(r1)
/* 803397C0 00335420 93 E1 00 0C */ stw r31, 0xc(r1)
/* 803397C4 00335424 7C 9F 23 78 */ mr r31, r4
/* 803397C8 00335428 93 C1 00 08 */ stw r30, 8(r1)
/* 803397CC 0033542C 7C 7E 1B 78 */ mr r30, r3
/* 803397D0 00335430 40 81 00 0C */ ble lbl_803397DC
/* 803397D4 00335434 38 60 00 00 */ li r3, 0
/* 803397D8 00335438 48 00 00 78 */ b lbl_80339850
lbl_803397DC:
/* 803397DC 0033543C 80 03 00 00 */ lwz r0, 0(r3)
/* 803397E0 00335440 7C 00 20 40 */ cmplw r0, r4
/* 803397E4 00335444 41 80 00 48 */ blt lbl_8033982C
/* 803397E8 00335448 48 00 00 10 */ b lbl_803397F8
lbl_803397EC:
/* 803397EC 0033544C 80 A3 00 00 */ lwz r5, 0(r3)
/* 803397F0 00335450 38 05 FF FF */ addi r0, r5, -1
/* 803397F4 00335454 90 03 00 00 */ stw r0, 0(r3)
lbl_803397F8:
/* 803397F8 00335458 80 A3 00 00 */ lwz r5, 0(r3)
/* 803397FC 0033545C 7C 05 20 40 */ cmplw r5, r4
/* 80339800 00335460 40 81 00 14 */ ble lbl_80339814
/* 80339804 00335464 54 A0 10 3A */ slwi r0, r5, 2
/* 80339808 00335468 7C 03 00 2E */ lwzx r0, r3, r0
/* 8033980C 0033546C 2C 00 00 00 */ cmpwi r0, 0
/* 80339810 00335470 41 82 FF DC */ beq lbl_803397EC
lbl_80339814:
/* 80339814 00335474 7C 05 20 40 */ cmplw r5, r4
/* 80339818 00335478 40 82 00 0C */ bne lbl_80339824
/* 8033981C 0033547C 38 60 00 01 */ li r3, 1
/* 80339820 00335480 48 00 00 30 */ b lbl_80339850
lbl_80339824:
/* 80339824 00335484 38 60 00 00 */ li r3, 0
/* 80339828 00335488 48 00 00 28 */ b lbl_80339850
lbl_8033982C:
/* 8033982C 0033548C 54 04 10 3A */ slwi r4, r0, 2
/* 80339830 00335490 7C 00 F8 50 */ subf r0, r0, r31
/* 80339834 00335494 7C 63 22 14 */ add r3, r3, r4
/* 80339838 00335498 38 80 00 00 */ li r4, 0
/* 8033983C 0033549C 54 05 10 3A */ slwi r5, r0, 2
/* 80339840 003354A0 38 63 00 04 */ addi r3, r3, 4
/* 80339844 003354A4 4B CC A8 C1 */ bl memset
/* 80339848 003354A8 93 FE 00 00 */ stw r31, 0(r30)
/* 8033984C 003354AC 38 60 00 01 */ li r3, 1
lbl_80339850:
/* 80339850 003354B0 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80339854 003354B4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80339858 003354B8 83 C1 00 08 */ lwz r30, 8(r1)
/* 8033985C 003354BC 7C 08 03 A6 */ mtlr r0
/* 80339860 003354C0 38 21 00 10 */ addi r1, r1, 0x10
/* 80339864 003354C4 4E 80 00 20 */ blr
.global gsiLargeIntSizePower2
gsiLargeIntSizePower2:
/* 80339868 003354C8 80 C3 00 00 */ lwz r6, 0(r3)
/* 8033986C 003354CC 80 E4 00 00 */ lwz r7, 0(r4)
/* 80339870 003354D0 54 C0 10 3A */ slwi r0, r6, 2
/* 80339874 003354D4 7C 63 02 14 */ add r3, r3, r0
/* 80339878 003354D8 48 00 00 0C */ b lbl_80339884
lbl_8033987C:
/* 8033987C 003354DC 38 63 FF FC */ addi r3, r3, -4
/* 80339880 003354E0 38 C6 FF FF */ addi r6, r6, -1
lbl_80339884:
/* 80339884 003354E4 2C 06 00 00 */ cmpwi r6, 0
/* 80339888 003354E8 40 81 00 10 */ ble lbl_80339898
/* 8033988C 003354EC 80 03 00 00 */ lwz r0, 0(r3)
/* 80339890 003354F0 2C 00 00 00 */ cmpwi r0, 0
/* 80339894 003354F4 41 82 FF E8 */ beq lbl_8033987C
lbl_80339898:
/* 80339898 003354F8 54 E0 10 3A */ slwi r0, r7, 2
/* 8033989C 003354FC 7C 64 02 14 */ add r3, r4, r0
/* 803398A0 00335500 48 00 00 0C */ b lbl_803398AC
lbl_803398A4:
/* 803398A4 00335504 38 63 FF FC */ addi r3, r3, -4
/* 803398A8 00335508 38 E7 FF FF */ addi r7, r7, -1
lbl_803398AC:
/* 803398AC 0033550C 2C 07 00 00 */ cmpwi r7, 0
/* 803398B0 00335510 40 81 00 10 */ ble lbl_803398C0
/* 803398B4 00335514 80 03 00 00 */ lwz r0, 0(r3)
/* 803398B8 00335518 2C 00 00 00 */ cmpwi r0, 0
/* 803398BC 0033551C 41 82 FF E8 */ beq lbl_803398A4
lbl_803398C0:
/* 803398C0 00335520 7C 06 38 00 */ cmpw r6, r7
/* 803398C4 00335524 40 81 00 08 */ ble lbl_803398CC
/* 803398C8 00335528 7C C7 33 78 */ mr r7, r6
lbl_803398CC:
/* 803398CC 0033552C 90 E5 00 00 */ stw r7, 0(r5)
/* 803398D0 00335530 38 80 00 01 */ li r4, 1
/* 803398D4 00335534 48 00 00 08 */ b lbl_803398DC
lbl_803398D8:
/* 803398D8 00335538 54 84 08 3C */ slwi r4, r4, 1
lbl_803398DC:
/* 803398DC 0033553C 7C 04 38 40 */ cmplw r4, r7
/* 803398E0 00335540 41 80 FF F8 */ blt lbl_803398D8
/* 803398E4 00335544 20 04 00 40 */ subfic r0, r4, 0x40
/* 803398E8 00335548 38 60 00 40 */ li r3, 0x40
/* 803398EC 0033554C 7C 63 23 38 */ orc r3, r3, r4
/* 803398F0 00335550 90 85 00 00 */ stw r4, 0(r5)
/* 803398F4 00335554 54 00 F8 7E */ srwi r0, r0, 1
/* 803398F8 00335558 7C 00 18 50 */ subf r0, r0, r3
/* 803398FC 0033555C 54 03 0F FE */ srwi r3, r0, 0x1f
/* 80339900 00335560 4E 80 00 20 */ blr
.global gsiLargeIntCompare
gsiLargeIntCompare:
/* 80339904 00335564 54 80 10 3A */ slwi r0, r4, 2
/* 80339908 00335568 7C E3 02 14 */ add r7, r3, r0
/* 8033990C 0033556C 48 00 00 0C */ b lbl_80339918
lbl_80339910:
/* 80339910 00335570 38 E7 FF FC */ addi r7, r7, -4
/* 80339914 00335574 38 84 FF FF */ addi r4, r4, -1
lbl_80339918:
/* 80339918 00335578 80 07 FF FC */ lwz r0, -4(r7)
/* 8033991C 0033557C 2C 00 00 00 */ cmpwi r0, 0
/* 80339920 00335580 40 82 00 0C */ bne lbl_8033992C
/* 80339924 00335584 2C 04 00 00 */ cmpwi r4, 0
/* 80339928 00335588 40 82 FF E8 */ bne lbl_80339910
lbl_8033992C:
/* 8033992C 0033558C 54 C0 10 3A */ slwi r0, r6, 2
/* 80339930 00335590 7C E5 02 14 */ add r7, r5, r0
/* 80339934 00335594 48 00 00 0C */ b lbl_80339940
lbl_80339938:
/* 80339938 00335598 38 E7 FF FC */ addi r7, r7, -4
/* 8033993C 0033559C 38 C6 FF FF */ addi r6, r6, -1
lbl_80339940:
/* 80339940 003355A0 80 07 FF FC */ lwz r0, -4(r7)
/* 80339944 003355A4 2C 00 00 00 */ cmpwi r0, 0
/* 80339948 003355A8 40 82 00 0C */ bne lbl_80339954
/* 8033994C 003355AC 2C 06 00 00 */ cmpwi r6, 0
/* 80339950 003355B0 40 82 FF E8 */ bne lbl_80339938
lbl_80339954:
/* 80339954 003355B4 7C 04 30 40 */ cmplw r4, r6
/* 80339958 003355B8 40 80 00 0C */ bge lbl_80339964
/* 8033995C 003355BC 38 60 FF FF */ li r3, -1
/* 80339960 003355C0 4E 80 00 20 */ blr
lbl_80339964:
/* 80339964 003355C4 40 81 00 0C */ ble lbl_80339970
/* 80339968 003355C8 38 60 00 01 */ li r3, 1
/* 8033996C 003355CC 4E 80 00 20 */ blr
lbl_80339970:
/* 80339970 003355D0 54 80 10 3A */ slwi r0, r4, 2
/* 80339974 003355D4 7C A5 02 14 */ add r5, r5, r0
/* 80339978 003355D8 7C 63 02 14 */ add r3, r3, r0
/* 8033997C 003355DC 7C 89 03 A6 */ mtctr r4
/* 80339980 003355E0 2C 04 00 00 */ cmpwi r4, 0
/* 80339984 003355E4 41 82 00 34 */ beq lbl_803399B8
lbl_80339988:
/* 80339988 003355E8 80 05 FF FC */ lwz r0, -4(r5)
/* 8033998C 003355EC 80 83 FF FC */ lwz r4, -4(r3)
/* 80339990 003355F0 7C 04 00 40 */ cmplw r4, r0
/* 80339994 003355F4 40 80 00 0C */ bge lbl_803399A0
/* 80339998 003355F8 38 60 FF FF */ li r3, -1
/* 8033999C 003355FC 4E 80 00 20 */ blr
lbl_803399A0:
/* 803399A0 00335600 40 81 00 0C */ ble lbl_803399AC
/* 803399A4 00335604 38 60 00 01 */ li r3, 1
/* 803399A8 00335608 4E 80 00 20 */ blr
lbl_803399AC:
/* 803399AC 0033560C 38 A5 FF FC */ addi r5, r5, -4
/* 803399B0 00335610 38 63 FF FC */ addi r3, r3, -4
/* 803399B4 00335614 42 00 FF D4 */ bdnz lbl_80339988
lbl_803399B8:
/* 803399B8 00335618 38 60 00 00 */ li r3, 0
/* 803399BC 0033561C 4E 80 00 20 */ blr
.global gsiLargeIntAdd
gsiLargeIntAdd:
/* 803399C0 00335620 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 803399C4 00335624 7C 08 02 A6 */ mflr r0
/* 803399C8 00335628 90 01 00 44 */ stw r0, 0x44(r1)
/* 803399CC 0033562C 39 61 00 40 */ addi r11, r1, 0x40
/* 803399D0 00335630 4B E8 D7 41 */ bl _savegpr_21
/* 803399D4 00335634 3E C0 80 61 */ lis r22, lbl_80610BD0@ha
/* 803399D8 00335638 7C 77 1B 78 */ mr r23, r3
/* 803399DC 0033563C 3A D6 0B D0 */ addi r22, r22, lbl_80610BD0@l
/* 803399E0 00335640 7C 95 23 78 */ mr r21, r4
/* 803399E4 00335644 80 16 00 3C */ lwz r0, 0x3c(r22)
/* 803399E8 00335648 7C B8 2B 78 */ mr r24, r5
/* 803399EC 0033564C 7C D9 33 78 */ mr r25, r6
/* 803399F0 00335650 7C FA 3B 78 */ mr r26, r7
/* 803399F4 00335654 2C 00 00 00 */ cmpwi r0, 0
/* 803399F8 00335658 7D 1B 43 78 */ mr r27, r8
/* 803399FC 0033565C 7D 3C 4B 78 */ mr r28, r9
/* 80339A00 00335660 3B E0 00 00 */ li r31, 0
/* 80339A04 00335664 3B A0 00 00 */ li r29, 0
/* 80339A08 00335668 3B C0 00 00 */ li r30, 0
/* 80339A0C 0033566C 40 82 00 20 */ bne lbl_80339A2C
/* 80339A10 00335670 80 76 00 38 */ lwz r3, 0x38(r22)
/* 80339A14 00335674 38 03 00 01 */ addi r0, r3, 1
/* 80339A18 00335678 90 16 00 38 */ stw r0, 0x38(r22)
/* 80339A1C 0033567C 4B FF F6 05 */ bl current_time_hires
/* 80339A20 00335680 38 00 00 01 */ li r0, 1
/* 80339A24 00335684 90 76 00 30 */ stw r3, 0x30(r22)
/* 80339A28 00335688 90 16 00 3C */ stw r0, 0x3c(r22)
lbl_80339A2C:
/* 80339A2C 0033568C 7C 1C A8 40 */ cmplw r28, r21
/* 80339A30 00335690 41 80 00 0C */ blt lbl_80339A3C
/* 80339A34 00335694 7C 1C C8 40 */ cmplw r28, r25
/* 80339A38 00335698 40 80 00 0C */ bge lbl_80339A44
lbl_80339A3C:
/* 80339A3C 0033569C 38 60 00 00 */ li r3, 0
/* 80339A40 003356A0 48 00 01 F0 */ b lbl_80339C30
lbl_80339A44:
/* 80339A44 003356A4 7C 15 C8 40 */ cmplw r21, r25
/* 80339A48 003356A8 40 80 00 10 */ bge lbl_80339A58
/* 80339A4C 003356AC 7E A6 AB 78 */ mr r6, r21
/* 80339A50 003356B0 7F 07 C3 78 */ mr r7, r24
/* 80339A54 003356B4 48 00 00 10 */ b lbl_80339A64
lbl_80339A58:
/* 80339A58 003356B8 7F 26 CB 78 */ mr r6, r25
/* 80339A5C 003356BC 7E B9 AB 78 */ mr r25, r21
/* 80339A60 003356C0 7E E7 BB 78 */ mr r7, r23
lbl_80339A64:
/* 80339A64 003356C4 28 06 00 00 */ cmplwi r6, 0
/* 80339A68 003356C8 7F 45 D3 78 */ mr r5, r26
/* 80339A6C 003356CC 40 81 00 E0 */ ble lbl_80339B4C
/* 80339A70 003356D0 54 C0 F0 BF */ rlwinm. r0, r6, 0x1e, 2, 0x1f
/* 80339A74 003356D4 7C DF 33 78 */ mr r31, r6
/* 80339A78 003356D8 7C 09 03 A6 */ mtctr r0
/* 80339A7C 003356DC 41 82 00 9C */ beq lbl_80339B18
lbl_80339A80:
/* 80339A80 003356E0 80 77 00 00 */ lwz r3, 0(r23)
/* 80339A84 003356E4 80 18 00 00 */ lwz r0, 0(r24)
/* 80339A88 003356E8 7C 9D 18 14 */ addc r4, r29, r3
/* 80339A8C 003356EC 7C 7E 01 94 */ addze r3, r30
/* 80339A90 003356F0 3B C0 00 00 */ li r30, 0
/* 80339A94 003356F4 7C 04 00 14 */ addc r0, r4, r0
/* 80339A98 003356F8 90 05 00 00 */ stw r0, 0(r5)
/* 80339A9C 003356FC 7F A3 01 94 */ addze r29, r3
/* 80339AA0 00335700 80 77 00 04 */ lwz r3, 4(r23)
/* 80339AA4 00335704 80 18 00 04 */ lwz r0, 4(r24)
/* 80339AA8 00335708 7C 9D 18 14 */ addc r4, r29, r3
/* 80339AAC 0033570C 7C 7E 01 94 */ addze r3, r30
/* 80339AB0 00335710 3B C0 00 00 */ li r30, 0
/* 80339AB4 00335714 7C 04 00 14 */ addc r0, r4, r0
/* 80339AB8 00335718 90 05 00 04 */ stw r0, 4(r5)
/* 80339ABC 0033571C 7F A3 01 94 */ addze r29, r3
/* 80339AC0 00335720 80 77 00 08 */ lwz r3, 8(r23)
/* 80339AC4 00335724 80 18 00 08 */ lwz r0, 8(r24)
/* 80339AC8 00335728 7C 9D 18 14 */ addc r4, r29, r3
/* 80339ACC 0033572C 7C 7E 01 94 */ addze r3, r30
/* 80339AD0 00335730 3B C0 00 00 */ li r30, 0
/* 80339AD4 00335734 7C 04 00 14 */ addc r0, r4, r0
/* 80339AD8 00335738 90 05 00 08 */ stw r0, 8(r5)
/* 80339ADC 0033573C 7F A3 01 94 */ addze r29, r3
/* 80339AE0 00335740 80 77 00 0C */ lwz r3, 0xc(r23)
/* 80339AE4 00335744 3A F7 00 10 */ addi r23, r23, 0x10
/* 80339AE8 00335748 80 18 00 0C */ lwz r0, 0xc(r24)
/* 80339AEC 0033574C 3B 18 00 10 */ addi r24, r24, 0x10
/* 80339AF0 00335750 7C 9D 18 14 */ addc r4, r29, r3
/* 80339AF4 00335754 7C 7E 01 94 */ addze r3, r30
/* 80339AF8 00335758 3B C0 00 00 */ li r30, 0
/* 80339AFC 0033575C 7C 04 00 14 */ addc r0, r4, r0
/* 80339B00 00335760 90 05 00 0C */ stw r0, 0xc(r5)
/* 80339B04 00335764 7F A3 01 94 */ addze r29, r3
/* 80339B08 00335768 38 A5 00 10 */ addi r5, r5, 0x10
/* 80339B0C 0033576C 42 00 FF 74 */ bdnz lbl_80339A80
/* 80339B10 00335770 70 C6 00 03 */ andi. r6, r6, 3
/* 80339B14 00335774 41 82 00 38 */ beq lbl_80339B4C
lbl_80339B18:
/* 80339B18 00335778 7C C9 03 A6 */ mtctr r6
lbl_80339B1C:
/* 80339B1C 0033577C 80 77 00 00 */ lwz r3, 0(r23)
/* 80339B20 00335780 3A F7 00 04 */ addi r23, r23, 4
/* 80339B24 00335784 80 18 00 00 */ lwz r0, 0(r24)
/* 80339B28 00335788 3B 18 00 04 */ addi r24, r24, 4
/* 80339B2C 0033578C 7C 9D 18 14 */ addc r4, r29, r3
/* 80339B30 00335790 7C 7E 01 94 */ addze r3, r30
/* 80339B34 00335794 3B C0 00 00 */ li r30, 0
/* 80339B38 00335798 7C 04 00 14 */ addc r0, r4, r0
/* 80339B3C 0033579C 90 05 00 00 */ stw r0, 0(r5)
/* 80339B40 003357A0 7F A3 01 94 */ addze r29, r3
/* 80339B44 003357A4 38 A5 00 04 */ addi r5, r5, 4
/* 80339B48 003357A8 42 00 FF D4 */ bdnz lbl_80339B1C
lbl_80339B4C:
/* 80339B4C 003357AC 57 E0 10 3A */ slwi r0, r31, 2
/* 80339B50 003357B0 7C 67 02 14 */ add r3, r7, r0
/* 80339B54 003357B4 7C 9A 02 14 */ add r4, r26, r0
/* 80339B58 003357B8 48 00 00 24 */ b lbl_80339B7C
lbl_80339B5C:
/* 80339B5C 003357BC 80 03 00 00 */ lwz r0, 0(r3)
/* 80339B60 003357C0 38 63 00 04 */ addi r3, r3, 4
/* 80339B64 003357C4 3B FF 00 01 */ addi r31, r31, 1
/* 80339B68 003357C8 7C 1D 00 14 */ addc r0, r29, r0
/* 80339B6C 003357CC 90 04 00 00 */ stw r0, 0(r4)
/* 80339B70 003357D0 7F BE 01 94 */ addze r29, r30
/* 80339B74 003357D4 3B C0 00 00 */ li r30, 0
/* 80339B78 003357D8 38 84 00 04 */ addi r4, r4, 4
lbl_80339B7C:
/* 80339B7C 003357DC 7F A0 F3 79 */ or. r0, r29, r30
/* 80339B80 003357E0 41 82 00 0C */ beq lbl_80339B8C
/* 80339B84 003357E4 7C 1F C8 40 */ cmplw r31, r25
/* 80339B88 003357E8 41 80 FF D4 */ blt lbl_80339B5C
lbl_80339B8C:
/* 80339B8C 003357EC 7F A0 F3 79 */ or. r0, r29, r30
/* 80339B90 003357F0 41 82 00 28 */ beq lbl_80339BB8
/* 80339B94 003357F4 7C 1C F8 40 */ cmplw r28, r31
/* 80339B98 003357F8 41 81 00 0C */ bgt lbl_80339BA4
/* 80339B9C 003357FC 38 60 00 00 */ li r3, 0
/* 80339BA0 00335800 48 00 00 90 */ b lbl_80339C30
lbl_80339BA4:
/* 80339BA4 00335804 57 E0 10 3A */ slwi r0, r31, 2
/* 80339BA8 00335808 3B C0 00 00 */ li r30, 0
/* 80339BAC 0033580C 7F BA 01 2E */ stwx r29, r26, r0
/* 80339BB0 00335810 3B A0 00 00 */ li r29, 0
/* 80339BB4 00335814 3B FF 00 01 */ addi r31, r31, 1
lbl_80339BB8:
/* 80339BB8 00335818 7C 1F C8 40 */ cmplw r31, r25
/* 80339BBC 0033581C 40 80 00 28 */ bge lbl_80339BE4
/* 80339BC0 00335820 57 E0 10 3A */ slwi r0, r31, 2
/* 80339BC4 00335824 7C 87 02 14 */ add r4, r7, r0
/* 80339BC8 00335828 7C 7A 02 14 */ add r3, r26, r0
/* 80339BCC 0033582C 7C 03 20 40 */ cmplw r3, r4
/* 80339BD0 00335830 41 82 00 10 */ beq lbl_80339BE0
/* 80339BD4 00335834 7C 1F C8 50 */ subf r0, r31, r25
/* 80339BD8 00335838 54 05 10 3A */ slwi r5, r0, 2
/* 80339BDC 0033583C 4B CC A4 25 */ bl memcpy
lbl_80339BE0:
/* 80339BE0 00335840 7F 3F CB 78 */ mr r31, r25
lbl_80339BE4:
/* 80339BE4 00335844 3E E0 80 61 */ lis r23, lbl_80610BD0@ha
/* 80339BE8 00335848 93 FB 00 00 */ stw r31, 0(r27)
/* 80339BEC 0033584C 3A F7 0B D0 */ addi r23, r23, lbl_80610BD0@l
/* 80339BF0 00335850 80 17 00 3C */ lwz r0, 0x3c(r23)
/* 80339BF4 00335854 28 00 00 01 */ cmplwi r0, 1
/* 80339BF8 00335858 40 82 00 24 */ bne lbl_80339C1C
/* 80339BFC 0033585C 4B FF F4 25 */ bl current_time_hires
/* 80339C00 00335860 80 B7 00 30 */ lwz r5, 0x30(r23)
/* 80339C04 00335864 38 00 00 00 */ li r0, 0
/* 80339C08 00335868 80 97 00 34 */ lwz r4, 0x34(r23)
/* 80339C0C 0033586C 7C 65 18 50 */ subf r3, r5, r3
/* 80339C10 00335870 90 17 00 3C */ stw r0, 0x3c(r23)
/* 80339C14 00335874 7C 04 1A 14 */ add r0, r4, r3
/* 80339C18 00335878 90 17 00 34 */ stw r0, 0x34(r23)
lbl_80339C1C:
/* 80339C1C 0033587C 7F A0 F3 79 */ or. r0, r29, r30
/* 80339C20 00335880 41 82 00 0C */ beq lbl_80339C2C
/* 80339C24 00335884 38 60 00 00 */ li r3, 0
/* 80339C28 00335888 48 00 00 08 */ b lbl_80339C30
lbl_80339C2C:
/* 80339C2C 0033588C 38 60 00 01 */ li r3, 1
lbl_80339C30:
/* 80339C30 00335890 39 61 00 40 */ addi r11, r1, 0x40
/* 80339C34 00335894 4B E8 D5 29 */ bl _restgpr_21
/* 80339C38 00335898 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80339C3C 0033589C 7C 08 03 A6 */ mtlr r0
/* 80339C40 003358A0 38 21 00 40 */ addi r1, r1, 0x40
/* 80339C44 003358A4 4E 80 00 20 */ blr
.global gsiLargeIntSub
gsiLargeIntSub:
/* 80339C48 003358A8 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80339C4C 003358AC 7C 08 02 A6 */ mflr r0
/* 80339C50 003358B0 90 01 00 44 */ stw r0, 0x44(r1)
/* 80339C54 003358B4 39 61 00 40 */ addi r11, r1, 0x40
/* 80339C58 003358B8 4B E8 D4 B9 */ bl _savegpr_21
/* 80339C5C 003358BC 7C 04 30 40 */ cmplw r4, r6
/* 80339C60 003358C0 7C D9 33 78 */ mr r25, r6
/* 80339C64 003358C4 7C 76 1B 78 */ mr r22, r3
/* 80339C68 003358C8 7C 97 23 78 */ mr r23, r4
/* 80339C6C 003358CC 7C B8 2B 78 */ mr r24, r5
/* 80339C70 003358D0 7C FA 3B 78 */ mr r26, r7
/* 80339C74 003358D4 7D 1B 43 78 */ mr r27, r8
/* 80339C78 003358D8 7F 3F CB 78 */ mr r31, r25
/* 80339C7C 003358DC 3B A0 00 00 */ li r29, 0
/* 80339C80 003358E0 3B C0 00 00 */ li r30, 0
/* 80339C84 003358E4 40 80 00 08 */ bge lbl_80339C8C
/* 80339C88 003358E8 7E FF BB 78 */ mr r31, r23
lbl_80339C8C:
/* 80339C8C 003358EC 3E A0 80 61 */ lis r21, lbl_80610BD0@ha
/* 80339C90 003358F0 3B 80 00 00 */ li r28, 0
/* 80339C94 003358F4 3A B5 0B D0 */ addi r21, r21, lbl_80610BD0@l
/* 80339C98 003358F8 80 15 00 4C */ lwz r0, 0x4c(r21)
/* 80339C9C 003358FC 2C 00 00 00 */ cmpwi r0, 0
/* 80339CA0 00335900 40 82 00 20 */ bne lbl_80339CC0
/* 80339CA4 00335904 80 75 00 48 */ lwz r3, 0x48(r21)
/* 80339CA8 00335908 38 03 00 01 */ addi r0, r3, 1
/* 80339CAC 0033590C 90 15 00 48 */ stw r0, 0x48(r21)
/* 80339CB0 00335910 4B FF F3 71 */ bl current_time_hires
/* 80339CB4 00335914 38 00 00 01 */ li r0, 1
/* 80339CB8 00335918 90 75 00 40 */ stw r3, 0x40(r21)
/* 80339CBC 0033591C 90 15 00 4C */ stw r0, 0x4c(r21)
lbl_80339CC0:
/* 80339CC0 00335920 28 1F 00 00 */ cmplwi r31, 0
/* 80339CC4 00335924 7E C7 B3 78 */ mr r7, r22
/* 80339CC8 00335928 7F 08 C3 78 */ mr r8, r24
/* 80339CCC 0033592C 7F 49 D3 78 */ mr r9, r26
/* 80339CD0 00335930 40 81 00 F4 */ ble lbl_80339DC4
/* 80339CD4 00335934 57 E0 F0 BF */ rlwinm. r0, r31, 0x1e, 2, 0x1f
/* 80339CD8 00335938 7F FC FB 78 */ mr r28, r31
/* 80339CDC 0033593C 7C 09 03 A6 */ mtctr r0
/* 80339CE0 00335940 41 82 00 AC */ beq lbl_80339D8C
lbl_80339CE4:
/* 80339CE4 00335944 80 C8 00 00 */ lwz r6, 0(r8)
/* 80339CE8 00335948 80 A7 00 00 */ lwz r5, 0(r7)
/* 80339CEC 0033594C 7C 65 30 10 */ subfc r3, r5, r6
/* 80339CF0 00335950 80 A7 00 04 */ lwz r5, 4(r7)
/* 80339CF4 00335954 7C 86 31 10 */ subfe r4, r6, r6
/* 80339CF8 00335958 80 C8 00 04 */ lwz r6, 4(r8)
/* 80339CFC 0033595C 7C 7D 18 10 */ subfc r3, r29, r3
/* 80339D00 00335960 7C 1E 21 10 */ subfe r0, r30, r4
/* 80339D04 00335964 90 69 00 00 */ stw r3, 0(r9)
/* 80339D08 00335968 7C 65 30 10 */ subfc r3, r5, r6
/* 80339D0C 0033596C 80 A7 00 08 */ lwz r5, 8(r7)
/* 80339D10 00335970 7C 86 31 10 */ subfe r4, r6, r6
/* 80339D14 00335974 54 1D 0F FE */ srwi r29, r0, 0x1f
/* 80339D18 00335978 7C 7D 18 10 */ subfc r3, r29, r3
/* 80339D1C 0033597C 3B C0 00 00 */ li r30, 0
/* 80339D20 00335980 7C 1E 21 10 */ subfe r0, r30, r4
/* 80339D24 00335984 80 C8 00 08 */ lwz r6, 8(r8)
/* 80339D28 00335988 90 69 00 04 */ stw r3, 4(r9)
/* 80339D2C 0033598C 54 1D 0F FE */ srwi r29, r0, 0x1f
/* 80339D30 00335990 7C 65 30 10 */ subfc r3, r5, r6
/* 80339D34 00335994 80 A7 00 0C */ lwz r5, 0xc(r7)
/* 80339D38 00335998 7C 86 31 10 */ subfe r4, r6, r6
/* 80339D3C 0033599C 80 C8 00 0C */ lwz r6, 0xc(r8)
/* 80339D40 003359A0 7C 7D 18 10 */ subfc r3, r29, r3
/* 80339D44 003359A4 3B C0 00 00 */ li r30, 0
/* 80339D48 003359A8 7C 1E 21 10 */ subfe r0, r30, r4
/* 80339D4C 003359AC 90 69 00 08 */ stw r3, 8(r9)
/* 80339D50 003359B0 7C 65 30 10 */ subfc r3, r5, r6
/* 80339D54 003359B4 3B C0 00 00 */ li r30, 0
/* 80339D58 003359B8 54 1D 0F FE */ srwi r29, r0, 0x1f
/* 80339D5C 003359BC 7C 86 31 10 */ subfe r4, r6, r6
/* 80339D60 003359C0 7C 7D 18 10 */ subfc r3, r29, r3
/* 80339D64 003359C4 38 E7 00 10 */ addi r7, r7, 0x10
/* 80339D68 003359C8 7C 1E 21 10 */ subfe r0, r30, r4
/* 80339D6C 003359CC 90 69 00 0C */ stw r3, 0xc(r9)
/* 80339D70 003359D0 54 1D 0F FE */ srwi r29, r0, 0x1f
/* 80339D74 003359D4 3B C0 00 00 */ li r30, 0
/* 80339D78 003359D8 39 08 00 10 */ addi r8, r8, 0x10
/* 80339D7C 003359DC 39 29 00 10 */ addi r9, r9, 0x10
/* 80339D80 003359E0 42 00 FF 64 */ bdnz lbl_80339CE4
/* 80339D84 003359E4 73 FF 00 03 */ andi. r31, r31, 3
/* 80339D88 003359E8 41 82 00 3C */ beq lbl_80339DC4
lbl_80339D8C:
/* 80339D8C 003359EC 7F E9 03 A6 */ mtctr r31
lbl_80339D90:
/* 80339D90 003359F0 80 C8 00 00 */ lwz r6, 0(r8)
/* 80339D94 003359F4 39 08 00 04 */ addi r8, r8, 4
/* 80339D98 003359F8 80 A7 00 00 */ lwz r5, 0(r7)
/* 80339D9C 003359FC 38 E7 00 04 */ addi r7, r7, 4
/* 80339DA0 00335A00 7C 65 30 10 */ subfc r3, r5, r6
/* 80339DA4 00335A04 7C 86 31 10 */ subfe r4, r6, r6
/* 80339DA8 00335A08 7C 7D 18 10 */ subfc r3, r29, r3
/* 80339DAC 00335A0C 7C 1E 21 10 */ subfe r0, r30, r4
/* 80339DB0 00335A10 90 69 00 00 */ stw r3, 0(r9)
/* 80339DB4 00335A14 54 1D 0F FE */ srwi r29, r0, 0x1f
/* 80339DB8 00335A18 3B C0 00 00 */ li r30, 0
/* 80339DBC 00335A1C 39 29 00 04 */ addi r9, r9, 4
/* 80339DC0 00335A20 42 00 FF D0 */ bdnz lbl_80339D90
lbl_80339DC4:
/* 80339DC4 00335A24 7C 1C C8 40 */ cmplw r28, r25
/* 80339DC8 00335A28 57 80 10 3A */ slwi r0, r28, 2
/* 80339DCC 00335A2C 7D 18 02 14 */ add r8, r24, r0
/* 80339DD0 00335A30 7C 9C C8 50 */ subf r4, r28, r25
/* 80339DD4 00335A34 7D 3A 02 14 */ add r9, r26, r0
/* 80339DD8 00335A38 38 C0 00 00 */ li r6, 0
/* 80339DDC 00335A3C 40 80 00 B4 */ bge lbl_80339E90
/* 80339DE0 00335A40 54 83 F0 BF */ rlwinm. r3, r4, 0x1e, 2, 0x1f
/* 80339DE4 00335A44 7C 80 23 78 */ mr r0, r4
/* 80339DE8 00335A48 7C 69 03 A6 */ mtctr r3
/* 80339DEC 00335A4C 41 82 00 78 */ beq lbl_80339E64
lbl_80339DF0:
/* 80339DF0 00335A50 80 E8 00 00 */ lwz r7, 0(r8)
/* 80339DF4 00335A54 7C BD 38 10 */ subfc r5, r29, r7
/* 80339DF8 00335A58 80 E8 00 04 */ lwz r7, 4(r8)
/* 80339DFC 00335A5C 7C 7E 31 10 */ subfe r3, r30, r6
/* 80339E00 00335A60 90 A9 00 00 */ stw r5, 0(r9)
/* 80339E04 00335A64 54 7D 0F FE */ srwi r29, r3, 0x1f
/* 80339E08 00335A68 3B C0 00 00 */ li r30, 0
/* 80339E0C 00335A6C 7C BD 38 10 */ subfc r5, r29, r7
/* 80339E10 00335A70 80 E8 00 08 */ lwz r7, 8(r8)
/* 80339E14 00335A74 7C 7E 31 10 */ subfe r3, r30, r6
/* 80339E18 00335A78 90 A9 00 04 */ stw r5, 4(r9)
/* 80339E1C 00335A7C 54 7D 0F FE */ srwi r29, r3, 0x1f
/* 80339E20 00335A80 3B C0 00 00 */ li r30, 0
/* 80339E24 00335A84 7C BD 38 10 */ subfc r5, r29, r7
/* 80339E28 00335A88 80 E8 00 0C */ lwz r7, 0xc(r8)
/* 80339E2C 00335A8C 7C 7E 31 10 */ subfe r3, r30, r6
/* 80339E30 00335A90 90 A9 00 08 */ stw r5, 8(r9)
/* 80339E34 00335A94 54 7D 0F FE */ srwi r29, r3, 0x1f
/* 80339E38 00335A98 3B C0 00 00 */ li r30, 0
/* 80339E3C 00335A9C 7C BD 38 10 */ subfc r5, r29, r7
/* 80339E40 00335AA0 39 08 00 10 */ addi r8, r8, 0x10
/* 80339E44 00335AA4 7C 7E 31 10 */ subfe r3, r30, r6
/* 80339E48 00335AA8 90 A9 00 0C */ stw r5, 0xc(r9)
/* 80339E4C 00335AAC 54 7D 0F FE */ srwi r29, r3, 0x1f
/* 80339E50 00335AB0 3B C0 00 00 */ li r30, 0
/* 80339E54 00335AB4 39 29 00 10 */ addi r9, r9, 0x10
/* 80339E58 00335AB8 42 00 FF 98 */ bdnz lbl_80339DF0
/* 80339E5C 00335ABC 70 84 00 03 */ andi. r4, r4, 3
/* 80339E60 00335AC0 41 82 00 2C */ beq lbl_80339E8C
lbl_80339E64:
/* 80339E64 00335AC4 7C 89 03 A6 */ mtctr r4
lbl_80339E68:
/* 80339E68 00335AC8 80 E8 00 00 */ lwz r7, 0(r8)
/* 80339E6C 00335ACC 39 08 00 04 */ addi r8, r8, 4
/* 80339E70 00335AD0 7C BD 38 10 */ subfc r5, r29, r7
/* 80339E74 00335AD4 7C 7E 31 10 */ subfe r3, r30, r6
/* 80339E78 00335AD8 90 A9 00 00 */ stw r5, 0(r9)
/* 80339E7C 00335ADC 54 7D 0F FE */ srwi r29, r3, 0x1f
/* 80339E80 00335AE0 3B C0 00 00 */ li r30, 0
/* 80339E84 00335AE4 39 29 00 04 */ addi r9, r9, 4
/* 80339E88 00335AE8 42 00 FF E0 */ bdnz lbl_80339E68
lbl_80339E8C:
/* 80339E8C 00335AEC 7F 9C 02 14 */ add r28, r28, r0
lbl_80339E90:
/* 80339E90 00335AF0 7F A0 F3 79 */ or. r0, r29, r30
/* 80339E94 00335AF4 41 82 00 40 */ beq lbl_80339ED4
/* 80339E98 00335AF8 3E C0 80 61 */ lis r22, lbl_80610BD0@ha
/* 80339E9C 00335AFC 3A D6 0B D0 */ addi r22, r22, lbl_80610BD0@l
/* 80339EA0 00335B00 80 16 00 4C */ lwz r0, 0x4c(r22)
/* 80339EA4 00335B04 28 00 00 01 */ cmplwi r0, 1
/* 80339EA8 00335B08 40 82 00 24 */ bne lbl_80339ECC
/* 80339EAC 00335B0C 4B FF F1 75 */ bl current_time_hires
/* 80339EB0 00335B10 80 B6 00 40 */ lwz r5, 0x40(r22)
/* 80339EB4 00335B14 38 00 00 00 */ li r0, 0
/* 80339EB8 00335B18 80 96 00 44 */ lwz r4, 0x44(r22)
/* 80339EBC 00335B1C 7C 65 18 50 */ subf r3, r5, r3
/* 80339EC0 00335B20 90 16 00 4C */ stw r0, 0x4c(r22)
/* 80339EC4 00335B24 7C 04 1A 14 */ add r0, r4, r3
/* 80339EC8 00335B28 90 16 00 44 */ stw r0, 0x44(r22)
lbl_80339ECC:
/* 80339ECC 00335B2C 38 60 00 00 */ li r3, 0
/* 80339ED0 00335B30 48 00 00 AC */ b lbl_80339F7C
lbl_80339ED4:
/* 80339ED4 00335B34 57 83 10 3A */ slwi r3, r28, 2
/* 80339ED8 00335B38 7C 1C B8 50 */ subf r0, r28, r23
/* 80339EDC 00335B3C 7C 76 1A 14 */ add r3, r22, r3
/* 80339EE0 00335B40 7C 09 03 A6 */ mtctr r0
/* 80339EE4 00335B44 7C 1C B8 40 */ cmplw r28, r23
/* 80339EE8 00335B48 40 80 00 58 */ bge lbl_80339F40
lbl_80339EEC:
/* 80339EEC 00335B4C 80 03 00 00 */ lwz r0, 0(r3)
/* 80339EF0 00335B50 2C 00 00 00 */ cmpwi r0, 0
/* 80339EF4 00335B54 41 82 00 40 */ beq lbl_80339F34
/* 80339EF8 00335B58 3E C0 80 61 */ lis r22, lbl_80610BD0@ha
/* 80339EFC 00335B5C 3A D6 0B D0 */ addi r22, r22, lbl_80610BD0@l
/* 80339F00 00335B60 80 16 00 4C */ lwz r0, 0x4c(r22)
/* 80339F04 00335B64 28 00 00 01 */ cmplwi r0, 1
/* 80339F08 00335B68 40 82 00 24 */ bne lbl_80339F2C
/* 80339F0C 00335B6C 4B FF F1 15 */ bl current_time_hires
/* 80339F10 00335B70 80 B6 00 40 */ lwz r5, 0x40(r22)
/* 80339F14 00335B74 38 00 00 00 */ li r0, 0
/* 80339F18 00335B78 80 96 00 44 */ lwz r4, 0x44(r22)
/* 80339F1C 00335B7C 7C 65 18 50 */ subf r3, r5, r3
/* 80339F20 00335B80 90 16 00 4C */ stw r0, 0x4c(r22)
/* 80339F24 00335B84 7C 04 1A 14 */ add r0, r4, r3
/* 80339F28 00335B88 90 16 00 44 */ stw r0, 0x44(r22)
lbl_80339F2C:
/* 80339F2C 00335B8C 38 60 00 00 */ li r3, 0
/* 80339F30 00335B90 48 00 00 4C */ b lbl_80339F7C
lbl_80339F34:
/* 80339F34 00335B94 38 63 00 04 */ addi r3, r3, 4
/* 80339F38 00335B98 3B 9C 00 01 */ addi r28, r28, 1
/* 80339F3C 00335B9C 42 00 FF B0 */ bdnz lbl_80339EEC
lbl_80339F40:
/* 80339F40 00335BA0 3E C0 80 61 */ lis r22, lbl_80610BD0@ha
/* 80339F44 00335BA4 93 3B 00 00 */ stw r25, 0(r27)
/* 80339F48 00335BA8 3A D6 0B D0 */ addi r22, r22, lbl_80610BD0@l
/* 80339F4C 00335BAC 80 16 00 4C */ lwz r0, 0x4c(r22)
/* 80339F50 00335BB0 28 00 00 01 */ cmplwi r0, 1
/* 80339F54 00335BB4 40 82 00 24 */ bne lbl_80339F78
/* 80339F58 00335BB8 4B FF F0 C9 */ bl current_time_hires
/* 80339F5C 00335BBC 80 B6 00 40 */ lwz r5, 0x40(r22)
/* 80339F60 00335BC0 38 00 00 00 */ li r0, 0
/* 80339F64 00335BC4 80 96 00 44 */ lwz r4, 0x44(r22)
/* 80339F68 00335BC8 7C 65 18 50 */ subf r3, r5, r3
/* 80339F6C 00335BCC 90 16 00 4C */ stw r0, 0x4c(r22)
/* 80339F70 00335BD0 7C 04 1A 14 */ add r0, r4, r3
/* 80339F74 00335BD4 90 16 00 44 */ stw r0, 0x44(r22)
lbl_80339F78:
/* 80339F78 00335BD8 38 60 00 01 */ li r3, 1
lbl_80339F7C:
/* 80339F7C 00335BDC 39 61 00 40 */ addi r11, r1, 0x40
/* 80339F80 00335BE0 4B E8 D1 DD */ bl _restgpr_21
/* 80339F84 00335BE4 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80339F88 00335BE8 7C 08 03 A6 */ mtlr r0
/* 80339F8C 00335BEC 38 21 00 40 */ addi r1, r1, 0x40
/* 80339F90 00335BF0 4E 80 00 20 */ blr
.global gsiLargeIntMult
gsiLargeIntMult:
/* 80339F94 00335BF4 94 21 FE C0 */ stwu r1, -0x140(r1)
/* 80339F98 00335BF8 7C 08 02 A6 */ mflr r0
/* 80339F9C 00335BFC 90 01 01 44 */ stw r0, 0x144(r1)
/* 80339FA0 00335C00 39 61 01 40 */ addi r11, r1, 0x140
/* 80339FA4 00335C04 4B E8 D1 75 */ bl _savegpr_23
/* 80339FA8 00335C08 7C 79 1B 78 */ mr r25, r3
/* 80339FAC 00335C0C 7C 9A 23 78 */ mr r26, r4
/* 80339FB0 00335C10 7C BB 2B 78 */ mr r27, r5
/* 80339FB4 00335C14 7C DC 33 78 */ mr r28, r6
/* 80339FB8 00335C18 7C FD 3B 78 */ mr r29, r7
/* 80339FBC 00335C1C 7D 1E 43 78 */ mr r30, r8
/* 80339FC0 00335C20 7D 3F 4B 78 */ mr r31, r9
/* 80339FC4 00335C24 38 61 00 08 */ addi r3, r1, 8
/* 80339FC8 00335C28 38 80 00 00 */ li r4, 0
/* 80339FCC 00335C2C 38 A0 01 04 */ li r5, 0x104
/* 80339FD0 00335C30 4B CC A1 35 */ bl memset
/* 80339FD4 00335C34 38 00 00 00 */ li r0, 0
/* 80339FD8 00335C38 3E E0 80 61 */ lis r23, lbl_80610BD0@ha
/* 80339FDC 00335C3C 90 1E 00 00 */ stw r0, 0(r30)
/* 80339FE0 00335C40 3B 17 0B D0 */ addi r24, r23, lbl_80610BD0@l
/* 80339FE4 00335C44 80 18 00 0C */ lwz r0, 0xc(r24)
/* 80339FE8 00335C48 2C 00 00 00 */ cmpwi r0, 0
/* 80339FEC 00335C4C 40 82 00 20 */ bne lbl_8033A00C
/* 80339FF0 00335C50 80 78 00 08 */ lwz r3, 8(r24)
/* 80339FF4 00335C54 38 03 00 01 */ addi r0, r3, 1
/* 80339FF8 00335C58 90 18 00 08 */ stw r0, 8(r24)
/* 80339FFC 00335C5C 4B FF F0 25 */ bl current_time_hires
/* 8033A000 00335C60 38 00 00 01 */ li r0, 1
/* 8033A004 00335C64 90 77 0B D0 */ stw r3, 0xbd0(r23)
/* 8033A008 00335C68 90 18 00 0C */ stw r0, 0xc(r24)
lbl_8033A00C:
/* 8033A00C 00335C6C 38 A0 00 00 */ li r5, 0
/* 8033A010 00335C70 48 00 01 20 */ b lbl_8033A130
lbl_8033A014:
/* 8033A014 00335C74 80 1B 00 00 */ lwz r0, 0(r27)
/* 8033A018 00335C78 2C 00 00 00 */ cmpwi r0, 0
/* 8033A01C 00335C7C 41 82 01 0C */ beq lbl_8033A128
/* 8033A020 00335C80 7F 24 CB 78 */ mr r4, r25
/* 8033A024 00335C84 38 C0 00 00 */ li r6, 0
/* 8033A028 00335C88 7F 49 03 A6 */ mtctr r26
/* 8033A02C 00335C8C 28 1A 00 00 */ cmplwi r26, 0
/* 8033A030 00335C90 40 81 00 F8 */ ble lbl_8033A128
lbl_8033A034:
/* 8033A034 00335C94 80 64 00 00 */ lwz r3, 0(r4)
/* 8033A038 00335C98 7D 25 32 14 */ add r9, r5, r6
/* 8033A03C 00335C9C 80 1B 00 00 */ lwz r0, 0(r27)
/* 8033A040 00335CA0 7C 09 F8 40 */ cmplw r9, r31
/* 8033A044 00335CA4 7C E3 00 16 */ mulhwu r7, r3, r0
/* 8033A048 00335CA8 7D 03 01 D6 */ mullw r8, r3, r0
/* 8033A04C 00335CAC 41 80 00 40 */ blt lbl_8033A08C
/* 8033A050 00335CB0 3F 40 80 61 */ lis r26, lbl_80610BD0@ha
/* 8033A054 00335CB4 3B 3A 0B D0 */ addi r25, r26, lbl_80610BD0@l
/* 8033A058 00335CB8 80 19 00 0C */ lwz r0, 0xc(r25)
/* 8033A05C 00335CBC 28 00 00 01 */ cmplwi r0, 1
/* 8033A060 00335CC0 40 82 00 24 */ bne lbl_8033A084
/* 8033A064 00335CC4 4B FF EF BD */ bl current_time_hires
/* 8033A068 00335CC8 80 BA 0B D0 */ lwz r5, 0xbd0(r26)
/* 8033A06C 00335CCC 38 00 00 00 */ li r0, 0
/* 8033A070 00335CD0 80 99 00 04 */ lwz r4, 4(r25)
/* 8033A074 00335CD4 7C 65 18 50 */ subf r3, r5, r3
/* 8033A078 00335CD8 90 19 00 0C */ stw r0, 0xc(r25)
/* 8033A07C 00335CDC 7C 04 1A 14 */ add r0, r4, r3
/* 8033A080 00335CE0 90 19 00 04 */ stw r0, 4(r25)
lbl_8033A084:
/* 8033A084 00335CE4 38 60 00 00 */ li r3, 0
/* 8033A088 00335CE8 48 00 01 2C */ b lbl_8033A1B4
lbl_8033A08C:
/* 8033A08C 00335CEC 55 20 10 3A */ slwi r0, r9, 2
/* 8033A090 00335CF0 38 61 00 08 */ addi r3, r1, 8
/* 8033A094 00335CF4 7C 63 02 14 */ add r3, r3, r0
/* 8033A098 00335CF8 48 00 00 6C */ b lbl_8033A104
lbl_8033A09C:
/* 8033A09C 00335CFC 80 03 00 04 */ lwz r0, 4(r3)
/* 8033A0A0 00335D00 39 29 00 01 */ addi r9, r9, 1
/* 8033A0A4 00335D04 7C 09 F8 40 */ cmplw r9, r31
/* 8033A0A8 00335D08 7C 08 00 14 */ addc r0, r8, r0
/* 8033A0AC 00335D0C 94 03 00 04 */ stwu r0, 4(r3)
/* 8033A0B0 00335D10 7D 07 01 94 */ addze r8, r7
/* 8033A0B4 00335D14 38 E0 00 00 */ li r7, 0
/* 8033A0B8 00335D18 41 81 00 10 */ bgt lbl_8033A0C8
/* 8033A0BC 00335D1C 40 82 00 48 */ bne lbl_8033A104
/* 8033A0C0 00335D20 2C 08 00 00 */ cmpwi r8, 0
/* 8033A0C4 00335D24 41 82 00 40 */ beq lbl_8033A104
lbl_8033A0C8:
/* 8033A0C8 00335D28 3F 40 80 61 */ lis r26, lbl_80610BD0@ha
/* 8033A0CC 00335D2C 3B 3A 0B D0 */ addi r25, r26, lbl_80610BD0@l
/* 8033A0D0 00335D30 80 19 00 0C */ lwz r0, 0xc(r25)
/* 8033A0D4 00335D34 28 00 00 01 */ cmplwi r0, 1
/* 8033A0D8 00335D38 40 82 00 24 */ bne lbl_8033A0FC
/* 8033A0DC 00335D3C 4B FF EF 45 */ bl current_time_hires
/* 8033A0E0 00335D40 80 BA 0B D0 */ lwz r5, 0xbd0(r26)
/* 8033A0E4 00335D44 38 00 00 00 */ li r0, 0
/* 8033A0E8 00335D48 80 99 00 04 */ lwz r4, 4(r25)
/* 8033A0EC 00335D4C 7C 65 18 50 */ subf r3, r5, r3
/* 8033A0F0 00335D50 90 19 00 0C */ stw r0, 0xc(r25)
/* 8033A0F4 00335D54 7C 04 1A 14 */ add r0, r4, r3
/* 8033A0F8 00335D58 90 19 00 04 */ stw r0, 4(r25)
lbl_8033A0FC:
/* 8033A0FC 00335D5C 38 60 00 00 */ li r3, 0
/* 8033A100 00335D60 48 00 00 B4 */ b lbl_8033A1B4
lbl_8033A104:
/* 8033A104 00335D64 7D 00 3B 79 */ or. r0, r8, r7
/* 8033A108 00335D68 40 82 FF 94 */ bne lbl_8033A09C
/* 8033A10C 00335D6C 80 01 00 08 */ lwz r0, 8(r1)
/* 8033A110 00335D70 7C 09 00 40 */ cmplw r9, r0
/* 8033A114 00335D74 40 81 00 08 */ ble lbl_8033A11C
/* 8033A118 00335D78 91 21 00 08 */ stw r9, 8(r1)
lbl_8033A11C:
/* 8033A11C 00335D7C 38 84 00 04 */ addi r4, r4, 4
/* 8033A120 00335D80 38 C6 00 01 */ addi r6, r6, 1
/* 8033A124 00335D84 42 00 FF 10 */ bdnz lbl_8033A034
lbl_8033A128:
/* 8033A128 00335D88 3B 7B 00 04 */ addi r27, r27, 4
/* 8033A12C 00335D8C 38 A5 00 01 */ addi r5, r5, 1
lbl_8033A130:
/* 8033A130 00335D90 7C 05 E0 40 */ cmplw r5, r28
/* 8033A134 00335D94 41 80 FE E0 */ blt lbl_8033A014
/* 8033A138 00335D98 38 61 00 08 */ addi r3, r1, 8
/* 8033A13C 00335D9C 48 00 00 10 */ b lbl_8033A14C
lbl_8033A140:
/* 8033A140 00335DA0 80 81 00 08 */ lwz r4, 8(r1)
/* 8033A144 00335DA4 38 04 FF FF */ addi r0, r4, -1
/* 8033A148 00335DA8 90 01 00 08 */ stw r0, 8(r1)
lbl_8033A14C:
/* 8033A14C 00335DAC 80 A1 00 08 */ lwz r5, 8(r1)
/* 8033A150 00335DB0 2C 05 00 00 */ cmpwi r5, 0
/* 8033A154 00335DB4 41 82 00 14 */ beq lbl_8033A168
/* 8033A158 00335DB8 54 A0 10 3A */ slwi r0, r5, 2
/* 8033A15C 00335DBC 7C 03 00 2E */ lwzx r0, r3, r0
/* 8033A160 00335DC0 2C 00 00 00 */ cmpwi r0, 0
/* 8033A164 00335DC4 41 82 FF DC */ beq lbl_8033A140
lbl_8033A168:
/* 8033A168 00335DC8 90 BE 00 00 */ stw r5, 0(r30)
/* 8033A16C 00335DCC 7F A3 EB 78 */ mr r3, r29
/* 8033A170 00335DD0 38 81 00 0C */ addi r4, r1, 0xc
/* 8033A174 00335DD4 54 A5 10 3A */ slwi r5, r5, 2
/* 8033A178 00335DD8 4B CC 9E 89 */ bl memcpy
/* 8033A17C 00335DDC 3F 40 80 61 */ lis r26, lbl_80610BD0@ha
/* 8033A180 00335DE0 3B 3A 0B D0 */ addi r25, r26, lbl_80610BD0@l
/* 8033A184 00335DE4 80 19 00 0C */ lwz r0, 0xc(r25)
/* 8033A188 00335DE8 28 00 00 01 */ cmplwi r0, 1
/* 8033A18C 00335DEC 40 82 00 24 */ bne lbl_8033A1B0
/* 8033A190 00335DF0 4B FF EE 91 */ bl current_time_hires
/* 8033A194 00335DF4 80 BA 0B D0 */ lwz r5, 0xbd0(r26)
/* 8033A198 00335DF8 38 00 00 00 */ li r0, 0
/* 8033A19C 00335DFC 80 99 00 04 */ lwz r4, 4(r25)
/* 8033A1A0 00335E00 7C 65 18 50 */ subf r3, r5, r3
/* 8033A1A4 00335E04 90 19 00 0C */ stw r0, 0xc(r25)
/* 8033A1A8 00335E08 7C 04 1A 14 */ add r0, r4, r3
/* 8033A1AC 00335E0C 90 19 00 04 */ stw r0, 4(r25)
lbl_8033A1B0:
/* 8033A1B0 00335E10 38 60 00 01 */ li r3, 1
lbl_8033A1B4:
/* 8033A1B4 00335E14 39 61 01 40 */ addi r11, r1, 0x140
/* 8033A1B8 00335E18 4B E8 CF AD */ bl _restgpr_23
/* 8033A1BC 00335E1C 80 01 01 44 */ lwz r0, 0x144(r1)
/* 8033A1C0 00335E20 7C 08 03 A6 */ mtlr r0
/* 8033A1C4 00335E24 38 21 01 40 */ addi r1, r1, 0x140
/* 8033A1C8 00335E28 4E 80 00 20 */ blr
.global gsiLargeIntDiv
gsiLargeIntDiv:
/* 8033A1CC 00335E2C 94 21 FC B0 */ stwu r1, -0x350(r1)
/* 8033A1D0 00335E30 7C 08 02 A6 */ mflr r0
/* 8033A1D4 00335E34 90 01 03 54 */ stw r0, 0x354(r1)
/* 8033A1D8 00335E38 39 61 03 50 */ addi r11, r1, 0x350
/* 8033A1DC 00335E3C 4B E8 CF 2D */ bl _savegpr_19
/* 8033A1E0 00335E40 3E 60 80 61 */ lis r19, lbl_80610BD0@ha
/* 8033A1E4 00335E44 82 E5 00 00 */ lwz r23, 0(r5)
/* 8033A1E8 00335E48 3A 73 0B D0 */ addi r19, r19, lbl_80610BD0@l
/* 8033A1EC 00335E4C 7C 9A 23 78 */ mr r26, r4
/* 8033A1F0 00335E50 80 13 00 5C */ lwz r0, 0x5c(r19)
/* 8033A1F4 00335E54 7C 79 1B 78 */ mr r25, r3
/* 8033A1F8 00335E58 7C D4 33 78 */ mr r20, r6
/* 8033A1FC 00335E5C 7C F5 3B 78 */ mr r21, r7
/* 8033A200 00335E60 2C 00 00 00 */ cmpwi r0, 0
/* 8033A204 00335E64 3B 05 00 04 */ addi r24, r5, 4
/* 8033A208 00335E68 3B 60 00 1F */ li r27, 0x1f
/* 8033A20C 00335E6C 3A C0 00 00 */ li r22, 0
/* 8033A210 00335E70 40 82 00 20 */ bne lbl_8033A230
/* 8033A214 00335E74 80 73 00 58 */ lwz r3, 0x58(r19)
/* 8033A218 00335E78 38 03 00 01 */ addi r0, r3, 1
/* 8033A21C 00335E7C 90 13 00 58 */ stw r0, 0x58(r19)
/* 8033A220 00335E80 4B FF EE 01 */ bl current_time_hires
/* 8033A224 00335E84 38 00 00 01 */ li r0, 1
/* 8033A228 00335E88 90 73 00 50 */ stw r3, 0x50(r19)
/* 8033A22C 00335E8C 90 13 00 5C */ stw r0, 0x5c(r19)
lbl_8033A230:
/* 8033A230 00335E90 28 1A 00 40 */ cmplwi r26, 0x40
/* 8033A234 00335E94 40 81 00 14 */ ble lbl_8033A248
/* 8033A238 00335E98 2C 14 00 00 */ cmpwi r20, 0
/* 8033A23C 00335E9C 41 82 00 0C */ beq lbl_8033A248
/* 8033A240 00335EA0 38 60 00 00 */ li r3, 0
/* 8033A244 00335EA4 48 00 04 20 */ b lbl_8033A664
lbl_8033A248:
/* 8033A248 00335EA8 57 40 10 3A */ slwi r0, r26, 2
/* 8033A24C 00335EAC 7C 79 02 14 */ add r3, r25, r0
/* 8033A250 00335EB0 48 00 00 0C */ b lbl_8033A25C
lbl_8033A254:
/* 8033A254 00335EB4 38 63 FF FC */ addi r3, r3, -4
/* 8033A258 00335EB8 3B 5A FF FF */ addi r26, r26, -1
lbl_8033A25C:
/* 8033A25C 00335EBC 2C 1A 00 00 */ cmpwi r26, 0
/* 8033A260 00335EC0 41 82 00 10 */ beq lbl_8033A270
/* 8033A264 00335EC4 80 03 FF FC */ lwz r0, -4(r3)
/* 8033A268 00335EC8 2C 00 00 00 */ cmpwi r0, 0
/* 8033A26C 00335ECC 41 82 FF E8 */ beq lbl_8033A254
lbl_8033A270:
/* 8033A270 00335ED0 56 E0 10 3A */ slwi r0, r23, 2
/* 8033A274 00335ED4 7C 78 02 14 */ add r3, r24, r0
/* 8033A278 00335ED8 48 00 00 0C */ b lbl_8033A284
lbl_8033A27C:
/* 8033A27C 00335EDC 38 63 FF FC */ addi r3, r3, -4
/* 8033A280 00335EE0 3A F7 FF FF */ addi r23, r23, -1
lbl_8033A284:
/* 8033A284 00335EE4 2C 17 00 00 */ cmpwi r23, 0
/* 8033A288 00335EE8 41 82 00 10 */ beq lbl_8033A298
/* 8033A28C 00335EEC 80 03 FF FC */ lwz r0, -4(r3)
/* 8033A290 00335EF0 2C 00 00 00 */ cmpwi r0, 0
/* 8033A294 00335EF4 41 82 FF E8 */ beq lbl_8033A27C
lbl_8033A298:
/* 8033A298 00335EF8 57 53 10 3A */ slwi r19, r26, 2
/* 8033A29C 00335EFC 7F 24 CB 78 */ mr r4, r25
/* 8033A2A0 00335F00 7E 65 9B 78 */ mr r5, r19
/* 8033A2A4 00335F04 38 61 00 10 */ addi r3, r1, 0x10
/* 8033A2A8 00335F08 4B CC 9D 59 */ bl memcpy
/* 8033A2AC 00335F0C 38 61 02 10 */ addi r3, r1, 0x210
/* 8033A2B0 00335F10 38 80 00 00 */ li r4, 0
/* 8033A2B4 00335F14 38 A0 01 04 */ li r5, 0x104
/* 8033A2B8 00335F18 4B CC 9E 4D */ bl memset
/* 8033A2BC 00335F1C 2C 1A 00 00 */ cmpwi r26, 0
/* 8033A2C0 00335F20 41 82 00 0C */ beq lbl_8033A2CC
/* 8033A2C4 00335F24 2C 17 00 00 */ cmpwi r23, 0
/* 8033A2C8 00335F28 40 82 00 78 */ bne lbl_8033A340
lbl_8033A2CC:
/* 8033A2CC 00335F2C 2C 14 00 00 */ cmpwi r20, 0
/* 8033A2D0 00335F30 41 82 00 10 */ beq lbl_8033A2E0
/* 8033A2D4 00335F34 38 00 00 00 */ li r0, 0
/* 8033A2D8 00335F38 90 14 00 04 */ stw r0, 4(r20)
/* 8033A2DC 00335F3C 90 14 00 00 */ stw r0, 0(r20)
lbl_8033A2E0:
/* 8033A2E0 00335F40 2C 15 00 00 */ cmpwi r21, 0
/* 8033A2E4 00335F44 41 82 00 10 */ beq lbl_8033A2F4
/* 8033A2E8 00335F48 38 00 00 00 */ li r0, 0
/* 8033A2EC 00335F4C 90 15 00 04 */ stw r0, 4(r21)
/* 8033A2F0 00335F50 90 15 00 00 */ stw r0, 0(r21)
lbl_8033A2F4:
/* 8033A2F4 00335F54 3E 60 80 61 */ lis r19, lbl_80610BD0@ha
/* 8033A2F8 00335F58 3A 73 0B D0 */ addi r19, r19, lbl_80610BD0@l
/* 8033A2FC 00335F5C 80 13 00 5C */ lwz r0, 0x5c(r19)
/* 8033A300 00335F60 28 00 00 01 */ cmplwi r0, 1
/* 8033A304 00335F64 40 82 00 24 */ bne lbl_8033A328
/* 8033A308 00335F68 4B FF ED 19 */ bl current_time_hires
/* 8033A30C 00335F6C 80 B3 00 50 */ lwz r5, 0x50(r19)
/* 8033A310 00335F70 38 00 00 00 */ li r0, 0
/* 8033A314 00335F74 80 93 00 54 */ lwz r4, 0x54(r19)
/* 8033A318 00335F78 7C 65 18 50 */ subf r3, r5, r3
/* 8033A31C 00335F7C 90 13 00 5C */ stw r0, 0x5c(r19)
/* 8033A320 00335F80 7C 04 1A 14 */ add r0, r4, r3
/* 8033A324 00335F84 90 13 00 54 */ stw r0, 0x54(r19)
lbl_8033A328:
/* 8033A328 00335F88 2C 17 00 00 */ cmpwi r23, 0
/* 8033A32C 00335F8C 40 82 00 0C */ bne lbl_8033A338
/* 8033A330 00335F90 38 60 00 00 */ li r3, 0
/* 8033A334 00335F94 48 00 03 30 */ b lbl_8033A664
lbl_8033A338:
/* 8033A338 00335F98 38 60 00 01 */ li r3, 1
/* 8033A33C 00335F9C 48 00 03 28 */ b lbl_8033A664
lbl_8033A340:
/* 8033A340 00335FA0 7F 44 D3 78 */ mr r4, r26
/* 8033A344 00335FA4 7F 05 C3 78 */ mr r5, r24
/* 8033A348 00335FA8 7E E6 BB 78 */ mr r6, r23
/* 8033A34C 00335FAC 38 61 00 10 */ addi r3, r1, 0x10
/* 8033A350 00335FB0 4B FF F5 B5 */ bl gsiLargeIntCompare
/* 8033A354 00335FB4 2C 03 FF FF */ cmpwi r3, -1
/* 8033A358 00335FB8 40 82 00 68 */ bne lbl_8033A3C0
/* 8033A35C 00335FBC 2C 14 00 00 */ cmpwi r20, 0
/* 8033A360 00335FC0 41 82 00 10 */ beq lbl_8033A370
/* 8033A364 00335FC4 38 00 00 00 */ li r0, 0
/* 8033A368 00335FC8 90 14 00 00 */ stw r0, 0(r20)
/* 8033A36C 00335FCC 90 14 00 04 */ stw r0, 4(r20)
lbl_8033A370:
/* 8033A370 00335FD0 93 55 00 00 */ stw r26, 0(r21)
/* 8033A374 00335FD4 7E 65 9B 78 */ mr r5, r19
/* 8033A378 00335FD8 38 75 00 04 */ addi r3, r21, 4
/* 8033A37C 00335FDC 38 81 00 10 */ addi r4, r1, 0x10
/* 8033A380 00335FE0 4B CC 9C 81 */ bl memcpy
/* 8033A384 00335FE4 3E 60 80 61 */ lis r19, lbl_80610BD0@ha
/* 8033A388 00335FE8 3A 73 0B D0 */ addi r19, r19, lbl_80610BD0@l
/* 8033A38C 00335FEC 80 13 00 5C */ lwz r0, 0x5c(r19)
/* 8033A390 00335FF0 28 00 00 01 */ cmplwi r0, 1
/* 8033A394 00335FF4 40 82 00 24 */ bne lbl_8033A3B8
/* 8033A398 00335FF8 4B FF EC 89 */ bl current_time_hires
/* 8033A39C 00335FFC 80 B3 00 50 */ lwz r5, 0x50(r19)
/* 8033A3A0 00336000 38 00 00 00 */ li r0, 0
/* 8033A3A4 00336004 80 93 00 54 */ lwz r4, 0x54(r19)
/* 8033A3A8 00336008 7C 65 18 50 */ subf r3, r5, r3
/* 8033A3AC 0033600C 90 13 00 5C */ stw r0, 0x5c(r19)
/* 8033A3B0 00336010 7C 04 1A 14 */ add r0, r4, r3
/* 8033A3B4 00336014 90 13 00 54 */ stw r0, 0x54(r19)
lbl_8033A3B8:
/* 8033A3B8 00336018 38 60 00 01 */ li r3, 1
/* 8033A3BC 0033601C 48 00 02 A8 */ b lbl_8033A664
lbl_8033A3C0:
/* 8033A3C0 00336020 38 17 FF FF */ addi r0, r23, -1
/* 8033A3C4 00336024 38 60 00 01 */ li r3, 1
/* 8033A3C8 00336028 54 00 10 3A */ slwi r0, r0, 2
/* 8033A3CC 0033602C 7C 98 00 2E */ lwzx r4, r24, r0
/* 8033A3D0 00336030 48 00 00 08 */ b lbl_8033A3D8
lbl_8033A3D4:
/* 8033A3D4 00336034 3B 7B FF FF */ addi r27, r27, -1
lbl_8033A3D8:
/* 8033A3D8 00336038 7C 60 D8 30 */ slw r0, r3, r27
/* 8033A3DC 0033603C 7C 00 20 39 */ and. r0, r0, r4
/* 8033A3E0 00336040 40 82 00 0C */ bne lbl_8033A3EC
/* 8033A3E4 00336044 2C 1B 00 00 */ cmpwi r27, 0
/* 8033A3E8 00336048 40 80 FF EC */ bge lbl_8033A3D4
lbl_8033A3EC:
/* 8033A3EC 0033604C 2C 1B FF FF */ cmpwi r27, -1
/* 8033A3F0 00336050 40 82 00 40 */ bne lbl_8033A430
/* 8033A3F4 00336054 3E 60 80 61 */ lis r19, lbl_80610BD0@ha
/* 8033A3F8 00336058 3A 73 0B D0 */ addi r19, r19, lbl_80610BD0@l
/* 8033A3FC 0033605C 80 13 00 5C */ lwz r0, 0x5c(r19)
/* 8033A400 00336060 28 00 00 01 */ cmplwi r0, 1
/* 8033A404 00336064 40 82 00 24 */ bne lbl_8033A428
/* 8033A408 00336068 4B FF EC 19 */ bl current_time_hires
/* 8033A40C 0033606C 80 B3 00 50 */ lwz r5, 0x50(r19)
/* 8033A410 00336070 38 00 00 00 */ li r0, 0
/* 8033A414 00336074 80 93 00 54 */ lwz r4, 0x54(r19)
/* 8033A418 00336078 7C 65 18 50 */ subf r3, r5, r3
/* 8033A41C 0033607C 90 13 00 5C */ stw r0, 0x5c(r19)
/* 8033A420 00336080 7C 04 1A 14 */ add r0, r4, r3
/* 8033A424 00336084 90 13 00 54 */ stw r0, 0x54(r19)
lbl_8033A428:
/* 8033A428 00336088 38 60 00 00 */ li r3, 0
/* 8033A42C 0033608C 48 00 02 38 */ b lbl_8033A664
lbl_8033A430:
/* 8033A430 00336090 38 17 FF FF */ addi r0, r23, -1
/* 8033A434 00336094 7E F9 BB 78 */ mr r25, r23
/* 8033A438 00336098 54 00 28 34 */ slwi r0, r0, 5
/* 8033A43C 0033609C 7F 57 D0 50 */ subf r26, r23, r26
/* 8033A440 003360A0 7F 7B 02 14 */ add r27, r27, r0
/* 8033A444 003360A4 3B C1 02 10 */ addi r30, r1, 0x210
/* 8033A448 003360A8 3A 61 00 10 */ addi r19, r1, 0x10
/* 8033A44C 003360AC 3B E0 00 00 */ li r31, 0
lbl_8033A450:
/* 8033A450 003360B0 57 5C 10 3A */ slwi r28, r26, 2
/* 8033A454 003360B4 38 61 00 10 */ addi r3, r1, 0x10
/* 8033A458 003360B8 7F 24 CB 78 */ mr r4, r25
/* 8033A45C 003360BC 7F 05 C3 78 */ mr r5, r24
/* 8033A460 003360C0 7E E6 BB 78 */ mr r6, r23
/* 8033A464 003360C4 7C 63 E2 14 */ add r3, r3, r28
/* 8033A468 003360C8 4B FF F4 9D */ bl gsiLargeIntCompare
/* 8033A46C 003360CC 2C 03 FF FF */ cmpwi r3, -1
/* 8033A470 003360D0 40 82 00 20 */ bne lbl_8033A490
/* 8033A474 003360D4 2C 1A 00 00 */ cmpwi r26, 0
/* 8033A478 003360D8 40 81 00 10 */ ble lbl_8033A488
/* 8033A47C 003360DC 3B 5A FF FF */ addi r26, r26, -1
/* 8033A480 003360E0 3B 39 00 01 */ addi r25, r25, 1
/* 8033A484 003360E4 48 00 01 48 */ b lbl_8033A5CC
lbl_8033A488:
/* 8033A488 003360E8 3A C0 00 01 */ li r22, 1
/* 8033A48C 003360EC 48 00 01 40 */ b lbl_8033A5CC
lbl_8033A490:
/* 8033A490 003360F0 2C 03 00 00 */ cmpwi r3, 0
/* 8033A494 003360F4 40 82 00 50 */ bne lbl_8033A4E4
/* 8033A498 003360F8 38 61 00 10 */ addi r3, r1, 0x10
/* 8033A49C 003360FC 57 25 10 3A */ slwi r5, r25, 2
/* 8033A4A0 00336100 7C 63 E2 14 */ add r3, r3, r28
/* 8033A4A4 00336104 38 80 00 00 */ li r4, 0
/* 8033A4A8 00336108 4B CC 9C 5D */ bl memset
/* 8033A4AC 0033610C 7C 9E E2 14 */ add r4, r30, r28
/* 8033A4B0 00336110 7C BA CA 14 */ add r5, r26, r25
/* 8033A4B4 00336114 80 64 00 04 */ lwz r3, 4(r4)
/* 8033A4B8 00336118 38 03 00 01 */ addi r0, r3, 1
/* 8033A4BC 0033611C 90 04 00 04 */ stw r0, 4(r4)
/* 8033A4C0 00336120 80 01 02 10 */ lwz r0, 0x210(r1)
/* 8033A4C4 00336124 7C 00 28 40 */ cmplw r0, r5
/* 8033A4C8 00336128 40 80 00 08 */ bge lbl_8033A4D0
/* 8033A4CC 0033612C 90 A1 02 10 */ stw r5, 0x210(r1)
lbl_8033A4D0:
/* 8033A4D0 00336130 7F 59 D0 51 */ subf. r26, r25, r26
/* 8033A4D4 00336134 3B 20 00 01 */ li r25, 1
/* 8033A4D8 00336138 40 80 00 F4 */ bge lbl_8033A5CC
/* 8033A4DC 0033613C 3A C0 00 01 */ li r22, 1
/* 8033A4E0 00336140 48 00 00 EC */ b lbl_8033A5CC
lbl_8033A4E4:
/* 8033A4E4 00336144 3B A1 00 10 */ addi r29, r1, 0x10
/* 8033A4E8 00336148 93 E1 00 08 */ stw r31, 8(r1)
/* 8033A4EC 0033614C 7F BD E2 14 */ add r29, r29, r28
/* 8033A4F0 00336150 7F 24 CB 78 */ mr r4, r25
/* 8033A4F4 00336154 7F A3 EB 78 */ mr r3, r29
/* 8033A4F8 00336158 7F 05 C3 78 */ mr r5, r24
/* 8033A4FC 0033615C 7E E6 BB 78 */ mr r6, r23
/* 8033A500 00336160 7F 67 DB 78 */ mr r7, r27
/* 8033A504 00336164 39 01 00 08 */ addi r8, r1, 8
/* 8033A508 00336168 48 00 01 75 */ bl gsiLargeIntSubDivide
/* 8033A50C 0033616C 2C 03 00 00 */ cmpwi r3, 0
/* 8033A510 00336170 40 82 00 40 */ bne lbl_8033A550
/* 8033A514 00336174 3E 60 80 61 */ lis r19, lbl_80610BD0@ha
/* 8033A518 00336178 3A 73 0B D0 */ addi r19, r19, lbl_80610BD0@l
/* 8033A51C 0033617C 80 13 00 5C */ lwz r0, 0x5c(r19)
/* 8033A520 00336180 28 00 00 01 */ cmplwi r0, 1
/* 8033A524 00336184 40 82 00 24 */ bne lbl_8033A548
/* 8033A528 00336188 4B FF EA F9 */ bl current_time_hires
/* 8033A52C 0033618C 80 B3 00 50 */ lwz r5, 0x50(r19)
/* 8033A530 00336190 38 00 00 00 */ li r0, 0
/* 8033A534 00336194 80 93 00 54 */ lwz r4, 0x54(r19)
/* 8033A538 00336198 7C 65 18 50 */ subf r3, r5, r3
/* 8033A53C 0033619C 90 13 00 5C */ stw r0, 0x5c(r19)
/* 8033A540 003361A0 7C 04 1A 14 */ add r0, r4, r3
/* 8033A544 003361A4 90 13 00 54 */ stw r0, 0x54(r19)
lbl_8033A548:
/* 8033A548 003361A8 38 60 00 00 */ li r3, 0
/* 8033A54C 003361AC 48 00 01 18 */ b lbl_8033A664
lbl_8033A550:
/* 8033A550 003361B0 7C 9E E2 14 */ add r4, r30, r28
/* 8033A554 003361B4 80 01 00 08 */ lwz r0, 8(r1)
/* 8033A558 003361B8 80 64 00 04 */ lwz r3, 4(r4)
/* 8033A55C 003361BC 7C BA CA 14 */ add r5, r26, r25
/* 8033A560 003361C0 7C 03 02 14 */ add r0, r3, r0
/* 8033A564 003361C4 90 04 00 04 */ stw r0, 4(r4)
/* 8033A568 003361C8 80 01 02 10 */ lwz r0, 0x210(r1)
/* 8033A56C 003361CC 7C 00 28 40 */ cmplw r0, r5
/* 8033A570 003361D0 40 80 00 08 */ bge lbl_8033A578
/* 8033A574 003361D4 90 A1 02 10 */ stw r5, 0x210(r1)
lbl_8033A578:
/* 8033A578 003361D8 57 20 10 3A */ slwi r0, r25, 2
/* 8033A57C 003361DC 7C 7D 02 14 */ add r3, r29, r0
/* 8033A580 003361E0 48 00 00 0C */ b lbl_8033A58C
lbl_8033A584:
/* 8033A584 003361E4 38 63 FF FC */ addi r3, r3, -4
/* 8033A588 003361E8 3B 39 FF FF */ addi r25, r25, -1
lbl_8033A58C:
/* 8033A58C 003361EC 80 03 FF FC */ lwz r0, -4(r3)
/* 8033A590 003361F0 2C 00 00 00 */ cmpwi r0, 0
/* 8033A594 003361F4 40 82 00 0C */ bne lbl_8033A5A0
/* 8033A598 003361F8 2C 19 00 01 */ cmpwi r25, 1
/* 8033A59C 003361FC 41 81 FF E8 */ bgt lbl_8033A584
lbl_8033A5A0:
/* 8033A5A0 00336200 57 20 10 3A */ slwi r0, r25, 2
/* 8033A5A4 00336204 7C 1C 02 14 */ add r0, r28, r0
/* 8033A5A8 00336208 7C 73 02 14 */ add r3, r19, r0
/* 8033A5AC 0033620C 48 00 00 0C */ b lbl_8033A5B8
lbl_8033A5B0:
/* 8033A5B0 00336210 38 63 FF FC */ addi r3, r3, -4
/* 8033A5B4 00336214 3B 5A FF FF */ addi r26, r26, -1
lbl_8033A5B8:
/* 8033A5B8 00336218 80 03 FF FC */ lwz r0, -4(r3)
/* 8033A5BC 0033621C 2C 00 00 00 */ cmpwi r0, 0
/* 8033A5C0 00336220 40 82 00 0C */ bne lbl_8033A5CC
/* 8033A5C4 00336224 2C 1A 00 01 */ cmpwi r26, 1
/* 8033A5C8 00336228 41 81 FF E8 */ bgt lbl_8033A5B0
lbl_8033A5CC:
/* 8033A5CC 0033622C 2C 16 00 00 */ cmpwi r22, 0
/* 8033A5D0 00336230 41 82 FE 80 */ beq lbl_8033A450
/* 8033A5D4 00336234 2C 1A 00 00 */ cmpwi r26, 0
/* 8033A5D8 00336238 41 80 00 24 */ blt lbl_8033A5FC
/* 8033A5DC 0033623C 57 40 10 3A */ slwi r0, r26, 2
/* 8033A5E0 00336240 38 81 00 10 */ addi r4, r1, 0x10
/* 8033A5E4 00336244 38 75 00 04 */ addi r3, r21, 4
/* 8033A5E8 00336248 57 25 10 3A */ slwi r5, r25, 2
/* 8033A5EC 0033624C 7C 84 02 14 */ add r4, r4, r0
/* 8033A5F0 00336250 4B CC 9A 11 */ bl memcpy
/* 8033A5F4 00336254 93 35 00 00 */ stw r25, 0(r21)
/* 8033A5F8 00336258 48 00 00 10 */ b lbl_8033A608
lbl_8033A5FC:
/* 8033A5FC 0033625C 38 00 00 00 */ li r0, 0
/* 8033A600 00336260 90 15 00 04 */ stw r0, 4(r21)
/* 8033A604 00336264 90 15 00 00 */ stw r0, 0(r21)
lbl_8033A608:
/* 8033A608 00336268 2C 14 00 00 */ cmpwi r20, 0
/* 8033A60C 0033626C 41 82 00 20 */ beq lbl_8033A62C
/* 8033A610 00336270 80 01 02 10 */ lwz r0, 0x210(r1)
/* 8033A614 00336274 38 74 00 04 */ addi r3, r20, 4
/* 8033A618 00336278 38 81 02 14 */ addi r4, r1, 0x214
/* 8033A61C 0033627C 54 05 10 3A */ slwi r5, r0, 2
/* 8033A620 00336280 4B CC 99 E1 */ bl memcpy
/* 8033A624 00336284 80 01 02 10 */ lwz r0, 0x210(r1)
/* 8033A628 00336288 90 14 00 00 */ stw r0, 0(r20)
lbl_8033A62C:
/* 8033A62C 0033628C 3E 80 80 61 */ lis r20, lbl_80610BD0@ha
/* 8033A630 00336290 3A 94 0B D0 */ addi r20, r20, lbl_80610BD0@l
/* 8033A634 00336294 80 14 00 5C */ lwz r0, 0x5c(r20)
/* 8033A638 00336298 28 00 00 01 */ cmplwi r0, 1
/* 8033A63C 0033629C 40 82 00 24 */ bne lbl_8033A660
/* 8033A640 003362A0 4B FF E9 E1 */ bl current_time_hires
/* 8033A644 003362A4 80 B4 00 50 */ lwz r5, 0x50(r20)
/* 8033A648 003362A8 38 00 00 00 */ li r0, 0
/* 8033A64C 003362AC 80 94 00 54 */ lwz r4, 0x54(r20)
/* 8033A650 003362B0 7C 65 18 50 */ subf r3, r5, r3
/* 8033A654 003362B4 90 14 00 5C */ stw r0, 0x5c(r20)
/* 8033A658 003362B8 7C 04 1A 14 */ add r0, r4, r3
/* 8033A65C 003362BC 90 14 00 54 */ stw r0, 0x54(r20)
lbl_8033A660:
/* 8033A660 003362C0 38 60 00 01 */ li r3, 1
lbl_8033A664:
/* 8033A664 003362C4 39 61 03 50 */ addi r11, r1, 0x350
/* 8033A668 003362C8 4B E8 CA ED */ bl _restgpr_19
/* 8033A66C 003362CC 80 01 03 54 */ lwz r0, 0x354(r1)
/* 8033A670 003362D0 7C 08 03 A6 */ mtlr r0
/* 8033A674 003362D4 38 21 03 50 */ addi r1, r1, 0x350
/* 8033A678 003362D8 4E 80 00 20 */ blr
.global gsiLargeIntSubDivide
gsiLargeIntSubDivide:
/* 8033A67C 003362DC 94 21 FD D0 */ stwu r1, -0x230(r1)
/* 8033A680 003362E0 7C 08 02 A6 */ mflr r0
/* 8033A684 003362E4 90 01 02 34 */ stw r0, 0x234(r1)
/* 8033A688 003362E8 39 61 02 30 */ addi r11, r1, 0x230
/* 8033A68C 003362EC 4B E8 CA 99 */ bl _savegpr_26
/* 8033A690 003362F0 3F 60 80 61 */ lis r27, lbl_80610BD0@ha
/* 8033A694 003362F4 90 81 00 08 */ stw r4, 8(r1)
/* 8033A698 003362F8 3B 7B 0B D0 */ addi r27, r27, lbl_80610BD0@l
/* 8033A69C 003362FC 7C 7C 1B 78 */ mr r28, r3
/* 8033A6A0 00336300 80 1B 00 6C */ lwz r0, 0x6c(r27)
/* 8033A6A4 00336304 7C BD 2B 78 */ mr r29, r5
/* 8033A6A8 00336308 7C DE 33 78 */ mr r30, r6
/* 8033A6AC 0033630C 7D 1F 43 78 */ mr r31, r8
/* 8033A6B0 00336310 2C 00 00 00 */ cmpwi r0, 0
/* 8033A6B4 00336314 40 82 00 20 */ bne lbl_8033A6D4
/* 8033A6B8 00336318 80 7B 00 68 */ lwz r3, 0x68(r27)
/* 8033A6BC 0033631C 38 03 00 01 */ addi r0, r3, 1
/* 8033A6C0 00336320 90 1B 00 68 */ stw r0, 0x68(r27)
/* 8033A6C4 00336324 4B FF E9 5D */ bl current_time_hires
/* 8033A6C8 00336328 38 00 00 01 */ li r0, 1
/* 8033A6CC 0033632C 90 7B 00 60 */ stw r3, 0x60(r27)
/* 8033A6D0 00336330 90 1B 00 6C */ stw r0, 0x6c(r27)
lbl_8033A6D4:
/* 8033A6D4 00336334 80 81 00 08 */ lwz r4, 8(r1)
/* 8033A6D8 00336338 7C 04 F0 40 */ cmplw r4, r30
/* 8033A6DC 0033633C 40 81 00 30 */ ble lbl_8033A70C
/* 8033A6E0 00336340 38 64 FF FE */ addi r3, r4, -2
/* 8033A6E4 00336344 38 1E FF FF */ addi r0, r30, -1
/* 8033A6E8 00336348 38 84 FF FF */ addi r4, r4, -1
/* 8033A6EC 0033634C 54 63 10 3A */ slwi r3, r3, 2
/* 8033A6F0 00336350 54 00 10 3A */ slwi r0, r0, 2
/* 8033A6F4 00336354 54 84 10 3A */ slwi r4, r4, 2
/* 8033A6F8 00336358 7C 7C 18 2E */ lwzx r3, r28, r3
/* 8033A6FC 0033635C 7C 1D 00 2E */ lwzx r0, r29, r0
/* 8033A700 00336360 7F 5C 20 2E */ lwzx r26, r28, r4
/* 8033A704 00336364 7C 64 00 38 */ and r4, r3, r0
/* 8033A708 00336368 48 00 00 14 */ b lbl_8033A71C
lbl_8033A70C:
/* 8033A70C 0033636C 38 04 FF FF */ addi r0, r4, -1
/* 8033A710 00336370 3B 40 00 00 */ li r26, 0
/* 8033A714 00336374 54 00 10 3A */ slwi r0, r0, 2
/* 8033A718 00336378 7C 9C 00 2E */ lwzx r4, r28, r0
lbl_8033A71C:
/* 8033A71C 0033637C 38 1E FF FF */ addi r0, r30, -1
/* 8033A720 00336380 7F 43 D3 78 */ mr r3, r26
/* 8033A724 00336384 54 00 10 3A */ slwi r0, r0, 2
/* 8033A728 00336388 38 A0 00 00 */ li r5, 0
/* 8033A72C 0033638C 7C DD 00 2E */ lwzx r6, r29, r0
/* 8033A730 00336390 4B E8 CA 5D */ bl __div2u
/* 8033A734 00336394 7C 9B 23 78 */ mr r27, r4
/* 8033A738 00336398 7C 7A 1B 78 */ mr r26, r3
/* 8033A73C 0033639C 38 61 00 0C */ addi r3, r1, 0xc
/* 8033A740 003363A0 38 80 00 00 */ li r4, 0
/* 8033A744 003363A4 38 A0 01 04 */ li r5, 0x104
/* 8033A748 003363A8 4B CC 99 BD */ bl memset
/* 8033A74C 003363AC 2C 1A 00 00 */ cmpwi r26, 0
/* 8033A750 003363B0 93 61 00 10 */ stw r27, 0x10(r1)
/* 8033A754 003363B4 93 41 00 14 */ stw r26, 0x14(r1)
/* 8033A758 003363B8 41 82 00 14 */ beq lbl_8033A76C
/* 8033A75C 003363BC 38 60 FF FF */ li r3, -1
/* 8033A760 003363C0 38 00 00 00 */ li r0, 0
/* 8033A764 003363C4 90 61 00 10 */ stw r3, 0x10(r1)
/* 8033A768 003363C8 90 01 00 14 */ stw r0, 0x14(r1)
lbl_8033A76C:
/* 8033A76C 003363CC 38 00 00 01 */ li r0, 1
/* 8033A770 003363D0 7F A3 EB 78 */ mr r3, r29
/* 8033A774 003363D4 90 01 00 0C */ stw r0, 0xc(r1)
/* 8033A778 003363D8 7F C4 F3 78 */ mr r4, r30
/* 8033A77C 003363DC 38 A1 00 10 */ addi r5, r1, 0x10
/* 8033A780 003363E0 38 E1 01 14 */ addi r7, r1, 0x114
/* 8033A784 003363E4 39 01 01 10 */ addi r8, r1, 0x110
/* 8033A788 003363E8 38 C0 00 01 */ li r6, 1
/* 8033A78C 003363EC 39 20 00 40 */ li r9, 0x40
/* 8033A790 003363F0 4B FF F8 05 */ bl gsiLargeIntMult
/* 8033A794 003363F4 2C 03 00 00 */ cmpwi r3, 0
/* 8033A798 003363F8 40 82 00 B4 */ bne lbl_8033A84C
/* 8033A79C 003363FC 3F 80 80 61 */ lis r28, lbl_80610BD0@ha
/* 8033A7A0 00336400 3B 9C 0B D0 */ addi r28, r28, lbl_80610BD0@l
/* 8033A7A4 00336404 80 1C 00 6C */ lwz r0, 0x6c(r28)
/* 8033A7A8 00336408 28 00 00 01 */ cmplwi r0, 1
/* 8033A7AC 0033640C 40 82 00 24 */ bne lbl_8033A7D0
/* 8033A7B0 00336410 4B FF E8 71 */ bl current_time_hires
/* 8033A7B4 00336414 80 BC 00 60 */ lwz r5, 0x60(r28)
/* 8033A7B8 00336418 38 00 00 00 */ li r0, 0
/* 8033A7BC 0033641C 80 9C 00 64 */ lwz r4, 0x64(r28)
/* 8033A7C0 00336420 7C 65 18 50 */ subf r3, r5, r3
/* 8033A7C4 00336424 90 1C 00 6C */ stw r0, 0x6c(r28)
/* 8033A7C8 00336428 7C 04 1A 14 */ add r0, r4, r3
/* 8033A7CC 0033642C 90 1C 00 64 */ stw r0, 0x64(r28)
lbl_8033A7D0:
/* 8033A7D0 00336430 38 60 00 00 */ li r3, 0
/* 8033A7D4 00336434 48 00 00 F0 */ b lbl_8033A8C4
/* 8033A7D8 00336438 48 00 00 74 */ b lbl_8033A84C
lbl_8033A7DC:
/* 8033A7DC 0033643C 80 01 00 10 */ lwz r0, 0x10(r1)
/* 8033A7E0 00336440 7F A3 EB 78 */ mr r3, r29
/* 8033A7E4 00336444 80 C1 00 0C */ lwz r6, 0xc(r1)
/* 8033A7E8 00336448 7F C4 F3 78 */ mr r4, r30
/* 8033A7EC 0033644C 54 00 F8 7E */ srwi r0, r0, 1
/* 8033A7F0 00336450 38 A1 00 10 */ addi r5, r1, 0x10
/* 8033A7F4 00336454 90 01 00 10 */ stw r0, 0x10(r1)
/* 8033A7F8 00336458 38 E1 01 14 */ addi r7, r1, 0x114
/* 8033A7FC 0033645C 39 01 01 10 */ addi r8, r1, 0x110
/* 8033A800 00336460 39 20 00 40 */ li r9, 0x40
/* 8033A804 00336464 4B FF F7 91 */ bl gsiLargeIntMult
/* 8033A808 00336468 2C 03 00 00 */ cmpwi r3, 0
/* 8033A80C 0033646C 40 82 00 40 */ bne lbl_8033A84C
/* 8033A810 00336470 3F 80 80 61 */ lis r28, lbl_80610BD0@ha
/* 8033A814 00336474 3B 9C 0B D0 */ addi r28, r28, lbl_80610BD0@l
/* 8033A818 00336478 80 1C 00 6C */ lwz r0, 0x6c(r28)
/* 8033A81C 0033647C 28 00 00 01 */ cmplwi r0, 1
/* 8033A820 00336480 40 82 00 24 */ bne lbl_8033A844
/* 8033A824 00336484 4B FF E7 FD */ bl current_time_hires
/* 8033A828 00336488 80 BC 00 60 */ lwz r5, 0x60(r28)
/* 8033A82C 0033648C 38 00 00 00 */ li r0, 0
/* 8033A830 00336490 80 9C 00 64 */ lwz r4, 0x64(r28)
/* 8033A834 00336494 7C 65 18 50 */ subf r3, r5, r3
/* 8033A838 00336498 90 1C 00 6C */ stw r0, 0x6c(r28)
/* 8033A83C 0033649C 7C 04 1A 14 */ add r0, r4, r3
/* 8033A840 003364A0 90 1C 00 64 */ stw r0, 0x64(r28)
lbl_8033A844:
/* 8033A844 003364A4 38 60 00 00 */ li r3, 0
/* 8033A848 003364A8 48 00 00 7C */ b lbl_8033A8C4
lbl_8033A84C:
/* 8033A84C 003364AC 80 81 01 10 */ lwz r4, 0x110(r1)
/* 8033A850 003364B0 7F 85 E3 78 */ mr r5, r28
/* 8033A854 003364B4 80 C1 00 08 */ lwz r6, 8(r1)
/* 8033A858 003364B8 38 61 01 14 */ addi r3, r1, 0x114
/* 8033A85C 003364BC 4B FF F0 A9 */ bl gsiLargeIntCompare
/* 8033A860 003364C0 2C 03 00 01 */ cmpwi r3, 1
/* 8033A864 003364C4 41 82 FF 78 */ beq lbl_8033A7DC
/* 8033A868 003364C8 80 81 01 10 */ lwz r4, 0x110(r1)
/* 8033A86C 003364CC 7F 85 E3 78 */ mr r5, r28
/* 8033A870 003364D0 80 C1 00 08 */ lwz r6, 8(r1)
/* 8033A874 003364D4 7F 87 E3 78 */ mr r7, r28
/* 8033A878 003364D8 38 61 01 14 */ addi r3, r1, 0x114
/* 8033A87C 003364DC 39 01 00 08 */ addi r8, r1, 8
/* 8033A880 003364E0 4B FF F3 C9 */ bl gsiLargeIntSub
/* 8033A884 003364E4 80 01 00 10 */ lwz r0, 0x10(r1)
/* 8033A888 003364E8 3F 80 80 61 */ lis r28, lbl_80610BD0@ha
/* 8033A88C 003364EC 3B 9C 0B D0 */ addi r28, r28, lbl_80610BD0@l
/* 8033A890 003364F0 90 1F 00 00 */ stw r0, 0(r31)
/* 8033A894 003364F4 80 1C 00 6C */ lwz r0, 0x6c(r28)
/* 8033A898 003364F8 28 00 00 01 */ cmplwi r0, 1
/* 8033A89C 003364FC 40 82 00 24 */ bne lbl_8033A8C0
/* 8033A8A0 00336500 4B FF E7 81 */ bl current_time_hires
/* 8033A8A4 00336504 80 BC 00 60 */ lwz r5, 0x60(r28)
/* 8033A8A8 00336508 38 00 00 00 */ li r0, 0
/* 8033A8AC 0033650C 80 9C 00 64 */ lwz r4, 0x64(r28)
/* 8033A8B0 00336510 7C 65 18 50 */ subf r3, r5, r3
/* 8033A8B4 00336514 90 1C 00 6C */ stw r0, 0x6c(r28)
/* 8033A8B8 00336518 7C 04 1A 14 */ add r0, r4, r3
/* 8033A8BC 0033651C 90 1C 00 64 */ stw r0, 0x64(r28)
lbl_8033A8C0:
/* 8033A8C0 00336520 38 60 00 01 */ li r3, 1
lbl_8033A8C4:
/* 8033A8C4 00336524 39 61 02 30 */ addi r11, r1, 0x230
/* 8033A8C8 00336528 4B E8 C8 A9 */ bl _restgpr_26
/* 8033A8CC 0033652C 80 01 02 34 */ lwz r0, 0x234(r1)
/* 8033A8D0 00336530 7C 08 03 A6 */ mtlr r0
/* 8033A8D4 00336534 38 21 02 30 */ addi r1, r1, 0x230
/* 8033A8D8 00336538 4E 80 00 20 */ blr
.global gsLargeIntKMult
gsLargeIntKMult:
/* 8033A8DC 0033653C 94 21 FC D0 */ stwu r1, -0x330(r1)
/* 8033A8E0 00336540 7C 08 02 A6 */ mflr r0
/* 8033A8E4 00336544 80 E3 00 00 */ lwz r7, 0(r3)
/* 8033A8E8 00336548 90 01 03 34 */ stw r0, 0x334(r1)
/* 8033A8EC 0033654C 38 00 00 00 */ li r0, 0
/* 8033A8F0 00336550 2C 07 00 00 */ cmpwi r7, 0
/* 8033A8F4 00336554 93 E1 03 2C */ stw r31, 0x32c(r1)
/* 8033A8F8 00336558 7C BF 2B 78 */ mr r31, r5
/* 8033A8FC 0033655C 93 C1 03 28 */ stw r30, 0x328(r1)
/* 8033A900 00336560 93 A1 03 24 */ stw r29, 0x324(r1)
/* 8033A904 00336564 7C 9D 23 78 */ mr r29, r4
/* 8033A908 00336568 93 81 03 20 */ stw r28, 0x320(r1)
/* 8033A90C 0033656C 7C 7C 1B 78 */ mr r28, r3
/* 8033A910 00336570 90 01 00 08 */ stw r0, 8(r1)
/* 8033A914 00336574 41 82 00 10 */ beq lbl_8033A924
/* 8033A918 00336578 80 C4 00 00 */ lwz r6, 0(r4)
/* 8033A91C 0033657C 2C 06 00 00 */ cmpwi r6, 0
/* 8033A920 00336580 40 82 00 14 */ bne lbl_8033A934
lbl_8033A924:
/* 8033A924 00336584 38 00 00 00 */ li r0, 0
/* 8033A928 00336588 38 60 00 01 */ li r3, 1
/* 8033A92C 0033658C 90 05 00 00 */ stw r0, 0(r5)
/* 8033A930 00336590 48 00 02 20 */ b lbl_8033AB50
lbl_8033A934:
/* 8033A934 00336594 7C 07 30 40 */ cmplw r7, r6
/* 8033A938 00336598 7C C0 33 78 */ mr r0, r6
/* 8033A93C 0033659C 40 81 00 08 */ ble lbl_8033A944
/* 8033A940 003365A0 7C E0 3B 78 */ mr r0, r7
lbl_8033A944:
/* 8033A944 003365A4 28 00 00 20 */ cmplwi r0, 0x20
/* 8033A948 003365A8 40 80 00 44 */ bge lbl_8033A98C
/* 8033A94C 003365AC 7C E4 3B 78 */ mr r4, r7
/* 8033A950 003365B0 7F E8 FB 78 */ mr r8, r31
/* 8033A954 003365B4 38 BD 00 04 */ addi r5, r29, 4
/* 8033A958 003365B8 38 FF 00 04 */ addi r7, r31, 4
/* 8033A95C 003365BC 39 20 00 40 */ li r9, 0x40
/* 8033A960 003365C0 38 63 00 04 */ addi r3, r3, 4
/* 8033A964 003365C4 4B FF F6 31 */ bl gsiLargeIntMult
/* 8033A968 003365C8 2C 03 00 00 */ cmpwi r3, 0
/* 8033A96C 003365CC 7C 7E 1B 78 */ mr r30, r3
/* 8033A970 003365D0 40 82 00 14 */ bne lbl_8033A984
/* 8033A974 003365D4 7F E3 FB 78 */ mr r3, r31
/* 8033A978 003365D8 38 80 00 00 */ li r4, 0
/* 8033A97C 003365DC 38 A0 01 04 */ li r5, 0x104
/* 8033A980 003365E0 4B CC 97 85 */ bl memset
lbl_8033A984:
/* 8033A984 003365E4 7F C3 F3 78 */ mr r3, r30
/* 8033A988 003365E8 48 00 01 C8 */ b lbl_8033AB50
lbl_8033A98C:
/* 8033A98C 003365EC 7F 83 E3 78 */ mr r3, r28
/* 8033A990 003365F0 7F A4 EB 78 */ mr r4, r29
/* 8033A994 003365F4 38 A1 00 08 */ addi r5, r1, 8
/* 8033A998 003365F8 4B FF EE D1 */ bl gsiLargeIntSizePower2
/* 8033A99C 003365FC 2C 03 00 00 */ cmpwi r3, 0
/* 8033A9A0 00336600 41 82 00 10 */ beq lbl_8033A9B0
/* 8033A9A4 00336604 80 01 00 08 */ lwz r0, 8(r1)
/* 8033A9A8 00336608 28 00 00 20 */ cmplwi r0, 0x20
/* 8033A9AC 0033660C 40 81 00 48 */ ble lbl_8033A9F4
lbl_8033A9B0:
/* 8033A9B0 00336610 80 9C 00 00 */ lwz r4, 0(r28)
/* 8033A9B4 00336614 7F E8 FB 78 */ mr r8, r31
/* 8033A9B8 00336618 80 DD 00 00 */ lwz r6, 0(r29)
/* 8033A9BC 0033661C 38 7C 00 04 */ addi r3, r28, 4
/* 8033A9C0 00336620 38 BD 00 04 */ addi r5, r29, 4
/* 8033A9C4 00336624 38 FF 00 04 */ addi r7, r31, 4
/* 8033A9C8 00336628 39 20 00 40 */ li r9, 0x40
/* 8033A9CC 0033662C 4B FF F5 C9 */ bl gsiLargeIntMult
/* 8033A9D0 00336630 2C 03 00 00 */ cmpwi r3, 0
/* 8033A9D4 00336634 7C 7E 1B 78 */ mr r30, r3
/* 8033A9D8 00336638 40 82 00 14 */ bne lbl_8033A9EC
/* 8033A9DC 0033663C 7F E3 FB 78 */ mr r3, r31
/* 8033A9E0 00336640 38 80 00 00 */ li r4, 0
/* 8033A9E4 00336644 38 A0 01 04 */ li r5, 0x104
/* 8033A9E8 00336648 4B CC 97 1D */ bl memset
lbl_8033A9EC:
/* 8033A9EC 0033664C 7F C3 F3 78 */ mr r3, r30
/* 8033A9F0 00336650 48 00 01 60 */ b lbl_8033AB50
lbl_8033A9F4:
/* 8033A9F4 00336654 3F C0 80 61 */ lis r30, lbl_80610BD0@ha
/* 8033A9F8 00336658 3B DE 0B D0 */ addi r30, r30, lbl_80610BD0@l
/* 8033A9FC 0033665C 80 1E 00 2C */ lwz r0, 0x2c(r30)
/* 8033AA00 00336660 2C 00 00 00 */ cmpwi r0, 0
/* 8033AA04 00336664 40 82 00 20 */ bne lbl_8033AA24
/* 8033AA08 00336668 80 7E 00 28 */ lwz r3, 0x28(r30)
/* 8033AA0C 0033666C 38 03 00 01 */ addi r0, r3, 1
/* 8033AA10 00336670 90 1E 00 28 */ stw r0, 0x28(r30)
/* 8033AA14 00336674 4B FF E6 0D */ bl current_time_hires
/* 8033AA18 00336678 38 00 00 01 */ li r0, 1
/* 8033AA1C 0033667C 90 7E 00 20 */ stw r3, 0x20(r30)
/* 8033AA20 00336680 90 1E 00 2C */ stw r0, 0x2c(r30)
lbl_8033AA24:
/* 8033AA24 00336684 38 61 02 14 */ addi r3, r1, 0x214
/* 8033AA28 00336688 38 80 00 00 */ li r4, 0
/* 8033AA2C 0033668C 38 A0 01 04 */ li r5, 0x104
/* 8033AA30 00336690 4B CC 96 D5 */ bl memset
/* 8033AA34 00336694 80 A1 00 08 */ lwz r5, 8(r1)
/* 8033AA38 00336698 38 60 00 00 */ li r3, 0
/* 8033AA3C 0033669C 80 1C 00 00 */ lwz r0, 0(r28)
/* 8033AA40 003366A0 90 61 02 14 */ stw r3, 0x214(r1)
/* 8033AA44 003366A4 7C 00 28 40 */ cmplw r0, r5
/* 8033AA48 003366A8 40 82 00 10 */ bne lbl_8033AA58
/* 8033AA4C 003366AC 80 1D 00 00 */ lwz r0, 0(r29)
/* 8033AA50 003366B0 7C 00 28 40 */ cmplw r0, r5
/* 8033AA54 003366B4 41 82 00 60 */ beq lbl_8033AAB4
lbl_8033AA58:
/* 8033AA58 003366B8 7F 84 E3 78 */ mr r4, r28
/* 8033AA5C 003366BC 38 61 01 10 */ addi r3, r1, 0x110
/* 8033AA60 003366C0 38 A0 01 04 */ li r5, 0x104
/* 8033AA64 003366C4 4B CC 95 9D */ bl memcpy
/* 8033AA68 003366C8 7F A4 EB 78 */ mr r4, r29
/* 8033AA6C 003366CC 38 61 00 0C */ addi r3, r1, 0xc
/* 8033AA70 003366D0 38 A0 01 04 */ li r5, 0x104
/* 8033AA74 003366D4 4B CC 95 8D */ bl memcpy
/* 8033AA78 003366D8 80 81 00 08 */ lwz r4, 8(r1)
/* 8033AA7C 003366DC 38 61 01 10 */ addi r3, r1, 0x110
/* 8033AA80 003366E0 4B FF ED 31 */ bl gsiLargeIntResize
/* 8033AA84 003366E4 80 81 00 08 */ lwz r4, 8(r1)
/* 8033AA88 003366E8 38 61 00 0C */ addi r3, r1, 0xc
/* 8033AA8C 003366EC 4B FF ED 25 */ bl gsiLargeIntResize
/* 8033AA90 003366F0 80 A1 00 08 */ lwz r5, 8(r1)
/* 8033AA94 003366F4 38 61 01 14 */ addi r3, r1, 0x114
/* 8033AA98 003366F8 38 81 00 10 */ addi r4, r1, 0x10
/* 8033AA9C 003366FC 38 C1 02 18 */ addi r6, r1, 0x218
/* 8033AAA0 00336700 38 E1 02 14 */ addi r7, r1, 0x214
/* 8033AAA4 00336704 39 00 00 40 */ li r8, 0x40
/* 8033AAA8 00336708 48 00 00 C9 */ bl gsiLargeIntKMult
/* 8033AAAC 0033670C 7C 7E 1B 78 */ mr r30, r3
/* 8033AAB0 00336710 48 00 00 20 */ b lbl_8033AAD0
lbl_8033AAB4:
/* 8033AAB4 00336714 38 7C 00 04 */ addi r3, r28, 4
/* 8033AAB8 00336718 38 9D 00 04 */ addi r4, r29, 4
/* 8033AABC 0033671C 38 C1 02 18 */ addi r6, r1, 0x218
/* 8033AAC0 00336720 38 E1 02 14 */ addi r7, r1, 0x214
/* 8033AAC4 00336724 39 00 00 40 */ li r8, 0x40
/* 8033AAC8 00336728 48 00 00 A9 */ bl gsiLargeIntKMult
/* 8033AACC 0033672C 7C 7E 1B 78 */ mr r30, r3
lbl_8033AAD0:
/* 8033AAD0 00336730 2C 1E 00 00 */ cmpwi r30, 0
/* 8033AAD4 00336734 41 82 00 44 */ beq lbl_8033AB18
/* 8033AAD8 00336738 38 61 02 14 */ addi r3, r1, 0x214
/* 8033AADC 0033673C 48 00 00 10 */ b lbl_8033AAEC
lbl_8033AAE0:
/* 8033AAE0 00336740 80 81 02 14 */ lwz r4, 0x214(r1)
/* 8033AAE4 00336744 38 04 FF FF */ addi r0, r4, -1
/* 8033AAE8 00336748 90 01 02 14 */ stw r0, 0x214(r1)
lbl_8033AAEC:
/* 8033AAEC 0033674C 80 01 02 14 */ lwz r0, 0x214(r1)
/* 8033AAF0 00336750 2C 00 00 00 */ cmpwi r0, 0
/* 8033AAF4 00336754 41 82 00 14 */ beq lbl_8033AB08
/* 8033AAF8 00336758 54 00 10 3A */ slwi r0, r0, 2
/* 8033AAFC 0033675C 7C 03 00 2E */ lwzx r0, r3, r0
/* 8033AB00 00336760 2C 00 00 00 */ cmpwi r0, 0
/* 8033AB04 00336764 41 82 FF DC */ beq lbl_8033AAE0
lbl_8033AB08:
/* 8033AB08 00336768 7F E3 FB 78 */ mr r3, r31
/* 8033AB0C 0033676C 38 81 02 14 */ addi r4, r1, 0x214
/* 8033AB10 00336770 38 A0 01 04 */ li r5, 0x104
/* 8033AB14 00336774 4B CC 94 ED */ bl memcpy
lbl_8033AB18:
/* 8033AB18 00336778 3F E0 80 61 */ lis r31, lbl_80610BD0@ha
/* 8033AB1C 0033677C 3B FF 0B D0 */ addi r31, r31, lbl_80610BD0@l
/* 8033AB20 00336780 80 1F 00 2C */ lwz r0, 0x2c(r31)
/* 8033AB24 00336784 28 00 00 01 */ cmplwi r0, 1
/* 8033AB28 00336788 40 82 00 24 */ bne lbl_8033AB4C
/* 8033AB2C 0033678C 4B FF E4 F5 */ bl current_time_hires
/* 8033AB30 00336790 80 BF 00 20 */ lwz r5, 0x20(r31)
/* 8033AB34 00336794 38 00 00 00 */ li r0, 0
/* 8033AB38 00336798 80 9F 00 24 */ lwz r4, 0x24(r31)
/* 8033AB3C 0033679C 7C 65 18 50 */ subf r3, r5, r3
/* 8033AB40 003367A0 90 1F 00 2C */ stw r0, 0x2c(r31)
/* 8033AB44 003367A4 7C 04 1A 14 */ add r0, r4, r3
/* 8033AB48 003367A8 90 1F 00 24 */ stw r0, 0x24(r31)
lbl_8033AB4C:
/* 8033AB4C 003367AC 7F C3 F3 78 */ mr r3, r30
lbl_8033AB50:
/* 8033AB50 003367B0 80 01 03 34 */ lwz r0, 0x334(r1)
/* 8033AB54 003367B4 83 E1 03 2C */ lwz r31, 0x32c(r1)
/* 8033AB58 003367B8 83 C1 03 28 */ lwz r30, 0x328(r1)
/* 8033AB5C 003367BC 83 A1 03 24 */ lwz r29, 0x324(r1)
/* 8033AB60 003367C0 83 81 03 20 */ lwz r28, 0x320(r1)
/* 8033AB64 003367C4 7C 08 03 A6 */ mtlr r0
/* 8033AB68 003367C8 38 21 03 30 */ addi r1, r1, 0x330
/* 8033AB6C 003367CC 4E 80 00 20 */ blr
.global gsiLargeIntKMult
gsiLargeIntKMult:
/* 8033AB70 003367D0 94 21 FC B0 */ stwu r1, -0x350(r1)
/* 8033AB74 003367D4 7C 08 02 A6 */ mflr r0
/* 8033AB78 003367D8 90 01 03 54 */ stw r0, 0x354(r1)
/* 8033AB7C 003367DC 39 61 03 50 */ addi r11, r1, 0x350
/* 8033AB80 003367E0 4B E8 C5 91 */ bl _savegpr_21
/* 8033AB84 003367E4 28 05 00 20 */ cmplwi r5, 0x20
/* 8033AB88 003367E8 7C 75 1B 78 */ mr r21, r3
/* 8033AB8C 003367EC 7C 96 23 78 */ mr r22, r4
/* 8033AB90 003367F0 7C BB 2B 78 */ mr r27, r5
/* 8033AB94 003367F4 7C DC 33 78 */ mr r28, r6
/* 8033AB98 003367F8 7C FD 3B 78 */ mr r29, r7
/* 8033AB9C 003367FC 7D 1E 43 78 */ mr r30, r8
/* 8033ABA0 00336800 41 81 00 24 */ bgt lbl_8033ABC4
/* 8033ABA4 00336804 7F 64 DB 78 */ mr r4, r27
/* 8033ABA8 00336808 7E C5 B3 78 */ mr r5, r22
/* 8033ABAC 0033680C 7F 66 DB 78 */ mr r6, r27
/* 8033ABB0 00336810 7F 87 E3 78 */ mr r7, r28
/* 8033ABB4 00336814 7F A8 EB 78 */ mr r8, r29
/* 8033ABB8 00336818 7F C9 F3 78 */ mr r9, r30
/* 8033ABBC 0033681C 4B FF F3 D9 */ bl gsiLargeIntMult
/* 8033ABC0 00336820 48 00 02 10 */ b lbl_8033ADD0
lbl_8033ABC4:
/* 8033ABC4 00336824 38 00 00 00 */ li r0, 0
/* 8033ABC8 00336828 54 B7 08 3A */ rlwinm r23, r5, 1, 0, 0x1d
/* 8033ABCC 0033682C 54 B8 10 3A */ slwi r24, r5, 2
/* 8033ABD0 00336830 54 BF F8 7E */ srwi r31, r5, 1
/* 8033ABD4 00336834 7F 24 BA 14 */ add r25, r4, r23
/* 8033ABD8 00336838 7F 43 BA 14 */ add r26, r3, r23
/* 8033ABDC 0033683C 90 01 02 10 */ stw r0, 0x210(r1)
/* 8033ABE0 00336840 7F 43 D3 78 */ mr r3, r26
/* 8033ABE4 00336844 7F 24 CB 78 */ mr r4, r25
/* 8033ABE8 00336848 7F E5 FB 78 */ mr r5, r31
/* 8033ABEC 0033684C 90 01 01 0C */ stw r0, 0x10c(r1)
/* 8033ABF0 00336850 7C C6 C2 14 */ add r6, r6, r24
/* 8033ABF4 00336854 7D 1B 40 50 */ subf r8, r27, r8
/* 8033ABF8 00336858 90 01 00 08 */ stw r0, 8(r1)
/* 8033ABFC 0033685C 4B FF FF 75 */ bl gsiLargeIntKMult
/* 8033AC00 00336860 7E A3 AB 78 */ mr r3, r21
/* 8033AC04 00336864 7E C4 B3 78 */ mr r4, r22
/* 8033AC08 00336868 7F E5 FB 78 */ mr r5, r31
/* 8033AC0C 0033686C 7F 86 E3 78 */ mr r6, r28
/* 8033AC10 00336870 7F A7 EB 78 */ mr r7, r29
/* 8033AC14 00336874 7F C8 F3 78 */ mr r8, r30
/* 8033AC18 00336878 4B FF FF 59 */ bl gsiLargeIntKMult
/* 8033AC1C 0033687C 7F 43 D3 78 */ mr r3, r26
/* 8033AC20 00336880 7F E4 FB 78 */ mr r4, r31
/* 8033AC24 00336884 7E A5 AB 78 */ mr r5, r21
/* 8033AC28 00336888 7F E6 FB 78 */ mr r6, r31
/* 8033AC2C 0033688C 38 E1 02 14 */ addi r7, r1, 0x214
/* 8033AC30 00336890 39 01 02 10 */ addi r8, r1, 0x210
/* 8033AC34 00336894 39 20 00 40 */ li r9, 0x40
/* 8033AC38 00336898 4B FF ED 89 */ bl gsiLargeIntAdd
/* 8033AC3C 0033689C 7F 23 CB 78 */ mr r3, r25
/* 8033AC40 003368A0 7F E4 FB 78 */ mr r4, r31
/* 8033AC44 003368A4 7E C5 B3 78 */ mr r5, r22
/* 8033AC48 003368A8 7F E6 FB 78 */ mr r6, r31
/* 8033AC4C 003368AC 38 E1 01 10 */ addi r7, r1, 0x110
/* 8033AC50 003368B0 39 01 01 0C */ addi r8, r1, 0x10c
/* 8033AC54 003368B4 39 20 00 40 */ li r9, 0x40
/* 8033AC58 003368B8 4B FF ED 69 */ bl gsiLargeIntAdd
/* 8033AC5C 003368BC 38 61 00 08 */ addi r3, r1, 8
/* 8033AC60 003368C0 38 80 00 00 */ li r4, 0
/* 8033AC64 003368C4 38 A0 01 04 */ li r5, 0x104
/* 8033AC68 003368C8 4B CC 94 9D */ bl memset
/* 8033AC6C 003368CC 80 81 02 10 */ lwz r4, 0x210(r1)
/* 8033AC70 003368D0 7C 04 F8 40 */ cmplw r4, r31
/* 8033AC74 003368D4 41 81 00 10 */ bgt lbl_8033AC84
/* 8033AC78 003368D8 80 01 01 0C */ lwz r0, 0x10c(r1)
/* 8033AC7C 003368DC 7C 00 F8 40 */ cmplw r0, r31
/* 8033AC80 003368E0 40 81 00 28 */ ble lbl_8033ACA8
lbl_8033AC84:
/* 8033AC84 003368E4 38 E1 00 0C */ addi r7, r1, 0xc
/* 8033AC88 003368E8 80 C1 01 0C */ lwz r6, 0x10c(r1)
/* 8033AC8C 003368EC 38 61 02 14 */ addi r3, r1, 0x214
/* 8033AC90 003368F0 38 A1 01 10 */ addi r5, r1, 0x110
/* 8033AC94 003368F4 7C E7 BA 14 */ add r7, r7, r23
/* 8033AC98 003368F8 39 01 00 08 */ addi r8, r1, 8
/* 8033AC9C 003368FC 21 3F 00 40 */ subfic r9, r31, 0x40
/* 8033ACA0 00336900 4B FF F2 F5 */ bl gsiLargeIntMult
/* 8033ACA4 00336904 48 00 00 5C */ b lbl_8033AD00
lbl_8033ACA8:
/* 8033ACA8 00336908 7F A5 EB 78 */ mr r5, r29
/* 8033ACAC 0033690C 38 61 02 10 */ addi r3, r1, 0x210
/* 8033ACB0 00336910 38 81 01 0C */ addi r4, r1, 0x10c
/* 8033ACB4 00336914 4B FF EB B5 */ bl gsiLargeIntSizePower2
/* 8033ACB8 00336918 2C 03 00 00 */ cmpwi r3, 0
/* 8033ACBC 0033691C 40 82 00 0C */ bne lbl_8033ACC8
/* 8033ACC0 00336920 38 60 00 00 */ li r3, 0
/* 8033ACC4 00336924 48 00 01 0C */ b lbl_8033ADD0
lbl_8033ACC8:
/* 8033ACC8 00336928 80 9D 00 00 */ lwz r4, 0(r29)
/* 8033ACCC 0033692C 38 61 02 10 */ addi r3, r1, 0x210
/* 8033ACD0 00336930 4B FF EA E1 */ bl gsiLargeIntResize
/* 8033ACD4 00336934 80 9D 00 00 */ lwz r4, 0(r29)
/* 8033ACD8 00336938 38 61 01 0C */ addi r3, r1, 0x10c
/* 8033ACDC 0033693C 4B FF EA D5 */ bl gsiLargeIntResize
/* 8033ACE0 00336940 38 C1 00 0C */ addi r6, r1, 0xc
/* 8033ACE4 00336944 80 BD 00 00 */ lwz r5, 0(r29)
/* 8033ACE8 00336948 38 61 02 14 */ addi r3, r1, 0x214
/* 8033ACEC 0033694C 38 81 01 10 */ addi r4, r1, 0x110
/* 8033ACF0 00336950 7C C6 BA 14 */ add r6, r6, r23
/* 8033ACF4 00336954 38 E1 00 08 */ addi r7, r1, 8
/* 8033ACF8 00336958 21 1F 00 40 */ subfic r8, r31, 0x40
/* 8033ACFC 0033695C 4B FF FE 75 */ bl gsiLargeIntKMult
lbl_8033AD00:
/* 8033AD00 00336960 80 01 00 08 */ lwz r0, 8(r1)
/* 8033AD04 00336964 7E E5 BB 78 */ mr r5, r23
/* 8033AD08 00336968 38 61 00 0C */ addi r3, r1, 0xc
/* 8033AD0C 0033696C 38 80 00 00 */ li r4, 0
/* 8033AD10 00336970 7C 00 FA 14 */ add r0, r0, r31
/* 8033AD14 00336974 90 01 00 08 */ stw r0, 8(r1)
/* 8033AD18 00336978 4B CC 93 ED */ bl memset
/* 8033AD1C 0033697C 3B 21 00 0C */ addi r25, r1, 0xc
/* 8033AD20 00336980 80 01 00 08 */ lwz r0, 8(r1)
/* 8033AD24 00336984 7F 3A CB 78 */ mr r26, r25
/* 8033AD28 00336988 7F 64 DB 78 */ mr r4, r27
/* 8033AD2C 0033698C 7F 39 BA 14 */ add r25, r25, r23
/* 8033AD30 00336990 7C 7C C2 14 */ add r3, r28, r24
/* 8033AD34 00336994 7F 5A BA 14 */ add r26, r26, r23
/* 8033AD38 00336998 7C DF 00 50 */ subf r6, r31, r0
/* 8033AD3C 0033699C 7F 45 D3 78 */ mr r5, r26
/* 8033AD40 003369A0 7F 27 CB 78 */ mr r7, r25
/* 8033AD44 003369A4 39 01 00 08 */ addi r8, r1, 8
/* 8033AD48 003369A8 4B FF EF 01 */ bl gsiLargeIntSub
/* 8033AD4C 003369AC 80 01 00 08 */ lwz r0, 8(r1)
/* 8033AD50 003369B0 7F 83 E3 78 */ mr r3, r28
/* 8033AD54 003369B4 7F 64 DB 78 */ mr r4, r27
/* 8033AD58 003369B8 7F 45 D3 78 */ mr r5, r26
/* 8033AD5C 003369BC 7C 00 FA 14 */ add r0, r0, r31
/* 8033AD60 003369C0 7F 27 CB 78 */ mr r7, r25
/* 8033AD64 003369C4 90 01 00 08 */ stw r0, 8(r1)
/* 8033AD68 003369C8 7C DF 00 50 */ subf r6, r31, r0
/* 8033AD6C 003369CC 39 01 00 08 */ addi r8, r1, 8
/* 8033AD70 003369D0 4B FF EE D9 */ bl gsiLargeIntSub
/* 8033AD74 003369D4 80 01 00 08 */ lwz r0, 8(r1)
/* 8033AD78 003369D8 7F 83 E3 78 */ mr r3, r28
/* 8033AD7C 003369DC 7F 87 E3 78 */ mr r7, r28
/* 8033AD80 003369E0 7F A8 EB 78 */ mr r8, r29
/* 8033AD84 003369E4 7C C0 FA 14 */ add r6, r0, r31
/* 8033AD88 003369E8 7F C9 F3 78 */ mr r9, r30
/* 8033AD8C 003369EC 90 C1 00 08 */ stw r6, 8(r1)
/* 8033AD90 003369F0 57 64 08 3C */ slwi r4, r27, 1
/* 8033AD94 003369F4 38 A1 00 0C */ addi r5, r1, 0xc
/* 8033AD98 003369F8 4B FF EC 29 */ bl gsiLargeIntAdd
/* 8033AD9C 003369FC 48 00 00 10 */ b lbl_8033ADAC
lbl_8033ADA0:
/* 8033ADA0 00336A00 80 7D 00 00 */ lwz r3, 0(r29)
/* 8033ADA4 00336A04 38 03 FF FF */ addi r0, r3, -1
/* 8033ADA8 00336A08 90 1D 00 00 */ stw r0, 0(r29)
lbl_8033ADAC:
/* 8033ADAC 00336A0C 80 1D 00 00 */ lwz r0, 0(r29)
/* 8033ADB0 00336A10 2C 00 00 00 */ cmpwi r0, 0
/* 8033ADB4 00336A14 41 82 00 18 */ beq lbl_8033ADCC
/* 8033ADB8 00336A18 54 00 10 3A */ slwi r0, r0, 2
/* 8033ADBC 00336A1C 7C 7C 02 14 */ add r3, r28, r0
/* 8033ADC0 00336A20 80 03 FF FC */ lwz r0, -4(r3)
/* 8033ADC4 00336A24 2C 00 00 00 */ cmpwi r0, 0
/* 8033ADC8 00336A28 41 82 FF D8 */ beq lbl_8033ADA0
lbl_8033ADCC:
/* 8033ADCC 00336A2C 38 60 00 01 */ li r3, 1
lbl_8033ADD0:
/* 8033ADD0 00336A30 39 61 03 50 */ addi r11, r1, 0x350
/* 8033ADD4 00336A34 4B E8 C3 89 */ bl _restgpr_21
/* 8033ADD8 00336A38 80 01 03 54 */ lwz r0, 0x354(r1)
/* 8033ADDC 00336A3C 7C 08 03 A6 */ mtlr r0
/* 8033ADE0 00336A40 38 21 03 50 */ addi r1, r1, 0x350
/* 8033ADE4 00336A44 4E 80 00 20 */ blr
.global gsLargeIntSquareMod
gsLargeIntSquareMod:
/* 8033ADE8 00336A48 94 21 FB B0 */ stwu r1, -0x450(r1)
/* 8033ADEC 00336A4C 7C 08 02 A6 */ mflr r0
/* 8033ADF0 00336A50 90 01 04 54 */ stw r0, 0x454(r1)
/* 8033ADF4 00336A54 39 61 04 50 */ addi r11, r1, 0x450
/* 8033ADF8 00336A58 4B E8 C3 0D */ bl _savegpr_18
/* 8033ADFC 00336A5C 3E 40 80 61 */ lis r18, lbl_80610BD0@ha
/* 8033AE00 00336A60 3B 40 00 00 */ li r26, 0
/* 8033AE04 00336A64 3A 52 0B D0 */ addi r18, r18, lbl_80610BD0@l
/* 8033AE08 00336A68 93 41 00 08 */ stw r26, 8(r1)
/* 8033AE0C 00336A6C 80 12 00 7C */ lwz r0, 0x7c(r18)
/* 8033AE10 00336A70 7C 7C 1B 78 */ mr r28, r3
/* 8033AE14 00336A74 83 E3 00 00 */ lwz r31, 0(r3)
/* 8033AE18 00336A78 7C 9D 23 78 */ mr r29, r4
/* 8033AE1C 00336A7C 2C 00 00 00 */ cmpwi r0, 0
/* 8033AE20 00336A80 7C BE 2B 78 */ mr r30, r5
/* 8033AE24 00336A84 3B 60 00 00 */ li r27, 0
/* 8033AE28 00336A88 3B 20 00 00 */ li r25, 0
/* 8033AE2C 00336A8C 40 82 00 20 */ bne lbl_8033AE4C
/* 8033AE30 00336A90 80 72 00 78 */ lwz r3, 0x78(r18)
/* 8033AE34 00336A94 38 03 00 01 */ addi r0, r3, 1
/* 8033AE38 00336A98 90 12 00 78 */ stw r0, 0x78(r18)
/* 8033AE3C 00336A9C 4B FF E1 E5 */ bl current_time_hires
/* 8033AE40 00336AA0 38 00 00 01 */ li r0, 1
/* 8033AE44 00336AA4 90 72 00 70 */ stw r3, 0x70(r18)
/* 8033AE48 00336AA8 90 12 00 7C */ stw r0, 0x7c(r18)
lbl_8033AE4C:
/* 8033AE4C 00336AAC 38 61 02 10 */ addi r3, r1, 0x210
/* 8033AE50 00336AB0 38 80 00 00 */ li r4, 0
/* 8033AE54 00336AB4 38 A0 02 00 */ li r5, 0x200
/* 8033AE58 00336AB8 4B CC 92 AD */ bl memset
/* 8033AE5C 00336ABC 38 61 00 10 */ addi r3, r1, 0x10
/* 8033AE60 00336AC0 38 80 00 00 */ li r4, 0
/* 8033AE64 00336AC4 38 A0 02 00 */ li r5, 0x200
/* 8033AE68 00336AC8 4B CC 92 9D */ bl memset
/* 8033AE6C 00336ACC 38 DC 00 04 */ addi r6, r28, 4
/* 8033AE70 00336AD0 38 61 00 10 */ addi r3, r1, 0x10
/* 8033AE74 00336AD4 39 20 00 01 */ li r9, 1
/* 8033AE78 00336AD8 39 60 00 04 */ li r11, 4
/* 8033AE7C 00336ADC 38 00 00 00 */ li r0, 0
/* 8033AE80 00336AE0 3C A0 80 00 */ lis r5, 0x8000
/* 8033AE84 00336AE4 48 00 02 10 */ b lbl_8033B094
lbl_8033AE88:
/* 8033AE88 00336AE8 2C 89 00 00 */ cmpwi cr1, r9, 0
/* 8033AE8C 00336AEC 39 40 00 00 */ li r10, 0
/* 8033AE90 00336AF0 40 85 01 DC */ ble cr1, lbl_8033B06C
/* 8033AE94 00336AF4 2C 09 00 08 */ cmpwi r9, 8
/* 8033AE98 00336AF8 39 89 FF F8 */ addi r12, r9, -8
/* 8033AE9C 00336AFC 40 81 01 78 */ ble lbl_8033B014
/* 8033AEA0 00336B00 38 E0 00 00 */ li r7, 0
/* 8033AEA4 00336B04 41 84 00 14 */ blt cr1, lbl_8033AEB8
/* 8033AEA8 00336B08 38 85 FF FE */ addi r4, r5, -2
/* 8033AEAC 00336B0C 7C 09 20 00 */ cmpw r9, r4
/* 8033AEB0 00336B10 41 81 00 08 */ bgt lbl_8033AEB8
/* 8033AEB4 00336B14 38 E0 00 01 */ li r7, 1
lbl_8033AEB8:
/* 8033AEB8 00336B18 2C 07 00 00 */ cmpwi r7, 0
/* 8033AEBC 00336B1C 41 82 01 58 */ beq lbl_8033B014
/* 8033AEC0 00336B20 38 8C 00 07 */ addi r4, r12, 7
/* 8033AEC4 00336B24 39 01 00 10 */ addi r8, r1, 0x10
/* 8033AEC8 00336B28 54 84 E8 FE */ srwi r4, r4, 3
/* 8033AECC 00336B2C 7F 87 E3 78 */ mr r7, r28
/* 8033AED0 00336B30 7D 08 5A 14 */ add r8, r8, r11
/* 8033AED4 00336B34 7C 89 03 A6 */ mtctr r4
/* 8033AED8 00336B38 2C 0C 00 00 */ cmpwi r12, 0
/* 8033AEDC 00336B3C 40 81 01 38 */ ble lbl_8033B014
lbl_8033AEE0:
/* 8033AEE0 00336B40 80 86 00 04 */ lwz r4, 4(r6)
/* 8033AEE4 00336B44 39 4A 00 08 */ addi r10, r10, 8
/* 8033AEE8 00336B48 82 47 00 04 */ lwz r18, 4(r7)
/* 8033AEEC 00336B4C 82 A8 00 00 */ lwz r21, 0(r8)
/* 8033AEF0 00336B50 7D 84 91 D6 */ mullw r12, r4, r18
/* 8033AEF4 00336B54 82 67 00 08 */ lwz r19, 8(r7)
/* 8033AEF8 00336B58 7E FA A8 14 */ addc r23, r26, r21
/* 8033AEFC 00336B5C 82 87 00 0C */ lwz r20, 0xc(r7)
/* 8033AF00 00336B60 7F 7B 01 94 */ addze r27, r27
/* 8033AF04 00336B64 82 A7 00 10 */ lwz r21, 0x10(r7)
/* 8033AF08 00336B68 7D 97 60 14 */ addc r12, r23, r12
/* 8033AF0C 00336B6C 82 C7 00 14 */ lwz r22, 0x14(r7)
/* 8033AF10 00336B70 7E 44 90 16 */ mulhwu r18, r4, r18
/* 8033AF14 00336B74 91 88 00 00 */ stw r12, 0(r8)
/* 8033AF18 00336B78 83 47 00 18 */ lwz r26, 0x18(r7)
/* 8033AF1C 00336B7C 81 88 00 04 */ lwz r12, 4(r8)
/* 8033AF20 00336B80 83 07 00 1C */ lwz r24, 0x1c(r7)
/* 8033AF24 00336B84 86 E7 00 20 */ lwzu r23, 0x20(r7)
/* 8033AF28 00336B88 7E 5B 91 14 */ adde r18, r27, r18
/* 8033AF2C 00336B8C 7F 72 60 14 */ addc r27, r18, r12
/* 8033AF30 00336B90 7D 84 99 D6 */ mullw r12, r4, r19
/* 8033AF34 00336B94 7E 40 01 94 */ addze r18, r0
/* 8033AF38 00336B98 7D 9B 60 14 */ addc r12, r27, r12
/* 8033AF3C 00336B9C 7F 64 98 16 */ mulhwu r27, r4, r19
/* 8033AF40 00336BA0 91 88 00 04 */ stw r12, 4(r8)
/* 8033AF44 00336BA4 82 68 00 08 */ lwz r19, 8(r8)
/* 8033AF48 00336BA8 7D 84 A1 D6 */ mullw r12, r4, r20
/* 8033AF4C 00336BAC 7F 72 D9 14 */ adde r27, r18, r27
/* 8033AF50 00336BB0 7F 7B 98 14 */ addc r27, r27, r19
/* 8033AF54 00336BB4 7E 60 01 94 */ addze r19, r0
/* 8033AF58 00336BB8 7D 9B 60 14 */ addc r12, r27, r12
/* 8033AF5C 00336BBC 7F 64 A0 16 */ mulhwu r27, r4, r20
/* 8033AF60 00336BC0 91 88 00 08 */ stw r12, 8(r8)
/* 8033AF64 00336BC4 82 88 00 0C */ lwz r20, 0xc(r8)
/* 8033AF68 00336BC8 7D 84 A9 D6 */ mullw r12, r4, r21
/* 8033AF6C 00336BCC 7F 73 D9 14 */ adde r27, r19, r27
/* 8033AF70 00336BD0 7F 7B A0 14 */ addc r27, r27, r20
/* 8033AF74 00336BD4 7E 80 01 94 */ addze r20, r0
/* 8033AF78 00336BD8 7D 9B 60 14 */ addc r12, r27, r12
/* 8033AF7C 00336BDC 7F 64 A8 16 */ mulhwu r27, r4, r21
/* 8033AF80 00336BE0 91 88 00 0C */ stw r12, 0xc(r8)
/* 8033AF84 00336BE4 82 A8 00 10 */ lwz r21, 0x10(r8)
/* 8033AF88 00336BE8 7D 84 B1 D6 */ mullw r12, r4, r22
/* 8033AF8C 00336BEC 7F 74 D9 14 */ adde r27, r20, r27
/* 8033AF90 00336BF0 7F 7B A8 14 */ addc r27, r27, r21
/* 8033AF94 00336BF4 7E A0 01 94 */ addze r21, r0
/* 8033AF98 00336BF8 7D 9B 60 14 */ addc r12, r27, r12
/* 8033AF9C 00336BFC 7F 64 B0 16 */ mulhwu r27, r4, r22
/* 8033AFA0 00336C00 91 88 00 10 */ stw r12, 0x10(r8)
/* 8033AFA4 00336C04 82 C8 00 14 */ lwz r22, 0x14(r8)
/* 8033AFA8 00336C08 7D 84 D1 D6 */ mullw r12, r4, r26
/* 8033AFAC 00336C0C 7F 75 D9 14 */ adde r27, r21, r27
/* 8033AFB0 00336C10 7F 7B B0 14 */ addc r27, r27, r22
/* 8033AFB4 00336C14 7E C0 01 94 */ addze r22, r0
/* 8033AFB8 00336C18 7D 9B 60 14 */ addc r12, r27, r12
/* 8033AFBC 00336C1C 7F 64 D0 16 */ mulhwu r27, r4, r26
/* 8033AFC0 00336C20 91 88 00 14 */ stw r12, 0x14(r8)
/* 8033AFC4 00336C24 83 48 00 18 */ lwz r26, 0x18(r8)
/* 8033AFC8 00336C28 7D 84 C1 D6 */ mullw r12, r4, r24
/* 8033AFCC 00336C2C 7F 76 D9 14 */ adde r27, r22, r27
/* 8033AFD0 00336C30 7F 5B D0 14 */ addc r26, r27, r26
/* 8033AFD4 00336C34 7F 60 01 94 */ addze r27, r0
/* 8033AFD8 00336C38 7D 9A 60 14 */ addc r12, r26, r12
/* 8033AFDC 00336C3C 7F 44 C0 16 */ mulhwu r26, r4, r24
/* 8033AFE0 00336C40 91 88 00 18 */ stw r12, 0x18(r8)
/* 8033AFE4 00336C44 83 08 00 1C */ lwz r24, 0x1c(r8)
/* 8033AFE8 00336C48 7D 84 B9 D6 */ mullw r12, r4, r23
/* 8033AFEC 00336C4C 7F 7B D1 14 */ adde r27, r27, r26
/* 8033AFF0 00336C50 7F 5B C0 14 */ addc r26, r27, r24
/* 8033AFF4 00336C54 7F 00 01 94 */ addze r24, r0
/* 8033AFF8 00336C58 7D 9A 60 14 */ addc r12, r26, r12
/* 8033AFFC 00336C5C 3B 60 00 00 */ li r27, 0
/* 8033B000 00336C60 7C 84 B8 16 */ mulhwu r4, r4, r23
/* 8033B004 00336C64 91 88 00 1C */ stw r12, 0x1c(r8)
/* 8033B008 00336C68 39 08 00 20 */ addi r8, r8, 0x20
/* 8033B00C 00336C6C 7F 58 21 14 */ adde r26, r24, r4
/* 8033B010 00336C70 42 00 FE D0 */ bdnz lbl_8033AEE0
lbl_8033B014:
/* 8033B014 00336C74 55 48 10 3A */ slwi r8, r10, 2
/* 8033B018 00336C78 7C 8A 48 50 */ subf r4, r10, r9
/* 8033B01C 00336C7C 7C E8 5A 14 */ add r7, r8, r11
/* 8033B020 00336C80 7E 5C 42 14 */ add r18, r28, r8
/* 8033B024 00336C84 7E 63 3A 14 */ add r19, r3, r7
/* 8033B028 00336C88 7C 89 03 A6 */ mtctr r4
/* 8033B02C 00336C8C 7C 0A 48 00 */ cmpw r10, r9
/* 8033B030 00336C90 40 80 00 3C */ bge lbl_8033B06C
lbl_8033B034:
/* 8033B034 00336C94 84 F2 00 04 */ lwzu r7, 4(r18)
/* 8033B038 00336C98 39 4A 00 01 */ addi r10, r10, 1
/* 8033B03C 00336C9C 81 06 00 04 */ lwz r8, 4(r6)
/* 8033B040 00336CA0 81 93 00 00 */ lwz r12, 0(r19)
/* 8033B044 00336CA4 7C 88 39 D6 */ mullw r4, r8, r7
/* 8033B048 00336CA8 7E FA 60 14 */ addc r23, r26, r12
/* 8033B04C 00336CAC 7D 9B 01 94 */ addze r12, r27
/* 8033B050 00336CB0 3B 60 00 00 */ li r27, 0
/* 8033B054 00336CB4 7C 97 20 14 */ addc r4, r23, r4
/* 8033B058 00336CB8 7C E8 38 16 */ mulhwu r7, r8, r7
/* 8033B05C 00336CBC 90 93 00 00 */ stw r4, 0(r19)
/* 8033B060 00336CC0 3A 73 00 04 */ addi r19, r19, 4
/* 8033B064 00336CC4 7F 4C 39 14 */ adde r26, r12, r7
/* 8033B068 00336CC8 42 00 FF CC */ bdnz lbl_8033B034
lbl_8033B06C:
/* 8033B06C 00336CCC 7F 44 DB 79 */ or. r4, r26, r27
/* 8033B070 00336CD0 41 82 00 18 */ beq lbl_8033B088
/* 8033B074 00336CD4 7C 89 52 14 */ add r4, r9, r10
/* 8033B078 00336CD8 54 84 10 3A */ slwi r4, r4, 2
/* 8033B07C 00336CDC 7F 43 21 2E */ stwx r26, r3, r4
/* 8033B080 00336CE0 7F 7A DB 78 */ mr r26, r27
/* 8033B084 00336CE4 3B 60 00 00 */ li r27, 0
lbl_8033B088:
/* 8033B088 00336CE8 38 C6 00 04 */ addi r6, r6, 4
/* 8033B08C 00336CEC 39 29 00 01 */ addi r9, r9, 1
/* 8033B090 00336CF0 39 6B 00 04 */ addi r11, r11, 4
lbl_8033B094:
/* 8033B094 00336CF4 7C 09 F8 00 */ cmpw r9, r31
/* 8033B098 00336CF8 41 80 FD F0 */ blt lbl_8033AE88
/* 8033B09C 00336CFC 57 E5 08 3D */ rlwinm. r5, r31, 1, 0, 0x1e
/* 8033B0A0 00336D00 38 81 00 10 */ addi r4, r1, 0x10
/* 8033B0A4 00336D04 40 81 01 04 */ ble lbl_8033B1A8
/* 8033B0A8 00336D08 54 A0 E8 FF */ rlwinm. r0, r5, 0x1d, 3, 0x1f
/* 8033B0AC 00336D0C 7C 09 03 A6 */ mtctr r0
/* 8033B0B0 00336D10 41 82 00 D4 */ beq lbl_8033B184
lbl_8033B0B4:
/* 8033B0B4 00336D14 80 64 00 00 */ lwz r3, 0(r4)
/* 8033B0B8 00336D18 54 60 08 3C */ slwi r0, r3, 1
/* 8033B0BC 00336D1C 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8033B0C0 00336D20 7C 19 02 14 */ add r0, r25, r0
/* 8033B0C4 00336D24 90 04 00 00 */ stw r0, 0(r4)
/* 8033B0C8 00336D28 7C 79 1B 78 */ mr r25, r3
/* 8033B0CC 00336D2C 80 64 00 04 */ lwz r3, 4(r4)
/* 8033B0D0 00336D30 54 60 08 3C */ slwi r0, r3, 1
/* 8033B0D4 00336D34 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8033B0D8 00336D38 7C 19 02 14 */ add r0, r25, r0
/* 8033B0DC 00336D3C 90 04 00 04 */ stw r0, 4(r4)
/* 8033B0E0 00336D40 7C 79 1B 78 */ mr r25, r3
/* 8033B0E4 00336D44 80 64 00 08 */ lwz r3, 8(r4)
/* 8033B0E8 00336D48 54 60 08 3C */ slwi r0, r3, 1
/* 8033B0EC 00336D4C 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8033B0F0 00336D50 7C 19 02 14 */ add r0, r25, r0
/* 8033B0F4 00336D54 90 04 00 08 */ stw r0, 8(r4)
/* 8033B0F8 00336D58 7C 79 1B 78 */ mr r25, r3
/* 8033B0FC 00336D5C 80 64 00 0C */ lwz r3, 0xc(r4)
/* 8033B100 00336D60 54 60 08 3C */ slwi r0, r3, 1
/* 8033B104 00336D64 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8033B108 00336D68 7C 19 02 14 */ add r0, r25, r0
/* 8033B10C 00336D6C 90 04 00 0C */ stw r0, 0xc(r4)
/* 8033B110 00336D70 7C 79 1B 78 */ mr r25, r3
/* 8033B114 00336D74 80 64 00 10 */ lwz r3, 0x10(r4)
/* 8033B118 00336D78 54 60 08 3C */ slwi r0, r3, 1
/* 8033B11C 00336D7C 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8033B120 00336D80 7C 19 02 14 */ add r0, r25, r0
/* 8033B124 00336D84 90 04 00 10 */ stw r0, 0x10(r4)
/* 8033B128 00336D88 7C 79 1B 78 */ mr r25, r3
/* 8033B12C 00336D8C 80 64 00 14 */ lwz r3, 0x14(r4)
/* 8033B130 00336D90 54 60 08 3C */ slwi r0, r3, 1
/* 8033B134 00336D94 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8033B138 00336D98 7C 19 02 14 */ add r0, r25, r0
/* 8033B13C 00336D9C 90 04 00 14 */ stw r0, 0x14(r4)
/* 8033B140 00336DA0 7C 79 1B 78 */ mr r25, r3
/* 8033B144 00336DA4 80 64 00 18 */ lwz r3, 0x18(r4)
/* 8033B148 00336DA8 54 60 08 3C */ slwi r0, r3, 1
/* 8033B14C 00336DAC 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8033B150 00336DB0 7C 19 02 14 */ add r0, r25, r0
/* 8033B154 00336DB4 90 04 00 18 */ stw r0, 0x18(r4)
/* 8033B158 00336DB8 7C 79 1B 78 */ mr r25, r3
/* 8033B15C 00336DBC 80 64 00 1C */ lwz r3, 0x1c(r4)
/* 8033B160 00336DC0 54 60 08 3C */ slwi r0, r3, 1
/* 8033B164 00336DC4 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8033B168 00336DC8 7C 19 02 14 */ add r0, r25, r0
/* 8033B16C 00336DCC 90 04 00 1C */ stw r0, 0x1c(r4)
/* 8033B170 00336DD0 7C 79 1B 78 */ mr r25, r3
/* 8033B174 00336DD4 38 84 00 20 */ addi r4, r4, 0x20
/* 8033B178 00336DD8 42 00 FF 3C */ bdnz lbl_8033B0B4
/* 8033B17C 00336DDC 70 A5 00 07 */ andi. r5, r5, 7
/* 8033B180 00336DE0 41 82 00 28 */ beq lbl_8033B1A8
lbl_8033B184:
/* 8033B184 00336DE4 7C A9 03 A6 */ mtctr r5
lbl_8033B188:
/* 8033B188 00336DE8 80 64 00 00 */ lwz r3, 0(r4)
/* 8033B18C 00336DEC 54 60 08 3C */ slwi r0, r3, 1
/* 8033B190 00336DF0 54 63 0F FE */ srwi r3, r3, 0x1f
/* 8033B194 00336DF4 7C 19 02 14 */ add r0, r25, r0
/* 8033B198 00336DF8 90 04 00 00 */ stw r0, 0(r4)
/* 8033B19C 00336DFC 7C 79 1B 78 */ mr r25, r3
/* 8033B1A0 00336E00 38 84 00 04 */ addi r4, r4, 4
/* 8033B1A4 00336E04 42 00 FF E4 */ bdnz lbl_8033B188
lbl_8033B1A8:
/* 8033B1A8 00336E08 2C 9F 00 00 */ cmpwi cr1, r31, 0
/* 8033B1AC 00336E0C 39 60 00 00 */ li r11, 0
/* 8033B1B0 00336E10 40 85 01 A8 */ ble cr1, lbl_8033B358
/* 8033B1B4 00336E14 2C 1F 00 08 */ cmpwi r31, 8
/* 8033B1B8 00336E18 38 9F FF F8 */ addi r4, r31, -8
/* 8033B1BC 00336E1C 40 81 01 60 */ ble lbl_8033B31C
/* 8033B1C0 00336E20 38 A0 00 00 */ li r5, 0
/* 8033B1C4 00336E24 41 84 00 18 */ blt cr1, lbl_8033B1DC
/* 8033B1C8 00336E28 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
/* 8033B1CC 00336E2C 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
/* 8033B1D0 00336E30 7C 1F 00 00 */ cmpw r31, r0
/* 8033B1D4 00336E34 41 81 00 08 */ bgt lbl_8033B1DC
/* 8033B1D8 00336E38 38 A0 00 01 */ li r5, 1
lbl_8033B1DC:
/* 8033B1DC 00336E3C 2C 05 00 00 */ cmpwi r5, 0
/* 8033B1E0 00336E40 41 82 01 3C */ beq lbl_8033B31C
/* 8033B1E4 00336E44 38 04 00 07 */ addi r0, r4, 7
/* 8033B1E8 00336E48 7F 83 E3 78 */ mr r3, r28
/* 8033B1EC 00336E4C 54 00 E8 FE */ srwi r0, r0, 3
/* 8033B1F0 00336E50 39 80 00 00 */ li r12, 0
/* 8033B1F4 00336E54 7C 09 03 A6 */ mtctr r0
/* 8033B1F8 00336E58 2C 04 00 00 */ cmpwi r4, 0
/* 8033B1FC 00336E5C 40 81 01 20 */ ble lbl_8033B31C
lbl_8033B200:
/* 8033B200 00336E60 81 23 00 04 */ lwz r9, 4(r3)
/* 8033B204 00336E64 38 CB 00 01 */ addi r6, r11, 1
/* 8033B208 00336E68 82 43 00 08 */ lwz r18, 8(r3)
/* 8033B20C 00336E6C 38 8B 00 02 */ addi r4, r11, 2
/* 8033B210 00336E70 7D 09 49 D6 */ mullw r8, r9, r9
/* 8033B214 00336E74 39 41 02 10 */ addi r10, r1, 0x210
/* 8033B218 00336E78 80 03 00 0C */ lwz r0, 0xc(r3)
/* 8033B21C 00336E7C 3B 0B 00 04 */ addi r24, r11, 4
/* 8033B220 00336E80 54 99 18 38 */ slwi r25, r4, 3
/* 8033B224 00336E84 80 A3 00 10 */ lwz r5, 0x10(r3)
/* 8033B228 00336E88 7D 0A 61 6E */ stwux r8, r10, r12
/* 8033B22C 00336E8C 7E 89 48 16 */ mulhwu r20, r9, r9
/* 8033B230 00336E90 54 C6 18 38 */ slwi r6, r6, 3
/* 8033B234 00336E94 80 E3 00 14 */ lwz r7, 0x14(r3)
/* 8033B238 00336E98 3A 61 02 10 */ addi r19, r1, 0x210
/* 8033B23C 00336E9C 81 03 00 18 */ lwz r8, 0x18(r3)
/* 8033B240 00336EA0 38 81 02 10 */ addi r4, r1, 0x210
/* 8033B244 00336EA4 7E F2 91 D6 */ mullw r23, r18, r18
/* 8033B248 00336EA8 7E 73 32 14 */ add r19, r19, r6
/* 8033B24C 00336EAC 92 8A 00 04 */ stw r20, 4(r10)
/* 8033B250 00336EB0 57 18 18 38 */ slwi r24, r24, 3
/* 8033B254 00336EB4 7C 84 CA 14 */ add r4, r4, r25
/* 8033B258 00336EB8 81 23 00 1C */ lwz r9, 0x1c(r3)
/* 8033B25C 00336EBC 92 F3 00 00 */ stw r23, 0(r19)
/* 8033B260 00336EC0 7E 52 90 16 */ mulhwu r18, r18, r18
/* 8033B264 00336EC4 38 CB 00 03 */ addi r6, r11, 3
/* 8033B268 00336EC8 85 43 00 20 */ lwzu r10, 0x20(r3)
/* 8033B26C 00336ECC 3B 4B 00 06 */ addi r26, r11, 6
/* 8033B270 00336ED0 54 D9 18 38 */ slwi r25, r6, 3
/* 8033B274 00336ED4 38 C1 02 10 */ addi r6, r1, 0x210
/* 8033B278 00336ED8 92 53 00 04 */ stw r18, 4(r19)
/* 8033B27C 00336EDC 7E E0 01 D6 */ mullw r23, r0, r0
/* 8033B280 00336EE0 3A 41 02 10 */ addi r18, r1, 0x210
/* 8033B284 00336EE4 3A 61 02 10 */ addi r19, r1, 0x210
/* 8033B288 00336EE8 7E 52 C2 14 */ add r18, r18, r24
/* 8033B28C 00336EEC 7C C6 CA 14 */ add r6, r6, r25
/* 8033B290 00336EF0 7E A0 00 16 */ mulhwu r21, r0, r0
/* 8033B294 00336EF4 92 E4 00 00 */ stw r23, 0(r4)
/* 8033B298 00336EF8 3B 6B 00 05 */ addi r27, r11, 5
/* 8033B29C 00336EFC 3B 2B 00 07 */ addi r25, r11, 7
/* 8033B2A0 00336F00 57 40 18 38 */ slwi r0, r26, 3
/* 8033B2A4 00336F04 7E 74 9B 78 */ mr r20, r19
/* 8033B2A8 00336F08 7F 05 29 D6 */ mullw r24, r5, r5
/* 8033B2AC 00336F0C 92 A4 00 04 */ stw r21, 4(r4)
/* 8033B2B0 00336F10 7E 94 02 14 */ add r20, r20, r0
/* 8033B2B4 00336F14 57 20 18 38 */ slwi r0, r25, 3
/* 8033B2B8 00336F18 38 81 02 10 */ addi r4, r1, 0x210
/* 8033B2BC 00336F1C 57 7B 18 38 */ slwi r27, r27, 3
/* 8033B2C0 00336F20 7C 84 02 14 */ add r4, r4, r0
/* 8033B2C4 00336F24 93 06 00 00 */ stw r24, 0(r6)
/* 8033B2C8 00336F28 7C A5 28 16 */ mulhwu r5, r5, r5
/* 8033B2CC 00336F2C 39 8C 00 40 */ addi r12, r12, 0x40
/* 8033B2D0 00336F30 39 6B 00 08 */ addi r11, r11, 8
/* 8033B2D4 00336F34 7C 07 39 D6 */ mullw r0, r7, r7
/* 8033B2D8 00336F38 90 A6 00 04 */ stw r5, 4(r6)
/* 8033B2DC 00336F3C 90 12 00 00 */ stw r0, 0(r18)
/* 8033B2E0 00336F40 7C A7 38 16 */ mulhwu r5, r7, r7
/* 8033B2E4 00336F44 7C 08 41 D6 */ mullw r0, r8, r8
/* 8033B2E8 00336F48 90 B2 00 04 */ stw r5, 4(r18)
/* 8033B2EC 00336F4C 7C 13 D9 6E */ stwux r0, r19, r27
/* 8033B2F0 00336F50 7C A8 40 16 */ mulhwu r5, r8, r8
/* 8033B2F4 00336F54 7C 09 49 D6 */ mullw r0, r9, r9
/* 8033B2F8 00336F58 90 B3 00 04 */ stw r5, 4(r19)
/* 8033B2FC 00336F5C 90 14 00 00 */ stw r0, 0(r20)
/* 8033B300 00336F60 7C A9 48 16 */ mulhwu r5, r9, r9
/* 8033B304 00336F64 7C 0A 51 D6 */ mullw r0, r10, r10
/* 8033B308 00336F68 90 B4 00 04 */ stw r5, 4(r20)
/* 8033B30C 00336F6C 7C AA 50 16 */ mulhwu r5, r10, r10
/* 8033B310 00336F70 90 04 00 00 */ stw r0, 0(r4)
/* 8033B314 00336F74 90 A4 00 04 */ stw r5, 4(r4)
/* 8033B318 00336F78 42 00 FE E8 */ bdnz lbl_8033B200
lbl_8033B31C:
/* 8033B31C 00336F7C 55 63 10 3A */ slwi r3, r11, 2
/* 8033B320 00336F80 7C 0B F8 50 */ subf r0, r11, r31
/* 8033B324 00336F84 7C 9C 1A 14 */ add r4, r28, r3
/* 8033B328 00336F88 55 63 18 38 */ slwi r3, r11, 3
/* 8033B32C 00336F8C 7C 09 03 A6 */ mtctr r0
/* 8033B330 00336F90 7C 0B F8 00 */ cmpw r11, r31
/* 8033B334 00336F94 40 80 00 24 */ bge lbl_8033B358
lbl_8033B338:
/* 8033B338 00336F98 84 A4 00 04 */ lwzu r5, 4(r4)
/* 8033B33C 00336F9C 38 C1 02 10 */ addi r6, r1, 0x210
/* 8033B340 00336FA0 7C 05 29 D6 */ mullw r0, r5, r5
/* 8033B344 00336FA4 7C 06 19 6E */ stwux r0, r6, r3
/* 8033B348 00336FA8 7C A5 28 16 */ mulhwu r5, r5, r5
/* 8033B34C 00336FAC 38 63 00 08 */ addi r3, r3, 8
/* 8033B350 00336FB0 90 A6 00 04 */ stw r5, 4(r6)
/* 8033B354 00336FB4 42 00 FF E4 */ bdnz lbl_8033B338
lbl_8033B358:
/* 8033B358 00336FB8 57 E4 08 3C */ slwi r4, r31, 1
/* 8033B35C 00336FBC 38 A1 02 10 */ addi r5, r1, 0x210
/* 8033B360 00336FC0 90 81 00 08 */ stw r4, 8(r1)
/* 8033B364 00336FC4 7C 86 23 78 */ mr r6, r4
/* 8033B368 00336FC8 7C A7 2B 78 */ mr r7, r5
/* 8033B36C 00336FCC 38 61 00 10 */ addi r3, r1, 0x10
/* 8033B370 00336FD0 39 01 00 08 */ addi r8, r1, 8
/* 8033B374 00336FD4 39 20 00 80 */ li r9, 0x80
/* 8033B378 00336FD8 4B FF E6 49 */ bl gsiLargeIntAdd
/* 8033B37C 00336FDC 80 81 00 08 */ lwz r4, 8(r1)
/* 8033B380 00336FE0 7F A5 EB 78 */ mr r5, r29
/* 8033B384 00336FE4 7F C7 F3 78 */ mr r7, r30
/* 8033B388 00336FE8 38 61 02 10 */ addi r3, r1, 0x210
/* 8033B38C 00336FEC 38 C0 00 00 */ li r6, 0
/* 8033B390 00336FF0 4B FF EE 3D */ bl gsiLargeIntDiv
/* 8033B394 00336FF4 3F 20 80 61 */ lis r25, lbl_80610BD0@ha
/* 8033B398 00336FF8 7C 72 1B 78 */ mr r18, r3
/* 8033B39C 00336FFC 3B 39 0B D0 */ addi r25, r25, lbl_80610BD0@l
/* 8033B3A0 00337000 80 19 00 7C */ lwz r0, 0x7c(r25)
/* 8033B3A4 00337004 28 00 00 01 */ cmplwi r0, 1
/* 8033B3A8 00337008 40 82 00 24 */ bne lbl_8033B3CC
/* 8033B3AC 0033700C 4B FF DC 75 */ bl current_time_hires
/* 8033B3B0 00337010 80 B9 00 70 */ lwz r5, 0x70(r25)
/* 8033B3B4 00337014 38 00 00 00 */ li r0, 0
/* 8033B3B8 00337018 80 99 00 74 */ lwz r4, 0x74(r25)
/* 8033B3BC 0033701C 7C 65 18 50 */ subf r3, r5, r3
/* 8033B3C0 00337020 90 19 00 7C */ stw r0, 0x7c(r25)
/* 8033B3C4 00337024 7C 04 1A 14 */ add r0, r4, r3
/* 8033B3C8 00337028 90 19 00 74 */ stw r0, 0x74(r25)
lbl_8033B3CC:
/* 8033B3CC 0033702C 39 61 04 50 */ addi r11, r1, 0x450
/* 8033B3D0 00337030 7E 43 93 78 */ mr r3, r18
/* 8033B3D4 00337034 4B E8 BD 7D */ bl _restgpr_18
/* 8033B3D8 00337038 80 01 04 54 */ lwz r0, 0x454(r1)
/* 8033B3DC 0033703C 7C 08 03 A6 */ mtlr r0
/* 8033B3E0 00337040 38 21 04 50 */ addi r1, r1, 0x450
/* 8033B3E4 00337044 4E 80 00 20 */ blr
.global gsLargeIntPowerMod
gsLargeIntPowerMod:
/* 8033B3E8 00337048 94 21 F7 C0 */ stwu r1, -0x840(r1)
/* 8033B3EC 0033704C 7C 08 02 A6 */ mflr r0
/* 8033B3F0 00337050 90 01 08 44 */ stw r0, 0x844(r1)
/* 8033B3F4 00337054 39 61 08 40 */ addi r11, r1, 0x840
/* 8033B3F8 00337058 4B E8 BD 31 */ bl _savegpr_27
/* 8033B3FC 0033705C 3F A0 80 61 */ lis r29, lbl_80610BD0@ha
/* 8033B400 00337060 7C 7F 1B 78 */ mr r31, r3
/* 8033B404 00337064 3B BD 0B D0 */ addi r29, r29, lbl_80610BD0@l
/* 8033B408 00337068 7C 9C 23 78 */ mr r28, r4
/* 8033B40C 0033706C 80 1D 00 8C */ lwz r0, 0x8c(r29)
/* 8033B410 00337070 7C BB 2B 78 */ mr r27, r5
/* 8033B414 00337074 7C DE 33 78 */ mr r30, r6
/* 8033B418 00337078 2C 00 00 00 */ cmpwi r0, 0
/* 8033B41C 0033707C 40 82 00 20 */ bne lbl_8033B43C
/* 8033B420 00337080 80 7D 00 88 */ lwz r3, 0x88(r29)
/* 8033B424 00337084 38 03 00 01 */ addi r0, r3, 1
/* 8033B428 00337088 90 1D 00 88 */ stw r0, 0x88(r29)
/* 8033B42C 0033708C 4B FF DB F5 */ bl current_time_hires
/* 8033B430 00337090 38 00 00 01 */ li r0, 1
/* 8033B434 00337094 90 7D 00 80 */ stw r3, 0x80(r29)
/* 8033B438 00337098 90 1D 00 8C */ stw r0, 0x8c(r29)
lbl_8033B43C:
/* 8033B43C 0033709C 38 61 07 24 */ addi r3, r1, 0x724
/* 8033B440 003370A0 38 80 00 00 */ li r4, 0
/* 8033B444 003370A4 38 A0 01 04 */ li r5, 0x104
/* 8033B448 003370A8 4B CC 8C BD */ bl memset
/* 8033B44C 003370AC 38 61 06 20 */ addi r3, r1, 0x620
/* 8033B450 003370B0 38 80 00 00 */ li r4, 0
/* 8033B454 003370B4 38 A0 01 04 */ li r5, 0x104
/* 8033B458 003370B8 4B CC 8C AD */ bl memset
/* 8033B45C 003370BC 38 61 05 1C */ addi r3, r1, 0x51c
/* 8033B460 003370C0 38 80 00 00 */ li r4, 0
/* 8033B464 003370C4 38 A0 01 04 */ li r5, 0x104
/* 8033B468 003370C8 4B CC 8C 9D */ bl memset
/* 8033B46C 003370CC 38 61 04 18 */ addi r3, r1, 0x418
/* 8033B470 003370D0 38 80 00 00 */ li r4, 0
/* 8033B474 003370D4 38 A0 01 04 */ li r5, 0x104
/* 8033B478 003370D8 4B CC 8C 8D */ bl memset
/* 8033B47C 003370DC 38 61 03 14 */ addi r3, r1, 0x314
/* 8033B480 003370E0 38 80 00 00 */ li r4, 0
/* 8033B484 003370E4 38 A0 01 04 */ li r5, 0x104
/* 8033B488 003370E8 4B CC 8C 7D */ bl memset
/* 8033B48C 003370EC 7F E4 FB 78 */ mr r4, r31
/* 8033B490 003370F0 38 61 02 10 */ addi r3, r1, 0x210
/* 8033B494 003370F4 38 A0 01 04 */ li r5, 0x104
/* 8033B498 003370F8 4B CC 8B 69 */ bl memcpy
/* 8033B49C 003370FC 7F 84 E3 78 */ mr r4, r28
/* 8033B4A0 00337100 38 61 01 0C */ addi r3, r1, 0x10c
/* 8033B4A4 00337104 38 A0 01 04 */ li r5, 0x104
/* 8033B4A8 00337108 4B CC 8B 59 */ bl memcpy
/* 8033B4AC 0033710C 7F 64 DB 78 */ mr r4, r27
/* 8033B4B0 00337110 38 61 00 08 */ addi r3, r1, 8
/* 8033B4B4 00337114 38 A0 01 04 */ li r5, 0x104
/* 8033B4B8 00337118 4B CC 8B 49 */ bl memcpy
/* 8033B4BC 0033711C 38 61 02 10 */ addi r3, r1, 0x210
/* 8033B4C0 00337120 48 00 00 10 */ b lbl_8033B4D0
lbl_8033B4C4:
/* 8033B4C4 00337124 80 81 02 10 */ lwz r4, 0x210(r1)
/* 8033B4C8 00337128 38 04 FF FF */ addi r0, r4, -1
/* 8033B4CC 0033712C 90 01 02 10 */ stw r0, 0x210(r1)
lbl_8033B4D0:
/* 8033B4D0 00337130 80 81 02 10 */ lwz r4, 0x210(r1)
/* 8033B4D4 00337134 2C 04 00 00 */ cmpwi r4, 0
/* 8033B4D8 00337138 41 82 00 14 */ beq lbl_8033B4EC
/* 8033B4DC 0033713C 54 80 10 3A */ slwi r0, r4, 2
/* 8033B4E0 00337140 7C 03 00 2E */ lwzx r0, r3, r0
/* 8033B4E4 00337144 2C 00 00 00 */ cmpwi r0, 0
/* 8033B4E8 00337148 41 82 FF DC */ beq lbl_8033B4C4
lbl_8033B4EC:
/* 8033B4EC 0033714C 38 61 01 0C */ addi r3, r1, 0x10c
/* 8033B4F0 00337150 48 00 00 10 */ b lbl_8033B500
lbl_8033B4F4:
/* 8033B4F4 00337154 80 A1 01 0C */ lwz r5, 0x10c(r1)
/* 8033B4F8 00337158 38 05 FF FF */ addi r0, r5, -1
/* 8033B4FC 0033715C 90 01 01 0C */ stw r0, 0x10c(r1)
lbl_8033B500:
/* 8033B500 00337160 80 E1 01 0C */ lwz r7, 0x10c(r1)
/* 8033B504 00337164 2C 07 00 00 */ cmpwi r7, 0
/* 8033B508 00337168 41 82 00 14 */ beq lbl_8033B51C
/* 8033B50C 0033716C 54 E0 10 3A */ slwi r0, r7, 2
/* 8033B510 00337170 7C 03 00 2E */ lwzx r0, r3, r0
/* 8033B514 00337174 2C 00 00 00 */ cmpwi r0, 0
/* 8033B518 00337178 41 82 FF DC */ beq lbl_8033B4F4
lbl_8033B51C:
/* 8033B51C 0033717C 38 61 00 08 */ addi r3, r1, 8
/* 8033B520 00337180 48 00 00 10 */ b lbl_8033B530
lbl_8033B524:
/* 8033B524 00337184 80 A1 00 08 */ lwz r5, 8(r1)
/* 8033B528 00337188 38 05 FF FF */ addi r0, r5, -1
/* 8033B52C 0033718C 90 01 00 08 */ stw r0, 8(r1)
lbl_8033B530:
/* 8033B530 00337190 80 C1 00 08 */ lwz r6, 8(r1)
/* 8033B534 00337194 2C 06 00 00 */ cmpwi r6, 0
/* 8033B538 00337198 41 82 00 14 */ beq lbl_8033B54C
/* 8033B53C 0033719C 54 C0 10 3A */ slwi r0, r6, 2
/* 8033B540 003371A0 7C 03 00 2E */ lwzx r0, r3, r0
/* 8033B544 003371A4 2C 00 00 00 */ cmpwi r0, 0
/* 8033B548 003371A8 41 82 FF DC */ beq lbl_8033B524
lbl_8033B54C:
/* 8033B54C 003371AC 2C 06 00 00 */ cmpwi r6, 0
/* 8033B550 003371B0 40 82 00 44 */ bne lbl_8033B594
/* 8033B554 003371B4 3B E0 00 00 */ li r31, 0
/* 8033B558 003371B8 3F A0 80 61 */ lis r29, lbl_80610BD0@ha
/* 8033B55C 003371BC 93 FE 00 00 */ stw r31, 0(r30)
/* 8033B560 003371C0 3B BD 0B D0 */ addi r29, r29, lbl_80610BD0@l
/* 8033B564 003371C4 80 1D 00 8C */ lwz r0, 0x8c(r29)
/* 8033B568 003371C8 28 00 00 01 */ cmplwi r0, 1
/* 8033B56C 003371CC 40 82 00 20 */ bne lbl_8033B58C
/* 8033B570 003371D0 4B FF DA B1 */ bl current_time_hires
/* 8033B574 003371D4 80 9D 00 80 */ lwz r4, 0x80(r29)
/* 8033B578 003371D8 80 1D 00 84 */ lwz r0, 0x84(r29)
/* 8033B57C 003371DC 7C 64 18 50 */ subf r3, r4, r3
/* 8033B580 003371E0 93 FD 00 8C */ stw r31, 0x8c(r29)
/* 8033B584 003371E4 7C 00 1A 14 */ add r0, r0, r3
/* 8033B588 003371E8 90 1D 00 84 */ stw r0, 0x84(r29)
lbl_8033B58C:
/* 8033B58C 003371EC 38 60 00 00 */ li r3, 0
/* 8033B590 003371F0 48 00 04 64 */ b lbl_8033B9F4
lbl_8033B594:
/* 8033B594 003371F4 28 06 00 01 */ cmplwi r6, 1
/* 8033B598 003371F8 40 82 00 54 */ bne lbl_8033B5EC
/* 8033B59C 003371FC 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8033B5A0 00337200 28 00 00 01 */ cmplwi r0, 1
/* 8033B5A4 00337204 40 82 00 48 */ bne lbl_8033B5EC
/* 8033B5A8 00337208 3B E0 00 00 */ li r31, 0
/* 8033B5AC 0033720C 3F A0 80 61 */ lis r29, lbl_80610BD0@ha
/* 8033B5B0 00337210 93 FE 00 00 */ stw r31, 0(r30)
/* 8033B5B4 00337214 3B BD 0B D0 */ addi r29, r29, lbl_80610BD0@l
/* 8033B5B8 00337218 93 FE 00 04 */ stw r31, 4(r30)
/* 8033B5BC 0033721C 80 1D 00 8C */ lwz r0, 0x8c(r29)
/* 8033B5C0 00337220 28 00 00 01 */ cmplwi r0, 1
/* 8033B5C4 00337224 40 82 00 20 */ bne lbl_8033B5E4
/* 8033B5C8 00337228 4B FF DA 59 */ bl current_time_hires
/* 8033B5CC 0033722C 80 9D 00 80 */ lwz r4, 0x80(r29)
/* 8033B5D0 00337230 80 1D 00 84 */ lwz r0, 0x84(r29)
/* 8033B5D4 00337234 7C 64 18 50 */ subf r3, r4, r3
/* 8033B5D8 00337238 93 FD 00 8C */ stw r31, 0x8c(r29)
/* 8033B5DC 0033723C 7C 00 1A 14 */ add r0, r0, r3
/* 8033B5E0 00337240 90 1D 00 84 */ stw r0, 0x84(r29)
lbl_8033B5E4:
/* 8033B5E4 00337244 38 60 00 01 */ li r3, 1
/* 8033B5E8 00337248 48 00 04 0C */ b lbl_8033B9F4
lbl_8033B5EC:
/* 8033B5EC 0033724C 2C 07 00 00 */ cmpwi r7, 0
/* 8033B5F0 00337250 40 82 00 4C */ bne lbl_8033B63C
/* 8033B5F4 00337254 38 00 00 01 */ li r0, 1
/* 8033B5F8 00337258 3F A0 80 61 */ lis r29, lbl_80610BD0@ha
/* 8033B5FC 0033725C 90 1E 00 00 */ stw r0, 0(r30)
/* 8033B600 00337260 3B BD 0B D0 */ addi r29, r29, lbl_80610BD0@l
/* 8033B604 00337264 90 1E 00 04 */ stw r0, 4(r30)
/* 8033B608 00337268 80 1D 00 8C */ lwz r0, 0x8c(r29)
/* 8033B60C 0033726C 28 00 00 01 */ cmplwi r0, 1
/* 8033B610 00337270 40 82 00 24 */ bne lbl_8033B634
/* 8033B614 00337274 4B FF DA 0D */ bl current_time_hires
/* 8033B618 00337278 80 BD 00 80 */ lwz r5, 0x80(r29)
/* 8033B61C 0033727C 38 00 00 00 */ li r0, 0
/* 8033B620 00337280 80 9D 00 84 */ lwz r4, 0x84(r29)
/* 8033B624 00337284 7C 65 18 50 */ subf r3, r5, r3
/* 8033B628 00337288 90 1D 00 8C */ stw r0, 0x8c(r29)
/* 8033B62C 0033728C 7C 04 1A 14 */ add r0, r4, r3
/* 8033B630 00337290 90 1D 00 84 */ stw r0, 0x84(r29)
lbl_8033B634:
/* 8033B634 00337294 38 60 00 01 */ li r3, 1
/* 8033B638 00337298 48 00 03 BC */ b lbl_8033B9F4
lbl_8033B63C:
/* 8033B63C 0033729C 80 01 00 0C */ lwz r0, 0xc(r1)
/* 8033B640 003372A0 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8033B644 003372A4 40 82 00 48 */ bne lbl_8033B68C
/* 8033B648 003372A8 3B E0 00 00 */ li r31, 0
/* 8033B64C 003372AC 3F A0 80 61 */ lis r29, lbl_80610BD0@ha
/* 8033B650 003372B0 93 FE 00 00 */ stw r31, 0(r30)
/* 8033B654 003372B4 3B BD 0B D0 */ addi r29, r29, lbl_80610BD0@l
/* 8033B658 003372B8 93 FE 00 04 */ stw r31, 4(r30)
/* 8033B65C 003372BC 80 1D 00 8C */ lwz r0, 0x8c(r29)
/* 8033B660 003372C0 28 00 00 01 */ cmplwi r0, 1
/* 8033B664 003372C4 40 82 00 20 */ bne lbl_8033B684
/* 8033B668 003372C8 4B FF D9 B9 */ bl current_time_hires
/* 8033B66C 003372CC 80 9D 00 80 */ lwz r4, 0x80(r29)
/* 8033B670 003372D0 80 1D 00 84 */ lwz r0, 0x84(r29)
/* 8033B674 003372D4 7C 64 18 50 */ subf r3, r4, r3
/* 8033B678 003372D8 93 FD 00 8C */ stw r31, 0x8c(r29)
/* 8033B67C 003372DC 7C 00 1A 14 */ add r0, r0, r3
/* 8033B680 003372E0 90 1D 00 84 */ stw r0, 0x84(r29)
lbl_8033B684:
/* 8033B684 003372E4 38 60 00 00 */ li r3, 0
/* 8033B688 003372E8 48 00 03 6C */ b lbl_8033B9F4
lbl_8033B68C:
/* 8033B68C 003372EC 38 61 02 14 */ addi r3, r1, 0x214
/* 8033B690 003372F0 38 A1 00 0C */ addi r5, r1, 0xc
/* 8033B694 003372F4 4B FF E2 71 */ bl gsiLargeIntCompare
/* 8033B698 003372F8 2C 03 FF FF */ cmpwi r3, -1
/* 8033B69C 003372FC 41 82 00 1C */ beq lbl_8033B6B8
/* 8033B6A0 00337300 80 81 02 10 */ lwz r4, 0x210(r1)
/* 8033B6A4 00337304 38 61 02 14 */ addi r3, r1, 0x214
/* 8033B6A8 00337308 38 A1 00 08 */ addi r5, r1, 8
/* 8033B6AC 0033730C 38 E1 02 10 */ addi r7, r1, 0x210
/* 8033B6B0 00337310 38 C0 00 00 */ li r6, 0
/* 8033B6B4 00337314 4B FF EB 19 */ bl gsiLargeIntDiv
lbl_8033B6B8:
/* 8033B6B8 00337318 80 01 02 10 */ lwz r0, 0x210(r1)
/* 8033B6BC 0033731C 2C 00 00 00 */ cmpwi r0, 0
/* 8033B6C0 00337320 40 82 00 48 */ bne lbl_8033B708
/* 8033B6C4 00337324 3B E0 00 00 */ li r31, 0
/* 8033B6C8 00337328 3F A0 80 61 */ lis r29, lbl_80610BD0@ha
/* 8033B6CC 0033732C 93 FE 00 00 */ stw r31, 0(r30)
/* 8033B6D0 00337330 3B BD 0B D0 */ addi r29, r29, lbl_80610BD0@l
/* 8033B6D4 00337334 93 FE 00 04 */ stw r31, 4(r30)
/* 8033B6D8 00337338 80 1D 00 8C */ lwz r0, 0x8c(r29)
/* 8033B6DC 0033733C 28 00 00 01 */ cmplwi r0, 1
/* 8033B6E0 00337340 40 82 00 20 */ bne lbl_8033B700
/* 8033B6E4 00337344 4B FF D9 3D */ bl current_time_hires
/* 8033B6E8 00337348 80 9D 00 80 */ lwz r4, 0x80(r29)
/* 8033B6EC 0033734C 80 1D 00 84 */ lwz r0, 0x84(r29)
/* 8033B6F0 00337350 7C 64 18 50 */ subf r3, r4, r3
/* 8033B6F4 00337354 93 FD 00 8C */ stw r31, 0x8c(r29)
/* 8033B6F8 00337358 7C 00 1A 14 */ add r0, r0, r3
/* 8033B6FC 0033735C 90 1D 00 84 */ stw r0, 0x84(r29)
lbl_8033B700:
/* 8033B700 00337360 38 60 00 01 */ li r3, 1
/* 8033B704 00337364 48 00 02 F0 */ b lbl_8033B9F4
lbl_8033B708:
/* 8033B708 00337368 80 A1 01 0C */ lwz r5, 0x10c(r1)
/* 8033B70C 0033736C 38 01 01 0C */ addi r0, r1, 0x10c
/* 8033B710 00337370 3B E0 00 20 */ li r31, 0x20
/* 8033B714 00337374 38 60 00 01 */ li r3, 1
/* 8033B718 00337378 38 85 FF FF */ addi r4, r5, -1
/* 8033B71C 0033737C 54 84 10 3A */ slwi r4, r4, 2
/* 8033B720 00337380 7C 80 22 14 */ add r4, r0, r4
/* 8033B724 00337384 80 84 00 04 */ lwz r4, 4(r4)
/* 8033B728 00337388 48 00 00 08 */ b lbl_8033B730
lbl_8033B72C:
/* 8033B72C 0033738C 3B FF FF FF */ addi r31, r31, -1
lbl_8033B730:
/* 8033B730 00337390 38 1F FF FF */ addi r0, r31, -1
/* 8033B734 00337394 7C 60 00 30 */ slw r0, r3, r0
/* 8033B738 00337398 7C 00 20 39 */ and. r0, r0, r4
/* 8033B73C 0033739C 41 82 FF F0 */ beq lbl_8033B72C
/* 8033B740 003373A0 38 05 FF FF */ addi r0, r5, -1
/* 8033B744 003373A4 38 61 07 24 */ addi r3, r1, 0x724
/* 8033B748 003373A8 54 00 28 34 */ slwi r0, r0, 5
/* 8033B74C 003373AC 38 80 00 00 */ li r4, 0
/* 8033B750 003373B0 7F FF 02 14 */ add r31, r31, r0
/* 8033B754 003373B4 38 A0 01 04 */ li r5, 0x104
/* 8033B758 003373B8 4B CC 89 AD */ bl memset
/* 8033B75C 003373BC 80 61 00 08 */ lwz r3, 8(r1)
/* 8033B760 003373C0 38 63 00 01 */ addi r3, r3, 1
/* 8033B764 003373C4 28 03 00 40 */ cmplwi r3, 0x40
/* 8033B768 003373C8 90 61 07 24 */ stw r3, 0x724(r1)
/* 8033B76C 003373CC 40 81 00 0C */ ble lbl_8033B778
/* 8033B770 003373D0 38 60 00 00 */ li r3, 0
/* 8033B774 003373D4 48 00 02 80 */ b lbl_8033B9F4
lbl_8033B778:
/* 8033B778 003373D8 38 03 FF FF */ addi r0, r3, -1
/* 8033B77C 003373DC 38 61 07 28 */ addi r3, r1, 0x728
/* 8033B780 003373E0 54 04 10 3A */ slwi r4, r0, 2
/* 8033B784 003373E4 38 A0 00 01 */ li r5, 1
/* 8033B788 003373E8 7C A3 21 2E */ stwx r5, r3, r4
/* 8033B78C 003373EC 38 00 00 1F */ li r0, 0x1f
/* 8033B790 003373F0 81 81 00 0C */ lwz r12, 0xc(r1)
/* 8033B794 003373F4 39 60 00 02 */ li r11, 2
/* 8033B798 003373F8 39 40 00 00 */ li r10, 0
/* 8033B79C 003373FC 39 20 00 01 */ li r9, 1
/* 8033B7A0 00337400 39 00 00 00 */ li r8, 0
/* 8033B7A4 00337404 38 A0 FF FF */ li r5, -1
/* 8033B7A8 00337408 7C 09 03 A6 */ mtctr r0
lbl_8033B7AC:
/* 8033B7AC 0033740C 55 63 08 3C */ slwi r3, r11, 1
/* 8033B7B0 00337410 55 40 08 3C */ slwi r0, r10, 1
/* 8033B7B4 00337414 7C 83 28 14 */ addc r4, r3, r5
/* 8033B7B8 00337418 7C C9 60 16 */ mulhwu r6, r9, r12
/* 8033B7BC 0033741C 51 60 0F FE */ rlwimi r0, r11, 1, 0x1f, 0x1f
/* 8033B7C0 00337420 7C 00 29 14 */ adde r0, r0, r5
/* 8033B7C4 00337424 7C 68 61 D6 */ mullw r3, r8, r12
/* 8033B7C8 00337428 7C 66 1A 14 */ add r3, r6, r3
/* 8033B7CC 0033742C 7C E9 61 D6 */ mullw r7, r9, r12
/* 8033B7D0 00337430 7C 63 00 38 */ and r3, r3, r0
/* 8033B7D4 00337434 7C E0 20 38 */ and r0, r7, r4
/* 8033B7D8 00337438 7C 00 58 10 */ subfc r0, r0, r11
/* 8033B7DC 0033743C 7C 03 51 10 */ subfe r0, r3, r10
/* 8033B7E0 00337440 7C 0B 59 10 */ subfe r0, r11, r11
/* 8033B7E4 00337444 7C 00 00 D1 */ neg. r0, r0
/* 8033B7E8 00337448 41 82 00 0C */ beq lbl_8033B7F4
/* 8033B7EC 0033744C 7D 29 58 14 */ addc r9, r9, r11
/* 8033B7F0 00337450 7D 08 51 14 */ adde r8, r8, r10
lbl_8033B7F4:
/* 8033B7F4 00337454 55 60 08 3C */ slwi r0, r11, 1
/* 8033B7F8 00337458 55 4A 08 3C */ slwi r10, r10, 1
/* 8033B7FC 0033745C 51 6A 0F FE */ rlwimi r10, r11, 1, 0x1f, 0x1f
/* 8033B800 00337460 7C 0B 03 78 */ mr r11, r0
/* 8033B804 00337464 42 00 FF A8 */ bdnz lbl_8033B7AC
/* 8033B808 00337468 80 81 07 24 */ lwz r4, 0x724(r1)
/* 8033B80C 0033746C 7F 69 00 10 */ subfc r27, r9, r0
/* 8033B810 00337470 38 61 07 28 */ addi r3, r1, 0x728
/* 8033B814 00337474 38 A1 00 08 */ addi r5, r1, 8
/* 8033B818 00337478 38 E1 06 20 */ addi r7, r1, 0x620
/* 8033B81C 0033747C 38 C0 00 00 */ li r6, 0
/* 8033B820 00337480 4B FF E9 AD */ bl gsiLargeIntDiv
/* 8033B824 00337484 2C 03 00 00 */ cmpwi r3, 0
/* 8033B828 00337488 40 82 00 40 */ bne lbl_8033B868
/* 8033B82C 0033748C 3F A0 80 61 */ lis r29, lbl_80610BD0@ha
/* 8033B830 00337490 3B BD 0B D0 */ addi r29, r29, lbl_80610BD0@l
/* 8033B834 00337494 80 1D 00 8C */ lwz r0, 0x8c(r29)
/* 8033B838 00337498 28 00 00 01 */ cmplwi r0, 1
/* 8033B83C 0033749C 40 82 00 24 */ bne lbl_8033B860
/* 8033B840 003374A0 4B FF D7 E1 */ bl current_time_hires
/* 8033B844 003374A4 80 BD 00 80 */ lwz r5, 0x80(r29)
/* 8033B848 003374A8 38 00 00 00 */ li r0, 0
/* 8033B84C 003374AC 80 9D 00 84 */ lwz r4, 0x84(r29)
/* 8033B850 003374B0 7C 65 18 50 */ subf r3, r5, r3
/* 8033B854 003374B4 90 1D 00 8C */ stw r0, 0x8c(r29)
/* 8033B858 003374B8 7C 04 1A 14 */ add r0, r4, r3
/* 8033B85C 003374BC 90 1D 00 84 */ stw r0, 0x84(r29)
lbl_8033B860:
/* 8033B860 003374C0 38 60 00 00 */ li r3, 0
/* 8033B864 003374C4 48 00 01 90 */ b lbl_8033B9F4
lbl_8033B868:
/* 8033B868 003374C8 38 61 06 20 */ addi r3, r1, 0x620
/* 8033B86C 003374CC 38 81 00 08 */ addi r4, r1, 8
/* 8033B870 003374D0 38 A1 05 1C */ addi r5, r1, 0x51c
/* 8033B874 003374D4 4B FF F5 75 */ bl gsLargeIntSquareMod
/* 8033B878 003374D8 2C 03 00 00 */ cmpwi r3, 0
/* 8033B87C 003374DC 40 82 00 40 */ bne lbl_8033B8BC
/* 8033B880 003374E0 3F A0 80 61 */ lis r29, lbl_80610BD0@ha
/* 8033B884 003374E4 3B BD 0B D0 */ addi r29, r29, lbl_80610BD0@l
/* 8033B888 003374E8 80 1D 00 8C */ lwz r0, 0x8c(r29)
/* 8033B88C 003374EC 28 00 00 01 */ cmplwi r0, 1
/* 8033B890 003374F0 40 82 00 24 */ bne lbl_8033B8B4
/* 8033B894 003374F4 4B FF D7 8D */ bl current_time_hires
/* 8033B898 003374F8 80 BD 00 80 */ lwz r5, 0x80(r29)
/* 8033B89C 003374FC 38 00 00 00 */ li r0, 0
/* 8033B8A0 00337500 80 9D 00 84 */ lwz r4, 0x84(r29)
/* 8033B8A4 00337504 7C 65 18 50 */ subf r3, r5, r3
/* 8033B8A8 00337508 90 1D 00 8C */ stw r0, 0x8c(r29)
/* 8033B8AC 0033750C 7C 04 1A 14 */ add r0, r4, r3
/* 8033B8B0 00337510 90 1D 00 84 */ stw r0, 0x84(r29)
lbl_8033B8B4:
/* 8033B8B4 00337514 38 60 00 00 */ li r3, 0
/* 8033B8B8 00337518 48 00 01 3C */ b lbl_8033B9F4
lbl_8033B8BC:
/* 8033B8BC 0033751C 7F 66 DB 78 */ mr r6, r27
/* 8033B8C0 00337520 38 61 02 10 */ addi r3, r1, 0x210
/* 8033B8C4 00337524 38 81 05 1C */ addi r4, r1, 0x51c
/* 8033B8C8 00337528 38 A1 00 08 */ addi r5, r1, 8
/* 8033B8CC 0033752C 38 E1 03 14 */ addi r7, r1, 0x314
/* 8033B8D0 00337530 48 00 01 3D */ bl gsiLargeIntMultM
/* 8033B8D4 00337534 2C 03 00 00 */ cmpwi r3, 0
/* 8033B8D8 00337538 40 82 00 40 */ bne lbl_8033B918
/* 8033B8DC 0033753C 3F A0 80 61 */ lis r29, lbl_80610BD0@ha
/* 8033B8E0 00337540 3B BD 0B D0 */ addi r29, r29, lbl_80610BD0@l
/* 8033B8E4 00337544 80 1D 00 8C */ lwz r0, 0x8c(r29)
/* 8033B8E8 00337548 28 00 00 01 */ cmplwi r0, 1
/* 8033B8EC 0033754C 40 82 00 24 */ bne lbl_8033B910
/* 8033B8F0 00337550 4B FF D7 31 */ bl current_time_hires
/* 8033B8F4 00337554 80 BD 00 80 */ lwz r5, 0x80(r29)
/* 8033B8F8 00337558 38 00 00 00 */ li r0, 0
/* 8033B8FC 0033755C 80 9D 00 84 */ lwz r4, 0x84(r29)
/* 8033B900 00337560 7C 65 18 50 */ subf r3, r5, r3
/* 8033B904 00337564 90 1D 00 8C */ stw r0, 0x8c(r29)
/* 8033B908 00337568 7C 04 1A 14 */ add r0, r4, r3
/* 8033B90C 0033756C 90 1D 00 84 */ stw r0, 0x84(r29)
lbl_8033B910:
/* 8033B910 00337570 38 60 00 00 */ li r3, 0
/* 8033B914 00337574 48 00 00 E0 */ b lbl_8033B9F4
lbl_8033B918:
/* 8033B918 00337578 7F C3 F3 78 */ mr r3, r30
/* 8033B91C 0033757C 38 81 06 20 */ addi r4, r1, 0x620
/* 8033B920 00337580 38 A0 01 04 */ li r5, 0x104
/* 8033B924 00337584 4B CC 86 DD */ bl memcpy
/* 8033B928 00337588 3B 9F FF FF */ addi r28, r31, -1
/* 8033B92C 0033758C 3B E1 01 0C */ addi r31, r1, 0x10c
/* 8033B930 00337590 3B A0 00 01 */ li r29, 1
/* 8033B934 00337594 48 00 00 5C */ b lbl_8033B990
lbl_8033B938:
/* 8033B938 00337598 7F C3 F3 78 */ mr r3, r30
/* 8033B93C 0033759C 7F C4 F3 78 */ mr r4, r30
/* 8033B940 003375A0 7F 66 DB 78 */ mr r6, r27
/* 8033B944 003375A4 7F C7 F3 78 */ mr r7, r30
/* 8033B948 003375A8 38 A1 00 08 */ addi r5, r1, 8
/* 8033B94C 003375AC 48 00 00 C1 */ bl gsiLargeIntMultM
/* 8033B950 003375B0 7F 80 2E 70 */ srawi r0, r28, 5
/* 8033B954 003375B4 7F A4 E0 30 */ slw r4, r29, r28
/* 8033B958 003375B8 7C 00 01 94 */ addze r0, r0
/* 8033B95C 003375BC 54 00 10 3A */ slwi r0, r0, 2
/* 8033B960 003375C0 7C 7F 02 14 */ add r3, r31, r0
/* 8033B964 003375C4 80 03 00 04 */ lwz r0, 4(r3)
/* 8033B968 003375C8 7C 80 00 38 */ and r0, r4, r0
/* 8033B96C 003375CC 7C 04 00 40 */ cmplw r4, r0
/* 8033B970 003375D0 40 82 00 1C */ bne lbl_8033B98C
/* 8033B974 003375D4 7F C3 F3 78 */ mr r3, r30
/* 8033B978 003375D8 7F 66 DB 78 */ mr r6, r27
/* 8033B97C 003375DC 7F C7 F3 78 */ mr r7, r30
/* 8033B980 003375E0 38 81 03 14 */ addi r4, r1, 0x314
/* 8033B984 003375E4 38 A1 00 08 */ addi r5, r1, 8
/* 8033B988 003375E8 48 00 00 85 */ bl gsiLargeIntMultM
lbl_8033B98C:
/* 8033B98C 003375EC 3B 9C FF FF */ addi r28, r28, -1
lbl_8033B990:
/* 8033B990 003375F0 2C 1C 00 00 */ cmpwi r28, 0
/* 8033B994 003375F4 40 80 FF A4 */ bge lbl_8033B938
/* 8033B998 003375F8 38 00 00 01 */ li r0, 1
/* 8033B99C 003375FC 7F C3 F3 78 */ mr r3, r30
/* 8033B9A0 00337600 90 01 04 18 */ stw r0, 0x418(r1)
/* 8033B9A4 00337604 7F 66 DB 78 */ mr r6, r27
/* 8033B9A8 00337608 7F C7 F3 78 */ mr r7, r30
/* 8033B9AC 0033760C 38 81 04 18 */ addi r4, r1, 0x418
/* 8033B9B0 00337610 90 01 04 1C */ stw r0, 0x41c(r1)
/* 8033B9B4 00337614 38 A1 00 08 */ addi r5, r1, 8
/* 8033B9B8 00337618 48 00 00 55 */ bl gsiLargeIntMultM
/* 8033B9BC 0033761C 3F C0 80 61 */ lis r30, lbl_80610BD0@ha
/* 8033B9C0 00337620 3B DE 0B D0 */ addi r30, r30, lbl_80610BD0@l
/* 8033B9C4 00337624 80 1E 00 8C */ lwz r0, 0x8c(r30)
/* 8033B9C8 00337628 28 00 00 01 */ cmplwi r0, 1
/* 8033B9CC 0033762C 40 82 00 24 */ bne lbl_8033B9F0
/* 8033B9D0 00337630 4B FF D6 51 */ bl current_time_hires
/* 8033B9D4 00337634 80 BE 00 80 */ lwz r5, 0x80(r30)
/* 8033B9D8 00337638 38 00 00 00 */ li r0, 0
/* 8033B9DC 0033763C 80 9E 00 84 */ lwz r4, 0x84(r30)
/* 8033B9E0 00337640 7C 65 18 50 */ subf r3, r5, r3
/* 8033B9E4 00337644 90 1E 00 8C */ stw r0, 0x8c(r30)
/* 8033B9E8 00337648 7C 04 1A 14 */ add r0, r4, r3
/* 8033B9EC 0033764C 90 1E 00 84 */ stw r0, 0x84(r30)
lbl_8033B9F0:
/* 8033B9F0 00337650 38 60 00 01 */ li r3, 1
lbl_8033B9F4:
/* 8033B9F4 00337654 39 61 08 40 */ addi r11, r1, 0x840
/* 8033B9F8 00337658 4B E8 B7 7D */ bl _restgpr_27
/* 8033B9FC 0033765C 80 01 08 44 */ lwz r0, 0x844(r1)
/* 8033BA00 00337660 7C 08 03 A6 */ mtlr r0
/* 8033BA04 00337664 38 21 08 40 */ addi r1, r1, 0x840
/* 8033BA08 00337668 4E 80 00 20 */ blr
.global gsiLargeIntMultM
gsiLargeIntMultM:
/* 8033BA0C 0033766C 94 21 FC C0 */ stwu r1, -0x340(r1)
/* 8033BA10 00337670 7C 08 02 A6 */ mflr r0
/* 8033BA14 00337674 90 01 03 44 */ stw r0, 0x344(r1)
/* 8033BA18 00337678 39 61 03 40 */ addi r11, r1, 0x340
/* 8033BA1C 0033767C 4B E8 B6 FD */ bl _savegpr_23
/* 8033BA20 00337680 3E E0 80 61 */ lis r23, lbl_80610BD0@ha
/* 8033BA24 00337684 7C 7A 1B 78 */ mr r26, r3
/* 8033BA28 00337688 3A F7 0B D0 */ addi r23, r23, lbl_80610BD0@l
/* 8033BA2C 0033768C 7C 9B 23 78 */ mr r27, r4
/* 8033BA30 00337690 80 17 00 1C */ lwz r0, 0x1c(r23)
/* 8033BA34 00337694 7C BC 2B 78 */ mr r28, r5
/* 8033BA38 00337698 7C DD 33 78 */ mr r29, r6
/* 8033BA3C 0033769C 7C FE 3B 78 */ mr r30, r7
/* 8033BA40 003376A0 2C 00 00 00 */ cmpwi r0, 0
/* 8033BA44 003376A4 40 82 00 30 */ bne lbl_8033BA74
/* 8033BA48 003376A8 80 77 00 18 */ lwz r3, 0x18(r23)
/* 8033BA4C 003376AC 38 03 00 01 */ addi r0, r3, 1
/* 8033BA50 003376B0 90 17 00 18 */ stw r0, 0x18(r23)
/* 8033BA54 003376B4 4B FF D5 CD */ bl current_time_hires
/* 8033BA58 003376B8 38 00 00 01 */ li r0, 1
/* 8033BA5C 003376BC 90 77 00 10 */ stw r3, 0x10(r23)
/* 8033BA60 003376C0 90 17 00 1C */ stw r0, 0x1c(r23)
/* 8033BA64 003376C4 48 00 00 10 */ b lbl_8033BA74
lbl_8033BA68:
/* 8033BA68 003376C8 80 7A 00 00 */ lwz r3, 0(r26)
/* 8033BA6C 003376CC 38 03 FF FF */ addi r0, r3, -1
/* 8033BA70 003376D0 90 1A 00 00 */ stw r0, 0(r26)
lbl_8033BA74:
/* 8033BA74 003376D4 80 1A 00 00 */ lwz r0, 0(r26)
/* 8033BA78 003376D8 2C 00 00 00 */ cmpwi r0, 0
/* 8033BA7C 003376DC 41 82 00 24 */ beq lbl_8033BAA0
/* 8033BA80 003376E0 54 00 10 3A */ slwi r0, r0, 2
/* 8033BA84 003376E4 7C 1A 00 2E */ lwzx r0, r26, r0
/* 8033BA88 003376E8 2C 00 00 00 */ cmpwi r0, 0
/* 8033BA8C 003376EC 41 82 FF DC */ beq lbl_8033BA68
/* 8033BA90 003376F0 48 00 00 10 */ b lbl_8033BAA0
lbl_8033BA94:
/* 8033BA94 003376F4 80 7B 00 00 */ lwz r3, 0(r27)
/* 8033BA98 003376F8 38 03 FF FF */ addi r0, r3, -1
/* 8033BA9C 003376FC 90 1B 00 00 */ stw r0, 0(r27)
lbl_8033BAA0:
/* 8033BAA0 00337700 80 BB 00 00 */ lwz r5, 0(r27)
/* 8033BAA4 00337704 2C 05 00 00 */ cmpwi r5, 0
/* 8033BAA8 00337708 41 82 00 14 */ beq lbl_8033BABC
/* 8033BAAC 0033770C 54 A0 10 3A */ slwi r0, r5, 2
/* 8033BAB0 00337710 7C 1B 00 2E */ lwzx r0, r27, r0
/* 8033BAB4 00337714 2C 00 00 00 */ cmpwi r0, 0
/* 8033BAB8 00337718 41 82 FF DC */ beq lbl_8033BA94
lbl_8033BABC:
/* 8033BABC 0033771C 80 9C 00 00 */ lwz r4, 0(r28)
/* 8033BAC0 00337720 54 80 10 3A */ slwi r0, r4, 2
/* 8033BAC4 00337724 7C 86 23 78 */ mr r6, r4
/* 8033BAC8 00337728 7C 7C 02 14 */ add r3, r28, r0
/* 8033BACC 0033772C 48 00 00 0C */ b lbl_8033BAD8
lbl_8033BAD0:
/* 8033BAD0 00337730 38 63 FF FC */ addi r3, r3, -4
/* 8033BAD4 00337734 38 C6 FF FF */ addi r6, r6, -1
lbl_8033BAD8:
/* 8033BAD8 00337738 2C 06 00 00 */ cmpwi r6, 0
/* 8033BADC 0033773C 40 81 00 10 */ ble lbl_8033BAEC
/* 8033BAE0 00337740 80 03 00 00 */ lwz r0, 0(r3)
/* 8033BAE4 00337744 2C 00 00 00 */ cmpwi r0, 0
/* 8033BAE8 00337748 41 82 FF E8 */ beq lbl_8033BAD0
lbl_8033BAEC:
/* 8033BAEC 0033774C 2C 06 00 00 */ cmpwi r6, 0
/* 8033BAF0 00337750 40 82 00 48 */ bne lbl_8033BB38
/* 8033BAF4 00337754 3B 00 00 00 */ li r24, 0
/* 8033BAF8 00337758 3E E0 80 61 */ lis r23, lbl_80610BD0@ha
/* 8033BAFC 0033775C 93 1E 00 04 */ stw r24, 4(r30)
/* 8033BB00 00337760 3A F7 0B D0 */ addi r23, r23, lbl_80610BD0@l
/* 8033BB04 00337764 93 1E 00 00 */ stw r24, 0(r30)
/* 8033BB08 00337768 80 17 00 1C */ lwz r0, 0x1c(r23)
/* 8033BB0C 0033776C 28 00 00 01 */ cmplwi r0, 1
/* 8033BB10 00337770 40 82 00 20 */ bne lbl_8033BB30
/* 8033BB14 00337774 4B FF D5 0D */ bl current_time_hires
/* 8033BB18 00337778 80 97 00 10 */ lwz r4, 0x10(r23)
/* 8033BB1C 0033777C 80 17 00 14 */ lwz r0, 0x14(r23)
/* 8033BB20 00337780 7C 64 18 50 */ subf r3, r4, r3
/* 8033BB24 00337784 93 17 00 1C */ stw r24, 0x1c(r23)
/* 8033BB28 00337788 7C 00 1A 14 */ add r0, r0, r3
/* 8033BB2C 0033778C 90 17 00 14 */ stw r0, 0x14(r23)
lbl_8033BB30:
/* 8033BB30 00337790 38 60 00 00 */ li r3, 0
/* 8033BB34 00337794 48 00 03 C4 */ b lbl_8033BEF8
lbl_8033BB38:
/* 8033BB38 00337798 80 1A 00 00 */ lwz r0, 0(r26)
/* 8033BB3C 0033779C 2C 00 00 00 */ cmpwi r0, 0
/* 8033BB40 003377A0 40 82 00 48 */ bne lbl_8033BB88
/* 8033BB44 003377A4 3B 00 00 00 */ li r24, 0
/* 8033BB48 003377A8 3E E0 80 61 */ lis r23, lbl_80610BD0@ha
/* 8033BB4C 003377AC 93 1E 00 00 */ stw r24, 0(r30)
/* 8033BB50 003377B0 3A F7 0B D0 */ addi r23, r23, lbl_80610BD0@l
/* 8033BB54 003377B4 93 1E 00 04 */ stw r24, 4(r30)
/* 8033BB58 003377B8 80 17 00 1C */ lwz r0, 0x1c(r23)
/* 8033BB5C 003377BC 28 00 00 01 */ cmplwi r0, 1
/* 8033BB60 003377C0 40 82 00 20 */ bne lbl_8033BB80
/* 8033BB64 003377C4 4B FF D4 BD */ bl current_time_hires
/* 8033BB68 003377C8 80 97 00 10 */ lwz r4, 0x10(r23)
/* 8033BB6C 003377CC 80 17 00 14 */ lwz r0, 0x14(r23)
/* 8033BB70 003377D0 7C 64 18 50 */ subf r3, r4, r3
/* 8033BB74 003377D4 93 17 00 1C */ stw r24, 0x1c(r23)
/* 8033BB78 003377D8 7C 00 1A 14 */ add r0, r0, r3
/* 8033BB7C 003377DC 90 17 00 14 */ stw r0, 0x14(r23)
lbl_8033BB80:
/* 8033BB80 003377E0 38 60 00 01 */ li r3, 1
/* 8033BB84 003377E4 48 00 03 74 */ b lbl_8033BEF8
lbl_8033BB88:
/* 8033BB88 003377E8 2C 05 00 00 */ cmpwi r5, 0
/* 8033BB8C 003377EC 40 82 00 48 */ bne lbl_8033BBD4
/* 8033BB90 003377F0 3B 00 00 00 */ li r24, 0
/* 8033BB94 003377F4 3E E0 80 61 */ lis r23, lbl_80610BD0@ha
/* 8033BB98 003377F8 93 1E 00 00 */ stw r24, 0(r30)
/* 8033BB9C 003377FC 3A F7 0B D0 */ addi r23, r23, lbl_80610BD0@l
/* 8033BBA0 00337800 93 1E 00 04 */ stw r24, 4(r30)
/* 8033BBA4 00337804 80 17 00 1C */ lwz r0, 0x1c(r23)
/* 8033BBA8 00337808 28 00 00 01 */ cmplwi r0, 1
/* 8033BBAC 0033780C 40 82 00 20 */ bne lbl_8033BBCC
/* 8033BBB0 00337810 4B FF D4 71 */ bl current_time_hires
/* 8033BBB4 00337814 80 97 00 10 */ lwz r4, 0x10(r23)
/* 8033BBB8 00337818 80 17 00 14 */ lwz r0, 0x14(r23)
/* 8033BBBC 0033781C 7C 64 18 50 */ subf r3, r4, r3
/* 8033BBC0 00337820 93 17 00 1C */ stw r24, 0x1c(r23)
/* 8033BBC4 00337824 7C 00 1A 14 */ add r0, r0, r3
/* 8033BBC8 00337828 90 17 00 14 */ stw r0, 0x14(r23)
lbl_8033BBCC:
/* 8033BBCC 0033782C 38 60 00 01 */ li r3, 1
/* 8033BBD0 00337830 48 00 03 28 */ b lbl_8033BEF8
lbl_8033BBD4:
/* 8033BBD4 00337834 7F 43 D3 78 */ mr r3, r26
/* 8033BBD8 00337838 4B FF DB D9 */ bl gsiLargeIntResize
/* 8033BBDC 0033783C 80 9C 00 00 */ lwz r4, 0(r28)
/* 8033BBE0 00337840 7F 63 DB 78 */ mr r3, r27
/* 8033BBE4 00337844 4B FF DB CD */ bl gsiLargeIntResize
/* 8033BBE8 00337848 38 61 02 10 */ addi r3, r1, 0x210
/* 8033BBEC 0033784C 38 80 00 00 */ li r4, 0
/* 8033BBF0 00337850 38 A0 01 04 */ li r5, 0x104
/* 8033BBF4 00337854 4B CC 85 11 */ bl memset
/* 8033BBF8 00337858 38 61 00 08 */ addi r3, r1, 8
/* 8033BBFC 0033785C 38 80 00 00 */ li r4, 0
/* 8033BC00 00337860 38 A0 01 04 */ li r5, 0x104
/* 8033BC04 00337864 4B CC 85 01 */ bl memset
/* 8033BC08 00337868 38 61 01 0C */ addi r3, r1, 0x10c
/* 8033BC0C 0033786C 38 80 00 00 */ li r4, 0
/* 8033BC10 00337870 38 A0 01 04 */ li r5, 0x104
/* 8033BC14 00337874 4B CC 84 F1 */ bl memset
/* 8033BC18 00337878 3B 01 02 10 */ addi r24, r1, 0x210
/* 8033BC1C 0033787C 3B E0 00 00 */ li r31, 0
/* 8033BC20 00337880 3B 20 00 00 */ li r25, 0
/* 8033BC24 00337884 48 00 02 48 */ b lbl_8033BE6C
lbl_8033BC28:
/* 8033BC28 00337888 80 DB 00 04 */ lwz r6, 4(r27)
/* 8033BC2C 0033788C 38 61 00 0C */ addi r3, r1, 0xc
/* 8033BC30 00337890 80 BA 00 04 */ lwz r5, 4(r26)
/* 8033BC34 00337894 38 80 00 00 */ li r4, 0
/* 8033BC38 00337898 80 1B 00 00 */ lwz r0, 0(r27)
/* 8033BC3C 0033789C 7C E6 29 D6 */ mullw r7, r6, r5
/* 8033BC40 003378A0 80 C1 02 14 */ lwz r6, 0x214(r1)
/* 8033BC44 003378A4 54 05 10 3A */ slwi r5, r0, 2
/* 8033BC48 003378A8 7C 07 30 14 */ addc r0, r7, r6
/* 8033BC4C 003378AC 7E E0 E9 D6 */ mullw r23, r0, r29
/* 8033BC50 003378B0 4B CC 84 B5 */ bl memset
/* 8033BC54 003378B4 80 1A 00 04 */ lwz r0, 4(r26)
/* 8033BC58 003378B8 38 61 00 0C */ addi r3, r1, 0xc
/* 8033BC5C 003378BC 38 BB 00 04 */ addi r5, r27, 4
/* 8033BC60 003378C0 38 E1 01 10 */ addi r7, r1, 0x110
/* 8033BC64 003378C4 90 01 00 0C */ stw r0, 0xc(r1)
/* 8033BC68 003378C8 39 01 01 0C */ addi r8, r1, 0x10c
/* 8033BC6C 003378CC 39 20 00 40 */ li r9, 0x40
/* 8033BC70 003378D0 80 9B 00 00 */ lwz r4, 0(r27)
/* 8033BC74 003378D4 90 81 00 08 */ stw r4, 8(r1)
/* 8033BC78 003378D8 80 DB 00 00 */ lwz r6, 0(r27)
/* 8033BC7C 003378DC 4B FF E3 19 */ bl gsiLargeIntMult
/* 8033BC80 003378E0 2C 03 00 00 */ cmpwi r3, 0
/* 8033BC84 003378E4 40 82 00 48 */ bne lbl_8033BCCC
/* 8033BC88 003378E8 3B 20 00 00 */ li r25, 0
/* 8033BC8C 003378EC 3F 00 80 61 */ lis r24, lbl_80610BD0@ha
/* 8033BC90 003378F0 93 3E 00 00 */ stw r25, 0(r30)
/* 8033BC94 003378F4 3B 18 0B D0 */ addi r24, r24, lbl_80610BD0@l
/* 8033BC98 003378F8 93 3E 00 04 */ stw r25, 4(r30)
/* 8033BC9C 003378FC 80 18 00 1C */ lwz r0, 0x1c(r24)
/* 8033BCA0 00337900 28 00 00 01 */ cmplwi r0, 1
/* 8033BCA4 00337904 40 82 00 20 */ bne lbl_8033BCC4
/* 8033BCA8 00337908 4B FF D3 79 */ bl current_time_hires
/* 8033BCAC 0033790C 80 98 00 10 */ lwz r4, 0x10(r24)
/* 8033BCB0 00337910 80 18 00 14 */ lwz r0, 0x14(r24)
/* 8033BCB4 00337914 7C 64 18 50 */ subf r3, r4, r3
/* 8033BCB8 00337918 93 38 00 1C */ stw r25, 0x1c(r24)
/* 8033BCBC 0033791C 7C 00 1A 14 */ add r0, r0, r3
/* 8033BCC0 00337920 90 18 00 14 */ stw r0, 0x14(r24)
lbl_8033BCC4:
/* 8033BCC4 00337924 38 60 00 00 */ li r3, 0
/* 8033BCC8 00337928 48 00 02 30 */ b lbl_8033BEF8
lbl_8033BCCC:
/* 8033BCCC 0033792C 80 1C 00 00 */ lwz r0, 0(r28)
/* 8033BCD0 00337930 38 61 00 0C */ addi r3, r1, 0xc
/* 8033BCD4 00337934 38 80 00 00 */ li r4, 0
/* 8033BCD8 00337938 54 05 10 3A */ slwi r5, r0, 2
/* 8033BCDC 0033793C 4B CC 84 29 */ bl memset
/* 8033BCE0 00337940 80 1C 00 00 */ lwz r0, 0(r28)
/* 8033BCE4 00337944 38 61 00 08 */ addi r3, r1, 8
/* 8033BCE8 00337948 92 E1 00 0C */ stw r23, 0xc(r1)
/* 8033BCEC 0033794C 7F 84 E3 78 */ mr r4, r28
/* 8033BCF0 00337950 7C 65 1B 78 */ mr r5, r3
/* 8033BCF4 00337954 90 01 00 08 */ stw r0, 8(r1)
/* 8033BCF8 00337958 4B FF EB E5 */ bl gsLargeIntKMult
/* 8033BCFC 0033795C 2C 03 00 00 */ cmpwi r3, 0
/* 8033BD00 00337960 40 82 00 48 */ bne lbl_8033BD48
/* 8033BD04 00337964 3B 20 00 00 */ li r25, 0
/* 8033BD08 00337968 3F 00 80 61 */ lis r24, lbl_80610BD0@ha
/* 8033BD0C 0033796C 93 3E 00 00 */ stw r25, 0(r30)
/* 8033BD10 00337970 3B 18 0B D0 */ addi r24, r24, lbl_80610BD0@l
/* 8033BD14 00337974 93 3E 00 04 */ stw r25, 4(r30)
/* 8033BD18 00337978 80 18 00 1C */ lwz r0, 0x1c(r24)
/* 8033BD1C 0033797C 28 00 00 01 */ cmplwi r0, 1
/* 8033BD20 00337980 40 82 00 20 */ bne lbl_8033BD40
/* 8033BD24 00337984 4B FF D2 FD */ bl current_time_hires
/* 8033BD28 00337988 80 98 00 10 */ lwz r4, 0x10(r24)
/* 8033BD2C 0033798C 80 18 00 14 */ lwz r0, 0x14(r24)
/* 8033BD30 00337990 7C 64 18 50 */ subf r3, r4, r3
/* 8033BD34 00337994 93 38 00 1C */ stw r25, 0x1c(r24)
/* 8033BD38 00337998 7C 00 1A 14 */ add r0, r0, r3
/* 8033BD3C 0033799C 90 18 00 14 */ stw r0, 0x14(r24)
lbl_8033BD40:
/* 8033BD40 003379A0 38 60 00 00 */ li r3, 0
/* 8033BD44 003379A4 48 00 01 B4 */ b lbl_8033BEF8
lbl_8033BD48:
/* 8033BD48 003379A8 38 A1 02 14 */ addi r5, r1, 0x214
/* 8033BD4C 003379AC 80 81 01 0C */ lwz r4, 0x10c(r1)
/* 8033BD50 003379B0 80 C1 02 10 */ lwz r6, 0x210(r1)
/* 8033BD54 003379B4 7C A7 2B 78 */ mr r7, r5
/* 8033BD58 003379B8 38 61 01 10 */ addi r3, r1, 0x110
/* 8033BD5C 003379BC 39 01 02 10 */ addi r8, r1, 0x210
/* 8033BD60 003379C0 39 20 00 40 */ li r9, 0x40
/* 8033BD64 003379C4 4B FF DC 5D */ bl gsiLargeIntAdd
/* 8033BD68 003379C8 2C 03 00 00 */ cmpwi r3, 0
/* 8033BD6C 003379CC 40 82 00 48 */ bne lbl_8033BDB4
/* 8033BD70 003379D0 3B 20 00 00 */ li r25, 0
/* 8033BD74 003379D4 3F 00 80 61 */ lis r24, lbl_80610BD0@ha
/* 8033BD78 003379D8 93 3E 00 00 */ stw r25, 0(r30)
/* 8033BD7C 003379DC 3B 18 0B D0 */ addi r24, r24, lbl_80610BD0@l
/* 8033BD80 003379E0 93 3E 00 04 */ stw r25, 4(r30)
/* 8033BD84 003379E4 80 18 00 1C */ lwz r0, 0x1c(r24)
/* 8033BD88 003379E8 28 00 00 01 */ cmplwi r0, 1
/* 8033BD8C 003379EC 40 82 00 20 */ bne lbl_8033BDAC
/* 8033BD90 003379F0 4B FF D2 91 */ bl current_time_hires
/* 8033BD94 003379F4 80 98 00 10 */ lwz r4, 0x10(r24)
/* 8033BD98 003379F8 80 18 00 14 */ lwz r0, 0x14(r24)
/* 8033BD9C 003379FC 7C 64 18 50 */ subf r3, r4, r3
/* 8033BDA0 00337A00 93 38 00 1C */ stw r25, 0x1c(r24)
/* 8033BDA4 00337A04 7C 00 1A 14 */ add r0, r0, r3
/* 8033BDA8 00337A08 90 18 00 14 */ stw r0, 0x14(r24)
lbl_8033BDAC:
/* 8033BDAC 00337A0C 38 60 00 00 */ li r3, 0
/* 8033BDB0 00337A10 48 00 01 48 */ b lbl_8033BEF8
lbl_8033BDB4:
/* 8033BDB4 00337A14 38 A1 02 14 */ addi r5, r1, 0x214
/* 8033BDB8 00337A18 80 81 00 08 */ lwz r4, 8(r1)
/* 8033BDBC 00337A1C 80 C1 02 10 */ lwz r6, 0x210(r1)
/* 8033BDC0 00337A20 7C A7 2B 78 */ mr r7, r5
/* 8033BDC4 00337A24 38 61 00 0C */ addi r3, r1, 0xc
/* 8033BDC8 00337A28 39 01 02 10 */ addi r8, r1, 0x210
/* 8033BDCC 00337A2C 39 20 00 40 */ li r9, 0x40
/* 8033BDD0 00337A30 4B FF DB F1 */ bl gsiLargeIntAdd
/* 8033BDD4 00337A34 2C 03 00 00 */ cmpwi r3, 0
/* 8033BDD8 00337A38 40 82 00 48 */ bne lbl_8033BE20
/* 8033BDDC 00337A3C 3B 20 00 00 */ li r25, 0
/* 8033BDE0 00337A40 3F 00 80 61 */ lis r24, lbl_80610BD0@ha
/* 8033BDE4 00337A44 93 3E 00 00 */ stw r25, 0(r30)
/* 8033BDE8 00337A48 3B 18 0B D0 */ addi r24, r24, lbl_80610BD0@l
/* 8033BDEC 00337A4C 93 3E 00 04 */ stw r25, 4(r30)
/* 8033BDF0 00337A50 80 18 00 1C */ lwz r0, 0x1c(r24)
/* 8033BDF4 00337A54 28 00 00 01 */ cmplwi r0, 1
/* 8033BDF8 00337A58 40 82 00 20 */ bne lbl_8033BE18
/* 8033BDFC 00337A5C 4B FF D2 25 */ bl current_time_hires
/* 8033BE00 00337A60 80 98 00 10 */ lwz r4, 0x10(r24)
/* 8033BE04 00337A64 80 18 00 14 */ lwz r0, 0x14(r24)
/* 8033BE08 00337A68 7C 64 18 50 */ subf r3, r4, r3
/* 8033BE0C 00337A6C 93 38 00 1C */ stw r25, 0x1c(r24)
/* 8033BE10 00337A70 7C 00 1A 14 */ add r0, r0, r3
/* 8033BE14 00337A74 90 18 00 14 */ stw r0, 0x14(r24)
lbl_8033BE18:
/* 8033BE18 00337A78 38 60 00 00 */ li r3, 0
/* 8033BE1C 00337A7C 48 00 00 DC */ b lbl_8033BEF8
lbl_8033BE20:
/* 8033BE20 00337A80 80 61 02 10 */ lwz r3, 0x210(r1)
/* 8033BE24 00337A84 28 03 00 01 */ cmplwi r3, 1
/* 8033BE28 00337A88 40 81 00 34 */ ble lbl_8033BE5C
/* 8033BE2C 00337A8C 38 03 FF FF */ addi r0, r3, -1
/* 8033BE30 00337A90 38 61 02 14 */ addi r3, r1, 0x214
/* 8033BE34 00337A94 38 81 02 18 */ addi r4, r1, 0x218
/* 8033BE38 00337A98 54 05 10 3A */ slwi r5, r0, 2
/* 8033BE3C 00337A9C 4B E8 E4 39 */ bl memmove
/* 8033BE40 00337AA0 80 01 02 10 */ lwz r0, 0x210(r1)
/* 8033BE44 00337AA4 54 00 10 3A */ slwi r0, r0, 2
/* 8033BE48 00337AA8 7F 38 01 2E */ stwx r25, r24, r0
/* 8033BE4C 00337AAC 80 61 02 10 */ lwz r3, 0x210(r1)
/* 8033BE50 00337AB0 38 03 FF FF */ addi r0, r3, -1
/* 8033BE54 00337AB4 90 01 02 10 */ stw r0, 0x210(r1)
/* 8033BE58 00337AB8 48 00 00 0C */ b lbl_8033BE64
lbl_8033BE5C:
/* 8033BE5C 00337ABC 93 21 02 10 */ stw r25, 0x210(r1)
/* 8033BE60 00337AC0 93 21 02 14 */ stw r25, 0x214(r1)
lbl_8033BE64:
/* 8033BE64 00337AC4 3B 5A 00 04 */ addi r26, r26, 4
/* 8033BE68 00337AC8 3B FF 00 01 */ addi r31, r31, 1
lbl_8033BE6C:
/* 8033BE6C 00337ACC 80 DC 00 00 */ lwz r6, 0(r28)
/* 8033BE70 00337AD0 7C 1F 30 40 */ cmplw r31, r6
/* 8033BE74 00337AD4 41 80 FD B4 */ blt lbl_8033BC28
/* 8033BE78 00337AD8 80 81 02 10 */ lwz r4, 0x210(r1)
/* 8033BE7C 00337ADC 38 61 02 14 */ addi r3, r1, 0x214
/* 8033BE80 00337AE0 38 BC 00 04 */ addi r5, r28, 4
/* 8033BE84 00337AE4 4B FF DA 81 */ bl gsiLargeIntCompare
/* 8033BE88 00337AE8 2C 03 FF FF */ cmpwi r3, -1
/* 8033BE8C 00337AEC 41 82 00 24 */ beq lbl_8033BEB0
/* 8033BE90 00337AF0 80 9C 00 00 */ lwz r4, 0(r28)
/* 8033BE94 00337AF4 7F C8 F3 78 */ mr r8, r30
/* 8033BE98 00337AF8 80 C1 02 10 */ lwz r6, 0x210(r1)
/* 8033BE9C 00337AFC 38 7C 00 04 */ addi r3, r28, 4
/* 8033BEA0 00337B00 38 A1 02 14 */ addi r5, r1, 0x214
/* 8033BEA4 00337B04 38 FE 00 04 */ addi r7, r30, 4
/* 8033BEA8 00337B08 4B FF DD A1 */ bl gsiLargeIntSub
/* 8033BEAC 00337B0C 48 00 00 14 */ b lbl_8033BEC0
lbl_8033BEB0:
/* 8033BEB0 00337B10 7F C3 F3 78 */ mr r3, r30
/* 8033BEB4 00337B14 38 81 02 10 */ addi r4, r1, 0x210
/* 8033BEB8 00337B18 38 A0 01 04 */ li r5, 0x104
/* 8033BEBC 00337B1C 4B CC 81 45 */ bl memcpy
lbl_8033BEC0:
/* 8033BEC0 00337B20 3F 40 80 61 */ lis r26, lbl_80610BD0@ha
/* 8033BEC4 00337B24 3B 5A 0B D0 */ addi r26, r26, lbl_80610BD0@l
/* 8033BEC8 00337B28 80 1A 00 1C */ lwz r0, 0x1c(r26)
/* 8033BECC 00337B2C 28 00 00 01 */ cmplwi r0, 1
/* 8033BED0 00337B30 40 82 00 24 */ bne lbl_8033BEF4
/* 8033BED4 00337B34 4B FF D1 4D */ bl current_time_hires
/* 8033BED8 00337B38 80 BA 00 10 */ lwz r5, 0x10(r26)
/* 8033BEDC 00337B3C 38 00 00 00 */ li r0, 0
/* 8033BEE0 00337B40 80 9A 00 14 */ lwz r4, 0x14(r26)
/* 8033BEE4 00337B44 7C 65 18 50 */ subf r3, r5, r3
/* 8033BEE8 00337B48 90 1A 00 1C */ stw r0, 0x1c(r26)
/* 8033BEEC 00337B4C 7C 04 1A 14 */ add r0, r4, r3
/* 8033BEF0 00337B50 90 1A 00 14 */ stw r0, 0x14(r26)
lbl_8033BEF4:
/* 8033BEF4 00337B54 38 60 00 01 */ li r3, 1
lbl_8033BEF8:
/* 8033BEF8 00337B58 39 61 03 40 */ addi r11, r1, 0x340
/* 8033BEFC 00337B5C 4B E8 B2 69 */ bl _restgpr_23
/* 8033BF00 00337B60 80 01 03 44 */ lwz r0, 0x344(r1)
/* 8033BF04 00337B64 7C 08 03 A6 */ mtlr r0
/* 8033BF08 00337B68 38 21 03 40 */ addi r1, r1, 0x340
/* 8033BF0C 00337B6C 4E 80 00 20 */ blr
.global gsLargeIntReverseBytes
gsLargeIntReverseBytes:
/* 8033BF10 00337B70 80 03 00 00 */ lwz r0, 0(r3)
/* 8033BF14 00337B74 2C 00 00 00 */ cmpwi r0, 0
/* 8033BF18 00337B78 40 82 00 0C */ bne lbl_8033BF24
/* 8033BF1C 00337B7C 38 60 00 01 */ li r3, 1
/* 8033BF20 00337B80 4E 80 00 20 */ blr
lbl_8033BF24:
/* 8033BF24 00337B84 54 00 10 3A */ slwi r0, r0, 2
/* 8033BF28 00337B88 38 83 00 04 */ addi r4, r3, 4
/* 8033BF2C 00337B8C 7C 63 02 14 */ add r3, r3, r0
/* 8033BF30 00337B90 38 63 00 03 */ addi r3, r3, 3
/* 8033BF34 00337B94 48 00 00 1C */ b lbl_8033BF50
lbl_8033BF38:
/* 8033BF38 00337B98 88 A4 00 00 */ lbz r5, 0(r4)
/* 8033BF3C 00337B9C 88 03 00 00 */ lbz r0, 0(r3)
/* 8033BF40 00337BA0 98 04 00 00 */ stb r0, 0(r4)
/* 8033BF44 00337BA4 38 84 00 01 */ addi r4, r4, 1
/* 8033BF48 00337BA8 98 A3 00 00 */ stb r5, 0(r3)
/* 8033BF4C 00337BAC 38 63 FF FF */ addi r3, r3, -1
lbl_8033BF50:
/* 8033BF50 00337BB0 7C 04 18 40 */ cmplw r4, r3
/* 8033BF54 00337BB4 41 80 FF E4 */ blt lbl_8033BF38
/* 8033BF58 00337BB8 38 60 00 01 */ li r3, 1
/* 8033BF5C 00337BBC 4E 80 00 20 */ blr
|