.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global addHdrList addHdrList: /* 802F7E94 002F3AF4 94 21 FF E0 */ stwu r1, -0x20(r1) /* 802F7E98 002F3AF8 7C 08 02 A6 */ mflr r0 /* 802F7E9C 002F3AFC 90 01 00 24 */ stw r0, 0x24(r1) /* 802F7EA0 002F3B00 39 61 00 20 */ addi r11, r1, 0x20 /* 802F7EA4 002F3B04 4B EC F2 81 */ bl _savegpr_26 /* 802F7EA8 002F3B08 83 C3 00 00 */ lwz r30, 0(r3) /* 802F7EAC 002F3B0C 7C 7A 1B 78 */ mr r26, r3 /* 802F7EB0 002F3B10 7C 9B 23 78 */ mr r27, r4 /* 802F7EB4 002F3B14 7C BC 2B 78 */ mr r28, r5 /* 802F7EB8 002F3B18 2C 1E 00 00 */ cmpwi r30, 0 /* 802F7EBC 002F3B1C 7C DD 33 78 */ mr r29, r6 /* 802F7EC0 002F3B20 3B E0 00 00 */ li r31, 0 /* 802F7EC4 002F3B24 41 82 00 54 */ beq lbl_802F7F18 /* 802F7EC8 002F3B28 80 9E 00 08 */ lwz r4, 8(r30) /* 802F7ECC 002F3B2C 7F 83 E3 78 */ mr r3, r28 /* 802F7ED0 002F3B30 48 00 27 B5 */ bl NHTTPi_compareToken /* 802F7ED4 002F3B34 2C 03 00 00 */ cmpwi r3, 0 /* 802F7ED8 002F3B38 41 82 00 3C */ beq lbl_802F7F14 /* 802F7EDC 002F3B3C 83 DE 00 04 */ lwz r30, 4(r30) /* 802F7EE0 002F3B40 48 00 00 24 */ b lbl_802F7F04 lbl_802F7EE4: /* 802F7EE4 002F3B44 80 9E 00 08 */ lwz r4, 8(r30) /* 802F7EE8 002F3B48 7F 83 E3 78 */ mr r3, r28 /* 802F7EEC 002F3B4C 48 00 27 99 */ bl NHTTPi_compareToken /* 802F7EF0 002F3B50 2C 03 00 00 */ cmpwi r3, 0 /* 802F7EF4 002F3B54 40 82 00 0C */ bne lbl_802F7F00 /* 802F7EF8 002F3B58 3B E0 00 01 */ li r31, 1 /* 802F7EFC 002F3B5C 48 00 00 1C */ b lbl_802F7F18 lbl_802F7F00: /* 802F7F00 002F3B60 83 DE 00 04 */ lwz r30, 4(r30) lbl_802F7F04: /* 802F7F04 002F3B64 80 1A 00 00 */ lwz r0, 0(r26) /* 802F7F08 002F3B68 7C 1E 00 40 */ cmplw r30, r0 /* 802F7F0C 002F3B6C 40 82 FF D8 */ bne lbl_802F7EE4 /* 802F7F10 002F3B70 48 00 00 08 */ b lbl_802F7F18 lbl_802F7F14: /* 802F7F14 002F3B74 3B E0 00 01 */ li r31, 1 lbl_802F7F18: /* 802F7F18 002F3B78 2C 1F 00 00 */ cmpwi r31, 0 /* 802F7F1C 002F3B7C 41 82 00 0C */ beq lbl_802F7F28 /* 802F7F20 002F3B80 93 BE 00 0C */ stw r29, 0xc(r30) /* 802F7F24 002F3B84 48 00 00 80 */ b lbl_802F7FA4 lbl_802F7F28: /* 802F7F28 002F3B88 38 60 00 18 */ li r3, 0x18 /* 802F7F2C 002F3B8C 38 80 00 04 */ li r4, 4 /* 802F7F30 002F3B90 4B FF FC 31 */ bl NHTTPi_alloc /* 802F7F34 002F3B94 2C 03 00 00 */ cmpwi r3, 0 /* 802F7F38 002F3B98 40 82 00 18 */ bne lbl_802F7F50 /* 802F7F3C 002F3B9C 7F 63 DB 78 */ mr r3, r27 /* 802F7F40 002F3BA0 38 80 00 01 */ li r4, 1 /* 802F7F44 002F3BA4 4B FF FC BD */ bl NHTTPi_SetError /* 802F7F48 002F3BA8 38 60 00 00 */ li r3, 0 /* 802F7F4C 002F3BAC 48 00 00 5C */ b lbl_802F7FA8 lbl_802F7F50: /* 802F7F50 002F3BB0 93 83 00 08 */ stw r28, 8(r3) /* 802F7F54 002F3BB4 38 00 00 00 */ li r0, 0 /* 802F7F58 002F3BB8 93 A3 00 0C */ stw r29, 0xc(r3) /* 802F7F5C 002F3BBC 90 03 00 10 */ stw r0, 0x10(r3) /* 802F7F60 002F3BC0 90 03 00 14 */ stw r0, 0x14(r3) /* 802F7F64 002F3BC4 80 9A 00 00 */ lwz r4, 0(r26) /* 802F7F68 002F3BC8 2C 04 00 00 */ cmpwi r4, 0 /* 802F7F6C 002F3BCC 41 82 00 2C */ beq lbl_802F7F98 /* 802F7F70 002F3BD0 80 04 00 00 */ lwz r0, 0(r4) /* 802F7F74 002F3BD4 90 03 00 00 */ stw r0, 0(r3) /* 802F7F78 002F3BD8 80 1A 00 00 */ lwz r0, 0(r26) /* 802F7F7C 002F3BDC 90 03 00 04 */ stw r0, 4(r3) /* 802F7F80 002F3BE0 80 9A 00 00 */ lwz r4, 0(r26) /* 802F7F84 002F3BE4 80 84 00 00 */ lwz r4, 0(r4) /* 802F7F88 002F3BE8 90 64 00 04 */ stw r3, 4(r4) /* 802F7F8C 002F3BEC 80 9A 00 00 */ lwz r4, 0(r26) /* 802F7F90 002F3BF0 90 64 00 00 */ stw r3, 0(r4) /* 802F7F94 002F3BF4 48 00 00 10 */ b lbl_802F7FA4 lbl_802F7F98: /* 802F7F98 002F3BF8 90 63 00 04 */ stw r3, 4(r3) /* 802F7F9C 002F3BFC 90 63 00 00 */ stw r3, 0(r3) /* 802F7FA0 002F3C00 90 7A 00 00 */ stw r3, 0(r26) lbl_802F7FA4: /* 802F7FA4 002F3C04 38 60 00 01 */ li r3, 1 lbl_802F7FA8: /* 802F7FA8 002F3C08 39 61 00 20 */ addi r11, r1, 0x20 /* 802F7FAC 002F3C0C 4B EC F1 C5 */ bl _restgpr_26 /* 802F7FB0 002F3C10 80 01 00 24 */ lwz r0, 0x24(r1) /* 802F7FB4 002F3C14 7C 08 03 A6 */ mtlr r0 /* 802F7FB8 002F3C18 38 21 00 20 */ addi r1, r1, 0x20 /* 802F7FBC 002F3C1C 4E 80 00 20 */ blr .global NHTTPi_getHdrFromList NHTTPi_getHdrFromList: /* 802F7FC0 002F3C20 80 A3 00 00 */ lwz r5, 0(r3) /* 802F7FC4 002F3C24 2C 05 00 00 */ cmpwi r5, 0 /* 802F7FC8 002F3C28 41 82 00 38 */ beq lbl_802F8000 /* 802F7FCC 002F3C2C 80 85 00 00 */ lwz r4, 0(r5) /* 802F7FD0 002F3C30 7C 05 20 40 */ cmplw r5, r4 /* 802F7FD4 002F3C34 41 82 00 24 */ beq lbl_802F7FF8 /* 802F7FD8 002F3C38 80 05 00 04 */ lwz r0, 4(r5) /* 802F7FDC 002F3C3C 90 04 00 04 */ stw r0, 4(r4) /* 802F7FE0 002F3C40 80 05 00 00 */ lwz r0, 0(r5) /* 802F7FE4 002F3C44 80 85 00 04 */ lwz r4, 4(r5) /* 802F7FE8 002F3C48 90 04 00 00 */ stw r0, 0(r4) /* 802F7FEC 002F3C4C 80 05 00 04 */ lwz r0, 4(r5) /* 802F7FF0 002F3C50 90 03 00 00 */ stw r0, 0(r3) /* 802F7FF4 002F3C54 48 00 00 0C */ b lbl_802F8000 lbl_802F7FF8: /* 802F7FF8 002F3C58 38 00 00 00 */ li r0, 0 /* 802F7FFC 002F3C5C 90 03 00 00 */ stw r0, 0(r3) lbl_802F8000: /* 802F8000 002F3C60 7C A3 2B 78 */ mr r3, r5 /* 802F8004 002F3C64 4E 80 00 20 */ blr .global NHTTP_AddHeaderField NHTTP_AddHeaderField: /* 802F8008 002F3C68 80 03 00 04 */ lwz r0, 4(r3) /* 802F800C 002F3C6C 2C 00 00 00 */ cmpwi r0, 0 /* 802F8010 002F3C70 41 82 00 0C */ beq lbl_802F801C /* 802F8014 002F3C74 38 60 00 00 */ li r3, 0 /* 802F8018 002F3C78 4E 80 00 20 */ blr lbl_802F801C: /* 802F801C 002F3C7C 38 63 00 30 */ addi r3, r3, 0x30 /* 802F8020 002F3C80 4B FF FE 74 */ b addHdrList /* 802F8024 002F3C84 4E 80 00 20 */ blr .global NHTTP_AddPostDataAscii NHTTP_AddPostDataAscii: /* 802F8028 002F3C88 94 21 FF C0 */ stwu r1, -0x40(r1) /* 802F802C 002F3C8C 7C 08 02 A6 */ mflr r0 /* 802F8030 002F3C90 90 01 00 44 */ stw r0, 0x44(r1) /* 802F8034 002F3C94 39 61 00 40 */ addi r11, r1, 0x40 /* 802F8038 002F3C98 4B EC F0 D9 */ bl _savegpr_21 /* 802F803C 002F3C9C 80 03 00 04 */ lwz r0, 4(r3) /* 802F8040 002F3CA0 7C 7B 1B 78 */ mr r27, r3 /* 802F8044 002F3CA4 7C 9C 23 78 */ mr r28, r4 /* 802F8048 002F3CA8 7C BD 2B 78 */ mr r29, r5 /* 802F804C 002F3CAC 2C 00 00 00 */ cmpwi r0, 0 /* 802F8050 002F3CB0 7C D5 33 78 */ mr r21, r6 /* 802F8054 002F3CB4 3B E0 00 00 */ li r31, 0 /* 802F8058 002F3CB8 3B C0 00 00 */ li r30, 0 /* 802F805C 002F3CBC 41 82 00 0C */ beq lbl_802F8068 /* 802F8060 002F3CC0 38 60 00 00 */ li r3, 0 /* 802F8064 002F3CC4 48 00 01 28 */ b lbl_802F818C lbl_802F8068: /* 802F8068 002F3CC8 80 03 00 10 */ lwz r0, 0x10(r3) /* 802F806C 002F3CCC 2C 00 00 00 */ cmpwi r0, 0 /* 802F8070 002F3CD0 41 82 00 0C */ beq lbl_802F807C /* 802F8074 002F3CD4 38 60 00 00 */ li r3, 0 /* 802F8078 002F3CD8 48 00 01 14 */ b lbl_802F818C lbl_802F807C: /* 802F807C 002F3CDC 2C 06 00 00 */ cmpwi r6, 0 /* 802F8080 002F3CE0 41 82 00 10 */ beq lbl_802F8090 /* 802F8084 002F3CE4 7E A3 AB 78 */ mr r3, r21 /* 802F8088 002F3CE8 48 00 20 59 */ bl NHTTPi_strlen /* 802F808C 002F3CEC 7C 7E 1B 78 */ mr r30, r3 lbl_802F8090: /* 802F8090 002F3CF0 7E A3 AB 78 */ mr r3, r21 /* 802F8094 002F3CF4 7F C4 F3 78 */ mr r4, r30 /* 802F8098 002F3CF8 38 BB 00 3A */ addi r5, r27, 0x3a /* 802F809C 002F3CFC 38 C0 00 12 */ li r6, 0x12 /* 802F80A0 002F3D00 48 00 27 29 */ bl NHTTPi_memfind /* 802F80A4 002F3D04 2C 03 00 00 */ cmpwi r3, 0 /* 802F80A8 002F3D08 40 80 00 0C */ bge lbl_802F80B4 /* 802F80AC 002F3D0C 38 00 00 01 */ li r0, 1 /* 802F80B0 002F3D10 48 00 00 A4 */ b lbl_802F8154 lbl_802F80B4: /* 802F80B4 002F3D14 3C 60 80 40 */ lis r3, lbl_803FE108@ha /* 802F80B8 002F3D18 3B 00 00 13 */ li r24, 0x13 /* 802F80BC 002F3D1C 38 63 E1 08 */ addi r3, r3, lbl_803FE108@l /* 802F80C0 002F3D20 3A E3 00 13 */ addi r23, r3, 0x13 lbl_802F80C4: /* 802F80C4 002F3D24 7E DB C2 14 */ add r22, r27, r24 /* 802F80C8 002F3D28 88 17 00 00 */ lbz r0, 0(r23) /* 802F80CC 002F3D2C 8B 36 00 38 */ lbz r25, 0x38(r22) /* 802F80D0 002F3D30 7C 1A 07 74 */ extsb r26, r0 lbl_802F80D4: /* 802F80D4 002F3D34 57 23 06 3E */ clrlwi r3, r25, 0x18 /* 802F80D8 002F3D38 38 63 00 01 */ addi r3, r3, 1 /* 802F80DC 002F3D3C 54 60 06 3E */ clrlwi r0, r3, 0x18 /* 802F80E0 002F3D40 28 00 00 7B */ cmplwi r0, 0x7b /* 802F80E4 002F3D44 40 82 00 0C */ bne lbl_802F80F0 /* 802F80E8 002F3D48 38 60 00 30 */ li r3, 0x30 /* 802F80EC 002F3D4C 48 00 00 20 */ b lbl_802F810C lbl_802F80F0: /* 802F80F0 002F3D50 28 00 00 5B */ cmplwi r0, 0x5b /* 802F80F4 002F3D54 40 82 00 0C */ bne lbl_802F8100 /* 802F80F8 002F3D58 38 60 00 61 */ li r3, 0x61 /* 802F80FC 002F3D5C 48 00 00 10 */ b lbl_802F810C lbl_802F8100: /* 802F8100 002F3D60 28 00 00 3A */ cmplwi r0, 0x3a /* 802F8104 002F3D64 40 82 00 08 */ bne lbl_802F810C /* 802F8108 002F3D68 38 60 00 41 */ li r3, 0x41 lbl_802F810C: /* 802F810C 002F3D6C 7C 79 07 74 */ extsb r25, r3 /* 802F8110 002F3D70 98 76 00 38 */ stb r3, 0x38(r22) /* 802F8114 002F3D74 7C 19 D0 00 */ cmpw r25, r26 /* 802F8118 002F3D78 41 82 00 28 */ beq lbl_802F8140 /* 802F811C 002F3D7C 7E A3 AB 78 */ mr r3, r21 /* 802F8120 002F3D80 7F C4 F3 78 */ mr r4, r30 /* 802F8124 002F3D84 38 BB 00 3A */ addi r5, r27, 0x3a /* 802F8128 002F3D88 38 C0 00 12 */ li r6, 0x12 /* 802F812C 002F3D8C 48 00 26 9D */ bl NHTTPi_memfind /* 802F8130 002F3D90 2C 03 00 00 */ cmpwi r3, 0 /* 802F8134 002F3D94 40 80 FF A0 */ bge lbl_802F80D4 /* 802F8138 002F3D98 38 00 00 01 */ li r0, 1 /* 802F813C 002F3D9C 48 00 00 18 */ b lbl_802F8154 lbl_802F8140: /* 802F8140 002F3DA0 3B 18 FF FF */ addi r24, r24, -1 /* 802F8144 002F3DA4 3A F7 FF FF */ addi r23, r23, -1 /* 802F8148 002F3DA8 2C 18 00 02 */ cmpwi r24, 2 /* 802F814C 002F3DAC 40 80 FF 78 */ bge lbl_802F80C4 /* 802F8150 002F3DB0 38 00 00 00 */ li r0, 0 lbl_802F8154: /* 802F8154 002F3DB4 2C 00 00 00 */ cmpwi r0, 0 /* 802F8158 002F3DB8 41 82 00 30 */ beq lbl_802F8188 /* 802F815C 002F3DBC 7F 84 E3 78 */ mr r4, r28 /* 802F8160 002F3DC0 7F A5 EB 78 */ mr r5, r29 /* 802F8164 002F3DC4 7E A6 AB 78 */ mr r6, r21 /* 802F8168 002F3DC8 38 7B 00 34 */ addi r3, r27, 0x34 /* 802F816C 002F3DCC 4B FF FD 29 */ bl addHdrList /* 802F8170 002F3DD0 2C 03 00 00 */ cmpwi r3, 0 /* 802F8174 002F3DD4 7C 7F 1B 78 */ mr r31, r3 /* 802F8178 002F3DD8 41 82 00 10 */ beq lbl_802F8188 /* 802F817C 002F3DDC 80 7B 00 34 */ lwz r3, 0x34(r27) /* 802F8180 002F3DE0 80 63 00 00 */ lwz r3, 0(r3) /* 802F8184 002F3DE4 93 C3 00 10 */ stw r30, 0x10(r3) lbl_802F8188: /* 802F8188 002F3DE8 7F E3 FB 78 */ mr r3, r31 lbl_802F818C: /* 802F818C 002F3DEC 39 61 00 40 */ addi r11, r1, 0x40 /* 802F8190 002F3DF0 4B EC EF CD */ bl _restgpr_21 /* 802F8194 002F3DF4 80 01 00 44 */ lwz r0, 0x44(r1) /* 802F8198 002F3DF8 7C 08 03 A6 */ mtlr r0 /* 802F819C 002F3DFC 38 21 00 40 */ addi r1, r1, 0x40 /* 802F81A0 002F3E00 4E 80 00 20 */ blr