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