summaryrefslogtreecommitdiff
path: root/asm/SDK/DWC/gamespy/ghttpPost.s
blob: 2193e99e3fe84d7107603ab34716bb231682b145 (plain)
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
.include "macros.inc"

.section .text, "ax"  # 0x80006980 - 0x803E1E60

.global ghiIsPostAutoFree
ghiIsPostAutoFree:
/* 80354240 0034FEA0  80 63 00 18 */	lwz r3, 0x18(r3)
/* 80354244 0034FEA4  4E 80 00 20 */	blr

.global ghiFreePost
ghiFreePost:
/* 80354248 0034FEA8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8035424C 0034FEAC  7C 08 02 A6 */	mflr r0
/* 80354250 0034FEB0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80354254 0034FEB4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80354258 0034FEB8  7C 7F 1B 78 */	mr r31, r3
/* 8035425C 0034FEBC  80 63 00 00 */	lwz r3, 0(r3)
/* 80354260 0034FEC0  4B FE 1B F5 */	bl ArrayFree
/* 80354264 0034FEC4  7F E3 FB 78 */	mr r3, r31
/* 80354268 0034FEC8  4B FE 50 D1 */	bl gsifree
/* 8035426C 0034FECC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80354270 0034FED0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80354274 0034FED4  7C 08 03 A6 */	mtlr r0
/* 80354278 0034FED8  38 21 00 10 */	addi r1, r1, 0x10
/* 8035427C 0034FEDC  4E 80 00 20 */	blr

.global ghiPostGetContentType
ghiPostGetContentType:
/* 80354280 0034FEE0  80 63 01 60 */	lwz r3, 0x160(r3)
/* 80354284 0034FEE4  3C 80 80 45 */	lis r4, lbl_8044BFF8@ha
/* 80354288 0034FEE8  38 84 BF F8 */	addi r4, r4, lbl_8044BFF8@l
/* 8035428C 0034FEEC  2C 03 00 00 */	cmpwi r3, 0
/* 80354290 0034FEF0  40 82 00 0C */	bne lbl_8035429C
/* 80354294 0034FEF4  38 6D 93 B8 */	addi r3, r13, lbl_8063E678-_SDA_BASE_
/* 80354298 0034FEF8  4E 80 00 20 */	blr
lbl_8035429C:
/* 8035429C 0034FEFC  80 03 00 14 */	lwz r0, 0x14(r3)
/* 803542A0 0034FF00  2C 00 00 00 */	cmpwi r0, 0
/* 803542A4 0034FF04  41 82 00 0C */	beq lbl_803542B0
/* 803542A8 0034FF08  38 64 00 44 */	addi r3, r4, 0x44
/* 803542AC 0034FF0C  4E 80 00 20 */	blr
lbl_803542B0:
/* 803542B0 0034FF10  80 03 00 0C */	lwz r0, 0xc(r3)
/* 803542B4 0034FF14  2C 00 00 00 */	cmpwi r0, 0
/* 803542B8 0034FF18  41 82 00 0C */	beq lbl_803542C4
/* 803542BC 0034FF1C  38 64 00 58 */	addi r3, r4, 0x58
/* 803542C0 0034FF20  4E 80 00 20 */	blr
lbl_803542C4:
/* 803542C4 0034FF24  80 03 00 10 */	lwz r0, 0x10(r3)
/* 803542C8 0034FF28  38 64 00 A8 */	addi r3, r4, 0xa8
/* 803542CC 0034FF2C  2C 00 00 00 */	cmpwi r0, 0
/* 803542D0 0034FF30  4D 82 00 20 */	beqlr
/* 803542D4 0034FF34  38 64 00 9C */	addi r3, r4, 0x9c
/* 803542D8 0034FF38  4E 80 00 20 */	blr

.global ghiPostGetNoFilesContentLength
ghiPostGetNoFilesContentLength:
/* 803542DC 0034FF3C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 803542E0 0034FF40  7C 08 02 A6 */	mflr r0
/* 803542E4 0034FF44  90 01 00 24 */	stw r0, 0x24(r1)
/* 803542E8 0034FF48  39 61 00 20 */	addi r11, r1, 0x20
/* 803542EC 0034FF4C  4B E7 2E 3D */	bl _savegpr_27
/* 803542F0 0034FF50  83 A3 01 60 */	lwz r29, 0x160(r3)
/* 803542F4 0034FF54  3B 60 00 00 */	li r27, 0
/* 803542F8 0034FF58  80 7D 00 00 */	lwz r3, 0(r29)
/* 803542FC 0034FF5C  4B FE 1B ED */	bl ArrayLength
/* 80354300 0034FF60  2C 03 00 00 */	cmpwi r3, 0
/* 80354304 0034FF64  7C 7E 1B 78 */	mr r30, r3
/* 80354308 0034FF68  40 82 00 0C */	bne lbl_80354314
/* 8035430C 0034FF6C  38 60 00 00 */	li r3, 0
/* 80354310 0034FF70  48 00 00 78 */	b lbl_80354388
lbl_80354314:
/* 80354314 0034FF74  3B 80 00 00 */	li r28, 0
/* 80354318 0034FF78  48 00 00 60 */	b lbl_80354378
lbl_8035431C:
/* 8035431C 0034FF7C  80 7D 00 00 */	lwz r3, 0(r29)
/* 80354320 0034FF80  7F 84 E3 78 */	mr r4, r28
/* 80354324 0034FF84  4B FE 1B CD */	bl ArrayNth
/* 80354328 0034FF88  80 03 00 00 */	lwz r0, 0(r3)
/* 8035432C 0034FF8C  7C 7F 1B 78 */	mr r31, r3
/* 80354330 0034FF90  2C 00 00 00 */	cmpwi r0, 0
/* 80354334 0034FF94  40 82 00 2C */	bne lbl_80354360
/* 80354338 0034FF98  80 63 00 04 */	lwz r3, 4(r3)
/* 8035433C 0034FF9C  4B E7 28 29 */	bl strlen
/* 80354340 0034FFA0  80 1F 00 14 */	lwz r0, 0x14(r31)
/* 80354344 0034FFA4  7F 7B 1A 14 */	add r27, r27, r3
/* 80354348 0034FFA8  80 7F 00 0C */	lwz r3, 0xc(r31)
/* 8035434C 0034FFAC  54 00 08 3C */	slwi r0, r0, 1
/* 80354350 0034FFB0  7F 7B 1A 14 */	add r27, r27, r3
/* 80354354 0034FFB4  7F 7B 02 14 */	add r27, r27, r0
/* 80354358 0034FFB8  3B 7B 00 01 */	addi r27, r27, 1
/* 8035435C 0034FFBC  48 00 00 18 */	b lbl_80354374
lbl_80354360:
/* 80354360 0034FFC0  2C 00 00 03 */	cmpwi r0, 3
/* 80354364 0034FFC4  40 82 00 10 */	bne lbl_80354374
/* 80354368 0034FFC8  80 63 00 08 */	lwz r3, 8(r3)
/* 8035436C 0034FFCC  4B FE 8A 79 */	bl gsXmlWriterGetDataLength
/* 80354370 0034FFD0  7F 7B 1A 14 */	add r27, r27, r3
lbl_80354374:
/* 80354374 0034FFD4  3B 9C 00 01 */	addi r28, r28, 1
lbl_80354378:
/* 80354378 0034FFD8  7C 1C F0 00 */	cmpw r28, r30
/* 8035437C 0034FFDC  41 80 FF A0 */	blt lbl_8035431C
/* 80354380 0034FFE0  7C 7B F2 14 */	add r3, r27, r30
/* 80354384 0034FFE4  38 63 FF FF */	addi r3, r3, -1
lbl_80354388:
/* 80354388 0034FFE8  39 61 00 20 */	addi r11, r1, 0x20
/* 8035438C 0034FFEC  4B E7 2D E9 */	bl _restgpr_27
/* 80354390 0034FFF0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80354394 0034FFF4  7C 08 03 A6 */	mtlr r0
/* 80354398 0034FFF8  38 21 00 20 */	addi r1, r1, 0x20
/* 8035439C 0034FFFC  4E 80 00 20 */	blr

