summaryrefslogtreecommitdiff
path: root/asm/SDK/NHTTP/d_nhttp.s
blob: 1a323c58a2592cea670c14fe554455b5350e03e0 (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
.include "macros.inc"

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

.global NHTTPStartup
NHTTPStartup:
/* 802FEE28 002FAA88  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802FEE2C 002FAA8C  7C 08 02 A6 */	mflr r0
/* 802FEE30 002FAA90  90 01 00 24 */	stw r0, 0x24(r1)
/* 802FEE34 002FAA94  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 802FEE38 002FAA98  7C BF 2B 78 */	mr r31, r5
/* 802FEE3C 002FAA9C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 802FEE40 002FAAA0  7C 9E 23 78 */	mr r30, r4
/* 802FEE44 002FAAA4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 802FEE48 002FAAA8  7C 7D 1B 78 */	mr r29, r3
/* 802FEE4C 002FAAAC  48 00 10 1D */	bl NHTTPi_GetSystemInfoP
/* 802FEE50 002FAAB0  7F A4 EB 78 */	mr r4, r29
/* 802FEE54 002FAAB4  7F C5 F3 78 */	mr r5, r30
/* 802FEE58 002FAAB8  7F E6 FB 78 */	mr r6, r31
/* 802FEE5C 002FAABC  4B FF 8D BD */	bl NHTTPi_Startup
/* 802FEE60 002FAAC0  7C 60 00 34 */	cntlzw r0, r3
/* 802FEE64 002FAAC4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 802FEE68 002FAAC8  54 00 D9 7E */	srwi r0, r0, 5
/* 802FEE6C 002FAACC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 802FEE70 002FAAD0  7C 60 00 D0 */	neg r3, r0
/* 802FEE74 002FAAD4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 802FEE78 002FAAD8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802FEE7C 002FAADC  7C 08 03 A6 */	mtlr r0
/* 802FEE80 002FAAE0  38 21 00 20 */	addi r1, r1, 0x20
/* 802FEE84 002FAAE4  4E 80 00 20 */	blr

.global NHTTPCleanupAsync
NHTTPCleanupAsync:
/* 802FEE88 002FAAE8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802FEE8C 002FAAEC  7C 08 02 A6 */	mflr r0
/* 802FEE90 002FAAF0  90 01 00 14 */	stw r0, 0x14(r1)
/* 802FEE94 002FAAF4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802FEE98 002FAAF8  7C 7F 1B 78 */	mr r31, r3
/* 802FEE9C 002FAAFC  48 00 0F CD */	bl NHTTPi_GetSystemInfoP
/* 802FEEA0 002FAB00  7F E4 FB 78 */	mr r4, r31
/* 802FEEA4 002FAB04  4B FF 8F 01 */	bl NHTTPi_CleanupAsync
/* 802FEEA8 002FAB08  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802FEEAC 002FAB0C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802FEEB0 002FAB10  7C 08 03 A6 */	mtlr r0
/* 802FEEB4 002FAB14  38 21 00 10 */	addi r1, r1, 0x10
/* 802FEEB8 002FAB18  4E 80 00 20 */	blr

.global NHTTPSSLGetError
NHTTPSSLGetError:
/* 802FEEBC 002FAB1C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802FEEC0 002FAB20  7C 08 02 A6 */	mflr r0
/* 802FEEC4 002FAB24  90 01 00 14 */	stw r0, 0x14(r1)
/* 802FEEC8 002FAB28  48 00 0F A1 */	bl NHTTPi_GetSystemInfoP
/* 802FEECC 002FAB2C  4B FF 8D 45 */	bl NHTTPi_GetSSLError
/* 802FEED0 002FAB30  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802FEED4 002FAB34  7C 08 03 A6 */	mtlr r0
/* 802FEED8 002FAB38  38 21 00 10 */	addi r1, r1, 0x10
/* 802FEEDC 002FAB3C  4E 80 00 20 */	blr

NHTTPi_TemplateConnectionCallback:
/* 802FEEE0 002FAB40  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802FEEE4 002FAB44  7C 08 02 A6 */	mflr r0
/* 802FEEE8 002FAB48  90 01 00 24 */	stw r0, 0x24(r1)
/* 802FEEEC 002FAB4C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 802FEEF0 002FAB50  7C 9F 23 78 */	mr r31, r4
/* 802FEEF4 002FAB54  93 C1 00 18 */	stw r30, 0x18(r1)
/* 802FEEF8 002FAB58  93 A1 00 14 */	stw r29, 0x14(r1)
/* 802FEEFC 002FAB5C  7C BD 2B 78 */	mr r29, r5
/* 802FEF00 002FAB60  93 81 00 10 */	stw r28, 0x10(r1)
/* 802FEF04 002FAB64  7C 7C 1B 78 */	mr r28, r3
/* 802FEF08 002FAB68  48 00 0F 61 */	bl NHTTPi_GetSystemInfoP
/* 802FEF0C 002FAB6C  48 00 0F E1 */	bl NHTTPi_GetMutexInfoP
/* 802FEF10 002FAB70  7C 7E 1B 78 */	mr r30, r3
/* 802FEF14 002FAB74  7F 84 E3 78 */	mr r4, r28
/* 802FEF18 002FAB78  48 00 0B 31 */	bl NHTTPi_GetConnection
/* 802FEF1C 002FAB7C  2C 1F 00 03 */	cmpwi r31, 3
/* 802FEF20 002FAB80  7C 7C 1B 78 */	mr r28, r3
/* 802FEF24 002FAB84  38 00 00 00 */	li r0, 0
/* 802FEF28 002FAB88  41 82 01 78 */	beq lbl_802FF0A0
/* 802FEF2C 002FAB8C  40 80 00 14 */	bge lbl_802FEF40
/* 802FEF30 002FAB90  2C 1F 00 01 */	cmpwi r31, 1
/* 802FEF34 002FAB94  41 82 00 18 */	beq lbl_802FEF4C
/* 802FEF38 002FAB98  40 80 00 74 */	bge lbl_802FEFAC
/* 802FEF3C 002FAB9C  48 00 01 64 */	b lbl_802FF0A0
lbl_802FEF40:
/* 802FEF40 002FABA0  2C 1F 00 05 */	cmpwi r31, 5
/* 802FEF44 002FABA4  40 80 01 5C */	bge lbl_802FF0A0
/* 802FEF48 002FABA8  48 00 00 FC */	b lbl_802FF044
lbl_802FEF4C:
/* 802FEF4C 002FABAC  2C 03 00 00 */	cmpwi r3, 0
/* 802FEF50 002FABB0  41 82 00 50 */	beq lbl_802FEFA0
/* 802FEF54 002FABB4  7F C3 F3 78 */	mr r3, r30
/* 802FEF58 002FABB8  7F 84 E3 78 */	mr r4, r28
/* 802FEF5C 002FABBC  48 00 0A 6D */	bl NHTTPi_Connection2Request
/* 802FEF60 002FABC0  2C 03 00 00 */	cmpwi r3, 0
/* 802FEF64 002FABC4  41 82 00 3C */	beq lbl_802FEFA0
/* 802FEF68 002FABC8  83 E3 02 44 */	lwz r31, 0x244(r3)
/* 802FEF6C 002FABCC  2C 1F 00 00 */	cmpwi r31, 0
/* 802FEF70 002FABD0  41 82 00 30 */	beq lbl_802FEFA0
/* 802FEF74 002FABD4  7F 83 E3 78 */	mr r3, r28
/* 802FEF78 002FABD8  4B FF FD F1 */	bl NHTTPGetUserParam
/* 802FEF7C 002FABDC  7F EC FB 78 */	mr r12, r31
/* 802FEF80 002FABE0  7C 67 1B 78 */	mr r7, r3
/* 802FEF84 002FABE4  38 9D 00 04 */	addi r4, r29, 4
/* 802FEF88 002FABE8  38 BD 00 08 */	addi r5, r29, 8
/* 802FEF8C 002FABEC  80 7D 00 00 */	lwz r3, 0(r29)
/* 802FEF90 002FABF0  80 DD 00 0C */	lwz r6, 0xc(r29)
/* 802FEF94 002FABF4  7D 89 03 A6 */	mtctr r12
/* 802FEF98 002FABF8  4E 80 04 21 */	bctrl
/* 802FEF9C 002FABFC  48 00 00 08 */	b lbl_802FEFA4
lbl_802FEFA0:
/* 802FEFA0 002FAC00  38 60 FF FF */	li r3, -1
lbl_802FEFA4:
/* 802FEFA4 002FAC04  7C 60 1B 78 */	mr r0, r3
/* 802FEFA8 002FAC08  48 00 00 F8 */	b lbl_802FF0A0
lbl_802FEFAC:
/* 802FEFAC 002FAC0C  2C 03 00 00 */	cmpwi r3, 0
/* 802FEFB0 002FAC10  41 82 00 8C */	beq lbl_802FF03C
/* 802FEFB4 002FAC14  7F C3 F3 78 */	mr r3, r30
/* 802FEFB8 002FAC18  7F 84 E3 78 */	mr r4, r28
/* 802FEFBC 002FAC1C  48 00 0A 45 */	bl NHTTPi_Connection2Response
/* 802FEFC0 002FAC20  2C 03 00 00 */	cmpwi r3, 0
/* 802FEFC4 002FAC24  41 82 00 78 */	beq lbl_802FF03C
/* 802FEFC8 002FAC28  83 C3 00 2C */	lwz r30, 0x2c(r3)
/* 802FEFCC 002FAC2C  2C 1E 00 00 */	cmpwi r30, 0
/* 802FEFD0 002FAC30  41 82 00 6C */	beq lbl_802FF03C
/* 802FEFD4 002FAC34  80 1D 00 00 */	lwz r0, 0(r29)
/* 802FEFD8 002FAC38  7F 83 E3 78 */	mr r3, r28
/* 802FEFDC 002FAC3C  90 01 00 08 */	stw r0, 8(r1)
/* 802FEFE0 002FAC40  48 00 0F 25 */	bl NHTTPi_GetVirtualContentLength
/* 802FEFE4 002FAC44  7C 7F 1B 78 */	mr r31, r3
/* 802FEFE8 002FAC48  7F 83 E3 78 */	mr r3, r28
/* 802FEFEC 002FAC4C  4B FF FD 7D */	bl NHTTPGetUserParam
/* 802FEFF0 002FAC50  3C C0 80 2F */	lis r6, NHTTPi_alloc@ha
/* 802FEFF4 002FAC54  3C E0 80 2F */	lis r7, NHTTPi_free@ha
/* 802FEFF8 002FAC58  7C 68 1B 78 */	mr r8, r3
/* 802FEFFC 002FAC5C  7F CC F3 78 */	mr r12, r30
/* 802FF000 002FAC60  7F E5 FB 78 */	mr r5, r31
/* 802FF004 002FAC64  38 61 00 08 */	addi r3, r1, 8
/* 802FF008 002FAC68  38 9D 00 04 */	addi r4, r29, 4
/* 802FF00C 002FAC6C  38 C6 7B 60 */	addi r6, r6, NHTTPi_alloc@l
/* 802FF010 002FAC70  38 E7 7B BC */	addi r7, r7, NHTTPi_free@l
/* 802FF014 002FAC74  7D 89 03 A6 */	mtctr r12
/* 802FF018 002FAC78  4E 80 04 21 */	bctrl
/* 802FF01C 002FAC7C  2C 03 00 00 */	cmpwi r3, 0
/* 802FF020 002FAC80  90 7D 00 00 */	stw r3, 0(r29)
/* 802FF024 002FAC84  41 82 00 18 */	beq lbl_802FF03C
/* 802FF028 002FAC88  80 01 00 08 */	lwz r0, 8(r1)
/* 802FF02C 002FAC8C  2C 00 00 00 */	cmpwi r0, 0
/* 802FF030 002FAC90  41 82 00 0C */	beq lbl_802FF03C
/* 802FF034 002FAC94  38 00 00 00 */	li r0, 0
/* 802FF038 002FAC98  90 1D 00 08 */	stw r0, 8(r29)
lbl_802FF03C:
/* 802FF03C 002FAC9C  38 00 00 00 */	li r0, 0
/* 802FF040 002FACA0  48 00 00 60 */	b lbl_802FF0A0
lbl_802FF044:
/* 802FF044 002FACA4  2C 03 00 00 */	cmpwi r3, 0
/* 802FF048 002FACA8  41 82 00 54 */	beq lbl_802FF09C
/* 802FF04C 002FACAC  83 A3 00 4C */	lwz r29, 0x4c(r3)
/* 802FF050 002FACB0  2C 1D 00 00 */	cmpwi r29, 0
/* 802FF054 002FACB4  41 82 00 48 */	beq lbl_802FF09C
/* 802FF058 002FACB8  7F C3 F3 78 */	mr r3, r30
/* 802FF05C 002FACBC  7F 84 E3 78 */	mr r4, r28
/* 802FF060 002FACC0  48 00 09 A1 */	bl NHTTPi_Connection2Response
/* 802FF064 002FACC4  2C 03 00 00 */	cmpwi r3, 0
/* 802FF068 002FACC8  7C 7F 1B 78 */	mr r31, r3
/* 802FF06C 002FACCC  41 82 00 30 */	beq lbl_802FF09C
/* 802FF070 002FACD0  7F 83 E3 78 */	mr r3, r28
/* 802FF074 002FACD4  4B FF FD 69 */	bl NHTTPGetConnectionError
/* 802FF078 002FACD8  7C 7E 1B 78 */	mr r30, r3
/* 802FF07C 002FACDC  7F 83 E3 78 */	mr r3, r28
/* 802FF080 002FACE0  4B FF FC E9 */	bl NHTTPGetUserParam
/* 802FF084 002FACE4  7F AC EB 78 */	mr r12, r29
/* 802FF088 002FACE8  7C 65 1B 78 */	mr r5, r3
/* 802FF08C 002FACEC  7F C3 F3 78 */	mr r3, r30
/* 802FF090 002FACF0  7F E4 FB 78 */	mr r4, r31
/* 802FF094 002FACF4  7D 89 03 A6 */	mtctr r12
/* 802FF098 002FACF8  4E 80 04 21 */	bctrl
lbl_802FF09C:
/* 802FF09C 002FACFC  38 00 00 00 */	li r0, 0
lbl_802FF0A0:
/* 802FF0A0 002FAD00  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 802FF0A4 002FAD04  7C 03 03 78 */	mr r3, r0
/* 802FF0A8 002FAD08  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 802FF0AC 002FAD0C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 802FF0B0 002FAD10  83 81 00 10 */	lwz r28, 0x10(r1)
/* 802FF0B4 002FAD14  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802FF0B8 002FAD18  7C 08 03 A6 */	mtlr r0
/* 802FF0BC 002FAD1C  38 21 00 20 */	addi r1, r1, 0x20
/* 802FF0C0 002FAD20  4E 80 00 20 */	blr

.global NHTTPCreateRequest
NHTTPCreateRequest:
/* 802FF0C4 002FAD24  39 20 00 00 */	li r9, 0
/* 802FF0C8 002FAD28  39 40 00 00 */	li r10, 0
/* 802FF0CC 002FAD2C  48 00 00 04 */	b NHTTPCreateRequestEx
NHTTPCreateRequestEx:
/* 802FF0D0 002FAD30  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802FF0D4 002FAD34  7C 08 02 A6 */	mflr r0
/* 802FF0D8 002FAD38  90 01 00 24 */	stw r0, 0x24(r1)
/* 802FF0DC 002FAD3C  39 61 00 20 */	addi r11, r1, 0x20
/* 802FF0E0 002FAD40  4B EC 80 45 */	bl _savegpr_26
/* 802FF0E4 002FAD44  3D 60 80 30 */	lis r11, NHTTPi_TemplateConnectionCallback@ha
/* 802FF0E8 002FAD48  7C FA 3B 78 */	mr r26, r7
/* 802FF0EC 002FAD4C  7D 3B 4B 78 */	mr r27, r9
/* 802FF0F0 002FAD50  7D 5C 53 78 */	mr r28, r10
/* 802FF0F4 002FAD54  38 EB EE E0 */	addi r7, r11, NHTTPi_TemplateConnectionCallback@l
/* 802FF0F8 002FAD58  4B FF FA 21 */	bl NHTTPCreateConnection
/* 802FF0FC 002FAD5C  2C 03 00 00 */	cmpwi r3, 0
/* 802FF100 002FAD60  7C 7F 1B 78 */	mr r31, r3
/* 802FF104 002FAD64  38 80 00 00 */	li r4, 0
/* 802FF108 002FAD68  41 82 00 7C */	beq lbl_802FF184
/* 802FF10C 002FAD6C  48 00 0D 5D */	bl NHTTPi_GetSystemInfoP
/* 802FF110 002FAD70  7C 7E 1B 78 */	mr r30, r3
/* 802FF114 002FAD74  48 00 0D D9 */	bl NHTTPi_GetMutexInfoP
/* 802FF118 002FAD78  7C 7D 1B 78 */	mr r29, r3
/* 802FF11C 002FAD7C  7F E4 FB 78 */	mr r4, r31
/* 802FF120 002FAD80  48 00 09 29 */	bl NHTTPi_GetConnection
/* 802FF124 002FAD84  7C 7F 1B 78 */	mr r31, r3
/* 802FF128 002FAD88  7F A3 EB 78 */	mr r3, r29
/* 802FF12C 002FAD8C  7F E4 FB 78 */	mr r4, r31
/* 802FF130 002FAD90  48 00 08 99 */	bl NHTTPi_Connection2Request
/* 802FF134 002FAD94  2C 03 00 00 */	cmpwi r3, 0
/* 802FF138 002FAD98  7C 64 1B 78 */	mr r4, r3
/* 802FF13C 002FAD9C  41 82 00 48 */	beq lbl_802FF184
/* 802FF140 002FADA0  80 03 00 2C */	lwz r0, 0x2c(r3)
/* 802FF144 002FADA4  2C 00 00 00 */	cmpwi r0, 0
/* 802FF148 002FADA8  41 82 00 1C */	beq lbl_802FF164
/* 802FF14C 002FADAC  93 5F 00 4C */	stw r26, 0x4c(r31)
/* 802FF150 002FADB0  80 83 00 2C */	lwz r4, 0x2c(r3)
/* 802FF154 002FADB4  93 64 00 2C */	stw r27, 0x2c(r4)
/* 802FF158 002FADB8  80 83 00 2C */	lwz r4, 0x2c(r3)
/* 802FF15C 002FADBC  93 84 00 30 */	stw r28, 0x30(r4)
/* 802FF160 002FADC0  48 00 00 28 */	b lbl_802FF188
lbl_802FF164:
/* 802FF164 002FADC4  7F C3 F3 78 */	mr r3, r30
/* 802FF168 002FADC8  4B FF A1 11 */	bl NHTTP_DestroyRequest
/* 802FF16C 002FADCC  7F A3 EB 78 */	mr r3, r29
/* 802FF170 002FADD0  7F E4 FB 78 */	mr r4, r31
/* 802FF174 002FADD4  48 00 08 25 */	bl NHTTPi_OmitConnectionList
/* 802FF178 002FADD8  7F E3 FB 78 */	mr r3, r31
/* 802FF17C 002FADDC  4B FF 8A 41 */	bl NHTTPi_free
/* 802FF180 002FADE0  38 80 00 00 */	li r4, 0
lbl_802FF184:
/* 802FF184 002FADE4  7C 83 23 78 */	mr r3, r4
lbl_802FF188:
/* 802FF188 002FADE8  39 61 00 20 */	addi r11, r1, 0x20
/* 802FF18C 002FADEC  4B EC 7F E5 */	bl _restgpr_26
/* 802FF190 002FADF0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802FF194 002FADF4  7C 08 03 A6 */	mtlr r0
/* 802FF198 002FADF8  38 21 00 20 */	addi r1, r1, 0x20
/* 802FF19C 002FADFC  4E 80 00 20 */	blr

.global NHTTPAddHeaderField
NHTTPAddHeaderField:
/* 802FF1A0 002FAE00  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802FF1A4 002FAE04  7C 08 02 A6 */	mflr r0
/* 802FF1A8 002FAE08  90 01 00 24 */	stw r0, 0x24(r1)
/* 802FF1AC 002FAE0C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 802FF1B0 002FAE10  93 C1 00 18 */	stw r30, 0x18(r1)
/* 802FF1B4 002FAE14  7C 7E 1B 78 */	mr r30, r3
/* 802FF1B8 002FAE18  93 A1 00 14 */	stw r29, 0x14(r1)
/* 802FF1BC 002FAE1C  7C BD 2B 78 */	mr r29, r5
/* 802FF1C0 002FAE20  93 81 00 10 */	stw r28, 0x10(r1)
/* 802FF1C4 002FAE24  7C 9C 23 78 */	mr r28, r4
/* 802FF1C8 002FAE28  48 00 0C A1 */	bl NHTTPi_GetSystemInfoP
/* 802FF1CC 002FAE2C  7C 7F 1B 78 */	mr r31, r3
/* 802FF1D0 002FAE30  48 00 0D 1D */	bl NHTTPi_GetMutexInfoP
/* 802FF1D4 002FAE34  7F C4 F3 78 */	mr r4, r30
/* 802FF1D8 002FAE38  48 00 08 79 */	bl NHTTPi_GetRequest
/* 802FF1DC 002FAE3C  2C 03 00 00 */	cmpwi r3, 0
/* 802FF1E0 002FAE40  7C 7E 1B 78 */	mr r30, r3
/* 802FF1E4 002FAE44  41 82 00 30 */	beq lbl_802FF214
/* 802FF1E8 002FAE48  7F E3 FB 78 */	mr r3, r31
/* 802FF1EC 002FAE4C  48 00 0C E5 */	bl NHTTPi_GetBgnEndInfoP
/* 802FF1F0 002FAE50  7C 64 1B 78 */	mr r4, r3
/* 802FF1F4 002FAE54  7F C3 F3 78 */	mr r3, r30
/* 802FF1F8 002FAE58  7F 85 E3 78 */	mr r5, r28
/* 802FF1FC 002FAE5C  7F A6 EB 78 */	mr r6, r29
/* 802FF200 002FAE60  4B FF 8E 09 */	bl NHTTP_AddHeaderField
/* 802FF204 002FAE64  7C 60 00 34 */	cntlzw r0, r3
/* 802FF208 002FAE68  54 00 D9 7E */	srwi r0, r0, 5
/* 802FF20C 002FAE6C  7C 60 00 D0 */	neg r3, r0
/* 802FF210 002FAE70  48 00 00 08 */	b lbl_802FF218
lbl_802FF214:
/* 802FF214 002FAE74  38 60 FF FF */	li r3, -1
lbl_802FF218:
/* 802FF218 002FAE78  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802FF21C 002FAE7C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 802FF220 002FAE80  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 802FF224 002FAE84  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 802FF228 002FAE88  83 81 00 10 */	lwz r28, 0x10(r1)
/* 802FF22C 002FAE8C  7C 08 03 A6 */	mtlr r0
/* 802FF230 002FAE90  38 21 00 20 */	addi r1, r1, 0x20
/* 802FF234 002FAE94  4E 80 00 20 */	blr

.global NHTTPAddPostDataAscii
NHTTPAddPostDataAscii:
/* 802FF238 002FAE98  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802FF23C 002FAE9C  7C 08 02 A6 */	mflr r0
/* 802FF240 002FAEA0  90 01 00 24 */	stw r0, 0x24(r1)
/* 802FF244 002FAEA4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 802FF248 002FAEA8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 802FF24C 002FAEAC  7C 7E 1B 78 */	mr r30, r3
/* 802FF250 002FAEB0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 802FF254 002FAEB4  7C BD 2B 78 */	mr r29, r5
/* 802FF258 002FAEB8  93 81 00 10 */	stw r28, 0x10(r1)
/* 802FF25C 002FAEBC  7C 9C 23 78 */	mr r28, r4
/* 802FF260 002FAEC0  48 00 0C 09 */	bl NHTTPi_GetSystemInfoP
/* 802FF264 002FAEC4  7C 7F 1B 78 */	mr r31, r3
/* 802FF268 002FAEC8  48 00 0C 85 */	bl NHTTPi_GetMutexInfoP
/* 802FF26C 002FAECC  7F C4 F3 78 */	mr r4, r30
/* 802FF270 002FAED0  48 00 07 E1 */	bl NHTTPi_GetRequest
/* 802FF274 002FAED4  2C 03 00 00 */	cmpwi r3, 0
/* 802FF278 002FAED8  7C 7E 1B 78 */	mr r30, r3
/* 802FF27C 002FAEDC  41 82 00 30 */	beq lbl_802FF2AC
/* 802FF280 002FAEE0  7F E3 FB 78 */	mr r3, r31
/* 802FF284 002FAEE4  48 00 0C 4D */	bl NHTTPi_GetBgnEndInfoP
/* 802FF288 002FAEE8  7C 64 1B 78 */	mr r4, r3
/* 802FF28C 002FAEEC  7F C3 F3 78 */	mr r3, r30
/* 802FF290 002FAEF0  7F 85 E3 78 */	mr r5, r28
/* 802FF294 002FAEF4  7F A6 EB 78 */	mr r6, r29
/* 802FF298 002FAEF8  4B FF 8D 91 */	bl NHTTP_AddPostDataAscii
/* 802FF29C 002FAEFC  7C 60 00 34 */	cntlzw r0, r3
/* 802FF2A0 002FAF00  54 00 D9 7E */	srwi r0, r0, 5
/* 802FF2A4 002FAF04  7C 60 00 D0 */	neg r3, r0
/* 802FF2A8 002FAF08  48 00 00 08 */	b lbl_802FF2B0
lbl_802FF2AC:
/* 802FF2AC 002FAF0C  38 60 FF FF */	li r3, -1
lbl_802FF2B0:
/* 802FF2B0 002FAF10  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802FF2B4 002FAF14  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 802FF2B8 002FAF18  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 802FF2BC 002FAF1C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 802FF2C0 002FAF20  83 81 00 10 */	lwz r28, 0x10(r1)
/* 802FF2C4 002FAF24  7C 08 03 A6 */	mtlr r0
/* 802FF2C8 002FAF28  38 21 00 20 */	addi r1, r1, 0x20
/* 802FF2CC 002FAF2C  4E 80 00 20 */	blr

.global NHTTPSendRequestAsync
NHTTPSendRequestAsync:
/* 802FF2D0 002FAF30  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802FF2D4 002FAF34  7C 08 02 A6 */	mflr r0
/* 802FF2D8 002FAF38  90 01 00 14 */	stw r0, 0x14(r1)
/* 802FF2DC 002FAF3C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802FF2E0 002FAF40  7C 7F 1B 78 */	mr r31, r3
/* 802FF2E4 002FAF44  48 00 0B 85 */	bl NHTTPi_GetSystemInfoP
/* 802FF2E8 002FAF48  48 00 0C 05 */	bl NHTTPi_GetMutexInfoP
/* 802FF2EC 002FAF4C  7F E4 FB 78 */	mr r4, r31
/* 802FF2F0 002FAF50  48 00 07 49 */	bl NHTTPi_Request2Connection
/* 802FF2F4 002FAF54  2C 03 00 00 */	cmpwi r3, 0
/* 802FF2F8 002FAF58  7C 7F 1B 78 */	mr r31, r3
/* 802FF2FC 002FAF5C  41 82 00 18 */	beq lbl_802FF314
/* 802FF300 002FAF60  4B FF F9 41 */	bl NHTTPStartConnection
/* 802FF304 002FAF64  2C 03 00 00 */	cmpwi r3, 0
/* 802FF308 002FAF68  40 82 00 0C */	bne lbl_802FF314
/* 802FF30C 002FAF6C  80 7F 00 34 */	lwz r3, 0x34(r31)
/* 802FF310 002FAF70  48 00 00 08 */	b lbl_802FF318
lbl_802FF314:
/* 802FF314 002FAF74  38 60 FF FF */	li r3, -1
lbl_802FF318:
/* 802FF318 002FAF78  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802FF31C 002FAF7C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802FF320 002FAF80  7C 08 03 A6 */	mtlr r0
/* 802FF324 002FAF84  38 21 00 10 */	addi r1, r1, 0x10
/* 802FF328 002FAF88  4E 80 00 20 */	blr

.global NHTTPCancelRequestAsync
NHTTPCancelRequestAsync:
/* 802FF32C 002FAF8C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802FF330 002FAF90  7C 08 02 A6 */	mflr r0
/* 802FF334 002FAF94  90 01 00 14 */	stw r0, 0x14(r1)
/* 802FF338 002FAF98  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802FF33C 002FAF9C  7C 7F 1B 78 */	mr r31, r3
/* 802FF340 002FAFA0  48 00 0B 29 */	bl NHTTPi_GetSystemInfoP
/* 802FF344 002FAFA4  7F E4 FB 78 */	mr r4, r31
/* 802FF348 002FAFA8  4B FF A1 CD */	bl NHTTP_CancelRequestAsync
/* 802FF34C 002FAFAC  7C 60 00 34 */	cntlzw r0, r3
/* 802FF350 002FAFB0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802FF354 002FAFB4  54 00 D9 7E */	srwi r0, r0, 5
/* 802FF358 002FAFB8  7C 60 00 D0 */	neg r3, r0
/* 802FF35C 002FAFBC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802FF360 002FAFC0  7C 08 03 A6 */	mtlr r0
/* 802FF364 002FAFC4  38 21 00 10 */	addi r1, r1, 0x10
/* 802FF368 002FAFC8  4E 80 00 20 */	blr

.global NHTTPDestroyResponse
NHTTPDestroyResponse:
/* 802FF36C 002FAFCC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802FF370 002FAFD0  7C 08 02 A6 */	mflr r0
/* 802FF374 002FAFD4  90 01 00 14 */	stw r0, 0x14(r1)
/* 802FF378 002FAFD8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802FF37C 002FAFDC  93 C1 00 08 */	stw r30, 8(r1)
/* 802FF380 002FAFE0  7C 7E 1B 78 */	mr r30, r3
/* 802FF384 002FAFE4  48 00 0A E5 */	bl NHTTPi_GetSystemInfoP
/* 802FF388 002FAFE8  48 00 0B 65 */	bl NHTTPi_GetMutexInfoP
/* 802FF38C 002FAFEC  7C 7F 1B 78 */	mr r31, r3
/* 802FF390 002FAFF0  7F C4 F3 78 */	mr r4, r30
/* 802FF394 002FAFF4  48 00 06 AD */	bl NHTTPi_Response2Connection
/* 802FF398 002FAFF8  2C 03 00 00 */	cmpwi r3, 0
/* 802FF39C 002FAFFC  7C 7E 1B 78 */	mr r30, r3
/* 802FF3A0 002FB000  41 82 00 38 */	beq lbl_802FF3D8
/* 802FF3A4 002FB004  7F E3 FB 78 */	mr r3, r31
/* 802FF3A8 002FB008  7F C4 F3 78 */	mr r4, r30
/* 802FF3AC 002FB00C  48 00 06 55 */	bl NHTTPi_Connection2Response
/* 802FF3B0 002FB010  2C 03 00 00 */	cmpwi r3, 0
/* 802FF3B4 002FB014  41 82 00 10 */	beq lbl_802FF3C4
/* 802FF3B8 002FB018  80 9E 00 30 */	lwz r4, 0x30(r30)
/* 802FF3BC 002FB01C  7F E3 FB 78 */	mr r3, r31
/* 802FF3C0 002FB020  4B FF A2 C1 */	bl NHTTP_DestroyResponse
lbl_802FF3C4:
/* 802FF3C4 002FB024  7F E3 FB 78 */	mr r3, r31
/* 802FF3C8 002FB028  7F C4 F3 78 */	mr r4, r30
/* 802FF3CC 002FB02C  48 00 05 CD */	bl NHTTPi_OmitConnectionList
/* 802FF3D0 002FB030  7F C3 F3 78 */	mr r3, r30
/* 802FF3D4 002FB034  4B FF 87 E9 */	bl NHTTPi_free
lbl_802FF3D8:
/* 802FF3D8 002FB038  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802FF3DC 002FB03C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802FF3E0 002FB040  83 C1 00 08 */	lwz r30, 8(r1)
/* 802FF3E4 002FB044  7C 08 03 A6 */	mtlr r0
/* 802FF3E8 002FB048  38 21 00 10 */	addi r1, r1, 0x10
/* 802FF3EC 002FB04C  4E 80 00 20 */	blr

.global NHTTPGetBodyAll
NHTTPGetBodyAll:
/* 802FF3F0 002FB050  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802FF3F4 002FB054  7C 08 02 A6 */	mflr r0
/* 802FF3F8 002FB058  90 01 00 24 */	stw r0, 0x24(r1)
/* 802FF3FC 002FB05C  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 802FF400 002FB060  7C 9F 23 78 */	mr r31, r4
/* 802FF404 002FB064  93 C1 00 18 */	stw r30, 0x18(r1)
/* 802FF408 002FB068  7C 7E 1B 78 */	mr r30, r3
/* 802FF40C 002FB06C  48 00 0A 5D */	bl NHTTPi_GetSystemInfoP
/* 802FF410 002FB070  48 00 0A DD */	bl NHTTPi_GetMutexInfoP
/* 802FF414 002FB074  7F C4 F3 78 */	mr r4, r30
/* 802FF418 002FB078  48 00 06 29 */	bl NHTTPi_Response2Connection
/* 802FF41C 002FB07C  2C 03 00 00 */	cmpwi r3, 0
/* 802FF420 002FB080  41 82 00 1C */	beq lbl_802FF43C
/* 802FF424 002FB084  38 00 00 00 */	li r0, 0
/* 802FF428 002FB088  7F E4 FB 78 */	mr r4, r31
/* 802FF42C 002FB08C  90 01 00 08 */	stw r0, 8(r1)
/* 802FF430 002FB090  38 A1 00 08 */	addi r5, r1, 8
/* 802FF434 002FB094  4B FF F8 99 */	bl NHTTPGetBodyBuffer
/* 802FF438 002FB098  48 00 00 08 */	b lbl_802FF440
lbl_802FF43C:
/* 802FF43C 002FB09C  38 60 FF FF */	li r3, -1
lbl_802FF440:
/* 802FF440 002FB0A0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802FF444 002FB0A4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 802FF448 002FB0A8  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 802FF44C 002FB0AC  7C 08 03 A6 */	mtlr r0
/* 802FF450 002FB0B0  38 21 00 20 */	addi r1, r1, 0x20
/* 802FF454 002FB0B4  4E 80 00 20 */	blr

.global NHTTPGetResultCode
NHTTPGetResultCode:
/* 802FF458 002FB0B8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802FF45C 002FB0BC  7C 08 02 A6 */	mflr r0
/* 802FF460 002FB0C0  90 01 00 14 */	stw r0, 0x14(r1)
/* 802FF464 002FB0C4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802FF468 002FB0C8  7C 7F 1B 78 */	mr r31, r3
/* 802FF46C 002FB0CC  48 00 09 FD */	bl NHTTPi_GetSystemInfoP
/* 802FF470 002FB0D0  48 00 0A 7D */	bl NHTTPi_GetMutexInfoP
/* 802FF474 002FB0D4  7F E4 FB 78 */	mr r4, r31
/* 802FF478 002FB0D8  48 00 06 1D */	bl NHTTPi_GetResponse
/* 802FF47C 002FB0DC  2C 03 00 00 */	cmpwi r3, 0
/* 802FF480 002FB0E0  40 82 00 0C */	bne lbl_802FF48C
/* 802FF484 002FB0E4  38 60 FF FF */	li r3, -1
/* 802FF488 002FB0E8  48 00 00 1C */	b lbl_802FF4A4
lbl_802FF48C:
/* 802FF48C 002FB0EC  80 03 00 14 */	lwz r0, 0x14(r3)
/* 802FF490 002FB0F0  2C 00 00 00 */	cmpwi r0, 0
/* 802FF494 002FB0F4  41 82 00 0C */	beq lbl_802FF4A0
/* 802FF498 002FB0F8  80 63 00 18 */	lwz r3, 0x18(r3)
/* 802FF49C 002FB0FC  48 00 00 08 */	b lbl_802FF4A4
lbl_802FF4A0:
/* 802FF4A0 002FB100  38 60 FF FF */	li r3, -1
lbl_802FF4A4:
/* 802FF4A4 002FB104  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802FF4A8 002FB108  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802FF4AC 002FB10C  7C 08 03 A6 */	mtlr r0
/* 802FF4B0 002FB110  38 21 00 10 */	addi r1, r1, 0x10
/* 802FF4B4 002FB114  4E 80 00 20 */	blr

.global NHTTPSetVerifyOption
NHTTPSetVerifyOption:
/* 802FF4B8 002FB118  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802FF4BC 002FB11C  7C 08 02 A6 */	mflr r0
/* 802FF4C0 002FB120  90 01 00 14 */	stw r0, 0x14(r1)
/* 802FF4C4 002FB124  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802FF4C8 002FB128  7C 9F 23 78 */	mr r31, r4
/* 802FF4CC 002FB12C  93 C1 00 08 */	stw r30, 8(r1)
/* 802FF4D0 002FB130  7C 7E 1B 78 */	mr r30, r3
/* 802FF4D4 002FB134  48 00 09 95 */	bl NHTTPi_GetSystemInfoP
/* 802FF4D8 002FB138  48 00 0A 15 */	bl NHTTPi_GetMutexInfoP
/* 802FF4DC 002FB13C  7F C4 F3 78 */	mr r4, r30
/* 802FF4E0 002FB140  48 00 05 71 */	bl NHTTPi_GetRequest
/* 802FF4E4 002FB144  2C 03 00 00 */	cmpwi r3, 0
/* 802FF4E8 002FB148  40 82 00 0C */	bne lbl_802FF4F4
/* 802FF4EC 002FB14C  38 60 FF FF */	li r3, -1
/* 802FF4F0 002FB150  48 00 00 0C */	b lbl_802FF4FC
lbl_802FF4F4:
/* 802FF4F4 002FB154  93 E3 00 CC */	stw r31, 0xcc(r3)
/* 802FF4F8 002FB158  38 60 00 00 */	li r3, 0
lbl_802FF4FC:
/* 802FF4FC 002FB15C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802FF500 002FB160  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802FF504 002FB164  83 C1 00 08 */	lwz r30, 8(r1)
/* 802FF508 002FB168  7C 08 03 A6 */	mtlr r0
/* 802FF50C 002FB16C  38 21 00 10 */	addi r1, r1, 0x10
/* 802FF510 002FB170  4E 80 00 20 */	blr

.global NHTTPSetProxy
NHTTPSetProxy:
/* 802FF514 002FB174  94 21 FF 90 */	stwu r1, -0x70(r1)
/* 802FF518 002FB178  7C 08 02 A6 */	mflr r0
/* 802FF51C 002FB17C  90 01 00 74 */	stw r0, 0x74(r1)
/* 802FF520 002FB180  39 61 00 70 */	addi r11, r1, 0x70
/* 802FF524 002FB184  4B EC 7C 05 */	bl _savegpr_27
/* 802FF528 002FB188  7C 7F 1B 78 */	mr r31, r3
/* 802FF52C 002FB18C  7C 9E 23 78 */	mr r30, r4
/* 802FF530 002FB190  7C BD 2B 78 */	mr r29, r5
/* 802FF534 002FB194  7C DB 33 78 */	mr r27, r6
/* 802FF538 002FB198  7C FC 3B 78 */	mr r28, r7
/* 802FF53C 002FB19C  48 00 09 2D */	bl NHTTPi_GetSystemInfoP
/* 802FF540 002FB1A0  48 00 09 AD */	bl NHTTPi_GetMutexInfoP
/* 802FF544 002FB1A4  7F E4 FB 78 */	mr r4, r31
/* 802FF548 002FB1A8  48 00 05 09 */	bl NHTTPi_GetRequest
/* 802FF54C 002FB1AC  2C 03 00 00 */	cmpwi r3, 0
/* 802FF550 002FB1B0  7C 7F 1B 78 */	mr r31, r3
/* 802FF554 002FB1B4  41 82 00 0C */	beq lbl_802FF560
/* 802FF558 002FB1B8  2C 1E 00 00 */	cmpwi r30, 0
/* 802FF55C 002FB1BC  40 82 00 0C */	bne lbl_802FF568
lbl_802FF560:
/* 802FF560 002FB1C0  38 60 FF FF */	li r3, -1
/* 802FF564 002FB1C4  48 00 00 D8 */	b lbl_802FF63C
lbl_802FF568:
/* 802FF568 002FB1C8  7F C3 F3 78 */	mr r3, r30
/* 802FF56C 002FB1CC  4B FF AB 75 */	bl NHTTPi_strlen
/* 802FF570 002FB1D0  2C 03 01 00 */	cmpwi r3, 0x100
/* 802FF574 002FB1D4  40 81 00 0C */	ble lbl_802FF580
/* 802FF578 002FB1D8  38 60 FF FF */	li r3, -1
/* 802FF57C 002FB1DC  48 00 00 C0 */	b lbl_802FF63C
lbl_802FF580:
/* 802FF580 002FB1E0  7C 65 1B 78 */	mr r5, r3
/* 802FF584 002FB1E4  7F C4 F3 78 */	mr r4, r30
/* 802FF588 002FB1E8  38 7F 00 D4 */	addi r3, r31, 0xd4
/* 802FF58C 002FB1EC  4B FF AB 51 */	bl NHTTPi_memcpy
/* 802FF590 002FB1F0  2C 1B 00 00 */	cmpwi r27, 0
/* 802FF594 002FB1F4  93 BF 01 D4 */	stw r29, 0x1d4(r31)
/* 802FF598 002FB1F8  41 82 00 98 */	beq lbl_802FF630
/* 802FF59C 002FB1FC  2C 1C 00 00 */	cmpwi r28, 0
/* 802FF5A0 002FB200  41 82 00 90 */	beq lbl_802FF630
/* 802FF5A4 002FB204  7F 63 DB 78 */	mr r3, r27
/* 802FF5A8 002FB208  4B FF AB 39 */	bl NHTTPi_strlen
/* 802FF5AC 002FB20C  7C 7E 1B 78 */	mr r30, r3
/* 802FF5B0 002FB210  7F 83 E3 78 */	mr r3, r28
/* 802FF5B4 002FB214  4B FF AB 2D */	bl NHTTPi_strlen
/* 802FF5B8 002FB218  2C 1E 00 20 */	cmpwi r30, 0x20
/* 802FF5BC 002FB21C  7C 7D 1B 78 */	mr r29, r3
/* 802FF5C0 002FB220  41 81 00 68 */	bgt lbl_802FF628
/* 802FF5C4 002FB224  2C 03 00 20 */	cmpwi r3, 0x20
/* 802FF5C8 002FB228  41 81 00 60 */	bgt lbl_802FF628
/* 802FF5CC 002FB22C  38 61 00 08 */	addi r3, r1, 8
/* 802FF5D0 002FB230  38 80 00 41 */	li r4, 0x41
/* 802FF5D4 002FB234  4B FF AB 15 */	bl NHTTPi_memclr
/* 802FF5D8 002FB238  7F 64 DB 78 */	mr r4, r27
/* 802FF5DC 002FB23C  7F C5 F3 78 */	mr r5, r30
/* 802FF5E0 002FB240  38 61 00 08 */	addi r3, r1, 8
/* 802FF5E4 002FB244  4B FF AA F9 */	bl NHTTPi_memcpy
/* 802FF5E8 002FB248  38 61 00 08 */	addi r3, r1, 8
/* 802FF5EC 002FB24C  38 8D 8C 78 */	addi r4, r13, lbl_8063DF38-_SDA_BASE_
/* 802FF5F0 002FB250  7C 63 F2 14 */	add r3, r3, r30
/* 802FF5F4 002FB254  38 A0 00 01 */	li r5, 1
/* 802FF5F8 002FB258  4B FF AA E5 */	bl NHTTPi_memcpy
/* 802FF5FC 002FB25C  38 61 00 08 */	addi r3, r1, 8
/* 802FF600 002FB260  7F 84 E3 78 */	mr r4, r28
/* 802FF604 002FB264  7C 7E 1A 14 */	add r3, r30, r3
/* 802FF608 002FB268  7F A5 EB 78 */	mr r5, r29
/* 802FF60C 002FB26C  38 63 00 01 */	addi r3, r3, 1
/* 802FF610 002FB270  4B FF AA CD */	bl NHTTPi_memcpy
/* 802FF614 002FB274  38 7F 01 D8 */	addi r3, r31, 0x1d8
/* 802FF618 002FB278  38 81 00 08 */	addi r4, r1, 8
/* 802FF61C 002FB27C  4B FF B2 59 */	bl NHTTPi_Base64Encode
/* 802FF620 002FB280  90 7F 02 34 */	stw r3, 0x234(r31)
/* 802FF624 002FB284  48 00 00 0C */	b lbl_802FF630
lbl_802FF628:
/* 802FF628 002FB288  38 60 FF FF */	li r3, -1
/* 802FF62C 002FB28C  48 00 00 10 */	b lbl_802FF63C
lbl_802FF630:
/* 802FF630 002FB290  38 00 00 01 */	li r0, 1
/* 802FF634 002FB294  38 60 00 00 */	li r3, 0
/* 802FF638 002FB298  90 1F 00 0C */	stw r0, 0xc(r31)
lbl_802FF63C:
/* 802FF63C 002FB29C  39 61 00 70 */	addi r11, r1, 0x70
/* 802FF640 002FB2A0  4B EC 7B 35 */	bl _restgpr_27
/* 802FF644 002FB2A4  80 01 00 74 */	lwz r0, 0x74(r1)
/* 802FF648 002FB2A8  7C 08 03 A6 */	mtlr r0
/* 802FF64C 002FB2AC  38 21 00 70 */	addi r1, r1, 0x70
/* 802FF650 002FB2B0  4E 80 00 20 */	blr

.global NHTTPSetProxyDefault
NHTTPSetProxyDefault:
/* 802FF654 002FB2B4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802FF658 002FB2B8  7C 08 02 A6 */	mflr r0
/* 802FF65C 002FB2BC  90 01 00 24 */	stw r0, 0x24(r1)
/* 802FF660 002FB2C0  39 61 00 20 */	addi r11, r1, 0x20
/* 802FF664 002FB2C4  4B EC 7A C1 */	bl _savegpr_26
/* 802FF668 002FB2C8  3F E0 80 44 */	lis r31, lbl_804461D8@ha
/* 802FF66C 002FB2CC  7C 7A 1B 78 */	mr r26, r3
/* 802FF670 002FB2D0  3B FF 61 D8 */	addi r31, r31, lbl_804461D8@l
/* 802FF674 002FB2D4  48 00 07 F5 */	bl NHTTPi_GetSystemInfoP
/* 802FF678 002FB2D8  7C 7D 1B 78 */	mr r29, r3
/* 802FF67C 002FB2DC  48 00 08 71 */	bl NHTTPi_GetMutexInfoP
/* 802FF680 002FB2E0  7F 44 D3 78 */	mr r4, r26
/* 802FF684 002FB2E4  48 00 03 CD */	bl NHTTPi_GetRequest
/* 802FF688 002FB2E8  7C 7C 1B 78 */	mr r28, r3
/* 802FF68C 002FB2EC  7F A3 EB 78 */	mr r3, r29
/* 802FF690 002FB2F0  48 00 08 41 */	bl NHTTPi_GetBgnEndInfoP
/* 802FF694 002FB2F4  80 1C 00 08 */	lwz r0, 8(r28)
/* 802FF698 002FB2F8  2C 00 00 00 */	cmpwi r0, 0
/* 802FF69C 002FB2FC  41 82 00 0C */	beq lbl_802FF6A8
/* 802FF6A0 002FB300  3B A3 01 70 */	addi r29, r3, 0x170
/* 802FF6A4 002FB304  48 00 00 08 */	b lbl_802FF6AC
lbl_802FF6A8:
/* 802FF6A8 002FB308  3B A3 00 28 */	addi r29, r3, 0x28
lbl_802FF6AC:
/* 802FF6AC 002FB30C  88 1D 00 00 */	lbz r0, 0(r29)
/* 802FF6B0 002FB310  28 00 00 01 */	cmplwi r0, 1
/* 802FF6B4 002FB314  40 82 00 C8 */	bne lbl_802FF77C
/* 802FF6B8 002FB318  A3 DD 01 04 */	lhz r30, 0x104(r29)
/* 802FF6BC 002FB31C  2C 1E 00 00 */	cmpwi r30, 0
/* 802FF6C0 002FB320  41 82 00 BC */	beq lbl_802FF77C
/* 802FF6C4 002FB324  38 7D 00 04 */	addi r3, r29, 4
/* 802FF6C8 002FB328  4B EC 74 9D */	bl strlen
/* 802FF6CC 002FB32C  28 03 00 06 */	cmplwi r3, 6
/* 802FF6D0 002FB330  41 80 00 AC */	blt lbl_802FF77C
/* 802FF6D4 002FB334  88 1D 00 01 */	lbz r0, 1(r29)
/* 802FF6D8 002FB338  3B 60 00 00 */	li r27, 0
/* 802FF6DC 002FB33C  3B 40 00 00 */	li r26, 0
/* 802FF6E0 002FB340  28 00 00 01 */	cmplwi r0, 1
/* 802FF6E4 002FB344  40 82 00 0C */	bne lbl_802FF6F0
/* 802FF6E8 002FB348  3B 7D 01 06 */	addi r27, r29, 0x106
/* 802FF6EC 002FB34C  3B 5D 01 27 */	addi r26, r29, 0x127
lbl_802FF6F0:
/* 802FF6F0 002FB350  2C 1A 00 00 */	cmpwi r26, 0
/* 802FF6F4 002FB354  41 82 00 0C */	beq lbl_802FF700
/* 802FF6F8 002FB358  7F 47 D3 78 */	mr r7, r26
/* 802FF6FC 002FB35C  48 00 00 08 */	b lbl_802FF704
lbl_802FF700:
/* 802FF700 002FB360  38 FF 00 00 */	addi r7, r31, 0
lbl_802FF704:
/* 802FF704 002FB364  2C 1B 00 00 */	cmpwi r27, 0
/* 802FF708 002FB368  7F C5 F3 78 */	mr r5, r30
/* 802FF70C 002FB36C  38 7F 00 0C */	addi r3, r31, 0xc
/* 802FF710 002FB370  38 9D 00 04 */	addi r4, r29, 4
/* 802FF714 002FB374  41 82 00 0C */	beq lbl_802FF720
/* 802FF718 002FB378  7F 66 DB 78 */	mr r6, r27
/* 802FF71C 002FB37C  48 00 00 08 */	b lbl_802FF724
lbl_802FF720:
/* 802FF720 002FB380  38 DF 00 00 */	addi r6, r31, 0
lbl_802FF724:
/* 802FF724 002FB384  4C C6 31 82 */	crclr 6
/* 802FF728 002FB388  4B D0 83 9D */	bl func_80007AC4
/* 802FF72C 002FB38C  A0 BD 01 04 */	lhz r5, 0x104(r29)
/* 802FF730 002FB390  7F 83 E3 78 */	mr r3, r28
/* 802FF734 002FB394  7F 66 DB 78 */	mr r6, r27
/* 802FF738 002FB398  7F 47 D3 78 */	mr r7, r26
/* 802FF73C 002FB39C  38 9D 00 04 */	addi r4, r29, 4
/* 802FF740 002FB3A0  4B FF FD D5 */	bl NHTTPSetProxy
/* 802FF744 002FB3A4  2C 03 00 00 */	cmpwi r3, 0
/* 802FF748 002FB3A8  40 80 00 2C */	bge lbl_802FF774
/* 802FF74C 002FB3AC  7C 64 1B 78 */	mr r4, r3
/* 802FF750 002FB3B0  38 7F 00 30 */	addi r3, r31, 0x30
/* 802FF754 002FB3B4  4C C6 31 82 */	crclr 6
/* 802FF758 002FB3B8  4B D0 83 6D */	bl func_80007AC4
/* 802FF75C 002FB3BC  38 7F 00 4C */	addi r3, r31, 0x4c
/* 802FF760 002FB3C0  38 BF 00 58 */	addi r5, r31, 0x58
/* 802FF764 002FB3C4  38 80 03 46 */	li r4, 0x346
/* 802FF768 002FB3C8  4C C6 31 82 */	crclr 6
/* 802FF76C 002FB3CC  4B F6 BD 31 */	bl OSPanic
/* 802FF770 002FB3D0  48 00 00 0C */	b lbl_802FF77C
lbl_802FF774:
/* 802FF774 002FB3D4  38 60 00 00 */	li r3, 0
/* 802FF778 002FB3D8  48 00 00 08 */	b lbl_802FF780
lbl_802FF77C:
/* 802FF77C 002FB3DC  38 60 FF FF */	li r3, -1
lbl_802FF780:
/* 802FF780 002FB3E0  39 61 00 20 */	addi r11, r1, 0x20
/* 802FF784 002FB3E4  4B EC 79 ED */	bl _restgpr_26
/* 802FF788 002FB3E8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802FF78C 002FB3EC  7C 08 03 A6 */	mtlr r0
/* 802FF790 002FB3F0  38 21 00 20 */	addi r1, r1, 0x20
/* 802FF794 002FB3F4  4E 80 00 20 */	blr

# NHTTPSetClientCertDefault?
.global func_802FF798
func_802FF798:
/* 802FF798 002FB3F8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802FF79C 002FB3FC  7C 08 02 A6 */	mflr r0
/* 802FF7A0 002FB400  90 01 00 14 */	stw r0, 0x14(r1)
/* 802FF7A4 002FB404  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802FF7A8 002FB408  7C 7F 1B 78 */	mr r31, r3
/* 802FF7AC 002FB40C  48 00 06 BD */	bl NHTTPi_GetSystemInfoP
/* 802FF7B0 002FB410  48 00 07 3D */	bl NHTTPi_GetMutexInfoP
/* 802FF7B4 002FB414  7F E4 FB 78 */	mr r4, r31
/* 802FF7B8 002FB418  48 00 02 99 */	bl NHTTPi_GetRequest
/* 802FF7BC 002FB41C  2C 03 00 00 */	cmpwi r3, 0
/* 802FF7C0 002FB420  40 82 00 0C */	bne lbl_802FF7CC
/* 802FF7C4 002FB424  38 60 FF FF */	li r3, -1
/* 802FF7C8 002FB428  48 00 00 24 */	b lbl_802FF7EC
lbl_802FF7CC:
/* 802FF7CC 002FB42C  38 80 00 01 */	li r4, 1
/* 802FF7D0 002FB430  38 00 00 00 */	li r0, 0
/* 802FF7D4 002FB434  90 83 00 C8 */	stw r4, 0xc8(r3)
/* 802FF7D8 002FB438  90 03 00 B0 */	stw r0, 0xb0(r3)
/* 802FF7DC 002FB43C  90 03 00 B4 */	stw r0, 0xb4(r3)
/* 802FF7E0 002FB440  90 03 00 B8 */	stw r0, 0xb8(r3)
/* 802FF7E4 002FB444  90 03 00 BC */	stw r0, 0xbc(r3)
/* 802FF7E8 002FB448  38 60 00 00 */	li r3, 0
lbl_802FF7EC:
/* 802FF7EC 002FB44C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802FF7F0 002FB450  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802FF7F4 002FB454  7C 08 03 A6 */	mtlr r0
/* 802FF7F8 002FB458  38 21 00 10 */	addi r1, r1, 0x10
/* 802FF7FC 002FB45C  4E 80 00 20 */	blr

# NHTTPSetRootCADefault?
.global func_802FF800
func_802FF800:
/* 802FF800 002FB460  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802FF804 002FB464  7C 08 02 A6 */	mflr r0
/* 802FF808 002FB468  90 01 00 14 */	stw r0, 0x14(r1)
/* 802FF80C 002FB46C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802FF810 002FB470  7C 7F 1B 78 */	mr r31, r3
/* 802FF814 002FB474  48 00 06 55 */	bl NHTTPi_GetSystemInfoP
/* 802FF818 002FB478  48 00 06 D5 */	bl NHTTPi_GetMutexInfoP
/* 802FF81C 002FB47C  7F E4 FB 78 */	mr r4, r31
/* 802FF820 002FB480  48 00 02 31 */	bl NHTTPi_GetRequest
/* 802FF824 002FB484  2C 03 00 00 */	cmpwi r3, 0
/* 802FF828 002FB488  40 82 00 0C */	bne lbl_802FF834
/* 802FF82C 002FB48C  38 60 FF FF */	li r3, -1
/* 802FF830 002FB490  48 00 00 14 */	b lbl_802FF844
lbl_802FF834:
/* 802FF834 002FB494  38 00 00 00 */	li r0, 0
/* 802FF838 002FB498  90 03 00 C0 */	stw r0, 0xc0(r3)
/* 802FF83C 002FB49C  90 03 00 C4 */	stw r0, 0xc4(r3)
/* 802FF840 002FB4A0  38 60 00 00 */	li r3, 0
lbl_802FF844:
/* 802FF844 002FB4A4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802FF848 002FB4A8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802FF84C 002FB4AC  7C 08 03 A6 */	mtlr r0
/* 802FF850 002FB4B0  38 21 00 10 */	addi r1, r1, 0x10
/* 802FF854 002FB4B4  4E 80 00 20 */	blr