.include "macros.inc" .section .text, "ax" # 0x80006980 - 0x803E1E60 .global strzcpy strzcpy: /* 80347F50 00343BB0 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80347F54 00343BB4 7C 08 02 A6 */ mflr r0 /* 80347F58 00343BB8 90 01 00 14 */ stw r0, 0x14(r1) /* 80347F5C 00343BBC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80347F60 00343BC0 7C BF 2B 78 */ mr r31, r5 /* 80347F64 00343BC4 93 C1 00 08 */ stw r30, 8(r1) /* 80347F68 00343BC8 7C 7E 1B 78 */ mr r30, r3 /* 80347F6C 00343BCC 4B E8 64 25 */ bl strncpy /* 80347F70 00343BD0 7C 7E FA 14 */ add r3, r30, r31 /* 80347F74 00343BD4 38 00 00 00 */ li r0, 0 /* 80347F78 00343BD8 98 03 FF FF */ stb r0, -1(r3) /* 80347F7C 00343BDC 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80347F80 00343BE0 83 C1 00 08 */ lwz r30, 8(r1) /* 80347F84 00343BE4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80347F88 00343BE8 7C 08 03 A6 */ mtlr r0 /* 80347F8C 00343BEC 38 21 00 10 */ addi r1, r1, 0x10 /* 80347F90 00343BF0 4E 80 00 20 */ blr .global gpiCheckForError gpiCheckForError: /* 80347F94 00343BF4 94 21 FF D0 */ stwu r1, -0x30(r1) /* 80347F98 00343BF8 7C 08 02 A6 */ mflr r0 /* 80347F9C 00343BFC 90 01 00 34 */ stw r0, 0x34(r1) /* 80347FA0 00343C00 93 E1 00 2C */ stw r31, 0x2c(r1) /* 80347FA4 00343C04 93 C1 00 28 */ stw r30, 0x28(r1) /* 80347FA8 00343C08 7C BE 2B 78 */ mr r30, r5 /* 80347FAC 00343C0C 38 A0 00 07 */ li r5, 7 /* 80347FB0 00343C10 93 A1 00 24 */ stw r29, 0x24(r1) /* 80347FB4 00343C14 7C 9D 23 78 */ mr r29, r4 /* 80347FB8 00343C18 38 8D 92 A8 */ addi r4, r13, lbl_8063E568-_SDA_BASE_ /* 80347FBC 00343C1C 93 81 00 20 */ stw r28, 0x20(r1) /* 80347FC0 00343C20 7C 7C 1B 78 */ mr r28, r3 /* 80347FC4 00343C24 83 E3 00 00 */ lwz r31, 0(r3) /* 80347FC8 00343C28 7F A3 EB 78 */ mr r3, r29 /* 80347FCC 00343C2C 4B E8 65 9D */ bl strncmp /* 80347FD0 00343C30 2C 03 00 00 */ cmpwi r3, 0 /* 80347FD4 00343C34 40 82 00 94 */ bne lbl_80348068 /* 80347FD8 00343C38 7F A3 EB 78 */ mr r3, r29 /* 80347FDC 00343C3C 38 A1 00 08 */ addi r5, r1, 8 /* 80347FE0 00343C40 38 8D 92 B0 */ addi r4, r13, lbl_8063E570-_SDA_BASE_ /* 80347FE4 00343C44 38 C0 00 10 */ li r6, 0x10 /* 80347FE8 00343C48 48 00 00 A5 */ bl gpiValueForKey /* 80347FEC 00343C4C 2C 03 00 00 */ cmpwi r3, 0 /* 80347FF0 00343C50 41 82 00 10 */ beq lbl_80348000 /* 80347FF4 00343C54 38 61 00 08 */ addi r3, r1, 8 /* 80347FF8 00343C58 4B E8 87 15 */ bl atoi /* 80347FFC 00343C5C 90 7F 04 34 */ stw r3, 0x434(r31) lbl_80348000: /* 80348000 00343C60 3C 80 80 45 */ lis r4, lbl_8044B588@ha /* 80348004 00343C64 7F A3 EB 78 */ mr r3, r29 /* 80348008 00343C68 7F E5 FB 78 */ mr r5, r31 /* 8034800C 00343C6C 38 C0 01 00 */ li r6, 0x100 /* 80348010 00343C70 38 84 B5 88 */ addi r4, r4, lbl_8044B588@l /* 80348014 00343C74 48 00 00 79 */ bl gpiValueForKey /* 80348018 00343C78 2C 03 00 00 */ cmpwi r3, 0 /* 8034801C 00343C7C 40 82 00 0C */ bne lbl_80348028 /* 80348020 00343C80 38 00 00 00 */ li r0, 0 /* 80348024 00343C84 98 1F 00 00 */ stb r0, 0(r31) lbl_80348028: /* 80348028 00343C88 2C 1E 00 00 */ cmpwi r30, 0 /* 8034802C 00343C8C 41 82 00 34 */ beq lbl_80348060 /* 80348030 00343C90 7F A3 EB 78 */ mr r3, r29 /* 80348034 00343C94 38 8D 92 B8 */ addi r4, r13, lbl_8063E578-_SDA_BASE_ /* 80348038 00343C98 4B E8 67 69 */ bl strstr /* 8034803C 00343C9C 7C 03 00 D0 */ neg r0, r3 /* 80348040 00343CA0 38 80 00 04 */ li r4, 4 /* 80348044 00343CA4 7C 00 1B 78 */ or r0, r0, r3 /* 80348048 00343CA8 7F 83 E3 78 */ mr r3, r28 /* 8034804C 00343CAC 54 05 0F FE */ srwi r5, r0, 0x1f /* 80348050 00343CB0 7C 05 00 D0 */ neg r0, r5 /* 80348054 00343CB4 7C 00 2B 78 */ or r0, r0, r5 /* 80348058 00343CB8 54 05 0F FE */ srwi r5, r0, 0x1f /* 8034805C 00343CBC 4B FF 7C 0D */ bl gpiCallErrorCallback lbl_80348060: /* 80348060 00343CC0 38 60 00 01 */ li r3, 1 /* 80348064 00343CC4 48 00 00 08 */ b lbl_8034806C lbl_80348068: /* 80348068 00343CC8 38 60 00 00 */ li r3, 0 lbl_8034806C: /* 8034806C 00343CCC 80 01 00 34 */ lwz r0, 0x34(r1) /* 80348070 00343CD0 83 E1 00 2C */ lwz r31, 0x2c(r1) /* 80348074 00343CD4 83 C1 00 28 */ lwz r30, 0x28(r1) /* 80348078 00343CD8 83 A1 00 24 */ lwz r29, 0x24(r1) /* 8034807C 00343CDC 83 81 00 20 */ lwz r28, 0x20(r1) /* 80348080 00343CE0 7C 08 03 A6 */ mtlr r0 /* 80348084 00343CE4 38 21 00 30 */ addi r1, r1, 0x30 /* 80348088 00343CE8 4E 80 00 20 */ blr .global gpiValueForKey gpiValueForKey: /* 8034808C 00343CEC 94 21 FF E0 */ stwu r1, -0x20(r1) /* 80348090 00343CF0 7C 08 02 A6 */ mflr r0 /* 80348094 00343CF4 90 01 00 24 */ stw r0, 0x24(r1) /* 80348098 00343CF8 39 61 00 20 */ addi r11, r1, 0x20 /* 8034809C 00343CFC 4B E7 F0 8D */ bl _savegpr_27 /* 803480A0 00343D00 88 04 00 00 */ lbz r0, 0(r4) /* 803480A4 00343D04 7C 9B 23 78 */ mr r27, r4 /* 803480A8 00343D08 7C BC 2B 78 */ mr r28, r5 /* 803480AC 00343D0C 7C DD 33 78 */ mr r29, r6 /* 803480B0 00343D10 7C 1E 07 74 */ extsb r30, r0 /* 803480B4 00343D14 4B E8 66 ED */ bl strstr /* 803480B8 00343D18 2C 03 00 00 */ cmpwi r3, 0 /* 803480BC 00343D1C 7C 7F 1B 78 */ mr r31, r3 /* 803480C0 00343D20 40 82 00 0C */ bne lbl_803480CC /* 803480C4 00343D24 38 60 00 00 */ li r3, 0 /* 803480C8 00343D28 48 00 00 58 */ b lbl_80348120 lbl_803480CC: /* 803480CC 00343D2C 7F 63 DB 78 */ mr r3, r27 /* 803480D0 00343D30 4B E7 EA 95 */ bl strlen /* 803480D4 00343D34 7F 84 E3 78 */ mr r4, r28 /* 803480D8 00343D38 38 BD FF FF */ addi r5, r29, -1 /* 803480DC 00343D3C 7C 7F 1A 14 */ add r3, r31, r3 /* 803480E0 00343D40 38 C0 00 00 */ li r6, 0 /* 803480E4 00343D44 48 00 00 14 */ b lbl_803480F8 lbl_803480E8: /* 803480E8 00343D48 98 04 00 00 */ stb r0, 0(r4) /* 803480EC 00343D4C 38 C6 00 01 */ addi r6, r6, 1 /* 803480F0 00343D50 38 63 00 01 */ addi r3, r3, 1 /* 803480F4 00343D54 38 84 00 01 */ addi r4, r4, 1 lbl_803480F8: /* 803480F8 00343D58 7C 06 28 00 */ cmpw r6, r5 /* 803480FC 00343D5C 40 80 00 18 */ bge lbl_80348114 /* 80348100 00343D60 88 03 00 00 */ lbz r0, 0(r3) /* 80348104 00343D64 7C 00 07 75 */ extsb. r0, r0 /* 80348108 00343D68 41 82 00 0C */ beq lbl_80348114 /* 8034810C 00343D6C 7C 00 F0 00 */ cmpw r0, r30 /* 80348110 00343D70 40 82 FF D8 */ bne lbl_803480E8 lbl_80348114: /* 80348114 00343D74 38 00 00 00 */ li r0, 0 /* 80348118 00343D78 38 60 00 01 */ li r3, 1 /* 8034811C 00343D7C 7C 1C 31 AE */ stbx r0, r28, r6 lbl_80348120: /* 80348120 00343D80 39 61 00 20 */ addi r11, r1, 0x20 /* 80348124 00343D84 4B E7 F0 51 */ bl _restgpr_27 /* 80348128 00343D88 80 01 00 24 */ lwz r0, 0x24(r1) /* 8034812C 00343D8C 7C 08 03 A6 */ mtlr r0 /* 80348130 00343D90 38 21 00 20 */ addi r1, r1, 0x20 /* 80348134 00343D94 4E 80 00 20 */ blr .global gpiCheckSocketConnect gpiCheckSocketConnect: /* 80348138 00343D98 94 21 FF E0 */ stwu r1, -0x20(r1) /* 8034813C 00343D9C 7C 08 02 A6 */ mflr r0 /* 80348140 00343DA0 90 01 00 24 */ stw r0, 0x24(r1) /* 80348144 00343DA4 38 C1 00 08 */ addi r6, r1, 8 /* 80348148 00343DA8 93 E1 00 1C */ stw r31, 0x1c(r1) /* 8034814C 00343DAC 3B E0 00 00 */ li r31, 0 /* 80348150 00343DB0 93 C1 00 18 */ stw r30, 0x18(r1) /* 80348154 00343DB4 7C BE 2B 78 */ mr r30, r5 /* 80348158 00343DB8 38 A1 00 0C */ addi r5, r1, 0xc /* 8034815C 00343DBC 93 A1 00 14 */ stw r29, 0x14(r1) /* 80348160 00343DC0 7C 7D 1B 78 */ mr r29, r3 /* 80348164 00343DC4 7C 83 23 78 */ mr r3, r4 /* 80348168 00343DC8 38 80 00 00 */ li r4, 0 /* 8034816C 00343DCC 93 E1 00 0C */ stw r31, 0xc(r1) /* 80348170 00343DD0 93 E1 00 08 */ stw r31, 8(r1) /* 80348174 00343DD4 4B FE FE 3D */ bl GSISocketSelect /* 80348178 00343DD8 2C 03 FF FF */ cmpwi r3, -1 /* 8034817C 00343DDC 40 82 00 40 */ bne lbl_803481BC /* 80348180 00343DE0 83 DD 00 00 */ lwz r30, 0(r29) /* 80348184 00343DE4 3C 80 80 45 */ lis r4, lbl_8044B598@ha /* 80348188 00343DE8 38 84 B5 98 */ addi r4, r4, lbl_8044B598@l /* 8034818C 00343DEC 38 A0 01 00 */ li r5, 0x100 /* 80348190 00343DF0 7F C3 F3 78 */ mr r3, r30 /* 80348194 00343DF4 4B E8 61 FD */ bl strncpy /* 80348198 00343DF8 9B FE 00 FF */ stb r31, 0xff(r30) /* 8034819C 00343DFC 38 00 00 05 */ li r0, 5 /* 803481A0 00343E00 7F A3 EB 78 */ mr r3, r29 /* 803481A4 00343E04 38 80 00 03 */ li r4, 3 /* 803481A8 00343E08 90 1E 04 34 */ stw r0, 0x434(r30) /* 803481AC 00343E0C 38 A0 00 01 */ li r5, 1 /* 803481B0 00343E10 4B FF 7A B9 */ bl gpiCallErrorCallback /* 803481B4 00343E14 38 60 00 03 */ li r3, 3 /* 803481B8 00343E18 48 00 00 50 */ b lbl_80348208 lbl_803481BC: /* 803481BC 00343E1C 2C 03 00 00 */ cmpwi r3, 0 /* 803481C0 00343E20 40 81 00 3C */ ble lbl_803481FC /* 803481C4 00343E24 80 01 00 08 */ lwz r0, 8(r1) /* 803481C8 00343E28 2C 00 00 00 */ cmpwi r0, 0 /* 803481CC 00343E2C 41 82 00 14 */ beq lbl_803481E0 /* 803481D0 00343E30 38 00 00 04 */ li r0, 4 /* 803481D4 00343E34 38 60 00 00 */ li r3, 0 /* 803481D8 00343E38 90 1E 00 00 */ stw r0, 0(r30) /* 803481DC 00343E3C 48 00 00 2C */ b lbl_80348208 lbl_803481E0: /* 803481E0 00343E40 80 01 00 0C */ lwz r0, 0xc(r1) /* 803481E4 00343E44 2C 00 00 00 */ cmpwi r0, 0 /* 803481E8 00343E48 41 82 00 14 */ beq lbl_803481FC /* 803481EC 00343E4C 38 00 00 03 */ li r0, 3 /* 803481F0 00343E50 38 60 00 00 */ li r3, 0 /* 803481F4 00343E54 90 1E 00 00 */ stw r0, 0(r30) /* 803481F8 00343E58 48 00 00 10 */ b lbl_80348208 lbl_803481FC: /* 803481FC 00343E5C 38 00 00 00 */ li r0, 0 /* 80348200 00343E60 38 60 00 00 */ li r3, 0 /* 80348204 00343E64 90 1E 00 00 */ stw r0, 0(r30) lbl_80348208: /* 80348208 00343E68 80 01 00 24 */ lwz r0, 0x24(r1) /* 8034820C 00343E6C 83 E1 00 1C */ lwz r31, 0x1c(r1) /* 80348210 00343E70 83 C1 00 18 */ lwz r30, 0x18(r1) /* 80348214 00343E74 83 A1 00 14 */ lwz r29, 0x14(r1) /* 80348218 00343E78 7C 08 03 A6 */ mtlr r0 /* 8034821C 00343E7C 38 21 00 20 */ addi r1, r1, 0x20 /* 80348220 00343E80 4E 80 00 20 */ blr .global gpiReadKeyAndValue gpiReadKeyAndValue: /* 80348224 00343E84 94 21 FF F0 */ stwu r1, -0x10(r1) /* 80348228 00343E88 7C 08 02 A6 */ mflr r0 /* 8034822C 00343E8C 90 01 00 14 */ stw r0, 0x14(r1) /* 80348230 00343E90 93 E1 00 0C */ stw r31, 0xc(r1) /* 80348234 00343E94 7C 7F 1B 78 */ mr r31, r3 /* 80348238 00343E98 93 C1 00 08 */ stw r30, 8(r1) /* 8034823C 00343E9C 80 05 00 00 */ lwz r0, 0(r5) /* 80348240 00343EA0 7D 24 02 14 */ add r9, r4, r0 /* 80348244 00343EA4 7C 04 00 AE */ lbzx r0, r4, r0 /* 80348248 00343EA8 7D 28 4B 78 */ mr r8, r9 /* 8034824C 00343EAC 2C 00 00 5C */ cmpwi r0, 0x5c /* 80348250 00343EB0 39 29 00 01 */ addi r9, r9, 1 /* 80348254 00343EB4 41 82 00 44 */ beq lbl_80348298 /* 80348258 00343EB8 83 C3 00 00 */ lwz r30, 0(r3) /* 8034825C 00343EBC 3C 80 80 45 */ lis r4, lbl_8044B5D0@ha /* 80348260 00343EC0 38 84 B5 D0 */ addi r4, r4, lbl_8044B5D0@l /* 80348264 00343EC4 38 A0 01 00 */ li r5, 0x100 /* 80348268 00343EC8 7F C3 F3 78 */ mr r3, r30 /* 8034826C 00343ECC 4B E8 61 25 */ bl strncpy /* 80348270 00343ED0 38 60 00 00 */ li r3, 0 /* 80348274 00343ED4 38 00 00 01 */ li r0, 1 /* 80348278 00343ED8 98 7E 00 FF */ stb r3, 0xff(r30) /* 8034827C 00343EDC 7F E3 FB 78 */ mr r3, r31 /* 80348280 00343EE0 38 80 00 03 */ li r4, 3 /* 80348284 00343EE4 38 A0 00 01 */ li r5, 1 /* 80348288 00343EE8 90 1E 04 34 */ stw r0, 0x434(r30) /* 8034828C 00343EEC 4B FF 79 DD */ bl gpiCallErrorCallback /* 80348290 00343EF0 38 60 00 03 */ li r3, 3 /* 80348294 00343EF4 48 00 01 5C */ b lbl_803483F0 lbl_80348298: /* 80348298 00343EF8 38 80 00 00 */ li r4, 0 /* 8034829C 00343EFC 48 00 00 A0 */ b lbl_8034833C lbl_803482A0: /* 803482A0 00343F00 2C 00 00 00 */ cmpwi r0, 0 /* 803482A4 00343F04 40 82 00 44 */ bne lbl_803482E8 /* 803482A8 00343F08 83 C3 00 00 */ lwz r30, 0(r3) /* 803482AC 00343F0C 3C 80 80 45 */ lis r4, lbl_8044B5D0@ha /* 803482B0 00343F10 38 84 B5 D0 */ addi r4, r4, lbl_8044B5D0@l /* 803482B4 00343F14 38 A0 01 00 */ li r5, 0x100 /* 803482B8 00343F18 7F C3 F3 78 */ mr r3, r30 /* 803482BC 00343F1C 4B E8 60 D5 */ bl strncpy /* 803482C0 00343F20 38 60 00 00 */ li r3, 0 /* 803482C4 00343F24 38 00 00 01 */ li r0, 1 /* 803482C8 00343F28 98 7E 00 FF */ stb r3, 0xff(r30) /* 803482CC 00343F2C 7F E3 FB 78 */ mr r3, r31 /* 803482D0 00343F30 38 80 00 03 */ li r4, 3 /* 803482D4 00343F34 38 A0 00 01 */ li r5, 1 /* 803482D8 00343F38 90 1E 04 34 */ stw r0, 0x434(r30) /* 803482DC 00343F3C 4B FF 79 8D */ bl gpiCallErrorCallback /* 803482E0 00343F40 38 60 00 03 */ li r3, 3 /* 803482E4 00343F44 48 00 01 0C */ b lbl_803483F0 lbl_803482E8: /* 803482E8 00343F48 2C 04 01 FF */ cmpwi r4, 0x1ff /* 803482EC 00343F4C 40 82 00 44 */ bne lbl_80348330 /* 803482F0 00343F50 83 C3 00 00 */ lwz r30, 0(r3) /* 803482F4 00343F54 3C 80 80 45 */ lis r4, lbl_8044B5D0@ha /* 803482F8 00343F58 38 84 B5 D0 */ addi r4, r4, lbl_8044B5D0@l /* 803482FC 00343F5C 38 A0 01 00 */ li r5, 0x100 /* 80348300 00343F60 7F C3 F3 78 */ mr r3, r30 /* 80348304 00343F64 4B E8 60 8D */ bl strncpy /* 80348308 00343F68 38 60 00 00 */ li r3, 0 /* 8034830C 00343F6C 38 00 00 01 */ li r0, 1 /* 80348310 00343F70 98 7E 00 FF */ stb r3, 0xff(r30) /* 80348314 00343F74 7F E3 FB 78 */ mr r3, r31 /* 80348318 00343F78 38 80 00 03 */ li r4, 3 /* 8034831C 00343F7C 38 A0 00 01 */ li r5, 1 /* 80348320 00343F80 90 1E 04 34 */ stw r0, 0x434(r30) /* 80348324 00343F84 4B FF 79 45 */ bl gpiCallErrorCallback /* 80348328 00343F88 38 60 00 03 */ li r3, 3 /* 8034832C 00343F8C 48 00 00 C4 */ b lbl_803483F0 lbl_80348330: /* 80348330 00343F90 98 06 00 00 */ stb r0, 0(r6) /* 80348334 00343F94 38 C6 00 01 */ addi r6, r6, 1 /* 80348338 00343F98 38 84 00 01 */ addi r4, r4, 1 lbl_8034833C: /* 8034833C 00343F9C 88 09 00 00 */ lbz r0, 0(r9) /* 80348340 00343FA0 39 29 00 01 */ addi r9, r9, 1 /* 80348344 00343FA4 7C 00 07 74 */ extsb r0, r0 /* 80348348 00343FA8 2C 00 00 5C */ cmpwi r0, 0x5c /* 8034834C 00343FAC 40 82 FF 54 */ bne lbl_803482A0 /* 80348350 00343FB0 38 00 00 00 */ li r0, 0 /* 80348354 00343FB4 38 80 00 00 */ li r4, 0 /* 80348358 00343FB8 98 06 00 00 */ stb r0, 0(r6) /* 8034835C 00343FBC 48 00 00 58 */ b lbl_803483B4 lbl_80348360: /* 80348360 00343FC0 2C 04 01 FF */ cmpwi r4, 0x1ff /* 80348364 00343FC4 40 82 00 44 */ bne lbl_803483A8 /* 80348368 00343FC8 83 C3 00 00 */ lwz r30, 0(r3) /* 8034836C 00343FCC 3C 80 80 45 */ lis r4, lbl_8044B5D0@ha /* 80348370 00343FD0 38 84 B5 D0 */ addi r4, r4, lbl_8044B5D0@l /* 80348374 00343FD4 38 A0 01 00 */ li r5, 0x100 /* 80348378 00343FD8 7F C3 F3 78 */ mr r3, r30 /* 8034837C 00343FDC 4B E8 60 15 */ bl strncpy /* 80348380 00343FE0 38 60 00 00 */ li r3, 0 /* 80348384 00343FE4 38 00 00 01 */ li r0, 1 /* 80348388 00343FE8 98 7E 00 FF */ stb r3, 0xff(r30) /* 8034838C 00343FEC 7F E3 FB 78 */ mr r3, r31 /* 80348390 00343FF0 38 80 00 03 */ li r4, 3 /* 80348394 00343FF4 38 A0 00 01 */ li r5, 1 /* 80348398 00343FF8 90 1E 04 34 */ stw r0, 0x434(r30) /* 8034839C 00343FFC 4B FF 78 CD */ bl gpiCallErrorCallback /* 803483A0 00344000 38 60 00 03 */ li r3, 3 /* 803483A4 00344004 48 00 00 4C */ b lbl_803483F0 lbl_803483A8: /* 803483A8 00344008 98 07 00 00 */ stb r0, 0(r7) /* 803483AC 0034400C 38 E7 00 01 */ addi r7, r7, 1 /* 803483B0 00344010 38 84 00 01 */ addi r4, r4, 1 lbl_803483B4: /* 803483B4 00344014 88 09 00 00 */ lbz r0, 0(r9) /* 803483B8 00344018 39 29 00 01 */ addi r9, r9, 1 /* 803483BC 0034401C 7C 00 07 74 */ extsb r0, r0 /* 803483C0 00344020 2C 00 00 5C */ cmpwi r0, 0x5c /* 803483C4 00344024 41 82 00 0C */ beq lbl_803483D0 /* 803483C8 00344028 2C 00 00 00 */ cmpwi r0, 0 /* 803483CC 0034402C 40 82 FF 94 */ bne lbl_80348360 lbl_803483D0: /* 803483D0 00344030 38 60 00 00 */ li r3, 0 /* 803483D4 00344034 7C 08 48 50 */ subf r0, r8, r9 /* 803483D8 00344038 98 67 00 00 */ stb r3, 0(r7) /* 803483DC 0034403C 38 60 00 00 */ li r3, 0 /* 803483E0 00344040 80 85 00 00 */ lwz r4, 0(r5) /* 803483E4 00344044 7C 80 22 14 */ add r4, r0, r4 /* 803483E8 00344048 38 04 FF FF */ addi r0, r4, -1 /* 803483EC 0034404C 90 05 00 00 */ stw r0, 0(r5) lbl_803483F0: /* 803483F0 00344050 80 01 00 14 */ lwz r0, 0x14(r1) /* 803483F4 00344054 83 E1 00 0C */ lwz r31, 0xc(r1) /* 803483F8 00344058 83 C1 00 08 */ lwz r30, 8(r1) /* 803483FC 0034405C 7C 08 03 A6 */ mtlr r0 /* 80348400 00344060 38 21 00 10 */ addi r1, r1, 0x10 /* 80348404 00344064 4E 80 00 20 */ blr .global gpiSetError gpiSetError: /* 80348408 00344068 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8034840C 0034406C 7C 08 02 A6 */ mflr r0 /* 80348410 00344070 90 01 00 14 */ stw r0, 0x14(r1) /* 80348414 00344074 93 E1 00 0C */ stw r31, 0xc(r1) /* 80348418 00344078 93 C1 00 08 */ stw r30, 8(r1) /* 8034841C 0034407C 7C 9E 23 78 */ mr r30, r4 /* 80348420 00344080 7C A4 2B 78 */ mr r4, r5 /* 80348424 00344084 38 A0 01 00 */ li r5, 0x100 /* 80348428 00344088 83 E3 00 00 */ lwz r31, 0(r3) /* 8034842C 0034408C 7F E3 FB 78 */ mr r3, r31 /* 80348430 00344090 4B E8 5F 61 */ bl strncpy /* 80348434 00344094 38 00 00 00 */ li r0, 0 /* 80348438 00344098 98 1F 00 FF */ stb r0, 0xff(r31) /* 8034843C 0034409C 93 DF 04 34 */ stw r30, 0x434(r31) /* 80348440 003440A0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80348444 003440A4 83 C1 00 08 */ lwz r30, 8(r1) /* 80348448 003440A8 80 01 00 14 */ lwz r0, 0x14(r1) /* 8034844C 003440AC 7C 08 03 A6 */ mtlr r0 /* 80348450 003440B0 38 21 00 10 */ addi r1, r1, 0x10 /* 80348454 003440B4 4E 80 00 20 */ blr .global gpiSetErrorString gpiSetErrorString: /* 80348458 003440B8 94 21 FF F0 */ stwu r1, -0x10(r1) /* 8034845C 003440BC 7C 08 02 A6 */ mflr r0 /* 80348460 003440C0 38 A0 01 00 */ li r5, 0x100 /* 80348464 003440C4 90 01 00 14 */ stw r0, 0x14(r1) /* 80348468 003440C8 93 E1 00 0C */ stw r31, 0xc(r1) /* 8034846C 003440CC 83 E3 00 00 */ lwz r31, 0(r3) /* 80348470 003440D0 7F E3 FB 78 */ mr r3, r31 /* 80348474 003440D4 4B E8 5F 1D */ bl strncpy /* 80348478 003440D8 38 00 00 00 */ li r0, 0 /* 8034847C 003440DC 98 1F 00 FF */ stb r0, 0xff(r31) /* 80348480 003440E0 83 E1 00 0C */ lwz r31, 0xc(r1) /* 80348484 003440E4 80 01 00 14 */ lwz r0, 0x14(r1) /* 80348488 003440E8 7C 08 03 A6 */ mtlr r0 /* 8034848C 003440EC 38 21 00 10 */ addi r1, r1, 0x10 /* 80348490 003440F0 4E 80 00 20 */ blr .global gpiEncodeString gpiEncodeString: /* 80348494 003440F4 94 21 FF C0 */ stwu r1, -0x40(r1) /* 80348498 003440F8 7C 08 02 A6 */ mflr r0 /* 8034849C 003440FC 90 01 00 44 */ stw r0, 0x44(r1) /* 803484A0 00344100 39 61 00 40 */ addi r11, r1, 0x40 /* 803484A4 00344104 4B E7 EC 85 */ bl _savegpr_27 /* 803484A8 00344108 7C 7B 1B 78 */ mr r27, r3 /* 803484AC 0034410C 7C 9C 23 78 */ mr r28, r4 /* 803484B0 00344110 4B E7 E6 B5 */ bl strlen /* 803484B4 00344114 3C 80 79 70 */ lis r4, 0x79707367@ha /* 803484B8 00344118 7C 7D 1B 78 */ mr r29, r3 /* 803484BC 0034411C 38 64 73 67 */ addi r3, r4, 0x79707367@l /* 803484C0 00344120 4B FF 0B A1 */ bl Util_RandSeed /* 803484C4 00344124 3B E1 00 08 */ addi r31, r1, 8 /* 803484C8 00344128 3B C0 00 00 */ li r30, 0 /* 803484CC 0034412C 48 00 00 2C */ b lbl_803484F8 lbl_803484D0: /* 803484D0 00344130 38 60 00 00 */ li r3, 0 /* 803484D4 00344134 38 80 00 FF */ li r4, 0xff /* 803484D8 00344138 4B FF 0B A1 */ bl Util_RandInt /* 803484DC 0034413C 88 1B 00 00 */ lbz r0, 0(r27) /* 803484E0 00344140 7C 63 07 74 */ extsb r3, r3 /* 803484E4 00344144 3B DE 00 01 */ addi r30, r30, 1 /* 803484E8 00344148 3B 7B 00 01 */ addi r27, r27, 1 /* 803484EC 0034414C 7C 60 02 78 */ xor r0, r3, r0 /* 803484F0 00344150 98 1F 00 00 */ stb r0, 0(r31) /* 803484F4 00344154 3B FF 00 01 */ addi r31, r31, 1 lbl_803484F8: /* 803484F8 00344158 7C 1E E8 40 */ cmplw r30, r29 /* 803484FC 0034415C 41 80 FF D4 */ blt lbl_803484D0 /* 80348500 00344160 38 61 00 08 */ addi r3, r1, 8 /* 80348504 00344164 38 00 00 00 */ li r0, 0 /* 80348508 00344168 7C 03 F1 AE */ stbx r0, r3, r30 /* 8034850C 0034416C 7F 84 E3 78 */ mr r4, r28 /* 80348510 00344170 7F A5 EB 78 */ mr r5, r29 /* 80348514 00344174 38 C0 00 01 */ li r6, 1 /* 80348518 00344178 4B FF 0B D5 */ bl B64Encode /* 8034851C 0034417C 39 61 00 40 */ addi r11, r1, 0x40 /* 80348520 00344180 4B E7 EC 55 */ bl _restgpr_27 /* 80348524 00344184 80 01 00 44 */ lwz r0, 0x44(r1) /* 80348528 00344188 7C 08 03 A6 */ mtlr r0 /* 8034852C 0034418C 38 21 00 40 */ addi r1, r1, 0x40 /* 80348530 00344190 4E 80 00 20 */ blr