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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global ghttpSetRequestEncryptionEngine
ghttpSetRequestEncryptionEngine:
/* 80351EA0 0034DB00 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80351EA4 0034DB04 7C 08 02 A6 */ mflr r0
/* 80351EA8 0034DB08 90 01 00 14 */ stw r0, 0x14(r1)
/* 80351EAC 0034DB0C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80351EB0 0034DB10 93 C1 00 08 */ stw r30, 8(r1)
/* 80351EB4 0034DB14 7C 9E 23 78 */ mr r30, r4
/* 80351EB8 0034DB18 4B FF FC E1 */ bl ghiRequestToConnection
/* 80351EBC 0034DB1C 2C 03 00 00 */ cmpwi r3, 0
/* 80351EC0 0034DB20 7C 7F 1B 78 */ mr r31, r3
/* 80351EC4 0034DB24 40 82 00 0C */ bne lbl_80351ED0
/* 80351EC8 0034DB28 38 60 00 00 */ li r3, 0
/* 80351ECC 0034DB2C 48 00 00 BC */ b lbl_80351F88
lbl_80351ED0:
/* 80351ED0 0034DB30 80 03 01 94 */ lwz r0, 0x194(r3)
/* 80351ED4 0034DB34 7C 80 F0 00 */ cmpw cr1, r0, r30
/* 80351ED8 0034DB38 40 86 00 0C */ bne cr1, lbl_80351EE4
/* 80351EDC 0034DB3C 38 60 00 01 */ li r3, 1
/* 80351EE0 0034DB40 48 00 00 A8 */ b lbl_80351F88
lbl_80351EE4:
/* 80351EE4 0034DB44 80 03 01 90 */ lwz r0, 0x190(r3)
/* 80351EE8 0034DB48 2C 00 00 00 */ cmpwi r0, 0
/* 80351EEC 0034DB4C 41 82 00 10 */ beq lbl_80351EFC
/* 80351EF0 0034DB50 41 86 00 0C */ beq cr1, lbl_80351EFC
/* 80351EF4 0034DB54 38 60 00 00 */ li r3, 0
/* 80351EF8 0034DB58 48 00 00 90 */ b lbl_80351F88
lbl_80351EFC:
/* 80351EFC 0034DB5C 2C 1E 00 00 */ cmpwi r30, 0
/* 80351F00 0034DB60 40 82 00 28 */ bne lbl_80351F28
/* 80351F04 0034DB64 3C 80 80 45 */ lis r4, lbl_8044BF80@ha
/* 80351F08 0034DB68 80 63 00 14 */ lwz r3, 0x14(r3)
/* 80351F0C 0034DB6C 38 84 BF 80 */ addi r4, r4, lbl_8044BF80@l
/* 80351F10 0034DB70 38 A0 00 08 */ li r5, 8
/* 80351F14 0034DB74 4B E7 C6 55 */ bl strncmp
/* 80351F18 0034DB78 2C 03 00 00 */ cmpwi r3, 0
/* 80351F1C 0034DB7C 40 82 00 0C */ bne lbl_80351F28
/* 80351F20 0034DB80 38 60 00 00 */ li r3, 0
/* 80351F24 0034DB84 48 00 00 64 */ b lbl_80351F88
lbl_80351F28:
/* 80351F28 0034DB88 2C 1E 00 00 */ cmpwi r30, 0
/* 80351F2C 0034DB8C 93 DF 01 94 */ stw r30, 0x194(r31)
/* 80351F30 0034DB90 40 82 00 14 */ bne lbl_80351F44
/* 80351F34 0034DB94 38 00 00 00 */ li r0, 0
/* 80351F38 0034DB98 38 60 00 01 */ li r3, 1
/* 80351F3C 0034DB9C 90 1F 01 90 */ stw r0, 0x190(r31)
/* 80351F40 0034DBA0 48 00 00 48 */ b lbl_80351F88
lbl_80351F44:
/* 80351F44 0034DBA4 38 00 00 00 */ li r0, 0
/* 80351F48 0034DBA8 3C 80 80 35 */ lis r4, ghttpEncryptorSslInitFunc@ha
/* 80351F4C 0034DBAC 90 1F 01 90 */ stw r0, 0x190(r31)
/* 80351F50 0034DBB0 38 84 25 50 */ addi r4, r4, ghttpEncryptorSslInitFunc@l
/* 80351F54 0034DBB4 3C 60 80 35 */ lis r3, ghttpEncryptorSslCleanupFunc@ha
/* 80351F58 0034DBB8 3C A0 80 35 */ lis r5, ghttpEncryptorSslEncryptFunc@ha
/* 80351F5C 0034DBBC 90 9F 01 A0 */ stw r4, 0x1a0(r31)
/* 80351F60 0034DBC0 38 63 27 24 */ addi r3, r3, ghttpEncryptorSslCleanupFunc@l
/* 80351F64 0034DBC4 3C 80 80 35 */ lis r4, ghttpEncryptorSslDecryptFunc@ha
/* 80351F68 0034DBC8 38 A5 27 7C */ addi r5, r5, ghttpEncryptorSslEncryptFunc@l
/* 80351F6C 0034DBCC 90 7F 01 A4 */ stw r3, 0x1a4(r31)
/* 80351F70 0034DBD0 38 84 29 98 */ addi r4, r4, ghttpEncryptorSslDecryptFunc@l
/* 80351F74 0034DBD4 38 60 00 01 */ li r3, 1
/* 80351F78 0034DBD8 90 BF 01 A8 */ stw r5, 0x1a8(r31)
/* 80351F7C 0034DBDC 90 9F 01 AC */ stw r4, 0x1ac(r31)
/* 80351F80 0034DBE0 90 1F 01 98 */ stw r0, 0x198(r31)
/* 80351F84 0034DBE4 90 1F 01 9C */ stw r0, 0x19c(r31)
lbl_80351F88:
/* 80351F88 0034DBE8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80351F8C 0034DBEC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80351F90 0034DBF0 83 C1 00 08 */ lwz r30, 8(r1)
/* 80351F94 0034DBF4 7C 08 03 A6 */ mtlr r0
/* 80351F98 0034DBF8 38 21 00 10 */ addi r1, r1, 0x10
/* 80351F9C 0034DBFC 4E 80 00 20 */ blr
.global ghiEncryptorParseASN1Sequence
ghiEncryptorParseASN1Sequence:
/* 80351FA0 0034DC00 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80351FA4 0034DC04 7C 08 02 A6 */ mflr r0
/* 80351FA8 0034DC08 38 A0 00 01 */ li r5, 1
/* 80351FAC 0034DC0C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80351FB0 0034DC10 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80351FB4 0034DC14 3B E0 00 00 */ li r31, 0
/* 80351FB8 0034DC18 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80351FBC 0034DC1C 7C 9E 23 78 */ mr r30, r4
/* 80351FC0 0034DC20 38 81 00 08 */ addi r4, r1, 8
/* 80351FC4 0034DC24 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80351FC8 0034DC28 7C 7D 1B 78 */ mr r29, r3
/* 80351FCC 0034DC2C 9B E1 00 08 */ stb r31, 8(r1)
/* 80351FD0 0034DC30 4B FF F1 79 */ bl ghiReadDataFromBufferFixed
/* 80351FD4 0034DC34 2C 03 00 00 */ cmpwi r3, 0
/* 80351FD8 0034DC38 40 82 00 0C */ bne lbl_80351FE4
/* 80351FDC 0034DC3C 38 60 00 00 */ li r3, 0
/* 80351FE0 0034DC40 48 00 01 00 */ b lbl_803520E0
lbl_80351FE4:
/* 80351FE4 0034DC44 88 01 00 08 */ lbz r0, 8(r1)
/* 80351FE8 0034DC48 2C 00 00 30 */ cmpwi r0, 0x30
/* 80351FEC 0034DC4C 41 82 00 0C */ beq lbl_80351FF8
/* 80351FF0 0034DC50 38 60 00 00 */ li r3, 0
/* 80351FF4 0034DC54 48 00 00 EC */ b lbl_803520E0
lbl_80351FF8:
/* 80351FF8 0034DC58 7F A3 EB 78 */ mr r3, r29
/* 80351FFC 0034DC5C 38 81 00 08 */ addi r4, r1, 8
/* 80352000 0034DC60 38 A0 00 01 */ li r5, 1
/* 80352004 0034DC64 4B FF F1 45 */ bl ghiReadDataFromBufferFixed
/* 80352008 0034DC68 2C 03 00 00 */ cmpwi r3, 0
/* 8035200C 0034DC6C 40 82 00 0C */ bne lbl_80352018
/* 80352010 0034DC70 38 60 00 00 */ li r3, 0
/* 80352014 0034DC74 48 00 00 CC */ b lbl_803520E0
lbl_80352018:
/* 80352018 0034DC78 88 81 00 08 */ lbz r4, 8(r1)
/* 8035201C 0034DC7C 54 80 06 30 */ rlwinm r0, r4, 0, 0x18, 0x18
/* 80352020 0034DC80 2C 00 00 80 */ cmpwi r0, 0x80
/* 80352024 0034DC84 40 82 00 94 */ bne lbl_803520B8
/* 80352028 0034DC88 68 80 00 80 */ xori r0, r4, 0x80
/* 8035202C 0034DC8C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80352030 0034DC90 7C 05 07 74 */ extsb r5, r0
/* 80352034 0034DC94 28 05 00 04 */ cmplwi r5, 4
/* 80352038 0034DC98 98 01 00 08 */ stb r0, 8(r1)
/* 8035203C 0034DC9C 40 81 00 0C */ ble lbl_80352048
/* 80352040 0034DCA0 38 00 00 00 */ li r0, 0
/* 80352044 0034DCA4 48 00 00 38 */ b lbl_8035207C
lbl_80352048:
/* 80352048 0034DCA8 20 05 00 04 */ subfic r0, r5, 4
/* 8035204C 0034DCAC 38 81 00 0C */ addi r4, r1, 0xc
/* 80352050 0034DCB0 7F A3 EB 78 */ mr r3, r29
/* 80352054 0034DCB4 7C 84 02 14 */ add r4, r4, r0
/* 80352058 0034DCB8 4B FF F0 F1 */ bl ghiReadDataFromBufferFixed
/* 8035205C 0034DCBC 2C 03 00 00 */ cmpwi r3, 0
/* 80352060 0034DCC0 40 82 00 0C */ bne lbl_8035206C
/* 80352064 0034DCC4 38 00 00 00 */ li r0, 0
/* 80352068 0034DCC8 48 00 00 14 */ b lbl_8035207C
lbl_8035206C:
/* 8035206C 0034DCCC 80 61 00 0C */ lwz r3, 0xc(r1)
/* 80352070 0034DCD0 4B FA 4D 09 */ bl SOHtoNl
/* 80352074 0034DCD4 90 61 00 0C */ stw r3, 0xc(r1)
/* 80352078 0034DCD8 38 00 00 01 */ li r0, 1
lbl_8035207C:
/* 8035207C 0034DCDC 2C 00 00 00 */ cmpwi r0, 0
/* 80352080 0034DCE0 40 82 00 0C */ bne lbl_8035208C
/* 80352084 0034DCE4 38 60 00 00 */ li r3, 0
/* 80352088 0034DCE8 48 00 00 58 */ b lbl_803520E0
lbl_8035208C:
/* 8035208C 0034DCEC 80 7D 00 10 */ lwz r3, 0x10(r29)
/* 80352090 0034DCF0 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80352094 0034DCF4 80 81 00 0C */ lwz r4, 0xc(r1)
/* 80352098 0034DCF8 7C 03 00 50 */ subf r0, r3, r0
/* 8035209C 0034DCFC 7C 04 00 00 */ cmpw r4, r0
/* 803520A0 0034DD00 40 81 00 0C */ ble lbl_803520AC
/* 803520A4 0034DD04 38 60 00 00 */ li r3, 0
/* 803520A8 0034DD08 48 00 00 38 */ b lbl_803520E0
lbl_803520AC:
/* 803520AC 0034DD0C 90 9E 00 00 */ stw r4, 0(r30)
/* 803520B0 0034DD10 38 60 00 01 */ li r3, 1
/* 803520B4 0034DD14 48 00 00 2C */ b lbl_803520E0
lbl_803520B8:
/* 803520B8 0034DD18 80 7D 00 10 */ lwz r3, 0x10(r29)
/* 803520BC 0034DD1C 7C 84 07 74 */ extsb r4, r4
/* 803520C0 0034DD20 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 803520C4 0034DD24 7C 03 00 50 */ subf r0, r3, r0
/* 803520C8 0034DD28 7C 04 00 00 */ cmpw r4, r0
/* 803520CC 0034DD2C 40 81 00 0C */ ble lbl_803520D8
/* 803520D0 0034DD30 38 60 00 00 */ li r3, 0
/* 803520D4 0034DD34 48 00 00 0C */ b lbl_803520E0
lbl_803520D8:
/* 803520D8 0034DD38 90 9E 00 00 */ stw r4, 0(r30)
/* 803520DC 0034DD3C 38 60 00 01 */ li r3, 1
lbl_803520E0:
/* 803520E0 0034DD40 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803520E4 0034DD44 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 803520E8 0034DD48 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 803520EC 0034DD4C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 803520F0 0034DD50 7C 08 03 A6 */ mtlr r0
/* 803520F4 0034DD54 38 21 00 20 */ addi r1, r1, 0x20
/* 803520F8 0034DD58 4E 80 00 20 */ blr
.global ghttpEncryptorGenerateEncryptionKeys
ghttpEncryptorGenerateEncryptionKeys:
/* 803520FC 0034DD5C 94 21 FE D0 */ stwu r1, -0x130(r1)
/* 80352100 0034DD60 7C 08 02 A6 */ mflr r0
/* 80352104 0034DD64 90 01 01 34 */ stw r0, 0x134(r1)
/* 80352108 0034DD68 93 E1 01 2C */ stw r31, 0x12c(r1)
/* 8035210C 0034DD6C 7C 7F 1B 78 */ mr r31, r3
/* 80352110 0034DD70 38 61 00 B8 */ addi r3, r1, 0xb8
/* 80352114 0034DD74 4B FE A3 1D */ bl SHA1Reset
/* 80352118 0034DD78 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035211C 0034DD7C 38 8D 93 98 */ addi r4, r13, lbl_8063E658-_SDA_BASE_
/* 80352120 0034DD80 38 A0 00 01 */ li r5, 1
/* 80352124 0034DD84 4B FE A5 69 */ bl SHA1Input
/* 80352128 0034DD88 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035212C 0034DD8C 38 9F 06 A4 */ addi r4, r31, 0x6a4
/* 80352130 0034DD90 38 A0 00 30 */ li r5, 0x30
/* 80352134 0034DD94 4B FE A5 59 */ bl SHA1Input
/* 80352138 0034DD98 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035213C 0034DD9C 38 9F 06 84 */ addi r4, r31, 0x684
/* 80352140 0034DDA0 38 A0 00 20 */ li r5, 0x20
/* 80352144 0034DDA4 4B FE A5 49 */ bl SHA1Input
/* 80352148 0034DDA8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035214C 0034DDAC 38 9F 06 64 */ addi r4, r31, 0x664
/* 80352150 0034DDB0 38 A0 00 20 */ li r5, 0x20
/* 80352154 0034DDB4 4B FE A5 39 */ bl SHA1Input
/* 80352158 0034DDB8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035215C 0034DDBC 38 81 00 08 */ addi r4, r1, 8
/* 80352160 0034DDC0 4B FE A3 3D */ bl SHA1Result
/* 80352164 0034DDC4 38 61 00 60 */ addi r3, r1, 0x60
/* 80352168 0034DDC8 4B FE 4B 3D */ bl MD5Init
/* 8035216C 0034DDCC 38 61 00 60 */ addi r3, r1, 0x60
/* 80352170 0034DDD0 38 9F 06 A4 */ addi r4, r31, 0x6a4
/* 80352174 0034DDD4 38 A0 00 30 */ li r5, 0x30
/* 80352178 0034DDD8 4B FE 4B 6D */ bl MD5Update
/* 8035217C 0034DDDC 38 61 00 60 */ addi r3, r1, 0x60
/* 80352180 0034DDE0 38 81 00 08 */ addi r4, r1, 8
/* 80352184 0034DDE4 38 A0 00 14 */ li r5, 0x14
/* 80352188 0034DDE8 4B FE 4B 5D */ bl MD5Update
/* 8035218C 0034DDEC 38 7F 06 D4 */ addi r3, r31, 0x6d4
/* 80352190 0034DDF0 38 81 00 60 */ addi r4, r1, 0x60
/* 80352194 0034DDF4 4B FE 4C 3D */ bl MD5Final
/* 80352198 0034DDF8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035219C 0034DDFC 4B FE A2 95 */ bl SHA1Reset
/* 803521A0 0034DE00 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803521A4 0034DE04 38 8D 93 9C */ addi r4, r13, lbl_8063E65C-_SDA_BASE_
/* 803521A8 0034DE08 38 A0 00 02 */ li r5, 2
/* 803521AC 0034DE0C 4B FE A4 E1 */ bl SHA1Input
/* 803521B0 0034DE10 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803521B4 0034DE14 38 9F 06 A4 */ addi r4, r31, 0x6a4
/* 803521B8 0034DE18 38 A0 00 30 */ li r5, 0x30
/* 803521BC 0034DE1C 4B FE A4 D1 */ bl SHA1Input
/* 803521C0 0034DE20 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803521C4 0034DE24 38 9F 06 84 */ addi r4, r31, 0x684
/* 803521C8 0034DE28 38 A0 00 20 */ li r5, 0x20
/* 803521CC 0034DE2C 4B FE A4 C1 */ bl SHA1Input
/* 803521D0 0034DE30 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803521D4 0034DE34 38 9F 06 64 */ addi r4, r31, 0x664
/* 803521D8 0034DE38 38 A0 00 20 */ li r5, 0x20
/* 803521DC 0034DE3C 4B FE A4 B1 */ bl SHA1Input
/* 803521E0 0034DE40 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803521E4 0034DE44 38 81 00 08 */ addi r4, r1, 8
/* 803521E8 0034DE48 4B FE A2 B5 */ bl SHA1Result
/* 803521EC 0034DE4C 38 61 00 60 */ addi r3, r1, 0x60
/* 803521F0 0034DE50 4B FE 4A B5 */ bl MD5Init
/* 803521F4 0034DE54 38 61 00 60 */ addi r3, r1, 0x60
/* 803521F8 0034DE58 38 9F 06 A4 */ addi r4, r31, 0x6a4
/* 803521FC 0034DE5C 38 A0 00 30 */ li r5, 0x30
/* 80352200 0034DE60 4B FE 4A E5 */ bl MD5Update
/* 80352204 0034DE64 38 61 00 60 */ addi r3, r1, 0x60
/* 80352208 0034DE68 38 81 00 08 */ addi r4, r1, 8
/* 8035220C 0034DE6C 38 A0 00 14 */ li r5, 0x14
/* 80352210 0034DE70 4B FE 4A D5 */ bl MD5Update
/* 80352214 0034DE74 38 7F 06 E4 */ addi r3, r31, 0x6e4
/* 80352218 0034DE78 38 81 00 60 */ addi r4, r1, 0x60
/* 8035221C 0034DE7C 4B FE 4B B5 */ bl MD5Final
/* 80352220 0034DE80 38 61 00 B8 */ addi r3, r1, 0xb8
/* 80352224 0034DE84 4B FE A2 0D */ bl SHA1Reset
/* 80352228 0034DE88 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035222C 0034DE8C 38 8D 93 A0 */ addi r4, r13, lbl_8063E660-_SDA_BASE_
/* 80352230 0034DE90 38 A0 00 03 */ li r5, 3
/* 80352234 0034DE94 4B FE A4 59 */ bl SHA1Input
/* 80352238 0034DE98 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035223C 0034DE9C 38 9F 06 A4 */ addi r4, r31, 0x6a4
/* 80352240 0034DEA0 38 A0 00 30 */ li r5, 0x30
/* 80352244 0034DEA4 4B FE A4 49 */ bl SHA1Input
/* 80352248 0034DEA8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035224C 0034DEAC 38 9F 06 84 */ addi r4, r31, 0x684
/* 80352250 0034DEB0 38 A0 00 20 */ li r5, 0x20
/* 80352254 0034DEB4 4B FE A4 39 */ bl SHA1Input
/* 80352258 0034DEB8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035225C 0034DEBC 38 9F 06 64 */ addi r4, r31, 0x664
/* 80352260 0034DEC0 38 A0 00 20 */ li r5, 0x20
/* 80352264 0034DEC4 4B FE A4 29 */ bl SHA1Input
/* 80352268 0034DEC8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035226C 0034DECC 38 81 00 08 */ addi r4, r1, 8
/* 80352270 0034DED0 4B FE A2 2D */ bl SHA1Result
/* 80352274 0034DED4 38 61 00 60 */ addi r3, r1, 0x60
/* 80352278 0034DED8 4B FE 4A 2D */ bl MD5Init
/* 8035227C 0034DEDC 38 61 00 60 */ addi r3, r1, 0x60
/* 80352280 0034DEE0 38 9F 06 A4 */ addi r4, r31, 0x6a4
/* 80352284 0034DEE4 38 A0 00 30 */ li r5, 0x30
/* 80352288 0034DEE8 4B FE 4A 5D */ bl MD5Update
/* 8035228C 0034DEEC 38 61 00 60 */ addi r3, r1, 0x60
/* 80352290 0034DEF0 38 81 00 08 */ addi r4, r1, 8
/* 80352294 0034DEF4 38 A0 00 14 */ li r5, 0x14
/* 80352298 0034DEF8 4B FE 4A 4D */ bl MD5Update
/* 8035229C 0034DEFC 38 7F 06 F4 */ addi r3, r31, 0x6f4
/* 803522A0 0034DF00 38 81 00 60 */ addi r4, r1, 0x60
/* 803522A4 0034DF04 4B FE 4B 2D */ bl MD5Final
/* 803522A8 0034DF08 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803522AC 0034DF0C 4B FE A1 85 */ bl SHA1Reset
/* 803522B0 0034DF10 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803522B4 0034DF14 38 8D 93 98 */ addi r4, r13, lbl_8063E658-_SDA_BASE_
/* 803522B8 0034DF18 38 A0 00 01 */ li r5, 1
/* 803522BC 0034DF1C 4B FE A3 D1 */ bl SHA1Input
/* 803522C0 0034DF20 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803522C4 0034DF24 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 803522C8 0034DF28 38 A0 00 30 */ li r5, 0x30
/* 803522CC 0034DF2C 4B FE A3 C1 */ bl SHA1Input
/* 803522D0 0034DF30 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803522D4 0034DF34 38 9F 06 64 */ addi r4, r31, 0x664
/* 803522D8 0034DF38 38 A0 00 20 */ li r5, 0x20
/* 803522DC 0034DF3C 4B FE A3 B1 */ bl SHA1Input
/* 803522E0 0034DF40 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803522E4 0034DF44 38 9F 06 84 */ addi r4, r31, 0x684
/* 803522E8 0034DF48 38 A0 00 20 */ li r5, 0x20
/* 803522EC 0034DF4C 4B FE A3 A1 */ bl SHA1Input
/* 803522F0 0034DF50 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803522F4 0034DF54 38 81 00 08 */ addi r4, r1, 8
/* 803522F8 0034DF58 4B FE A1 A5 */ bl SHA1Result
/* 803522FC 0034DF5C 38 61 00 60 */ addi r3, r1, 0x60
/* 80352300 0034DF60 4B FE 49 A5 */ bl MD5Init
/* 80352304 0034DF64 38 61 00 60 */ addi r3, r1, 0x60
/* 80352308 0034DF68 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 8035230C 0034DF6C 38 A0 00 30 */ li r5, 0x30
/* 80352310 0034DF70 4B FE 49 D5 */ bl MD5Update
/* 80352314 0034DF74 38 61 00 60 */ addi r3, r1, 0x60
/* 80352318 0034DF78 38 81 00 08 */ addi r4, r1, 8
/* 8035231C 0034DF7C 38 A0 00 14 */ li r5, 0x14
/* 80352320 0034DF80 4B FE 49 C5 */ bl MD5Update
/* 80352324 0034DF84 38 61 00 20 */ addi r3, r1, 0x20
/* 80352328 0034DF88 38 81 00 60 */ addi r4, r1, 0x60
/* 8035232C 0034DF8C 4B FE 4A A5 */ bl MD5Final
/* 80352330 0034DF90 38 61 00 B8 */ addi r3, r1, 0xb8
/* 80352334 0034DF94 4B FE A0 FD */ bl SHA1Reset
/* 80352338 0034DF98 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035233C 0034DF9C 38 8D 93 9C */ addi r4, r13, lbl_8063E65C-_SDA_BASE_
/* 80352340 0034DFA0 38 A0 00 02 */ li r5, 2
/* 80352344 0034DFA4 4B FE A3 49 */ bl SHA1Input
/* 80352348 0034DFA8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035234C 0034DFAC 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 80352350 0034DFB0 38 A0 00 30 */ li r5, 0x30
/* 80352354 0034DFB4 4B FE A3 39 */ bl SHA1Input
/* 80352358 0034DFB8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035235C 0034DFBC 38 9F 06 64 */ addi r4, r31, 0x664
/* 80352360 0034DFC0 38 A0 00 20 */ li r5, 0x20
/* 80352364 0034DFC4 4B FE A3 29 */ bl SHA1Input
/* 80352368 0034DFC8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035236C 0034DFCC 38 9F 06 84 */ addi r4, r31, 0x684
/* 80352370 0034DFD0 38 A0 00 20 */ li r5, 0x20
/* 80352374 0034DFD4 4B FE A3 19 */ bl SHA1Input
/* 80352378 0034DFD8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035237C 0034DFDC 38 81 00 08 */ addi r4, r1, 8
/* 80352380 0034DFE0 4B FE A1 1D */ bl SHA1Result
/* 80352384 0034DFE4 38 61 00 60 */ addi r3, r1, 0x60
/* 80352388 0034DFE8 4B FE 49 1D */ bl MD5Init
/* 8035238C 0034DFEC 38 61 00 60 */ addi r3, r1, 0x60
/* 80352390 0034DFF0 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 80352394 0034DFF4 38 A0 00 30 */ li r5, 0x30
/* 80352398 0034DFF8 4B FE 49 4D */ bl MD5Update
/* 8035239C 0034DFFC 38 61 00 60 */ addi r3, r1, 0x60
/* 803523A0 0034E000 38 81 00 08 */ addi r4, r1, 8
/* 803523A4 0034E004 38 A0 00 14 */ li r5, 0x14
/* 803523A8 0034E008 4B FE 49 3D */ bl MD5Update
/* 803523AC 0034E00C 38 61 00 30 */ addi r3, r1, 0x30
/* 803523B0 0034E010 38 81 00 60 */ addi r4, r1, 0x60
/* 803523B4 0034E014 4B FE 4A 1D */ bl MD5Final
/* 803523B8 0034E018 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803523BC 0034E01C 4B FE A0 75 */ bl SHA1Reset
/* 803523C0 0034E020 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803523C4 0034E024 38 8D 93 A0 */ addi r4, r13, lbl_8063E660-_SDA_BASE_
/* 803523C8 0034E028 38 A0 00 03 */ li r5, 3
/* 803523CC 0034E02C 4B FE A2 C1 */ bl SHA1Input
/* 803523D0 0034E030 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803523D4 0034E034 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 803523D8 0034E038 38 A0 00 30 */ li r5, 0x30
/* 803523DC 0034E03C 4B FE A2 B1 */ bl SHA1Input
/* 803523E0 0034E040 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803523E4 0034E044 38 9F 06 64 */ addi r4, r31, 0x664
/* 803523E8 0034E048 38 A0 00 20 */ li r5, 0x20
/* 803523EC 0034E04C 4B FE A2 A1 */ bl SHA1Input
/* 803523F0 0034E050 38 61 00 B8 */ addi r3, r1, 0xb8
/* 803523F4 0034E054 38 9F 06 84 */ addi r4, r31, 0x684
/* 803523F8 0034E058 38 A0 00 20 */ li r5, 0x20
/* 803523FC 0034E05C 4B FE A2 91 */ bl SHA1Input
/* 80352400 0034E060 38 61 00 B8 */ addi r3, r1, 0xb8
/* 80352404 0034E064 38 81 00 08 */ addi r4, r1, 8
/* 80352408 0034E068 4B FE A0 95 */ bl SHA1Result
/* 8035240C 0034E06C 38 61 00 60 */ addi r3, r1, 0x60
/* 80352410 0034E070 4B FE 48 95 */ bl MD5Init
/* 80352414 0034E074 38 61 00 60 */ addi r3, r1, 0x60
/* 80352418 0034E078 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 8035241C 0034E07C 38 A0 00 30 */ li r5, 0x30
/* 80352420 0034E080 4B FE 48 C5 */ bl MD5Update
/* 80352424 0034E084 38 61 00 60 */ addi r3, r1, 0x60
/* 80352428 0034E088 38 81 00 08 */ addi r4, r1, 8
/* 8035242C 0034E08C 38 A0 00 14 */ li r5, 0x14
/* 80352430 0034E090 4B FE 48 B5 */ bl MD5Update
/* 80352434 0034E094 38 61 00 40 */ addi r3, r1, 0x40
/* 80352438 0034E098 38 81 00 60 */ addi r4, r1, 0x60
/* 8035243C 0034E09C 4B FE 49 95 */ bl MD5Final
/* 80352440 0034E0A0 38 61 00 B8 */ addi r3, r1, 0xb8
/* 80352444 0034E0A4 4B FE 9F ED */ bl SHA1Reset
/* 80352448 0034E0A8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035244C 0034E0AC 38 8D 93 A4 */ addi r4, r13, lbl_8063E664-_SDA_BASE_
/* 80352450 0034E0B0 38 A0 00 04 */ li r5, 4
/* 80352454 0034E0B4 4B FE A2 39 */ bl SHA1Input
/* 80352458 0034E0B8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035245C 0034E0BC 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 80352460 0034E0C0 38 A0 00 30 */ li r5, 0x30
/* 80352464 0034E0C4 4B FE A2 29 */ bl SHA1Input
/* 80352468 0034E0C8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035246C 0034E0CC 38 9F 06 64 */ addi r4, r31, 0x664
/* 80352470 0034E0D0 38 A0 00 20 */ li r5, 0x20
/* 80352474 0034E0D4 4B FE A2 19 */ bl SHA1Input
/* 80352478 0034E0D8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035247C 0034E0DC 38 9F 06 84 */ addi r4, r31, 0x684
/* 80352480 0034E0E0 38 A0 00 20 */ li r5, 0x20
/* 80352484 0034E0E4 4B FE A2 09 */ bl SHA1Input
/* 80352488 0034E0E8 38 61 00 B8 */ addi r3, r1, 0xb8
/* 8035248C 0034E0EC 38 81 00 08 */ addi r4, r1, 8
/* 80352490 0034E0F0 4B FE A0 0D */ bl SHA1Result
/* 80352494 0034E0F4 38 61 00 60 */ addi r3, r1, 0x60
/* 80352498 0034E0F8 4B FE 48 0D */ bl MD5Init
/* 8035249C 0034E0FC 38 61 00 60 */ addi r3, r1, 0x60
/* 803524A0 0034E100 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 803524A4 0034E104 38 A0 00 30 */ li r5, 0x30
/* 803524A8 0034E108 4B FE 48 3D */ bl MD5Update
/* 803524AC 0034E10C 38 61 00 60 */ addi r3, r1, 0x60
/* 803524B0 0034E110 38 81 00 08 */ addi r4, r1, 8
/* 803524B4 0034E114 38 A0 00 14 */ li r5, 0x14
/* 803524B8 0034E118 4B FE 48 2D */ bl MD5Update
/* 803524BC 0034E11C 38 61 00 50 */ addi r3, r1, 0x50
/* 803524C0 0034E120 38 81 00 60 */ addi r4, r1, 0x60
/* 803524C4 0034E124 4B FE 49 0D */ bl MD5Final
/* 803524C8 0034E128 38 7F 03 20 */ addi r3, r31, 0x320
/* 803524CC 0034E12C 38 81 00 20 */ addi r4, r1, 0x20
/* 803524D0 0034E130 38 A0 00 10 */ li r5, 0x10
/* 803524D4 0034E134 4B CB 1B 2D */ bl memcpy
/* 803524D8 0034E138 38 7F 03 34 */ addi r3, r31, 0x334
/* 803524DC 0034E13C 38 81 00 30 */ addi r4, r1, 0x30
/* 803524E0 0034E140 38 A0 00 10 */ li r5, 0x10
/* 803524E4 0034E144 4B CB 1B 1D */ bl memcpy
/* 803524E8 0034E148 38 7F 03 48 */ addi r3, r31, 0x348
/* 803524EC 0034E14C 38 81 00 40 */ addi r4, r1, 0x40
/* 803524F0 0034E150 38 A0 00 10 */ li r5, 0x10
/* 803524F4 0034E154 4B CB 1B 0D */ bl memcpy
/* 803524F8 0034E158 38 7F 03 58 */ addi r3, r31, 0x358
/* 803524FC 0034E15C 38 81 00 50 */ addi r4, r1, 0x50
/* 80352500 0034E160 38 A0 00 10 */ li r5, 0x10
/* 80352504 0034E164 4B CB 1A FD */ bl memcpy
/* 80352508 0034E168 38 00 00 10 */ li r0, 0x10
/* 8035250C 0034E16C 38 7F 03 A0 */ addi r3, r31, 0x3a0
/* 80352510 0034E170 90 1F 03 88 */ stw r0, 0x388(r31)
/* 80352514 0034E174 38 9F 03 48 */ addi r4, r31, 0x348
/* 80352518 0034E178 38 A0 00 10 */ li r5, 0x10
/* 8035251C 0034E17C 90 1F 03 8C */ stw r0, 0x38c(r31)
/* 80352520 0034E180 90 1F 03 90 */ stw r0, 0x390(r31)
/* 80352524 0034E184 90 1F 03 94 */ stw r0, 0x394(r31)
/* 80352528 0034E188 4B FE 9A 39 */ bl RC4Init
/* 8035252C 0034E18C 80 BF 03 94 */ lwz r5, 0x394(r31)
/* 80352530 0034E190 38 7F 04 A2 */ addi r3, r31, 0x4a2
/* 80352534 0034E194 38 9F 03 58 */ addi r4, r31, 0x358
/* 80352538 0034E198 4B FE 9A 29 */ bl RC4Init
/* 8035253C 0034E19C 80 01 01 34 */ lwz r0, 0x134(r1)
/* 80352540 0034E1A0 83 E1 01 2C */ lwz r31, 0x12c(r1)
/* 80352544 0034E1A4 7C 08 03 A6 */ mtlr r0
/* 80352548 0034E1A8 38 21 01 30 */ addi r1, r1, 0x130
/* 8035254C 0034E1AC 4E 80 00 20 */ blr
.global ghttpEncryptorSslInitFunc
ghttpEncryptorSslInitFunc:
/* 80352550 0034E1B0 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 80352554 0034E1B4 7C 08 02 A6 */ mflr r0
/* 80352558 0034E1B8 90 01 00 64 */ stw r0, 0x64(r1)
/* 8035255C 0034E1BC 39 61 00 60 */ addi r11, r1, 0x60
/* 80352560 0034E1C0 4B E7 4B C9 */ bl _savegpr_27
/* 80352564 0034E1C4 80 A3 00 60 */ lwz r5, 0x60(r3)
/* 80352568 0034E1C8 7C 7B 1B 78 */ mr r27, r3
/* 8035256C 0034E1CC 80 03 00 5C */ lwz r0, 0x5c(r3)
/* 80352570 0034E1D0 7C 9E 23 78 */ mr r30, r4
/* 80352574 0034E1D4 7C 05 00 50 */ subf r0, r5, r0
/* 80352578 0034E1D8 28 00 00 32 */ cmplwi r0, 0x32
/* 8035257C 0034E1DC 40 80 00 0C */ bge lbl_80352588
/* 80352580 0034E1E0 38 60 00 02 */ li r3, 2
/* 80352584 0034E1E4 48 00 01 88 */ b lbl_8035270C
lbl_80352588:
/* 80352588 0034E1E8 38 60 07 04 */ li r3, 0x704
/* 8035258C 0034E1EC 4B FE 6D 89 */ bl gsimalloc
/* 80352590 0034E1F0 2C 03 00 00 */ cmpwi r3, 0
/* 80352594 0034E1F4 90 7E 00 00 */ stw r3, 0(r30)
/* 80352598 0034E1F8 40 82 00 0C */ bne lbl_803525A4
/* 8035259C 0034E1FC 38 60 00 03 */ li r3, 3
/* 803525A0 0034E200 48 00 01 6C */ b lbl_8035270C
lbl_803525A4:
/* 803525A4 0034E204 38 80 00 00 */ li r4, 0
/* 803525A8 0034E208 38 A0 07 04 */ li r5, 0x704
/* 803525AC 0034E20C 4B CB 1B 59 */ bl memset
/* 803525B0 0034E210 83 9E 00 00 */ lwz r28, 0(r30)
/* 803525B4 0034E214 3B A0 00 01 */ li r29, 1
/* 803525B8 0034E218 3B E0 00 00 */ li r31, 0
/* 803525BC 0034E21C 93 BE 00 08 */ stw r29, 8(r30)
/* 803525C0 0034E220 38 7C 05 A4 */ addi r3, r28, 0x5a4
/* 803525C4 0034E224 93 FE 00 0C */ stw r31, 0xc(r30)
/* 803525C8 0034E228 4B FE 46 DD */ bl MD5Init
/* 803525CC 0034E22C 38 7C 05 FC */ addi r3, r28, 0x5fc
/* 803525D0 0034E230 4B FE 9E 61 */ bl SHA1Reset
/* 803525D4 0034E234 38 00 00 16 */ li r0, 0x16
/* 803525D8 0034E238 3B C0 00 03 */ li r30, 3
/* 803525DC 0034E23C 98 01 00 14 */ stb r0, 0x14(r1)
/* 803525E0 0034E240 38 60 00 2D */ li r3, 0x2d
/* 803525E4 0034E244 9B C1 00 15 */ stb r30, 0x15(r1)
/* 803525E8 0034E248 9B E1 00 16 */ stb r31, 0x16(r1)
/* 803525EC 0034E24C 4B FA 47 8D */ bl SOHtoNl
/* 803525F0 0034E250 90 61 00 10 */ stw r3, 0x10(r1)
/* 803525F4 0034E254 38 61 00 17 */ addi r3, r1, 0x17
/* 803525F8 0034E258 38 81 00 12 */ addi r4, r1, 0x12
/* 803525FC 0034E25C 38 A0 00 02 */ li r5, 2
/* 80352600 0034E260 4B CB 1A 01 */ bl memcpy
/* 80352604 0034E264 9B A1 00 19 */ stb r29, 0x19(r1)
/* 80352608 0034E268 38 60 00 29 */ li r3, 0x29
/* 8035260C 0034E26C 9B C1 00 1D */ stb r30, 0x1d(r1)
/* 80352610 0034E270 9B E1 00 1E */ stb r31, 0x1e(r1)
/* 80352614 0034E274 4B FA 47 65 */ bl SOHtoNl
/* 80352618 0034E278 90 61 00 0C */ stw r3, 0xc(r1)
/* 8035261C 0034E27C 38 61 00 1A */ addi r3, r1, 0x1a
/* 80352620 0034E280 38 81 00 0D */ addi r4, r1, 0xd
/* 80352624 0034E284 38 A0 00 03 */ li r5, 3
/* 80352628 0034E288 4B CB 19 D9 */ bl memcpy
/* 8035262C 0034E28C 38 60 00 00 */ li r3, 0
/* 80352630 0034E290 4B FA 47 49 */ bl SOHtoNl
/* 80352634 0034E294 90 61 00 08 */ stw r3, 8(r1)
/* 80352638 0034E298 38 61 00 1F */ addi r3, r1, 0x1f
/* 8035263C 0034E29C 38 81 00 08 */ addi r4, r1, 8
/* 80352640 0034E2A0 38 A0 00 04 */ li r5, 4
/* 80352644 0034E2A4 4B CB 19 BD */ bl memcpy
/* 80352648 0034E2A8 4B FE 69 91 */ bl current_time
/* 8035264C 0034E2AC 4B FE 6A 15 */ bl Util_RandSeed
/* 80352650 0034E2B0 3B A1 00 14 */ addi r29, r1, 0x14
/* 80352654 0034E2B4 3B C0 00 00 */ li r30, 0
lbl_80352658:
/* 80352658 0034E2B8 38 60 00 00 */ li r3, 0
/* 8035265C 0034E2BC 38 80 00 FF */ li r4, 0xff
/* 80352660 0034E2C0 4B FE 6A 19 */ bl Util_RandInt
/* 80352664 0034E2C4 3B DE 00 01 */ addi r30, r30, 1
/* 80352668 0034E2C8 98 7D 00 0F */ stb r3, 0xf(r29)
/* 8035266C 0034E2CC 2C 1E 00 1C */ cmpwi r30, 0x1c
/* 80352670 0034E2D0 3B BD 00 01 */ addi r29, r29, 1
/* 80352674 0034E2D4 41 80 FF E4 */ blt lbl_80352658
/* 80352678 0034E2D8 38 7C 06 84 */ addi r3, r28, 0x684
/* 8035267C 0034E2DC 38 81 00 1F */ addi r4, r1, 0x1f
/* 80352680 0034E2E0 38 A0 00 04 */ li r5, 4
/* 80352684 0034E2E4 4B CB 19 7D */ bl memcpy
/* 80352688 0034E2E8 38 7C 06 88 */ addi r3, r28, 0x688
/* 8035268C 0034E2EC 38 81 00 23 */ addi r4, r1, 0x23
/* 80352690 0034E2F0 38 A0 00 1C */ li r5, 0x1c
/* 80352694 0034E2F4 4B CB 19 6D */ bl memcpy
/* 80352698 0034E2F8 3B C0 00 00 */ li r30, 0
/* 8035269C 0034E2FC 38 60 00 02 */ li r3, 2
/* 803526A0 0034E300 9B C1 00 3F */ stb r30, 0x3f(r1)
/* 803526A4 0034E304 4B FA 46 D9 */ bl SOHtoNs
/* 803526A8 0034E308 B0 61 00 40 */ sth r3, 0x40(r1)
/* 803526AC 0034E30C 3C 80 80 40 */ lis r4, lbl_80402560@ha
/* 803526B0 0034E310 80 04 25 60 */ lwz r0, lbl_80402560@l(r4)
/* 803526B4 0034E314 54 03 04 3E */ clrlwi r3, r0, 0x10
/* 803526B8 0034E318 4B FA 46 C5 */ bl SOHtoNs
/* 803526BC 0034E31C 3B E0 00 01 */ li r31, 1
/* 803526C0 0034E320 B0 61 00 42 */ sth r3, 0x42(r1)
/* 803526C4 0034E324 38 7C 05 A4 */ addi r3, r28, 0x5a4
/* 803526C8 0034E328 38 81 00 19 */ addi r4, r1, 0x19
/* 803526CC 0034E32C 9B E1 00 44 */ stb r31, 0x44(r1)
/* 803526D0 0034E330 38 A0 00 2D */ li r5, 0x2d
/* 803526D4 0034E334 9B C1 00 45 */ stb r30, 0x45(r1)
/* 803526D8 0034E338 4B FE 46 0D */ bl MD5Update
/* 803526DC 0034E33C 38 7C 05 FC */ addi r3, r28, 0x5fc
/* 803526E0 0034E340 38 81 00 19 */ addi r4, r1, 0x19
/* 803526E4 0034E344 38 A0 00 2D */ li r5, 0x2d
/* 803526E8 0034E348 4B FE 9F A5 */ bl SHA1Input
/* 803526EC 0034E34C 38 7B 00 54 */ addi r3, r27, 0x54
/* 803526F0 0034E350 38 81 00 14 */ addi r4, r1, 0x14
/* 803526F4 0034E354 38 A0 00 32 */ li r5, 0x32
/* 803526F8 0034E358 4B FF E3 C5 */ bl ghiAppendDataToBuffer
/* 803526FC 0034E35C 2C 03 00 00 */ cmpwi r3, 0
/* 80352700 0034E360 40 82 00 08 */ bne lbl_80352708
/* 80352704 0034E364 3B E0 00 02 */ li r31, 2
lbl_80352708:
/* 80352708 0034E368 7F E3 FB 78 */ mr r3, r31
lbl_8035270C:
/* 8035270C 0034E36C 39 61 00 60 */ addi r11, r1, 0x60
/* 80352710 0034E370 4B E7 4A 65 */ bl _restgpr_27
/* 80352714 0034E374 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80352718 0034E378 7C 08 03 A6 */ mtlr r0
/* 8035271C 0034E37C 38 21 00 60 */ addi r1, r1, 0x60
/* 80352720 0034E380 4E 80 00 20 */ blr
.global ghttpEncryptorSslCleanupFunc
ghttpEncryptorSslCleanupFunc:
/* 80352724 0034E384 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80352728 0034E388 7C 08 02 A6 */ mflr r0
/* 8035272C 0034E38C 2C 04 00 00 */ cmpwi r4, 0
/* 80352730 0034E390 90 01 00 14 */ stw r0, 0x14(r1)
/* 80352734 0034E394 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80352738 0034E398 7C 9F 23 78 */ mr r31, r4
/* 8035273C 0034E39C 41 82 00 28 */ beq lbl_80352764
/* 80352740 0034E3A0 80 64 00 00 */ lwz r3, 0(r4)
/* 80352744 0034E3A4 2C 03 00 00 */ cmpwi r3, 0
/* 80352748 0034E3A8 41 82 00 10 */ beq lbl_80352758
/* 8035274C 0034E3AC 4B FE 6B ED */ bl gsifree
/* 80352750 0034E3B0 38 00 00 00 */ li r0, 0
/* 80352754 0034E3B4 90 1F 00 00 */ stw r0, 0(r31)
lbl_80352758:
/* 80352758 0034E3B8 38 00 00 00 */ li r0, 0
/* 8035275C 0034E3BC 90 1F 00 08 */ stw r0, 8(r31)
/* 80352760 0034E3C0 90 1F 00 0C */ stw r0, 0xc(r31)
lbl_80352764:
/* 80352764 0034E3C4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80352768 0034E3C8 38 60 00 01 */ li r3, 1
/* 8035276C 0034E3CC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80352770 0034E3D0 7C 08 03 A6 */ mtlr r0
/* 80352774 0034E3D4 38 21 00 10 */ addi r1, r1, 0x10
/* 80352778 0034E3D8 4E 80 00 20 */ blr
.global ghttpEncryptorSslEncryptFunc
ghttpEncryptorSslEncryptFunc:
/* 8035277C 0034E3DC 94 21 FF 70 */ stwu r1, -0x90(r1)
/* 80352780 0034E3E0 7C 08 02 A6 */ mflr r0
/* 80352784 0034E3E4 90 01 00 94 */ stw r0, 0x94(r1)
/* 80352788 0034E3E8 39 61 00 90 */ addi r11, r1, 0x90
/* 8035278C 0034E3EC 4B E7 49 99 */ bl _savegpr_26
/* 80352790 0034E3F0 2C 04 00 00 */ cmpwi r4, 0
/* 80352794 0034E3F4 7C BA 2B 78 */ mr r26, r5
/* 80352798 0034E3F8 7C DD 33 78 */ mr r29, r6
/* 8035279C 0034E3FC 7C FB 3B 78 */ mr r27, r7
/* 803527A0 0034E400 7D 1C 43 78 */ mr r28, r8
/* 803527A4 0034E404 41 82 01 D8 */ beq lbl_8035297C
/* 803527A8 0034E408 83 C4 00 00 */ lwz r30, 0(r4)
/* 803527AC 0034E40C 2C 1E 00 00 */ cmpwi r30, 0
/* 803527B0 0034E410 41 82 00 10 */ beq lbl_803527C0
/* 803527B4 0034E414 80 04 00 0C */ lwz r0, 0xc(r4)
/* 803527B8 0034E418 2C 00 00 00 */ cmpwi r0, 0
/* 803527BC 0034E41C 40 82 00 38 */ bne lbl_803527F4
lbl_803527C0:
/* 803527C0 0034E420 80 08 00 00 */ lwz r0, 0(r8)
/* 803527C4 0034E424 7C 06 00 00 */ cmpw r6, r0
/* 803527C8 0034E428 40 81 00 0C */ ble lbl_803527D4
/* 803527CC 0034E42C 38 60 00 02 */ li r3, 2
/* 803527D0 0034E430 48 00 01 B0 */ b lbl_80352980
lbl_803527D4:
/* 803527D4 0034E434 7F 63 DB 78 */ mr r3, r27
/* 803527D8 0034E438 7F 44 D3 78 */ mr r4, r26
/* 803527DC 0034E43C 7F A5 EB 78 */ mr r5, r29
/* 803527E0 0034E440 4B CB 18 21 */ bl memcpy
/* 803527E4 0034E444 80 1C 00 00 */ lwz r0, 0(r28)
/* 803527E8 0034E448 7C 00 EA 14 */ add r0, r0, r29
/* 803527EC 0034E44C 90 1C 00 00 */ stw r0, 0(r28)
/* 803527F0 0034E450 48 00 01 8C */ b lbl_8035297C
lbl_803527F4:
/* 803527F4 0034E454 54 C3 04 3E */ clrlwi r3, r6, 0x10
/* 803527F8 0034E458 4B FA 45 85 */ bl SOHtoNs
/* 803527FC 0034E45C B0 61 00 08 */ sth r3, 8(r1)
/* 80352800 0034E460 38 1D 00 05 */ addi r0, r29, 5
/* 80352804 0034E464 80 7C 00 00 */ lwz r3, 0(r28)
/* 80352808 0034E468 7C 03 00 00 */ cmpw r3, r0
/* 8035280C 0034E46C 40 80 00 0C */ bge lbl_80352818
/* 80352810 0034E470 38 60 00 02 */ li r3, 2
/* 80352814 0034E474 48 00 01 6C */ b lbl_80352980
lbl_80352818:
/* 80352818 0034E478 38 60 00 17 */ li r3, 0x17
/* 8035281C 0034E47C 38 00 00 03 */ li r0, 3
/* 80352820 0034E480 3B E0 00 00 */ li r31, 0
/* 80352824 0034E484 98 7B 00 00 */ stb r3, 0(r27)
/* 80352828 0034E488 38 61 00 20 */ addi r3, r1, 0x20
/* 8035282C 0034E48C 98 1B 00 01 */ stb r0, 1(r27)
/* 80352830 0034E490 9B FB 00 02 */ stb r31, 2(r27)
/* 80352834 0034E494 4B FE 44 71 */ bl MD5Init
/* 80352838 0034E498 80 BE 03 88 */ lwz r5, 0x388(r30)
/* 8035283C 0034E49C 38 61 00 20 */ addi r3, r1, 0x20
/* 80352840 0034E4A0 38 9E 03 20 */ addi r4, r30, 0x320
/* 80352844 0034E4A4 4B FE 44 A1 */ bl MD5Update
/* 80352848 0034E4A8 3C 80 80 45 */ lis r4, lbl_8044BF8C@ha
/* 8035284C 0034E4AC 38 61 00 20 */ addi r3, r1, 0x20
/* 80352850 0034E4B0 38 84 BF 8C */ addi r4, r4, lbl_8044BF8C@l
/* 80352854 0034E4B4 38 A0 00 30 */ li r5, 0x30
/* 80352858 0034E4B8 4B FE 44 8D */ bl MD5Update
/* 8035285C 0034E4BC 38 61 00 20 */ addi r3, r1, 0x20
/* 80352860 0034E4C0 38 9E 03 10 */ addi r4, r30, 0x310
/* 80352864 0034E4C4 38 A0 00 08 */ li r5, 8
/* 80352868 0034E4C8 4B FE 44 7D */ bl MD5Update
/* 8035286C 0034E4CC 38 61 00 20 */ addi r3, r1, 0x20
/* 80352870 0034E4D0 38 8D 93 AC */ addi r4, r13, lbl_8063E66C-_SDA_BASE_
/* 80352874 0034E4D4 38 A0 00 01 */ li r5, 1
/* 80352878 0034E4D8 4B FE 44 6D */ bl MD5Update
/* 8035287C 0034E4DC 38 61 00 20 */ addi r3, r1, 0x20
/* 80352880 0034E4E0 38 81 00 08 */ addi r4, r1, 8
/* 80352884 0034E4E4 38 A0 00 02 */ li r5, 2
/* 80352888 0034E4E8 4B FE 44 5D */ bl MD5Update
/* 8035288C 0034E4EC 7F 44 D3 78 */ mr r4, r26
/* 80352890 0034E4F0 7F A5 EB 78 */ mr r5, r29
/* 80352894 0034E4F4 38 61 00 20 */ addi r3, r1, 0x20
/* 80352898 0034E4F8 4B FE 44 4D */ bl MD5Update
/* 8035289C 0034E4FC 38 61 00 10 */ addi r3, r1, 0x10
/* 803528A0 0034E500 38 81 00 20 */ addi r4, r1, 0x20
/* 803528A4 0034E504 4B FE 45 2D */ bl MD5Final
/* 803528A8 0034E508 38 61 00 20 */ addi r3, r1, 0x20
/* 803528AC 0034E50C 4B FE 43 F9 */ bl MD5Init
/* 803528B0 0034E510 80 BE 03 88 */ lwz r5, 0x388(r30)
/* 803528B4 0034E514 38 61 00 20 */ addi r3, r1, 0x20
/* 803528B8 0034E518 38 9E 03 20 */ addi r4, r30, 0x320
/* 803528BC 0034E51C 4B FE 44 29 */ bl MD5Update
/* 803528C0 0034E520 3C 80 80 45 */ lis r4, lbl_8044BFC0@ha
/* 803528C4 0034E524 38 61 00 20 */ addi r3, r1, 0x20
/* 803528C8 0034E528 38 84 BF C0 */ addi r4, r4, lbl_8044BFC0@l
/* 803528CC 0034E52C 38 A0 00 30 */ li r5, 0x30
/* 803528D0 0034E530 4B FE 44 15 */ bl MD5Update
/* 803528D4 0034E534 38 61 00 20 */ addi r3, r1, 0x20
/* 803528D8 0034E538 38 81 00 10 */ addi r4, r1, 0x10
/* 803528DC 0034E53C 38 A0 00 10 */ li r5, 0x10
/* 803528E0 0034E540 4B FE 44 05 */ bl MD5Update
/* 803528E4 0034E544 38 61 00 10 */ addi r3, r1, 0x10
/* 803528E8 0034E548 38 81 00 20 */ addi r4, r1, 0x20
/* 803528EC 0034E54C 4B FE 44 E5 */ bl MD5Final
/* 803528F0 0034E550 7F 44 D3 78 */ mr r4, r26
/* 803528F4 0034E554 7F A6 EB 78 */ mr r6, r29
/* 803528F8 0034E558 38 7E 03 A0 */ addi r3, r30, 0x3a0
/* 803528FC 0034E55C 38 BB 00 05 */ addi r5, r27, 5
/* 80352900 0034E560 4B FE 99 A5 */ bl RC4Encrypt
/* 80352904 0034E564 3B BD 00 05 */ addi r29, r29, 5
/* 80352908 0034E568 38 7E 03 A0 */ addi r3, r30, 0x3a0
/* 8035290C 0034E56C 38 81 00 10 */ addi r4, r1, 0x10
/* 80352910 0034E570 38 C0 00 10 */ li r6, 0x10
/* 80352914 0034E574 7C BB EA 14 */ add r5, r27, r29
/* 80352918 0034E578 4B FE 99 8D */ bl RC4Encrypt
/* 8035291C 0034E57C 38 7D 00 0B */ addi r3, r29, 0xb
/* 80352920 0034E580 4B FA 44 59 */ bl SOHtoNl
/* 80352924 0034E584 90 61 00 0C */ stw r3, 0xc(r1)
/* 80352928 0034E588 38 7B 00 03 */ addi r3, r27, 3
/* 8035292C 0034E58C 38 81 00 0E */ addi r4, r1, 0xe
/* 80352930 0034E590 38 A0 00 02 */ li r5, 2
/* 80352934 0034E594 4B CB 16 CD */ bl memcpy
/* 80352938 0034E598 80 1C 00 00 */ lwz r0, 0(r28)
/* 8035293C 0034E59C 38 7D 00 10 */ addi r3, r29, 0x10
/* 80352940 0034E5A0 38 A0 00 07 */ li r5, 7
/* 80352944 0034E5A4 7C 03 00 50 */ subf r0, r3, r0
/* 80352948 0034E5A8 90 1C 00 00 */ stw r0, 0(r28)
lbl_8035294C:
/* 8035294C 0034E5AC 7C 9E 2A 14 */ add r4, r30, r5
/* 80352950 0034E5B0 88 64 03 10 */ lbz r3, 0x310(r4)
/* 80352954 0034E5B4 28 03 00 FF */ cmplwi r3, 0xff
/* 80352958 0034E5B8 40 82 00 10 */ bne lbl_80352968
/* 8035295C 0034E5BC 9B E4 03 10 */ stb r31, 0x310(r4)
/* 80352960 0034E5C0 38 A5 FF FF */ addi r5, r5, -1
/* 80352964 0034E5C4 48 00 00 10 */ b lbl_80352974
lbl_80352968:
/* 80352968 0034E5C8 38 03 00 01 */ addi r0, r3, 1
/* 8035296C 0034E5CC 38 A0 00 00 */ li r5, 0
/* 80352970 0034E5D0 98 04 03 10 */ stb r0, 0x310(r4)
lbl_80352974:
/* 80352974 0034E5D4 2C 05 00 00 */ cmpwi r5, 0
/* 80352978 0034E5D8 40 80 FF D4 */ bge lbl_8035294C
lbl_8035297C:
/* 8035297C 0034E5DC 38 60 00 01 */ li r3, 1
lbl_80352980:
/* 80352980 0034E5E0 39 61 00 90 */ addi r11, r1, 0x90
/* 80352984 0034E5E4 4B E7 47 ED */ bl _restgpr_26
/* 80352988 0034E5E8 80 01 00 94 */ lwz r0, 0x94(r1)
/* 8035298C 0034E5EC 7C 08 03 A6 */ mtlr r0
/* 80352990 0034E5F0 38 21 00 90 */ addi r1, r1, 0x90
/* 80352994 0034E5F4 4E 80 00 20 */ blr
.global ghttpEncryptorSslDecryptFunc
ghttpEncryptorSslDecryptFunc:
/* 80352998 0034E5F8 94 21 FF A0 */ stwu r1, -0x60(r1)
/* 8035299C 0034E5FC 7C 08 02 A6 */ mflr r0
/* 803529A0 0034E600 90 01 00 64 */ stw r0, 0x64(r1)
/* 803529A4 0034E604 39 61 00 60 */ addi r11, r1, 0x60
/* 803529A8 0034E608 4B E7 47 65 */ bl _savegpr_20
/* 803529AC 0034E60C 2C 04 00 00 */ cmpwi r4, 0
/* 803529B0 0034E610 7C 75 1B 78 */ mr r21, r3
/* 803529B4 0034E614 7C 96 23 78 */ mr r22, r4
/* 803529B8 0034E618 7C B7 2B 78 */ mr r23, r5
/* 803529BC 0034E61C 7C D8 33 78 */ mr r24, r6
/* 803529C0 0034E620 7C F9 3B 78 */ mr r25, r7
/* 803529C4 0034E624 7D 1A 43 78 */ mr r26, r8
/* 803529C8 0034E628 3B A0 00 00 */ li r29, 0
/* 803529CC 0034E62C 3B 80 00 00 */ li r28, 0
/* 803529D0 0034E630 41 82 00 10 */ beq lbl_803529E0
/* 803529D4 0034E634 83 C4 00 00 */ lwz r30, 0(r4)
/* 803529D8 0034E638 2C 1E 00 00 */ cmpwi r30, 0
/* 803529DC 0034E63C 40 82 00 2C */ bne lbl_80352A08
lbl_803529E0:
/* 803529E0 0034E640 80 A6 00 00 */ lwz r5, 0(r6)
/* 803529E4 0034E644 7F 23 CB 78 */ mr r3, r25
/* 803529E8 0034E648 7E E4 BB 78 */ mr r4, r23
/* 803529EC 0034E64C 4B CB 16 15 */ bl memcpy
/* 803529F0 0034E650 80 98 00 00 */ lwz r4, 0(r24)
/* 803529F4 0034E654 38 00 00 00 */ li r0, 0
/* 803529F8 0034E658 38 60 00 01 */ li r3, 1
/* 803529FC 0034E65C 90 9A 00 00 */ stw r4, 0(r26)
/* 80352A00 0034E660 90 18 00 00 */ stw r0, 0(r24)
/* 80352A04 0034E664 48 00 01 94 */ b lbl_80352B98
lbl_80352A08:
/* 80352A08 0034E668 40 82 00 0C */ bne lbl_80352A14
/* 80352A0C 0034E66C 38 60 00 03 */ li r3, 3
/* 80352A10 0034E670 48 00 01 88 */ b lbl_80352B98
lbl_80352A14:
/* 80352A14 0034E674 3A 80 00 01 */ li r20, 1
/* 80352A18 0034E678 48 00 01 58 */ b lbl_80352B70
lbl_80352A1C:
/* 80352A1C 0034E67C 7C 1D 00 50 */ subf r0, r29, r0
/* 80352A20 0034E680 28 00 00 05 */ cmplwi r0, 5
/* 80352A24 0034E684 41 80 01 58 */ blt lbl_80352B7C
/* 80352A28 0034E688 7F 77 EA 14 */ add r27, r23, r29
/* 80352A2C 0034E68C 88 1B 00 04 */ lbz r0, 4(r27)
/* 80352A30 0034E690 88 7B 00 03 */ lbz r3, 3(r27)
/* 80352A34 0034E694 50 03 44 2E */ rlwimi r3, r0, 8, 0x10, 0x17
/* 80352A38 0034E698 4B FA 43 39 */ bl SONtoHs
/* 80352A3C 0034E69C 54 65 04 3E */ clrlwi r5, r3, 0x10
/* 80352A40 0034E6A0 80 D8 00 00 */ lwz r6, 0(r24)
/* 80352A44 0034E6A4 7C 9D 2A 14 */ add r4, r29, r5
/* 80352A48 0034E6A8 7C 7F 1B 78 */ mr r31, r3
/* 80352A4C 0034E6AC 38 04 00 05 */ addi r0, r4, 5
/* 80352A50 0034E6B0 7C 06 00 00 */ cmpw r6, r0
/* 80352A54 0034E6B4 41 80 01 28 */ blt lbl_80352B7C
/* 80352A58 0034E6B8 80 75 01 9C */ lwz r3, 0x19c(r21)
/* 80352A5C 0034E6BC 2C 03 00 00 */ cmpwi r3, 0
/* 80352A60 0034E6C0 41 82 00 30 */ beq lbl_80352A90
/* 80352A64 0034E6C4 80 1A 00 00 */ lwz r0, 0(r26)
/* 80352A68 0034E6C8 7C 1C 00 50 */ subf r0, r28, r0
/* 80352A6C 0034E6CC 7C 00 28 00 */ cmpw r0, r5
/* 80352A70 0034E6D0 40 80 00 20 */ bge lbl_80352A90
/* 80352A74 0034E6D4 93 B8 00 00 */ stw r29, 0(r24)
/* 80352A78 0034E6D8 2C 1C 00 00 */ cmpwi r28, 0
/* 80352A7C 0034E6DC 38 60 00 02 */ li r3, 2
/* 80352A80 0034E6E0 93 9A 00 00 */ stw r28, 0(r26)
/* 80352A84 0034E6E4 40 81 01 14 */ ble lbl_80352B98
/* 80352A88 0034E6E8 38 60 00 01 */ li r3, 1
/* 80352A8C 0034E6EC 48 00 01 0C */ b lbl_80352B98
lbl_80352A90:
/* 80352A90 0034E6F0 88 1B 00 00 */ lbz r0, 0(r27)
/* 80352A94 0034E6F4 2C 00 00 16 */ cmpwi r0, 0x16
/* 80352A98 0034E6F8 41 82 00 24 */ beq lbl_80352ABC
/* 80352A9C 0034E6FC 40 80 00 14 */ bge lbl_80352AB0
/* 80352AA0 0034E700 2C 00 00 14 */ cmpwi r0, 0x14
/* 80352AA4 0034E704 41 82 00 A8 */ beq lbl_80352B4C
/* 80352AA8 0034E708 40 80 00 B0 */ bge lbl_80352B58
/* 80352AAC 0034E70C 48 00 00 B4 */ b lbl_80352B60
lbl_80352AB0:
/* 80352AB0 0034E710 2C 00 00 18 */ cmpwi r0, 0x18
/* 80352AB4 0034E714 40 80 00 AC */ bge lbl_80352B60
/* 80352AB8 0034E718 48 00 00 54 */ b lbl_80352B0C
lbl_80352ABC:
/* 80352ABC 0034E71C 2C 03 00 00 */ cmpwi r3, 0
/* 80352AC0 0034E720 3B BD 00 05 */ addi r29, r29, 5
/* 80352AC4 0034E724 41 82 00 18 */ beq lbl_80352ADC
/* 80352AC8 0034E728 7C 97 EA 14 */ add r4, r23, r29
/* 80352ACC 0034E72C 38 7E 04 A2 */ addi r3, r30, 0x4a2
/* 80352AD0 0034E730 57 E6 04 3E */ clrlwi r6, r31, 0x10
/* 80352AD4 0034E734 7C 85 23 78 */ mr r5, r4
/* 80352AD8 0034E738 4B FE 97 CD */ bl RC4Encrypt
lbl_80352ADC:
/* 80352ADC 0034E73C 7E A3 AB 78 */ mr r3, r21
/* 80352AE0 0034E740 38 81 00 08 */ addi r4, r1, 8
/* 80352AE4 0034E744 7C B7 EA 14 */ add r5, r23, r29
/* 80352AE8 0034E748 57 E6 04 3E */ clrlwi r6, r31, 0x10
/* 80352AEC 0034E74C 4B FF DE FD */ bl ghiInitReadOnlyBuffer
/* 80352AF0 0034E750 7E A3 AB 78 */ mr r3, r21
/* 80352AF4 0034E754 7E C4 B3 78 */ mr r4, r22
/* 80352AF8 0034E758 38 A1 00 08 */ addi r5, r1, 8
/* 80352AFC 0034E75C 48 00 00 B5 */ bl ghttpEncryptorProcessSSLHandshake
/* 80352B00 0034E760 2C 03 00 01 */ cmpwi r3, 1
/* 80352B04 0034E764 41 82 00 64 */ beq lbl_80352B68
/* 80352B08 0034E768 48 00 00 90 */ b lbl_80352B98
lbl_80352B0C:
/* 80352B0C 0034E76C 2C 03 00 00 */ cmpwi r3, 0
/* 80352B10 0034E770 3B BD 00 05 */ addi r29, r29, 5
/* 80352B14 0034E774 41 82 00 18 */ beq lbl_80352B2C
/* 80352B18 0034E778 7C 97 EA 14 */ add r4, r23, r29
/* 80352B1C 0034E77C 38 7E 04 A2 */ addi r3, r30, 0x4a2
/* 80352B20 0034E780 57 E6 04 3E */ clrlwi r6, r31, 0x10
/* 80352B24 0034E784 7C 85 23 78 */ mr r5, r4
/* 80352B28 0034E788 4B FE 97 7D */ bl RC4Encrypt
lbl_80352B2C:
/* 80352B2C 0034E78C 57 E4 04 3E */ clrlwi r4, r31, 0x10
/* 80352B30 0034E790 7C 79 E2 14 */ add r3, r25, r28
/* 80352B34 0034E794 3B 64 FF F0 */ addi r27, r4, -16
/* 80352B38 0034E798 7C 97 EA 14 */ add r4, r23, r29
/* 80352B3C 0034E79C 7F 65 DB 78 */ mr r5, r27
/* 80352B40 0034E7A0 4B CB 14 C1 */ bl memcpy
/* 80352B44 0034E7A4 7F 9C DA 14 */ add r28, r28, r27
/* 80352B48 0034E7A8 48 00 00 20 */ b lbl_80352B68
lbl_80352B4C:
/* 80352B4C 0034E7AC 92 95 01 9C */ stw r20, 0x19c(r21)
/* 80352B50 0034E7B0 3B BD 00 05 */ addi r29, r29, 5
/* 80352B54 0034E7B4 48 00 00 14 */ b lbl_80352B68
lbl_80352B58:
/* 80352B58 0034E7B8 3B BD 00 05 */ addi r29, r29, 5
/* 80352B5C 0034E7BC 48 00 00 0C */ b lbl_80352B68
lbl_80352B60:
/* 80352B60 0034E7C0 38 60 00 03 */ li r3, 3
/* 80352B64 0034E7C4 48 00 00 34 */ b lbl_80352B98
lbl_80352B68:
/* 80352B68 0034E7C8 57 E0 04 3E */ clrlwi r0, r31, 0x10
/* 80352B6C 0034E7CC 7F BD 02 14 */ add r29, r29, r0
lbl_80352B70:
/* 80352B70 0034E7D0 80 18 00 00 */ lwz r0, 0(r24)
/* 80352B74 0034E7D4 7C 1D 00 00 */ cmpw r29, r0
/* 80352B78 0034E7D8 41 80 FE A4 */ blt lbl_80352A1C
lbl_80352B7C:
/* 80352B7C 0034E7DC 93 B8 00 00 */ stw r29, 0(r24)
/* 80352B80 0034E7E0 38 60 00 01 */ li r3, 1
/* 80352B84 0034E7E4 93 9A 00 00 */ stw r28, 0(r26)
/* 80352B88 0034E7E8 80 18 00 00 */ lwz r0, 0(r24)
/* 80352B8C 0034E7EC 2C 00 00 00 */ cmpwi r0, 0
/* 80352B90 0034E7F0 40 80 00 08 */ bge lbl_80352B98
/* 80352B94 0034E7F4 38 60 00 03 */ li r3, 3
lbl_80352B98:
/* 80352B98 0034E7F8 39 61 00 60 */ addi r11, r1, 0x60
/* 80352B9C 0034E7FC 4B E7 45 BD */ bl _restgpr_20
/* 80352BA0 0034E800 80 01 00 64 */ lwz r0, 0x64(r1)
/* 80352BA4 0034E804 7C 08 03 A6 */ mtlr r0
/* 80352BA8 0034E808 38 21 00 60 */ addi r1, r1, 0x60
/* 80352BAC 0034E80C 4E 80 00 20 */ blr
.global ghttpEncryptorProcessSSLHandshake
ghttpEncryptorProcessSSLHandshake:
/* 80352BB0 0034E810 94 21 FF 50 */ stwu r1, -0xb0(r1)
/* 80352BB4 0034E814 7C 08 02 A6 */ mflr r0
/* 80352BB8 0034E818 90 01 00 B4 */ stw r0, 0xb4(r1)
/* 80352BBC 0034E81C 39 61 00 B0 */ addi r11, r1, 0xb0
/* 80352BC0 0034E820 4B E7 45 35 */ bl __save_gpr
/* 80352BC4 0034E824 83 E4 00 00 */ lwz r31, 0(r4)
/* 80352BC8 0034E828 7C 7B 1B 78 */ mr r27, r3
/* 80352BCC 0034E82C 7C BC 2B 78 */ mr r28, r5
/* 80352BD0 0034E830 3A 21 00 25 */ addi r17, r1, 0x25
/* 80352BD4 0034E834 3A 40 00 00 */ li r18, 0
/* 80352BD8 0034E838 3E A0 80 40 */ lis r21, 0x8040
/* 80352BDC 0034E83C 3A C0 00 03 */ li r22, 3
/* 80352BE0 0034E840 3A E0 00 16 */ li r23, 0x16
/* 80352BE4 0034E844 3B 00 00 14 */ li r24, 0x14
/* 80352BE8 0034E848 39 C0 00 01 */ li r14, 1
/* 80352BEC 0034E84C 3F 20 80 45 */ lis r25, 0x8045
/* 80352BF0 0034E850 3F 40 80 45 */ lis r26, 0x8045
/* 80352BF4 0034E854 48 00 10 44 */ b lbl_80353C38
lbl_80352BF8:
/* 80352BF8 0034E858 9A 41 00 09 */ stb r18, 9(r1)
/* 80352BFC 0034E85C 7F 83 E3 78 */ mr r3, r28
/* 80352C00 0034E860 38 81 00 09 */ addi r4, r1, 9
/* 80352C04 0034E864 38 A0 00 01 */ li r5, 1
/* 80352C08 0034E868 4B FF E5 41 */ bl ghiReadDataFromBufferFixed
/* 80352C0C 0034E86C 2C 03 00 00 */ cmpwi r3, 0
/* 80352C10 0034E870 40 82 00 0C */ bne lbl_80352C1C
/* 80352C14 0034E874 38 60 00 03 */ li r3, 3
/* 80352C18 0034E878 48 00 10 3C */ b lbl_80353C54
lbl_80352C1C:
/* 80352C1C 0034E87C 88 01 00 09 */ lbz r0, 9(r1)
/* 80352C20 0034E880 7C 00 07 74 */ extsb r0, r0
/* 80352C24 0034E884 2C 00 00 02 */ cmpwi r0, 2
/* 80352C28 0034E888 40 82 01 AC */ bne lbl_80352DD4
/* 80352C2C 0034E88C 92 41 00 34 */ stw r18, 0x34(r1)
/* 80352C30 0034E890 92 41 00 30 */ stw r18, 0x30(r1)
/* 80352C34 0034E894 9A 41 00 08 */ stb r18, 8(r1)
/* 80352C38 0034E898 80 1F 00 00 */ lwz r0, 0(r31)
/* 80352C3C 0034E89C 2C 00 00 00 */ cmpwi r0, 0
/* 80352C40 0034E8A0 41 82 00 0C */ beq lbl_80352C4C
/* 80352C44 0034E8A4 38 60 00 03 */ li r3, 3
/* 80352C48 0034E8A8 48 00 10 0C */ b lbl_80353C54
lbl_80352C4C:
/* 80352C4C 0034E8AC 7F 83 E3 78 */ mr r3, r28
/* 80352C50 0034E8B0 38 81 00 35 */ addi r4, r1, 0x35
/* 80352C54 0034E8B4 38 A0 00 03 */ li r5, 3
/* 80352C58 0034E8B8 4B FF E4 F1 */ bl ghiReadDataFromBufferFixed
/* 80352C5C 0034E8BC 2C 03 00 00 */ cmpwi r3, 0
/* 80352C60 0034E8C0 40 82 00 0C */ bne lbl_80352C6C
/* 80352C64 0034E8C4 38 00 00 00 */ li r0, 0
/* 80352C68 0034E8C8 48 00 00 14 */ b lbl_80352C7C
lbl_80352C6C:
/* 80352C6C 0034E8CC 80 61 00 34 */ lwz r3, 0x34(r1)
/* 80352C70 0034E8D0 4B FA 41 09 */ bl SOHtoNl
/* 80352C74 0034E8D4 90 61 00 34 */ stw r3, 0x34(r1)
/* 80352C78 0034E8D8 38 00 00 01 */ li r0, 1
lbl_80352C7C:
/* 80352C7C 0034E8DC 2C 00 00 00 */ cmpwi r0, 0
/* 80352C80 0034E8E0 40 82 00 0C */ bne lbl_80352C8C
/* 80352C84 0034E8E4 38 60 00 03 */ li r3, 3
/* 80352C88 0034E8E8 48 00 0F CC */ b lbl_80353C54
lbl_80352C8C:
/* 80352C8C 0034E8EC 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 80352C90 0034E8F0 80 1C 00 0C */ lwz r0, 0xc(r28)
/* 80352C94 0034E8F4 80 81 00 34 */ lwz r4, 0x34(r1)
/* 80352C98 0034E8F8 7C 03 00 50 */ subf r0, r3, r0
/* 80352C9C 0034E8FC 7C 04 00 00 */ cmpw r4, r0
/* 80352CA0 0034E900 40 81 00 0C */ ble lbl_80352CAC
/* 80352CA4 0034E904 38 60 00 03 */ li r3, 3
/* 80352CA8 0034E908 48 00 0F AC */ b lbl_80353C54
lbl_80352CAC:
/* 80352CAC 0034E90C 38 03 00 02 */ addi r0, r3, 2
/* 80352CB0 0034E910 7F 83 E3 78 */ mr r3, r28
/* 80352CB4 0034E914 90 1C 00 10 */ stw r0, 0x10(r28)
/* 80352CB8 0034E918 38 9F 06 64 */ addi r4, r31, 0x664
/* 80352CBC 0034E91C 38 A0 00 20 */ li r5, 0x20
/* 80352CC0 0034E920 4B FF E4 89 */ bl ghiReadDataFromBufferFixed
/* 80352CC4 0034E924 2C 03 00 00 */ cmpwi r3, 0
/* 80352CC8 0034E928 40 82 00 0C */ bne lbl_80352CD4
/* 80352CCC 0034E92C 38 60 00 03 */ li r3, 3
/* 80352CD0 0034E930 48 00 0F 84 */ b lbl_80353C54
lbl_80352CD4:
/* 80352CD4 0034E934 7F 83 E3 78 */ mr r3, r28
/* 80352CD8 0034E938 38 81 00 08 */ addi r4, r1, 8
/* 80352CDC 0034E93C 38 A0 00 01 */ li r5, 1
/* 80352CE0 0034E940 4B FF E4 69 */ bl ghiReadDataFromBufferFixed
/* 80352CE4 0034E944 2C 03 00 00 */ cmpwi r3, 0
/* 80352CE8 0034E948 40 82 00 0C */ bne lbl_80352CF4
/* 80352CEC 0034E94C 38 60 00 03 */ li r3, 3
/* 80352CF0 0034E950 48 00 0F 64 */ b lbl_80353C54
lbl_80352CF4:
/* 80352CF4 0034E954 88 A1 00 08 */ lbz r5, 8(r1)
/* 80352CF8 0034E958 7F 83 E3 78 */ mr r3, r28
/* 80352CFC 0034E95C 38 9F 00 04 */ addi r4, r31, 4
/* 80352D00 0034E960 7C A5 07 74 */ extsb r5, r5
/* 80352D04 0034E964 4B FF E4 45 */ bl ghiReadDataFromBufferFixed
/* 80352D08 0034E968 2C 03 00 00 */ cmpwi r3, 0
/* 80352D0C 0034E96C 40 82 00 0C */ bne lbl_80352D18
/* 80352D10 0034E970 38 60 00 03 */ li r3, 3
/* 80352D14 0034E974 48 00 0F 40 */ b lbl_80353C54
lbl_80352D18:
/* 80352D18 0034E978 88 01 00 08 */ lbz r0, 8(r1)
/* 80352D1C 0034E97C 7F 83 E3 78 */ mr r3, r28
/* 80352D20 0034E980 38 81 00 32 */ addi r4, r1, 0x32
/* 80352D24 0034E984 38 A0 00 02 */ li r5, 2
/* 80352D28 0034E988 7C 00 07 74 */ extsb r0, r0
/* 80352D2C 0034E98C 90 1F 00 00 */ stw r0, 0(r31)
/* 80352D30 0034E990 4B FF E4 19 */ bl ghiReadDataFromBufferFixed
/* 80352D34 0034E994 2C 03 00 00 */ cmpwi r3, 0
/* 80352D38 0034E998 40 82 00 0C */ bne lbl_80352D44
/* 80352D3C 0034E99C 38 00 00 00 */ li r0, 0
/* 80352D40 0034E9A0 48 00 00 14 */ b lbl_80352D54
lbl_80352D44:
/* 80352D44 0034E9A4 80 61 00 30 */ lwz r3, 0x30(r1)
/* 80352D48 0034E9A8 4B FA 40 31 */ bl SOHtoNl
/* 80352D4C 0034E9AC 90 61 00 30 */ stw r3, 0x30(r1)
/* 80352D50 0034E9B0 38 00 00 01 */ li r0, 1
lbl_80352D54:
/* 80352D54 0034E9B4 2C 00 00 00 */ cmpwi r0, 0
/* 80352D58 0034E9B8 40 82 00 0C */ bne lbl_80352D64
/* 80352D5C 0034E9BC 38 60 00 03 */ li r3, 3
/* 80352D60 0034E9C0 48 00 0E F4 */ b lbl_80353C54
lbl_80352D64:
/* 80352D64 0034E9C4 80 01 00 30 */ lwz r0, 0x30(r1)
/* 80352D68 0034E9C8 7F 83 E3 78 */ mr r3, r28
/* 80352D6C 0034E9CC 38 81 00 08 */ addi r4, r1, 8
/* 80352D70 0034E9D0 38 A0 00 01 */ li r5, 1
/* 80352D74 0034E9D4 B0 1F 01 04 */ sth r0, 0x104(r31)
/* 80352D78 0034E9D8 4B FF E3 D1 */ bl ghiReadDataFromBufferFixed
/* 80352D7C 0034E9DC 2C 03 00 00 */ cmpwi r3, 0
/* 80352D80 0034E9E0 40 82 00 0C */ bne lbl_80352D8C
/* 80352D84 0034E9E4 38 60 00 03 */ li r3, 3
/* 80352D88 0034E9E8 48 00 0E CC */ b lbl_80353C54
lbl_80352D8C:
/* 80352D8C 0034E9EC 88 01 00 08 */ lbz r0, 8(r1)
/* 80352D90 0034E9F0 7C 00 07 75 */ extsb. r0, r0
/* 80352D94 0034E9F4 41 82 00 0C */ beq lbl_80352DA0
/* 80352D98 0034E9F8 38 60 00 03 */ li r3, 3
/* 80352D9C 0034E9FC 48 00 0E B8 */ b lbl_80353C54
lbl_80352DA0:
/* 80352DA0 0034EA00 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 80352DA4 0034EA04 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80352DA8 0034EA08 80 1C 00 04 */ lwz r0, 4(r28)
/* 80352DAC 0034EA0C 7D F0 20 50 */ subf r15, r16, r4
/* 80352DB0 0034EA10 7D E5 7B 78 */ mr r5, r15
/* 80352DB4 0034EA14 7C 80 82 14 */ add r4, r0, r16
/* 80352DB8 0034EA18 4B FE 3F 2D */ bl MD5Update
/* 80352DBC 0034EA1C 80 1C 00 04 */ lwz r0, 4(r28)
/* 80352DC0 0034EA20 7D E5 7B 78 */ mr r5, r15
/* 80352DC4 0034EA24 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 80352DC8 0034EA28 7C 80 82 14 */ add r4, r0, r16
/* 80352DCC 0034EA2C 4B FE 98 C1 */ bl SHA1Input
/* 80352DD0 0034EA30 48 00 0E 68 */ b lbl_80353C38
lbl_80352DD4:
/* 80352DD4 0034EA34 2C 00 00 0B */ cmpwi r0, 0xb
/* 80352DD8 0034EA38 40 82 09 34 */ bne lbl_8035370C
/* 80352DDC 0034EA3C 92 41 00 2C */ stw r18, 0x2c(r1)
/* 80352DE0 0034EA40 7F 83 E3 78 */ mr r3, r28
/* 80352DE4 0034EA44 38 81 00 2D */ addi r4, r1, 0x2d
/* 80352DE8 0034EA48 3B C0 00 00 */ li r30, 0
/* 80352DEC 0034EA4C 92 41 00 28 */ stw r18, 0x28(r1)
/* 80352DF0 0034EA50 38 A0 00 03 */ li r5, 3
/* 80352DF4 0034EA54 4B FF E3 55 */ bl ghiReadDataFromBufferFixed
/* 80352DF8 0034EA58 2C 03 00 00 */ cmpwi r3, 0
/* 80352DFC 0034EA5C 40 82 00 0C */ bne lbl_80352E08
/* 80352E00 0034EA60 38 00 00 00 */ li r0, 0
/* 80352E04 0034EA64 48 00 00 14 */ b lbl_80352E18
lbl_80352E08:
/* 80352E08 0034EA68 80 61 00 2C */ lwz r3, 0x2c(r1)
/* 80352E0C 0034EA6C 4B FA 3F 6D */ bl SOHtoNl
/* 80352E10 0034EA70 90 61 00 2C */ stw r3, 0x2c(r1)
/* 80352E14 0034EA74 38 00 00 01 */ li r0, 1
lbl_80352E18:
/* 80352E18 0034EA78 2C 00 00 00 */ cmpwi r0, 0
/* 80352E1C 0034EA7C 40 82 00 0C */ bne lbl_80352E28
/* 80352E20 0034EA80 38 60 00 03 */ li r3, 3
/* 80352E24 0034EA84 48 00 0E 30 */ b lbl_80353C54
lbl_80352E28:
/* 80352E28 0034EA88 7F 83 E3 78 */ mr r3, r28
/* 80352E2C 0034EA8C 38 81 00 29 */ addi r4, r1, 0x29
/* 80352E30 0034EA90 38 A0 00 03 */ li r5, 3
/* 80352E34 0034EA94 4B FF E3 15 */ bl ghiReadDataFromBufferFixed
/* 80352E38 0034EA98 2C 03 00 00 */ cmpwi r3, 0
/* 80352E3C 0034EA9C 40 82 00 0C */ bne lbl_80352E48
/* 80352E40 0034EAA0 38 00 00 00 */ li r0, 0
/* 80352E44 0034EAA4 48 00 00 14 */ b lbl_80352E58
lbl_80352E48:
/* 80352E48 0034EAA8 80 61 00 28 */ lwz r3, 0x28(r1)
/* 80352E4C 0034EAAC 4B FA 3F 2D */ bl SOHtoNl
/* 80352E50 0034EAB0 90 61 00 28 */ stw r3, 0x28(r1)
/* 80352E54 0034EAB4 38 00 00 01 */ li r0, 1
lbl_80352E58:
/* 80352E58 0034EAB8 2C 00 00 00 */ cmpwi r0, 0
/* 80352E5C 0034EABC 40 82 00 0C */ bne lbl_80352E68
/* 80352E60 0034EAC0 38 60 00 03 */ li r3, 3
/* 80352E64 0034EAC4 48 00 0D F0 */ b lbl_80353C54
lbl_80352E68:
/* 80352E68 0034EAC8 80 81 00 28 */ lwz r4, 0x28(r1)
/* 80352E6C 0034EACC 80 61 00 2C */ lwz r3, 0x2c(r1)
/* 80352E70 0034EAD0 38 04 00 03 */ addi r0, r4, 3
/* 80352E74 0034EAD4 7C 03 00 00 */ cmpw r3, r0
/* 80352E78 0034EAD8 41 82 00 0C */ beq lbl_80352E84
/* 80352E7C 0034EADC 38 60 00 03 */ li r3, 3
/* 80352E80 0034EAE0 48 00 0D D4 */ b lbl_80353C54
lbl_80352E84:
/* 80352E84 0034EAE4 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 80352E88 0034EAE8 80 1C 00 0C */ lwz r0, 0xc(r28)
/* 80352E8C 0034EAEC 7F A3 22 14 */ add r29, r3, r4
/* 80352E90 0034EAF0 7C 03 00 50 */ subf r0, r3, r0
/* 80352E94 0034EAF4 7C 04 00 00 */ cmpw r4, r0
/* 80352E98 0034EAF8 40 81 00 0C */ ble lbl_80352EA4
/* 80352E9C 0034EAFC 38 60 00 03 */ li r3, 3
/* 80352EA0 0034EB00 48 00 0D B4 */ b lbl_80353C54
lbl_80352EA4:
/* 80352EA4 0034EB04 3C 60 00 01 */ lis r3, 0x0000FFFF@ha
/* 80352EA8 0034EB08 3A 63 FF FF */ addi r19, r3, 0x0000FFFF@l
/* 80352EAC 0034EB0C 48 00 08 18 */ b lbl_803536C4
lbl_80352EB0:
/* 80352EB0 0034EB10 92 41 00 24 */ stw r18, 0x24(r1)
/* 80352EB4 0034EB14 7F 83 E3 78 */ mr r3, r28
/* 80352EB8 0034EB18 7E 24 8B 78 */ mr r4, r17
/* 80352EBC 0034EB1C 38 A0 00 03 */ li r5, 3
/* 80352EC0 0034EB20 4B FF E2 89 */ bl ghiReadDataFromBufferFixed
/* 80352EC4 0034EB24 2C 03 00 00 */ cmpwi r3, 0
/* 80352EC8 0034EB28 40 82 00 0C */ bne lbl_80352ED4
/* 80352ECC 0034EB2C 38 00 00 00 */ li r0, 0
/* 80352ED0 0034EB30 48 00 00 14 */ b lbl_80352EE4
lbl_80352ED4:
/* 80352ED4 0034EB34 80 61 00 24 */ lwz r3, 0x24(r1)
/* 80352ED8 0034EB38 4B FA 3E A1 */ bl SOHtoNl
/* 80352EDC 0034EB3C 90 61 00 24 */ stw r3, 0x24(r1)
/* 80352EE0 0034EB40 38 00 00 01 */ li r0, 1
lbl_80352EE4:
/* 80352EE4 0034EB44 2C 00 00 00 */ cmpwi r0, 0
/* 80352EE8 0034EB48 40 82 00 0C */ bne lbl_80352EF4
/* 80352EEC 0034EB4C 38 60 00 03 */ li r3, 3
/* 80352EF0 0034EB50 48 00 0D 64 */ b lbl_80353C54
lbl_80352EF4:
/* 80352EF4 0034EB54 81 FC 00 10 */ lwz r15, 0x10(r28)
/* 80352EF8 0034EB58 80 1C 00 0C */ lwz r0, 0xc(r28)
/* 80352EFC 0034EB5C 80 61 00 24 */ lwz r3, 0x24(r1)
/* 80352F00 0034EB60 7C 0F 00 50 */ subf r0, r15, r0
/* 80352F04 0034EB64 7C 03 00 00 */ cmpw r3, r0
/* 80352F08 0034EB68 40 81 00 0C */ ble lbl_80352F14
/* 80352F0C 0034EB6C 38 60 00 03 */ li r3, 3
/* 80352F10 0034EB70 48 00 0D 44 */ b lbl_80353C54
lbl_80352F14:
/* 80352F14 0034EB74 7C 03 98 00 */ cmpw r3, r19
/* 80352F18 0034EB78 40 81 00 0C */ ble lbl_80352F24
/* 80352F1C 0034EB7C 38 60 00 03 */ li r3, 3
/* 80352F20 0034EB80 48 00 0D 34 */ b lbl_80353C54
lbl_80352F24:
/* 80352F24 0034EB84 3B DE 00 01 */ addi r30, r30, 1
/* 80352F28 0034EB88 2C 1E 00 01 */ cmpwi r30, 1
/* 80352F2C 0034EB8C 40 82 07 8C */ bne lbl_803536B8
/* 80352F30 0034EB90 92 41 00 20 */ stw r18, 0x20(r1)
/* 80352F34 0034EB94 7F 83 E3 78 */ mr r3, r28
/* 80352F38 0034EB98 38 81 00 20 */ addi r4, r1, 0x20
/* 80352F3C 0034EB9C 4B FF F0 65 */ bl ghiEncryptorParseASN1Sequence
/* 80352F40 0034EBA0 2C 03 00 00 */ cmpwi r3, 0
/* 80352F44 0034EBA4 40 82 00 0C */ bne lbl_80352F50
/* 80352F48 0034EBA8 38 60 00 03 */ li r3, 3
/* 80352F4C 0034EBAC 48 00 0D 08 */ b lbl_80353C54
lbl_80352F50:
/* 80352F50 0034EBB0 7F 83 E3 78 */ mr r3, r28
/* 80352F54 0034EBB4 38 81 00 20 */ addi r4, r1, 0x20
/* 80352F58 0034EBB8 4B FF F0 49 */ bl ghiEncryptorParseASN1Sequence
/* 80352F5C 0034EBBC 2C 03 00 00 */ cmpwi r3, 0
/* 80352F60 0034EBC0 40 82 00 0C */ bne lbl_80352F6C
/* 80352F64 0034EBC4 38 60 00 03 */ li r3, 3
/* 80352F68 0034EBC8 48 00 0C EC */ b lbl_80353C54
lbl_80352F6C:
/* 80352F6C 0034EBCC 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 80352F70 0034EBD0 80 1C 00 0C */ lwz r0, 0xc(r28)
/* 80352F74 0034EBD4 7C 04 00 50 */ subf r0, r4, r0
/* 80352F78 0034EBD8 2C 00 00 05 */ cmpwi r0, 5
/* 80352F7C 0034EBDC 40 80 00 0C */ bge lbl_80352F88
/* 80352F80 0034EBE0 38 60 00 03 */ li r3, 3
/* 80352F84 0034EBE4 48 00 0C D0 */ b lbl_80353C54
lbl_80352F88:
/* 80352F88 0034EBE8 38 A4 00 01 */ addi r5, r4, 1
/* 80352F8C 0034EBEC 80 7C 00 04 */ lwz r3, 4(r28)
/* 80352F90 0034EBF0 90 BC 00 10 */ stw r5, 0x10(r28)
/* 80352F94 0034EBF4 7C 03 20 AE */ lbzx r0, r3, r4
/* 80352F98 0034EBF8 28 00 00 A0 */ cmplwi r0, 0xa0
/* 80352F9C 0034EBFC 41 82 00 0C */ beq lbl_80352FA8
/* 80352FA0 0034EC00 38 60 00 03 */ li r3, 3
/* 80352FA4 0034EC04 48 00 0C B0 */ b lbl_80353C54
lbl_80352FA8:
/* 80352FA8 0034EC08 38 85 00 01 */ addi r4, r5, 1
/* 80352FAC 0034EC0C 90 9C 00 10 */ stw r4, 0x10(r28)
/* 80352FB0 0034EC10 7C 03 28 AE */ lbzx r0, r3, r5
/* 80352FB4 0034EC14 28 00 00 03 */ cmplwi r0, 3
/* 80352FB8 0034EC18 41 82 00 0C */ beq lbl_80352FC4
/* 80352FBC 0034EC1C 38 60 00 03 */ li r3, 3
/* 80352FC0 0034EC20 48 00 0C 94 */ b lbl_80353C54
lbl_80352FC4:
/* 80352FC4 0034EC24 38 A4 00 01 */ addi r5, r4, 1
/* 80352FC8 0034EC28 90 BC 00 10 */ stw r5, 0x10(r28)
/* 80352FCC 0034EC2C 7C 03 20 AE */ lbzx r0, r3, r4
/* 80352FD0 0034EC30 28 00 00 02 */ cmplwi r0, 2
/* 80352FD4 0034EC34 41 82 00 0C */ beq lbl_80352FE0
/* 80352FD8 0034EC38 38 60 00 03 */ li r3, 3
/* 80352FDC 0034EC3C 48 00 0C 78 */ b lbl_80353C54
lbl_80352FE0:
/* 80352FE0 0034EC40 38 85 00 01 */ addi r4, r5, 1
/* 80352FE4 0034EC44 90 9C 00 10 */ stw r4, 0x10(r28)
/* 80352FE8 0034EC48 7C 03 28 AE */ lbzx r0, r3, r5
/* 80352FEC 0034EC4C 28 00 00 01 */ cmplwi r0, 1
/* 80352FF0 0034EC50 41 82 00 0C */ beq lbl_80352FFC
/* 80352FF4 0034EC54 38 60 00 03 */ li r3, 3
/* 80352FF8 0034EC58 48 00 0C 5C */ b lbl_80353C54
lbl_80352FFC:
/* 80352FFC 0034EC5C 38 A4 00 01 */ addi r5, r4, 1
/* 80353000 0034EC60 38 85 00 01 */ addi r4, r5, 1
/* 80353004 0034EC64 90 9C 00 10 */ stw r4, 0x10(r28)
/* 80353008 0034EC68 7C 03 28 AE */ lbzx r0, r3, r5
/* 8035300C 0034EC6C 28 00 00 02 */ cmplwi r0, 2
/* 80353010 0034EC70 41 82 00 0C */ beq lbl_8035301C
/* 80353014 0034EC74 38 60 00 03 */ li r3, 3
/* 80353018 0034EC78 48 00 0C 3C */ b lbl_80353C54
lbl_8035301C:
/* 8035301C 0034EC7C 38 04 00 01 */ addi r0, r4, 1
/* 80353020 0034EC80 90 1C 00 10 */ stw r0, 0x10(r28)
/* 80353024 0034EC84 7E 83 20 AE */ lbzx r20, r3, r4
/* 80353028 0034EC88 7C 00 A2 14 */ add r0, r0, r20
/* 8035302C 0034EC8C 7C 00 E8 00 */ cmpw r0, r29
/* 80353030 0034EC90 40 81 00 0C */ ble lbl_8035303C
/* 80353034 0034EC94 38 60 00 03 */ li r3, 3
/* 80353038 0034EC98 48 00 0C 1C */ b lbl_80353C54
lbl_8035303C:
/* 8035303C 0034EC9C 90 1C 00 10 */ stw r0, 0x10(r28)
/* 80353040 0034ECA0 7F 83 E3 78 */ mr r3, r28
/* 80353044 0034ECA4 38 81 00 20 */ addi r4, r1, 0x20
/* 80353048 0034ECA8 4B FF EF 59 */ bl ghiEncryptorParseASN1Sequence
/* 8035304C 0034ECAC 2C 03 00 00 */ cmpwi r3, 0
/* 80353050 0034ECB0 40 82 00 0C */ bne lbl_8035305C
/* 80353054 0034ECB4 38 60 00 03 */ li r3, 3
/* 80353058 0034ECB8 48 00 0B FC */ b lbl_80353C54
lbl_8035305C:
/* 8035305C 0034ECBC 80 BC 00 10 */ lwz r5, 0x10(r28)
/* 80353060 0034ECC0 7F 83 E3 78 */ mr r3, r28
/* 80353064 0034ECC4 80 01 00 20 */ lwz r0, 0x20(r1)
/* 80353068 0034ECC8 38 81 00 20 */ addi r4, r1, 0x20
/* 8035306C 0034ECCC 7C 05 02 14 */ add r0, r5, r0
/* 80353070 0034ECD0 90 1C 00 10 */ stw r0, 0x10(r28)
/* 80353074 0034ECD4 4B FF EF 2D */ bl ghiEncryptorParseASN1Sequence
/* 80353078 0034ECD8 2C 03 00 00 */ cmpwi r3, 0
/* 8035307C 0034ECDC 40 82 00 0C */ bne lbl_80353088
/* 80353080 0034ECE0 38 60 00 03 */ li r3, 3
/* 80353084 0034ECE4 48 00 0B D0 */ b lbl_80353C54
lbl_80353088:
/* 80353088 0034ECE8 80 BC 00 10 */ lwz r5, 0x10(r28)
/* 8035308C 0034ECEC 7F 83 E3 78 */ mr r3, r28
/* 80353090 0034ECF0 80 01 00 20 */ lwz r0, 0x20(r1)
/* 80353094 0034ECF4 38 81 00 20 */ addi r4, r1, 0x20
/* 80353098 0034ECF8 7C 05 02 14 */ add r0, r5, r0
/* 8035309C 0034ECFC 90 1C 00 10 */ stw r0, 0x10(r28)
/* 803530A0 0034ED00 4B FF EF 01 */ bl ghiEncryptorParseASN1Sequence
/* 803530A4 0034ED04 2C 03 00 00 */ cmpwi r3, 0
/* 803530A8 0034ED08 40 82 00 0C */ bne lbl_803530B4
/* 803530AC 0034ED0C 38 60 00 03 */ li r3, 3
/* 803530B0 0034ED10 48 00 0B A4 */ b lbl_80353C54
lbl_803530B4:
/* 803530B4 0034ED14 80 BC 00 10 */ lwz r5, 0x10(r28)
/* 803530B8 0034ED18 7F 83 E3 78 */ mr r3, r28
/* 803530BC 0034ED1C 80 01 00 20 */ lwz r0, 0x20(r1)
/* 803530C0 0034ED20 38 81 00 20 */ addi r4, r1, 0x20
/* 803530C4 0034ED24 7C 05 02 14 */ add r0, r5, r0
/* 803530C8 0034ED28 90 1C 00 10 */ stw r0, 0x10(r28)
/* 803530CC 0034ED2C 4B FF EE D5 */ bl ghiEncryptorParseASN1Sequence
/* 803530D0 0034ED30 2C 03 00 00 */ cmpwi r3, 0
/* 803530D4 0034ED34 40 82 00 0C */ bne lbl_803530E0
/* 803530D8 0034ED38 38 60 00 03 */ li r3, 3
/* 803530DC 0034ED3C 48 00 0B 78 */ b lbl_80353C54
lbl_803530E0:
/* 803530E0 0034ED40 80 BC 00 10 */ lwz r5, 0x10(r28)
/* 803530E4 0034ED44 7F 83 E3 78 */ mr r3, r28
/* 803530E8 0034ED48 80 01 00 20 */ lwz r0, 0x20(r1)
/* 803530EC 0034ED4C 38 81 00 20 */ addi r4, r1, 0x20
/* 803530F0 0034ED50 7C 05 02 14 */ add r0, r5, r0
/* 803530F4 0034ED54 90 1C 00 10 */ stw r0, 0x10(r28)
/* 803530F8 0034ED58 4B FF EE A9 */ bl ghiEncryptorParseASN1Sequence
/* 803530FC 0034ED5C 2C 03 00 00 */ cmpwi r3, 0
/* 80353100 0034ED60 40 82 00 0C */ bne lbl_8035310C
/* 80353104 0034ED64 38 60 00 03 */ li r3, 3
/* 80353108 0034ED68 48 00 0B 4C */ b lbl_80353C54
lbl_8035310C:
/* 8035310C 0034ED6C 7F 83 E3 78 */ mr r3, r28
/* 80353110 0034ED70 38 81 00 20 */ addi r4, r1, 0x20
/* 80353114 0034ED74 4B FF EE 8D */ bl ghiEncryptorParseASN1Sequence
/* 80353118 0034ED78 2C 03 00 00 */ cmpwi r3, 0
/* 8035311C 0034ED7C 40 82 00 0C */ bne lbl_80353128
/* 80353120 0034ED80 38 60 00 03 */ li r3, 3
/* 80353124 0034ED84 48 00 0B 30 */ b lbl_80353C54
lbl_80353128:
/* 80353128 0034ED88 80 01 00 20 */ lwz r0, 0x20(r1)
/* 8035312C 0034ED8C 2C 00 00 0D */ cmpwi r0, 0xd
/* 80353130 0034ED90 41 82 00 0C */ beq lbl_8035313C
/* 80353134 0034ED94 38 60 00 03 */ li r3, 3
/* 80353138 0034ED98 48 00 0B 1C */ b lbl_80353C54
lbl_8035313C:
/* 8035313C 0034ED9C 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 80353140 0034EDA0 80 BC 00 04 */ lwz r5, 4(r28)
/* 80353144 0034EDA4 38 83 00 01 */ addi r4, r3, 1
/* 80353148 0034EDA8 90 9C 00 10 */ stw r4, 0x10(r28)
/* 8035314C 0034EDAC 7C 05 18 AE */ lbzx r0, r5, r3
/* 80353150 0034EDB0 28 00 00 06 */ cmplwi r0, 6
/* 80353154 0034EDB4 41 82 00 0C */ beq lbl_80353160
/* 80353158 0034EDB8 38 60 00 03 */ li r3, 3
/* 8035315C 0034EDBC 48 00 0A F8 */ b lbl_80353C54
lbl_80353160:
/* 80353160 0034EDC0 38 64 00 01 */ addi r3, r4, 1
/* 80353164 0034EDC4 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353168 0034EDC8 7C 05 20 AE */ lbzx r0, r5, r4
/* 8035316C 0034EDCC 28 00 00 09 */ cmplwi r0, 9
/* 80353170 0034EDD0 41 82 00 0C */ beq lbl_8035317C
/* 80353174 0034EDD4 38 60 00 03 */ li r3, 3
/* 80353178 0034EDD8 48 00 0A DC */ b lbl_80353C54
lbl_8035317C:
/* 8035317C 0034EDDC 7C 65 1A 14 */ add r3, r5, r3
/* 80353180 0034EDE0 38 95 25 70 */ addi r4, r21, 0x2570
/* 80353184 0034EDE4 38 A0 00 09 */ li r5, 9
/* 80353188 0034EDE8 4B E7 72 11 */ bl memcmp
/* 8035318C 0034EDEC 2C 03 00 00 */ cmpwi r3, 0
/* 80353190 0034EDF0 41 82 00 0C */ beq lbl_8035319C
/* 80353194 0034EDF4 38 60 00 03 */ li r3, 3
/* 80353198 0034EDF8 48 00 0A BC */ b lbl_80353C54
lbl_8035319C:
/* 8035319C 0034EDFC 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 803531A0 0034EE00 80 7C 00 04 */ lwz r3, 4(r28)
/* 803531A4 0034EE04 38 84 00 09 */ addi r4, r4, 9
/* 803531A8 0034EE08 38 A4 00 01 */ addi r5, r4, 1
/* 803531AC 0034EE0C 90 BC 00 10 */ stw r5, 0x10(r28)
/* 803531B0 0034EE10 7C 03 20 AE */ lbzx r0, r3, r4
/* 803531B4 0034EE14 28 00 00 05 */ cmplwi r0, 5
/* 803531B8 0034EE18 41 82 00 0C */ beq lbl_803531C4
/* 803531BC 0034EE1C 38 60 00 03 */ li r3, 3
/* 803531C0 0034EE20 48 00 0A 94 */ b lbl_80353C54
lbl_803531C4:
/* 803531C4 0034EE24 38 85 00 01 */ addi r4, r5, 1
/* 803531C8 0034EE28 90 9C 00 10 */ stw r4, 0x10(r28)
/* 803531CC 0034EE2C 7C 03 28 AE */ lbzx r0, r3, r5
/* 803531D0 0034EE30 2C 00 00 00 */ cmpwi r0, 0
/* 803531D4 0034EE34 41 82 00 0C */ beq lbl_803531E0
/* 803531D8 0034EE38 38 60 00 03 */ li r3, 3
/* 803531DC 0034EE3C 48 00 0A 78 */ b lbl_80353C54
lbl_803531E0:
/* 803531E0 0034EE40 7C 04 E8 50 */ subf r0, r4, r29
/* 803531E4 0034EE44 2C 00 00 02 */ cmpwi r0, 2
/* 803531E8 0034EE48 40 80 00 0C */ bge lbl_803531F4
/* 803531EC 0034EE4C 38 60 00 03 */ li r3, 3
/* 803531F0 0034EE50 48 00 0A 64 */ b lbl_80353C54
lbl_803531F4:
/* 803531F4 0034EE54 38 A4 00 01 */ addi r5, r4, 1
/* 803531F8 0034EE58 90 BC 00 10 */ stw r5, 0x10(r28)
/* 803531FC 0034EE5C 7C 03 20 AE */ lbzx r0, r3, r4
/* 80353200 0034EE60 28 00 00 03 */ cmplwi r0, 3
/* 80353204 0034EE64 41 82 00 0C */ beq lbl_80353210
/* 80353208 0034EE68 38 60 00 03 */ li r3, 3
/* 8035320C 0034EE6C 48 00 0A 48 */ b lbl_80353C54
lbl_80353210:
/* 80353210 0034EE70 38 85 00 01 */ addi r4, r5, 1
/* 80353214 0034EE74 90 9C 00 10 */ stw r4, 0x10(r28)
/* 80353218 0034EE78 7C 03 28 AE */ lbzx r0, r3, r5
/* 8035321C 0034EE7C 28 00 00 81 */ cmplwi r0, 0x81
/* 80353220 0034EE80 41 82 00 0C */ beq lbl_8035322C
/* 80353224 0034EE84 38 60 00 03 */ li r3, 3
/* 80353228 0034EE88 48 00 0A 2C */ b lbl_80353C54
lbl_8035322C:
/* 8035322C 0034EE8C 7C 04 E8 50 */ subf r0, r4, r29
/* 80353230 0034EE90 7C 14 00 00 */ cmpw r20, r0
/* 80353234 0034EE94 40 81 00 0C */ ble lbl_80353240
/* 80353238 0034EE98 38 60 00 03 */ li r3, 3
/* 8035323C 0034EE9C 48 00 0A 18 */ b lbl_80353C54
lbl_80353240:
/* 80353240 0034EEA0 38 84 00 01 */ addi r4, r4, 1
/* 80353244 0034EEA4 38 04 00 01 */ addi r0, r4, 1
/* 80353248 0034EEA8 90 1C 00 10 */ stw r0, 0x10(r28)
/* 8035324C 0034EEAC 7C 03 20 AE */ lbzx r0, r3, r4
/* 80353250 0034EEB0 2C 00 00 00 */ cmpwi r0, 0
/* 80353254 0034EEB4 41 82 00 0C */ beq lbl_80353260
/* 80353258 0034EEB8 38 60 00 03 */ li r3, 3
/* 8035325C 0034EEBC 48 00 09 F8 */ b lbl_80353C54
lbl_80353260:
/* 80353260 0034EEC0 7F 83 E3 78 */ mr r3, r28
/* 80353264 0034EEC4 38 81 00 20 */ addi r4, r1, 0x20
/* 80353268 0034EEC8 4B FF ED 39 */ bl ghiEncryptorParseASN1Sequence
/* 8035326C 0034EECC 2C 03 00 00 */ cmpwi r3, 0
/* 80353270 0034EED0 40 82 00 0C */ bne lbl_8035327C
/* 80353274 0034EED4 38 60 00 03 */ li r3, 3
/* 80353278 0034EED8 48 00 09 DC */ b lbl_80353C54
lbl_8035327C:
/* 8035327C 0034EEDC 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 80353280 0034EEE0 80 BC 00 04 */ lwz r5, 4(r28)
/* 80353284 0034EEE4 38 64 00 01 */ addi r3, r4, 1
/* 80353288 0034EEE8 90 7C 00 10 */ stw r3, 0x10(r28)
/* 8035328C 0034EEEC 7C 05 20 AE */ lbzx r0, r5, r4
/* 80353290 0034EEF0 7C 00 07 74 */ extsb r0, r0
/* 80353294 0034EEF4 2C 00 00 02 */ cmpwi r0, 2
/* 80353298 0034EEF8 41 82 00 0C */ beq lbl_803532A4
/* 8035329C 0034EEFC 38 60 00 03 */ li r3, 3
/* 803532A0 0034EF00 48 00 09 B4 */ b lbl_80353C54
lbl_803532A4:
/* 803532A4 0034EF04 7C 05 18 AE */ lbzx r0, r5, r3
/* 803532A8 0034EF08 54 00 06 30 */ rlwinm r0, r0, 0, 0x18, 0x18
/* 803532AC 0034EF0C 2C 00 00 80 */ cmpwi r0, 0x80
/* 803532B0 0034EF10 40 82 01 34 */ bne lbl_803533E4
/* 803532B4 0034EF14 38 03 00 01 */ addi r0, r3, 1
/* 803532B8 0034EF18 90 1C 00 10 */ stw r0, 0x10(r28)
/* 803532BC 0034EF1C 7C 05 18 AE */ lbzx r0, r5, r3
/* 803532C0 0034EF20 54 07 06 7E */ clrlwi r7, r0, 0x19
/* 803532C4 0034EF24 2C 07 00 04 */ cmpwi r7, 4
/* 803532C8 0034EF28 40 81 00 0C */ ble lbl_803532D4
/* 803532CC 0034EF2C 38 60 00 03 */ li r3, 3
/* 803532D0 0034EF30 48 00 09 84 */ b lbl_80353C54
lbl_803532D4:
/* 803532D4 0034EF34 2C 07 00 00 */ cmpwi r7, 0
/* 803532D8 0034EF38 3A 80 00 00 */ li r20, 0
/* 803532DC 0034EF3C 40 81 01 14 */ ble lbl_803533F0
/* 803532E0 0034EF40 54 E0 E8 FF */ rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 803532E4 0034EF44 7C 09 03 A6 */ mtctr r0
/* 803532E8 0034EF48 41 82 00 D4 */ beq lbl_803533BC
lbl_803532EC:
/* 803532EC 0034EF4C 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 803532F0 0034EF50 56 86 40 2E */ slwi r6, r20, 8
/* 803532F4 0034EF54 80 BC 00 04 */ lwz r5, 4(r28)
/* 803532F8 0034EF58 38 64 00 01 */ addi r3, r4, 1
/* 803532FC 0034EF5C 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353300 0034EF60 7C 05 20 AE */ lbzx r0, r5, r4
/* 80353304 0034EF64 7C 64 1B 78 */ mr r4, r3
/* 80353308 0034EF68 38 63 00 01 */ addi r3, r3, 1
/* 8035330C 0034EF6C 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353310 0034EF70 7C D4 03 78 */ or r20, r6, r0
/* 80353314 0034EF74 56 86 40 2E */ slwi r6, r20, 8
/* 80353318 0034EF78 7C 05 20 AE */ lbzx r0, r5, r4
/* 8035331C 0034EF7C 7C 64 1B 78 */ mr r4, r3
/* 80353320 0034EF80 38 63 00 01 */ addi r3, r3, 1
/* 80353324 0034EF84 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353328 0034EF88 7C D4 03 78 */ or r20, r6, r0
/* 8035332C 0034EF8C 56 86 40 2E */ slwi r6, r20, 8
/* 80353330 0034EF90 7C 05 20 AE */ lbzx r0, r5, r4
/* 80353334 0034EF94 7C 64 1B 78 */ mr r4, r3
/* 80353338 0034EF98 38 63 00 01 */ addi r3, r3, 1
/* 8035333C 0034EF9C 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353340 0034EFA0 7C D4 03 78 */ or r20, r6, r0
/* 80353344 0034EFA4 56 86 40 2E */ slwi r6, r20, 8
/* 80353348 0034EFA8 7C 05 20 AE */ lbzx r0, r5, r4
/* 8035334C 0034EFAC 7C 64 1B 78 */ mr r4, r3
/* 80353350 0034EFB0 38 63 00 01 */ addi r3, r3, 1
/* 80353354 0034EFB4 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353358 0034EFB8 7C D4 03 78 */ or r20, r6, r0
/* 8035335C 0034EFBC 56 86 40 2E */ slwi r6, r20, 8
/* 80353360 0034EFC0 7C 05 20 AE */ lbzx r0, r5, r4
/* 80353364 0034EFC4 7C 64 1B 78 */ mr r4, r3
/* 80353368 0034EFC8 38 63 00 01 */ addi r3, r3, 1
/* 8035336C 0034EFCC 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353370 0034EFD0 7C D4 03 78 */ or r20, r6, r0
/* 80353374 0034EFD4 56 86 40 2E */ slwi r6, r20, 8
/* 80353378 0034EFD8 7C 05 20 AE */ lbzx r0, r5, r4
/* 8035337C 0034EFDC 7C 64 1B 78 */ mr r4, r3
/* 80353380 0034EFE0 38 63 00 01 */ addi r3, r3, 1
/* 80353384 0034EFE4 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353388 0034EFE8 7C D4 03 78 */ or r20, r6, r0
/* 8035338C 0034EFEC 56 86 40 2E */ slwi r6, r20, 8
/* 80353390 0034EFF0 7C 05 20 AE */ lbzx r0, r5, r4
/* 80353394 0034EFF4 7C 64 1B 78 */ mr r4, r3
/* 80353398 0034EFF8 38 63 00 01 */ addi r3, r3, 1
/* 8035339C 0034EFFC 90 7C 00 10 */ stw r3, 0x10(r28)
/* 803533A0 0034F000 7C D4 03 78 */ or r20, r6, r0
/* 803533A4 0034F004 56 86 40 2E */ slwi r6, r20, 8
/* 803533A8 0034F008 7C 05 20 AE */ lbzx r0, r5, r4
/* 803533AC 0034F00C 7C D4 03 78 */ or r20, r6, r0
/* 803533B0 0034F010 42 00 FF 3C */ bdnz lbl_803532EC
/* 803533B4 0034F014 70 E7 00 07 */ andi. r7, r7, 7
/* 803533B8 0034F018 41 82 00 38 */ beq lbl_803533F0
lbl_803533BC:
/* 803533BC 0034F01C 7C E9 03 A6 */ mtctr r7
lbl_803533C0:
/* 803533C0 0034F020 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 803533C4 0034F024 56 86 40 2E */ slwi r6, r20, 8
/* 803533C8 0034F028 80 BC 00 04 */ lwz r5, 4(r28)
/* 803533CC 0034F02C 38 64 00 01 */ addi r3, r4, 1
/* 803533D0 0034F030 90 7C 00 10 */ stw r3, 0x10(r28)
/* 803533D4 0034F034 7C 05 20 AE */ lbzx r0, r5, r4
/* 803533D8 0034F038 7C D4 03 78 */ or r20, r6, r0
/* 803533DC 0034F03C 42 00 FF E4 */ bdnz lbl_803533C0
/* 803533E0 0034F040 48 00 00 10 */ b lbl_803533F0
lbl_803533E4:
/* 803533E4 0034F044 38 03 00 01 */ addi r0, r3, 1
/* 803533E8 0034F048 90 1C 00 10 */ stw r0, 0x10(r28)
/* 803533EC 0034F04C 7E 85 18 AE */ lbzx r20, r5, r3
lbl_803533F0:
/* 803533F0 0034F050 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 803533F4 0034F054 7C 04 A2 14 */ add r0, r4, r20
/* 803533F8 0034F058 7C 00 E8 00 */ cmpw r0, r29
/* 803533FC 0034F05C 40 81 00 0C */ ble lbl_80353408
/* 80353400 0034F060 38 60 00 03 */ li r3, 3
/* 80353404 0034F064 48 00 08 50 */ b lbl_80353C54
lbl_80353408:
/* 80353408 0034F068 38 04 00 01 */ addi r0, r4, 1
/* 8035340C 0034F06C 80 7C 00 04 */ lwz r3, 4(r28)
/* 80353410 0034F070 90 1C 00 10 */ stw r0, 0x10(r28)
/* 80353414 0034F074 7C 03 20 AE */ lbzx r0, r3, r4
/* 80353418 0034F078 7C 00 07 75 */ extsb. r0, r0
/* 8035341C 0034F07C 41 82 00 0C */ beq lbl_80353428
/* 80353420 0034F080 38 60 00 03 */ li r3, 3
/* 80353424 0034F084 48 00 08 30 */ b lbl_80353C54
lbl_80353428:
/* 80353428 0034F088 38 B4 FF FF */ addi r5, r20, -1
/* 8035342C 0034F08C 28 05 08 00 */ cmplwi r5, 0x800
/* 80353430 0034F090 40 81 00 0C */ ble lbl_8035343C
/* 80353434 0034F094 38 60 00 03 */ li r3, 3
/* 80353438 0034F098 48 00 08 1C */ b lbl_80353C54
lbl_8035343C:
/* 8035343C 0034F09C 54 A0 F0 02 */ slwi r0, r5, 0x1e
/* 80353440 0034F0A0 54 A3 0F FE */ srwi r3, r5, 0x1f
/* 80353444 0034F0A4 7C 03 00 50 */ subf r0, r3, r0
/* 80353448 0034F0A8 7C A4 16 70 */ srawi r4, r5, 2
/* 8035344C 0034F0AC 54 00 10 3E */ rotlwi r0, r0, 2
/* 80353450 0034F0B0 7C 84 01 94 */ addze r4, r4
/* 80353454 0034F0B4 7C 00 1A 14 */ add r0, r0, r3
/* 80353458 0034F0B8 90 9F 01 08 */ stw r4, 0x108(r31)
/* 8035345C 0034F0BC 20 00 00 04 */ subfic r0, r0, 4
/* 80353460 0034F0C0 54 04 F0 02 */ slwi r4, r0, 0x1e
/* 80353464 0034F0C4 80 7C 00 04 */ lwz r3, 4(r28)
/* 80353468 0034F0C8 54 07 0F FE */ srwi r7, r0, 0x1f
/* 8035346C 0034F0CC 80 1C 00 10 */ lwz r0, 0x10(r28)
/* 80353470 0034F0D0 7C 87 20 50 */ subf r4, r7, r4
/* 80353474 0034F0D4 54 86 10 3E */ rotlwi r6, r4, 2
/* 80353478 0034F0D8 7C 83 02 14 */ add r4, r3, r0
/* 8035347C 0034F0DC 7C 06 3A 14 */ add r0, r6, r7
/* 80353480 0034F0E0 7C 7F 02 14 */ add r3, r31, r0
/* 80353484 0034F0E4 38 63 01 0C */ addi r3, r3, 0x10c
/* 80353488 0034F0E8 4B CB 0B 79 */ bl memcpy
/* 8035348C 0034F0EC 38 7F 01 08 */ addi r3, r31, 0x108
/* 80353490 0034F0F0 4B FE 8A 81 */ bl gsLargeIntReverseBytes
/* 80353494 0034F0F4 80 1C 00 10 */ lwz r0, 0x10(r28)
/* 80353498 0034F0F8 80 BC 00 04 */ lwz r5, 4(r28)
/* 8035349C 0034F0FC 7C 74 02 14 */ add r3, r20, r0
/* 803534A0 0034F100 38 83 FF FF */ addi r4, r3, -1
/* 803534A4 0034F104 38 64 00 01 */ addi r3, r4, 1
/* 803534A8 0034F108 90 7C 00 10 */ stw r3, 0x10(r28)
/* 803534AC 0034F10C 7C 05 20 AE */ lbzx r0, r5, r4
/* 803534B0 0034F110 7C 00 07 74 */ extsb r0, r0
/* 803534B4 0034F114 2C 00 00 02 */ cmpwi r0, 2
/* 803534B8 0034F118 41 82 00 0C */ beq lbl_803534C4
/* 803534BC 0034F11C 38 60 00 03 */ li r3, 3
/* 803534C0 0034F120 48 00 07 94 */ b lbl_80353C54
lbl_803534C4:
/* 803534C4 0034F124 7C 05 18 AE */ lbzx r0, r5, r3
/* 803534C8 0034F128 54 00 06 30 */ rlwinm r0, r0, 0, 0x18, 0x18
/* 803534CC 0034F12C 2C 00 00 80 */ cmpwi r0, 0x80
/* 803534D0 0034F130 40 82 01 34 */ bne lbl_80353604
/* 803534D4 0034F134 38 03 00 01 */ addi r0, r3, 1
/* 803534D8 0034F138 90 1C 00 10 */ stw r0, 0x10(r28)
/* 803534DC 0034F13C 7C 05 18 AE */ lbzx r0, r5, r3
/* 803534E0 0034F140 54 07 06 7E */ clrlwi r7, r0, 0x19
/* 803534E4 0034F144 2C 07 00 04 */ cmpwi r7, 4
/* 803534E8 0034F148 40 81 00 0C */ ble lbl_803534F4
/* 803534EC 0034F14C 38 60 00 03 */ li r3, 3
/* 803534F0 0034F150 48 00 07 64 */ b lbl_80353C54
lbl_803534F4:
/* 803534F4 0034F154 2C 07 00 00 */ cmpwi r7, 0
/* 803534F8 0034F158 3A 80 00 00 */ li r20, 0
/* 803534FC 0034F15C 40 81 01 14 */ ble lbl_80353610
/* 80353500 0034F160 54 E0 E8 FF */ rlwinm. r0, r7, 0x1d, 3, 0x1f
/* 80353504 0034F164 7C 09 03 A6 */ mtctr r0
/* 80353508 0034F168 41 82 00 D4 */ beq lbl_803535DC
lbl_8035350C:
/* 8035350C 0034F16C 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 80353510 0034F170 56 86 40 2E */ slwi r6, r20, 8
/* 80353514 0034F174 80 BC 00 04 */ lwz r5, 4(r28)
/* 80353518 0034F178 38 64 00 01 */ addi r3, r4, 1
/* 8035351C 0034F17C 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353520 0034F180 7C 05 20 AE */ lbzx r0, r5, r4
/* 80353524 0034F184 7C 64 1B 78 */ mr r4, r3
/* 80353528 0034F188 38 63 00 01 */ addi r3, r3, 1
/* 8035352C 0034F18C 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353530 0034F190 7C D4 03 78 */ or r20, r6, r0
/* 80353534 0034F194 56 86 40 2E */ slwi r6, r20, 8
/* 80353538 0034F198 7C 05 20 AE */ lbzx r0, r5, r4
/* 8035353C 0034F19C 7C 64 1B 78 */ mr r4, r3
/* 80353540 0034F1A0 38 63 00 01 */ addi r3, r3, 1
/* 80353544 0034F1A4 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353548 0034F1A8 7C D4 03 78 */ or r20, r6, r0
/* 8035354C 0034F1AC 56 86 40 2E */ slwi r6, r20, 8
/* 80353550 0034F1B0 7C 05 20 AE */ lbzx r0, r5, r4
/* 80353554 0034F1B4 7C 64 1B 78 */ mr r4, r3
/* 80353558 0034F1B8 38 63 00 01 */ addi r3, r3, 1
/* 8035355C 0034F1BC 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353560 0034F1C0 7C D4 03 78 */ or r20, r6, r0
/* 80353564 0034F1C4 56 86 40 2E */ slwi r6, r20, 8
/* 80353568 0034F1C8 7C 05 20 AE */ lbzx r0, r5, r4
/* 8035356C 0034F1CC 7C 64 1B 78 */ mr r4, r3
/* 80353570 0034F1D0 38 63 00 01 */ addi r3, r3, 1
/* 80353574 0034F1D4 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353578 0034F1D8 7C D4 03 78 */ or r20, r6, r0
/* 8035357C 0034F1DC 56 86 40 2E */ slwi r6, r20, 8
/* 80353580 0034F1E0 7C 05 20 AE */ lbzx r0, r5, r4
/* 80353584 0034F1E4 7C 64 1B 78 */ mr r4, r3
/* 80353588 0034F1E8 38 63 00 01 */ addi r3, r3, 1
/* 8035358C 0034F1EC 90 7C 00 10 */ stw r3, 0x10(r28)
/* 80353590 0034F1F0 7C D4 03 78 */ or r20, r6, r0
/* 80353594 0034F1F4 56 86 40 2E */ slwi r6, r20, 8
/* 80353598 0034F1F8 7C 05 20 AE */ lbzx r0, r5, r4
/* 8035359C 0034F1FC 7C 64 1B 78 */ mr r4, r3
/* 803535A0 0034F200 38 63 00 01 */ addi r3, r3, 1
/* 803535A4 0034F204 90 7C 00 10 */ stw r3, 0x10(r28)
/* 803535A8 0034F208 7C D4 03 78 */ or r20, r6, r0
/* 803535AC 0034F20C 56 86 40 2E */ slwi r6, r20, 8
/* 803535B0 0034F210 7C 05 20 AE */ lbzx r0, r5, r4
/* 803535B4 0034F214 7C 64 1B 78 */ mr r4, r3
/* 803535B8 0034F218 38 63 00 01 */ addi r3, r3, 1
/* 803535BC 0034F21C 90 7C 00 10 */ stw r3, 0x10(r28)
/* 803535C0 0034F220 7C D4 03 78 */ or r20, r6, r0
/* 803535C4 0034F224 56 86 40 2E */ slwi r6, r20, 8
/* 803535C8 0034F228 7C 05 20 AE */ lbzx r0, r5, r4
/* 803535CC 0034F22C 7C D4 03 78 */ or r20, r6, r0
/* 803535D0 0034F230 42 00 FF 3C */ bdnz lbl_8035350C
/* 803535D4 0034F234 70 E7 00 07 */ andi. r7, r7, 7
/* 803535D8 0034F238 41 82 00 38 */ beq lbl_80353610
lbl_803535DC:
/* 803535DC 0034F23C 7C E9 03 A6 */ mtctr r7
lbl_803535E0:
/* 803535E0 0034F240 80 9C 00 10 */ lwz r4, 0x10(r28)
/* 803535E4 0034F244 56 86 40 2E */ slwi r6, r20, 8
/* 803535E8 0034F248 80 BC 00 04 */ lwz r5, 4(r28)
/* 803535EC 0034F24C 38 64 00 01 */ addi r3, r4, 1
/* 803535F0 0034F250 90 7C 00 10 */ stw r3, 0x10(r28)
/* 803535F4 0034F254 7C 05 20 AE */ lbzx r0, r5, r4
/* 803535F8 0034F258 7C D4 03 78 */ or r20, r6, r0
/* 803535FC 0034F25C 42 00 FF E4 */ bdnz lbl_803535E0
/* 80353600 0034F260 48 00 00 10 */ b lbl_80353610
lbl_80353604:
/* 80353604 0034F264 38 03 00 01 */ addi r0, r3, 1
/* 80353608 0034F268 90 1C 00 10 */ stw r0, 0x10(r28)
/* 8035360C 0034F26C 7E 85 18 AE */ lbzx r20, r5, r3
lbl_80353610:
/* 80353610 0034F270 80 1C 00 10 */ lwz r0, 0x10(r28)
/* 80353614 0034F274 7C 00 A2 14 */ add r0, r0, r20
/* 80353618 0034F278 7C 00 E8 00 */ cmpw r0, r29
/* 8035361C 0034F27C 40 81 00 0C */ ble lbl_80353628
/* 80353620 0034F280 38 60 00 03 */ li r3, 3
/* 80353624 0034F284 48 00 06 30 */ b lbl_80353C54
lbl_80353628:
/* 80353628 0034F288 2C 14 00 00 */ cmpwi r20, 0
/* 8035362C 0034F28C 40 82 00 0C */ bne lbl_80353638
/* 80353630 0034F290 38 60 00 03 */ li r3, 3
/* 80353634 0034F294 48 00 06 20 */ b lbl_80353C54
lbl_80353638:
/* 80353638 0034F298 28 14 08 00 */ cmplwi r20, 0x800
/* 8035363C 0034F29C 40 81 00 0C */ ble lbl_80353648
/* 80353640 0034F2A0 38 60 00 03 */ li r3, 3
/* 80353644 0034F2A4 48 00 06 10 */ b lbl_80353C54
lbl_80353648:
/* 80353648 0034F2A8 56 80 F0 02 */ slwi r0, r20, 0x1e
/* 8035364C 0034F2AC 56 83 0F FE */ srwi r3, r20, 0x1f
/* 80353650 0034F2B0 38 94 FF FF */ addi r4, r20, -1
/* 80353654 0034F2B4 7E 85 A3 78 */ mr r5, r20
/* 80353658 0034F2B8 7C 03 00 50 */ subf r0, r3, r0
/* 8035365C 0034F2BC 7C 84 16 70 */ srawi r4, r4, 2
/* 80353660 0034F2C0 54 00 10 3E */ rotlwi r0, r0, 2
/* 80353664 0034F2C4 7C 84 01 94 */ addze r4, r4
/* 80353668 0034F2C8 7C 00 1A 14 */ add r0, r0, r3
/* 8035366C 0034F2CC 20 60 00 04 */ subfic r3, r0, 4
/* 80353670 0034F2D0 38 04 00 01 */ addi r0, r4, 1
/* 80353674 0034F2D4 90 1F 02 0C */ stw r0, 0x20c(r31)
/* 80353678 0034F2D8 54 60 F0 02 */ slwi r0, r3, 0x1e
/* 8035367C 0034F2DC 54 66 0F FE */ srwi r6, r3, 0x1f
/* 80353680 0034F2E0 7C 06 00 50 */ subf r0, r6, r0
/* 80353684 0034F2E4 80 7C 00 04 */ lwz r3, 4(r28)
/* 80353688 0034F2E8 54 04 10 3E */ rotlwi r4, r0, 2
/* 8035368C 0034F2EC 80 1C 00 10 */ lwz r0, 0x10(r28)
/* 80353690 0034F2F0 7C 84 32 14 */ add r4, r4, r6
/* 80353694 0034F2F4 7C DF 22 14 */ add r6, r31, r4
/* 80353698 0034F2F8 7C 83 02 14 */ add r4, r3, r0
/* 8035369C 0034F2FC 38 66 02 10 */ addi r3, r6, 0x210
/* 803536A0 0034F300 4B CB 09 61 */ bl memcpy
/* 803536A4 0034F304 38 7F 02 0C */ addi r3, r31, 0x20c
/* 803536A8 0034F308 4B FE 88 69 */ bl gsLargeIntReverseBytes
/* 803536AC 0034F30C 80 1C 00 10 */ lwz r0, 0x10(r28)
/* 803536B0 0034F310 7C 00 A2 14 */ add r0, r0, r20
/* 803536B4 0034F314 90 1C 00 10 */ stw r0, 0x10(r28)
lbl_803536B8:
/* 803536B8 0034F318 80 01 00 24 */ lwz r0, 0x24(r1)
/* 803536BC 0034F31C 7C 0F 02 14 */ add r0, r15, r0
/* 803536C0 0034F320 90 1C 00 10 */ stw r0, 0x10(r28)
lbl_803536C4:
/* 803536C4 0034F324 80 7C 00 10 */ lwz r3, 0x10(r28)
/* 803536C8 0034F328 7C 03 E8 00 */ cmpw r3, r29
/* 803536CC 0034F32C 41 80 F7 E4 */ blt lbl_80352EB0
/* 803536D0 0034F330 41 82 00 0C */ beq lbl_803536DC
/* 803536D4 0034F334 38 60 00 03 */ li r3, 3
/* 803536D8 0034F338 48 00 05 7C */ b lbl_80353C54
lbl_803536DC:
/* 803536DC 0034F33C 80 1C 00 04 */ lwz r0, 4(r28)
/* 803536E0 0034F340 7D F0 18 50 */ subf r15, r16, r3
/* 803536E4 0034F344 7D E5 7B 78 */ mr r5, r15
/* 803536E8 0034F348 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 803536EC 0034F34C 7C 80 82 14 */ add r4, r0, r16
/* 803536F0 0034F350 4B FE 35 F5 */ bl MD5Update
/* 803536F4 0034F354 80 1C 00 04 */ lwz r0, 4(r28)
/* 803536F8 0034F358 7D E5 7B 78 */ mr r5, r15
/* 803536FC 0034F35C 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 80353700 0034F360 7C 80 82 14 */ add r4, r0, r16
/* 80353704 0034F364 4B FE 8F 89 */ bl SHA1Input
/* 80353708 0034F368 48 00 05 30 */ b lbl_80353C38
lbl_8035370C:
/* 8035370C 0034F36C 2C 00 00 0E */ cmpwi r0, 0xe
/* 80353710 0034F370 40 82 05 0C */ bne lbl_80353C1C
/* 80353714 0034F374 92 41 00 1C */ stw r18, 0x1c(r1)
/* 80353718 0034F378 7F 83 E3 78 */ mr r3, r28
/* 8035371C 0034F37C 38 81 00 1D */ addi r4, r1, 0x1d
/* 80353720 0034F380 38 A0 00 03 */ li r5, 3
/* 80353724 0034F384 4B FF DA 25 */ bl ghiReadDataFromBufferFixed
/* 80353728 0034F388 2C 03 00 00 */ cmpwi r3, 0
/* 8035372C 0034F38C 40 82 00 0C */ bne lbl_80353738
/* 80353730 0034F390 38 00 00 00 */ li r0, 0
/* 80353734 0034F394 48 00 00 14 */ b lbl_80353748
lbl_80353738:
/* 80353738 0034F398 80 61 00 1C */ lwz r3, 0x1c(r1)
/* 8035373C 0034F39C 4B FA 36 3D */ bl SOHtoNl
/* 80353740 0034F3A0 90 61 00 1C */ stw r3, 0x1c(r1)
/* 80353744 0034F3A4 38 00 00 01 */ li r0, 1
lbl_80353748:
/* 80353748 0034F3A8 2C 00 00 00 */ cmpwi r0, 0
/* 8035374C 0034F3AC 40 82 00 0C */ bne lbl_80353758
/* 80353750 0034F3B0 38 60 00 03 */ li r3, 3
/* 80353754 0034F3B4 48 00 05 00 */ b lbl_80353C54
lbl_80353758:
/* 80353758 0034F3B8 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 8035375C 0034F3BC 2C 00 00 00 */ cmpwi r0, 0
/* 80353760 0034F3C0 41 82 00 0C */ beq lbl_8035376C
/* 80353764 0034F3C4 38 60 00 03 */ li r3, 3
/* 80353768 0034F3C8 48 00 04 EC */ b lbl_80353C54
lbl_8035376C:
/* 8035376C 0034F3CC 80 9C 00 04 */ lwz r4, 4(r28)
/* 80353770 0034F3D0 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353774 0034F3D4 80 1C 00 10 */ lwz r0, 0x10(r28)
/* 80353778 0034F3D8 7C 84 82 14 */ add r4, r4, r16
/* 8035377C 0034F3DC 7C B0 00 50 */ subf r5, r16, r0
/* 80353780 0034F3E0 4B FE 35 65 */ bl MD5Update
/* 80353784 0034F3E4 80 9C 00 04 */ lwz r4, 4(r28)
/* 80353788 0034F3E8 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 8035378C 0034F3EC 80 1C 00 10 */ lwz r0, 0x10(r28)
/* 80353790 0034F3F0 7C 84 82 14 */ add r4, r4, r16
/* 80353794 0034F3F4 7C B0 00 50 */ subf r5, r16, r0
/* 80353798 0034F3F8 4B FE 8E F5 */ bl SHA1Input
/* 8035379C 0034F3FC 80 1F 01 08 */ lwz r0, 0x108(r31)
/* 803537A0 0034F400 54 03 10 3A */ slwi r3, r0, 2
/* 803537A4 0034F404 38 03 00 09 */ addi r0, r3, 9
/* 803537A8 0034F408 90 01 00 1C */ stw r0, 0x1c(r1)
/* 803537AC 0034F40C 48 00 00 20 */ b lbl_803537CC
lbl_803537B0:
/* 803537B0 0034F410 80 9B 00 68 */ lwz r4, 0x68(r27)
/* 803537B4 0034F414 38 7B 00 54 */ addi r3, r27, 0x54
/* 803537B8 0034F418 4B FF D0 3D */ bl ghiResizeBuffer
/* 803537BC 0034F41C 2C 03 00 00 */ cmpwi r3, 0
/* 803537C0 0034F420 40 82 00 0C */ bne lbl_803537CC
/* 803537C4 0034F424 38 60 00 03 */ li r3, 3
/* 803537C8 0034F428 48 00 04 8C */ b lbl_80353C54
lbl_803537CC:
/* 803537CC 0034F42C 80 9B 00 60 */ lwz r4, 0x60(r27)
/* 803537D0 0034F430 80 7B 00 5C */ lwz r3, 0x5c(r27)
/* 803537D4 0034F434 80 01 00 1C */ lwz r0, 0x1c(r1)
/* 803537D8 0034F438 7C 64 18 50 */ subf r3, r4, r3
/* 803537DC 0034F43C 7C 03 00 00 */ cmpw r3, r0
/* 803537E0 0034F440 41 80 FF D0 */ blt lbl_803537B0
/* 803537E4 0034F444 9A DF 06 A4 */ stb r22, 0x6a4(r31)
/* 803537E8 0034F448 39 E0 00 02 */ li r15, 2
/* 803537EC 0034F44C 9A 5F 06 A5 */ stb r18, 0x6a5(r31)
lbl_803537F0:
/* 803537F0 0034F450 4B FE 57 E9 */ bl current_time
/* 803537F4 0034F454 4B FE 58 6D */ bl Util_RandSeed
/* 803537F8 0034F458 38 60 00 00 */ li r3, 0
/* 803537FC 0034F45C 38 80 01 00 */ li r4, 0x100
/* 80353800 0034F460 4B FE 58 79 */ bl Util_RandInt
/* 80353804 0034F464 7C 9F 7A 14 */ add r4, r31, r15
/* 80353808 0034F468 39 EF 00 01 */ addi r15, r15, 1
/* 8035380C 0034F46C 2C 0F 00 30 */ cmpwi r15, 0x30
/* 80353810 0034F470 98 64 06 A4 */ stb r3, 0x6a4(r4)
/* 80353814 0034F474 41 80 FF DC */ blt lbl_803537F0
/* 80353818 0034F478 80 7B 00 60 */ lwz r3, 0x60(r27)
/* 8035381C 0034F47C 80 9B 00 58 */ lwz r4, 0x58(r27)
/* 80353820 0034F480 38 03 00 09 */ addi r0, r3, 9
/* 80353824 0034F484 90 1B 00 60 */ stw r0, 0x60(r27)
/* 80353828 0034F488 7D E4 1A 14 */ add r15, r4, r3
/* 8035382C 0034F48C 7E E4 19 AE */ stbx r23, r4, r3
/* 80353830 0034F490 9A CF 00 01 */ stb r22, 1(r15)
/* 80353834 0034F494 9A 4F 00 02 */ stb r18, 2(r15)
/* 80353838 0034F498 80 1F 01 08 */ lwz r0, 0x108(r31)
/* 8035383C 0034F49C 54 03 10 3A */ slwi r3, r0, 2
/* 80353840 0034F4A0 38 63 00 04 */ addi r3, r3, 4
/* 80353844 0034F4A4 4B FA 35 35 */ bl SOHtoNl
/* 80353848 0034F4A8 90 61 00 18 */ stw r3, 0x18(r1)
/* 8035384C 0034F4AC 38 81 00 1A */ addi r4, r1, 0x1a
/* 80353850 0034F4B0 38 6F 00 03 */ addi r3, r15, 3
/* 80353854 0034F4B4 38 A0 00 02 */ li r5, 2
/* 80353858 0034F4B8 4B CB 07 A9 */ bl memcpy
/* 8035385C 0034F4BC 38 00 00 10 */ li r0, 0x10
/* 80353860 0034F4C0 98 0F 00 05 */ stb r0, 5(r15)
/* 80353864 0034F4C4 80 1F 01 08 */ lwz r0, 0x108(r31)
/* 80353868 0034F4C8 54 03 10 3A */ slwi r3, r0, 2
/* 8035386C 0034F4CC 4B FA 35 0D */ bl SOHtoNl
/* 80353870 0034F4D0 90 61 00 14 */ stw r3, 0x14(r1)
/* 80353874 0034F4D4 38 81 00 15 */ addi r4, r1, 0x15
/* 80353878 0034F4D8 38 6F 00 06 */ addi r3, r15, 6
/* 8035387C 0034F4DC 38 A0 00 03 */ li r5, 3
/* 80353880 0034F4E0 4B CB 07 81 */ bl memcpy
/* 80353884 0034F4E4 80 DB 00 58 */ lwz r6, 0x58(r27)
/* 80353888 0034F4E8 38 7F 01 08 */ addi r3, r31, 0x108
/* 8035388C 0034F4EC 80 1B 00 60 */ lwz r0, 0x60(r27)
/* 80353890 0034F4F0 38 9F 06 A4 */ addi r4, r31, 0x6a4
/* 80353894 0034F4F4 38 A0 00 30 */ li r5, 0x30
/* 80353898 0034F4F8 7C C6 02 14 */ add r6, r6, r0
/* 8035389C 0034F4FC 4B FE 5D F9 */ bl gsCryptRSAEncryptBuffer
/* 803538A0 0034F500 80 1F 01 08 */ lwz r0, 0x108(r31)
/* 803538A4 0034F504 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 803538A8 0034F508 80 BB 00 60 */ lwz r5, 0x60(r27)
/* 803538AC 0034F50C 38 8F 00 05 */ addi r4, r15, 5
/* 803538B0 0034F510 54 00 10 3A */ slwi r0, r0, 2
/* 803538B4 0034F514 7C 05 02 14 */ add r0, r5, r0
/* 803538B8 0034F518 90 1B 00 60 */ stw r0, 0x60(r27)
/* 803538BC 0034F51C 80 1F 01 08 */ lwz r0, 0x108(r31)
/* 803538C0 0034F520 54 05 10 3A */ slwi r5, r0, 2
/* 803538C4 0034F524 38 A5 00 04 */ addi r5, r5, 4
/* 803538C8 0034F528 4B FE 34 1D */ bl MD5Update
/* 803538CC 0034F52C 80 1F 01 08 */ lwz r0, 0x108(r31)
/* 803538D0 0034F530 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 803538D4 0034F534 38 8F 00 05 */ addi r4, r15, 5
/* 803538D8 0034F538 54 05 10 3A */ slwi r5, r0, 2
/* 803538DC 0034F53C 38 A5 00 04 */ addi r5, r5, 4
/* 803538E0 0034F540 4B FE 8D AD */ bl SHA1Input
/* 803538E4 0034F544 80 9B 00 58 */ lwz r4, 0x58(r27)
/* 803538E8 0034F548 7F E3 FB 78 */ mr r3, r31
/* 803538EC 0034F54C 80 1B 00 60 */ lwz r0, 0x60(r27)
/* 803538F0 0034F550 7F 04 01 EE */ stbux r24, r4, r0
/* 803538F4 0034F554 9A C4 00 01 */ stb r22, 1(r4)
/* 803538F8 0034F558 9A 44 00 02 */ stb r18, 2(r4)
/* 803538FC 0034F55C 9A 44 00 03 */ stb r18, 3(r4)
/* 80353900 0034F560 99 C4 00 04 */ stb r14, 4(r4)
/* 80353904 0034F564 80 BB 00 60 */ lwz r5, 0x60(r27)
/* 80353908 0034F568 80 9B 00 58 */ lwz r4, 0x58(r27)
/* 8035390C 0034F56C 38 A5 00 05 */ addi r5, r5, 5
/* 80353910 0034F570 90 BB 00 60 */ stw r5, 0x60(r27)
/* 80353914 0034F574 38 05 00 01 */ addi r0, r5, 1
/* 80353918 0034F578 7D C4 29 AE */ stbx r14, r4, r5
/* 8035391C 0034F57C 90 1B 00 60 */ stw r0, 0x60(r27)
/* 80353920 0034F580 4B FF E7 DD */ bl ghttpEncryptorGenerateEncryptionKeys
/* 80353924 0034F584 80 9B 00 58 */ lwz r4, 0x58(r27)
/* 80353928 0034F588 38 60 00 24 */ li r3, 0x24
/* 8035392C 0034F58C 80 1B 00 60 */ lwz r0, 0x60(r27)
/* 80353930 0034F590 7E E4 01 AE */ stbx r23, r4, r0
/* 80353934 0034F594 7D E4 02 14 */ add r15, r4, r0
/* 80353938 0034F598 38 00 00 38 */ li r0, 0x38
/* 8035393C 0034F59C 9A CF 00 01 */ stb r22, 1(r15)
/* 80353940 0034F5A0 9A 4F 00 02 */ stb r18, 2(r15)
/* 80353944 0034F5A4 9A 4F 00 03 */ stb r18, 3(r15)
/* 80353948 0034F5A8 98 0F 00 04 */ stb r0, 4(r15)
/* 8035394C 0034F5AC 80 9B 00 60 */ lwz r4, 0x60(r27)
/* 80353950 0034F5B0 80 BB 00 58 */ lwz r5, 0x58(r27)
/* 80353954 0034F5B4 38 C4 00 05 */ addi r6, r4, 5
/* 80353958 0034F5B8 90 DB 00 60 */ stw r6, 0x60(r27)
/* 8035395C 0034F5BC 38 86 00 01 */ addi r4, r6, 1
/* 80353960 0034F5C0 7F 05 31 AE */ stbx r24, r5, r6
/* 80353964 0034F5C4 80 1B 00 58 */ lwz r0, 0x58(r27)
/* 80353968 0034F5C8 90 9B 00 60 */ stw r4, 0x60(r27)
/* 8035396C 0034F5CC 7E 00 22 14 */ add r16, r0, r4
/* 80353970 0034F5D0 4B FA 34 09 */ bl SOHtoNl
/* 80353974 0034F5D4 90 61 00 10 */ stw r3, 0x10(r1)
/* 80353978 0034F5D8 7E 03 83 78 */ mr r3, r16
/* 8035397C 0034F5DC 38 81 00 11 */ addi r4, r1, 0x11
/* 80353980 0034F5E0 38 A0 00 03 */ li r5, 3
/* 80353984 0034F5E4 4B CB 06 7D */ bl memcpy
/* 80353988 0034F5E8 80 DB 00 60 */ lwz r6, 0x60(r27)
/* 8035398C 0034F5EC 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353990 0034F5F0 38 8D 93 B0 */ addi r4, r13, lbl_8063E670-_SDA_BASE_
/* 80353994 0034F5F4 38 A0 00 04 */ li r5, 4
/* 80353998 0034F5F8 38 06 00 03 */ addi r0, r6, 3
/* 8035399C 0034F5FC 90 1B 00 60 */ stw r0, 0x60(r27)
/* 803539A0 0034F600 4B FE 33 45 */ bl MD5Update
/* 803539A4 0034F604 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 803539A8 0034F608 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 803539AC 0034F60C 38 A0 00 30 */ li r5, 0x30
/* 803539B0 0034F610 4B FE 33 35 */ bl MD5Update
/* 803539B4 0034F614 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 803539B8 0034F618 38 99 BF 8C */ addi r4, r25, -16500
/* 803539BC 0034F61C 38 A0 00 30 */ li r5, 0x30
/* 803539C0 0034F620 4B FE 33 25 */ bl MD5Update
/* 803539C4 0034F624 38 61 00 40 */ addi r3, r1, 0x40
/* 803539C8 0034F628 38 9F 05 A4 */ addi r4, r31, 0x5a4
/* 803539CC 0034F62C 4B FE 34 05 */ bl MD5Final
/* 803539D0 0034F630 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 803539D4 0034F634 38 8D 93 B0 */ addi r4, r13, lbl_8063E670-_SDA_BASE_
/* 803539D8 0034F638 38 A0 00 04 */ li r5, 4
/* 803539DC 0034F63C 4B FE 8C B1 */ bl SHA1Input
/* 803539E0 0034F640 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 803539E4 0034F644 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 803539E8 0034F648 38 A0 00 30 */ li r5, 0x30
/* 803539EC 0034F64C 4B FE 8C A1 */ bl SHA1Input
/* 803539F0 0034F650 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 803539F4 0034F654 38 99 BF 8C */ addi r4, r25, -16500
/* 803539F8 0034F658 38 A0 00 28 */ li r5, 0x28
/* 803539FC 0034F65C 4B FE 8C 91 */ bl SHA1Input
/* 80353A00 0034F660 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 80353A04 0034F664 38 81 00 50 */ addi r4, r1, 0x50
/* 80353A08 0034F668 4B FE 8A 95 */ bl SHA1Result
/* 80353A0C 0034F66C 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353A10 0034F670 4B FE 32 95 */ bl MD5Init
/* 80353A14 0034F674 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353A18 0034F678 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 80353A1C 0034F67C 38 A0 00 30 */ li r5, 0x30
/* 80353A20 0034F680 4B FE 32 C5 */ bl MD5Update
/* 80353A24 0034F684 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353A28 0034F688 38 9A BF C0 */ addi r4, r26, -16448
/* 80353A2C 0034F68C 38 A0 00 30 */ li r5, 0x30
/* 80353A30 0034F690 4B FE 32 B5 */ bl MD5Update
/* 80353A34 0034F694 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353A38 0034F698 38 81 00 40 */ addi r4, r1, 0x40
/* 80353A3C 0034F69C 38 A0 00 10 */ li r5, 0x10
/* 80353A40 0034F6A0 4B FE 32 A5 */ bl MD5Update
/* 80353A44 0034F6A4 38 61 00 40 */ addi r3, r1, 0x40
/* 80353A48 0034F6A8 38 9F 05 A4 */ addi r4, r31, 0x5a4
/* 80353A4C 0034F6AC 4B FE 33 85 */ bl MD5Final
/* 80353A50 0034F6B0 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 80353A54 0034F6B4 4B FE 89 DD */ bl SHA1Reset
/* 80353A58 0034F6B8 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 80353A5C 0034F6BC 38 9F 06 D4 */ addi r4, r31, 0x6d4
/* 80353A60 0034F6C0 38 A0 00 30 */ li r5, 0x30
/* 80353A64 0034F6C4 4B FE 8C 29 */ bl SHA1Input
/* 80353A68 0034F6C8 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 80353A6C 0034F6CC 38 9A BF C0 */ addi r4, r26, -16448
/* 80353A70 0034F6D0 38 A0 00 28 */ li r5, 0x28
/* 80353A74 0034F6D4 4B FE 8C 19 */ bl SHA1Input
/* 80353A78 0034F6D8 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 80353A7C 0034F6DC 38 81 00 50 */ addi r4, r1, 0x50
/* 80353A80 0034F6E0 38 A0 00 14 */ li r5, 0x14
/* 80353A84 0034F6E4 4B FE 8C 09 */ bl SHA1Input
/* 80353A88 0034F6E8 38 7F 05 FC */ addi r3, r31, 0x5fc
/* 80353A8C 0034F6EC 38 81 00 50 */ addi r4, r1, 0x50
/* 80353A90 0034F6F0 4B FE 8A 0D */ bl SHA1Result
/* 80353A94 0034F6F4 80 7B 00 58 */ lwz r3, 0x58(r27)
/* 80353A98 0034F6F8 38 81 00 40 */ addi r4, r1, 0x40
/* 80353A9C 0034F6FC 80 1B 00 60 */ lwz r0, 0x60(r27)
/* 80353AA0 0034F700 38 A0 00 10 */ li r5, 0x10
/* 80353AA4 0034F704 7C 63 02 14 */ add r3, r3, r0
/* 80353AA8 0034F708 4B CB 05 59 */ bl memcpy
/* 80353AAC 0034F70C 80 7B 00 60 */ lwz r3, 0x60(r27)
/* 80353AB0 0034F710 38 81 00 50 */ addi r4, r1, 0x50
/* 80353AB4 0034F714 80 1B 00 58 */ lwz r0, 0x58(r27)
/* 80353AB8 0034F718 38 A0 00 14 */ li r5, 0x14
/* 80353ABC 0034F71C 38 63 00 10 */ addi r3, r3, 0x10
/* 80353AC0 0034F720 90 7B 00 60 */ stw r3, 0x60(r27)
/* 80353AC4 0034F724 7C 60 1A 14 */ add r3, r0, r3
/* 80353AC8 0034F728 4B CB 05 39 */ bl memcpy
/* 80353ACC 0034F72C 80 9B 00 60 */ lwz r4, 0x60(r27)
/* 80353AD0 0034F730 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353AD4 0034F734 38 04 00 14 */ addi r0, r4, 0x14
/* 80353AD8 0034F738 90 1B 00 60 */ stw r0, 0x60(r27)
/* 80353ADC 0034F73C 4B FE 31 C9 */ bl MD5Init
/* 80353AE0 0034F740 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353AE4 0034F744 38 9F 03 20 */ addi r4, r31, 0x320
/* 80353AE8 0034F748 38 A0 00 10 */ li r5, 0x10
/* 80353AEC 0034F74C 4B FE 31 F9 */ bl MD5Update
/* 80353AF0 0034F750 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353AF4 0034F754 38 99 BF 8C */ addi r4, r25, -16500
/* 80353AF8 0034F758 38 A0 00 30 */ li r5, 0x30
/* 80353AFC 0034F75C 4B FE 31 E9 */ bl MD5Update
/* 80353B00 0034F760 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353B04 0034F764 38 9F 03 10 */ addi r4, r31, 0x310
/* 80353B08 0034F768 38 A0 00 08 */ li r5, 8
/* 80353B0C 0034F76C 4B FE 31 D9 */ bl MD5Update
/* 80353B10 0034F770 38 00 00 28 */ li r0, 0x28
/* 80353B14 0034F774 9A E1 00 38 */ stb r23, 0x38(r1)
/* 80353B18 0034F778 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353B1C 0034F77C 38 81 00 38 */ addi r4, r1, 0x38
/* 80353B20 0034F780 98 01 00 3A */ stb r0, 0x3a(r1)
/* 80353B24 0034F784 38 00 00 24 */ li r0, 0x24
/* 80353B28 0034F788 38 A0 00 07 */ li r5, 7
/* 80353B2C 0034F78C 9A 41 00 39 */ stb r18, 0x39(r1)
/* 80353B30 0034F790 9B 01 00 3B */ stb r24, 0x3b(r1)
/* 80353B34 0034F794 9A 41 00 3C */ stb r18, 0x3c(r1)
/* 80353B38 0034F798 9A 41 00 3D */ stb r18, 0x3d(r1)
/* 80353B3C 0034F79C 98 01 00 3E */ stb r0, 0x3e(r1)
/* 80353B40 0034F7A0 4B FE 31 A5 */ bl MD5Update
/* 80353B44 0034F7A4 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353B48 0034F7A8 38 81 00 40 */ addi r4, r1, 0x40
/* 80353B4C 0034F7AC 38 A0 00 10 */ li r5, 0x10
/* 80353B50 0034F7B0 4B FE 31 95 */ bl MD5Update
/* 80353B54 0034F7B4 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353B58 0034F7B8 38 81 00 50 */ addi r4, r1, 0x50
/* 80353B5C 0034F7BC 38 A0 00 14 */ li r5, 0x14
/* 80353B60 0034F7C0 4B FE 31 85 */ bl MD5Update
/* 80353B64 0034F7C4 38 61 00 40 */ addi r3, r1, 0x40
/* 80353B68 0034F7C8 38 9F 05 A4 */ addi r4, r31, 0x5a4
/* 80353B6C 0034F7CC 4B FE 32 65 */ bl MD5Final
/* 80353B70 0034F7D0 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353B74 0034F7D4 4B FE 31 31 */ bl MD5Init
/* 80353B78 0034F7D8 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353B7C 0034F7DC 38 9F 03 20 */ addi r4, r31, 0x320
/* 80353B80 0034F7E0 38 A0 00 10 */ li r5, 0x10
/* 80353B84 0034F7E4 4B FE 31 61 */ bl MD5Update
/* 80353B88 0034F7E8 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353B8C 0034F7EC 38 9A BF C0 */ addi r4, r26, -16448
/* 80353B90 0034F7F0 38 A0 00 30 */ li r5, 0x30
/* 80353B94 0034F7F4 4B FE 31 51 */ bl MD5Update
/* 80353B98 0034F7F8 38 7F 05 A4 */ addi r3, r31, 0x5a4
/* 80353B9C 0034F7FC 38 81 00 40 */ addi r4, r1, 0x40
/* 80353BA0 0034F800 38 A0 00 10 */ li r5, 0x10
/* 80353BA4 0034F804 4B FE 31 41 */ bl MD5Update
/* 80353BA8 0034F808 38 61 00 40 */ addi r3, r1, 0x40
/* 80353BAC 0034F80C 38 9F 05 A4 */ addi r4, r31, 0x5a4
/* 80353BB0 0034F810 4B FE 32 21 */ bl MD5Final
/* 80353BB4 0034F814 80 7B 00 58 */ lwz r3, 0x58(r27)
/* 80353BB8 0034F818 38 81 00 40 */ addi r4, r1, 0x40
/* 80353BBC 0034F81C 80 1B 00 60 */ lwz r0, 0x60(r27)
/* 80353BC0 0034F820 38 A0 00 10 */ li r5, 0x10
/* 80353BC4 0034F824 7C 63 02 14 */ add r3, r3, r0
/* 80353BC8 0034F828 4B CB 04 39 */ bl memcpy
/* 80353BCC 0034F82C 80 DB 00 60 */ lwz r6, 0x60(r27)
/* 80353BD0 0034F830 38 7F 03 10 */ addi r3, r31, 0x310
/* 80353BD4 0034F834 38 80 00 00 */ li r4, 0
/* 80353BD8 0034F838 38 A0 00 08 */ li r5, 8
/* 80353BDC 0034F83C 38 06 00 10 */ addi r0, r6, 0x10
/* 80353BE0 0034F840 90 1B 00 60 */ stw r0, 0x60(r27)
/* 80353BE4 0034F844 4B CB 05 21 */ bl memset
/* 80353BE8 0034F848 38 60 00 01 */ li r3, 1
/* 80353BEC 0034F84C 4B FA 31 8D */ bl SOHtoNl
/* 80353BF0 0034F850 90 61 00 0C */ stw r3, 0xc(r1)
/* 80353BF4 0034F854 38 7F 03 14 */ addi r3, r31, 0x314
/* 80353BF8 0034F858 38 81 00 0C */ addi r4, r1, 0xc
/* 80353BFC 0034F85C 38 A0 00 04 */ li r5, 4
/* 80353C00 0034F860 4B CB 04 01 */ bl memcpy
/* 80353C04 0034F864 38 8F 00 05 */ addi r4, r15, 5
/* 80353C08 0034F868 38 7F 03 A0 */ addi r3, r31, 0x3a0
/* 80353C0C 0034F86C 7C 85 23 78 */ mr r5, r4
/* 80353C10 0034F870 38 C0 00 38 */ li r6, 0x38
/* 80353C14 0034F874 4B FE 86 91 */ bl RC4Encrypt
/* 80353C18 0034F878 48 00 00 20 */ b lbl_80353C38
lbl_80353C1C:
/* 80353C1C 0034F87C 2C 00 00 14 */ cmpwi r0, 0x14
/* 80353C20 0034F880 40 82 00 10 */ bne lbl_80353C30
/* 80353C24 0034F884 80 1C 00 0C */ lwz r0, 0xc(r28)
/* 80353C28 0034F888 90 1C 00 10 */ stw r0, 0x10(r28)
/* 80353C2C 0034F88C 48 00 00 0C */ b lbl_80353C38
lbl_80353C30:
/* 80353C30 0034F890 38 60 00 03 */ li r3, 3
/* 80353C34 0034F894 48 00 00 20 */ b lbl_80353C54
lbl_80353C38:
/* 80353C38 0034F898 80 1C 00 0C */ lwz r0, 0xc(r28)
/* 80353C3C 0034F89C 82 1C 00 10 */ lwz r16, 0x10(r28)
/* 80353C40 0034F8A0 7C 10 00 00 */ cmpw r16, r0
/* 80353C44 0034F8A4 41 80 EF B4 */ blt lbl_80352BF8
/* 80353C48 0034F8A8 38 60 00 03 */ li r3, 3
/* 80353C4C 0034F8AC 40 82 00 08 */ bne lbl_80353C54
/* 80353C50 0034F8B0 38 60 00 01 */ li r3, 1
lbl_80353C54:
/* 80353C54 0034F8B4 39 61 00 B0 */ addi r11, r1, 0xb0
/* 80353C58 0034F8B8 4B E7 34 E9 */ bl __restore_gpr
/* 80353C5C 0034F8BC 80 01 00 B4 */ lwz r0, 0xb4(r1)
/* 80353C60 0034F8C0 7C 08 03 A6 */ mtlr r0
/* 80353C64 0034F8C4 38 21 00 B0 */ addi r1, r1, 0xb0
/* 80353C68 0034F8C8 4E 80 00 20 */ blr
|