.global ghiPostGetHasFilesContentLength
ghiPostGetHasFilesContentLength:
/* 803543A0 00350000  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 803543A4 00350004  7C 08 02 A6 */	mflr r0
/* 803543A8 00350008  90 01 00 44 */	stw r0, 0x44(r1)
/* 803543AC 0035000C  39 61 00 40 */	addi r11, r1, 0x40
/* 803543B0 00350010  4B E7 2D 61 */	bl _savegpr_21
/* 803543B4 00350014  80 0D B0 E0 */	lwz r0, lbl_806403A0-_SDA_BASE_(r13)
/* 803543B8 00350018  7C 79 1B 78 */	mr r25, r3
/* 803543BC 0035001C  83 83 01 60 */	lwz r28, 0x160(r3)
/* 803543C0 00350020  3B 40 00 00 */	li r26, 0
/* 803543C4 00350024  2C 00 00 00 */	cmpwi r0, 0
/* 803543C8 00350028  40 82 00 60 */	bne lbl_80354428
/* 803543CC 0035002C  80 1C 00 14 */	lwz r0, 0x14(r28)
/* 803543D0 00350030  2C 00 00 00 */	cmpwi r0, 0
/* 803543D4 00350034  41 82 00 24 */	beq lbl_803543F8
/* 803543D8 00350038  38 60 00 0C */	li r3, 0xc
/* 803543DC 0035003C  38 00 00 00 */	li r0, 0
/* 803543E0 00350040  90 6D B0 E0 */	stw r3, lbl_806403A0-_SDA_BASE_(r13)
/* 803543E4 00350044  90 6D B0 E4 */	stw r3, lbl_806403A4-_SDA_BASE_(r13)
/* 803543E8 00350048  90 6D B0 E8 */	stw r3, lbl_806403A8-_SDA_BASE_(r13)
/* 803543EC 0035004C  90 6D B0 F0 */	stw r3, lbl_806403B0-_SDA_BASE_(r13)
/* 803543F0 00350050  90 0D B0 EC */	stw r0, lbl_806403AC-_SDA_BASE_(r13)
/* 803543F4 00350054  48 00 00 34 */	b lbl_80354428
lbl_803543F8:
/* 803543F8 00350058  3C 60 80 45 */	lis r3, lbl_8044C0C4@ha
/* 803543FC 0035005C  38 63 C0 C4 */	addi r3, r3, lbl_8044C0C4@l
/* 80354400 00350060  4B E7 27 65 */	bl strlen
/* 80354404 00350064  38 C3 00 2F */	addi r6, r3, 0x2f
/* 80354408 00350068  38 A3 00 4C */	addi r5, r3, 0x4c
/* 8035440C 0035006C  38 03 00 04 */	addi r0, r3, 4
/* 80354410 00350070  38 80 00 00 */	li r4, 0
/* 80354414 00350074  90 6D B0 E0 */	stw r3, lbl_806403A0-_SDA_BASE_(r13)
/* 80354418 00350078  90 CD B0 E4 */	stw r6, lbl_806403A4-_SDA_BASE_(r13)
/* 8035441C 0035007C  90 AD B0 E8 */	stw r5, lbl_806403A8-_SDA_BASE_(r13)
/* 80354420 00350080  90 8D B0 F0 */	stw r4, lbl_806403B0-_SDA_BASE_(r13)
/* 80354424 00350084  90 0D B0 EC */	stw r0, lbl_806403AC-_SDA_BASE_(r13)
lbl_80354428:
/* 80354428 00350088  80 7C 00 00 */	lwz r3, 0(r28)
/* 8035442C 0035008C  4B FE 1A BD */	bl ArrayLength
/* 80354430 00350090  7C 7E 1B 78 */	mr r30, r3
/* 80354434 00350094  3B 60 00 00 */	li r27, 0
/* 80354438 00350098  3F 00 80 45 */	lis r24, 0x8045
/* 8035443C 0035009C  48 00 02 BC */	b lbl_803546F8
lbl_80354440:
/* 80354440 003500A0  80 7C 00 00 */	lwz r3, 0(r28)
/* 80354444 003500A4  7F 64 DB 78 */	mr r4, r27
/* 80354448 003500A8  4B FE 1A A9 */	bl ArrayNth
/* 8035444C 003500AC  80 03 00 00 */	lwz r0, 0(r3)
/* 80354450 003500B0  7C 7F 1B 78 */	mr r31, r3
/* 80354454 003500B4  2C 00 00 00 */	cmpwi r0, 0
/* 80354458 003500B8  40 82 00 24 */	bne lbl_8035447C
/* 8035445C 003500BC  80 0D B0 E4 */	lwz r0, lbl_806403A4-_SDA_BASE_(r13)
/* 80354460 003500C0  80 63 00 04 */	lwz r3, 4(r3)
/* 80354464 003500C4  7F 5A 02 14 */	add r26, r26, r0
/* 80354468 003500C8  4B E7 26 FD */	bl strlen
/* 8035446C 003500CC  80 1F 00 0C */	lwz r0, 0xc(r31)
/* 80354470 003500D0  7F 5A 1A 14 */	add r26, r26, r3
/* 80354474 003500D4  7F 5A 02 14 */	add r26, r26, r0
/* 80354478 003500D8  48 00 02 7C */	b lbl_803546F4
lbl_8035447C:
/* 8035447C 003500DC  2C 00 00 01 */	cmpwi r0, 1
/* 80354480 003500E0  40 82 00 D8 */	bne lbl_80354558
/* 80354484 003500E4  80 0D B0 E8 */	lwz r0, lbl_806403A8-_SDA_BASE_(r13)
/* 80354488 003500E8  80 63 00 04 */	lwz r3, 4(r3)
/* 8035448C 003500EC  7F 5A 02 14 */	add r26, r26, r0
/* 80354490 003500F0  4B E7 26 D5 */	bl strlen
/* 80354494 003500F4  7F 5A 1A 14 */	add r26, r26, r3
/* 80354498 003500F8  80 7F 00 10 */	lwz r3, 0x10(r31)
/* 8035449C 003500FC  4B E7 26 C9 */	bl strlen
/* 803544A0 00350100  7F 5A 1A 14 */	add r26, r26, r3
/* 803544A4 00350104  80 79 01 64 */	lwz r3, 0x164(r25)
/* 803544A8 00350108  7F 64 DB 78 */	mr r4, r27
/* 803544AC 0035010C  4B FE 1A 45 */	bl ArrayNth
/* 803544B0 00350110  82 FC 00 14 */	lwz r23, 0x14(r28)
/* 803544B4 00350114  83 A3 00 0C */	lwz r29, 0xc(r3)
/* 803544B8 00350118  2C 17 00 00 */	cmpwi r23, 0
/* 803544BC 0035011C  7F 5A EA 14 */	add r26, r26, r29
/* 803544C0 00350120  40 82 00 10 */	bne lbl_803544D0
/* 803544C4 00350124  80 7F 00 0C */	lwz r3, 0xc(r31)
/* 803544C8 00350128  4B E7 26 9D */	bl strlen
/* 803544CC 0035012C  7F 5A 1A 14 */	add r26, r26, r3
lbl_803544D0:
/* 803544D0 00350130  2C 17 00 00 */	cmpwi r23, 0
/* 803544D4 00350134  41 82 02 20 */	beq lbl_803546F4
/* 803544D8 00350138  80 7F 00 04 */	lwz r3, 4(r31)
/* 803544DC 0035013C  4B E7 26 89 */	bl strlen
/* 803544E0 00350140  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 803544E4 00350144  54 63 0F FE */	srwi r3, r3, 0x1f
/* 803544E8 00350148  7C 03 00 50 */	subf r0, r3, r0
/* 803544EC 0035014C  54 00 10 3E */	rotlwi r0, r0, 2
/* 803544F0 00350150  7C 00 1A 14 */	add r0, r0, r3
/* 803544F4 00350154  20 00 00 04 */	subfic r0, r0, 4
/* 803544F8 00350158  2C 00 00 04 */	cmpwi r0, 4
/* 803544FC 0035015C  41 82 00 08 */	beq lbl_80354504
/* 80354500 00350160  7F 5A 02 14 */	add r26, r26, r0
lbl_80354504:
/* 80354504 00350164  80 7F 00 10 */	lwz r3, 0x10(r31)
/* 80354508 00350168  4B E7 26 5D */	bl strlen
/* 8035450C 0035016C  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 80354510 00350170  54 63 0F FE */	srwi r3, r3, 0x1f
/* 80354514 00350174  7C 03 00 50 */	subf r0, r3, r0
/* 80354518 00350178  54 00 10 3E */	rotlwi r0, r0, 2
/* 8035451C 0035017C  7C 00 1A 14 */	add r0, r0, r3
/* 80354520 00350180  20 00 00 04 */	subfic r0, r0, 4
/* 80354524 00350184  2C 00 00 04 */	cmpwi r0, 4
/* 80354528 00350188  41 82 00 08 */	beq lbl_80354530
/* 8035452C 0035018C  7F 5A 02 14 */	add r26, r26, r0
lbl_80354530:
/* 80354530 00350190  57 A0 F0 02 */	slwi r0, r29, 0x1e
/* 80354534 00350194  57 A3 0F FE */	srwi r3, r29, 0x1f
/* 80354538 00350198  7C 03 00 50 */	subf r0, r3, r0
/* 8035453C 0035019C  54 00 10 3E */	rotlwi r0, r0, 2
/* 80354540 003501A0  7C 00 1A 14 */	add r0, r0, r3
/* 80354544 003501A4  20 00 00 04 */	subfic r0, r0, 4
/* 80354548 003501A8  2C 00 00 04 */	cmpwi r0, 4
/* 8035454C 003501AC  41 82 01 A8 */	beq lbl_803546F4
/* 80354550 003501B0  7F 5A 02 14 */	add r26, r26, r0
/* 80354554 003501B4  48 00 01 A0 */	b lbl_803546F4
lbl_80354558:
/* 80354558 003501B8  2C 00 00 02 */	cmpwi r0, 2
/* 8035455C 003501BC  40 82 00 D4 */	bne lbl_80354630
/* 80354560 003501C0  80 0D B0 E8 */	lwz r0, lbl_806403A8-_SDA_BASE_(r13)
/* 80354564 003501C4  82 C3 00 04 */	lwz r22, 4(r3)
/* 80354568 003501C8  7F 5A 02 14 */	add r26, r26, r0
/* 8035456C 003501CC  7E C3 B3 78 */	mr r3, r22
/* 80354570 003501D0  4B E7 25 F5 */	bl strlen
/* 80354574 003501D4  82 BF 00 14 */	lwz r21, 0x14(r31)
/* 80354578 003501D8  7F 5A 1A 14 */	add r26, r26, r3
/* 8035457C 003501DC  7E A3 AB 78 */	mr r3, r21
/* 80354580 003501E0  4B E7 25 E5 */	bl strlen
/* 80354584 003501E4  82 FC 00 14 */	lwz r23, 0x14(r28)
/* 80354588 003501E8  7F 5A 1A 14 */	add r26, r26, r3
/* 8035458C 003501EC  83 BF 00 0C */	lwz r29, 0xc(r31)
/* 80354590 003501F0  2C 17 00 00 */	cmpwi r23, 0
/* 80354594 003501F4  7F 5A EA 14 */	add r26, r26, r29
/* 80354598 003501F8  40 82 00 10 */	bne lbl_803545A8
/* 8035459C 003501FC  80 7F 00 10 */	lwz r3, 0x10(r31)
/* 803545A0 00350200  4B E7 25 C5 */	bl strlen
/* 803545A4 00350204  7F 5A 1A 14 */	add r26, r26, r3
lbl_803545A8:
/* 803545A8 00350208  2C 17 00 00 */	cmpwi r23, 0
/* 803545AC 0035020C  41 82 01 48 */	beq lbl_803546F4
/* 803545B0 00350210  7E C3 B3 78 */	mr r3, r22
/* 803545B4 00350214  4B E7 25 B1 */	bl strlen
/* 803545B8 00350218  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 803545BC 0035021C  54 63 0F FE */	srwi r3, r3, 0x1f
/* 803545C0 00350220  7C 03 00 50 */	subf r0, r3, r0
/* 803545C4 00350224  54 00 10 3E */	rotlwi r0, r0, 2
/* 803545C8 00350228  7C 00 1A 14 */	add r0, r0, r3
/* 803545CC 0035022C  20 00 00 04 */	subfic r0, r0, 4
/* 803545D0 00350230  2C 00 00 04 */	cmpwi r0, 4
/* 803545D4 00350234  41 82 00 08 */	beq lbl_803545DC
/* 803545D8 00350238  7F 5A 02 14 */	add r26, r26, r0
lbl_803545DC:
/* 803545DC 0035023C  7E A3 AB 78 */	mr r3, r21
/* 803545E0 00350240  4B E7 25 85 */	bl strlen
/* 803545E4 00350244  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 803545E8 00350248  54 63 0F FE */	srwi r3, r3, 0x1f
/* 803545EC 0035024C  7C 03 00 50 */	subf r0, r3, r0
/* 803545F0 00350250  54 00 10 3E */	rotlwi r0, r0, 2
/* 803545F4 00350254  7C 00 1A 14 */	add r0, r0, r3
/* 803545F8 00350258  20 00 00 04 */	subfic r0, r0, 4
/* 803545FC 0035025C  2C 00 00 04 */	cmpwi r0, 4
/* 80354600 00350260  41 82 00 08 */	beq lbl_80354608
/* 80354604 00350264  7F 5A 02 14 */	add r26, r26, r0
lbl_80354608:
/* 80354608 00350268  57 A0 F0 02 */	slwi r0, r29, 0x1e
/* 8035460C 0035026C  57 A3 0F FE */	srwi r3, r29, 0x1f
/* 80354610 00350270  7C 03 00 50 */	subf r0, r3, r0
/* 80354614 00350274  54 00 10 3E */	rotlwi r0, r0, 2
/* 80354618 00350278  7C 00 1A 14 */	add r0, r0, r3
/* 8035461C 0035027C  20 00 00 04 */	subfic r0, r0, 4
/* 80354620 00350280  2C 00 00 04 */	cmpwi r0, 4
/* 80354624 00350284  41 82 00 D0 */	beq lbl_803546F4
/* 80354628 00350288  7F 5A 02 14 */	add r26, r26, r0
/* 8035462C 0035028C  48 00 00 C8 */	b lbl_803546F4
lbl_80354630:
/* 80354630 00350290  2C 00 00 03 */	cmpwi r0, 3
/* 80354634 00350294  40 82 00 B8 */	bne lbl_803546EC
/* 80354638 00350298  80 0D B0 F0 */	lwz r0, lbl_806403B0-_SDA_BASE_(r13)
/* 8035463C 0035029C  80 63 00 08 */	lwz r3, 8(r3)
/* 80354640 003502A0  7F 5A 02 14 */	add r26, r26, r0
/* 80354644 003502A4  4B FE 87 A1 */	bl gsXmlWriterGetDataLength
/* 80354648 003502A8  7F 5A 1A 14 */	add r26, r26, r3
/* 8035464C 003502AC  80 7F 00 08 */	lwz r3, 8(r31)
/* 80354650 003502B0  4B FE 87 95 */	bl gsXmlWriterGetDataLength
/* 80354654 003502B4  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 80354658 003502B8  54 63 0F FE */	srwi r3, r3, 0x1f
/* 8035465C 003502BC  7C 03 00 50 */	subf r0, r3, r0
/* 80354660 003502C0  54 00 10 3E */	rotlwi r0, r0, 2
/* 80354664 003502C4  7C 00 1A 14 */	add r0, r0, r3
/* 80354668 003502C8  20 00 00 04 */	subfic r0, r0, 4
/* 8035466C 003502CC  2C 00 00 04 */	cmpwi r0, 4
/* 80354670 003502D0  41 82 00 08 */	beq lbl_80354678
/* 80354674 003502D4  7F 5A 02 14 */	add r26, r26, r0
lbl_80354678:
/* 80354678 003502D8  38 6D 93 C0 */	addi r3, r13, lbl_8063E680-_SDA_BASE_
/* 8035467C 003502DC  4B E7 24 E9 */	bl strlen
/* 80354680 003502E0  7F 5A 1A 14 */	add r26, r26, r3
/* 80354684 003502E4  38 6D 93 C0 */	addi r3, r13, lbl_8063E680-_SDA_BASE_
/* 80354688 003502E8  4B E7 24 DD */	bl strlen
/* 8035468C 003502EC  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 80354690 003502F0  54 63 0F FE */	srwi r3, r3, 0x1f
/* 80354694 003502F4  7C 03 00 50 */	subf r0, r3, r0
/* 80354698 003502F8  54 00 10 3E */	rotlwi r0, r0, 2
/* 8035469C 003502FC  7C 00 1A 14 */	add r0, r0, r3
/* 803546A0 00350300  20 00 00 04 */	subfic r0, r0, 4
/* 803546A4 00350304  2C 00 00 04 */	cmpwi r0, 4
/* 803546A8 00350308  41 82 00 08 */	beq lbl_803546B0
/* 803546AC 0035030C  7F 5A 02 14 */	add r26, r26, r0
lbl_803546B0:
/* 803546B0 00350310  38 78 C0 EC */	addi r3, r24, -16148
/* 803546B4 00350314  4B E7 24 B1 */	bl strlen
/* 803546B8 00350318  7F 5A 1A 14 */	add r26, r26, r3
/* 803546BC 0035031C  38 78 C0 EC */	addi r3, r24, -16148
/* 803546C0 00350320  4B E7 24 A5 */	bl strlen
/* 803546C4 00350324  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 803546C8 00350328  54 63 0F FE */	srwi r3, r3, 0x1f
/* 803546CC 0035032C  7C 03 00 50 */	subf r0, r3, r0
/* 803546D0 00350330  54 00 10 3E */	rotlwi r0, r0, 2
/* 803546D4 00350334  7C 00 1A 14 */	add r0, r0, r3
/* 803546D8 00350338  20 00 00 04 */	subfic r0, r0, 4
/* 803546DC 0035033C  2C 00 00 04 */	cmpwi r0, 4
/* 803546E0 00350340  41 82 00 14 */	beq lbl_803546F4
/* 803546E4 00350344  7F 5A 02 14 */	add r26, r26, r0
/* 803546E8 00350348  48 00 00 0C */	b lbl_803546F4
lbl_803546EC:
/* 803546EC 0035034C  38 60 00 00 */	li r3, 0
/* 803546F0 00350350  48 00 00 18 */	b lbl_80354708
lbl_803546F4:
/* 803546F4 00350354  3B 7B 00 01 */	addi r27, r27, 1
lbl_803546F8:
/* 803546F8 00350358  7C 1B F0 00 */	cmpw r27, r30
/* 803546FC 0035035C  41 80 FD 44 */	blt lbl_80354440
/* 80354700 00350360  80 0D B0 EC */	lwz r0, lbl_806403AC-_SDA_BASE_(r13)
/* 80354704 00350364  7C 7A 02 14 */	add r3, r26, r0
lbl_80354708:
/* 80354708 00350368  39 61 00 40 */	addi r11, r1, 0x40
/* 8035470C 0035036C  4B E7 2A 51 */	bl _restgpr_21
/* 80354710 00350370  80 01 00 44 */	lwz r0, 0x44(r1)
/* 80354714 00350374  7C 08 03 A6 */	mtlr r0
/* 80354718 00350378  38 21 00 40 */	addi r1, r1, 0x40
/* 8035471C 0035037C  4E 80 00 20 */	blr

.global ghiPostStateInit
ghiPostStateInit:
/* 80354720 00350380  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80354724 00350384  7C 08 02 A6 */	mflr r0
/* 80354728 00350388  90 01 00 14 */	stw r0, 0x14(r1)
/* 8035472C 0035038C  38 00 FF FF */	li r0, -1
/* 80354730 00350390  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80354734 00350394  7C 7F 1B 78 */	mr r31, r3
/* 80354738 00350398  80 83 00 00 */	lwz r4, 0(r3)
/* 8035473C 0035039C  80 84 00 00 */	lwz r4, 0(r4)
/* 80354740 003503A0  2C 04 00 00 */	cmpwi r4, 0
/* 80354744 003503A4  90 03 00 04 */	stw r0, 4(r3)
/* 80354748 003503A8  41 82 00 7C */	beq lbl_803547C4
/* 8035474C 003503AC  2C 04 00 01 */	cmpwi r4, 1
/* 80354750 003503B0  40 82 00 5C */	bne lbl_803547AC
/* 80354754 003503B4  80 63 00 08 */	lwz r3, 8(r3)
/* 80354758 003503B8  2C 03 00 00 */	cmpwi r3, 0
/* 8035475C 003503BC  40 82 00 0C */	bne lbl_80354768
/* 80354760 003503C0  38 60 00 00 */	li r3, 0
/* 80354764 003503C4  48 00 00 64 */	b lbl_803547C8
lbl_80354768:
/* 80354768 003503C8  38 80 00 00 */	li r4, 0
/* 8035476C 003503CC  38 A0 00 02 */	li r5, 2
/* 80354770 003503D0  4B E7 59 81 */	bl fseek
/* 80354774 003503D4  2C 03 00 00 */	cmpwi r3, 0
/* 80354778 003503D8  41 82 00 0C */	beq lbl_80354784
/* 8035477C 003503DC  38 60 00 00 */	li r3, 0
/* 80354780 003503E0  48 00 00 48 */	b lbl_803547C8
lbl_80354784:
/* 80354784 003503E4  80 7F 00 08 */	lwz r3, 8(r31)
/* 80354788 003503E8  4B E7 57 A1 */	bl ftell
/* 8035478C 003503EC  2C 03 FF FF */	cmpwi r3, -1
/* 80354790 003503F0  90 7F 00 0C */	stw r3, 0xc(r31)
/* 80354794 003503F4  40 82 00 0C */	bne lbl_803547A0
/* 80354798 003503F8  38 60 00 00 */	li r3, 0
/* 8035479C 003503FC  48 00 00 2C */	b lbl_803547C8
lbl_803547A0:
/* 803547A0 00350400  80 7F 00 08 */	lwz r3, 8(r31)
/* 803547A4 00350404  4B E7 59 51 */	bl rewind
/* 803547A8 00350408  48 00 00 1C */	b lbl_803547C4
lbl_803547AC:
/* 803547AC 0035040C  2C 04 00 02 */	cmpwi r4, 2
/* 803547B0 00350410  41 82 00 14 */	beq lbl_803547C4
/* 803547B4 00350414  2C 04 00 03 */	cmpwi r4, 3
/* 803547B8 00350418  41 82 00 0C */	beq lbl_803547C4
/* 803547BC 0035041C  38 60 00 00 */	li r3, 0
/* 803547C0 00350420  48 00 00 08 */	b lbl_803547C8
lbl_803547C4:
/* 803547C4 00350424  38 60 00 01 */	li r3, 1
lbl_803547C8:
/* 803547C8 00350428  80 01 00 14 */	lwz r0, 0x14(r1)
/* 803547CC 0035042C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 803547D0 00350430  7C 08 03 A6 */	mtlr r0
/* 803547D4 00350434  38 21 00 10 */	addi r1, r1, 0x10
/* 803547D8 00350438  4E 80 00 20 */	blr

