summaryrefslogtreecommitdiff
path: root/asm/SDK/NHTTP/d_nhttp_common.s
diff options
context:
space:
mode:
Diffstat (limited to 'asm/SDK/NHTTP/d_nhttp_common.s')
-rw-r--r--asm/SDK/NHTTP/d_nhttp_common.s541
1 files changed, 541 insertions, 0 deletions
diff --git a/asm/SDK/NHTTP/d_nhttp_common.s b/asm/SDK/NHTTP/d_nhttp_common.s
new file mode 100644
index 0000000..f945d0b
--- /dev/null
+++ b/asm/SDK/NHTTP/d_nhttp_common.s
@@ -0,0 +1,541 @@
+.include "macros.inc"
+
+.section .text, "ax" # 0x80006980 - 0x803E1E60
+
+.global NHTTPi_ControlConnectionList
+NHTTPi_ControlConnectionList:
+/* 802FF858 002FB4B8 94 21 FF E0 */ stwu r1, -0x20(r1)
+/* 802FF85C 002FB4BC 7C 08 02 A6 */ mflr r0
+/* 802FF860 002FB4C0 90 01 00 24 */ stw r0, 0x24(r1)
+/* 802FF864 002FB4C4 93 E1 00 1C */ stw r31, 0x1c(r1)
+/* 802FF868 002FB4C8 3B E0 00 00 */ li r31, 0
+/* 802FF86C 002FB4CC 93 C1 00 18 */ stw r30, 0x18(r1)
+/* 802FF870 002FB4D0 7C BE 2B 78 */ mr r30, r5
+/* 802FF874 002FB4D4 93 A1 00 14 */ stw r29, 0x14(r1)
+/* 802FF878 002FB4D8 7C 9D 23 78 */ mr r29, r4
+/* 802FF87C 002FB4DC 93 81 00 10 */ stw r28, 0x10(r1)
+/* 802FF880 002FB4E0 7C 7C 1B 78 */ mr r28, r3
+/* 802FF884 002FB4E4 4B FF 8B C1 */ bl NHTTPi_lockReqList
+/* 802FF888 002FB4E8 28 1E 00 03 */ cmplwi r30, 3
+/* 802FF88C 002FB4EC 40 82 00 18 */ bne lbl_802FF8A4
+/* 802FF890 002FB4F0 80 0D AF 68 */ lwz r0, lbl_80640228-_SDA_BASE_(r13)
+/* 802FF894 002FB4F4 7F BF EB 78 */ mr r31, r29
+/* 802FF898 002FB4F8 90 1D 00 3C */ stw r0, 0x3c(r29)
+/* 802FF89C 002FB4FC 93 AD AF 68 */ stw r29, lbl_80640228-_SDA_BASE_(r13)
+/* 802FF8A0 002FB500 48 00 00 9C */ b lbl_802FF93C
+lbl_802FF8A4:
+/* 802FF8A4 002FB504 38 8D AF 68 */ addi r4, r13, lbl_80640228-_SDA_BASE_
+/* 802FF8A8 002FB508 48 00 00 88 */ b lbl_802FF930
+lbl_802FF8AC:
+/* 802FF8AC 002FB50C 2C 1E 00 02 */ cmpwi r30, 2
+/* 802FF8B0 002FB510 41 82 00 48 */ beq lbl_802FF8F8
+/* 802FF8B4 002FB514 40 80 00 14 */ bge lbl_802FF8C8
+/* 802FF8B8 002FB518 2C 1E 00 00 */ cmpwi r30, 0
+/* 802FF8BC 002FB51C 41 82 00 18 */ beq lbl_802FF8D4
+/* 802FF8C0 002FB520 40 80 00 24 */ bge lbl_802FF8E4
+/* 802FF8C4 002FB524 48 00 00 5C */ b lbl_802FF920
+lbl_802FF8C8:
+/* 802FF8C8 002FB528 2C 1E 00 04 */ cmpwi r30, 4
+/* 802FF8CC 002FB52C 41 82 00 40 */ beq lbl_802FF90C
+/* 802FF8D0 002FB530 48 00 00 50 */ b lbl_802FF920
+lbl_802FF8D4:
+/* 802FF8D4 002FB534 7C 03 E8 40 */ cmplw r3, r29
+/* 802FF8D8 002FB538 40 82 00 48 */ bne lbl_802FF920
+/* 802FF8DC 002FB53C 7C 7F 1B 78 */ mr r31, r3
+/* 802FF8E0 002FB540 48 00 00 40 */ b lbl_802FF920
+lbl_802FF8E4:
+/* 802FF8E4 002FB544 80 03 00 2C */ lwz r0, 0x2c(r3)
+/* 802FF8E8 002FB548 7C 00 E8 40 */ cmplw r0, r29
+/* 802FF8EC 002FB54C 40 82 00 34 */ bne lbl_802FF920
+/* 802FF8F0 002FB550 7C 7F 1B 78 */ mr r31, r3
+/* 802FF8F4 002FB554 48 00 00 2C */ b lbl_802FF920
+lbl_802FF8F8:
+/* 802FF8F8 002FB558 80 03 00 30 */ lwz r0, 0x30(r3)
+/* 802FF8FC 002FB55C 7C 00 E8 40 */ cmplw r0, r29
+/* 802FF900 002FB560 40 82 00 20 */ bne lbl_802FF920
+/* 802FF904 002FB564 7C 7F 1B 78 */ mr r31, r3
+/* 802FF908 002FB568 48 00 00 18 */ b lbl_802FF920
+lbl_802FF90C:
+/* 802FF90C 002FB56C 7C 03 E8 40 */ cmplw r3, r29
+/* 802FF910 002FB570 40 82 00 10 */ bne lbl_802FF920
+/* 802FF914 002FB574 80 03 00 3C */ lwz r0, 0x3c(r3)
+/* 802FF918 002FB578 7C 7F 1B 78 */ mr r31, r3
+/* 802FF91C 002FB57C 90 04 00 00 */ stw r0, 0(r4)
+lbl_802FF920:
+/* 802FF920 002FB580 2C 1F 00 00 */ cmpwi r31, 0
+/* 802FF924 002FB584 40 82 00 18 */ bne lbl_802FF93C
+/* 802FF928 002FB588 80 64 00 00 */ lwz r3, 0(r4)
+/* 802FF92C 002FB58C 38 83 00 3C */ addi r4, r3, 0x3c
+lbl_802FF930:
+/* 802FF930 002FB590 80 64 00 00 */ lwz r3, 0(r4)
+/* 802FF934 002FB594 2C 03 00 00 */ cmpwi r3, 0
+/* 802FF938 002FB598 40 82 FF 74 */ bne lbl_802FF8AC
+lbl_802FF93C:
+/* 802FF93C 002FB59C 7F 83 E3 78 */ mr r3, r28
+/* 802FF940 002FB5A0 4B FF 8B 09 */ bl NHTTPi_unlockReqList
+/* 802FF944 002FB5A4 7F E3 FB 78 */ mr r3, r31
+/* 802FF948 002FB5A8 83 E1 00 1C */ lwz r31, 0x1c(r1)
+/* 802FF94C 002FB5AC 83 C1 00 18 */ lwz r30, 0x18(r1)
+/* 802FF950 002FB5B0 83 A1 00 14 */ lwz r29, 0x14(r1)
+/* 802FF954 002FB5B4 83 81 00 10 */ lwz r28, 0x10(r1)
+/* 802FF958 002FB5B8 80 01 00 24 */ lwz r0, 0x24(r1)
+/* 802FF95C 002FB5BC 7C 08 03 A6 */ mtlr r0
+/* 802FF960 002FB5C0 38 21 00 20 */ addi r1, r1, 0x20
+/* 802FF964 002FB5C4 4E 80 00 20 */ blr
+
+.global NHTTPi_CommitConnectionList
+NHTTPi_CommitConnectionList:
+/* 802FF968 002FB5C8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802FF96C 002FB5CC 7C 08 02 A6 */ mflr r0
+/* 802FF970 002FB5D0 38 A0 00 03 */ li r5, 3
+/* 802FF974 002FB5D4 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802FF978 002FB5D8 4B FF FE E1 */ bl NHTTPi_ControlConnectionList
+/* 802FF97C 002FB5DC 7C 03 00 D0 */ neg r0, r3
+/* 802FF980 002FB5E0 7C 60 00 F8 */ nor r0, r3, r0
+/* 802FF984 002FB5E4 7C 03 FE 70 */ srawi r3, r0, 0x1f
+/* 802FF988 002FB5E8 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802FF98C 002FB5EC 7C 08 03 A6 */ mtlr r0
+/* 802FF990 002FB5F0 38 21 00 10 */ addi r1, r1, 0x10
+/* 802FF994 002FB5F4 4E 80 00 20 */ blr
+
+.global NHTTPi_OmitConnectionList
+NHTTPi_OmitConnectionList:
+/* 802FF998 002FB5F8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802FF99C 002FB5FC 7C 08 02 A6 */ mflr r0
+/* 802FF9A0 002FB600 38 A0 00 04 */ li r5, 4
+/* 802FF9A4 002FB604 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802FF9A8 002FB608 4B FF FE B1 */ bl NHTTPi_ControlConnectionList
+/* 802FF9AC 002FB60C 7C 03 00 D0 */ neg r0, r3
+/* 802FF9B0 002FB610 7C 60 00 F8 */ nor r0, r3, r0
+/* 802FF9B4 002FB614 7C 03 FE 70 */ srawi r3, r0, 0x1f
+/* 802FF9B8 002FB618 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802FF9BC 002FB61C 7C 08 03 A6 */ mtlr r0
+/* 802FF9C0 002FB620 38 21 00 10 */ addi r1, r1, 0x10
+/* 802FF9C4 002FB624 4E 80 00 20 */ blr
+
+.global NHTTPi_Connection2Request
+NHTTPi_Connection2Request:
+/* 802FF9C8 002FB628 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802FF9CC 002FB62C 7C 08 02 A6 */ mflr r0
+/* 802FF9D0 002FB630 38 A0 00 00 */ li r5, 0
+/* 802FF9D4 002FB634 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802FF9D8 002FB638 4B FF FE 81 */ bl NHTTPi_ControlConnectionList
+/* 802FF9DC 002FB63C 2C 03 00 00 */ cmpwi r3, 0
+/* 802FF9E0 002FB640 41 82 00 0C */ beq lbl_802FF9EC
+/* 802FF9E4 002FB644 80 63 00 2C */ lwz r3, 0x2c(r3)
+/* 802FF9E8 002FB648 48 00 00 08 */ b lbl_802FF9F0
+lbl_802FF9EC:
+/* 802FF9EC 002FB64C 38 60 00 00 */ li r3, 0
+lbl_802FF9F0:
+/* 802FF9F0 002FB650 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802FF9F4 002FB654 7C 08 03 A6 */ mtlr r0
+/* 802FF9F8 002FB658 38 21 00 10 */ addi r1, r1, 0x10
+/* 802FF9FC 002FB65C 4E 80 00 20 */ blr
+
+.global NHTTPi_Connection2Response
+NHTTPi_Connection2Response:
+/* 802FFA00 002FB660 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802FFA04 002FB664 7C 08 02 A6 */ mflr r0
+/* 802FFA08 002FB668 38 A0 00 00 */ li r5, 0
+/* 802FFA0C 002FB66C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802FFA10 002FB670 4B FF FE 49 */ bl NHTTPi_ControlConnectionList
+/* 802FFA14 002FB674 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFA18 002FB678 41 82 00 0C */ beq lbl_802FFA24
+/* 802FFA1C 002FB67C 80 63 00 30 */ lwz r3, 0x30(r3)
+/* 802FFA20 002FB680 48 00 00 08 */ b lbl_802FFA28
+lbl_802FFA24:
+/* 802FFA24 002FB684 38 60 00 00 */ li r3, 0
+lbl_802FFA28:
+/* 802FFA28 002FB688 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802FFA2C 002FB68C 7C 08 03 A6 */ mtlr r0
+/* 802FFA30 002FB690 38 21 00 10 */ addi r1, r1, 0x10
+/* 802FFA34 002FB694 4E 80 00 20 */ blr
+
+.global NHTTPi_Request2Connection
+NHTTPi_Request2Connection:
+/* 802FFA38 002FB698 38 A0 00 01 */ li r5, 1
+/* 802FFA3C 002FB69C 4B FF FE 1C */ b NHTTPi_ControlConnectionList
+
+.global NHTTPi_Response2Connection
+NHTTPi_Response2Connection:
+/* 802FFA40 002FB6A0 38 A0 00 02 */ li r5, 2
+/* 802FFA44 002FB6A4 4B FF FE 14 */ b NHTTPi_ControlConnectionList
+
+.global NHTTPi_GetConnection
+NHTTPi_GetConnection:
+/* 802FFA48 002FB6A8 38 A0 00 00 */ li r5, 0
+/* 802FFA4C 002FB6AC 4B FF FE 0C */ b NHTTPi_ControlConnectionList
+
+.global NHTTPi_GetRequest
+NHTTPi_GetRequest:
+/* 802FFA50 002FB6B0 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802FFA54 002FB6B4 7C 08 02 A6 */ mflr r0
+/* 802FFA58 002FB6B8 38 A0 00 00 */ li r5, 0
+/* 802FFA5C 002FB6BC 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802FFA60 002FB6C0 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802FFA64 002FB6C4 7C 9F 23 78 */ mr r31, r4
+/* 802FFA68 002FB6C8 4B FF FD F1 */ bl NHTTPi_ControlConnectionList
+/* 802FFA6C 002FB6CC 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFA70 002FB6D0 41 82 00 0C */ beq lbl_802FFA7C
+/* 802FFA74 002FB6D4 80 63 00 2C */ lwz r3, 0x2c(r3)
+/* 802FFA78 002FB6D8 48 00 00 08 */ b lbl_802FFA80
+lbl_802FFA7C:
+/* 802FFA7C 002FB6DC 7F E3 FB 78 */ mr r3, r31
+lbl_802FFA80:
+/* 802FFA80 002FB6E0 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802FFA84 002FB6E4 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802FFA88 002FB6E8 7C 08 03 A6 */ mtlr r0
+/* 802FFA8C 002FB6EC 38 21 00 10 */ addi r1, r1, 0x10
+/* 802FFA90 002FB6F0 4E 80 00 20 */ blr
+
+.global NHTTPi_GetResponse
+NHTTPi_GetResponse:
+/* 802FFA94 002FB6F4 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802FFA98 002FB6F8 7C 08 02 A6 */ mflr r0
+/* 802FFA9C 002FB6FC 38 A0 00 00 */ li r5, 0
+/* 802FFAA0 002FB700 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802FFAA4 002FB704 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802FFAA8 002FB708 7C 9F 23 78 */ mr r31, r4
+/* 802FFAAC 002FB70C 4B FF FD AD */ bl NHTTPi_ControlConnectionList
+/* 802FFAB0 002FB710 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFAB4 002FB714 41 82 00 0C */ beq lbl_802FFAC0
+/* 802FFAB8 002FB718 80 63 00 30 */ lwz r3, 0x30(r3)
+/* 802FFABC 002FB71C 48 00 00 08 */ b lbl_802FFAC4
+lbl_802FFAC0:
+/* 802FFAC0 002FB720 7F E3 FB 78 */ mr r3, r31
+lbl_802FFAC4:
+/* 802FFAC4 002FB724 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802FFAC8 002FB728 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802FFACC 002FB72C 7C 08 03 A6 */ mtlr r0
+/* 802FFAD0 002FB730 38 21 00 10 */ addi r1, r1, 0x10
+/* 802FFAD4 002FB734 4E 80 00 20 */ blr
+
+.global NHTTPi_GetConnectionListLength
+NHTTPi_GetConnectionListLength:
+/* 802FFAD8 002FB738 80 8D AF 68 */ lwz r4, lbl_80640228-_SDA_BASE_(r13)
+/* 802FFADC 002FB73C 38 60 00 00 */ li r3, 0
+/* 802FFAE0 002FB740 48 00 00 0C */ b lbl_802FFAEC
+lbl_802FFAE4:
+/* 802FFAE4 002FB744 80 84 00 3C */ lwz r4, 0x3c(r4)
+/* 802FFAE8 002FB748 38 63 00 01 */ addi r3, r3, 1
+lbl_802FFAEC:
+/* 802FFAEC 002FB74C 2C 04 00 00 */ cmpwi r4, 0
+/* 802FFAF0 002FB750 40 82 FF F4 */ bne lbl_802FFAE4
+/* 802FFAF4 002FB754 4E 80 00 20 */ blr
+
+.global NHTTPi_PostSendCallback
+NHTTPi_PostSendCallback:
+/* 802FFAF8 002FB758 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802FFAFC 002FB75C 7C 08 02 A6 */ mflr r0
+/* 802FFB00 002FB760 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802FFB04 002FB764 39 61 00 30 */ addi r11, r1, 0x30
+/* 802FFB08 002FB768 4B EC 76 21 */ bl _savegpr_27
+/* 802FFB0C 002FB76C 7C BF 2B 78 */ mr r31, r5
+/* 802FFB10 002FB770 7C 7B 1B 78 */ mr r27, r3
+/* 802FFB14 002FB774 7C 9C 23 78 */ mr r28, r4
+/* 802FFB18 002FB778 7C DE 33 78 */ mr r30, r6
+/* 802FFB1C 002FB77C 3B A0 FF FF */ li r29, -1
+/* 802FFB20 002FB780 38 A0 00 00 */ li r5, 0
+/* 802FFB24 002FB784 4B FF FD 35 */ bl NHTTPi_ControlConnectionList
+/* 802FFB28 002FB788 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFB2C 002FB78C 41 82 00 98 */ beq lbl_802FFBC4
+/* 802FFB30 002FB790 7F 63 DB 78 */ mr r3, r27
+/* 802FFB34 002FB794 7F 84 E3 78 */ mr r4, r28
+/* 802FFB38 002FB798 38 A0 00 00 */ li r5, 0
+/* 802FFB3C 002FB79C 4B FF FD 1D */ bl NHTTPi_ControlConnectionList
+/* 802FFB40 002FB7A0 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFB44 002FB7A4 41 82 00 0C */ beq lbl_802FFB50
+/* 802FFB48 002FB7A8 80 03 00 30 */ lwz r0, 0x30(r3)
+/* 802FFB4C 002FB7AC 48 00 00 08 */ b lbl_802FFB54
+lbl_802FFB50:
+/* 802FFB50 002FB7B0 38 00 00 00 */ li r0, 0
+lbl_802FFB54:
+/* 802FFB54 002FB7B4 2C 00 00 00 */ cmpwi r0, 0
+/* 802FFB58 002FB7B8 41 82 00 6C */ beq lbl_802FFBC4
+/* 802FFB5C 002FB7BC 80 1C 00 38 */ lwz r0, 0x38(r28)
+/* 802FFB60 002FB7C0 2C 00 00 00 */ cmpwi r0, 0
+/* 802FFB64 002FB7C4 41 82 00 60 */ beq lbl_802FFBC4
+/* 802FFB68 002FB7C8 93 E1 00 08 */ stw r31, 8(r1)
+/* 802FFB6C 002FB7CC 7F 83 E3 78 */ mr r3, r28
+/* 802FFB70 002FB7D0 38 A1 00 08 */ addi r5, r1, 8
+/* 802FFB74 002FB7D4 38 80 00 01 */ li r4, 1
+/* 802FFB78 002FB7D8 80 1C 00 40 */ lwz r0, 0x40(r28)
+/* 802FFB7C 002FB7DC 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802FFB80 002FB7E0 80 1C 00 44 */ lwz r0, 0x44(r28)
+/* 802FFB84 002FB7E4 90 01 00 10 */ stw r0, 0x10(r1)
+/* 802FFB88 002FB7E8 93 C1 00 14 */ stw r30, 0x14(r1)
+/* 802FFB8C 002FB7EC 81 9C 00 38 */ lwz r12, 0x38(r28)
+/* 802FFB90 002FB7F0 7D 89 03 A6 */ mtctr r12
+/* 802FFB94 002FB7F4 4E 80 04 21 */ bctrl
+/* 802FFB98 002FB7F8 83 C1 00 10 */ lwz r30, 0x10(r1)
+/* 802FFB9C 002FB7FC 7C 7D 1B 78 */ mr r29, r3
+/* 802FFBA0 002FB800 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802FFBA4 002FB804 7F 63 DB 78 */ mr r3, r27
+/* 802FFBA8 002FB808 7F 84 E3 78 */ mr r4, r28
+/* 802FFBAC 002FB80C 38 A0 00 00 */ li r5, 0
+/* 802FFBB0 002FB810 4B FF FC A9 */ bl NHTTPi_ControlConnectionList
+/* 802FFBB4 002FB814 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFBB8 002FB818 41 82 00 0C */ beq lbl_802FFBC4
+/* 802FFBBC 002FB81C 93 E3 00 40 */ stw r31, 0x40(r3)
+/* 802FFBC0 002FB820 93 C3 00 44 */ stw r30, 0x44(r3)
+lbl_802FFBC4:
+/* 802FFBC4 002FB824 39 61 00 30 */ addi r11, r1, 0x30
+/* 802FFBC8 002FB828 7F A3 EB 78 */ mr r3, r29
+/* 802FFBCC 002FB82C 4B EC 75 A9 */ bl _restgpr_27
+/* 802FFBD0 002FB830 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802FFBD4 002FB834 7C 08 03 A6 */ mtlr r0
+/* 802FFBD8 002FB838 38 21 00 30 */ addi r1, r1, 0x30
+/* 802FFBDC 002FB83C 4E 80 00 20 */ blr
+
+.global NHTTPi_BufferFullCallback
+NHTTPi_BufferFullCallback:
+/* 802FFBE0 002FB840 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802FFBE4 002FB844 7C 08 02 A6 */ mflr r0
+/* 802FFBE8 002FB848 38 A0 00 00 */ li r5, 0
+/* 802FFBEC 002FB84C 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802FFBF0 002FB850 93 E1 00 2C */ stw r31, 0x2c(r1)
+/* 802FFBF4 002FB854 7C 9F 23 78 */ mr r31, r4
+/* 802FFBF8 002FB858 93 C1 00 28 */ stw r30, 0x28(r1)
+/* 802FFBFC 002FB85C 93 A1 00 24 */ stw r29, 0x24(r1)
+/* 802FFC00 002FB860 93 81 00 20 */ stw r28, 0x20(r1)
+/* 802FFC04 002FB864 7C 7C 1B 78 */ mr r28, r3
+/* 802FFC08 002FB868 4B FF FC 51 */ bl NHTTPi_ControlConnectionList
+/* 802FFC0C 002FB86C 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFC10 002FB870 41 82 00 C8 */ beq lbl_802FFCD8
+/* 802FFC14 002FB874 7F 83 E3 78 */ mr r3, r28
+/* 802FFC18 002FB878 7F E4 FB 78 */ mr r4, r31
+/* 802FFC1C 002FB87C 38 A0 00 00 */ li r5, 0
+/* 802FFC20 002FB880 4B FF FC 39 */ bl NHTTPi_ControlConnectionList
+/* 802FFC24 002FB884 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFC28 002FB888 41 82 00 0C */ beq lbl_802FFC34
+/* 802FFC2C 002FB88C 80 C3 00 30 */ lwz r6, 0x30(r3)
+/* 802FFC30 002FB890 48 00 00 08 */ b lbl_802FFC38
+lbl_802FFC34:
+/* 802FFC34 002FB894 38 C0 00 00 */ li r6, 0
+lbl_802FFC38:
+/* 802FFC38 002FB898 2C 06 00 00 */ cmpwi r6, 0
+/* 802FFC3C 002FB89C 41 82 00 9C */ beq lbl_802FFCD8
+/* 802FFC40 002FB8A0 80 1F 00 38 */ lwz r0, 0x38(r31)
+/* 802FFC44 002FB8A4 2C 00 00 00 */ cmpwi r0, 0
+/* 802FFC48 002FB8A8 41 82 00 90 */ beq lbl_802FFCD8
+/* 802FFC4C 002FB8AC 80 06 00 28 */ lwz r0, 0x28(r6)
+/* 802FFC50 002FB8B0 7F E3 FB 78 */ mr r3, r31
+/* 802FFC54 002FB8B4 38 A1 00 08 */ addi r5, r1, 8
+/* 802FFC58 002FB8B8 38 80 00 02 */ li r4, 2
+/* 802FFC5C 002FB8BC 90 01 00 08 */ stw r0, 8(r1)
+/* 802FFC60 002FB8C0 80 06 00 1C */ lwz r0, 0x1c(r6)
+/* 802FFC64 002FB8C4 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802FFC68 002FB8C8 80 06 00 04 */ lwz r0, 4(r6)
+/* 802FFC6C 002FB8CC 90 01 00 10 */ stw r0, 0x10(r1)
+/* 802FFC70 002FB8D0 81 9F 00 38 */ lwz r12, 0x38(r31)
+/* 802FFC74 002FB8D4 7D 89 03 A6 */ mtctr r12
+/* 802FFC78 002FB8D8 4E 80 04 21 */ bctrl
+/* 802FFC7C 002FB8DC 7F E4 FB 78 */ mr r4, r31
+/* 802FFC80 002FB8E0 83 A1 00 10 */ lwz r29, 0x10(r1)
+/* 802FFC84 002FB8E4 83 C1 00 0C */ lwz r30, 0xc(r1)
+/* 802FFC88 002FB8E8 7F 83 E3 78 */ mr r3, r28
+/* 802FFC8C 002FB8EC 83 E1 00 08 */ lwz r31, 8(r1)
+/* 802FFC90 002FB8F0 38 A0 00 00 */ li r5, 0
+/* 802FFC94 002FB8F4 4B FF FB C5 */ bl NHTTPi_ControlConnectionList
+/* 802FFC98 002FB8F8 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFC9C 002FB8FC 7C 64 1B 78 */ mr r4, r3
+/* 802FFCA0 002FB900 41 82 00 38 */ beq lbl_802FFCD8
+/* 802FFCA4 002FB904 7F 83 E3 78 */ mr r3, r28
+/* 802FFCA8 002FB908 38 A0 00 00 */ li r5, 0
+/* 802FFCAC 002FB90C 4B FF FB AD */ bl NHTTPi_ControlConnectionList
+/* 802FFCB0 002FB910 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFCB4 002FB914 41 82 00 0C */ beq lbl_802FFCC0
+/* 802FFCB8 002FB918 80 63 00 30 */ lwz r3, 0x30(r3)
+/* 802FFCBC 002FB91C 48 00 00 08 */ b lbl_802FFCC4
+lbl_802FFCC0:
+/* 802FFCC0 002FB920 38 60 00 00 */ li r3, 0
+lbl_802FFCC4:
+/* 802FFCC4 002FB924 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFCC8 002FB928 41 82 00 10 */ beq lbl_802FFCD8
+/* 802FFCCC 002FB92C 93 E3 00 28 */ stw r31, 0x28(r3)
+/* 802FFCD0 002FB930 93 C3 00 1C */ stw r30, 0x1c(r3)
+/* 802FFCD4 002FB934 93 A3 00 04 */ stw r29, 4(r3)
+lbl_802FFCD8:
+/* 802FFCD8 002FB938 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802FFCDC 002FB93C 83 E1 00 2C */ lwz r31, 0x2c(r1)
+/* 802FFCE0 002FB940 83 C1 00 28 */ lwz r30, 0x28(r1)
+/* 802FFCE4 002FB944 83 A1 00 24 */ lwz r29, 0x24(r1)
+/* 802FFCE8 002FB948 83 81 00 20 */ lwz r28, 0x20(r1)
+/* 802FFCEC 002FB94C 7C 08 03 A6 */ mtlr r0
+/* 802FFCF0 002FB950 38 21 00 30 */ addi r1, r1, 0x30
+/* 802FFCF4 002FB954 4E 80 00 20 */ blr
+
+.global NHTTPi_ReceivedCallback
+NHTTPi_ReceivedCallback:
+/* 802FFCF8 002FB958 94 21 FF D0 */ stwu r1, -0x30(r1)
+/* 802FFCFC 002FB95C 7C 08 02 A6 */ mflr r0
+/* 802FFD00 002FB960 38 A0 00 00 */ li r5, 0
+/* 802FFD04 002FB964 90 01 00 34 */ stw r0, 0x34(r1)
+/* 802FFD08 002FB968 93 E1 00 2C */ stw r31, 0x2c(r1)
+/* 802FFD0C 002FB96C 7C 9F 23 78 */ mr r31, r4
+/* 802FFD10 002FB970 93 C1 00 28 */ stw r30, 0x28(r1)
+/* 802FFD14 002FB974 93 A1 00 24 */ stw r29, 0x24(r1)
+/* 802FFD18 002FB978 93 81 00 20 */ stw r28, 0x20(r1)
+/* 802FFD1C 002FB97C 7C 7C 1B 78 */ mr r28, r3
+/* 802FFD20 002FB980 4B FF FB 39 */ bl NHTTPi_ControlConnectionList
+/* 802FFD24 002FB984 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFD28 002FB988 41 82 00 C8 */ beq lbl_802FFDF0
+/* 802FFD2C 002FB98C 7F 83 E3 78 */ mr r3, r28
+/* 802FFD30 002FB990 7F E4 FB 78 */ mr r4, r31
+/* 802FFD34 002FB994 38 A0 00 00 */ li r5, 0
+/* 802FFD38 002FB998 4B FF FB 21 */ bl NHTTPi_ControlConnectionList
+/* 802FFD3C 002FB99C 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFD40 002FB9A0 41 82 00 0C */ beq lbl_802FFD4C
+/* 802FFD44 002FB9A4 80 C3 00 30 */ lwz r6, 0x30(r3)
+/* 802FFD48 002FB9A8 48 00 00 08 */ b lbl_802FFD50
+lbl_802FFD4C:
+/* 802FFD4C 002FB9AC 38 C0 00 00 */ li r6, 0
+lbl_802FFD50:
+/* 802FFD50 002FB9B0 2C 06 00 00 */ cmpwi r6, 0
+/* 802FFD54 002FB9B4 41 82 00 9C */ beq lbl_802FFDF0
+/* 802FFD58 002FB9B8 80 1F 00 38 */ lwz r0, 0x38(r31)
+/* 802FFD5C 002FB9BC 2C 00 00 00 */ cmpwi r0, 0
+/* 802FFD60 002FB9C0 41 82 00 90 */ beq lbl_802FFDF0
+/* 802FFD64 002FB9C4 80 06 00 28 */ lwz r0, 0x28(r6)
+/* 802FFD68 002FB9C8 7F E3 FB 78 */ mr r3, r31
+/* 802FFD6C 002FB9CC 38 A1 00 08 */ addi r5, r1, 8
+/* 802FFD70 002FB9D0 38 80 00 03 */ li r4, 3
+/* 802FFD74 002FB9D4 90 01 00 08 */ stw r0, 8(r1)
+/* 802FFD78 002FB9D8 80 06 00 1C */ lwz r0, 0x1c(r6)
+/* 802FFD7C 002FB9DC 90 01 00 0C */ stw r0, 0xc(r1)
+/* 802FFD80 002FB9E0 80 06 00 04 */ lwz r0, 4(r6)
+/* 802FFD84 002FB9E4 90 01 00 10 */ stw r0, 0x10(r1)
+/* 802FFD88 002FB9E8 81 9F 00 38 */ lwz r12, 0x38(r31)
+/* 802FFD8C 002FB9EC 7D 89 03 A6 */ mtctr r12
+/* 802FFD90 002FB9F0 4E 80 04 21 */ bctrl
+/* 802FFD94 002FB9F4 7F E4 FB 78 */ mr r4, r31
+/* 802FFD98 002FB9F8 83 A1 00 10 */ lwz r29, 0x10(r1)
+/* 802FFD9C 002FB9FC 83 C1 00 0C */ lwz r30, 0xc(r1)
+/* 802FFDA0 002FBA00 7F 83 E3 78 */ mr r3, r28
+/* 802FFDA4 002FBA04 83 E1 00 08 */ lwz r31, 8(r1)
+/* 802FFDA8 002FBA08 38 A0 00 00 */ li r5, 0
+/* 802FFDAC 002FBA0C 4B FF FA AD */ bl NHTTPi_ControlConnectionList
+/* 802FFDB0 002FBA10 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFDB4 002FBA14 7C 64 1B 78 */ mr r4, r3
+/* 802FFDB8 002FBA18 41 82 00 38 */ beq lbl_802FFDF0
+/* 802FFDBC 002FBA1C 7F 83 E3 78 */ mr r3, r28
+/* 802FFDC0 002FBA20 38 A0 00 00 */ li r5, 0
+/* 802FFDC4 002FBA24 4B FF FA 95 */ bl NHTTPi_ControlConnectionList
+/* 802FFDC8 002FBA28 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFDCC 002FBA2C 41 82 00 0C */ beq lbl_802FFDD8
+/* 802FFDD0 002FBA30 80 63 00 30 */ lwz r3, 0x30(r3)
+/* 802FFDD4 002FBA34 48 00 00 08 */ b lbl_802FFDDC
+lbl_802FFDD8:
+/* 802FFDD8 002FBA38 38 60 00 00 */ li r3, 0
+lbl_802FFDDC:
+/* 802FFDDC 002FBA3C 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFDE0 002FBA40 41 82 00 10 */ beq lbl_802FFDF0
+/* 802FFDE4 002FBA44 93 E3 00 28 */ stw r31, 0x28(r3)
+/* 802FFDE8 002FBA48 93 C3 00 1C */ stw r30, 0x1c(r3)
+/* 802FFDEC 002FBA4C 93 A3 00 04 */ stw r29, 4(r3)
+lbl_802FFDF0:
+/* 802FFDF0 002FBA50 80 01 00 34 */ lwz r0, 0x34(r1)
+/* 802FFDF4 002FBA54 83 E1 00 2C */ lwz r31, 0x2c(r1)
+/* 802FFDF8 002FBA58 83 C1 00 28 */ lwz r30, 0x28(r1)
+/* 802FFDFC 002FBA5C 83 A1 00 24 */ lwz r29, 0x24(r1)
+/* 802FFE00 002FBA60 83 81 00 20 */ lwz r28, 0x20(r1)
+/* 802FFE04 002FBA64 7C 08 03 A6 */ mtlr r0
+/* 802FFE08 002FBA68 38 21 00 30 */ addi r1, r1, 0x30
+/* 802FFE0C 002FBA6C 4E 80 00 20 */ blr
+
+.global NHTTPi_CompleteCallback
+NHTTPi_CompleteCallback:
+/* 802FFE10 002FBA70 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802FFE14 002FBA74 7C 08 02 A6 */ mflr r0
+/* 802FFE18 002FBA78 38 A0 00 00 */ li r5, 0
+/* 802FFE1C 002FBA7C 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802FFE20 002FBA80 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802FFE24 002FBA84 7C 9F 23 78 */ mr r31, r4
+/* 802FFE28 002FBA88 4B FF FA 31 */ bl NHTTPi_ControlConnectionList
+/* 802FFE2C 002FBA8C 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFE30 002FBA90 41 82 00 24 */ beq lbl_802FFE54
+/* 802FFE34 002FBA94 81 9F 00 38 */ lwz r12, 0x38(r31)
+/* 802FFE38 002FBA98 2C 0C 00 00 */ cmpwi r12, 0
+/* 802FFE3C 002FBA9C 41 82 00 18 */ beq lbl_802FFE54
+/* 802FFE40 002FBAA0 7F E3 FB 78 */ mr r3, r31
+/* 802FFE44 002FBAA4 38 80 00 04 */ li r4, 4
+/* 802FFE48 002FBAA8 38 A0 00 00 */ li r5, 0
+/* 802FFE4C 002FBAAC 7D 89 03 A6 */ mtctr r12
+/* 802FFE50 002FBAB0 4E 80 04 21 */ bctrl
+lbl_802FFE54:
+/* 802FFE54 002FBAB4 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802FFE58 002FBAB8 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802FFE5C 002FBABC 7C 08 03 A6 */ mtlr r0
+/* 802FFE60 002FBAC0 38 21 00 10 */ addi r1, r1, 0x10
+/* 802FFE64 002FBAC4 4E 80 00 20 */ blr
+
+.global NHTTPi_GetSystemInfoP
+NHTTPi_GetSystemInfoP:
+/* 802FFE68 002FBAC8 94 21 FF F0 */ stwu r1, -0x10(r1)
+/* 802FFE6C 002FBACC 7C 08 02 A6 */ mflr r0
+/* 802FFE70 002FBAD0 90 01 00 14 */ stw r0, 0x14(r1)
+/* 802FFE74 002FBAD4 80 0D AF 6C */ lwz r0, lbl_8064022C-_SDA_BASE_(r13)
+/* 802FFE78 002FBAD8 93 E1 00 0C */ stw r31, 0xc(r1)
+/* 802FFE7C 002FBADC 2C 00 00 00 */ cmpwi r0, 0
+/* 802FFE80 002FBAE0 40 82 00 38 */ bne lbl_802FFEB8
+/* 802FFE84 002FBAE4 3F E0 80 58 */ lis r31, lbl_8057AAE0@ha
+/* 802FFE88 002FBAE8 3B FF AA E0 */ addi r31, r31, lbl_8057AAE0@l
+/* 802FFE8C 002FBAEC 93 ED AF 6C */ stw r31, lbl_8064022C-_SDA_BASE_(r13)
+/* 802FFE90 002FBAF0 7F E3 FB 78 */ mr r3, r31
+/* 802FFE94 002FBAF4 4B FF 7C A1 */ bl NHTTPi_InitBgnEndInfo
+/* 802FFE98 002FBAF8 38 7F 08 00 */ addi r3, r31, 0x800
+/* 802FFE9C 002FBAFC 4B FF 83 09 */ bl NHTTPi_InitListInfo
+/* 802FFEA0 002FBB00 38 7F 08 08 */ addi r3, r31, 0x808
+/* 802FFEA4 002FBB04 4B FF 8E 11 */ bl NHTTPi_InitRequestInfo
+/* 802FFEA8 002FBB08 38 7F 08 0C */ addi r3, r31, 0x80c
+/* 802FFEAC 002FBB0C 4B FF 85 49 */ bl NHTTPi_InitMutexInfo
+/* 802FFEB0 002FBB10 38 7F 08 40 */ addi r3, r31, 0x840
+/* 802FFEB4 002FBB14 4B FF AB 9D */ bl NHTTPi_InitThreadInfo
+lbl_802FFEB8:
+/* 802FFEB8 002FBB18 83 E1 00 0C */ lwz r31, 0xc(r1)
+/* 802FFEBC 002FBB1C 80 01 00 14 */ lwz r0, 0x14(r1)
+/* 802FFEC0 002FBB20 80 6D AF 6C */ lwz r3, lbl_8064022C-_SDA_BASE_(r13)
+/* 802FFEC4 002FBB24 7C 08 03 A6 */ mtlr r0
+/* 802FFEC8 002FBB28 38 21 00 10 */ addi r1, r1, 0x10
+/* 802FFECC 002FBB2C 4E 80 00 20 */ blr
+
+.global NHTTPi_GetBgnEndInfoP
+NHTTPi_GetBgnEndInfoP:
+/* 802FFED0 002FBB30 4E 80 00 20 */ blr
+
+.global NHTTPi_GetListInfoP
+NHTTPi_GetListInfoP:
+/* 802FFED4 002FBB34 38 63 08 00 */ addi r3, r3, 0x800
+/* 802FFED8 002FBB38 4E 80 00 20 */ blr
+
+.global NHTTPi_GetReqInfoP
+NHTTPi_GetReqInfoP:
+/* 802FFEDC 002FBB3C 38 63 08 08 */ addi r3, r3, 0x808
+/* 802FFEE0 002FBB40 4E 80 00 20 */ blr
+
+.global NHTTPi_GetThreadInfoP
+NHTTPi_GetThreadInfoP:
+/* 802FFEE4 002FBB44 38 63 08 40 */ addi r3, r3, 0x840
+/* 802FFEE8 002FBB48 4E 80 00 20 */ blr
+
+.global NHTTPi_GetMutexInfoP
+NHTTPi_GetMutexInfoP:
+/* 802FFEEC 002FBB4C 38 63 08 0C */ addi r3, r3, 0x80c
+/* 802FFEF0 002FBB50 4E 80 00 20 */ blr
+
+.global NHTTPi_SetVirtualContentLength
+NHTTPi_SetVirtualContentLength:
+/* 802FFEF4 002FBB54 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFEF8 002FBB58 4D 82 00 20 */ beqlr
+/* 802FFEFC 002FBB5C 90 83 00 48 */ stw r4, 0x48(r3)
+/* 802FFF00 002FBB60 4E 80 00 20 */ blr
+
+.global NHTTPi_GetVirtualContentLength
+NHTTPi_GetVirtualContentLength:
+/* 802FFF04 002FBB64 2C 03 00 00 */ cmpwi r3, 0
+/* 802FFF08 002FBB68 41 82 00 0C */ beq lbl_802FFF14
+/* 802FFF0C 002FBB6C 80 63 00 48 */ lwz r3, 0x48(r3)
+/* 802FFF10 002FBB70 4E 80 00 20 */ blr
+lbl_802FFF14:
+/* 802FFF14 002FBB74 38 60 00 00 */ li r3, 0
+/* 802FFF18 002FBB78 4E 80 00 20 */ blr