.global ghiPostInitState
ghiPostInitState:
/* 803547DC 0035043C  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 803547E0 00350440  7C 08 02 A6 */	mflr r0
/* 803547E4 00350444  90 01 00 34 */	stw r0, 0x34(r1)
/* 803547E8 00350448  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 803547EC 0035044C  93 C1 00 28 */	stw r30, 0x28(r1)
/* 803547F0 00350450  93 A1 00 24 */	stw r29, 0x24(r1)
/* 803547F4 00350454  93 81 00 20 */	stw r28, 0x20(r1)
/* 803547F8 00350458  7C 7C 1B 78 */	mr r28, r3
/* 803547FC 0035045C  80 83 01 60 */	lwz r4, 0x160(r3)
/* 80354800 00350460  2C 04 00 00 */	cmpwi r4, 0
/* 80354804 00350464  40 82 00 0C */	bne lbl_80354810
/* 80354808 00350468  38 60 00 00 */	li r3, 0
/* 8035480C 0035046C  48 00 01 60 */	b lbl_8035496C
lbl_80354810:
/* 80354810 00350470  38 00 00 00 */	li r0, 0
/* 80354814 00350474  90 03 01 68 */	stw r0, 0x168(r3)
/* 80354818 00350478  90 03 01 6C */	stw r0, 0x16c(r3)
/* 8035481C 0035047C  90 03 01 70 */	stw r0, 0x170(r3)
/* 80354820 00350480  90 03 01 80 */	stw r0, 0x180(r3)
/* 80354824 00350484  80 04 00 04 */	lwz r0, 4(r4)
/* 80354828 00350488  90 03 01 74 */	stw r0, 0x174(r3)
/* 8035482C 0035048C  80 04 00 08 */	lwz r0, 8(r4)
/* 80354830 00350490  90 03 01 78 */	stw r0, 0x178(r3)
/* 80354834 00350494  80 64 00 00 */	lwz r3, 0(r4)
/* 80354838 00350498  4B FE 16 B1 */	bl ArrayLength
/* 8035483C 0035049C  7C 7F 1B 78 */	mr r31, r3
/* 80354840 003504A0  38 60 00 10 */	li r3, 0x10
/* 80354844 003504A4  7F E4 FB 78 */	mr r4, r31
/* 80354848 003504A8  38 A0 00 00 */	li r5, 0
/* 8035484C 003504AC  4B FE 15 6D */	bl ArrayNew
/* 80354850 003504B0  2C 03 00 00 */	cmpwi r3, 0
/* 80354854 003504B4  90 7C 01 64 */	stw r3, 0x164(r28)
/* 80354858 003504B8  40 82 00 0C */	bne lbl_80354864
/* 8035485C 003504BC  38 60 00 00 */	li r3, 0
/* 80354860 003504C0  48 00 01 0C */	b lbl_8035496C
lbl_80354864:
/* 80354864 003504C4  3B A0 00 00 */	li r29, 0
/* 80354868 003504C8  48 00 00 B8 */	b lbl_80354920
lbl_8035486C:
/* 8035486C 003504CC  80 7C 01 60 */	lwz r3, 0x160(r28)
/* 80354870 003504D0  7F A4 EB 78 */	mr r4, r29
/* 80354874 003504D4  80 63 00 00 */	lwz r3, 0(r3)
/* 80354878 003504D8  4B FE 16 79 */	bl ArrayNth
/* 8035487C 003504DC  7C 7E 1B 78 */	mr r30, r3
/* 80354880 003504E0  38 61 00 08 */	addi r3, r1, 8
/* 80354884 003504E4  38 80 00 00 */	li r4, 0
/* 80354888 003504E8  38 A0 00 10 */	li r5, 0x10
/* 8035488C 003504EC  4B CA F8 79 */	bl memset
/* 80354890 003504F0  93 C1 00 08 */	stw r30, 8(r1)
/* 80354894 003504F4  38 61 00 08 */	addi r3, r1, 8
/* 80354898 003504F8  4B FF FE 89 */	bl ghiPostStateInit
/* 8035489C 003504FC  2C 03 00 00 */	cmpwi r3, 0
/* 803548A0 00350500  40 82 00 70 */	bne lbl_80354910
/* 803548A4 00350504  3B E0 00 00 */	li r31, 0
/* 803548A8 00350508  3B BD FF FF */	addi r29, r29, -1
/* 803548AC 0035050C  48 00 00 44 */	b lbl_803548F0
lbl_803548B0:
/* 803548B0 00350510  80 7C 01 64 */	lwz r3, 0x164(r28)
/* 803548B4 00350514  7F A4 EB 78 */	mr r4, r29
/* 803548B8 00350518  4B FE 16 39 */	bl ArrayNth
/* 803548BC 0035051C  80 83 00 00 */	lwz r4, 0(r3)
/* 803548C0 00350520  7C 7E 1B 78 */	mr r30, r3
/* 803548C4 00350524  80 04 00 00 */	lwz r0, 0(r4)
/* 803548C8 00350528  2C 00 00 00 */	cmpwi r0, 0
/* 803548CC 0035052C  41 82 00 20 */	beq lbl_803548EC
/* 803548D0 00350530  2C 00 00 01 */	cmpwi r0, 1
/* 803548D4 00350534  40 82 00 18 */	bne lbl_803548EC
/* 803548D8 00350538  80 63 00 08 */	lwz r3, 8(r3)
/* 803548DC 0035053C  2C 03 00 00 */	cmpwi r3, 0
/* 803548E0 00350540  41 82 00 08 */	beq lbl_803548E8
/* 803548E4 00350544  4B E7 52 ED */	bl fclose
lbl_803548E8:
/* 803548E8 00350548  93 FE 00 08 */	stw r31, 8(r30)
lbl_803548EC:
/* 803548EC 0035054C  3B BD FF FF */	addi r29, r29, -1
lbl_803548F0:
/* 803548F0 00350550  2C 1D 00 00 */	cmpwi r29, 0
/* 803548F4 00350554  40 80 FF BC */	bge lbl_803548B0
/* 803548F8 00350558  80 7C 01 64 */	lwz r3, 0x164(r28)
/* 803548FC 0035055C  4B FE 15 59 */	bl ArrayFree
/* 80354900 00350560  38 00 00 00 */	li r0, 0
/* 80354904 00350564  38 60 00 00 */	li r3, 0
/* 80354908 00350568  90 1C 01 64 */	stw r0, 0x164(r28)
/* 8035490C 0035056C  48 00 00 60 */	b lbl_8035496C
lbl_80354910:
/* 80354910 00350570  80 7C 01 64 */	lwz r3, 0x164(r28)
/* 80354914 00350574  38 81 00 08 */	addi r4, r1, 8
/* 80354918 00350578  4B FE 16 09 */	bl ArrayAppend
/* 8035491C 0035057C  3B BD 00 01 */	addi r29, r29, 1
lbl_80354920:
/* 80354920 00350580  7C 1D F8 00 */	cmpw r29, r31
/* 80354924 00350584  41 80 FF 48 */	blt lbl_8035486C
/* 80354928 00350588  80 7C 01 60 */	lwz r3, 0x160(r28)
/* 8035492C 0035058C  2C 03 00 00 */	cmpwi r3, 0
/* 80354930 00350590  40 82 00 0C */	bne lbl_8035493C
/* 80354934 00350594  38 60 00 00 */	li r3, 0
/* 80354938 00350598  48 00 00 24 */	b lbl_8035495C
lbl_8035493C:
/* 8035493C 0035059C  80 03 00 0C */	lwz r0, 0xc(r3)
/* 80354940 003505A0  2C 00 00 00 */	cmpwi r0, 0
/* 80354944 003505A4  41 82 00 10 */	beq lbl_80354954
/* 80354948 003505A8  7F 83 E3 78 */	mr r3, r28
/* 8035494C 003505AC  4B FF FA 55 */	bl ghiPostGetHasFilesContentLength
/* 80354950 003505B0  48 00 00 0C */	b lbl_8035495C
lbl_80354954:
/* 80354954 003505B4  7F 83 E3 78 */	mr r3, r28
/* 80354958 003505B8  4B FF F9 85 */	bl ghiPostGetNoFilesContentLength
lbl_8035495C:
/* 8035495C 003505BC  38 00 00 01 */	li r0, 1
/* 80354960 003505C0  90 7C 01 70 */	stw r3, 0x170(r28)
/* 80354964 003505C4  38 60 00 01 */	li r3, 1
/* 80354968 003505C8  90 1C 01 7C */	stw r0, 0x17c(r28)
lbl_8035496C:
/* 8035496C 003505CC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80354970 003505D0  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 80354974 003505D4  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 80354978 003505D8  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8035497C 003505DC  83 81 00 20 */	lwz r28, 0x20(r1)
/* 80354980 003505E0  7C 08 03 A6 */	mtlr r0
/* 80354984 003505E4  38 21 00 30 */	addi r1, r1, 0x30
/* 80354988 003505E8  4E 80 00 20 */	blr

.global ghiPostCleanupState
ghiPostCleanupState:
/* 8035498C 003505EC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80354990 003505F0  7C 08 02 A6 */	mflr r0
/* 80354994 003505F4  90 01 00 24 */	stw r0, 0x24(r1)
/* 80354998 003505F8  39 61 00 20 */	addi r11, r1, 0x20
/* 8035499C 003505FC  4B E7 27 8D */	bl _savegpr_27
/* 803549A0 00350600  80 03 01 64 */	lwz r0, 0x164(r3)
/* 803549A4 00350604  7C 7B 1B 78 */	mr r27, r3
/* 803549A8 00350608  2C 00 00 00 */	cmpwi r0, 0
/* 803549AC 0035060C  41 82 00 74 */	beq lbl_80354A20
/* 803549B0 00350610  7C 03 03 78 */	mr r3, r0
/* 803549B4 00350614  4B FE 15 35 */	bl ArrayLength
/* 803549B8 00350618  7C 7D 1B 78 */	mr r29, r3
/* 803549BC 0035061C  3B 80 00 00 */	li r28, 0
/* 803549C0 00350620  3B E0 00 00 */	li r31, 0
/* 803549C4 00350624  48 00 00 44 */	b lbl_80354A08
lbl_803549C8:
/* 803549C8 00350628  80 7B 01 64 */	lwz r3, 0x164(r27)
/* 803549CC 0035062C  7F 84 E3 78 */	mr r4, r28
/* 803549D0 00350630  4B FE 15 21 */	bl ArrayNth
/* 803549D4 00350634  80 83 00 00 */	lwz r4, 0(r3)
/* 803549D8 00350638  7C 7E 1B 78 */	mr r30, r3
/* 803549DC 0035063C  80 04 00 00 */	lwz r0, 0(r4)
/* 803549E0 00350640  2C 00 00 00 */	cmpwi r0, 0
/* 803549E4 00350644  41 82 00 20 */	beq lbl_80354A04
/* 803549E8 00350648  2C 00 00 01 */	cmpwi r0, 1
/* 803549EC 0035064C  40 82 00 18 */	bne lbl_80354A04
/* 803549F0 00350650  80 63 00 08 */	lwz r3, 8(r3)
/* 803549F4 00350654  2C 03 00 00 */	cmpwi r3, 0
/* 803549F8 00350658  41 82 00 08 */	beq lbl_80354A00
/* 803549FC 0035065C  4B E7 51 D5 */	bl fclose
lbl_80354A00:
/* 80354A00 00350660  93 FE 00 08 */	stw r31, 8(r30)
lbl_80354A04:
/* 80354A04 00350664  3B 9C 00 01 */	addi r28, r28, 1
lbl_80354A08:
/* 80354A08 00350668  7C 1C E8 00 */	cmpw r28, r29
/* 80354A0C 0035066C  41 80 FF BC */	blt lbl_803549C8
/* 80354A10 00350670  80 7B 01 64 */	lwz r3, 0x164(r27)
/* 80354A14 00350674  4B FE 14 41 */	bl ArrayFree
/* 80354A18 00350678  38 00 00 00 */	li r0, 0
/* 80354A1C 0035067C  90 1B 01 64 */	stw r0, 0x164(r27)
lbl_80354A20:
/* 80354A20 00350680  83 BB 01 60 */	lwz r29, 0x160(r27)
/* 80354A24 00350684  2C 1D 00 00 */	cmpwi r29, 0
/* 80354A28 00350688  41 82 00 28 */	beq lbl_80354A50
/* 80354A2C 0035068C  80 1D 00 18 */	lwz r0, 0x18(r29)
/* 80354A30 00350690  2C 00 00 00 */	cmpwi r0, 0
/* 80354A34 00350694  41 82 00 1C */	beq lbl_80354A50
/* 80354A38 00350698  80 7D 00 00 */	lwz r3, 0(r29)
/* 80354A3C 0035069C  4B FE 14 19 */	bl ArrayFree
/* 80354A40 003506A0  7F A3 EB 78 */	mr r3, r29
/* 80354A44 003506A4  4B FE 48 F5 */	bl gsifree
/* 80354A48 003506A8  38 00 00 00 */	li r0, 0
/* 80354A4C 003506AC  90 1B 01 60 */	stw r0, 0x160(r27)
lbl_80354A50:
/* 80354A50 003506B0  39 61 00 20 */	addi r11, r1, 0x20
/* 80354A54 003506B4  4B E7 27 21 */	bl _restgpr_27
/* 80354A58 003506B8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80354A5C 003506BC  7C 08 03 A6 */	mtlr r0
/* 80354A60 003506C0  38 21 00 20 */	addi r1, r1, 0x20
/* 80354A64 003506C4  4E 80 00 20 */	blr

.global ghiPostStringStateDoPosting
ghiPostStringStateDoPosting:
/* 80354A68 003506C8  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 80354A6C 003506CC  7C 08 02 A6 */	mflr r0
/* 80354A70 003506D0  90 01 00 34 */	stw r0, 0x34(r1)
/* 80354A74 003506D4  39 61 00 30 */	addi r11, r1, 0x30
/* 80354A78 003506D8  4B E7 26 AD */	bl _savegpr_26
/* 80354A7C 003506DC  80 C3 00 00 */	lwz r6, 0(r3)
/* 80354A80 003506E0  7C 9E 23 78 */	mr r30, r4
/* 80354A84 003506E4  80 A6 00 0C */	lwz r5, 0xc(r6)
/* 80354A88 003506E8  2C 05 00 00 */	cmpwi r5, 0
/* 80354A8C 003506EC  40 82 00 0C */	bne lbl_80354A98
/* 80354A90 003506F0  38 60 00 01 */	li r3, 1
/* 80354A94 003506F4  48 00 01 68 */	b lbl_80354BFC
lbl_80354A98:
/* 80354A98 003506F8  80 64 01 60 */	lwz r3, 0x160(r4)
/* 80354A9C 003506FC  80 03 00 0C */	lwz r0, 0xc(r3)
/* 80354AA0 00350700  2C 00 00 00 */	cmpwi r0, 0
/* 80354AA4 00350704  40 82 00 F4 */	bne lbl_80354B98
/* 80354AA8 00350708  80 03 00 10 */	lwz r0, 0x10(r3)
/* 80354AAC 0035070C  2C 00 00 00 */	cmpwi r0, 0
/* 80354AB0 00350710  40 82 00 E8 */	bne lbl_80354B98
/* 80354AB4 00350714  80 06 00 10 */	lwz r0, 0x10(r6)
/* 80354AB8 00350718  2C 00 00 00 */	cmpwi r0, 0
/* 80354ABC 0035071C  41 82 00 DC */	beq lbl_80354B98
/* 80354AC0 00350720  83 E6 00 08 */	lwz r31, 8(r6)
/* 80354AC4 00350724  88 C2 A4 D8 */	lbz r6, lbl_80642AD8-_SDA2_BASE_(r2)
/* 80354AC8 00350728  88 A2 A4 D9 */	lbz r5, lbl_80642AD9-_SDA2_BASE_(r2)
/* 80354ACC 0035072C  88 62 A4 DA */	lbz r3, lbl_80642ADA-_SDA2_BASE_(r2)
/* 80354AD0 00350730  88 02 A4 DB */	lbz r0, lbl_80642ADB-_SDA2_BASE_(r2)
/* 80354AD4 00350734  98 C1 00 08 */	stb r6, 8(r1)
/* 80354AD8 00350738  98 A1 00 09 */	stb r5, 9(r1)
/* 80354ADC 0035073C  98 61 00 0A */	stb r3, 0xa(r1)
/* 80354AE0 00350740  98 01 00 0B */	stb r0, 0xb(r1)
/* 80354AE4 00350744  80 04 01 94 */	lwz r0, 0x194(r4)
/* 80354AE8 00350748  2C 00 00 00 */	cmpwi r0, 0
/* 80354AEC 0035074C  40 82 00 0C */	bne lbl_80354AF8
/* 80354AF0 00350750  3B 44 00 54 */	addi r26, r4, 0x54
/* 80354AF4 00350754  48 00 00 08 */	b lbl_80354AFC
lbl_80354AF8:
/* 80354AF8 00350758  3B 44 00 78 */	addi r26, r4, 0x78
lbl_80354AFC:
/* 80354AFC 0035075C  3F A0 80 45 */	lis r29, lbl_8044C118@ha
/* 80354B00 00350760  3F 80 80 45 */	lis r28, 0x8045
/* 80354B04 00350764  3B BD C1 18 */	addi r29, r29, lbl_8044C118@l
/* 80354B08 00350768  48 00 00 80 */	b lbl_80354B88
lbl_80354B0C:
/* 80354B0C 0035076C  7F 64 DB 78 */	mr r4, r27
/* 80354B10 00350770  38 7C BF F8 */	addi r3, r28, -16392
/* 80354B14 00350774  4B E7 9A 95 */	bl strchr
/* 80354B18 00350778  2C 03 00 00 */	cmpwi r3, 0
/* 80354B1C 0035077C  41 82 00 14 */	beq lbl_80354B30
/* 80354B20 00350780  7F 43 D3 78 */	mr r3, r26
/* 80354B24 00350784  7F 64 DB 78 */	mr r4, r27
/* 80354B28 00350788  4B FF C3 85 */	bl ghiAppendCharToBuffer
/* 80354B2C 0035078C  48 00 00 58 */	b lbl_80354B84
lbl_80354B30:
/* 80354B30 00350790  2C 1B 00 20 */	cmpwi r27, 0x20
/* 80354B34 00350794  40 82 00 14 */	bne lbl_80354B48
/* 80354B38 00350798  7F 43 D3 78 */	mr r3, r26
/* 80354B3C 0035079C  38 80 00 2B */	li r4, 0x2b
/* 80354B40 003507A0  4B FF C3 6D */	bl ghiAppendCharToBuffer
/* 80354B44 003507A4  48 00 00 40 */	b lbl_80354B84
lbl_80354B48:
/* 80354B48 003507A8  57 60 E0 06 */	slwi r0, r27, 0x1c
/* 80354B4C 003507AC  57 65 0F FE */	srwi r5, r27, 0x1f
/* 80354B50 003507B0  7C 05 00 50 */	subf r0, r5, r0
/* 80354B54 003507B4  7F 64 26 70 */	srawi r4, r27, 4
/* 80354B58 003507B8  54 00 20 3E */	rotlwi r0, r0, 4
/* 80354B5C 003507BC  7F 43 D3 78 */	mr r3, r26
/* 80354B60 003507C0  7C C4 01 94 */	addze r6, r4
/* 80354B64 003507C4  38 81 00 08 */	addi r4, r1, 8
/* 80354B68 003507C8  7C 00 2A 14 */	add r0, r0, r5
/* 80354B6C 003507CC  7C DD 30 AE */	lbzx r6, r29, r6
/* 80354B70 003507D0  7C 1D 00 AE */	lbzx r0, r29, r0
/* 80354B74 003507D4  38 A0 00 03 */	li r5, 3
/* 80354B78 003507D8  98 C1 00 09 */	stb r6, 9(r1)
/* 80354B7C 003507DC  98 01 00 0A */	stb r0, 0xa(r1)
/* 80354B80 003507E0  4B FF BF 3D */	bl ghiAppendDataToBuffer
lbl_80354B84:
/* 80354B84 003507E4  3B FF 00 01 */	addi r31, r31, 1
lbl_80354B88:
/* 80354B88 003507E8  8B 7F 00 00 */	lbz r27, 0(r31)
/* 80354B8C 003507EC  7F 7B 07 75 */	extsb. r27, r27
/* 80354B90 003507F0  40 82 FF 7C */	bne lbl_80354B0C
/* 80354B94 003507F4  48 00 00 20 */	b lbl_80354BB4
lbl_80354B98:
/* 80354B98 003507F8  80 86 00 08 */	lwz r4, 8(r6)
/* 80354B9C 003507FC  7F C3 F3 78 */	mr r3, r30
/* 80354BA0 00350800  4B FF CA 99 */	bl ghiTrySendThenBuffer
/* 80354BA4 00350804  7C 03 00 D0 */	neg r0, r3
/* 80354BA8 00350808  7C 00 1B 78 */	or r0, r0, r3
/* 80354BAC 0035080C  54 03 0F FE */	srwi r3, r0, 0x1f
/* 80354BB0 00350810  48 00 00 4C */	b lbl_80354BFC
lbl_80354BB4:
/* 80354BB4 00350814  80 1E 01 94 */	lwz r0, 0x194(r30)
/* 80354BB8 00350818  2C 00 00 00 */	cmpwi r0, 0
/* 80354BBC 0035081C  40 82 00 3C */	bne lbl_80354BF8
/* 80354BC0 00350820  7F C3 F3 78 */	mr r3, r30
/* 80354BC4 00350824  4B FF C4 91 */	bl ghiSendBufferedData
/* 80354BC8 00350828  2C 03 00 00 */	cmpwi r3, 0
/* 80354BCC 0035082C  40 82 00 0C */	bne lbl_80354BD8
/* 80354BD0 00350830  38 60 00 00 */	li r3, 0
/* 80354BD4 00350834  48 00 00 28 */	b lbl_80354BFC
lbl_80354BD8:
/* 80354BD8 00350838  80 7E 00 64 */	lwz r3, 0x64(r30)
/* 80354BDC 0035083C  80 1E 00 60 */	lwz r0, 0x60(r30)
/* 80354BE0 00350840  7C 03 00 00 */	cmpw r3, r0
/* 80354BE4 00350844  40 82 00 0C */	bne lbl_80354BF0
/* 80354BE8 00350848  38 7E 00 54 */	addi r3, r30, 0x54
/* 80354BEC 0035084C  4B FF C4 45 */	bl ghiResetBuffer
lbl_80354BF0:
/* 80354BF0 00350850  38 60 00 01 */	li r3, 1
/* 80354BF4 00350854  48 00 00 08 */	b lbl_80354BFC
lbl_80354BF8:
/* 80354BF8 00350858  38 60 00 01 */	li r3, 1
lbl_80354BFC:
/* 80354BFC 0035085C  39 61 00 30 */	addi r11, r1, 0x30
/* 80354C00 00350860  4B E7 25 71 */	bl _restgpr_26
/* 80354C04 00350864  80 01 00 34 */	lwz r0, 0x34(r1)
/* 80354C08 00350868  7C 08 03 A6 */	mtlr r0
/* 80354C0C 0035086C  38 21 00 30 */	addi r1, r1, 0x30
/* 80354C10 00350870  4E 80 00 20 */	blr

.global ghiPostXmlStateDoPosting
ghiPostXmlStateDoPosting:
/* 80354C14 00350874  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80354C18 00350878  7C 08 02 A6 */	mflr r0
/* 80354C1C 0035087C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80354C20 00350880  38 00 00 00 */	li r0, 0
/* 80354C24 00350884  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80354C28 00350888  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80354C2C 0035088C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80354C30 00350890  3B A0 00 00 */	li r29, 0
/* 80354C34 00350894  93 81 00 10 */	stw r28, 0x10(r1)
/* 80354C38 00350898  7C 9C 23 78 */	mr r28, r4
/* 80354C3C 0035089C  80 63 00 00 */	lwz r3, 0(r3)
/* 80354C40 003508A0  83 C3 00 08 */	lwz r30, 8(r3)
/* 80354C44 003508A4  B0 01 00 08 */	sth r0, 8(r1)
/* 80354C48 003508A8  98 01 00 0A */	stb r0, 0xa(r1)
/* 80354C4C 003508AC  80 64 01 60 */	lwz r3, 0x160(r4)
/* 80354C50 003508B0  80 03 00 14 */	lwz r0, 0x14(r3)
/* 80354C54 003508B4  2C 00 00 00 */	cmpwi r0, 0
/* 80354C58 003508B8  41 82 00 30 */	beq lbl_80354C88
/* 80354C5C 003508BC  7F C3 F3 78 */	mr r3, r30
/* 80354C60 003508C0  4B FE 81 85 */	bl gsXmlWriterGetDataLength
/* 80354C64 003508C4  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 80354C68 003508C8  54 63 0F FE */	srwi r3, r3, 0x1f
/* 80354C6C 003508CC  7C 03 00 50 */	subf r0, r3, r0
/* 80354C70 003508D0  54 00 10 3E */	rotlwi r0, r0, 2
/* 80354C74 003508D4  7C 00 1A 14 */	add r0, r0, r3
/* 80354C78 003508D8  23 A0 00 04 */	subfic r29, r0, 4
/* 80354C7C 003508DC  2C 1D 00 04 */	cmpwi r29, 4
/* 80354C80 003508E0  40 82 00 08 */	bne lbl_80354C88
/* 80354C84 003508E4  3B A0 00 00 */	li r29, 0
lbl_80354C88:
/* 80354C88 003508E8  80 1C 01 94 */	lwz r0, 0x194(r28)
/* 80354C8C 003508EC  2C 00 00 00 */	cmpwi r0, 0
/* 80354C90 003508F0  40 82 00 58 */	bne lbl_80354CE8
/* 80354C94 003508F4  7F C3 F3 78 */	mr r3, r30
/* 80354C98 003508F8  4B FE 81 4D */	bl gsXmlWriterGetDataLength
/* 80354C9C 003508FC  7C 7F 1B 78 */	mr r31, r3
/* 80354CA0 00350900  7F C3 F3 78 */	mr r3, r30
/* 80354CA4 00350904  4B FE 81 39 */	bl gsXmlWriterGetData
/* 80354CA8 00350908  7C 64 1B 78 */	mr r4, r3
/* 80354CAC 0035090C  7F 83 E3 78 */	mr r3, r28
/* 80354CB0 00350910  7F E5 FB 78 */	mr r5, r31
/* 80354CB4 00350914  4B FF C9 85 */	bl ghiTrySendThenBuffer
/* 80354CB8 00350918  2C 03 00 00 */	cmpwi r3, 0
/* 80354CBC 0035091C  40 82 00 0C */	bne lbl_80354CC8
/* 80354CC0 00350920  38 60 00 00 */	li r3, 0
/* 80354CC4 00350924  48 00 00 C4 */	b lbl_80354D88
lbl_80354CC8:
/* 80354CC8 00350928  7F 83 E3 78 */	mr r3, r28
/* 80354CCC 0035092C  7F A5 EB 78 */	mr r5, r29
/* 80354CD0 00350930  38 81 00 08 */	addi r4, r1, 8
/* 80354CD4 00350934  4B FF C9 65 */	bl ghiTrySendThenBuffer
/* 80354CD8 00350938  7C 03 00 D0 */	neg r0, r3
/* 80354CDC 0035093C  7C 00 1B 78 */	or r0, r0, r3
/* 80354CE0 00350940  54 03 0F FE */	srwi r3, r0, 0x1f
/* 80354CE4 00350944  48 00 00 A4 */	b lbl_80354D88
lbl_80354CE8:
/* 80354CE8 00350948  7F C3 F3 78 */	mr r3, r30
/* 80354CEC 0035094C  4B FE 80 F9 */	bl gsXmlWriterGetDataLength
/* 80354CF0 00350950  7C 7F 1B 78 */	mr r31, r3
/* 80354CF4 00350954  7F C3 F3 78 */	mr r3, r30
/* 80354CF8 00350958  4B FE 80 E5 */	bl gsXmlWriterGetData
/* 80354CFC 0035095C  7C 64 1B 78 */	mr r4, r3
/* 80354D00 00350960  7F E5 FB 78 */	mr r5, r31
/* 80354D04 00350964  38 7C 00 78 */	addi r3, r28, 0x78
/* 80354D08 00350968  4B FF BD B5 */	bl ghiAppendDataToBuffer
/* 80354D0C 0035096C  2C 03 00 00 */	cmpwi r3, 0
/* 80354D10 00350970  41 82 00 34 */	beq lbl_80354D44
/* 80354D14 00350974  7F A5 EB 78 */	mr r5, r29
/* 80354D18 00350978  38 7C 00 78 */	addi r3, r28, 0x78
/* 80354D1C 0035097C  38 81 00 08 */	addi r4, r1, 8
/* 80354D20 00350980  4B FF BD 9D */	bl ghiAppendDataToBuffer
/* 80354D24 00350984  2C 03 00 00 */	cmpwi r3, 0
/* 80354D28 00350988  41 82 00 1C */	beq lbl_80354D44
/* 80354D2C 0035098C  80 9C 00 7C */	lwz r4, 0x7c(r28)
/* 80354D30 00350990  38 7C 00 54 */	addi r3, r28, 0x54
/* 80354D34 00350994  80 BC 00 84 */	lwz r5, 0x84(r28)
/* 80354D38 00350998  4B FF BE F5 */	bl ghiEncryptDataToBuffer
/* 80354D3C 0035099C  2C 03 00 00 */	cmpwi r3, 0
/* 80354D40 003509A0  40 82 00 0C */	bne lbl_80354D4C
lbl_80354D44:
/* 80354D44 003509A4  38 60 00 00 */	li r3, 0
/* 80354D48 003509A8  48 00 00 40 */	b lbl_80354D88
lbl_80354D4C:
/* 80354D4C 003509AC  38 7C 00 78 */	addi r3, r28, 0x78
/* 80354D50 003509B0  4B FF C2 E1 */	bl ghiResetBuffer
/* 80354D54 003509B4  7F 83 E3 78 */	mr r3, r28
/* 80354D58 003509B8  4B FF C2 FD */	bl ghiSendBufferedData
/* 80354D5C 003509BC  2C 03 00 00 */	cmpwi r3, 0
/* 80354D60 003509C0  40 82 00 0C */	bne lbl_80354D6C
/* 80354D64 003509C4  38 60 00 00 */	li r3, 0
/* 80354D68 003509C8  48 00 00 20 */	b lbl_80354D88
lbl_80354D6C:
/* 80354D6C 003509CC  80 7C 00 64 */	lwz r3, 0x64(r28)
/* 80354D70 003509D0  80 1C 00 60 */	lwz r0, 0x60(r28)
/* 80354D74 003509D4  7C 03 00 00 */	cmpw r3, r0
/* 80354D78 003509D8  40 82 00 0C */	bne lbl_80354D84
/* 80354D7C 003509DC  38 7C 00 54 */	addi r3, r28, 0x54
/* 80354D80 003509E0  4B FF C2 B1 */	bl ghiResetBuffer
lbl_80354D84:
/* 80354D84 003509E4  38 60 00 01 */	li r3, 1
lbl_80354D88:
/* 80354D88 003509E8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80354D8C 003509EC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80354D90 003509F0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80354D94 003509F4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80354D98 003509F8  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80354D9C 003509FC  7C 08 03 A6 */	mtlr r0
/* 80354DA0 00350A00  38 21 00 20 */	addi r1, r1, 0x20
/* 80354DA4 00350A04  4E 80 00 20 */	blr

.global ghiPostFileDiskStateDoPosting
ghiPostFileDiskStateDoPosting:
/* 80354DA8 00350A08  94 21 EF E0 */	stwu r1, -0x1020(r1)
/* 80354DAC 00350A0C  7C 08 02 A6 */	mflr r0
/* 80354DB0 00350A10  90 01 10 24 */	stw r0, 0x1024(r1)
/* 80354DB4 00350A14  93 E1 10 1C */	stw r31, 0x101c(r1)
/* 80354DB8 00350A18  7C 9F 23 78 */	mr r31, r4
/* 80354DBC 00350A1C  93 C1 10 18 */	stw r30, 0x1018(r1)
/* 80354DC0 00350A20  7C 7E 1B 78 */	mr r30, r3
lbl_80354DC4:
/* 80354DC4 00350A24  80 DE 00 08 */	lwz r6, 8(r30)
/* 80354DC8 00350A28  38 61 00 10 */	addi r3, r1, 0x10
/* 80354DCC 00350A2C  38 80 00 01 */	li r4, 1
/* 80354DD0 00350A30  38 A0 10 00 */	li r5, 0x1000
/* 80354DD4 00350A34  4B E7 47 B1 */	bl fread
/* 80354DD8 00350A38  2C 03 00 00 */	cmpwi r3, 0
/* 80354DDC 00350A3C  7C 65 1B 78 */	mr r5, r3
/* 80354DE0 00350A40  41 81 00 1C */	bgt lbl_80354DFC
/* 80354DE4 00350A44  38 60 00 01 */	li r3, 1
/* 80354DE8 00350A48  38 00 00 0E */	li r0, 0xe
/* 80354DEC 00350A4C  90 7F 01 20 */	stw r3, 0x120(r31)
/* 80354DF0 00350A50  38 60 00 00 */	li r3, 0
/* 80354DF4 00350A54  90 1F 00 3C */	stw r0, 0x3c(r31)
/* 80354DF8 00350A58  48 00 00 D8 */	b lbl_80354ED0
lbl_80354DFC:
/* 80354DFC 00350A5C  80 9E 00 04 */	lwz r4, 4(r30)
/* 80354E00 00350A60  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 80354E04 00350A64  7C 64 1A 14 */	add r3, r4, r3
/* 80354E08 00350A68  7C 03 00 00 */	cmpw r3, r0
/* 80354E0C 00350A6C  90 7E 00 04 */	stw r3, 4(r30)
/* 80354E10 00350A70  40 81 00 1C */	ble lbl_80354E2C
/* 80354E14 00350A74  38 60 00 01 */	li r3, 1
/* 80354E18 00350A78  38 00 00 0E */	li r0, 0xe
/* 80354E1C 00350A7C  90 7F 01 20 */	stw r3, 0x120(r31)
/* 80354E20 00350A80  38 60 00 00 */	li r3, 0
/* 80354E24 00350A84  90 1F 00 3C */	stw r0, 0x3c(r31)
/* 80354E28 00350A88  48 00 00 A8 */	b lbl_80354ED0
lbl_80354E2C:
/* 80354E2C 00350A8C  7F E3 FB 78 */	mr r3, r31
/* 80354E30 00350A90  38 81 00 10 */	addi r4, r1, 0x10
/* 80354E34 00350A94  4B FF C8 05 */	bl ghiTrySendThenBuffer
/* 80354E38 00350A98  2C 03 00 00 */	cmpwi r3, 0
/* 80354E3C 00350A9C  40 82 00 0C */	bne lbl_80354E48
/* 80354E40 00350AA0  38 60 00 00 */	li r3, 0
/* 80354E44 00350AA4  48 00 00 8C */	b lbl_80354ED0
lbl_80354E48:
/* 80354E48 00350AA8  80 9E 00 04 */	lwz r4, 4(r30)
/* 80354E4C 00350AAC  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 80354E50 00350AB0  7C 04 00 00 */	cmpw r4, r0
/* 80354E54 00350AB4  40 82 00 70 */	bne lbl_80354EC4
/* 80354E58 00350AB8  80 7F 01 60 */	lwz r3, 0x160(r31)
/* 80354E5C 00350ABC  80 03 00 14 */	lwz r0, 0x14(r3)
/* 80354E60 00350AC0  2C 00 00 00 */	cmpwi r0, 0
/* 80354E64 00350AC4  41 82 00 58 */	beq lbl_80354EBC
/* 80354E68 00350AC8  38 00 00 00 */	li r0, 0
/* 80354E6C 00350ACC  B0 01 00 08 */	sth r0, 8(r1)
/* 80354E70 00350AD0  98 01 00 0A */	stb r0, 0xa(r1)
/* 80354E74 00350AD4  80 7E 00 0C */	lwz r3, 0xc(r30)
/* 80354E78 00350AD8  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 80354E7C 00350ADC  54 63 0F FE */	srwi r3, r3, 0x1f
/* 80354E80 00350AE0  7C 03 00 50 */	subf r0, r3, r0
/* 80354E84 00350AE4  54 00 10 3E */	rotlwi r0, r0, 2
/* 80354E88 00350AE8  7C 00 1A 14 */	add r0, r0, r3
/* 80354E8C 00350AEC  20 A0 00 04 */	subfic r5, r0, 4
/* 80354E90 00350AF0  2C 05 00 04 */	cmpwi r5, 4
/* 80354E94 00350AF4  41 82 00 28 */	beq lbl_80354EBC
/* 80354E98 00350AF8  2C 05 00 00 */	cmpwi r5, 0
/* 80354E9C 00350AFC  40 81 00 20 */	ble lbl_80354EBC
/* 80354EA0 00350B00  7F E3 FB 78 */	mr r3, r31
/* 80354EA4 00350B04  38 81 00 08 */	addi r4, r1, 8
/* 80354EA8 00350B08  4B FF C7 91 */	bl ghiTrySendThenBuffer
/* 80354EAC 00350B0C  2C 03 00 00 */	cmpwi r3, 0
/* 80354EB0 00350B10  40 82 00 0C */	bne lbl_80354EBC
/* 80354EB4 00350B14  38 60 00 00 */	li r3, 0
/* 80354EB8 00350B18  48 00 00 18 */	b lbl_80354ED0
lbl_80354EBC:
/* 80354EBC 00350B1C  38 60 00 01 */	li r3, 1
/* 80354EC0 00350B20  48 00 00 10 */	b lbl_80354ED0
lbl_80354EC4:
/* 80354EC4 00350B24  2C 03 00 01 */	cmpwi r3, 1
/* 80354EC8 00350B28  41 82 FE FC */	beq lbl_80354DC4
/* 80354ECC 00350B2C  38 60 00 02 */	li r3, 2
lbl_80354ED0:
/* 80354ED0 00350B30  80 01 10 24 */	lwz r0, 0x1024(r1)
/* 80354ED4 00350B34  83 E1 10 1C */	lwz r31, 0x101c(r1)
/* 80354ED8 00350B38  83 C1 10 18 */	lwz r30, 0x1018(r1)
/* 80354EDC 00350B3C  7C 08 03 A6 */	mtlr r0
/* 80354EE0 00350B40  38 21 10 20 */	addi r1, r1, 0x1020
/* 80354EE4 00350B44  4E 80 00 20 */	blr

.global ghiPostFileMemoryStateDoPosting
ghiPostFileMemoryStateDoPosting:
/* 80354EE8 00350B48  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80354EEC 00350B4C  7C 08 02 A6 */	mflr r0
/* 80354EF0 00350B50  90 01 00 24 */	stw r0, 0x24(r1)
/* 80354EF4 00350B54  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80354EF8 00350B58  7C 9F 23 78 */	mr r31, r4
/* 80354EFC 00350B5C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80354F00 00350B60  7C 7E 1B 78 */	mr r30, r3
/* 80354F04 00350B64  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80354F08 00350B68  80 C3 00 00 */	lwz r6, 0(r3)
/* 80354F0C 00350B6C  80 A6 00 0C */	lwz r5, 0xc(r6)
/* 80354F10 00350B70  2C 05 00 00 */	cmpwi r5, 0
/* 80354F14 00350B74  40 82 00 0C */	bne lbl_80354F20
/* 80354F18 00350B78  38 60 00 01 */	li r3, 1
/* 80354F1C 00350B7C  48 00 01 A8 */	b lbl_803550C4
lbl_80354F20:
/* 80354F20 00350B80  80 04 01 94 */	lwz r0, 0x194(r4)
/* 80354F24 00350B84  2C 00 00 00 */	cmpwi r0, 0
/* 80354F28 00350B88  40 82 00 C8 */	bne lbl_80354FF0
lbl_80354F2C:
/* 80354F2C 00350B8C  80 9E 00 04 */	lwz r4, 4(r30)
/* 80354F30 00350B90  7F E3 FB 78 */	mr r3, r31
/* 80354F34 00350B94  80 06 00 08 */	lwz r0, 8(r6)
/* 80354F38 00350B98  7C A4 28 50 */	subf r5, r4, r5
/* 80354F3C 00350B9C  7C 80 22 14 */	add r4, r0, r4
/* 80354F40 00350BA0  4B FF C6 3D */	bl ghiDoSend
/* 80354F44 00350BA4  2C 03 FF FF */	cmpwi r3, -1
/* 80354F48 00350BA8  40 82 00 0C */	bne lbl_80354F54
/* 80354F4C 00350BAC  38 60 00 00 */	li r3, 0
/* 80354F50 00350BB0  48 00 01 74 */	b lbl_803550C4
lbl_80354F54:
/* 80354F54 00350BB4  80 1E 00 04 */	lwz r0, 4(r30)
/* 80354F58 00350BB8  80 DE 00 00 */	lwz r6, 0(r30)
/* 80354F5C 00350BBC  7C 00 1A 14 */	add r0, r0, r3
/* 80354F60 00350BC0  90 1E 00 04 */	stw r0, 4(r30)
/* 80354F64 00350BC4  80 A6 00 0C */	lwz r5, 0xc(r6)
/* 80354F68 00350BC8  7C 05 00 00 */	cmpw r5, r0
/* 80354F6C 00350BCC  40 82 00 74 */	bne lbl_80354FE0
/* 80354F70 00350BD0  80 7F 01 60 */	lwz r3, 0x160(r31)
/* 80354F74 00350BD4  80 03 00 14 */	lwz r0, 0x14(r3)
/* 80354F78 00350BD8  2C 00 00 00 */	cmpwi r0, 0
/* 80354F7C 00350BDC  41 82 00 5C */	beq lbl_80354FD8
/* 80354F80 00350BE0  38 00 00 00 */	li r0, 0
/* 80354F84 00350BE4  B0 01 00 0C */	sth r0, 0xc(r1)
/* 80354F88 00350BE8  98 01 00 0E */	stb r0, 0xe(r1)
/* 80354F8C 00350BEC  80 7E 00 00 */	lwz r3, 0(r30)
/* 80354F90 00350BF0  80 63 00 0C */	lwz r3, 0xc(r3)
/* 80354F94 00350BF4  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 80354F98 00350BF8  54 63 0F FE */	srwi r3, r3, 0x1f
/* 80354F9C 00350BFC  7C 03 00 50 */	subf r0, r3, r0
/* 80354FA0 00350C00  54 00 10 3E */	rotlwi r0, r0, 2
/* 80354FA4 00350C04  7C 00 1A 14 */	add r0, r0, r3
/* 80354FA8 00350C08  20 A0 00 04 */	subfic r5, r0, 4
/* 80354FAC 00350C0C  2C 05 00 04 */	cmpwi r5, 4
/* 80354FB0 00350C10  41 82 00 28 */	beq lbl_80354FD8
/* 80354FB4 00350C14  2C 05 00 00 */	cmpwi r5, 0
/* 80354FB8 00350C18  40 81 00 20 */	ble lbl_80354FD8
/* 80354FBC 00350C1C  7F E3 FB 78 */	mr r3, r31
/* 80354FC0 00350C20  38 81 00 0C */	addi r4, r1, 0xc
/* 80354FC4 00350C24  4B FF C6 75 */	bl ghiTrySendThenBuffer
/* 80354FC8 00350C28  2C 03 00 00 */	cmpwi r3, 0
/* 80354FCC 00350C2C  40 82 00 0C */	bne lbl_80354FD8
/* 80354FD0 00350C30  38 60 00 00 */	li r3, 0
/* 80354FD4 00350C34  48 00 00 F0 */	b lbl_803550C4
lbl_80354FD8:
/* 80354FD8 00350C38  38 60 00 01 */	li r3, 1
/* 80354FDC 00350C3C  48 00 00 E8 */	b lbl_803550C4
lbl_80354FE0:
/* 80354FE0 00350C40  2C 03 00 00 */	cmpwi r3, 0
/* 80354FE4 00350C44  40 82 FF 48 */	bne lbl_80354F2C
/* 80354FE8 00350C48  38 60 00 02 */	li r3, 2
/* 80354FEC 00350C4C  48 00 00 D8 */	b lbl_803550C4
lbl_80354FF0:
/* 80354FF0 00350C50  80 9E 00 04 */	lwz r4, 4(r30)
/* 80354FF4 00350C54  3B A0 3F 01 */	li r29, 0x3f01
/* 80354FF8 00350C58  7C 04 28 50 */	subf r0, r4, r5
/* 80354FFC 00350C5C  2C 00 3F 01 */	cmpwi r0, 0x3f01
/* 80355000 00350C60  40 80 00 08 */	bge lbl_80355008
/* 80355004 00350C64  7C 1D 03 78 */	mr r29, r0
lbl_80355008:
/* 80355008 00350C68  80 06 00 08 */	lwz r0, 8(r6)
/* 8035500C 00350C6C  7F E3 FB 78 */	mr r3, r31
/* 80355010 00350C70  7F A5 EB 78 */	mr r5, r29
/* 80355014 00350C74  7C 80 22 14 */	add r4, r0, r4
/* 80355018 00350C78  4B FF C6 21 */	bl ghiTrySendThenBuffer
/* 8035501C 00350C7C  2C 03 00 00 */	cmpwi r3, 0
/* 80355020 00350C80  40 82 00 0C */	bne lbl_8035502C
/* 80355024 00350C84  38 60 00 00 */	li r3, 0
/* 80355028 00350C88  48 00 00 9C */	b lbl_803550C4
lbl_8035502C:
/* 8035502C 00350C8C  80 1E 00 04 */	lwz r0, 4(r30)
/* 80355030 00350C90  80 DE 00 00 */	lwz r6, 0(r30)
/* 80355034 00350C94  7C 00 EA 14 */	add r0, r0, r29
/* 80355038 00350C98  90 1E 00 04 */	stw r0, 4(r30)
/* 8035503C 00350C9C  80 A6 00 0C */	lwz r5, 0xc(r6)
/* 80355040 00350CA0  7C 05 00 00 */	cmpw r5, r0
/* 80355044 00350CA4  40 82 00 74 */	bne lbl_803550B8
/* 80355048 00350CA8  80 7F 01 60 */	lwz r3, 0x160(r31)
/* 8035504C 00350CAC  80 03 00 14 */	lwz r0, 0x14(r3)
/* 80355050 00350CB0  2C 00 00 00 */	cmpwi r0, 0
/* 80355054 00350CB4  41 82 00 5C */	beq lbl_803550B0
/* 80355058 00350CB8  38 00 00 00 */	li r0, 0
/* 8035505C 00350CBC  B0 01 00 08 */	sth r0, 8(r1)
/* 80355060 00350CC0  98 01 00 0A */	stb r0, 0xa(r1)
/* 80355064 00350CC4  80 7E 00 00 */	lwz r3, 0(r30)
/* 80355068 00350CC8  80 63 00 0C */	lwz r3, 0xc(r3)
/* 8035506C 00350CCC  54 60 F0 02 */	slwi r0, r3, 0x1e
/* 80355070 00350CD0  54 63 0F FE */	srwi r3, r3, 0x1f
/* 80355074 00350CD4  7C 03 00 50 */	subf r0, r3, r0
/* 80355078 00350CD8  54 00 10 3E */	rotlwi r0, r0, 2
/* 8035507C 00350CDC  7C 00 1A 14 */	add r0, r0, r3
/* 80355080 00350CE0  20 A0 00 04 */	subfic r5, r0, 4
/* 80355084 00350CE4  2C 05 00 04 */	cmpwi r5, 4
/* 80355088 00350CE8  41 82 00 28 */	beq lbl_803550B0
/* 8035508C 00350CEC  2C 05 00 00 */	cmpwi r5, 0
/* 80355090 00350CF0  40 81 00 20 */	ble lbl_803550B0
/* 80355094 00350CF4  7F E3 FB 78 */	mr r3, r31
/* 80355098 00350CF8  38 81 00 08 */	addi r4, r1, 8
/* 8035509C 00350CFC  4B FF C5 9D */	bl ghiTrySendThenBuffer
/* 803550A0 00350D00  2C 03 00 00 */	cmpwi r3, 0
/* 803550A4 00350D04  40 82 00 0C */	bne lbl_803550B0
/* 803550A8 00350D08  38 60 00 00 */	li r3, 0
/* 803550AC 00350D0C  48 00 00 18 */	b lbl_803550C4
lbl_803550B0:
/* 803550B0 00350D10  38 60 00 01 */	li r3, 1
/* 803550B4 00350D14  48 00 00 10 */	b lbl_803550C4
lbl_803550B8:
/* 803550B8 00350D18  2C 03 00 01 */	cmpwi r3, 1
/* 803550BC 00350D1C  41 82 FF 34 */	beq lbl_80354FF0
/* 803550C0 00350D20  38 60 00 02 */	li r3, 2
lbl_803550C4:
/* 803550C4 00350D24  80 01 00 24 */	lwz r0, 0x24(r1)
/* 803550C8 00350D28  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 803550CC 00350D2C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 803550D0 00350D30  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 803550D4 00350D34  7C 08 03 A6 */	mtlr r0
/* 803550D8 00350D38  38 21 00 20 */	addi r1, r1, 0x20
/* 803550DC 00350D3C  4E 80 00 20 */	blr

.global ghiPostStateDoPosting
ghiPostStateDoPosting:
/* 803550E0 00350D40  94 21 F7 C0 */	stwu r1, -0x840(r1)
/* 803550E4 00350D44  7C 08 02 A6 */	mflr r0
/* 803550E8 00350D48  90 01 08 44 */	stw r0, 0x844(r1)
/* 803550EC 00350D4C  39 61 08 40 */	addi r11, r1, 0x840
/* 803550F0 00350D50  4B E7 20 35 */	bl _savegpr_26
/* 803550F4 00350D54  80 03 00 04 */	lwz r0, 4(r3)
/* 803550F8 00350D58  3F E0 80 45 */	lis r31, lbl_8044BFF8@ha
/* 803550FC 00350D5C  7C 7B 1B 78 */	mr r27, r3
/* 80355100 00350D60  7C 9C 23 78 */	mr r28, r4
/* 80355104 00350D64  2C 00 FF FF */	cmpwi r0, -1
/* 80355108 00350D68  3B FF BF F8 */	addi r31, r31, lbl_8044BFF8@l
/* 8035510C 00350D6C  3B A0 00 00 */	li r29, 0
/* 80355110 00350D70  40 82 05 6C */	bne lbl_8035567C
/* 80355114 00350D74  38 00 00 00 */	li r0, 0
/* 80355118 00350D78  90 03 00 04 */	stw r0, 4(r3)
/* 8035511C 00350D7C  80 84 01 60 */	lwz r4, 0x160(r4)
/* 80355120 00350D80  80 04 00 0C */	lwz r0, 0xc(r4)
/* 80355124 00350D84  2C 00 00 00 */	cmpwi r0, 0
/* 80355128 00350D88  40 82 00 50 */	bne lbl_80355178
/* 8035512C 00350D8C  80 04 00 10 */	lwz r0, 0x10(r4)
/* 80355130 00350D90  2C 00 00 00 */	cmpwi r0, 0
/* 80355134 00350D94  40 82 00 44 */	bne lbl_80355178
/* 80355138 00350D98  2C 05 00 00 */	cmpwi r5, 0
/* 8035513C 00350D9C  41 82 00 20 */	beq lbl_8035515C
/* 80355140 00350DA0  80 BB 00 00 */	lwz r5, 0(r27)
/* 80355144 00350DA4  38 61 00 20 */	addi r3, r1, 0x20
/* 80355148 00350DA8  38 8D 93 C8 */	addi r4, r13, lbl_8063E688-_SDA_BASE_
/* 8035514C 00350DAC  80 A5 00 04 */	lwz r5, 4(r5)
/* 80355150 00350DB0  4C C6 31 82 */	crclr 6
/* 80355154 00350DB4  4B E7 79 A9 */	bl sprintf
/* 80355158 00350DB8  48 00 04 5C */	b lbl_803555B4
lbl_8035515C:
/* 8035515C 00350DBC  80 BB 00 00 */	lwz r5, 0(r27)
/* 80355160 00350DC0  38 61 00 20 */	addi r3, r1, 0x20
/* 80355164 00350DC4  38 8D 93 CC */	addi r4, r13, lbl_8063E68C-_SDA_BASE_
/* 80355168 00350DC8  80 A5 00 04 */	lwz r5, 4(r5)
/* 8035516C 00350DCC  4C C6 31 82 */	crclr 6
/* 80355170 00350DD0  4B E7 79 8D */	bl sprintf
/* 80355174 00350DD4  48 00 04 40 */	b lbl_803555B4
lbl_80355178:
/* 80355178 00350DD8  81 03 00 00 */	lwz r8, 0(r3)
/* 8035517C 00350DDC  80 E8 00 00 */	lwz r7, 0(r8)
/* 80355180 00350DE0  2C 07 00 00 */	cmpwi r7, 0
/* 80355184 00350DE4  40 82 00 2C */	bne lbl_803551B0
/* 80355188 00350DE8  2C 05 00 00 */	cmpwi r5, 0
/* 8035518C 00350DEC  38 61 00 20 */	addi r3, r1, 0x20
/* 80355190 00350DF0  38 9F 01 38 */	addi r4, r31, 0x138
/* 80355194 00350DF4  38 BF 01 90 */	addi r5, r31, 0x190
/* 80355198 00350DF8  41 82 00 08 */	beq lbl_803551A0
/* 8035519C 00350DFC  38 BF 01 68 */	addi r5, r31, 0x168
lbl_803551A0:
/* 803551A0 00350E00  80 C8 00 04 */	lwz r6, 4(r8)
/* 803551A4 00350E04  4C C6 31 82 */	crclr 6
/* 803551A8 00350E08  4B E7 79 55 */	bl sprintf
/* 803551AC 00350E0C  48 00 04 08 */	b lbl_803555B4
lbl_803551B0:
/* 803551B0 00350E10  2C 07 00 03 */	cmpwi r7, 3
/* 803551B4 00350E14  40 82 01 D8 */	bne lbl_8035538C
/* 803551B8 00350E18  80 04 00 14 */	lwz r0, 0x14(r4)
/* 803551BC 00350E1C  2C 00 00 00 */	cmpwi r0, 0
/* 803551C0 00350E20  41 82 01 C0 */	beq lbl_80355380
/* 803551C4 00350E24  38 00 00 08 */	li r0, 8
/* 803551C8 00350E28  2C 05 00 00 */	cmpwi r5, 0
/* 803551CC 00350E2C  98 01 00 14 */	stb r0, 0x14(r1)
/* 803551D0 00350E30  41 82 00 0C */	beq lbl_803551DC
/* 803551D4 00350E34  60 00 00 04 */	ori r0, r0, 4
/* 803551D8 00350E38  98 01 00 14 */	stb r0, 0x14(r1)
lbl_803551DC:
/* 803551DC 00350E3C  2C 06 00 00 */	cmpwi r6, 0
/* 803551E0 00350E40  41 82 00 10 */	beq lbl_803551F0
/* 803551E4 00350E44  88 01 00 14 */	lbz r0, 0x14(r1)
/* 803551E8 00350E48  60 00 00 02 */	ori r0, r0, 2
/* 803551EC 00350E4C  98 01 00 14 */	stb r0, 0x14(r1)
lbl_803551F0:
/* 803551F0 00350E50  38 00 00 20 */	li r0, 0x20
/* 803551F4 00350E54  3B C0 00 00 */	li r30, 0
/* 803551F8 00350E58  98 01 00 15 */	stb r0, 0x15(r1)
/* 803551FC 00350E5C  38 6D 93 C0 */	addi r3, r13, lbl_8063E680-_SDA_BASE_
/* 80355200 00350E60  B3 C1 00 16 */	sth r30, 0x16(r1)
/* 80355204 00350E64  4B E7 19 61 */	bl strlen
/* 80355208 00350E68  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 8035520C 00350E6C  4B FA 1B 71 */	bl SOHtoNs
/* 80355210 00350E70  B0 61 00 18 */	sth r3, 0x18(r1)
/* 80355214 00350E74  38 7F 00 F4 */	addi r3, r31, 0xf4
/* 80355218 00350E78  4B E7 19 4D */	bl strlen
/* 8035521C 00350E7C  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80355220 00350E80  4B FA 1B 5D */	bl SOHtoNs
/* 80355224 00350E84  B0 61 00 1A */	sth r3, 0x1a(r1)
/* 80355228 00350E88  80 7B 00 00 */	lwz r3, 0(r27)
/* 8035522C 00350E8C  80 63 00 08 */	lwz r3, 8(r3)
/* 80355230 00350E90  4B FE 7B B5 */	bl gsXmlWriterGetDataLength
/* 80355234 00350E94  4B FA 1B 45 */	bl SOHtoNl
/* 80355238 00350E98  90 61 00 1C */	stw r3, 0x1c(r1)
/* 8035523C 00350E9C  38 61 00 20 */	addi r3, r1, 0x20
/* 80355240 00350EA0  38 81 00 14 */	addi r4, r1, 0x14
/* 80355244 00350EA4  38 A0 00 0C */	li r5, 0xc
/* 80355248 00350EA8  4B CA ED B9 */	bl memcpy
/* 8035524C 00350EAC  38 61 00 2C */	addi r3, r1, 0x2c
/* 80355250 00350EB0  38 8D 93 C0 */	addi r4, r13, lbl_8063E680-_SDA_BASE_
/* 80355254 00350EB4  4B E7 90 7D */	bl strcpy
/* 80355258 00350EB8  38 6D 93 C0 */	addi r3, r13, lbl_8063E680-_SDA_BASE_
/* 8035525C 00350EBC  4B E7 19 09 */	bl strlen
/* 80355260 00350EC0  3B A3 00 0C */	addi r29, r3, 0xc
/* 80355264 00350EC4  38 6D 93 C0 */	addi r3, r13, lbl_8063E680-_SDA_BASE_
/* 80355268 00350EC8  4B E7 18 FD */	bl strlen
/* 8035526C 00350ECC  54 60 07 BE */	clrlwi r0, r3, 0x1e
/* 80355270 00350ED0  20 80 00 04 */	subfic r4, r0, 4
/* 80355274 00350ED4  2C 04 00 04 */	cmpwi r4, 4
/* 80355278 00350ED8  41 82 00 68 */	beq lbl_803552E0
/* 8035527C 00350EDC  2C 04 00 00 */	cmpwi r4, 0
/* 80355280 00350EE0  38 01 00 20 */	addi r0, r1, 0x20
/* 80355284 00350EE4  7C 60 EA 14 */	add r3, r0, r29
/* 80355288 00350EE8  40 81 00 58 */	ble lbl_803552E0
/* 8035528C 00350EEC  54 80 E8 FF */	rlwinm. r0, r4, 0x1d, 3, 0x1f
/* 80355290 00350EF0  7C 09 03 A6 */	mtctr r0
/* 80355294 00350EF4  41 82 00 38 */	beq lbl_803552CC
lbl_80355298:
/* 80355298 00350EF8  9B C3 00 00 */	stb r30, 0(r3)
/* 8035529C 00350EFC  3B BD 00 08 */	addi r29, r29, 8
/* 803552A0 00350F00  9B C3 00 01 */	stb r30, 1(r3)
/* 803552A4 00350F04  9B C3 00 02 */	stb r30, 2(r3)
/* 803552A8 00350F08  9B C3 00 03 */	stb r30, 3(r3)
/* 803552AC 00350F0C  9B C3 00 04 */	stb r30, 4(r3)
/* 803552B0 00350F10  9B C3 00 05 */	stb r30, 5(r3)
/* 803552B4 00350F14  9B C3 00 06 */	stb r30, 6(r3)
/* 803552B8 00350F18  9B C3 00 07 */	stb r30, 7(r3)
/* 803552BC 00350F1C  38 63 00 08 */	addi r3, r3, 8
/* 803552C0 00350F20  42 00 FF D8 */	bdnz lbl_80355298
/* 803552C4 00350F24  70 84 00 07 */	andi. r4, r4, 7
/* 803552C8 00350F28  41 82 00 18 */	beq lbl_803552E0
lbl_803552CC:
/* 803552CC 00350F2C  7C 89 03 A6 */	mtctr r4
lbl_803552D0:
/* 803552D0 00350F30  9B C3 00 00 */	stb r30, 0(r3)
/* 803552D4 00350F34  3B BD 00 01 */	addi r29, r29, 1
/* 803552D8 00350F38  38 63 00 01 */	addi r3, r3, 1
/* 803552DC 00350F3C  42 00 FF F4 */	bdnz lbl_803552D0
lbl_803552E0:
/* 803552E0 00350F40  38 61 00 20 */	addi r3, r1, 0x20
/* 803552E4 00350F44  38 9F 00 F4 */	addi r4, r31, 0xf4
/* 803552E8 00350F48  7C 63 EA 14 */	add r3, r3, r29
/* 803552EC 00350F4C  4B E7 8F E5 */	bl strcpy
/* 803552F0 00350F50  38 7F 00 F4 */	addi r3, r31, 0xf4
/* 803552F4 00350F54  4B E7 18 71 */	bl strlen
/* 803552F8 00350F58  7F BD 1A 14 */	add r29, r29, r3
/* 803552FC 00350F5C  38 7F 00 F4 */	addi r3, r31, 0xf4
/* 80355300 00350F60  4B E7 18 65 */	bl strlen
/* 80355304 00350F64  54 60 07 BE */	clrlwi r0, r3, 0x1e
/* 80355308 00350F68  20 A0 00 04 */	subfic r5, r0, 4
/* 8035530C 00350F6C  2C 05 00 04 */	cmpwi r5, 4
/* 80355310 00350F70  41 82 02 A4 */	beq lbl_803555B4
/* 80355314 00350F74  2C 05 00 00 */	cmpwi r5, 0
/* 80355318 00350F78  38 01 00 20 */	addi r0, r1, 0x20
/* 8035531C 00350F7C  38 80 00 00 */	li r4, 0
/* 80355320 00350F80  7C 60 EA 14 */	add r3, r0, r29
/* 80355324 00350F84  40 81 02 90 */	ble lbl_803555B4
/* 80355328 00350F88  54 A0 E8 FF */	rlwinm. r0, r5, 0x1d, 3, 0x1f
/* 8035532C 00350F8C  7C 09 03 A6 */	mtctr r0
/* 80355330 00350F90  41 82 00 38 */	beq lbl_80355368
lbl_80355334:
/* 80355334 00350F94  98 83 00 00 */	stb r4, 0(r3)
/* 80355338 00350F98  3B BD 00 08 */	addi r29, r29, 8
/* 8035533C 00350F9C  98 83 00 01 */	stb r4, 1(r3)
/* 80355340 00350FA0  98 83 00 02 */	stb r4, 2(r3)
/* 80355344 00350FA4  98 83 00 03 */	stb r4, 3(r3)
/* 80355348 00350FA8  98 83 00 04 */	stb r4, 4(r3)
/* 8035534C 00350FAC  98 83 00 05 */	stb r4, 5(r3)
/* 80355350 00350FB0  98 83 00 06 */	stb r4, 6(r3)
/* 80355354 00350FB4  98 83 00 07 */	stb r4, 7(r3)
/* 80355358 00350FB8  38 63 00 08 */	addi r3, r3, 8
/* 8035535C 00350FBC  42 00 FF D8 */	bdnz lbl_80355334
/* 80355360 00350FC0  70 A5 00 07 */	andi. r5, r5, 7
/* 80355364 00350FC4  41 82 02 50 */	beq lbl_803555B4
lbl_80355368:
/* 80355368 00350FC8  7C A9 03 A6 */	mtctr r5
lbl_8035536C:
/* 8035536C 00350FCC  98 83 00 00 */	stb r4, 0(r3)
/* 80355370 00350FD0  3B BD 00 01 */	addi r29, r29, 1
/* 80355374 00350FD4  38 63 00 01 */	addi r3, r3, 1
/* 80355378 00350FD8  42 00 FF F4 */	bdnz lbl_8035536C
/* 8035537C 00350FDC  48 00 02 38 */	b lbl_803555B4
lbl_80355380:
/* 80355380 00350FE0  38 00 00 00 */	li r0, 0
/* 80355384 00350FE4  98 01 00 20 */	stb r0, 0x20(r1)
/* 80355388 00350FE8  48 00 02 2C */	b lbl_803555B4
lbl_8035538C:
/* 8035538C 00350FEC  38 07 FF FF */	addi r0, r7, -1
/* 80355390 00350FF0  28 00 00 01 */	cmplwi r0, 1
/* 80355394 00350FF4  41 81 02 20 */	bgt lbl_803555B4
/* 80355398 00350FF8  2C 07 00 01 */	cmpwi r7, 1
/* 8035539C 00350FFC  40 82 00 14 */	bne lbl_803553B0
/* 803553A0 00351000  83 43 00 0C */	lwz r26, 0xc(r3)
/* 803553A4 00351004  80 E8 00 0C */	lwz r7, 0xc(r8)
/* 803553A8 00351008  83 C8 00 10 */	lwz r30, 0x10(r8)
/* 803553AC 0035100C  48 00 00 10 */	b lbl_803553BC
lbl_803553B0:
/* 803553B0 00351010  83 48 00 0C */	lwz r26, 0xc(r8)
/* 803553B4 00351014  80 E8 00 10 */	lwz r7, 0x10(r8)
/* 803553B8 00351018  83 C8 00 14 */	lwz r30, 0x14(r8)
lbl_803553BC:
/* 803553BC 0035101C  80 04 00 14 */	lwz r0, 0x14(r4)
/* 803553C0 00351020  2C 00 00 00 */	cmpwi r0, 0
/* 803553C4 00351024  41 82 01 C8 */	beq lbl_8035558C
/* 803553C8 00351028  38 00 00 08 */	li r0, 8
/* 803553CC 0035102C  2C 05 00 00 */	cmpwi r5, 0
/* 803553D0 00351030  98 01 00 08 */	stb r0, 8(r1)
/* 803553D4 00351034  41 82 00 0C */	beq lbl_803553E0
/* 803553D8 00351038  60 00 00 04 */	ori r0, r0, 4
/* 803553DC 0035103C  98 01 00 08 */	stb r0, 8(r1)
lbl_803553E0:
/* 803553E0 00351040  2C 06 00 00 */	cmpwi r6, 0
/* 803553E4 00351044  41 82 00 10 */	beq lbl_803553F4
/* 803553E8 00351048  88 01 00 08 */	lbz r0, 8(r1)
/* 803553EC 0035104C  60 00 00 02 */	ori r0, r0, 2
/* 803553F0 00351050  98 01 00 08 */	stb r0, 8(r1)
lbl_803553F4:
/* 803553F4 00351054  38 00 00 10 */	li r0, 0x10
/* 803553F8 00351058  3B E0 00 00 */	li r31, 0
/* 803553FC 0035105C  98 01 00 09 */	stb r0, 9(r1)
/* 80355400 00351060  B3 E1 00 0A */	sth r31, 0xa(r1)
/* 80355404 00351064  80 63 00 00 */	lwz r3, 0(r3)
/* 80355408 00351068  80 63 00 04 */	lwz r3, 4(r3)
/* 8035540C 0035106C  4B E7 17 59 */	bl strlen
/* 80355410 00351070  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80355414 00351074  4B FA 19 69 */	bl SOHtoNs
/* 80355418 00351078  B0 61 00 0C */	sth r3, 0xc(r1)
/* 8035541C 0035107C  7F C3 F3 78 */	mr r3, r30
/* 80355420 00351080  4B E7 17 45 */	bl strlen
/* 80355424 00351084  54 63 04 3E */	clrlwi r3, r3, 0x10
/* 80355428 00351088  4B FA 19 55 */	bl SOHtoNs
/* 8035542C 0035108C  B0 61 00 0E */	sth r3, 0xe(r1)
/* 80355430 00351090  7F 43 D3 78 */	mr r3, r26
/* 80355434 00351094  4B FA 19 45 */	bl SOHtoNl
/* 80355438 00351098  90 61 00 10 */	stw r3, 0x10(r1)
/* 8035543C 0035109C  38 61 00 20 */	addi r3, r1, 0x20
/* 80355440 003510A0  38 81 00 08 */	addi r4, r1, 8
/* 80355444 003510A4  38 A0 00 0C */	li r5, 0xc
/* 80355448 003510A8  4B CA EB B9 */	bl memcpy
/* 8035544C 003510AC  80 9B 00 00 */	lwz r4, 0(r27)
/* 80355450 003510B0  38 61 00 2C */	addi r3, r1, 0x2c
/* 80355454 003510B4  80 84 00 04 */	lwz r4, 4(r4)
/* 80355458 003510B8  4B E7 8E 79 */	bl strcpy
/* 8035545C 003510BC  80 7B 00 00 */	lwz r3, 0(r27)
/* 80355460 003510C0  83 43 00 04 */	lwz r26, 4(r3)
/* 80355464 003510C4  7F 43 D3 78 */	mr r3, r26
/* 80355468 003510C8  4B E7 16 FD */	bl strlen
/* 8035546C 003510CC  3B A3 00 0C */	addi r29, r3, 0xc
/* 80355470 003510D0  7F 43 D3 78 */	mr r3, r26
/* 80355474 003510D4  4B E7 16 F1 */	bl strlen
/* 80355478 003510D8  54 60 07 BE */	clrlwi r0, r3, 0x1e
/* 8035547C 003510DC  20 80 00 04 */	subfic r4, r0, 4
/* 80355480 003510E0  2C 04 00 04 */	cmpwi r4, 4
/* 80355484 003510E4  41 82 00 68 */	beq lbl_803554EC
/* 80355488 003510E8  2C 04 00 00 */	cmpwi r4, 0
/* 8035548C 003510EC  38 01 00 20 */	addi r0, r1, 0x20
/* 80355490 003510F0  7C 60 EA 14 */	add r3, r0, r29
/* 80355494 003510F4  40 81 00 58 */	ble lbl_803554EC
/* 80355498 003510F8  54 80 E8 FF */	rlwinm. r0, r4, 0x1d, 3, 0x1f
/* 8035549C 003510FC  7C 09 03 A6 */	mtctr r0
/* 803554A0 00351100  41 82 00 38 */	beq lbl_803554D8
lbl_803554A4:
/* 803554A4 00351104  9B E3 00 00 */	stb r31, 0(r3)
/* 803554A8 00351108  3B BD 00 08 */	addi r29, r29, 8
/* 803554AC 0035110C  9B E3 00 01 */	stb r31, 1(r3)
/* 803554B0 00351110  9B E3 00 02 */	stb r31, 2(r3)
/* 803554B4 00351114  9B E3 00 03 */	stb r31, 3(r3)
/* 803554B8 00351118  9B E3 00 04 */	stb r31, 4(r3)
/* 803554BC 0035111C  9B E3 00 05 */	stb r31, 5(r3)
/* 803554C0 00351120  9B E3 00 06 */	stb r31, 6(r3)
/* 803554C4 00351124  9B E3 00 07 */	stb r31, 7(r3)
/* 803554C8 00351128  38 63 00 08 */	addi r3, r3, 8
/* 803554CC 0035112C  42 00 FF D8 */	bdnz lbl_803554A4
/* 803554D0 00351130  70 84 00 07 */	andi. r4, r4, 7
/* 803554D4 00351134  41 82 00 18 */	beq lbl_803554EC
lbl_803554D8:
/* 803554D8 00351138  7C 89 03 A6 */	mtctr r4
lbl_803554DC:
/* 803554DC 0035113C  9B E3 00 00 */	stb r31, 0(r3)
/* 803554E0 00351140  3B BD 00 01 */	addi r29, r29, 1
/* 803554E4 00351144  38 63 00 01 */	addi r3, r3, 1
/* 803554E8 00351148  42 00 FF F4 */	bdnz lbl_803554DC
lbl_803554EC:
/* 803554EC 0035114C  38 61 00 20 */	addi r3, r1, 0x20
/* 803554F0 00351150  7F C4 F3 78 */	mr r4, r30
/* 803554F4 00351154  7C 63 EA 14 */	add r3, r3, r29
/* 803554F8 00351158  4B E7 8D D9 */	bl strcpy
/* 803554FC 0035115C  7F C3 F3 78 */	mr r3, r30
/* 80355500 00351160  4B E7 16 65 */	bl strlen
/* 80355504 00351164  7F BD 1A 14 */	add r29, r29, r3
/* 80355508 00351168  7F C3 F3 78 */	mr r3, r30
/* 8035550C 0035116C  4B E7 16 59 */	bl strlen
/* 80355510 00351170  54 60 07 BE */	clrlwi r0, r3, 0x1e
/* 80355514 00351174  20 A0 00 04 */	subfic r5, r0, 4
/* 80355518 00351178  2C 05 00 04 */	cmpwi r5, 4
/* 8035551C 0035117C  41 82 00 98 */	beq lbl_803555B4
/* 80355520 00351180  2C 05 00 00 */	cmpwi r5, 0
/* 80355524 00351184  38 01 00 20 */	addi r0, r1, 0x20
/* 80355528 00351188  38 80 00 00 */	li r4, 0
/* 8035552C 0035118C  7C 60 EA 14 */	add r3, r0, r29
/* 80355530 00351190  40 81 00 84 */	ble lbl_803555B4
/* 80355534 00351194  54 A0 E8 FF */	rlwinm. r0, r5, 0x1d, 3, 0x1f
/* 80355538 00351198  7C 09 03 A6 */	mtctr r0
/* 8035553C 0035119C  41 82 00 38 */	beq lbl_80355574
lbl_80355540:
/* 80355540 003511A0  98 83 00 00 */	stb r4, 0(r3)
/* 80355544 003511A4  3B BD 00 08 */	addi r29, r29, 8
/* 80355548 003511A8  98 83 00 01 */	stb r4, 1(r3)
/* 8035554C 003511AC  98 83 00 02 */	stb r4, 2(r3)
/* 80355550 003511B0  98 83 00 03 */	stb r4, 3(r3)
/* 80355554 003511B4  98 83 00 04 */	stb r4, 4(r3)
/* 80355558 003511B8  98 83 00 05 */	stb r4, 5(r3)
/* 8035555C 003511BC  98 83 00 06 */	stb r4, 6(r3)
/* 80355560 003511C0  98 83 00 07 */	stb r4, 7(r3)
/* 80355564 003511C4  38 63 00 08 */	addi r3, r3, 8
/* 80355568 003511C8  42 00 FF D8 */	bdnz lbl_80355540
/* 8035556C 003511CC  70 A5 00 07 */	andi. r5, r5, 7
/* 80355570 003511D0  41 82 00 44 */	beq lbl_803555B4
lbl_80355574:
/* 80355574 003511D4  7C A9 03 A6 */	mtctr r5
lbl_80355578:
/* 80355578 003511D8  98 83 00 00 */	stb r4, 0(r3)
/* 8035557C 003511DC  3B BD 00 01 */	addi r29, r29, 1
/* 80355580 003511E0  38 63 00 01 */	addi r3, r3, 1
/* 80355584 003511E4  42 00 FF F4 */	bdnz lbl_80355578
/* 80355588 003511E8  48 00 00 2C */	b lbl_803555B4
lbl_8035558C:
/* 8035558C 003511EC  2C 05 00 00 */	cmpwi r5, 0
/* 80355590 003511F0  38 61 00 20 */	addi r3, r1, 0x20
/* 80355594 003511F4  38 9F 01 BC */	addi r4, r31, 0x1bc
/* 80355598 003511F8  38 BF 01 90 */	addi r5, r31, 0x190
/* 8035559C 003511FC  41 82 00 08 */	beq lbl_803555A4
/* 803555A0 00351200  38 BF 01 68 */	addi r5, r31, 0x168
lbl_803555A4:
/* 803555A4 00351204  80 C8 00 04 */	lwz r6, 4(r8)
/* 803555A8 00351208  7F C8 F3 78 */	mr r8, r30
/* 803555AC 0035120C  4C C6 31 82 */	crclr 6
/* 803555B0 00351210  4B E7 75 4D */	bl sprintf
lbl_803555B4:
/* 803555B4 00351214  80 1C 01 94 */	lwz r0, 0x194(r28)
/* 803555B8 00351218  2C 00 00 00 */	cmpwi r0, 0
/* 803555BC 0035121C  40 82 00 54 */	bne lbl_80355610
/* 803555C0 00351220  2C 1D 00 00 */	cmpwi r29, 0
/* 803555C4 00351224  40 82 00 10 */	bne lbl_803555D4
/* 803555C8 00351228  38 61 00 20 */	addi r3, r1, 0x20
/* 803555CC 0035122C  4B E7 15 99 */	bl strlen
/* 803555D0 00351230  7C 7D 1B 78 */	mr r29, r3
lbl_803555D4:
/* 803555D4 00351234  7F 83 E3 78 */	mr r3, r28
/* 803555D8 00351238  7F A5 EB 78 */	mr r5, r29
/* 803555DC 0035123C  38 81 00 20 */	addi r4, r1, 0x20
/* 803555E0 00351240  4B FF C0 59 */	bl ghiTrySendThenBuffer
/* 803555E4 00351244  2C 03 00 00 */	cmpwi r3, 0
/* 803555E8 00351248  40 82 00 0C */	bne lbl_803555F4
/* 803555EC 0035124C  38 60 00 00 */	li r3, 0
/* 803555F0 00351250  48 00 00 E8 */	b lbl_803556D8
lbl_803555F4:
/* 803555F4 00351254  2C 03 00 02 */	cmpwi r3, 2
/* 803555F8 00351258  40 82 00 0C */	bne lbl_80355604
/* 803555FC 0035125C  38 60 00 02 */	li r3, 2
/* 80355600 00351260  48 00 00 D8 */	b lbl_803556D8
lbl_80355604:
/* 80355604 00351264  38 7C 00 54 */	addi r3, r28, 0x54
/* 80355608 00351268  4B FF BA 29 */	bl ghiResetBuffer
/* 8035560C 0035126C  48 00 00 70 */	b lbl_8035567C
lbl_80355610:
/* 80355610 00351270  2C 1D 00 00 */	cmpwi r29, 0
/* 80355614 00351274  40 82 00 10 */	bne lbl_80355624
/* 80355618 00351278  38 61 00 20 */	addi r3, r1, 0x20
/* 8035561C 0035127C  4B E7 15 49 */	bl strlen
/* 80355620 00351280  7C 7D 1B 78 */	mr r29, r3
lbl_80355624:
/* 80355624 00351284  7F A5 EB 78 */	mr r5, r29
/* 80355628 00351288  38 7C 00 54 */	addi r3, r28, 0x54
/* 8035562C 0035128C  38 81 00 20 */	addi r4, r1, 0x20
/* 80355630 00351290  4B FF B5 FD */	bl ghiEncryptDataToBuffer
/* 80355634 00351294  2C 03 00 00 */	cmpwi r3, 0
/* 80355638 00351298  40 82 00 0C */	bne lbl_80355644
/* 8035563C 0035129C  38 60 00 00 */	li r3, 0
/* 80355640 003512A0  48 00 00 98 */	b lbl_803556D8
lbl_80355644:
/* 80355644 003512A4  7F 83 E3 78 */	mr r3, r28
/* 80355648 003512A8  4B FF BA 0D */	bl ghiSendBufferedData
/* 8035564C 003512AC  2C 03 00 00 */	cmpwi r3, 0
/* 80355650 003512B0  40 82 00 0C */	bne lbl_8035565C
/* 80355654 003512B4  38 60 00 00 */	li r3, 0
/* 80355658 003512B8  48 00 00 80 */	b lbl_803556D8
lbl_8035565C:
/* 8035565C 003512BC  80 7C 00 64 */	lwz r3, 0x64(r28)
/* 80355660 003512C0  80 1C 00 60 */	lwz r0, 0x60(r28)
/* 80355664 003512C4  7C 03 00 00 */	cmpw r3, r0
/* 80355668 003512C8  40 80 00 0C */	bge lbl_80355674
/* 8035566C 003512CC  38 60 00 02 */	li r3, 2
/* 80355670 003512D0  48 00 00 68 */	b lbl_803556D8
lbl_80355674:
/* 80355674 003512D4  38 7C 00 54 */	addi r3, r28, 0x54
/* 80355678 003512D8  4B FF B9 B9 */	bl ghiResetBuffer
lbl_8035567C:
/* 8035567C 003512DC  80 7B 00 00 */	lwz r3, 0(r27)
/* 80355680 003512E0  80 03 00 00 */	lwz r0, 0(r3)
/* 80355684 003512E4  2C 00 00 00 */	cmpwi r0, 0
/* 80355688 003512E8  40 82 00 14 */	bne lbl_8035569C
/* 8035568C 003512EC  7F 63 DB 78 */	mr r3, r27
/* 80355690 003512F0  7F 84 E3 78 */	mr r4, r28
/* 80355694 003512F4  4B FF F3 D5 */	bl ghiPostStringStateDoPosting
/* 80355698 003512F8  48 00 00 40 */	b lbl_803556D8
lbl_8035569C:
/* 8035569C 003512FC  2C 00 00 03 */	cmpwi r0, 3
/* 803556A0 00351300  40 82 00 14 */	bne lbl_803556B4
/* 803556A4 00351304  7F 63 DB 78 */	mr r3, r27
/* 803556A8 00351308  7F 84 E3 78 */	mr r4, r28
/* 803556AC 0035130C  4B FF F5 69 */	bl ghiPostXmlStateDoPosting
/* 803556B0 00351310  48 00 00 28 */	b lbl_803556D8
lbl_803556B4:
/* 803556B4 00351314  2C 00 00 01 */	cmpwi r0, 1
/* 803556B8 00351318  40 82 00 14 */	bne lbl_803556CC
/* 803556BC 0035131C  7F 63 DB 78 */	mr r3, r27
/* 803556C0 00351320  7F 84 E3 78 */	mr r4, r28
/* 803556C4 00351324  4B FF F6 E5 */	bl ghiPostFileDiskStateDoPosting
/* 803556C8 00351328  48 00 00 10 */	b lbl_803556D8
lbl_803556CC:
/* 803556CC 0035132C  7F 63 DB 78 */	mr r3, r27
/* 803556D0 00351330  7F 84 E3 78 */	mr r4, r28
/* 803556D4 00351334  4B FF F8 15 */	bl ghiPostFileMemoryStateDoPosting
lbl_803556D8:
/* 803556D8 00351338  39 61 08 40 */	addi r11, r1, 0x840
/* 803556DC 0035133C  4B E7 1A 95 */	bl _restgpr_26
/* 803556E0 00351340  80 01 08 44 */	lwz r0, 0x844(r1)
/* 803556E4 00351344  7C 08 03 A6 */	mtlr r0
/* 803556E8 00351348  38 21 08 40 */	addi r1, r1, 0x840
/* 803556EC 0035134C  4E 80 00 20 */	blr

.global ghiPostDoPosting
ghiPostDoPosting:
/* 803556F0 00351350  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 803556F4 00351354  7C 08 02 A6 */	mflr r0
/* 803556F8 00351358  90 01 00 24 */	stw r0, 0x24(r1)
/* 803556FC 0035135C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80355700 00351360  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80355704 00351364  7C 7E 1B 78 */	mr r30, r3
/* 80355708 00351368  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8035570C 0035136C  93 81 00 10 */	stw r28, 0x10(r1)
/* 80355710 00351370  80 63 01 64 */	lwz r3, 0x164(r3)
/* 80355714 00351374  4B FE 07 D5 */	bl ArrayLength
/* 80355718 00351378  80 9E 00 64 */	lwz r4, 0x64(r30)
/* 8035571C 0035137C  7C 7F 1B 78 */	mr r31, r3
/* 80355720 00351380  80 1E 00 60 */	lwz r0, 0x60(r30)
/* 80355724 00351384  7C 04 00 00 */	cmpw r4, r0
/* 80355728 00351388  40 80 00 64 */	bge lbl_8035578C
/* 8035572C 0035138C  7F C3 F3 78 */	mr r3, r30
/* 80355730 00351390  4B FF B9 25 */	bl ghiSendBufferedData
/* 80355734 00351394  2C 03 00 00 */	cmpwi r3, 0
/* 80355738 00351398  40 82 00 0C */	bne lbl_80355744
/* 8035573C 0035139C  38 60 00 00 */	li r3, 0
/* 80355740 003513A0  48 00 01 DC */	b lbl_8035591C
lbl_80355744:
/* 80355744 003513A4  80 7E 00 64 */	lwz r3, 0x64(r30)
/* 80355748 003513A8  80 1E 00 60 */	lwz r0, 0x60(r30)
/* 8035574C 003513AC  7C 03 00 00 */	cmpw r3, r0
/* 80355750 003513B0  40 80 00 0C */	bge lbl_8035575C
/* 80355754 003513B4  38 60 00 02 */	li r3, 2
/* 80355758 003513B8  48 00 01 C4 */	b lbl_8035591C
lbl_8035575C:
/* 8035575C 003513BC  38 7E 00 54 */	addi r3, r30, 0x54
/* 80355760 003513C0  4B FF B8 D1 */	bl ghiResetBuffer
/* 80355764 003513C4  80 1E 01 7C */	lwz r0, 0x17c(r30)
/* 80355768 003513C8  2C 00 00 00 */	cmpwi r0, 0
/* 8035576C 003513CC  41 82 00 0C */	beq lbl_80355778
/* 80355770 003513D0  38 60 00 03 */	li r3, 3
/* 80355774 003513D4  48 00 01 A8 */	b lbl_8035591C
lbl_80355778:
/* 80355778 003513D8  80 1E 01 68 */	lwz r0, 0x168(r30)
/* 8035577C 003513DC  7C 00 F8 00 */	cmpw r0, r31
/* 80355780 003513E0  40 82 00 0C */	bne lbl_8035578C
/* 80355784 003513E4  38 60 00 01 */	li r3, 1
/* 80355788 003513E8  48 00 01 94 */	b lbl_8035591C
lbl_8035578C:
/* 8035578C 003513EC  80 1E 01 7C */	lwz r0, 0x17c(r30)
/* 80355790 003513F0  2C 00 00 00 */	cmpwi r0, 0
/* 80355794 003513F4  41 82 00 E0 */	beq lbl_80355874
/* 80355798 003513F8  80 7E 01 60 */	lwz r3, 0x160(r30)
/* 8035579C 003513FC  80 03 00 0C */	lwz r0, 0xc(r3)
/* 803557A0 00351400  2C 00 00 00 */	cmpwi r0, 0
/* 803557A4 00351404  40 82 00 10 */	bne lbl_803557B4
/* 803557A8 00351408  80 03 00 10 */	lwz r0, 0x10(r3)
/* 803557AC 0035140C  2C 00 00 00 */	cmpwi r0, 0
/* 803557B0 00351410  41 82 00 50 */	beq lbl_80355800
lbl_803557B4:
/* 803557B4 00351414  38 6D 93 D4 */	addi r3, r13, lbl_8063E694-_SDA_BASE_
/* 803557B8 00351418  4B E7 13 AD */	bl strlen
/* 803557BC 0035141C  7C 65 1B 78 */	mr r5, r3
/* 803557C0 00351420  7F C3 F3 78 */	mr r3, r30
/* 803557C4 00351424  38 8D 93 D4 */	addi r4, r13, lbl_8063E694-_SDA_BASE_
/* 803557C8 00351428  4B FF BE 71 */	bl ghiTrySendThenBuffer
/* 803557CC 0035142C  2C 03 00 00 */	cmpwi r3, 0
/* 803557D0 00351430  40 82 00 0C */	bne lbl_803557DC
/* 803557D4 00351434  38 60 00 00 */	li r3, 0
/* 803557D8 00351438  48 00 01 44 */	b lbl_8035591C
lbl_803557DC:
/* 803557DC 0035143C  2C 03 00 02 */	cmpwi r3, 2
/* 803557E0 00351440  40 82 00 0C */	bne lbl_803557EC
/* 803557E4 00351444  38 60 00 02 */	li r3, 2
/* 803557E8 00351448  48 00 01 34 */	b lbl_8035591C
lbl_803557EC:
/* 803557EC 0035144C  80 1E 01 7C */	lwz r0, 0x17c(r30)
/* 803557F0 00351450  2C 00 00 01 */	cmpwi r0, 1
/* 803557F4 00351454  40 82 00 80 */	bne lbl_80355874
/* 803557F8 00351458  38 60 00 03 */	li r3, 3
/* 803557FC 0035145C  48 00 01 20 */	b lbl_8035591C
lbl_80355800:
/* 80355800 00351460  38 00 00 00 */	li r0, 0
/* 80355804 00351464  90 1E 01 7C */	stw r0, 0x17c(r30)
/* 80355808 00351468  48 00 00 6C */	b lbl_80355874
lbl_8035580C:
/* 8035580C 0035146C  80 7E 01 64 */	lwz r3, 0x164(r30)
/* 80355810 00351470  4B FE 06 E1 */	bl ArrayNth
/* 80355814 00351474  7C 7C 1B 78 */	mr r28, r3
/* 80355818 00351478  83 BE 01 68 */	lwz r29, 0x168(r30)
/* 8035581C 0035147C  80 7E 01 64 */	lwz r3, 0x164(r30)
/* 80355820 00351480  4B FE 06 C9 */	bl ArrayLength
/* 80355824 00351484  38 63 FF FF */	addi r3, r3, -1
/* 80355828 00351488  7F A0 00 34 */	cntlzw r0, r29
/* 8035582C 0035148C  7C 9D 18 50 */	subf r4, r29, r3
/* 80355830 00351490  7C 85 00 34 */	cntlzw r5, r4
/* 80355834 00351494  7F 83 E3 78 */	mr r3, r28
/* 80355838 00351498  54 A6 D9 7E */	srwi r6, r5, 5
/* 8035583C 0035149C  7F C4 F3 78 */	mr r4, r30
/* 80355840 003514A0  54 05 D9 7E */	srwi r5, r0, 5
/* 80355844 003514A4  4B FF F8 9D */	bl ghiPostStateDoPosting
/* 80355848 003514A8  2C 03 00 00 */	cmpwi r3, 0
/* 8035584C 003514AC  40 82 00 0C */	bne lbl_80355858
/* 80355850 003514B0  38 60 00 00 */	li r3, 0
/* 80355854 003514B4  48 00 00 C8 */	b lbl_8035591C
lbl_80355858:
/* 80355858 003514B8  2C 03 00 02 */	cmpwi r3, 2
/* 8035585C 003514BC  40 82 00 0C */	bne lbl_80355868
/* 80355860 003514C0  38 60 00 02 */	li r3, 2
/* 80355864 003514C4  48 00 00 B8 */	b lbl_8035591C
lbl_80355868:
/* 80355868 003514C8  80 7E 01 68 */	lwz r3, 0x168(r30)
/* 8035586C 003514CC  38 03 00 01 */	addi r0, r3, 1
/* 80355870 003514D0  90 1E 01 68 */	stw r0, 0x168(r30)
lbl_80355874:
/* 80355874 003514D4  80 9E 01 68 */	lwz r4, 0x168(r30)
/* 80355878 003514D8  7C 04 F8 00 */	cmpw r4, r31
/* 8035587C 003514DC  41 80 FF 90 */	blt lbl_8035580C
/* 80355880 003514E0  80 1E 01 94 */	lwz r0, 0x194(r30)
/* 80355884 003514E4  2C 00 00 00 */	cmpwi r0, 0
/* 80355888 003514E8  41 82 00 34 */	beq lbl_803558BC
/* 8035588C 003514EC  80 BE 00 84 */	lwz r5, 0x84(r30)
/* 80355890 003514F0  2C 05 00 00 */	cmpwi r5, 0
/* 80355894 003514F4  40 81 00 28 */	ble lbl_803558BC
/* 80355898 003514F8  80 9E 00 7C */	lwz r4, 0x7c(r30)
/* 8035589C 003514FC  38 7E 00 54 */	addi r3, r30, 0x54
/* 803558A0 00351500  4B FF B3 8D */	bl ghiEncryptDataToBuffer
/* 803558A4 00351504  2C 03 00 00 */	cmpwi r3, 0
/* 803558A8 00351508  40 82 00 0C */	bne lbl_803558B4
/* 803558AC 0035150C  38 60 00 00 */	li r3, 0
/* 803558B0 00351510  48 00 00 6C */	b lbl_8035591C
lbl_803558B4:
/* 803558B4 00351514  38 7E 00 78 */	addi r3, r30, 0x78
/* 803558B8 00351518  4B FF B7 79 */	bl ghiResetBuffer
lbl_803558BC:
/* 803558BC 0035151C  80 7E 01 60 */	lwz r3, 0x160(r30)
/* 803558C0 00351520  80 03 00 0C */	lwz r0, 0xc(r3)
/* 803558C4 00351524  2C 00 00 00 */	cmpwi r0, 0
/* 803558C8 00351528  41 82 00 3C */	beq lbl_80355904
/* 803558CC 0035152C  80 03 00 14 */	lwz r0, 0x14(r3)
/* 803558D0 00351530  2C 00 00 00 */	cmpwi r0, 0
/* 803558D4 00351534  40 82 00 30 */	bne lbl_80355904
/* 803558D8 00351538  3F E0 80 45 */	lis r31, lbl_8044C208@ha
/* 803558DC 0035153C  38 7F C2 08 */	addi r3, r31, lbl_8044C208@l
/* 803558E0 00351540  4B E7 12 85 */	bl strlen
/* 803558E4 00351544  7C 65 1B 78 */	mr r5, r3
/* 803558E8 00351548  7F C3 F3 78 */	mr r3, r30
/* 803558EC 0035154C  38 9F C2 08 */	addi r4, r31, -15864
/* 803558F0 00351550  4B FF BD 49 */	bl ghiTrySendThenBuffer
/* 803558F4 00351554  2C 03 00 00 */	cmpwi r3, 0
/* 803558F8 00351558  40 82 00 0C */	bne lbl_80355904
/* 803558FC 0035155C  38 60 00 00 */	li r3, 0
/* 80355900 00351560  48 00 00 1C */	b lbl_8035591C
lbl_80355904:
/* 80355904 00351564  80 9E 00 64 */	lwz r4, 0x64(r30)
/* 80355908 00351568  38 60 00 01 */	li r3, 1
/* 8035590C 0035156C  80 1E 00 60 */	lwz r0, 0x60(r30)
/* 80355910 00351570  7C 04 00 00 */	cmpw r4, r0
/* 80355914 00351574  40 80 00 08 */	bge lbl_8035591C
/* 80355918 00351578  38 60 00 02 */	li r3, 2
lbl_8035591C:
/* 8035591C 0035157C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80355920 00351580  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80355924 00351584  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80355928 00351588  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8035592C 0035158C  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80355930 00351590  7C 08 03 A6 */	mtlr r0
/* 80355934 00351594  38 21 00 20 */	addi r1, r1, 0x20
/* 80355938 00351598  4E 80 00 20 */	blr