[*] Binary protection state of curl
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function printf tear down of curl
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x98c8 */
| #include <stdint.h>
|
; (fcn) fcn.000098c8 () | void fcn_000098c8 () {
0x000098c8 lui gp, 4 |
0x000098cc addiu gp, gp, -0x7888 |
0x000098d0 addu gp, gp, t9 | gp += t9;
0x000098d4 addiu sp, sp, -0x590 |
0x000098d8 lw v0, -0x7cb0(gp) | v0 = *((gp - 7980));
0x000098dc lw v1, 0x5a8(sp) | v1 = *(arg_5a8h);
0x000098e0 sw s5, 0x57c(sp) | *(var_57ch) = s5;
0x000098e4 sw s2, 0x570(sp) | *(var_570h) = s2;
0x000098e8 lw s5, (a2) | s5 = *(a2);
0x000098ec lw s2, 0x5a0(sp) | s2 = *(arg_5a0h);
0x000098f0 sw s1, 0x56c(sp) | *(var_56ch) = s1;
0x000098f4 sw v0, 0x68(sp) | *(var_68h) = v0;
0x000098f8 lw s1, 0x5a4(sp) | s1 = *(arg_5a4h);
0x000098fc lw v0, (v0) | v0 = *(v0);
0x00009900 sw v1, 0x54(sp) | *(var_54h) = v1;
0x00009904 lw v1, 0x5ac(sp) | v1 = *(arg_5ach);
0x00009908 lw t9, -0x7bf0(gp) | t9 = sym.imp.memset;
0x0000990c sw gp, 0x10(sp) | *(var_10h) = gp;
0x00009910 sw ra, 0x58c(sp) | *(var_58ch) = ra;
0x00009914 sw s4, 0x578(sp) | *(var_578h) = s4;
0x00009918 sw s0, 0x568(sp) | *(var_568h) = s0;
0x0000991c sw a2, 0x64(sp) | *(var_64h) = a2;
0x00009920 sw a0, 0x34(sp) | *(var_34h) = a0;
0x00009924 addiu a2, zero, 0x7c | a2 = 0x7c;
0x00009928 addiu a0, sp, 0x80 | a0 = sp + 0x80;
0x0000992c sw v1, 0x5c(sp) | *(var_5ch) = v1;
0x00009930 sw fp, 0x588(sp) | *(var_588h) = fp;
0x00009934 sw s7, 0x584(sp) | *(var_584h) = s7;
0x00009938 sw s6, 0x580(sp) | *(var_580h) = s6;
0x0000993c sw s3, 0x574(sp) | *(var_574h) = s3;
0x00009940 sw s2, 0x60(sp) | *(var_60h) = s2;
0x00009944 move s0, a1 | s0 = a1;
0x00009948 sw s1, 0x58(sp) | *(var_58h) = s1;
0x0000994c move a1, zero | a1 = 0;
0x00009950 sw v0, 0x564(sp) | *(var_564h) = v0;
0x00009954 sw s5, 0x74(sp) | *(var_74h) = s5;
0x00009958 sw zero, 0x7c(sp) | *(var_7ch) = 0;
0x0000995c move s4, a3 | s4 = a3;
0x00009960 jalr t9 | t9 ();
0x00009964 lw gp, 0x10(sp) | gp = *(var_10h);
0x00009968 addiu a2, zero, 0x7c | a2 = 0x7c;
0x0000996c move a1, zero | a1 = 0;
0x00009970 lw t9, -0x7bf0(gp) | t9 = sym.imp.memset;
0x00009974 addiu a0, sp, 0x100 | a0 = sp + aav.0x00000100;
0x00009978 sw zero, 0xfc(sp) | *(var_fch) = 0;
0x0000997c jalr t9 | t9 ();
0x00009980 lw gp, 0x10(sp) | gp = *(var_10h);
0x00009984 sw zero, (s2) | *(s2) = 0;
| if (s1 != 0) {
0x00009988 beqz s1, 0x9990 |
0x0000998c sw zero, (s1) | *(s1) = 0;
| }
0x00009990 lw v0, 0x5c(sp) | v0 = *(var_5ch);
0x00009994 sw zero, (v0) | *(v0) = 0;
0x00009998 lw v0, 0x54(sp) | v0 = *(var_54h);
0x0000999c addiu v1, zero, 0x20 | v1 = 0x20;
| if (v0 != 0) {
0x000099a0 beqz v0, 0x99a8 |
0x000099a4 sw zero, (v0) | *(v0) = 0;
| }
| label_3:
0x000099a8 lb v0, (s5) | v0 = *(s5);
0x000099ac addiu v0, v0, -9 | v0 += -9;
| if (v0 == v1) {
0x000099b0 beq v0, v1, 0x9b8c | goto label_43;
| }
0x000099b4 andi v0, v0, 0xff | v0 &= 0xff;
0x000099b8 sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x000099bc lw v0, 0x34(sp) | v0 = *(var_34h);
| if (v0 != 0) {
0x000099c0 bnez v0, 0x9b8c | goto label_43;
| }
0x000099c4 addiu s3, sp, 0x78 | s3 = sp + 0x78;
0x000099c8 addiu s1, v0, 0x2b8 | s1 = v0 + 0x2b8;
0x000099cc lw v0, -0x7f70(gp) | v0 = *(gp);
0x000099d0 addiu s2, sp, 0x74 | s2 = sp + 0x74;
0x000099d4 addiu s6, v0, -0x6c50 | s6 = v0 + -0x6c50;
0x000099d8 move a0, s1 | a0 = s1;
0x000099dc move a3, s0 | a3 = s0;
0x000099e0 move a2, s3 | a2 = s3;
0x000099e4 move t9, s6 | t9 = s6;
0x000099e8 move a1, s2 | a1 = s2;
0x000099ec bal 0x93b0 | fcn_000093b0 ();
0x000099f0 lw gp, 0x10(sp) | gp = *(var_10h);
0x000099f4 sw v0, (s4) | *(s4) = v0;
0x000099f8 lw a0, 0x78(sp) | a0 = *(var_78h);
| if (v0 == s5) {
0x000099fc beq v0, s5, 0xa3a8 | goto label_44;
| }
| label_35:
0x00009a00 lw v0, 0x74(sp) | v0 = *(var_74h);
0x00009a04 addiu v1, zero, 0x3b | v1 = 0x3b;
0x00009a08 lb v0, (v0) | v0 = *(v0);
0x00009a0c sb zero, (a0) | *(a0) = 0;
| if (v0 != v1) {
0x00009a10 bne v0, v1, 0xa49c | goto label_45;
| }
0x00009a14 lw v0, -0x7fd4(gp) | v0 = *(gp);
0x00009a18 lw a0, 0x74(sp) | a0 = *(var_74h);
| /* str.filename */
0x00009a1c addiu v0, v0, -0x3c0 | v0 += -0x3c0;
0x00009a20 sw v0, 0x24(sp) | *(var_24h) = v0;
0x00009a24 lw v0, -0x7fd4(gp) | v0 = *(gp);
0x00009a28 sw zero, 0x20(sp) | *(var_20h) = 0;
0x00009a2c sw v0, 0x2c(sp) | *(var_2ch) = v0;
0x00009a30 lw v0, -0x7fd4(gp) | v0 = *(gp);
0x00009a34 move s4, zero | s4 = 0;
| /* str.encoder */
0x00009a38 addiu v0, v0, 0x488 | v0 += 0x488;
0x00009a3c sw v0, 0x4c(sp) | *(var_4ch) = v0;
0x00009a40 lw v0, -0x7fd4(gp) | v0 = *(gp);
0x00009a44 sw zero, 0x30(sp) | *(var_30h) = 0;
0x00009a48 sw v0, 0x50(sp) | *(var_50h) = v0;
0x00009a4c lw v0, -0x7fd4(gp) | v0 = *(gp);
0x00009a50 move s7, zero | s7 = 0;
| /* str.File__s_line__d:_header_too_long__truncated__n */
0x00009a54 addiu v0, v0, 0x3bc | v0 += 0x3bc;
0x00009a58 move fp, zero | fp = 0;
0x00009a5c sw v0, 0x6c(sp) | *(var_6ch) = v0;
0x00009a60 b 0x9b54 | goto label_6;
| label_0:
0x00009a64 andi v0, v0, 0xff | v0 &= 0xff;
0x00009a68 sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x00009a6c addiu a0, a0, 1 | a0++;
0x00009a70 bnel v0, zero, 0x9b60 |
| while (a0 == v1) {
0x00009a74 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
| if (s4 == 0) {
0x00009a78 beqz s4, 0x9b98 | goto label_46;
| }
0x00009a7c lw a1, 0x24(sp) | a1 = *(var_24h);
0x00009a80 addiu a2, zero, 9 | a2 = 9;
0x00009a84 jalr t9 | t9 ();
0x00009a88 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != 0) {
0x00009a8c bnez v0, 0x9c3c | goto label_47;
| }
0x00009a90 lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x00009a94 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
0x00009a98 lw a0, 0x74(sp) | a0 = *(var_74h);
0x00009a9c addiu a2, zero, 8 | a2 = 8;
0x00009aa0 addiu a1, v0, 0x47c | a1 = v0 + 0x47c;
0x00009aa4 jalr t9 | t9 ();
0x00009aa8 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00009aac beqz v0, 0x9c44 | goto label_48;
| }
0x00009ab0 sb zero, (s4) | *(s4) = 0;
| label_17:
0x00009ab4 lw v0, 0x74(sp) | v0 = *(var_74h);
0x00009ab8 addiu v1, zero, 0x40 | v1 = 0x40;
0x00009abc addiu s4, v0, 8 | s4 = v0 + 8;
0x00009ac0 lb v0, 8(v0) | v0 = *((v0 + 8));
0x00009ac4 sw s4, 0x74(sp) | *(var_74h) = s4;
| if (v0 == v1) {
0x00009ac8 beq v0, v1, 0x9d60 | goto label_49;
| }
0x00009acc addiu v1, zero, 0x3c | v1 = 0x3c;
0x00009ad0 addiu v1, zero, 0x20 | v1 = 0x20;
| if (v0 == v1) {
0x00009ad4 beq v0, v1, 0x9d60 | goto label_49;
| }
| if (v0 == v1) {
| label_2:
0x00009ad8 beql v0, v1, 0x9b80 | goto label_50;
| }
0x00009adc addiu s4, s4, 1 | s4++;
0x00009ae0 addiu v0, v0, -9 | v0 += -9;
0x00009ae4 andi v0, v0, 0xff | v0 &= 0xff;
0x00009ae8 sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x00009aec move a3, s0 | a3 = s0;
| if (v0 != 0) {
0x00009af0 bnez v0, 0x9b7c | goto label_51;
| }
0x00009af4 move a2, s3 | a2 = s3;
0x00009af8 move a1, s2 | a1 = s2;
0x00009afc move t9, s6 | t9 = s6;
0x00009b00 move a0, s1 | a0 = s1;
0x00009b04 bal 0x93b0 | fcn_000093b0 ();
0x00009b08 lw gp, 0x10(sp) | gp = *(var_10h);
0x00009b0c lw v1, 0x78(sp) | v1 = *(var_78h);
| if (s4 == v0) {
0x00009b10 beq s4, v0, 0xa2e8 | goto label_52;
| }
| label_30:
0x00009b14 move a1, v0 | a1 = v0;
0x00009b18 lw v0, 0x74(sp) | v0 = *(var_74h);
0x00009b1c lw t9, -0x7c54(gp) | t9 = sym.imp.curl_slist_append;
0x00009b20 lw a0, 0x20(sp) | a0 = *(var_20h);
0x00009b24 lb v0, (v0) | v0 = *(v0);
0x00009b28 sb zero, (v1) | *(v1) = 0;
0x00009b2c sw v0, 0x18(sp) | *(var_18h) = v0;
0x00009b30 jalr t9 | t9 ();
0x00009b34 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00009b38 beqz v0, 0xa4d0 | goto label_53;
| }
0x00009b3c sw v0, 0x20(sp) | *(var_20h) = v0;
| label_4:
0x00009b40 lw v1, 0x18(sp) | v1 = *(var_18h);
| label_18:
0x00009b44 addiu v0, zero, 0x3b | v0 = 0x3b;
0x00009b48 move s4, zero | s4 = 0;
| if (v1 != v0) {
0x00009b4c bne v1, v0, 0xa4f0 | goto label_54;
| }
0x00009b50 lw a0, 0x74(sp) | a0 = *(var_74h);
| label_6:
0x00009b54 addiu a0, a0, 1 | a0++;
| label_7:
0x00009b58 addiu v1, zero, 1 | v1 = 1;
0x00009b5c addiu a1, zero, 0x20 | a1 = 0x20;
| label_1:
0x00009b60 sw a0, 0x74(sp) | *(var_74h) = a0;
0x00009b64 beq a0, v1, 0x9a74 |
| }
0x00009b68 lb v0, (a0) | v0 = *(a0);
0x00009b6c addiu v0, v0, -9 | v0 += -9;
| if (v0 == a1) {
0x00009b70 bnel v0, a1, 0x9a64 | goto label_0;
| }
0x00009b74 addiu a0, a0, 1 | a0++;
0x00009b78 b 0x9b60 | goto label_1;
| label_51:
0x00009b7c addiu s4, s4, 1 | s4++;
| label_50:
0x00009b80 sw s4, 0x74(sp) | *(var_74h) = s4;
0x00009b84 lb v0, (s4) | v0 = *(s4);
0x00009b88 b 0x9ad8 | goto label_2;
| label_43:
0x00009b8c addiu s5, s5, 1 | s5++;
0x00009b90 sw s5, 0x74(sp) | *(var_74h) = s5;
0x00009b94 b 0x99a8 | goto label_3;
| label_46:
0x00009b98 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00009b9c addiu a2, zero, 5 | a2 = 5;
| /* str.type */
0x00009ba0 addiu a1, a1, 0x310 | a1 += 0x310;
0x00009ba4 jalr t9 | t9 ();
0x00009ba8 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != 0) {
0x00009bac bnez v0, 0xa088 | goto label_55;
| }
0x00009bb0 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
0x00009bb4 lw a0, 0x74(sp) | a0 = *(var_74h);
0x00009bb8 lw a1, 0x24(sp) | a1 = *(var_24h);
0x00009bbc addiu a2, zero, 9 | a2 = 9;
0x00009bc0 jalr t9 | t9 ();
0x00009bc4 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00009bc8 beqz v0, 0x9ff0 | goto label_56;
| }
| label_5:
0x00009bcc lw s4, 0x74(sp) | s4 = *(var_74h);
0x00009bd0 addiu v1, zero, 0x20 | v1 = 0x20;
0x00009bd4 addiu s4, s4, 9 | s4 += 9;
0x00009bd8 sw s4, 0x74(sp) | *(var_74h) = s4;
| do {
0x00009bdc lb v0, (s4) | v0 = *(s4);
0x00009be0 addiu v0, v0, -9 | v0 += -9;
| if (v0 != v1) {
0x00009be4 beq v0, v1, 0x9c30 |
0x00009be8 andi v0, v0, 0xff | v0 &= 0xff;
0x00009bec sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x00009bf0 move a3, s0 | a3 = s0;
| if (v0 != 0) {
0x00009bf4 bnez v0, 0x9c30 | goto label_57;
| }
0x00009bf8 move a2, s3 | a2 = s3;
0x00009bfc move a1, s2 | a1 = s2;
0x00009c00 move t9, s6 | t9 = s6;
0x00009c04 move a0, s1 | a0 = s1;
0x00009c08 bal 0x93b0 | fcn_000093b0 ();
0x00009c0c move s7, v0 | s7 = v0;
0x00009c10 lw gp, 0x10(sp) | gp = *(var_10h);
0x00009c14 lw v0, 0x78(sp) | v0 = *(var_78h);
| if (s7 == s4) {
0x00009c18 beq s7, s4, 0xa194 | goto label_58;
| }
| label_23:
0x00009c1c lw v1, 0x74(sp) | v1 = *(var_74h);
0x00009c20 lb v1, (v1) | v1 = *(v1);
0x00009c24 sw v1, 0x18(sp) | *(var_18h) = v1;
0x00009c28 sb zero, (v0) | *(v0) = 0;
0x00009c2c b 0x9b40 | goto label_4;
| }
| label_57:
0x00009c30 addiu s4, s4, 1 | s4++;
0x00009c34 sw s4, 0x74(sp) | *(var_74h) = s4;
0x00009c38 b 0x9bdc |
| } while (1);
| label_47:
0x00009c3c sb zero, (s4) | *(s4) = 0;
0x00009c40 b 0x9bcc | goto label_5;
| label_48:
0x00009c44 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
0x00009c48 lw a0, 0x74(sp) | a0 = *(var_74h);
0x00009c4c lw a1, 0x4c(sp) | a1 = *(var_4ch);
0x00009c50 addiu a2, zero, 8 | a2 = 8;
0x00009c54 jalr t9 | t9 ();
0x00009c58 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != 0) {
0x00009c5c bnez v0, 0xa228 | goto label_59;
| }
0x00009c60 lw a0, 0x74(sp) | a0 = *(var_74h);
0x00009c64 lb v1, (a0) | v1 = *(a0);
| if (v1 == 0) {
0x00009c68 beql v1, zero, 0xa454 | goto label_60;
| }
0x00009c6c move s4, a0 | s4 = a0;
0x00009c70 addiu a1, zero, 0x3b | a1 = 0x3b;
| if (v1 == a1) {
0x00009c74 beql v1, a1, 0x9b54 | goto label_6;
| }
0x00009c78 move s4, a0 | s4 = a0;
| if (v1 == s0) {
0x00009c7c beql v1, s0, 0xa460 | goto label_61;
| }
0x00009c80 move v0, s0 | v0 = s0;
0x00009c84 move s4, a0 | s4 = a0;
0x00009c88 addiu a1, zero, 0x20 | a1 = 0x20;
0x00009c8c addiu a2, zero, 0x3b | a2 = 0x3b;
0x00009c90 b 0x9ca4 | goto label_62;
| if (v1 == a2) {
| label_8:
0x00009c94 beql v1, a2, 0x9b58 | goto label_7;
| }
0x00009c98 addiu a0, a0, 1 | a0++;
| if (v1 == s0) {
0x00009c9c beql v1, s0, 0xa178 | goto label_63;
| }
0x00009ca0 move v0, s0 | v0 = s0;
| label_62:
0x00009ca4 addiu a0, a0, 1 | a0++;
| if (v1 != a1) {
0x00009ca8 beq v1, a1, 0x9cbc |
0x00009cac addiu v1, v1, -9 | v1 += -9;
0x00009cb0 andi v1, v1, 0xff | v1 &= 0xff;
0x00009cb4 sltiu v1, v1, 5 | v1 = (v1 < 5) ? 1 : 0;
| if (v1 == 0) {
0x00009cb8 movz s4, a0, v1 | s4 = a0;
| goto label_64;
| }
| }
| label_64:
0x00009cbc sw a0, 0x74(sp) | *(var_74h) = a0;
0x00009cc0 lb v1, (a0) | v1 = *(a0);
| if (v1 != 0) {
0x00009cc4 bnez v1, 0x9c94 | goto label_8;
| }
0x00009cc8 nop |
0x00009ccc lw v1, 0x60(sp) | v1 = *(var_60h);
| if (s4 != 0) {
0x00009cd0 beqz s4, 0x9cdc |
| label_39:
0x00009cd4 sb zero, (s4) | *(s4) = 0;
| label_20:
0x00009cd8 lw v1, 0x60(sp) | v1 = *(var_60h);
| }
| label_21:
0x00009cdc sw fp, (v1) | *(v1) = fp;
0x00009ce0 lw v1, 0x58(sp) | v1 = *(var_58h);
| if (v1 == 0) {
0x00009ce4 beqz v1, 0xa420 | goto label_65;
| }
0x00009ce8 nop |
0x00009cec sw s7, (v1) | *(v1) = s7;
| label_38:
0x00009cf0 lw v1, 0x54(sp) | v1 = *(var_54h);
| if (v1 == 0) {
0x00009cf4 beql v1, zero, 0xa3f4 | goto label_66;
| }
0x00009cf8 lw a2, 0x30(sp) | a2 = *(var_30h);
| label_41:
0x00009cfc lw v1, 0x54(sp) | v1 = *(var_54h);
0x00009d00 lw a0, 0x30(sp) | a0 = *(var_30h);
0x00009d04 sw a0, (v1) | *(v1) = a0;
| label_37:
0x00009d08 lw v1, 0x5c(sp) | v1 = *(var_5ch);
0x00009d0c lw a0, 0x20(sp) | a0 = *(var_20h);
0x00009d10 sw a0, (v1) | *(v1) = a0;
0x00009d14 lw a0, 0x64(sp) | a0 = *(var_64h);
0x00009d18 lw v1, 0x74(sp) | v1 = *(var_74h);
0x00009d1c sw v1, (a0) | *(a0) = v1;
| label_40:
0x00009d20 lw v1, 0x68(sp) | v1 = *(var_68h);
0x00009d24 lw a0, 0x564(sp) | a0 = *(var_564h);
0x00009d28 lw v1, (v1) | v1 = *(v1);
0x00009d2c lw ra, 0x58c(sp) | ra = *(var_58ch);
| if (a0 != v1) {
0x00009d30 bne a0, v1, 0xa544 | goto label_67;
| }
0x00009d34 lw fp, 0x588(sp) | fp = *(var_588h);
0x00009d38 lw s7, 0x584(sp) | s7 = *(var_584h);
0x00009d3c lw s6, 0x580(sp) | s6 = *(var_580h);
0x00009d40 lw s5, 0x57c(sp) | s5 = *(var_57ch);
0x00009d44 lw s4, 0x578(sp) | s4 = *(var_578h);
0x00009d48 lw s3, 0x574(sp) | s3 = *(var_574h);
0x00009d4c lw s2, 0x570(sp) | s2 = *(var_570h);
0x00009d50 lw s1, 0x56c(sp) | s1 = *(var_56ch);
0x00009d54 lw s0, 0x568(sp) | s0 = *(var_568h);
0x00009d58 addiu sp, sp, 0x590 |
0x00009d5c jr ra | return v0;
| label_49:
0x00009d60 addiu v1, zero, 0x20 | v1 = 0x20;
| do {
| label_9:
0x00009d64 addiu s4, s4, 1 | s4++;
0x00009d68 sw s4, 0x74(sp) | *(var_74h) = s4;
0x00009d6c lb v0, (s4) | v0 = *(s4);
0x00009d70 addiu v0, v0, -9 | v0 += -9;
0x00009d74 beq v0, v1, 0x9d64 |
| } while (v0 == v1);
0x00009d78 andi v0, v0, 0xff | v0 &= 0xff;
0x00009d7c sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x00009d80 move a3, s0 | a3 = s0;
| if (v0 != 0) {
0x00009d84 bnez v0, 0x9d64 | goto label_9;
| }
0x00009d88 move a2, s3 | a2 = s3;
0x00009d8c move a1, s2 | a1 = s2;
0x00009d90 move t9, s6 | t9 = s6;
0x00009d94 move a0, s1 | a0 = s1;
0x00009d98 bal 0x93b0 | fcn_000093b0 ();
0x00009d9c move s5, v0 | s5 = v0;
0x00009da0 lw gp, 0x10(sp) | gp = *(var_10h);
0x00009da4 lw v0, 0x78(sp) | v0 = *(var_78h);
| if (s4 == s5) {
0x00009da8 beq s4, s5, 0xa334 | goto label_68;
| }
| label_32:
0x00009dac lw v1, 0x50(sp) | v1 = *(var_50h);
0x00009db0 lw t9, -0x7d94(gp) | t9 = sym.imp.fopen64;
0x00009db4 addiu a1, v1, 0xb34 | a1 = v1 + 0xb34;
0x00009db8 lw v1, 0x74(sp) | v1 = *(var_74h);
0x00009dbc move a0, s5 | a0 = s5;
0x00009dc0 lb v1, (v1) | v1 = *(v1);
0x00009dc4 sb zero, (v0) | *(v0) = 0;
0x00009dc8 sw v1, 0x18(sp) | *(var_18h) = v1;
0x00009dcc jalr t9 | t9 ();
0x00009dd0 sw v0, 0x28(sp) | *(var_28h) = v0;
0x00009dd4 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00009dd8 beqz v0, 0xa1e0 | goto label_69;
| }
0x00009ddc lw v0, 0x20(sp) | v0 = *(var_20h);
0x00009de0 lw t9, -0x7bf0(gp) | t9 = sym.imp.memset;
0x00009de4 addiu a2, zero, 0x3e3 | a2 = 0x3e3;
0x00009de8 move a1, zero | a1 = 0;
0x00009dec addiu a0, sp, 0x180 | a0 = sp + aav.0x00000180;
0x00009df0 sw zero, 0x17c(sp) | *(var_17ch) = 0;
0x00009df4 sw v0, 0x3c(sp) | *(var_3ch) = v0;
0x00009df8 jalr t9 | t9 ();
0x00009dfc addiu v1, zero, 1 | v1 = 1;
0x00009e00 addiu s4, sp, 0x17c | s4 = sp + 0x17c;
0x00009e04 sw v1, 0x40(sp) | *(var_40h) = v1;
0x00009e08 sw s0, 0x594(sp) | *(arg_594h) = s0;
0x00009e0c move v1, zero | v1 = 0;
0x00009e10 lw gp, 0x10(sp) | gp = *(var_10h);
0x00009e14 lw s0, 0x20(sp) | s0 = *(var_20h);
0x00009e18 sw s1, 0x44(sp) | *(var_44h) = s1;
0x00009e1c sw zero, 0x38(sp) | *(var_38h) = 0;
0x00009e20 move s1, s4 | s1 = s4;
0x00009e24 sw zero, 0x1c(sp) | *(var_1ch) = 0;
0x00009e28 sw s2, 0x48(sp) | *(var_48h) = s2;
0x00009e2c move s4, v1 | s4 = v1;
| label_11:
0x00009e30 lw t9, -0x7c04(gp) | t9 = sym.imp._IO_getc;
| label_15:
0x00009e34 lw a0, 0x28(sp) | a0 = *(var_28h);
0x00009e38 jalr t9 | t9 ();
0x00009e3c move s2, v0 | s2 = v0;
0x00009e40 addiu v0, zero, -1 | v0 = -1;
0x00009e44 lw gp, 0x10(sp) | gp = *(var_10h);
| if (s2 == v0) {
0x00009e48 beq s2, v0, 0x9eb4 | goto label_70;
| }
| do {
0x00009e4c lw v0, 0x1c(sp) | v0 = *(var_1ch);
0x00009e50 addiu v0, zero, 0xa | v0 = 0xa;
| if (v0 != 0) {
0x00009e54 bnez v0, 0x9f80 | goto label_71;
| }
0x00009e58 addiu v0, zero, 0x20 | v0 = 0x20;
0x00009e5c addiu v0, zero, 9 | v0 = 9;
| if (s2 == v0) {
0x00009e60 beq s2, v0, 0x9f90 | goto label_16;
| }
0x00009e64 addiu v0, s2, -0xa | v0 = s2 + -0xa;
| if (s2 == v0) {
0x00009e68 beq s2, v0, 0x9f90 | goto label_16;
| }
0x00009e6c sltiu v0, v0, 4 | v0 = (v0 < 4) ? 1 : 0;
0x00009e70 addiu v0, zero, 0xa | v0 = 0xa;
| if (v0 == 0) {
0x00009e74 beqz v0, 0xa2d8 | goto label_72;
| }
| if (s2 == v0) {
| label_13:
0x00009e78 beql s2, v0, 0x9f14 | goto label_14;
| }
0x00009e7c sw s0, 0x3c(sp) | *(var_3ch) = s0;
| label_10:
0x00009e80 slti v0, s2, 0xb | v0 = (s2 < 0xb) ? 1 : 0;
0x00009e84 addiu v0, zero, 0xd | v0 = 0xd;
| if (v0 != 0) {
0x00009e88 bnez v0, 0x9f2c | goto label_73;
| }
0x00009e8c addiu v0, zero, 0x23 | v0 = 0x23;
| if (s2 != v0) {
0x00009e90 bne s2, v0, 0x9fd0 | goto label_74;
| }
0x00009e94 lw t9, -0x7c04(gp) | t9 = sym.imp._IO_getc;
0x00009e98 lw a0, 0x28(sp) | a0 = *(var_28h);
0x00009e9c sw s0, 0x3c(sp) | *(var_3ch) = s0;
0x00009ea0 jalr t9 | t9 ();
0x00009ea4 move s2, v0 | s2 = v0;
0x00009ea8 addiu v0, zero, -1 | v0 = -1;
0x00009eac lw gp, 0x10(sp) | gp = *(var_10h);
0x00009eb0 bne s2, v0, 0x9e4c |
| } while (s2 != v0);
| label_70:
0x00009eb4 lw t9, -0x7d78(gp) | t9 = sym.imp.ferror;
| if (s4 == 0) {
0x00009eb8 beqz s4, 0x9f38 | goto label_75;
| }
0x00009ebc addiu a0, zero, 0x20 | a0 = 0x20;
| label_29:
0x00009ec0 addu v0, s1, s4 | v0 = s1 + s4;
| label_12:
0x00009ec4 lb v0, -1(v0) | v0 = *((v0 - 1));
0x00009ec8 addiu v0, v0, -9 | v0 += -9;
| if (v0 == a0) {
0x00009ecc beq v0, a0, 0x9f6c | goto label_76;
| }
0x00009ed0 andi v0, v0, 0xff | v0 &= 0xff;
0x00009ed4 sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x00009ed8 addiu v0, sp, 0x568 | v0 = sp + 0x568;
| if (v0 != 0) {
0x00009edc bnez v0, 0x9f6c | goto label_76;
| }
0x00009ee0 addu v1, v0, s4 | v1 = v0 + s4;
0x00009ee4 lw t9, -0x7c54(gp) | t9 = sym.imp.curl_slist_append;
0x00009ee8 move a0, s0 | a0 = s0;
0x00009eec move a1, s1 | a1 = s1;
0x00009ef0 sb zero, -0x3ec(v1) | *((v1 - 1004)) = 0;
0x00009ef4 jalr t9 | t9 ();
0x00009ef8 move s0, v0 | s0 = v0;
0x00009efc lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00009f00 beqz v0, 0xa50c | goto label_77;
| }
0x00009f04 addiu v0, zero, 0xa | v0 = 0xa;
0x00009f08 move s4, zero | s4 = 0;
| if (s2 != v0) {
0x00009f0c bne s2, v0, 0x9e80 | goto label_10;
| }
0x00009f10 sw s0, 0x3c(sp) | *(var_3ch) = s0;
| label_14:
0x00009f14 lw v0, 0x40(sp) | v0 = *(var_40h);
0x00009f18 sw zero, 0x38(sp) | *(var_38h) = 0;
0x00009f1c addiu v0, v0, 1 | v0++;
0x00009f20 sw v0, 0x40(sp) | *(var_40h) = v0;
0x00009f24 sw zero, 0x1c(sp) | *(var_1ch) = 0;
0x00009f28 b 0x9e30 | goto label_11;
| label_73:
0x00009f2c addiu v0, zero, -1 | v0 = -1;
0x00009f30 lw t9, -0x7d78(gp) | t9 = sym.imp.ferror;
| if (s2 != v0) {
0x00009f34 bne s2, v0, 0xa550 | goto label_78;
| }
| label_75:
0x00009f38 lw a0, 0x28(sp) | a0 = *(var_28h);
0x00009f3c sw s0, 0x20(sp) | *(var_20h) = s0;
0x00009f40 lw s1, 0x44(sp) | s1 = *(var_44h);
0x00009f44 lw s0, 0x594(sp) | s0 = *(arg_594h);
0x00009f48 lw s2, 0x48(sp) | s2 = *(var_48h);
0x00009f4c jalr t9 | t9 ();
0x00009f50 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != 0) {
0x00009f54 bnez v0, 0xa558 | goto label_79;
| }
0x00009f58 lw t9, -0x7c6c(gp) | t9 = sym.imp.fclose;
0x00009f5c lw a0, 0x28(sp) | a0 = *(var_28h);
0x00009f60 jalr t9 | t9 ();
0x00009f64 lw gp, 0x10(sp) | gp = *(var_10h);
0x00009f68 b 0x9b40 | goto label_4;
| label_76:
0x00009f6c addiu s4, s4, -1 | s4 += -1;
0x00009f70 addu v0, s1, s4 | v0 = s1 + s4;
| if (s4 == 0) {
0x00009f74 bnel s4, zero, 0x9ec4 | goto label_12;
| }
0x00009f78 addiu v0, zero, 0xa | v0 = 0xa;
0x00009f7c b 0x9e78 | goto label_13;
| label_71:
0x00009f80 addiu v0, zero, 0xd | v0 = 0xd;
| if (s2 == v0) {
0x00009f84 beq s2, v0, 0x9f14 | goto label_14;
| }
0x00009f88 lw t9, -0x7c04(gp) | t9 = sym.imp._IO_getc;
| if (s2 == v0) {
0x00009f8c beq s2, v0, 0x9e34 | goto label_15;
| }
| label_16:
0x00009f90 lw v0, 0x1c(sp) | v0 = *(var_1ch);
0x00009f94 addiu v0, v0, 1 | v0++;
0x00009f98 sw v0, 0x1c(sp) | *(var_1ch) = v0;
0x00009f9c lw v0, 0x38(sp) | v0 = *(var_38h);
0x00009fa0 addiu v0, zero, 0x3e6 | v0 = 0x3e6;
| if (v0 != 0) {
0x00009fa4 bnez v0, 0x9e30 | goto label_11;
| }
0x00009fa8 sltiu v0, s4, 0x3e7 | v0 = (s4 < 0x3e7) ? 1 : 0;
| if (s4 == v0) {
0x00009fac beq s4, v0, 0xa380 | goto label_80;
| }
0x00009fb0 lw t9, -0x7c04(gp) | t9 = sym.imp._IO_getc;
| if (v0 == 0) {
0x00009fb4 beqz v0, 0x9e34 | goto label_15;
| }
0x00009fb8 seb a2, s2 | __asm ("seb a2, s2");
| label_34:
0x00009fbc addiu v0, sp, 0x568 | v0 = sp + 0x568;
0x00009fc0 addu v0, v0, s4 | v0 += s4;
0x00009fc4 addiu s4, s4, 1 | s4++;
0x00009fc8 sb a2, -0x3ec(v0) | *((v0 - 1004)) = a2;
0x00009fcc b 0x9e30 | goto label_11;
| label_74:
0x00009fd0 lw v0, 0x1c(sp) | v0 = *(var_1ch);
| if (s2 != v0) {
0x00009fd4 bne s2, v0, 0xa550 | goto label_78;
| }
0x00009fd8 sw s0, 0x3c(sp) | *(var_3ch) = s0;
| if (v0 != 0) {
0x00009fdc bnez v0, 0x9f90 | goto label_16;
| }
0x00009fe0 addiu v0, zero, 1 | v0 = 1;
0x00009fe4 sw v0, 0x38(sp) | *(var_38h) = v0;
0x00009fe8 sw v0, 0x1c(sp) | *(var_1ch) = v0;
0x00009fec b 0x9e30 | goto label_11;
| label_56:
0x00009ff0 lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x00009ff4 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
0x00009ff8 lw a0, 0x74(sp) | a0 = *(var_74h);
0x00009ffc addiu a2, zero, 8 | a2 = 8;
0x0000a000 addiu a1, v0, 0x47c | a1 = v0 + 0x47c;
0x0000a004 jalr t9 | t9 ();
0x0000a008 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != 0) {
0x0000a00c bnez v0, 0x9ab4 | goto label_17;
| }
0x0000a010 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
0x0000a014 lw a0, 0x74(sp) | a0 = *(var_74h);
0x0000a018 lw a1, 0x4c(sp) | a1 = *(var_4ch);
0x0000a01c addiu a2, zero, 8 | a2 = 8;
0x0000a020 jalr t9 | t9 ();
0x0000a024 move a3, s0 | a3 = s0;
| if (v0 != 0) {
0x0000a028 bnez v0, 0xa22c | goto label_81;
| }
0x0000a02c move a2, s3 | a2 = s3;
0x0000a030 move a1, s2 | a1 = s2;
0x0000a034 move t9, s6 | t9 = s6;
0x0000a038 move a0, s1 | a0 = s1;
0x0000a03c bal 0x93b0 | fcn_000093b0 ();
0x0000a040 lw v1, 0x74(sp) | v1 = *(var_74h);
0x0000a044 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a048 lb v1, (v1) | v1 = *(v1);
0x0000a04c sw v1, 0x18(sp) | *(var_18h) = v1;
0x0000a050 lw v1, 0x78(sp) | v1 = *(var_78h);
0x0000a054 sb zero, (v1) | *(v1) = 0;
0x0000a058 lb v1, (v0) | v1 = *(v0);
0x0000a05c lw v1, 0x18(sp) | v1 = *(var_18h);
| if (v1 == 0) {
0x0000a060 beqz v1, 0x9b44 | goto label_18;
| }
0x0000a064 lw v1, 0x34(sp) | v1 = *(var_34h);
0x0000a068 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0000a06c lw t9, -0x7fa8(gp) | t9 = sym.warnf;
0x0000a070 lw a0, 0x2b8(v1) | a0 = *((v1 + 174));
0x0000a074 move a2, v0 | a2 = v0;
| /* str.skip_unknown_form_field:__s_n */
0x0000a078 addiu a1, a1, 0x410 | a1 += aav.0x00000410;
0x0000a07c bal 0x11260 | sym_warnf ();
0x0000a080 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a084 b 0x9b40 | goto label_4;
| label_55:
0x0000a088 lw fp, 0x74(sp) | fp = *(var_74h);
0x0000a08c addiu v1, zero, 0x20 | v1 = 0x20;
0x0000a090 addiu fp, fp, 5 | fp += 5;
0x0000a094 sw fp, 0x74(sp) | *(var_74h) = fp;
| label_22:
0x0000a098 lb v0, (fp) | v0 = *(fp);
0x0000a09c addiu v0, v0, -9 | v0 += -9;
| if (v0 == v1) {
0x0000a0a0 beq v0, v1, 0xa188 | goto label_82;
| }
0x0000a0a4 andi v0, v0, 0xff | v0 &= 0xff;
0x0000a0a8 sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x0000a0ac lw a1, -0x7fd4(gp) | a1 = *(gp);
| if (v0 != 0) {
0x0000a0b0 bnez v0, 0xa188 | goto label_82;
| }
0x0000a0b4 lw t9, -0x7bb4(gp) | t9 = sym.imp.__isoc99_sscanf;
0x0000a0b8 addiu s4, sp, 0xfc | s4 = sp + 0xfc;
0x0000a0bc addiu s5, sp, 0x7c | s5 = sp + 0x7c;
0x0000a0c0 move a3, s4 | a3 = s4;
0x0000a0c4 move a2, s5 | a2 = s5;
| /* str._127______127_____n_ */
0x0000a0c8 addiu a1, a1, 0x318 | a1 += 0x318;
0x0000a0cc move a0, fp | a0 = fp;
0x0000a0d0 jalr t9 | t9 ();
0x0000a0d4 addiu v1, zero, 2 | v1 = 2;
0x0000a0d8 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != v1) {
0x0000a0dc bne v0, v1, 0xa468 | goto label_83;
| }
0x0000a0e0 lw t9, -0x7c88(gp) | t9 = sym.imp.strlen;
0x0000a0e4 move a0, s5 | a0 = s5;
0x0000a0e8 jalr t9 | t9 ();
0x0000a0ec lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a0f0 move a0, s4 | a0 = s4;
0x0000a0f4 lw t9, -0x7c88(gp) | t9 = sym.imp.strlen;
0x0000a0f8 move s4, v0 | s4 = v0;
0x0000a0fc jalr t9 | t9 ();
0x0000a100 addu a0, s4, v0 | a0 = s4 + v0;
0x0000a104 addiu a0, a0, 1 | a0++;
0x0000a108 addu a0, fp, a0 | a0 = fp + a0;
0x0000a10c sw a0, 0x74(sp) | *(var_74h) = a0;
0x0000a110 lb v0, (a0) | v0 = *(a0);
0x0000a114 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0000a118 beqz v0, 0xa450 | goto label_84;
| }
0x0000a11c addiu v1, zero, 0x3b | v1 = 0x3b;
| if (v0 == v1) {
0x0000a120 beql v0, v1, 0x9b54 | goto label_6;
| }
0x0000a124 move s4, a0 | s4 = a0;
0x0000a128 addiu v1, zero, 0x20 | v1 = 0x20;
| if (s0 == v0) {
0x0000a12c beq s0, v0, 0xa45c | goto label_85;
| }
0x0000a130 move s4, a0 | s4 = a0;
0x0000a134 addiu a1, zero, 0x3b | a1 = 0x3b;
0x0000a138 b 0xa14c | goto label_86;
| if (v0 == a1) {
| label_19:
0x0000a13c beql v0, a1, 0x9b58 | goto label_7;
| }
0x0000a140 addiu a0, a0, 1 | a0++;
| if (v0 == s0) {
0x0000a144 beql v0, s0, 0xa178 | goto label_63;
| }
0x0000a148 move v0, s0 | v0 = s0;
| label_86:
0x0000a14c addiu a0, a0, 1 | a0++;
| if (v0 != v1) {
0x0000a150 beq v0, v1, 0xa164 |
0x0000a154 addiu v0, v0, -9 | v0 += -9;
0x0000a158 andi v0, v0, 0xff | v0 &= 0xff;
0x0000a15c sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
| if (v0 == 0) {
0x0000a160 movz s4, a0, v0 | s4 = a0;
| goto label_87;
| }
| }
| label_87:
0x0000a164 sw a0, 0x74(sp) | *(var_74h) = a0;
0x0000a168 lb v0, (a0) | v0 = *(a0);
| if (v0 != 0) {
0x0000a16c bnez v0, 0xa13c | goto label_19;
| }
0x0000a170 nop |
0x0000a174 move v0, zero | v0 = 0;
| label_63:
0x0000a178 sb zero, (s4) | *(s4) = 0;
| if (s4 == 0) {
0x0000a17c bnel s4, zero, 0x9cd8 | goto label_20;
| }
0x0000a180 lw v1, 0x60(sp) | v1 = *(var_60h);
0x0000a184 b 0x9cdc | goto label_21;
| label_82:
0x0000a188 addiu fp, fp, 1 | fp++;
0x0000a18c sw fp, 0x74(sp) | *(var_74h) = fp;
0x0000a190 b 0xa098 | goto label_22;
| label_58:
0x0000a194 sltu v1, s4, v0 | v1 = (s4 < v0) ? 1 : 0;
0x0000a198 addiu a1, zero, 0x20 | a1 = 0x20;
| if (v1 == 0) {
0x0000a19c beqz v1, 0x9c1c | goto label_23;
| }
0x0000a1a0 addiu a0, v0, -1 | a0 = v0 + -1;
| label_24:
0x0000a1a4 lb v1, (a0) | v1 = *(a0);
0x0000a1a8 move v0, a0 | v0 = a0;
| if (v1 != a1) {
0x0000a1ac beq v1, a1, 0xa1cc |
0x0000a1b0 addiu v1, v1, -9 | v1 += -9;
0x0000a1b4 andi v1, v1, 0xff | v1 &= 0xff;
0x0000a1b8 sltiu v1, v1, 5 | v1 = (v1 < 5) ? 1 : 0;
0x0000a1bc sw a0, 0x78(sp) | *(var_78h) = a0;
| if (v1 == 0) {
0x0000a1c0 bnel v1, zero, 0xa1d0 | goto label_88;
| }
| label_25:
0x0000a1c4 lw v0, 0x78(sp) | v0 = *(var_78h);
0x0000a1c8 b 0x9c1c | goto label_23;
| }
0x0000a1cc sw a0, 0x78(sp) | *(var_78h) = a0;
| label_88:
0x0000a1d0 addiu v1, a0, -1 | v1 = a0 + -1;
| if (s4 == a0) {
0x0000a1d4 beq s4, a0, 0x9c1c | goto label_23;
| }
0x0000a1d8 move a0, v1 | a0 = v1;
0x0000a1dc b 0xa1a4 | goto label_24;
| label_69:
0x0000a1e0 lw v0, 0x34(sp) | v0 = *(var_34h);
0x0000a1e4 lw t9, -0x7b6c(gp) | t9 = sym.imp.__errno_location;
0x0000a1e8 lw s4, 0x2b8(v0) | s4 = *((v0 + 174));
0x0000a1ec jalr t9 | t9 ();
0x0000a1f0 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a1f4 lw t9, -0x7b78(gp) | t9 = sym.imp.strerror;
0x0000a1f8 lw a0, (v0) | a0 = *(v0);
0x0000a1fc jalr t9 | t9 ();
0x0000a200 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a204 move a3, v0 | a3 = v0;
0x0000a208 move a2, s5 | a2 = s5;
0x0000a20c lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0000a210 lw t9, -0x7fa8(gp) | t9 = sym.warnf;
| /* str.Cannot_read_from__s:__s_n */
0x0000a214 addiu a1, a1, 0x35c | a1 += 0x35c;
0x0000a218 move a0, s4 | a0 = s4;
0x0000a21c bal 0x11260 | sym_warnf ();
0x0000a220 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a224 b 0x9b40 | goto label_4;
| label_59:
0x0000a228 sb zero, (s4) | *(s4) = 0;
| label_81:
0x0000a22c lw s4, 0x74(sp) | s4 = *(var_74h);
0x0000a230 addiu v1, zero, 0x20 | v1 = 0x20;
0x0000a234 addiu s4, s4, 8 | s4 += 8;
0x0000a238 sw s4, 0x74(sp) | *(var_74h) = s4;
| label_28:
0x0000a23c lb v0, (s4) | v0 = *(s4);
0x0000a240 addiu v0, v0, -9 | v0 += -9;
| if (v0 == v1) {
0x0000a244 beq v0, v1, 0xa2cc | goto label_89;
| }
0x0000a248 andi v0, v0, 0xff | v0 &= 0xff;
0x0000a24c sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x0000a250 addiu s4, s4, 1 | s4++;
| if (v0 == 0) {
0x0000a254 bnel v0, zero, 0xa2d0 | goto label_90;
| }
0x0000a258 move a3, s0 | a3 = s0;
0x0000a25c move a2, s3 | a2 = s3;
0x0000a260 move a1, s2 | a1 = s2;
0x0000a264 move t9, s6 | t9 = s6;
0x0000a268 move a0, s1 | a0 = s1;
0x0000a26c bal 0x93b0 | fcn_000093b0 ();
0x0000a270 sw v0, 0x30(sp) | *(var_30h) = v0;
0x0000a274 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != s4) {
0x0000a278 bne v0, s4, 0xa1c4 | goto label_25;
| }
0x0000a27c lw v0, 0x78(sp) | v0 = *(var_78h);
0x0000a280 sltu v1, s4, v0 | v1 = (s4 < v0) ? 1 : 0;
0x0000a284 addiu a1, zero, 0x20 | a1 = 0x20;
| if (v1 == 0) {
0x0000a288 beqz v1, 0x9c1c | goto label_23;
| }
0x0000a28c addiu a0, v0, -1 | a0 = v0 + -1;
0x0000a290 b 0xa2a4 | goto label_91;
| label_26:
0x0000a294 sw a0, 0x78(sp) | *(var_78h) = a0;
| label_27:
0x0000a298 addiu v1, a0, -1 | v1 = a0 + -1;
| if (s4 == a0) {
0x0000a29c beq s4, a0, 0x9c1c | goto label_23;
| }
0x0000a2a0 move a0, v1 | a0 = v1;
| label_91:
0x0000a2a4 lb v1, (a0) | v1 = *(a0);
0x0000a2a8 move v0, a0 | v0 = a0;
| if (v1 == a1) {
0x0000a2ac beq v1, a1, 0xa294 | goto label_26;
| }
0x0000a2b0 addiu v1, v1, -9 | v1 += -9;
0x0000a2b4 andi v1, v1, 0xff | v1 &= 0xff;
0x0000a2b8 sltiu v1, v1, 5 | v1 = (v1 < 5) ? 1 : 0;
0x0000a2bc sw a0, 0x78(sp) | *(var_78h) = a0;
| if (v1 == 0) {
0x0000a2c0 bnel v1, zero, 0xa298 | goto label_27;
| }
0x0000a2c4 lw v0, 0x78(sp) | v0 = *(var_78h);
0x0000a2c8 b 0x9c1c | goto label_23;
| label_89:
0x0000a2cc addiu s4, s4, 1 | s4++;
| label_90:
0x0000a2d0 sw s4, 0x74(sp) | *(var_74h) = s4;
0x0000a2d4 b 0xa23c | goto label_28;
| label_72:
0x0000a2d8 addiu a0, zero, 0x20 | a0 = 0x20;
| if (s4 == 0) {
0x0000a2dc bnel s4, zero, 0x9ec0 | goto label_29;
| }
0x0000a2e0 addiu v0, zero, 0xa | v0 = 0xa;
0x0000a2e4 b 0x9e78 | goto label_13;
| label_52:
0x0000a2e8 sltu a0, v0, v1 | a0 = (v0 < v1) ? 1 : 0;
0x0000a2ec addiu a1, v1, -1 | a1 = v1 + -1;
| if (a0 == 0) {
0x0000a2f0 beqz a0, 0x9b14 | goto label_30;
| }
0x0000a2f4 addiu a2, zero, 0x20 | a2 = 0x20;
| label_31:
0x0000a2f8 lb a0, (a1) | a0 = *(a1);
0x0000a2fc move v1, a1 | v1 = a1;
| if (a0 != a2) {
0x0000a300 beq a0, a2, 0xa320 |
0x0000a304 addiu a0, a0, -9 | a0 += -9;
0x0000a308 andi a0, a0, 0xff | a0 &= 0xff;
0x0000a30c sltiu a0, a0, 5 | a0 = (a0 < 5) ? 1 : 0;
0x0000a310 sw a1, 0x78(sp) | *(var_78h) = a1;
| if (a0 == 0) {
0x0000a314 bnel a0, zero, 0xa324 | goto label_92;
| }
0x0000a318 lw v1, 0x78(sp) | v1 = *(var_78h);
0x0000a31c b 0x9b14 | goto label_30;
| }
0x0000a320 sw a1, 0x78(sp) | *(var_78h) = a1;
| label_92:
0x0000a324 addiu a0, a1, -1 | a0 = a1 + -1;
| if (v0 == a1) {
0x0000a328 beq v0, a1, 0x9b14 | goto label_30;
| }
0x0000a32c move a1, a0 | a1 = a0;
0x0000a330 b 0xa2f8 | goto label_31;
| label_68:
0x0000a334 sltu v1, s5, v0 | v1 = (s5 < v0) ? 1 : 0;
0x0000a338 addiu a0, v0, -1 | a0 = v0 + -1;
| if (v1 == 0) {
0x0000a33c beqz v1, 0x9dac | goto label_32;
| }
0x0000a340 addiu a1, zero, 0x20 | a1 = 0x20;
| label_33:
0x0000a344 lb v1, (a0) | v1 = *(a0);
0x0000a348 move v0, a0 | v0 = a0;
| if (v1 != a1) {
0x0000a34c beq v1, a1, 0xa36c |
0x0000a350 addiu v1, v1, -9 | v1 += -9;
0x0000a354 andi v1, v1, 0xff | v1 &= 0xff;
0x0000a358 sltiu v1, v1, 5 | v1 = (v1 < 5) ? 1 : 0;
0x0000a35c sw a0, 0x78(sp) | *(var_78h) = a0;
| if (v1 == 0) {
0x0000a360 bnel v1, zero, 0xa370 | goto label_93;
| }
0x0000a364 lw v0, 0x78(sp) | v0 = *(var_78h);
0x0000a368 b 0x9dac | goto label_32;
| }
0x0000a36c sw a0, 0x78(sp) | *(var_78h) = a0;
| label_93:
0x0000a370 addiu v1, a0, -1 | v1 = a0 + -1;
| if (s5 == a0) {
0x0000a374 beq s5, a0, 0x9dac | goto label_32;
| }
0x0000a378 move a0, v1 | a0 = v1;
0x0000a37c b 0xa344 | goto label_33;
| label_80:
0x0000a380 lw v0, 0x34(sp) | v0 = *(var_34h);
0x0000a384 lw t9, -0x7fa8(gp) | t9 = sym.warnf;
0x0000a388 lw a3, 0x40(sp) | a3 = *(var_40h);
0x0000a38c lw a0, 0x2b8(v0) | a0 = *((v0 + 174));
0x0000a390 lw a1, 0x6c(sp) | a1 = *(var_6ch);
0x0000a394 move a2, s5 | a2 = s5;
0x0000a398 bal 0x11260 | sym_warnf ();
0x0000a39c lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a3a0 addiu a2, zero, 0x20 | a2 = 0x20;
0x0000a3a4 b 0x9fbc | goto label_34;
| label_44:
0x0000a3a8 sltu v0, s5, a0 | v0 = (s5 < a0) ? 1 : 0;
0x0000a3ac addiu v1, a0, -1 | v1 = a0 + -1;
| if (v0 == 0) {
0x0000a3b0 beqz v0, 0x9a00 | goto label_35;
| }
0x0000a3b4 addiu a1, zero, 0x20 | a1 = 0x20;
| label_36:
0x0000a3b8 lb v0, (v1) | v0 = *(v1);
0x0000a3bc move a0, v1 | a0 = v1;
| if (v0 != a1) {
0x0000a3c0 beq v0, a1, 0xa3e0 |
0x0000a3c4 addiu v0, v0, -9 | v0 += -9;
0x0000a3c8 andi v0, v0, 0xff | v0 &= 0xff;
0x0000a3cc sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x0000a3d0 sw v1, 0x78(sp) | *(var_78h) = v1;
| if (v0 == 0) {
0x0000a3d4 bnel v0, zero, 0xa3e4 | goto label_94;
| }
0x0000a3d8 lw a0, 0x78(sp) | a0 = *(var_78h);
0x0000a3dc b 0x9a00 | goto label_35;
| }
0x0000a3e0 sw v1, 0x78(sp) | *(var_78h) = v1;
| label_94:
0x0000a3e4 addiu v0, v1, -1 | v0 = v1 + -1;
| if (s5 == v1) {
0x0000a3e8 beq s5, v1, 0x9a00 | goto label_35;
| }
0x0000a3ec move v1, v0 | v1 = v0;
0x0000a3f0 b 0xa3b8 | goto label_36;
| label_66:
0x0000a3f4 lw t9, -0x7fa8(gp) | t9 = sym.warnf;
| if (a2 == 0) {
0x0000a3f8 beqz a2, 0x9d08 | goto label_37;
| }
0x0000a3fc sw v0, 0x18(sp) | *(var_18h) = v0;
0x0000a400 lw v0, 0x34(sp) | v0 = *(var_34h);
0x0000a404 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0000a408 lw a0, 0x2b8(v0) | a0 = *((v0 + 174));
| /* str.Field_encoder_not_allowed_here:__s_n */
0x0000a40c addiu a1, a1, 0x458 | a1 += 0x458;
0x0000a410 bal 0x11260 | sym_warnf ();
0x0000a414 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a418 lw v0, 0x18(sp) | v0 = *(var_18h);
0x0000a41c b 0x9d08 | goto label_37;
| label_65:
0x0000a420 lw t9, -0x7fa8(gp) | t9 = sym.warnf;
| if (s7 == 0) {
0x0000a424 beqz s7, 0x9cf0 | goto label_38;
| }
0x0000a428 sw v0, 0x18(sp) | *(var_18h) = v0;
0x0000a42c lw v0, 0x34(sp) | v0 = *(var_34h);
0x0000a430 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0000a434 lw a0, 0x2b8(v0) | a0 = *((v0 + 174));
0x0000a438 move a2, s7 | a2 = s7;
| /* str.Field_file_name_not_allowed_here:__s_n */
0x0000a43c addiu a1, a1, 0x430 | a1 += 0x430;
0x0000a440 bal 0x11260 | sym_warnf ();
0x0000a444 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a448 lw v0, 0x18(sp) | v0 = *(var_18h);
0x0000a44c b 0x9cf0 | goto label_38;
| label_84:
0x0000a450 move s4, a0 | s4 = a0;
| label_60:
0x0000a454 move v0, zero | v0 = 0;
0x0000a458 b 0x9cd4 | goto label_39;
| label_85:
0x0000a45c move v0, s0 | v0 = s0;
| label_61:
0x0000a460 move s4, a0 | s4 = a0;
0x0000a464 b 0x9cd4 | goto label_39;
| label_83:
0x0000a468 lw v0, 0x34(sp) | v0 = *(var_34h);
0x0000a46c lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0000a470 lw t9, -0x7fa8(gp) | t9 = sym.warnf;
0x0000a474 lw a0, 0x2b8(v0) | a0 = *((v0 + 174));
| /* str.Illegally_formatted_content_type_field__n */
0x0000a478 addiu a1, a1, 0x330 | a1 += section..hash;
0x0000a47c bal 0x11260 | sym_warnf ();
0x0000a480 lw gp, 0x10(sp) | gp = *(var_10h);
| label_42:
0x0000a484 lw t9, -0x7c70(gp) | t9 = sym.imp.curl_slist_free_all;
0x0000a488 lw a0, 0x20(sp) | a0 = *(var_20h);
0x0000a48c jalr t9 | t9 ();
0x0000a490 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a494 addiu v0, zero, -1 | v0 = -1;
0x0000a498 b 0x9d20 | goto label_40;
| label_45:
0x0000a49c lw v1, 0x60(sp) | v1 = *(var_60h);
0x0000a4a0 sw zero, (v1) | *(v1) = 0;
0x0000a4a4 lw v1, 0x58(sp) | v1 = *(var_58h);
0x0000a4a8 andi v0, v0, 0xff | v0 &= 0xff;
| if (v1 == 0) {
0x0000a4ac beqz v1, 0xa4f8 | goto label_95;
| }
0x0000a4b0 lw v1, 0x58(sp) | v1 = *(var_58h);
0x0000a4b4 sw zero, (v1) | *(v1) = 0;
0x0000a4b8 lw v1, 0x54(sp) | v1 = *(var_54h);
| if (v1 == 0) {
0x0000a4bc beql v1, zero, 0x9d08 | goto label_37;
| }
0x0000a4c0 sw zero, 0x20(sp) | *(var_20h) = 0;
0x0000a4c4 sw zero, 0x30(sp) | *(var_30h) = 0;
| do {
0x0000a4c8 sw zero, 0x20(sp) | *(var_20h) = 0;
0x0000a4cc b 0x9cfc | goto label_41;
| label_53:
0x0000a4d0 lw v0, -0x7fd8(gp) | v0 = *(gp);
0x0000a4d4 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0000a4d8 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0000a4dc lw a0, (v0) | a0 = *(v0);
| /* str.Out_of_memory_for_field_header__n */
0x0000a4e0 addiu a1, a1, 0x3ec | a1 += 0x3ec;
0x0000a4e4 jalr t9 | t9 ();
0x0000a4e8 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a4ec b 0xa484 | goto label_42;
| label_54:
0x0000a4f0 andi v0, v1, 0xff | v0 = v1 & 0xff;
0x0000a4f4 b 0x9cd8 | goto label_20;
| label_95:
0x0000a4f8 lw v1, 0x54(sp) | v1 = *(var_54h);
0x0000a4fc sw zero, 0x30(sp) | *(var_30h) = 0;
0x0000a500 bnel v1, zero, 0xa4c8 |
| } while (v1 == 0);
0x0000a504 sw zero, 0x20(sp) | *(var_20h) = 0;
0x0000a508 b 0x9d08 | goto label_37;
| label_77:
0x0000a50c lw v0, -0x7fd8(gp) | v0 = *(gp);
0x0000a510 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0000a514 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0000a518 lw a0, (v0) | a0 = *(v0);
| /* str.Out_of_memory_for_field_headers__n */
0x0000a51c addiu a1, a1, 0x378 | a1 += 0x378;
0x0000a520 jalr t9 | t9 ();
0x0000a524 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a528 lw t9, -0x7c6c(gp) | t9 = sym.imp.fclose;
0x0000a52c lw a0, 0x28(sp) | a0 = *(var_28h);
0x0000a530 jalr t9 | t9 ();
0x0000a534 lw v0, 0x3c(sp) | v0 = *(var_3ch);
0x0000a538 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a53c sw v0, 0x20(sp) | *(var_20h) = v0;
0x0000a540 b 0xa484 | goto label_42;
| label_67:
0x0000a544 lw t9, -0x7ce8(gp) | t9 = sym.imp.__stack_chk_fail;
0x0000a548 jalr t9 | t9 ();
0x0000a54c nop |
| label_78:
0x0000a550 sw s0, 0x3c(sp) | *(var_3ch) = s0;
0x0000a554 b 0x9f90 | goto label_16;
| label_79:
0x0000a558 lw v0, -0x7fd8(gp) | v0 = *(gp);
0x0000a55c lw t9, -0x7b6c(gp) | t9 = sym.imp.__errno_location;
0x0000a560 lw s0, (v0) | s0 = *(v0);
0x0000a564 jalr t9 | t9 ();
0x0000a568 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a56c lw t9, -0x7b78(gp) | t9 = sym.imp.strerror;
0x0000a570 lw a0, (v0) | a0 = *(v0);
0x0000a574 jalr t9 | t9 ();
0x0000a578 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a57c move a3, v0 | a3 = v0;
0x0000a580 move a2, s5 | a2 = s5;
0x0000a584 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0000a588 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
| /* str.Header_file__s_read_error:__s_n */
0x0000a58c addiu a1, a1, 0x39c | a1 += 0x39c;
0x0000a590 move a0, s0 | a0 = s0;
0x0000a594 jalr t9 | t9 ();
0x0000a598 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a59c lw t9, -0x7c6c(gp) | t9 = sym.imp.fclose;
0x0000a5a0 lw a0, 0x28(sp) | a0 = *(var_28h);
0x0000a5a4 jalr t9 | t9 ();
0x0000a5a8 lw gp, 0x10(sp) | gp = *(var_10h);
0x0000a5ac b 0xa484 | goto label_42;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x114c0 */
| #include <stdint.h>
|
; (fcn) fcn.000114c0 () | void fcn_000114c0 () {
0x000114c0 lui gp, 3 |
0x000114c4 addiu gp, gp, 0xb80 |
0x000114c8 addu gp, gp, t9 | gp += t9;
0x000114cc addiu sp, sp, -0x78 |
0x000114d0 sw s2, 0x58(sp) | *(var_58h) = s2;
0x000114d4 lw s2, -0x7cb0(gp) | s2 = *((gp - 7980));
0x000114d8 sw s4, 0x60(sp) | *(var_60h) = s4;
0x000114dc lw s4, 0x10(a1) | s4 = *((a1 + 4));
0x000114e0 lw v0, (s2) | v0 = *(s2);
0x000114e4 sw gp, 0x18(sp) | *(var_18h) = gp;
0x000114e8 sw s6, 0x68(sp) | *(var_68h) = s6;
0x000114ec sw s1, 0x54(sp) | *(var_54h) = s1;
0x000114f0 sw ra, 0x74(sp) | *(var_74h) = ra;
0x000114f4 sw fp, 0x70(sp) | *(var_70h) = fp;
0x000114f8 sw s7, 0x6c(sp) | *(var_6ch) = s7;
0x000114fc sw s5, 0x64(sp) | *(var_64h) = s5;
0x00011500 sw s3, 0x5c(sp) | *(var_5ch) = s3;
0x00011504 sw s0, 0x50(sp) | *(var_50h) = s0;
0x00011508 move s1, a2 | s1 = a2;
0x0001150c lw s6, 0x88(sp) | s6 = *(arg_88h);
0x00011510 sw v0, 0x4c(sp) | *(var_4ch) = v0;
| if (s4 == 0) {
0x00011514 beqz s4, 0x1186c | goto label_7;
| }
0x00011518 nop |
0x0001151c lw fp, 8(a1) | fp = *((a1 + 2));
0x00011520 move s0, a1 | s0 = a1;
| if (fp == 0) {
0x00011524 beqz fp, 0x1186c | goto label_7;
| }
0x00011528 sb zero, (a3) | *(a3) = 0;
0x0001152c lbu v0, 0x3c(a1) | v0 = *((a1 + 60));
0x00011530 move s3, a0 | s3 = a0;
0x00011534 move s5, a3 | s5 = a3;
0x00011538 sw zero, (s6) | *(s6) = 0;
| if (v0 != 0) {
0x0001153c bnez v0, 0x1195c | goto label_34;
| }
0x00011540 lbu v0, 0x2a5(fp) | v0 = *(arg_2a5h);
| if (v0 == 0) {
0x00011544 beqz v0, 0x118ac | goto label_5;
| }
0x00011548 nop |
| label_4:
0x0001154c lbu v0, 0xfa(fp) | v0 = *(arg_fah);
0x00011550 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| if (v0 != 0) {
0x00011554 bnez v0, 0x118c4 | goto label_20;
| }
| label_0:
0x00011558 lbu v0, 0x86(s0) | v0 = *((s0 + 134));
| if (s1 == 0) {
0x0001155c bnel s1, zero, 0x1192c | goto label_19;
| }
0x00011560 lbu v0, 0x280(fp) | v0 = *(arg_280h);
| do {
0x00011564 lw a0, 0x88(s0) | a0 = *((s0 + 34));
| if (v0 != 0) {
0x00011568 beqz v0, 0x115ac |
0x0001156c lbu v0, 0x87(s0) | v0 = *((s0 + 135));
| if (v0 == 0) {
0x00011570 beqz v0, 0x115ac | goto label_27;
| }
0x00011574 nop |
0x00011578 lw t9, -0x7b64(gp) | t9 = sym.imp.fileno;
| if (a0 == 0) {
0x0001157c beqz a0, 0x1197c | goto label_35;
| }
0x00011580 lw s1, 0x30(s0) | s1 = *((s0 + 12));
0x00011584 jalr t9 | t9 ();
0x00011588 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001158c move a2, v0 | a2 = v0;
0x00011590 move a1, s1 | a1 = s1;
0x00011594 lw t9, -0x7ea0(gp) | t9 = sym.fwrite_xattr;
0x00011598 move a0, s4 | a0 = s4;
0x0001159c bal 0x1c4c8 | sym_fwrite_xattr ();
0x000115a0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000115a4 bnez v0, 0x11e94 | goto label_36;
| }
0x000115a8 lw a0, 0x88(s0) | a0 = *((s0 + 34));
| }
| if (a0 == 0) {
| label_27:
0x000115ac beql a0, zero, 0x11980 | goto label_37;
| }
0x000115b0 lw v0, 0x90(s0) | v0 = *((s0 + 36));
0x000115b4 lbu v0, 0x86(s0) | v0 = *((s0 + 134));
0x000115b8 lw v0, 0x14(s0) | v0 = *((s0 + 5));
| if (v0 == 0) {
0x000115bc bnel v0, zero, 0x11994 | goto label_38;
| }
0x000115c0 lw t9, -0x7c44(gp) | t9 = sym.imp.fflush;
0x000115c4 jalr t9 | t9 ();
0x000115c8 nop |
0x000115cc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
| label_3:
0x000115d0 beql v0, zero, 0x11994 | goto label_38;
| }
0x000115d4 lw v0, 0x14(s0) | v0 = *((s0 + 5));
0x000115d8 lbu v0, 1(s3) | v0 = *((s3 + 1));
0x000115dc lw v0, -0x7fd8(gp) | v0 = *(gp);
| if (v0 == 0) {
0x000115e0 beqz v0, 0x11e10 | goto label_39;
| }
0x000115e4 lbu v0, (s3) | v0 = *(s3);
0x000115e8 lw v0, -0x7fd8(gp) | v0 = *(gp);
| if (v0 != 0) {
0x000115ec bnez v0, 0x11e10 | goto label_39;
| }
0x000115f0 addiu s1, zero, 0x17 | s1 = 0x17;
| label_2:
0x000115f4 lw v0, 0x14(s0) | v0 = *((s0 + 5));
| if (v0 == 0) {
| label_1:
0x000115f8 beql v0, zero, 0x119a0 | goto label_16;
| }
0x000115fc lw a0, 0x18(s3) | a0 = *((s3 + 6));
| label_6:
0x00011600 lw v0, 0x254(fp) | v0 = *(arg_254h);
0x00011604 lw t9, -0x7fac(gp) | t9 = sym.tvnow;
| if (v0 != 0) {
0x00011608 bnez v0, 0x11c60 | goto label_40;
| }
| label_15:
0x0001160c addiu v0, s1, -5 | v0 = s1 + -5;
0x00011610 sltiu v0, v0, 2 | v0 = (v0 < 2) ? 1 : 0;
0x00011614 sw zero, 0x2c(sp) | *(var_2ch) = 0;
| if (v0 == 0) {
0x00011618 bnez v0, 0x116f4 |
0x0001161c addiu v0, zero, -0x11 | v0 = -0x11;
0x00011620 and v0, s1, v0 | v0 = s1 & v0;
0x00011624 addiu a0, zero, 0xc | a0 = 0xc;
0x00011628 lw a2, -0x7fd4(gp) | a2 = *(gp);
| if (v0 != a0) {
0x0001162c beq v0, a0, 0x116f8 |
0x00011630 lbu v0, 0x24d(fp) | v0 = *(arg_24dh);
0x00011634 addiu v0, zero, 7 | v0 = 7;
| if (v0 != 0) {
0x00011638 bnez v0, 0x11d74 | goto label_41;
| }
| label_21:
0x0001163c lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| if (s1 == 0) {
0x00011640 beqz s1, 0x11e34 | goto label_42;
| }
0x00011644 lw v0, 0xf8(fp) | v0 = *(arg_f8h);
0x00011648 lui a0, 0xff | a0 = 0xffff00;
0x0001164c ori a0, a0, 0xff00 |
0x00011650 and v0, v0, a0 | v0 &= a0;
0x00011654 addiu v0, zero, 0x16 | v0 = 0x16;
| if (v0 != 0) {
0x00011658 beqz v0, 0x11668 |
0x0001165c addiu v0, sp, 0x44 | v0 = sp + 0x44;
| if (s1 == v0) {
0x00011660 beq s1, v0, 0x11e38 | goto label_43;
| }
0x00011664 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| }
0x00011668 lui a1, 0x20 | a1 = 0x200000;
0x0001166c addiu a2, sp, 0x2c | a2 = sp + 0x2c;
0x00011670 addiu a1, a1, 2 | a1 += 2;
0x00011674 move a0, s4 | a0 = s4;
0x00011678 jalr t9 | t9 ();
0x0001167c lw gp, 0x18(sp) | gp = *(var_18h);
0x00011680 lui a1, 0x10 | a1 = 0x100000;
0x00011684 addiu a2, sp, 0x44 | a2 = sp + 0x44;
0x00011688 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
0x0001168c addiu a1, a1, 0x31 | a1 += 0x31;
0x00011690 move a0, s4 | a0 = s4;
0x00011694 jalr t9 | t9 ();
0x00011698 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001169c lw t9, -0x7fa4(gp) | t9 = sym.proto_token;
0x000116a0 lw a0, 0x44(sp) | a0 = *(var_44h);
0x000116a4 bal 0x10f04 | sym_proto_token ();
0x000116a8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000116ac lw a0, -0x7e9c(gp) | a0 = *(gp);
0x000116b0 lw a0, (a0) | a0 = *(a0);
0x000116b4 lw a0, -0x7e98(gp) | a0 = *(gp);
| if (v0 == a0) {
0x000116b8 beq v0, a0, 0x11ee0 | goto label_44;
| }
0x000116bc lw a0, (a0) | a0 = *(a0);
0x000116c0 lw v0, 0x2c(sp) | v0 = *(var_2ch);
| if (v0 == a0) {
0x000116c4 beq v0, a0, 0x11ee4 | goto label_45;
| }
| label_22:
0x000116c8 lbu v0, 0x24c(fp) | v0 = *(arg_24ch);
| if (v0 == 0) {
| label_26:
0x000116cc beql v0, zero, 0x119a0 | goto label_16;
| }
0x000116d0 lw a0, 0x18(s3) | a0 = *((s3 + 6));
0x000116d4 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x000116d8 move v0, zero | v0 = 0;
0x000116dc move v1, zero | v1 = 0;
0x000116e0 sw v0, 0x30(sp) | *(var_30h) = v0;
0x000116e4 sw v1, 0x34(sp) | *(var_34h) = v1;
0x000116e8 lw s7, 0x1c(s0) | s7 = *((s0 + 7));
| /* str._retrying_all_errors_ */
0x000116ec addiu a2, a2, 0x663c | a2 += 0x663c;
0x000116f0 b 0x11710 |
| } else {
0x000116f4 lw a2, -0x7fd4(gp) | a2 = *(gp);
| }
0x000116f8 move v0, zero | v0 = 0;
0x000116fc move v1, zero | v1 = 0;
0x00011700 lw s7, 0x1c(s0) | s7 = *((s0 + 7));
0x00011704 sw v0, 0x30(sp) | *(var_30h) = v0;
0x00011708 sw v1, 0x34(sp) | *(var_34h) = v1;
| /* str.:_timeout */
0x0001170c addiu a2, a2, 0x6688 | a2 += 0x6688;
| }
| label_23:
0x00011710 lui v0, 0x1062 | v0 = 0x10624dd3;
0x00011714 addiu v0, v0, 0x4dd3 |
0x00011718 mult s7, v0 | __asm ("mult s7, v0");
0x0001171c mfhi v0 | __asm ("mfhi v0");
0x00011720 lw a1, 0x14(s0) | a1 = *((s0 + 5));
0x00011724 lw a0, 0x2b8(fp) | a0 = *(arg_2b8h);
0x00011728 sw a1, 0x10(sp) | *(var_10h_2) = a1;
0x0001172c lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00011730 sra v0, v0, 6 | v0 >>= 6;
0x00011734 lw t9, -0x7fa8(gp) | t9 = sym.warnf;
0x00011738 sra a3, s7, 0x1f | a3 = s7 >> 0x1f;
0x0001173c subu a3, v0, a3 | __asm ("subu a3, v0, a3");
| /* str.Problem__s._Will_retry_in__ld_seconds.__ld_retries_left._n */
0x00011740 addiu a1, a1, 0x6894 | a1 += 0x6894;
0x00011744 bal 0x11260 | sym_warnf ();
0x00011748 lw v0, 0x14(s0) | v0 = *((s0 + 5));
0x0001174c lw v1, 0x250(fp) | v1 = *(arg_250h);
0x00011750 addiu v0, v0, -1 | v0 += -1;
0x00011754 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011758 sw v0, 0x14(s0) | *((s0 + 5)) = v0;
| if (v1 == 0) {
0x0001175c bnez v1, 0x11784 |
0x00011760 lw v0, 0x1c(s0) | v0 = *((s0 + 7));
0x00011764 lui a0, 9 | a0 = 0x90000;
0x00011768 sll v0, v0, 1 | v0 <<= 1;
0x0001176c addiu v1, a0, 0x27c1 | v1 = a0 + 0x27c1;
0x00011770 slt v1, v0, v1 | v1 = (v0 < v1) ? 1 : 0;
0x00011774 sw v0, 0x1c(s0) | *((s0 + 7)) = v0;
| if (v1 == 0) {
0x00011778 bnel v1, zero, 0x11784 | goto label_46;
| }
0x0001177c addiu a0, a0, 0x27c0 | a0 += 0x27c0;
0x00011780 sw a0, 0x1c(s0) | *((s0 + 7)) = a0;
| }
| label_46:
0x00011784 lw a2, 0x90(s0) | a2 = *((s0 + 36));
0x00011788 lw a3, 0x94(s0) | a3 = *((s0 + 37));
0x0001178c or v0, a2, a3 | v0 = a2 | a3;
0x00011790 addiu v0, zero, 1 | v0 = 1;
| if (v0 == 0) {
0x00011794 beqz v0, 0x11cb8 | goto label_47;
| }
0x00011798 lw v0, 0x80(s0) | v0 = *((s0 + 32));
0x0001179c addiu v0, zero, 1 | v0 = 1;
| if (v0 == 0) {
0x000117a0 beqz v0, 0x11cb8 | goto label_47;
| }
0x000117a4 lw a0, 0x88(s0) | a0 = *((s0 + 34));
| if (a0 == 0) {
0x000117a8 beql a0, zero, 0x11cbc | goto label_48;
| }
0x000117ac sb v0, (s5) | *(s5) = v0;
0x000117b0 lbu v0, 1(s3) | v0 = *((s3 + 1));
0x000117b4 lw t9, -0x7c44(gp) | t9 = sym.imp.fflush;
| if (v0 == 0) {
0x000117b8 bnez v0, 0x117e0 |
0x000117bc lw v0, -0x7fd8(gp) | v0 = *(gp);
0x000117c0 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x000117c4 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x000117c8 lw a0, (v0) | a0 = *(v0);
| /* str.Throwing_away__lld_bytes_n */
0x000117cc addiu a1, a1, 0x68d0 | a1 += 0x68d0;
0x000117d0 jalr t9 | t9 ();
0x000117d4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000117d8 lw a0, 0x88(s0) | a0 = *((s0 + 34));
0x000117dc lw t9, -0x7c44(gp) | t9 = sym.imp.fflush;
| }
0x000117e0 jalr t9 | t9 ();
0x000117e4 nop |
0x000117e8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000117ec lw t9, -0x7b64(gp) | t9 = sym.imp.fileno;
0x000117f0 lw a0, 0x88(s0) | a0 = *((s0 + 34));
0x000117f4 jalr t9 | t9 ();
0x000117f8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000117fc lw a2, 0x98(s0) | a2 = *((s0 + 38));
0x00011800 lw a3, 0x9c(s0) | a3 = *((s0 + 39));
0x00011804 lw t9, -0x7c50(gp) | t9 = sym.imp.ftruncate64;
0x00011808 move a0, v0 | a0 = v0;
0x0001180c jalr t9 | t9 ();
0x00011810 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00011814 bnez v0, 0x11d0c | goto label_49;
| }
0x00011818 lw t9, -0x7c4c(gp) | t9 = sym.imp.fseek;
0x0001181c lw a0, 0x88(s0) | a0 = *((s0 + 34));
0x00011820 addiu a2, zero, 2 | a2 = 2;
0x00011824 move a1, zero | a1 = 0;
0x00011828 jalr t9 | t9 ();
0x0001182c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00011830 beqz v0, 0x11ca4 | goto label_50;
| }
0x00011834 lbu v0, 1(s3) | v0 = *((s3 + 1));
0x00011838 lw v0, -0x7fd8(gp) | v0 = *(gp);
| if (v0 != 0) {
0x0001183c beqz v0, 0x11850 |
0x00011840 lbu v0, (s3) | v0 = *(s3);
0x00011844 addiu s1, zero, 0x17 | s1 = 0x17;
| if (v0 == 0) {
0x00011848 beqz v0, 0x1186c | goto label_7;
| }
0x0001184c lw v0, -0x7fd8(gp) | v0 = *(gp);
| }
0x00011850 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00011854 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00011858 lw a0, (v0) | a0 = *(v0);
| /* str.curl:__23__Failed_seeking_to_end_of_file_n */
0x0001185c addiu a1, a1, 0x6910 | a1 += 0x6910;
0x00011860 jalr t9 | t9 ();
0x00011864 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011868 addiu s1, zero, 0x17 | s1 = 0x17;
| label_7:
0x0001186c lw a0, 0x4c(sp) | a0 = *(var_4ch);
0x00011870 lw v1, (s2) | v1 = *(s2);
0x00011874 move v0, s1 | v0 = s1;
| if (a0 != v1) {
0x00011878 bne a0, v1, 0x120d0 | goto label_51;
| }
0x0001187c lw ra, 0x74(sp) | ra = *(var_74h);
0x00011880 lw fp, 0x70(sp) | fp = *(var_70h);
0x00011884 lw s7, 0x6c(sp) | s7 = *(var_6ch);
0x00011888 lw s6, 0x68(sp) | s6 = *(var_68h);
0x0001188c lw s5, 0x64(sp) | s5 = *(var_64h);
0x00011890 lw s4, 0x60(sp) | s4 = *(var_60h);
0x00011894 lw s3, 0x5c(sp) | s3 = *(var_5ch);
0x00011898 lw s2, 0x58(sp) | s2 = *(var_58h);
0x0001189c lw s1, 0x54(sp) | s1 = *(var_54h);
0x000118a0 lw s0, 0x50(sp) | s0 = *(var_50h);
0x000118a4 addiu sp, sp, 0x78 |
0x000118a8 jr ra | return v0;
| label_5:
0x000118ac lbu v0, 1(s3) | v0 = *((s3 + 1));
| if (s1 == 0) {
0x000118b0 bnel s1, zero, 0x11b0c | goto label_52;
| }
0x000118b4 lbu v0, 0xfa(fp) | v0 = *(arg_fah);
0x000118b8 beql v0, zero, 0x11564 |
| } while (v0 == 0);
0x000118bc lbu v0, 0x280(fp) | v0 = *(arg_280h);
0x000118c0 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| label_20:
0x000118c4 lui a1, 0x20 | a1 = 0x200000;
0x000118c8 addiu a2, sp, 0x44 | a2 = sp + 0x44;
0x000118cc addiu a1, a1, 2 | a1 += 2;
0x000118d0 move a0, s4 | a0 = s4;
0x000118d4 sw zero, 0x44(sp) | *(var_44h) = 0;
0x000118d8 jalr t9 | t9 ();
0x000118dc lw a3, 0x44(sp) | a3 = *(var_44h);
0x000118e0 slti v0, a3, 0x190 | v0 = (a3 < 0x190) ? 1 : 0;
0x000118e4 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000118e8 bnez v0, 0x11558 | goto label_0;
| }
0x000118ec lbu v0, 1(s3) | v0 = *((s3 + 1));
0x000118f0 lw v0, -0x7fd8(gp) | v0 = *(gp);
| if (v0 != 0) {
0x000118f4 beqz v0, 0x11908 |
0x000118f8 lbu v0, (s3) | v0 = *(s3);
0x000118fc addiu s1, zero, 0x16 | s1 = 0x16;
| if (v0 == 0) {
0x00011900 beqz v0, 0x11928 | goto label_8;
| }
0x00011904 lw v0, -0x7fd8(gp) | v0 = *(gp);
| }
0x00011908 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0001190c lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00011910 lw a0, (v0) | a0 = *(v0);
0x00011914 addiu a2, zero, 0x16 | a2 = 0x16;
| /* str.curl:___d__The_requested_URL_returned_error:__ld_n */
0x00011918 addiu a1, a1, 0x67b0 | a1 += 0x67b0;
0x0001191c jalr t9 | t9 ();
0x00011920 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011924 addiu s1, zero, 0x16 | s1 = 0x16;
| label_8:
0x00011928 lbu v0, 0x86(s0) | v0 = *((s0 + 134));
| label_19:
0x0001192c lw v0, 0x14(s0) | v0 = *((s0 + 5));
| if (v0 == 0) {
0x00011930 bnel v0, zero, 0x115f8 | goto label_1;
| }
0x00011934 lw a0, 0x88(s0) | a0 = *((s0 + 34));
| if (a0 == 0) {
0x00011938 beql a0, zero, 0x115f8 | goto label_1;
| }
0x0001193c lw v0, 0x14(s0) | v0 = *((s0 + 5));
0x00011940 lw t9, -0x7c44(gp) | t9 = sym.imp.fflush;
0x00011944 jalr t9 | t9 ();
0x00011948 nop |
0x0001194c lw gp, 0x18(sp) | gp = *(var_18h);
| if (s1 != 0) {
0x00011950 bnez s1, 0x115f4 | goto label_2;
| }
0x00011954 b 0x115d0 | goto label_3;
0x00011958 nop |
| label_34:
0x0001195c lw t9, -0x7cc8(gp) | t9 = sym.imp.close;
0x00011960 lw a0, 0x40(a1) | a0 = *((a1 + 16));
0x00011964 jalr t9 | t9 ();
0x00011968 lbu v0, 0x2a5(fp) | v0 = *(arg_2a5h);
0x0001196c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00011970 bnez v0, 0x1154c | goto label_4;
| }
0x00011974 b 0x118ac | goto label_5;
0x00011978 nop |
| label_35:
0x0001197c lw v0, 0x90(s0) | v0 = *((s0 + 36));
| label_37:
0x00011980 lw a0, 0x94(s0) | a0 = *((s0 + 37));
0x00011984 or v0, v0, a0 | v0 |= a0;
0x00011988 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| if (v0 == 0) {
0x0001198c beqz v0, 0x11d48 | goto label_53;
| }
0x00011990 lw v0, 0x14(s0) | v0 = *((s0 + 5));
| label_38:
0x00011994 move s1, zero | s1 = 0;
| if (v0 != 0) {
0x00011998 bnez v0, 0x11600 | goto label_6;
| }
| label_29:
0x0001199c lw a0, 0x18(s3) | a0 = *((s3 + 6));
| label_16:
0x000119a0 addiu v0, zero, 1 | v0 = 1;
| if (a0 == v0) {
0x000119a4 beql a0, v0, 0x11c04 | goto label_54;
| }
0x000119a8 lw v0, 0x48(s0) | v0 = *((s0 + 18));
| label_11:
0x000119ac lbu v0, 0x87(s0) | v0 = *((s0 + 135));
| if (v0 != 0) {
| label_10:
0x000119b0 beqz v0, 0x11a10 |
0x000119b4 nop |
0x000119b8 lw a0, 0x88(s0) | a0 = *((s0 + 34));
0x000119bc lw t9, -0x7c6c(gp) | t9 = sym.imp.fclose;
| if (a0 != 0) {
0x000119c0 beqz a0, 0x11a10 |
0x000119c4 jalr t9 | t9 ();
0x000119c8 nop |
0x000119cc lw gp, 0x18(sp) | gp = *(var_18h);
| if (s1 == 0) {
0x000119d0 beqz s1, 0x11cc8 | goto label_55;
| }
0x000119d4 lbu v0, 0x2ec(fp) | v0 = *(arg_2ech);
| if (v0 == 0) {
0x000119d8 beql v0, zero, 0x11a2c | goto label_56;
| }
0x000119dc lw v0, 0x1bc(fp) | v0 = *(arg_1bch);
| label_18:
0x000119e0 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x000119e4 lw t9, -0x7eac(gp) | t9 = sym.notef;
0x000119e8 lw a2, 0x80(s0) | a2 = *((s0 + 32));
| /* str.Removing_output_file:__s_n */
0x000119ec addiu a1, a1, 0x693c | a1 += 0x693c;
0x000119f0 move a0, s3 | a0 = s3;
0x000119f4 bal 0x111d0 | sym_notef ();
0x000119f8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000119fc lw t9, -0x7c8c(gp) | t9 = sym.imp.unlink;
0x00011a00 lw a0, 0x80(s0) | a0 = *((s0 + 32));
0x00011a04 jalr t9 | t9 ();
0x00011a08 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011a0c b 0x11a28 |
| }
| } else {
0x00011a10 lw v0, 0x1bc(fp) | v0 = *(arg_1bch);
| if (s1 == 0) {
0x00011a14 bnel s1, zero, 0x11a2c | goto label_56;
| }
0x00011a18 lbu v0, (fp) | v0 = *(fp);
| label_17:
0x00011a1c lbu v0, 0x86(s0) | v0 = *((s0 + 134));
| if (v0 == 0) {
0x00011a20 bnel v0, zero, 0x11ba4 | goto label_57;
| }
0x00011a24 move s1, zero | s1 = 0;
| }
| label_9:
0x00011a28 lw v0, 0x1bc(fp) | v0 = *(arg_1bch);
| label_56:
0x00011a2c lw t9, -0x7e94(gp) | t9 = sym.ourWriteOut;
| if (v0 != 0) {
0x00011a30 beqz v0, 0x11a48 |
0x00011a34 move a2, s1 | a2 = s1;
0x00011a38 move a1, s0 | a1 = s0;
0x00011a3c move a0, fp | a0 = fp;
0x00011a40 bal 0x1b900 | sym_ourWriteOut ();
0x00011a44 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00011a48 lbu v0, 0xa7(s0) | v0 = *((s0 + 167));
| if (v0 != 0) {
0x00011a4c beql v0, zero, 0x11a70 |
0x00011a50 lbu v0, 0xa4(s0) | v0 = *((s0 + 164));
0x00011a54 lw a0, 0xa8(s0) | a0 = *((s0 + 42));
0x00011a58 lw t9, -0x7c6c(gp) | t9 = sym.imp.fclose;
| if (a0 != 0) {
0x00011a5c beqz a0, 0x11a6c |
0x00011a60 jalr t9 | t9 ();
0x00011a64 nop |
0x00011a68 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00011a6c lbu v0, 0xa4(s0) | v0 = *((s0 + 164));
| }
0x00011a70 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
| if (v0 != 0) {
0x00011a74 bnez v0, 0x11c38 | goto label_58;
| }
| label_13:
0x00011a78 lbu v0, 0xc7(s0) | v0 = *((s0 + 199));
| if (v0 != 0) {
0x00011a7c beql v0, zero, 0x11aa0 |
0x00011a80 lbu v0, 0xc4(s0) | v0 = *((s0 + 196));
0x00011a84 lw a0, 0xc8(s0) | a0 = *((s0 + 50));
0x00011a88 lw t9, -0x7c6c(gp) | t9 = sym.imp.fclose;
| if (a0 != 0) {
0x00011a8c beqz a0, 0x11a9c |
0x00011a90 jalr t9 | t9 ();
0x00011a94 nop |
0x00011a98 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00011a9c lbu v0, 0xc4(s0) | v0 = *((s0 + 196));
| }
0x00011aa0 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
| if (v0 != 0) {
0x00011aa4 bnez v0, 0x11c4c | goto label_59;
| }
| label_14:
0x00011aa8 lw t9, -0x7cc0(gp) | t9 = sym.imp.curl_easy_cleanup;
0x00011aac lw a0, 0x10(s0) | a0 = *((s0 + 4));
0x00011ab0 jalr t9 | t9 ();
0x00011ab4 lbu v0, 0x84(s0) | v0 = *((s0 + 132));
0x00011ab8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00011abc bnez v0, 0x11c24 | goto label_60;
| }
| label_12:
0x00011ac0 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00011ac4 lw a0, 0x30(s0) | a0 = *((s0 + 12));
0x00011ac8 jalr t9 | t9 ();
0x00011acc lw gp, 0x18(sp) | gp = *(var_18h);
0x00011ad0 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00011ad4 lw a0, 0x38(s0) | a0 = *((s0 + 14));
0x00011ad8 jalr t9 | t9 ();
0x00011adc lw gp, 0x18(sp) | gp = *(var_18h);
0x00011ae0 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00011ae4 lw a0, 0x13c(s0) | a0 = *((s0 + 79));
0x00011ae8 jalr t9 | t9 ();
0x00011aec lbu v0, 0x28(s3) | v0 = *((s3 + 40));
0x00011af0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00011af4 beqz v0, 0x1186c | goto label_7;
| }
0x00011af8 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00011afc lw a0, 0x140(s0) | a0 = *((s0 + 80));
0x00011b00 jalr t9 | t9 ();
0x00011b04 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011b08 b 0x1186c | goto label_7;
| label_52:
0x00011b0c lw s7, -0x7fd8(gp) | s7 = *(gp);
| if (v0 != 0) {
0x00011b10 beqz v0, 0x11b24 |
0x00011b14 lbu v0, (s3) | v0 = *(s3);
| if (v0 == 0) {
0x00011b18 beql v0, zero, 0x11cfc | goto label_61;
| }
0x00011b1c lbu v0, 0xfa(fp) | v0 = *(arg_fah);
0x00011b20 lw s7, -0x7fd8(gp) | s7 = *(gp);
| }
0x00011b24 lw a3, 0x140(s0) | a3 = *((s0 + 80));
0x00011b28 lw v1, (s7) | v1 = *(s7);
| if (a3 != 0) {
0x00011b2c beqz a3, 0x11b3c |
0x00011b30 lb v0, (a3) | v0 = *(a3);
0x00011b34 lw a1, -0x7fd4(gp) | a1 = *(gp);
| if (v0 != 0) {
0x00011b38 bnez v0, 0x11b5c | goto label_62;
| }
| }
0x00011b3c lw t9, -0x7d84(gp) | t9 = sym.imp.curl_easy_strerror;
0x00011b40 sw v1, 0x24(sp) | *(var_24h) = v1;
0x00011b44 move a0, s1 | a0 = s1;
0x00011b48 jalr t9 | t9 ();
0x00011b4c lw gp, 0x18(sp) | gp = *(var_18h);
0x00011b50 lw v1, 0x24(sp) | v1 = *(var_24h);
0x00011b54 move a3, v0 | a3 = v0;
0x00011b58 lw a1, -0x7fd4(gp) | a1 = *(gp);
| label_62:
0x00011b5c lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00011b60 move a2, s1 | a2 = s1;
| /* str.curl:___d___s_n */
0x00011b64 addiu a1, a1, 0x6694 | a1 += 0x6694;
0x00011b68 move a0, v1 | a0 = v1;
0x00011b6c jalr t9 | t9 ();
0x00011b70 addiu v0, zero, 0x3c | v0 = 0x3c;
0x00011b74 lw gp, 0x18(sp) | gp = *(var_18h);
| if (s1 != v0) {
0x00011b78 bne s1, v0, 0x11928 | goto label_8;
| }
0x00011b7c lw a0, -0x7fd4(gp) | a0 = *(gp);
0x00011b80 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x00011b84 lw a3, (s7) | a3 = *(s7);
0x00011b88 addiu a2, zero, 0x108 | a2 = aav.0x00000108;
0x00011b8c addiu a1, zero, 1 | a1 = 1;
| /* str.More_details_here:_https:__curl.se_docs_sslcerts.html_n_ncurl_failed_to_verify_the_legitimacy_of_the_server_and_therefore_could_not_nestablish_a_secure_connection_to_it._To_learn_more_about_this_situation_and_nhow_to_fix_it__please_visit_the_web_page_mentioned_above._n */
0x00011b90 addiu a0, a0, 0x66a4 | a0 += 0x66a4;
0x00011b94 jalr t9 | t9 ();
0x00011b98 addiu s1, zero, 0x3c | s1 = 0x3c;
0x00011b9c lw gp, 0x18(sp) | gp = *(var_18h);
0x00011ba0 b 0x11928 | goto label_8;
| label_57:
0x00011ba4 move s1, zero | s1 = 0;
| if (v0 == 0) {
0x00011ba8 beqz v0, 0x11a28 | goto label_9;
| }
0x00011bac lw v0, 0x80(s0) | v0 = *((s0 + 32));
0x00011bb0 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| if (v0 == 0) {
0x00011bb4 beqz v0, 0x11a28 | goto label_9;
| }
0x00011bb8 addiu t0, zero, -1 | t0 = -1;
0x00011bbc addiu t1, zero, -1 | t1 = -1;
0x00011bc0 lui a1, 0x60 | a1 = 0x600000;
0x00011bc4 addiu a2, sp, 0x30 | a2 = sp + 0x30;
0x00011bc8 addiu a1, a1, 0xe | a1 += 0xe;
0x00011bcc move a0, s4 | a0 = s4;
0x00011bd0 sw t0, 0x30(sp) | *(var_30h) = t0;
0x00011bd4 sw t1, 0x34(sp) | *(var_34h) = t1;
0x00011bd8 jalr t9 | t9 ();
0x00011bdc lw gp, 0x18(sp) | gp = *(var_18h);
0x00011be0 lw a2, 0x80(s0) | a2 = *((s0 + 32));
0x00011be4 lw a0, 0x30(sp) | a0 = *(var_30h);
0x00011be8 lw t9, -0x7e90(gp) | t9 = sym.setfiletime;
0x00011bec lw a1, 0x34(sp) | a1 = *(var_34h);
0x00011bf0 move a3, s3 | a3 = s3;
0x00011bf4 bal 0x8bb4 | sym_setfiletime ();
0x00011bf8 move s1, zero | s1 = 0;
0x00011bfc lw gp, 0x18(sp) | gp = *(var_18h);
0x00011c00 b 0x11a28 | goto label_9;
| if (v0 == 0) {
| label_54:
0x00011c04 beql v0, zero, 0x119b0 | goto label_10;
| }
0x00011c08 lbu v0, 0x87(s0) | v0 = *((s0 + 135));
0x00011c0c lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x00011c10 lw a1, 0x64(s0) | a1 = *((s0 + 25));
0x00011c14 addiu a0, zero, 0xa | a0 = 0xa;
0x00011c18 jalr t9 | t9 ();
0x00011c1c lw gp, 0x18(sp) | gp = *(var_18h);
0x00011c20 b 0x119ac | goto label_11;
| label_60:
0x00011c24 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00011c28 lw a0, 0x80(s0) | a0 = *((s0 + 32));
0x00011c2c jalr t9 | t9 ();
0x00011c30 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011c34 b 0x11ac0 | goto label_12;
| label_58:
0x00011c38 lw a0, 0xa0(s0) | a0 = *((s0 + 40));
0x00011c3c jalr t9 | t9 ();
0x00011c40 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011c44 sw zero, 0xa0(s0) | *((s0 + 40)) = 0;
0x00011c48 b 0x11a78 | goto label_13;
| label_59:
0x00011c4c lw a0, 0xc0(s0) | a0 = *((s0 + 48));
0x00011c50 jalr t9 | t9 ();
0x00011c54 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011c58 sw zero, 0xc0(s0) | *((s0 + 48)) = 0;
0x00011c5c b 0x11aa8 | goto label_14;
| label_40:
0x00011c60 addiu a0, sp, 0x3c | a0 = sp + 0x3c;
0x00011c64 bal 0x1add0 | sym_tvnow ();
0x00011c68 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011c6c lw a0, 0x3c(sp) | a0 = *(var_3ch);
0x00011c70 lw a1, 0x40(sp) | a1 = *(var_40h);
0x00011c74 lw t9, -0x7f8c(gp) | t9 = sym.tvdiff;
0x00011c78 lw a2, 0x28(s0) | a2 = *((s0 + 10));
0x00011c7c lw a3, 0x2c(s0) | a3 = *((s0 + 11));
0x00011c80 bal 0x1aea0 | sym_tvdiff ();
0x00011c84 lw a0, 0x254(fp) | a0 = *(arg_254h);
0x00011c88 addiu a1, zero, 0x3e8 | a1 = 0x3e8;
0x00011c8c mul a0, a0, a1 | __asm ("mul a0, a0, a1");
0x00011c90 slt v0, v0, a0 | v0 = (v0 < a0) ? 1 : 0;
0x00011c94 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00011c98 bnez v0, 0x1160c | goto label_15;
| }
0x00011c9c lw a0, 0x18(s3) | a0 = *((s3 + 6));
0x00011ca0 b 0x119a0 | goto label_16;
| label_50:
0x00011ca4 move v0, zero | v0 = 0;
0x00011ca8 move v1, zero | v1 = 0;
0x00011cac sw v0, 0x90(s0) | *((s0 + 36)) = v0;
0x00011cb0 sw v1, 0x94(s0) | *((s0 + 37)) = v1;
0x00011cb4 addiu v0, zero, 1 | v0 = 1;
| label_47:
0x00011cb8 sb v0, (s5) | *(s5) = v0;
| label_48:
0x00011cbc move s1, zero | s1 = 0;
0x00011cc0 sw s7, (s6) | *(s6) = s7;
0x00011cc4 b 0x1186c | goto label_7;
| if (v0 == 0) {
| label_55:
0x00011cc8 beql v0, zero, 0x11a1c | goto label_17;
| }
0x00011ccc lbu v0, (fp) | v0 = *(fp);
0x00011cd0 lbu v0, 1(s3) | v0 = *((s3 + 1));
0x00011cd4 lw v0, -0x7fd8(gp) | v0 = *(gp);
| if (v0 == 0) {
0x00011cd8 beqz v0, 0x11de4 | goto label_63;
| }
0x00011cdc lbu v0, (s3) | v0 = *(s3);
0x00011ce0 lw v0, -0x7fd8(gp) | v0 = *(gp);
| if (v0 != 0) {
0x00011ce4 bnez v0, 0x11de4 | goto label_63;
| }
0x00011ce8 lbu v0, 0x2ec(fp) | v0 = *(arg_2ech);
0x00011cec addiu s1, zero, 0x17 | s1 = 0x17;
| if (v0 == 0) {
0x00011cf0 bnel v0, zero, 0x119e0 | goto label_18;
| }
| label_25:
0x00011cf4 addiu s1, zero, 0x17 | s1 = 0x17;
0x00011cf8 b 0x11a28 | goto label_9;
| if (v0 == 0) {
| label_61:
0x00011cfc beql v0, zero, 0x1192c | goto label_19;
| }
0x00011d00 lbu v0, 0x86(s0) | v0 = *((s0 + 134));
0x00011d04 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
0x00011d08 b 0x118c4 | goto label_20;
| label_49:
0x00011d0c lbu v0, 1(s3) | v0 = *((s3 + 1));
0x00011d10 lw v0, -0x7fd8(gp) | v0 = *(gp);
| if (v0 == 0) {
0x00011d14 beqz v0, 0x11d28 | goto label_64;
| }
0x00011d18 lbu v0, (s3) | v0 = *(s3);
| if (v0 == 0) {
0x00011d1c beql v0, zero, 0x1186c | goto label_7;
| }
0x00011d20 addiu s1, zero, 0x17 | s1 = 0x17;
0x00011d24 lw v0, -0x7fd8(gp) | v0 = *(gp);
| label_64:
0x00011d28 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00011d2c lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00011d30 lw a0, (v0) | a0 = *(v0);
| /* str.curl:__23__Failed_to_truncate_file_n */
0x00011d34 addiu a1, a1, 0x68ec | a1 += 0x68ec;
0x00011d38 jalr t9 | t9 ();
0x00011d3c addiu s1, zero, 0x17 | s1 = 0x17;
0x00011d40 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011d44 b 0x1186c | goto label_7;
| label_53:
0x00011d48 lui a1, 0x20 | a1 = 0x200000;
0x00011d4c addiu a2, sp, 0x44 | a2 = sp + 0x44;
0x00011d50 addiu a1, a1, 0x23 | a1 += 0x23;
0x00011d54 move a0, s4 | a0 = s4;
0x00011d58 sw zero, 0x44(sp) | *(var_44h) = 0;
0x00011d5c jalr t9 | t9 ();
0x00011d60 lw v0, 0x44(sp) | v0 = *(var_44h);
0x00011d64 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00011d68 beqz v0, 0x11dc4 | goto label_65;
| }
| label_24:
0x00011d6c move s1, zero | s1 = 0;
0x00011d70 b 0x11928 | goto label_8;
| label_41:
0x00011d74 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| if (s1 != v0) {
0x00011d78 bne s1, v0, 0x1163c | goto label_21;
| }
0x00011d7c lui a1, 0x20 | a1 = 0x200000;
0x00011d80 move a0, s4 | a0 = s4;
0x00011d84 addiu a2, sp, 0x44 | a2 = sp + 0x44;
0x00011d88 addiu a1, a1, 0x19 | a1 += 0x19;
0x00011d8c sw zero, 0x44(sp) | *(var_44h) = 0;
0x00011d90 jalr t9 | t9 ();
0x00011d94 lw a0, 0x44(sp) | a0 = *(var_44h);
0x00011d98 addiu v0, zero, 0x92 | v0 = 0x92;
0x00011d9c lw gp, 0x18(sp) | gp = *(var_18h);
| if (a0 != v0) {
0x00011da0 bne a0, v0, 0x116c8 | goto label_22;
| }
0x00011da4 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x00011da8 move v0, zero | v0 = 0;
0x00011dac move v1, zero | v1 = 0;
0x00011db0 sw v0, 0x30(sp) | *(var_30h) = v0;
0x00011db4 sw v1, 0x34(sp) | *(var_34h) = v1;
0x00011db8 lw s7, 0x1c(s0) | s7 = *((s0 + 7));
| /* str.:_connection_refused */
0x00011dbc addiu a2, a2, 0x6670 | a2 += 0x6670;
0x00011dc0 b 0x11710 | goto label_23;
| label_65:
0x00011dc4 lw t9, -0x7f90(gp) | t9 = sym.tool_create_output_file;
0x00011dc8 move a1, fp | a1 = fp;
0x00011dcc addiu a0, s0, 0x80 | a0 = s0 + 0x80;
0x00011dd0 bal 0x7990 | sym_tool_create_output_file ();
0x00011dd4 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00011dd8 bnez v0, 0x11d6c | goto label_24;
| }
0x00011ddc addiu s1, zero, 0x17 | s1 = 0x17;
0x00011de0 b 0x11928 | goto label_8;
| label_63:
0x00011de4 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00011de8 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00011dec lw a0, (v0) | a0 = *(v0);
0x00011df0 addiu a2, zero, 0x17 | a2 = 0x17;
| /* str.curl:___d__Failed_writing_body_n */
0x00011df4 addiu a1, a1, 0x6814 | a1 += 0x6814;
0x00011df8 jalr t9 | t9 ();
0x00011dfc lbu v0, 0x2ec(fp) | v0 = *(arg_2ech);
0x00011e00 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00011e04 beqz v0, 0x11cf4 | goto label_25;
| }
0x00011e08 addiu s1, zero, 0x17 | s1 = 0x17;
0x00011e0c b 0x119e0 | goto label_18;
| label_39:
0x00011e10 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00011e14 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00011e18 lw a0, (v0) | a0 = *(v0);
0x00011e1c addiu a2, zero, 0x17 | a2 = 0x17;
| /* str.curl:___d__Failed_writing_body_n */
0x00011e20 addiu a1, a1, 0x6814 | a1 += 0x6814;
0x00011e24 jalr t9 | t9 ();
0x00011e28 addiu s1, zero, 0x17 | s1 = 0x17;
0x00011e2c lw gp, 0x18(sp) | gp = *(var_18h);
0x00011e30 b 0x115f4 | goto label_2;
| label_42:
0x00011e34 addiu v0, sp, 0x44 | v0 = sp + 0x44;
| label_43:
0x00011e38 lui a1, 0x10 | a1 = 0x100000;
0x00011e3c move a2, v0 | a2 = v0;
0x00011e40 addiu a1, a1, 0x31 | a1 += 0x31;
0x00011e44 move a0, s4 | a0 = s4;
0x00011e48 sw v0, 0x24(sp) | *(var_24h) = v0;
0x00011e4c jalr t9 | t9 ();
0x00011e50 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011e54 lw t9, -0x7fa4(gp) | t9 = sym.proto_token;
0x00011e58 lw a0, 0x44(sp) | a0 = *(var_44h);
0x00011e5c bal 0x10f04 | sym_proto_token ();
0x00011e60 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011e64 sw v0, 0x44(sp) | *(var_44h) = v0;
0x00011e68 lw a0, -0x7fa0(gp) | a0 = *(gp);
0x00011e6c lw a0, (a0) | a0 = *(a0);
0x00011e70 lw a0, -0x7f9c(gp) | a0 = *(gp);
| if (v0 == a0) {
0x00011e74 beq v0, a0, 0x11f14 | goto label_66;
| }
0x00011e78 lw a0, (a0) | a0 = *(a0);
| if (v0 == a0) {
0x00011e7c beql v0, a0, 0x11f18 | goto label_67;
| }
0x00011e80 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| label_28:
0x00011e84 lbu v0, 0x24c(fp) | v0 = *(arg_24ch);
| if (s1 == 0) {
0x00011e88 bnel s1, zero, 0x116cc | goto label_26;
| }
0x00011e8c lw a0, 0x18(s3) | a0 = *((s3 + 6));
0x00011e90 b 0x119a0 | goto label_16;
| label_36:
0x00011e94 lw t9, -0x7b6c(gp) | t9 = sym.imp.__errno_location;
0x00011e98 lw s1, 0x2b8(fp) | s1 = *(arg_2b8h);
0x00011e9c jalr t9 | t9 ();
0x00011ea0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011ea4 lw a0, (v0) | a0 = *(v0);
0x00011ea8 lw t9, -0x7b78(gp) | t9 = sym.imp.strerror;
0x00011eac lw s7, 0x80(s0) | s7 = *((s0 + 32));
0x00011eb0 jalr t9 | t9 ();
0x00011eb4 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011eb8 move a0, s1 | a0 = s1;
0x00011ebc move a3, v0 | a3 = v0;
0x00011ec0 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00011ec4 lw t9, -0x7fa8(gp) | t9 = sym.warnf;
0x00011ec8 move a2, s7 | a2 = s7;
| /* str.Error_setting_extended_attributes_on__s:__s_n */
0x00011ecc addiu a1, a1, 0x67e4 | a1 += 0x67e4;
0x00011ed0 bal 0x11260 | sym_warnf ();
0x00011ed4 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011ed8 lw a0, 0x88(s0) | a0 = *((s0 + 34));
0x00011edc b 0x115ac | goto label_27;
| label_44:
0x00011ee0 lw v0, 0x2c(sp) | v0 = *(var_2ch);
| label_45:
0x00011ee4 addiu v0, v0, -0x190 | v0 += -0x190;
0x00011ee8 sltiu v0, v0, 0x64 | v0 = (v0 < 0x64) ? 1 : 0;
| if (v0 == 0) {
0x00011eec beql v0, zero, 0x116cc | goto label_26;
| }
0x00011ef0 lbu v0, 0x24c(fp) | v0 = *(arg_24ch);
0x00011ef4 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x00011ef8 move v0, zero | v0 = 0;
0x00011efc move v1, zero | v1 = 0;
0x00011f00 sw v0, 0x30(sp) | *(var_30h) = v0;
0x00011f04 sw v1, 0x34(sp) | *(var_34h) = v1;
0x00011f08 lw s7, 0x1c(s0) | s7 = *((s0 + 7));
| /* str.:_FTP_error */
0x00011f0c addiu a2, a2, 0x6654 | a2 += 0x6654;
0x00011f10 b 0x11710 | goto label_23;
| label_66:
0x00011f14 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| label_67:
0x00011f18 lui a1, 0x20 | a1 = 0x200000;
0x00011f1c move a0, s4 | a0 = s4;
0x00011f20 addiu a2, sp, 0x2c | a2 = sp + 0x2c;
0x00011f24 addiu a1, a1, 2 | a1 += 2;
0x00011f28 jalr t9 | t9 ();
0x00011f2c lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x00011f30 addiu a0, zero, 0x1f4 | a0 = 0x1f4;
0x00011f34 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == a0) {
0x00011f38 beq v0, a0, 0x11f58 | goto label_68;
| }
0x00011f3c slti a0, v0, 0x1f5 | a0 = (v0 < 0x1f5) ? 1 : 0;
0x00011f40 addiu a0, zero, 0x198 | a0 = 0x198;
| if (a0 == 0) {
0x00011f44 beqz a0, 0x120a8 | goto label_69;
| }
0x00011f48 addiu a0, zero, 0x1ad | a0 = 0x1ad;
| if (v0 == a0) {
0x00011f4c beq v0, a0, 0x11f58 | goto label_68;
| }
| if (v0 != a0) {
0x00011f50 bne v0, a0, 0x11e84 | goto label_28;
| }
0x00011f54 nop |
| label_68:
0x00011f58 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| label_31:
0x00011f5c move v0, zero | v0 = 0;
0x00011f60 move v1, zero | v1 = 0;
0x00011f64 lui a1, 0x60 | a1 = 0x600039;
0x00011f68 addiu a1, a1, 0x39 |
0x00011f6c move a0, s4 | a0 = s4;
0x00011f70 addiu a2, sp, 0x30 | a2 = sp + 0x30;
0x00011f74 sw v0, 0x30(sp) | *(var_30h) = v0;
0x00011f78 sw v1, 0x34(sp) | *(var_34h) = v1;
0x00011f7c lw s7, 0x1c(s0) | s7 = *((s0 + 7));
0x00011f80 jalr t9 | t9 ();
0x00011f84 lw a0, 0x30(sp) | a0 = *(var_30h);
0x00011f88 lw v0, 0x34(sp) | v0 = *(var_34h);
0x00011f8c or a1, a0, v0 | a1 = a0 | v0;
0x00011f90 lw gp, 0x18(sp) | gp = *(var_18h);
| if (a1 != 0) {
0x00011f94 beqz a1, 0x11fd0 |
| if (v0 > 0) {
0x00011f98 bgtzl v0, 0x120a0 | goto label_70;
| }
0x00011f9c lui s7, 0x7fff | s7 = 0x7fff0000;
0x00011fa0 addiu s7, zero, 0x3e8 | s7 = 0x3e8;
| if (v0 != 0) {
0x00011fa4 bnel v0, zero, 0x11fc0 |
0x00011fa8 lui v0, 0x20 | v0 = 0x20c49c;
0x00011fac ori v0, v0, 0xc49c |
0x00011fb0 sltu v0, a0, v0 | v0 = (a0 < v0) ? 1 : 0;
0x00011fb4 lui s7, 0x7fff | s7 = 0x7fff0000;
| if (v0 == 0) {
0x00011fb8 beqz v0, 0x120a0 | goto label_70;
| }
0x00011fbc addiu s7, zero, 0x3e8 | s7 = 0x3e8;
| }
0x00011fc0 mul s7, a0, s7 | __asm ("mul s7, a0, s7");
| label_30:
0x00011fc4 lw v0, 0x254(fp) | v0 = *(arg_254h);
0x00011fc8 lw t9, -0x7fac(gp) | t9 = sym.tvnow;
| if (v0 != 0) {
0x00011fcc bnez v0, 0x11fdc | goto label_71;
| }
| }
0x00011fd0 lw a2, -0x7fd4(gp) | a2 = *(gp);
| do {
| /* str.:_HTTP_error */
0x00011fd4 addiu a2, a2, 0x6660 | a2 += 0x6660;
0x00011fd8 b 0x11710 | goto label_23;
| label_71:
0x00011fdc lw a0, 0x24(sp) | a0 = *(var_24h);
0x00011fe0 bal 0x1add0 | sym_tvnow ();
0x00011fe4 lw gp, 0x18(sp) | gp = *(var_18h);
0x00011fe8 lw a2, 0x28(s0) | a2 = *((s0 + 10));
0x00011fec lw a3, 0x2c(s0) | a3 = *((s0 + 11));
0x00011ff0 lw t9, -0x7f8c(gp) | t9 = sym.tvdiff;
0x00011ff4 lw a0, 0x44(sp) | a0 = *(var_44h);
0x00011ff8 lw a1, 0x48(sp) | a1 = *(var_48h);
0x00011ffc bal 0x1aea0 | sym_tvdiff ();
0x00012000 lui a0, 0x1062 | a0 = 0x10624dd3;
0x00012004 addiu a0, a0, 0x4dd3 |
0x00012008 mult v0, a0 | __asm ("mult v0, a0");
0x0001200c mfhi a0 | __asm ("mfhi a0");
0x00012010 sra v0, v0, 0x1f | v0 >>= 0x1f;
0x00012014 lw a2, 0x34(sp) | a2 = *(var_34h);
0x00012018 lui a1, 0x7fff | a1 = 0x7fffffff;
0x0001201c ori a1, a1, 0xffff |
0x00012020 sra a0, a0, 6 | a0 >>= 6;
0x00012024 subu v0, a0, v0 | __asm ("subu v0, a0, v0");
0x00012028 sra a3, v0, 0x1f | a3 = v0 >> 0x1f;
0x0001202c lw a0, 0x30(sp) | a0 = *(var_30h);
0x00012030 subu a1, a1, a2 | __asm ("subu a1, a1, a2");
0x00012034 slt t0, a1, a3 | t0 = (a1 < a3) ? 1 : 0;
0x00012038 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001203c nor t1, zero, a0 | __asm ("nor t1, zero, a0");
| if (t0 != 0) {
0x00012040 bnez t0, 0x12084 | goto label_72;
| }
| if (a3 == a1) {
0x00012044 beql a3, a1, 0x120c0 | goto label_73;
| }
0x00012048 sltu t1, t1, v0 | t1 = (t1 < v0) ? 1 : 0;
0x0001204c addu v0, a0, v0 | v0 = a0 + v0;
| label_32:
0x00012050 lw t0, 0x254(fp) | t0 = *(arg_254h);
0x00012054 addu a2, a2, a3 | a2 += a3;
0x00012058 sltu a0, v0, a0 | a0 = (v0 < a0) ? 1 : 0;
0x0001205c addu a0, a0, a2 | a0 += a2;
0x00012060 sra a1, t0, 0x1f | a1 = t0 >> 0x1f;
0x00012064 slt a2, a1, a0 | a2 = (a1 < a0) ? 1 : 0;
0x00012068 lw a1, -0x7fd4(gp) | a1 = *(gp);
| if (a2 == 0) {
0x0001206c bnel a2, zero, 0x12088 | goto label_33;
| }
0x00012070 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x00012074 bne a0, a1, 0x11fd4 |
| } while (a0 != a1);
0x00012078 sltu v0, t0, v0 | v0 = (t0 < v0) ? 1 : 0;
| /* str.:_HTTP_error */
0x0001207c addiu a2, a2, 0x6660 | a2 += 0x6660;
| if (v0 == 0) {
0x00012080 beqz v0, 0x11710 | goto label_23;
| }
| label_72:
0x00012084 lw a1, -0x7fd4(gp) | a1 = *(gp);
| label_33:
0x00012088 lw t9, -0x7fa8(gp) | t9 = sym.warnf;
0x0001208c lw a0, 0x2b8(fp) | a0 = *(arg_2b8h);
| /* str.The_Retry_After:_time_would_make_this_command_line_exceed_the_maximum_allowed_time_for_retries. */
0x00012090 addiu a1, a1, 0x6834 | a1 += 0x6834;
0x00012094 bal 0x11260 | sym_warnf ();
0x00012098 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001209c b 0x1199c | goto label_29;
| label_70:
0x000120a0 ori s7, s7, 0xffff | s7 |= 0xffff;
0x000120a4 b 0x11fc4 | goto label_30;
| label_69:
0x000120a8 addiu v0, v0, -0x1f6 | v0 += -0x1f6;
0x000120ac sltiu v0, v0, 3 | v0 = (v0 < 3) ? 1 : 0;
| if (v0 == 0) {
0x000120b0 beqz v0, 0x11e84 | goto label_28;
| }
0x000120b4 nop |
0x000120b8 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
0x000120bc b 0x11f5c | goto label_31;
| label_73:
0x000120c0 addu v0, a0, v0 | v0 = a0 + v0;
| if (t1 == 0) {
0x000120c4 beqz t1, 0x12050 | goto label_32;
| }
0x000120c8 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x000120cc b 0x12088 | goto label_33;
| label_51:
0x000120d0 lw t9, -0x7ce8(gp) | t9 = sym.imp.__stack_chk_fail;
0x000120d4 jalr t9 | t9 ();
0x000120d8 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x1b3e8 */
| #include <stdint.h>
|
; (fcn) fcn.0001b3e8 () | void fcn_0001b3e8 () {
0x0001b3e8 lui gp, 2 |
0x0001b3ec addiu gp, gp, 0x6c58 |
0x0001b3f0 addu gp, gp, t9 | gp += t9;
0x0001b3f4 addiu sp, sp, -0x70 |
0x0001b3f8 lw t9, -0x7f1c(gp) | t9 = sym.curlx_dyn_init;
0x0001b3fc sw s3, 0x54(sp) | *(var_54h) = s3;
0x0001b400 lw s3, -0x7cb0(gp) | s3 = *((gp - 7980));
0x0001b404 sw s4, 0x58(sp) | *(var_58h) = s4;
0x0001b408 sw s1, 0x4c(sp) | *(var_4ch) = s1;
0x0001b40c lw v0, (s3) | v0 = *(s3);
0x0001b410 move s4, a1 | s4 = a1;
0x0001b414 addiu s1, sp, 0x34 | s1 = sp + 0x34;
0x0001b418 sw gp, 0x10(sp) | *(var_10h) = gp;
0x0001b41c sw s7, 0x64(sp) | *(var_64h) = s7;
0x0001b420 sw s6, 0x60(sp) | *(var_60h) = s6;
0x0001b424 sw s0, 0x48(sp) | *(var_48h) = s0;
0x0001b428 sw a0, 0x1c(sp) | *(var_1ch) = a0;
0x0001b42c lui a1, 4 | a1 = 0x40000;
0x0001b430 sw ra, 0x6c(sp) | *(var_6ch) = ra;
0x0001b434 sw fp, 0x68(sp) | *(var_68h) = fp;
0x0001b438 sw s5, 0x5c(sp) | *(var_5ch) = s5;
0x0001b43c sw s2, 0x50(sp) | *(var_50h) = s2;
0x0001b440 move a0, s1 | a0 = s1;
0x0001b444 sw v0, 0x44(sp) | *(var_44h) = v0;
0x0001b448 sw zero, 0x28(sp) | *(var_28h) = 0;
0x0001b44c move s6, a2 | s6 = a2;
0x0001b450 move s0, a3 | s0 = a3;
0x0001b454 lbu s7, 0x80(sp) | s7 = *(arg_80h);
0x0001b458 bal 0x1cca0 | sym_curlx_dyn_init ();
0x0001b45c lw a1, 8(s4) | a1 = *((s4 + 2));
0x0001b460 lw gp, 0x10(sp) | gp = *(var_10h);
| if (a1 != 0) {
0x0001b464 beqz a1, 0x1b4e0 |
0x0001b468 lui v0, 0x20 | v0 = 0x20002e;
0x0001b46c addiu v0, v0, 0x2e |
0x0001b470 lw a0, 0x10(s6) | a0 = *((s6 + 4));
0x0001b474 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| if (a1 == v0) {
0x0001b478 beq a1, v0, 0x1b62c | goto label_3;
| }
0x0001b47c addiu a2, sp, 0x28 | a2 = sp + 0x28;
0x0001b480 jalr t9 | t9 ();
0x0001b484 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0001b488 bnez v0, 0x1b5a0 |
0x0001b48c lw v0, 0x28(sp) | v0 = *(var_28h);
| if (v0 == 0) {
0x0001b490 beqz v0, 0x1b5a0 | goto label_0;
| }
0x0001b494 nop |
0x0001b498 move s0, zero | s0 = 0;
| label_2:
0x0001b49c lw t9, -0x7b68(gp) | t9 = sym.imp.fputs;
| if (s7 == 0) {
0x0001b4a0 beqz s7, 0x1b838 | goto label_4;
| }
0x0001b4a4 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0001b4a8 lw s2, 0x1c(sp) | s2 = *(var_1ch);
0x0001b4ac lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0001b4b0 lw a2, (s4) | a2 = *(s4);
| /* str.__s_: */
0x0001b4b4 addiu a1, a1, 0x7628 | a1 += 0x7628;
0x0001b4b8 move a0, s2 | a0 = s2;
0x0001b4bc jalr t9 | t9 ();
0x0001b4c0 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001b4c4 lw a1, 0x28(sp) | a1 = *(var_28h);
0x0001b4c8 move a2, zero | a2 = 0;
0x0001b4cc lw t9, -0x7dc4(gp) | t9 = sym.jsonWriteString;
0x0001b4d0 move a0, s2 | a0 = s2;
0x0001b4d4 bal 0x1be40 | sym_jsonWriteString ();
0x0001b4d8 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001b4dc b 0x1b5ac |
| } else {
0x0001b4e0 lw s2, 4(s4) | s2 = *((s4 + 1));
0x0001b4e4 sltiu v0, s2, 0x25 | v0 = (s2 < 0x25) ? 1 : 0;
0x0001b4e8 lw v1, -0x7fd4(gp) | v1 = *(gp);
| if (v0 == 0) {
0x0001b4ec beqz v0, 0x1b5a0 | goto label_0;
| }
0x0001b4f0 sll v0, s2, 2 | v0 = s2 << 2;
0x0001b4f4 addiu v1, v1, 0x79f0 | v1 += 0x79f0;
0x0001b4f8 lwx v0, v0(v1) | __asm ("lwx v0, v0(v1)");
0x0001b4fc addu v0, v0, gp | v0 += gp;
0x0001b500 jr v0 | v0 ();
0x0001b504 nop |
| }
| label_0:
0x0001b5a0 lw a1, -0x7fd4(gp) | a1 = *(gp);
| if (s7 != 0) {
0x0001b5a4 bnez s7, 0x1b60c | goto label_5;
| }
0x0001b5a8 move s0, zero | s0 = 0;
| }
| do {
| label_1:
0x0001b5ac lw t9, -0x7c3c(gp) | t9 = sym.imp.curl_free;
0x0001b5b0 move a0, s0 | a0 = s0;
0x0001b5b4 jalr t9 | t9 ();
0x0001b5b8 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001b5bc lw t9, -0x7e80(gp) | t9 = sym.curlx_dyn_free;
0x0001b5c0 move a0, s1 | a0 = s1;
0x0001b5c4 bal 0x1ccb4 | sym_curlx_dyn_free ();
0x0001b5c8 lw a0, 0x44(sp) | a0 = *(var_44h);
0x0001b5cc lw v1, (s3) | v1 = *(s3);
0x0001b5d0 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001b5d4 addiu v0, zero, 1 | v0 = 1;
| if (a0 != v1) {
0x0001b5d8 bne a0, v1, 0x1b8f4 | goto label_6;
| }
0x0001b5dc lw ra, 0x6c(sp) | ra = *(var_6ch);
0x0001b5e0 lw fp, 0x68(sp) | fp = *(var_68h);
0x0001b5e4 lw s7, 0x64(sp) | s7 = *(var_64h);
0x0001b5e8 lw s6, 0x60(sp) | s6 = *(var_60h);
0x0001b5ec lw s5, 0x5c(sp) | s5 = *(var_5ch);
0x0001b5f0 lw s4, 0x58(sp) | s4 = *(var_58h);
0x0001b5f4 lw s3, 0x54(sp) | s3 = *(var_54h);
0x0001b5f8 lw s2, 0x50(sp) | s2 = *(var_50h);
0x0001b5fc lw s1, 0x4c(sp) | s1 = *(var_4ch);
0x0001b600 lw s0, 0x48(sp) | s0 = *(var_48h);
0x0001b604 addiu sp, sp, 0x70 |
0x0001b608 jr ra | return v1;
| label_5:
0x0001b60c lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0001b610 lw a2, (s4) | a2 = *(s4);
0x0001b614 lw a0, 0x1c(sp) | a0 = *(var_1ch);
| /* str.__s_:null */
0x0001b618 addiu a1, a1, 0x763c | a1 += 0x763c;
0x0001b61c jalr t9 | t9 ();
0x0001b620 move s0, zero | s0 = 0;
0x0001b624 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001b628 b 0x1b5ac |
| } while (1);
| label_3:
0x0001b62c addiu a2, sp, 0x30 | a2 = sp + 0x30;
0x0001b630 sw zero, 0x30(sp) | *(var_30h) = 0;
0x0001b634 jalr t9 | t9 ();
0x0001b638 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != 0) {
0x0001b63c bnez v0, 0x1b5a0 | goto label_0;
| }
0x0001b640 lw a1, 0x30(sp) | a1 = *(var_30h);
0x0001b644 lw v1, -0x7fd4(gp) | v1 = *(gp);
| if (a1 == 0) {
0x0001b648 beqz a1, 0x1b84c | goto label_7;
| }
0x0001b64c lw v0, -0x7fb8(gp) | v0 = *((gp - 8174));
0x0001b650 addiu v1, v1, 0x3e74 | v1 += aav.0x00003e74;
0x0001b654 addiu v0, v0, -0x6048 | v0 += -0x6048;
0x0001b658 b 0x1b66c |
| while (v1 != 0) {
0x0001b65c lw a0, 4(v0) | a0 = *((v0 + 1));
| if (a0 == a1) {
0x0001b660 beql a0, a1, 0x1b858 | goto label_8;
| }
0x0001b664 sw v1, 0x28(sp) | *(var_28h) = v1;
0x0001b668 lw v1, 8(v0) | v1 = *((v0 + 2));
0x0001b66c addiu v0, v0, 8 | v0 += 8;
0x0001b670 bnez v1, 0x1b65c |
| }
0x0001b674 b 0x1b5a0 | goto label_0;
0x0001b678 nop |
| label_4:
0x0001b838 lw a0, 0x28(sp) | a0 = *(var_28h);
0x0001b83c lw a1, 0x1c(sp) | a1 = *(var_1ch);
0x0001b840 jalr t9 | t9 ();
0x0001b844 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001b848 b 0x1b5ac | goto label_1;
| label_7:
0x0001b84c lw v1, -0x7fd4(gp) | v1 = *(gp);
| /* esilref: '!' */
0x0001b850 addiu v1, v1, 0x2398 | v1 += 0x2398;
0x0001b854 sw v1, 0x28(sp) | *(var_28h) = v1;
| label_8:
0x0001b858 move s0, zero | s0 = 0;
0x0001b85c b 0x1b49c | goto label_2;
| label_6:
0x0001b8f4 lw t9, -0x7ce8(gp) | t9 = sym.imp.__stack_chk_fail;
0x0001b8f8 jalr t9 | t9 ();
0x0001b8fc nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x5960 */
| #include <stdint.h>
|
; (fcn) main () | int32_t main () {
| /* [13] -r-x section size 104624 named .text */
0x00005960 lui gp, 4 |
0x00005964 addiu gp, gp, -0x3920 |
0x00005968 addu gp, gp, t9 | gp += t9;
0x0000596c addiu sp, sp, -0x88 |
0x00005970 lw t9, -0x7bf0(gp) | t9 = sym.imp.memset;
0x00005974 sw s2, 0x74(sp) | *(var_74h) = s2;
0x00005978 lw s2, -0x7cb0(gp) | s2 = *((gp - 7980));
0x0000597c sw s1, 0x70(sp) | *(var_70h) = s1;
0x00005980 addiu s1, sp, 0x18 | s1 = sp + 0x18;
0x00005984 lw v0, (s2) | v0 = *(s2);
0x00005988 sw gp, 0x10(sp) | *(var_10h) = gp;
0x0000598c sw ra, 0x84(sp) | *(var_84h) = ra;
0x00005990 sw s5, 0x80(sp) | *(var_80h) = s5;
0x00005994 sw s4, 0x7c(sp) | *(var_7ch) = s4;
0x00005998 sw s3, 0x78(sp) | *(var_78h) = s3;
0x0000599c sw s0, 0x6c(sp) | *(var_6ch) = s0;
0x000059a0 addiu a2, zero, 0x44 | a2 = 0x44;
0x000059a4 move s4, a0 | s4 = a0;
0x000059a8 move s5, a1 | s5 = a1;
0x000059ac move a0, s1 | a0 = s1;
0x000059b0 move a1, zero | a1 = 0;
0x000059b4 sw v0, 0x64(sp) | *(var_64h) = v0;
0x000059b8 addiu s0, zero, -1 | s0 = -1;
0x000059bc jalr t9 | t9 ();
0x000059c0 lw gp, 0x10(sp) | gp = *(var_10h);
0x000059c4 lw t9, -0x7fdc(gp) | t9 = sym.tool_init_stderr;
0x000059c8 addiu s3, sp, 0x5c | s3 = sp + 0x5c;
0x000059cc bal 0x199a0 | sym_tool_init_stderr ();
0x000059d0 lw gp, 0x10(sp) | gp = *(var_10h);
| do {
0x000059d4 lw t9, -0x7d40(gp) | t9 = sym.imp.fcntl;
0x000059d8 addiu a1, zero, 1 | a1 = 1;
0x000059dc move a0, zero | a0 = 0;
0x000059e0 jalr t9 | t9 ();
0x000059e4 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != s0) {
0x000059e8 beq v0, s0, 0x5a1c |
0x000059ec lw t9, -0x7d40(gp) | t9 = sym.imp.fcntl;
0x000059f0 addiu a1, zero, 1 | a1 = 1;
0x000059f4 addiu a0, zero, 1 | a0 = 1;
0x000059f8 jalr t9 | t9 ();
0x000059fc lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == s0) {
0x00005a00 beq v0, s0, 0x5a1c | goto label_2;
| }
0x00005a04 lw t9, -0x7d40(gp) | t9 = sym.imp.fcntl;
0x00005a08 addiu a1, zero, 1 | a1 = 1;
0x00005a0c addiu a0, zero, 2 | a0 = 2;
0x00005a10 jalr t9 | t9 ();
0x00005a14 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 != s0) {
0x00005a18 bne v0, s0, 0x5a80 | goto label_3;
| }
| }
| label_2:
0x00005a1c lw t9, -0x7d64(gp) | t9 = sym.imp.pipe;
0x00005a20 move a0, s3 | a0 = s3;
0x00005a24 jalr t9 | t9 ();
0x00005a28 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005a2c beqz v0, 0x59d4 |
| } while (v0 == 0);
0x00005a30 lw v0, -0x7fd8(gp) | v0 = *(gp);
0x00005a34 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00005a38 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00005a3c lw a0, (v0) | a0 = *(v0);
| /* str.curl:_out_of_file_descriptors_n */
0x00005a40 addiu a1, a1, 0x65d0 | a1 += 0x65d0;
0x00005a44 jalr t9 | t9 ();
0x00005a48 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005a4c addiu v0, zero, 2 | v0 = 2;
| do {
| label_0:
0x00005a50 lw a0, 0x64(sp) | a0 = *(var_64h);
0x00005a54 lw v1, (s2) | v1 = *(s2);
0x00005a58 lw ra, 0x84(sp) | ra = *(var_84h);
| if (a0 != v1) {
0x00005a5c bne a0, v1, 0x5bfc | goto label_4;
| }
0x00005a60 lw s5, 0x80(sp) | s5 = *(var_80h);
0x00005a64 lw s4, 0x7c(sp) | s4 = *(var_7ch);
0x00005a68 lw s3, 0x78(sp) | s3 = *(var_78h);
0x00005a6c lw s2, 0x74(sp) | s2 = *(var_74h);
0x00005a70 lw s1, 0x70(sp) | s1 = *(var_70h);
0x00005a74 lw s0, 0x6c(sp) | s0 = *(var_6ch);
0x00005a78 addiu sp, sp, 0x88 |
0x00005a7c jr ra | return v0;
| label_3:
0x00005a80 lw t9, -0x7ba0(gp) | t9 = sym.imp.signal;
0x00005a84 addiu a1, zero, 1 | a1 = 1;
0x00005a88 addiu a0, zero, 0xd | a0 = 0xd;
0x00005a8c jalr t9 | t9 ();
0x00005a90 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005a94 addiu v0, zero, 1 | v0 = 1;
0x00005a98 sb v0, 0x39(sp) | *(var_39h) = v0;
0x00005a9c lw t9, -0x7ce0(gp) | t9 = sym.imp.malloc;
0x00005aa0 addiu v0, zero, 0x32 | v0 = 0x32;
0x00005aa4 addiu a0, zero, 0x2f0 | a0 = 0x2f0;
0x00005aa8 sb zero, 0x18(sp) | *(var_18h) = 0;
0x00005aac sw v0, 0x44(sp) | *(var_44h) = v0;
0x00005ab0 jalr t9 | t9 ();
0x00005ab4 sw v0, 0x58(sp) | *(var_58h) = v0;
0x00005ab8 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005abc sw v0, 0x50(sp) | *(var_50h) = v0;
| if (v0 == 0) {
0x00005ac0 beqz v0, 0x5bd8 | goto label_5;
| }
0x00005ac4 lw t9, -0x7d60(gp) | t9 = sym.imp.curl_global_init;
0x00005ac8 addiu a0, zero, 3 | a0 = 3;
0x00005acc jalr t9 | t9 ();
0x00005ad0 move s0, v0 | s0 = v0;
0x00005ad4 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00005ad8 beqz v0, 0x5b0c | goto label_6;
| }
0x00005adc lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00005ae0 lw t9, -0x7fd0(gp) | t9 = sym.errorf;
| /* str.error_initializing_curl_library_n */
0x00005ae4 addiu a1, a1, 0x6590 | a1 += 0x6590;
| label_1:
0x00005ae8 move a0, s1 | a0 = s1;
0x00005aec bal 0x113b0 | sym_errorf ();
0x00005af0 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005af4 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00005af8 lw a0, 0x50(sp) | a0 = *(var_50h);
0x00005afc jalr t9 | t9 ();
0x00005b00 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005b04 move v0, s0 | v0 = s0;
0x00005b08 b 0x5a50 |
| } while (1);
| label_6:
0x00005b0c lw t9, -0x7fcc(gp) | t9 = sym.get_libcurl_info;
0x00005b10 bal 0x10ce0 | sym_get_libcurl_info ();
0x00005b14 nop |
0x00005b18 move s0, v0 | s0 = v0;
0x00005b1c lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00005b20 bnez v0, 0x5bc8 |
0x00005b24 lw t9, -0x7fc8(gp) | t9 = sym.config_init;
0x00005b28 lw a0, 0x50(sp) | a0 = *(var_50h);
0x00005b2c bal 0x7f80 | sym_config_init ();
0x00005b30 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005b34 lw v0, 0x50(sp) | v0 = *(var_50h);
0x00005b38 move a2, s5 | a2 = s5;
0x00005b3c lw t9, -0x7fc4(gp) | t9 = sym.operate;
0x00005b40 move a1, s4 | a1 = s4;
0x00005b44 move a0, s1 | a0 = s1;
0x00005b48 sw s1, 0x2b8(v0) | *((v0 + 174)) = s1;
0x00005b4c bal 0x15988 | sym_operate ();
0x00005b50 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005b54 lw t9, -0x7bc0(gp) | t9 = sym.imp.curl_global_cleanup;
0x00005b58 move s0, v0 | s0 = v0;
0x00005b5c jalr t9 | t9 ();
0x00005b60 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005b64 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00005b68 lw a0, 0x1c(sp) | a0 = *(var_1ch);
0x00005b6c jalr t9 | t9 ();
0x00005b70 lbu v0, 0x24(sp) | v0 = *(var_24h);
0x00005b74 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005b78 sw zero, 0x1c(sp) | *(var_1ch) = 0;
| if (v0 != 0) {
0x00005b7c beqz v0, 0x5b98 |
0x00005b80 lw a0, 0x20(sp) | a0 = *(var_20h);
0x00005b84 lw t9, -0x7c6c(gp) | t9 = sym.imp.fclose;
| if (a0 == 0) {
0x00005b88 beqz a0, 0x5b98 | goto label_7;
| }
0x00005b8c jalr t9 | t9 ();
0x00005b90 nop |
0x00005b94 lw gp, 0x10(sp) | gp = *(var_10h);
| }
| label_7:
0x00005b98 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00005b9c lw a0, 0x34(sp) | a0 = *(var_34h);
0x00005ba0 sw zero, 0x20(sp) | *(var_20h) = 0;
0x00005ba4 jalr t9 | t9 ();
0x00005ba8 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005bac lw a0, 0x58(sp) | a0 = *(var_58h);
0x00005bb0 lw t9, -0x7fc0(gp) | t9 = sym.config_free;
0x00005bb4 sw zero, 0x34(sp) | *(var_34h) = 0;
0x00005bb8 bal 0x8000 | sym_config_free ();
0x00005bbc lw gp, 0x10(sp) | gp = *(var_10h);
0x00005bc0 move v0, s0 | v0 = s0;
0x00005bc4 b 0x5a50 | goto label_0;
| }
0x00005bc8 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00005bcc lw t9, -0x7fd0(gp) | t9 = sym.errorf;
| /* str.error_retrieving_curl_library_information_n */
0x00005bd0 addiu a1, a1, 0x6564 | a1 += aav.0x00006564;
0x00005bd4 b 0x5ae8 | goto label_1;
| label_5:
0x00005bd8 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00005bdc lw t9, -0x7fd0(gp) | t9 = sym.errorf;
| /* str.error_initializing_curl_n */
0x00005be0 addiu a1, a1, 0x65b4 | a1 += 0x65b4;
0x00005be4 move a0, s1 | a0 = s1;
0x00005be8 addiu s0, zero, 2 | s0 = 2;
0x00005bec bal 0x113b0 | sym_errorf ();
0x00005bf0 lw gp, 0x10(sp) | gp = *(var_10h);
0x00005bf4 move v0, s0 | v0 = s0;
0x00005bf8 b 0x5a50 | goto label_0;
| label_4:
0x00005bfc lw t9, -0x7ce8(gp) | t9 = sym.imp.__stack_chk_fail;
0x00005c00 jalr t9 | t9 ();
0x00005c04 nop |
0x00005c08 nop |
0x00005c0c nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x8790 */
| #include <stdint.h>
|
; (fcn) sym.create_dir_hierarchy () | void create_dir_hierarchy () {
0x00008790 lui gp, 4 |
0x00008794 addiu gp, gp, -0x6750 |
0x00008798 addu gp, gp, t9 | gp += t9;
0x0000879c addiu sp, sp, -0x48 |
0x000087a0 lw t9, -0x7c88(gp) | t9 = sym.imp.strlen;
0x000087a4 sw gp, 0x18(sp) | *(var_18h) = gp;
0x000087a8 sw ra, 0x44(sp) | *(var_44h) = ra;
0x000087ac sw s7, 0x3c(sp) | *(var_3ch) = s7;
0x000087b0 sw s0, 0x20(sp) | *(var_20h) = s0;
0x000087b4 sw a1, 0x4c(sp) | *(arg_4ch) = a1;
0x000087b8 sw fp, 0x40(sp) | *(var_40h) = fp;
0x000087bc sw s6, 0x38(sp) | *(var_38h) = s6;
0x000087c0 sw s5, 0x34(sp) | *(var_34h) = s5;
0x000087c4 sw s4, 0x30(sp) | *(var_30h) = s4;
0x000087c8 sw s3, 0x2c(sp) | *(var_2ch) = s3;
0x000087cc sw s2, 0x28(sp) | *(var_28h) = s2;
0x000087d0 sw s1, 0x24(sp) | *(var_24h) = s1;
0x000087d4 move s0, a0 | s0 = a0;
0x000087d8 jalr t9 | t9 ();
0x000087dc lw gp, 0x18(sp) | gp = *(var_18h);
0x000087e0 move a0, s0 | a0 = s0;
0x000087e4 lw t9, -0x7d70(gp) | t9 = sym.imp.strdup;
0x000087e8 move s7, v0 | s7 = v0;
0x000087ec jalr t9 | t9 ();
0x000087f0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000087f4 beqz v0, 0x89ec | goto label_5;
| }
0x000087f8 lw t9, -0x7ce0(gp) | t9 = sym.imp.malloc;
0x000087fc addiu a0, s7, 1 | a0 = s7 + 1;
0x00008800 move s4, v0 | s4 = v0;
0x00008804 jalr t9 | t9 ();
0x00008808 move s2, v0 | s2 = v0;
0x0000880c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00008810 beqz v0, 0x8a24 | goto label_6;
| }
0x00008814 lw s3, -0x7fd4(gp) | s3 = *(gp);
0x00008818 lw t9, -0x7d0c(gp) | t9 = sym.imp.strtok;
0x0000881c addiu a1, s3, 0x12c | a1 = s3 + aav.0x0000012c;
0x00008820 sb zero, (v0) | *(v0) = 0;
0x00008824 move a0, s4 | a0 = s4;
0x00008828 jalr t9 | t9 ();
0x0000882c lw gp, 0x18(sp) | gp = *(var_18h);
0x00008830 move s1, v0 | s1 = v0;
0x00008834 addiu s3, s3, 0x12c | s3 += aav.0x0000012c;
0x00008838 lw s6, -0x7fd4(gp) | s6 = *(gp);
0x0000883c addiu s5, zero, -1 | s5 = -1;
| /* esilref: '&s&s' */
0x00008840 addiu s6, s6, 0x130 | s6 += 0x130;
0x00008844 addiu fp, zero, 0xd | fp = 0xd;
| if (s1 == 0) {
0x00008848 beqz s1, 0x88c4 | goto label_7;
| }
0x0000884c lw t9, -0x7d0c(gp) | t9 = sym.imp.strtok;
| do {
0x00008850 move a1, s3 | a1 = s3;
0x00008854 move a0, zero | a0 = 0;
0x00008858 jalr t9 | t9 ();
0x0000885c move s0, v0 | s0 = v0;
0x00008860 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00008864 beqz v0, 0x88c4 | goto label_7;
| }
0x00008868 lw t9, -0x7c88(gp) | t9 = sym.imp.strlen;
0x0000886c move a0, s2 | a0 = s2;
0x00008870 jalr t9 | t9 ();
0x00008874 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00008878 bnez v0, 0x8980 | goto label_8;
| }
0x0000887c lw t9, -0x7cec(gp) | t9 = sym.imp.curl_msnprintf
| if (s4 == s1) {
0x00008880 beq s4, s1, 0x89a4 | goto label_9;
| }
0x00008884 sw s1, 0x10(sp) | *(var_10h) = s1;
0x00008888 move a3, s3 | a3 = s3;
0x0000888c move a2, s6 | a2 = s6;
0x00008890 move a1, s7 | a1 = s7;
0x00008894 move a0, s2 | a0 = s2;
0x00008898 jalr t9 | t9 ();
0x0000889c lw gp, 0x18(sp) | gp = *(var_18h);
| label_3:
0x000088a0 lw t9, -0x7b70(gp) | t9 = sym.imp.mkdir;
0x000088a4 addiu a1, zero, 0x1e8 | a1 = 0x1e8;
0x000088a8 move a0, s2 | a0 = s2;
0x000088ac jalr t9 | t9 ();
0x000088b0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == s5) {
0x000088b4 beq v0, s5, 0x8918 | goto label_10;
| }
| label_0:
0x000088b8 move s1, s0 | s1 = s0;
| label_1:
0x000088bc lw t9, -0x7d0c(gp) | t9 = sym.imp.strtok;
0x000088c0 bnez s1, 0x8850 |
| } while (s1 != 0);
| label_7:
0x000088c4 move s0, zero | s0 = 0;
| label_2:
0x000088c8 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x000088cc move a0, s2 | a0 = s2;
0x000088d0 jalr t9 | t9 ();
0x000088d4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000088d8 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x000088dc move a0, s4 | a0 = s4;
0x000088e0 jalr t9 | t9 ();
| label_4:
0x000088e4 lw ra, 0x44(sp) | ra = *(var_44h);
0x000088e8 move v0, s0 | v0 = s0;
0x000088ec lw fp, 0x40(sp) | fp = *(var_40h);
0x000088f0 lw s7, 0x3c(sp) | s7 = *(var_3ch);
0x000088f4 lw s6, 0x38(sp) | s6 = *(var_38h);
0x000088f8 lw s5, 0x34(sp) | s5 = *(var_34h);
0x000088fc lw s4, 0x30(sp) | s4 = *(var_30h);
0x00008900 lw s3, 0x2c(sp) | s3 = *(var_2ch);
0x00008904 lw s2, 0x28(sp) | s2 = *(var_28h);
0x00008908 lw s1, 0x24(sp) | s1 = *(var_24h);
0x0000890c lw s0, 0x20(sp) | s0 = *(var_20h);
0x00008910 addiu sp, sp, 0x48 |
0x00008914 jr ra | return v0;
| label_10:
0x00008918 lw t9, -0x7b6c(gp) | t9 = sym.imp.__errno_location;
0x0000891c jalr t9 | t9 ();
0x00008920 nop |
0x00008924 lw v0, (v0) | v0 = *(v0);
0x00008928 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == fp) {
0x0000892c beq v0, fp, 0x88b8 | goto label_0;
| }
0x00008930 addiu v1, zero, 0x11 | v1 = 0x11;
0x00008934 move s1, s0 | s1 = s0;
| if (v0 == v1) {
0x00008938 beq v0, v1, 0x88bc | goto label_1;
| }
0x0000893c addiu v1, zero, 0x1e | v1 = 0x1e;
0x00008940 slti v1, v0, 0x1f | v1 = (v0 < 0x1f) ? 1 : 0;
| if (v0 != v1) {
0x00008944 beq v0, v1, 0x8a38 |
0x00008948 addiu v1, zero, 0x4e | v1 = 0x4e;
| if (v1 == 0) {
0x0000894c bnez v1, 0x89bc |
0x00008950 addiu v1, zero, 0x46d | v1 = 0x46d;
| if (v0 == v1) {
0x00008954 beq v0, v1, 0x8aa4 | goto label_11;
| }
0x00008958 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
| if (v0 != v1) {
0x0000895c bne v0, v1, 0x8a80 | goto label_12;
| }
0x00008960 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00008964 lw a0, 0x4c(sp) | a0 = *(arg_4ch);
0x00008968 move a2, s2 | a2 = s2;
| /* str.Cannot_create_directory__s_because_you_exceeded_your_quota._n */
0x0000896c addiu a1, a1, 0x1f8 | a1 += segment.DYNAMIC;
0x00008970 jalr t9 | t9 ();
0x00008974 addiu s0, zero, 0x17 | s0 = 0x17;
0x00008978 lw gp, 0x18(sp) | gp = *(var_18h);
0x0000897c b 0x88c8 | goto label_2;
| label_8:
0x00008980 lw t9, -0x7cec(gp) | t9 = sym.imp.curl_msnprintf
0x00008984 sw s1, 0x10(sp) | *(var_10h) = s1;
0x00008988 move a3, s3 | a3 = s3;
0x0000898c move a2, s6 | a2 = s6;
0x00008990 subu a1, s7, v0 | __asm ("subu a1, s7, v0");
0x00008994 addu a0, s2, v0 | a0 = s2 + v0;
0x00008998 jalr t9 | t9 ();
0x0000899c lw gp, 0x18(sp) | gp = *(var_18h);
0x000089a0 b 0x88a0 | goto label_3;
| label_9:
0x000089a4 lw t9, -0x7ca8(gp) | t9 = sym.imp.strcpy;
0x000089a8 move a1, s4 | a1 = s4;
0x000089ac move a0, s2 | a0 = s2;
0x000089b0 jalr t9 | t9 ();
0x000089b4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000089b8 b 0x88a0 | goto label_3;
| }
0x000089bc addiu v1, zero, 0x1c | v1 = 0x1c;
| if (v0 == fp) {
0x000089c0 beq v0, fp, 0x8a5c | goto label_13;
| }
0x000089c4 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
| if (v0 != v1) {
0x000089c8 bne v0, v1, 0x8a80 | goto label_12;
| }
0x000089cc lw a1, -0x7fd4(gp) | a1 = *(gp);
0x000089d0 lw a0, 0x4c(sp) | a0 = *(arg_4ch);
0x000089d4 move a2, s2 | a2 = s2;
| /* str.No_space_left_on_the_file_system_that_will_contain_the_directory__s._n */
0x000089d8 addiu a1, a1, 0x1b0 | a1 += 0x1b0;
0x000089dc jalr t9 | t9 ();
0x000089e0 addiu s0, zero, 0x17 | s0 = 0x17;
0x000089e4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000089e8 b 0x88c8 | goto label_2;
| label_5:
0x000089ec lw ra, 0x44(sp) | ra = *(var_44h);
0x000089f0 addiu s0, zero, 0x1b | s0 = 0x1b;
0x000089f4 move v0, s0 | v0 = s0;
0x000089f8 lw fp, 0x40(sp) | fp = *(var_40h);
0x000089fc lw s7, 0x3c(sp) | s7 = *(var_3ch);
0x00008a00 lw s6, 0x38(sp) | s6 = *(var_38h);
0x00008a04 lw s5, 0x34(sp) | s5 = *(var_34h);
0x00008a08 lw s4, 0x30(sp) | s4 = *(var_30h);
0x00008a0c lw s3, 0x2c(sp) | s3 = *(var_2ch);
0x00008a10 lw s2, 0x28(sp) | s2 = *(var_28h);
0x00008a14 lw s1, 0x24(sp) | s1 = *(var_24h);
0x00008a18 lw s0, 0x20(sp) | s0 = *(var_20h);
0x00008a1c addiu sp, sp, 0x48 |
0x00008a20 jr ra | return v0;
| label_6:
0x00008a24 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00008a28 move a0, s4 | a0 = s4;
0x00008a2c jalr t9 | t9 ();
0x00008a30 addiu s0, zero, 0x1b | s0 = 0x1b;
0x00008a34 b 0x88e4 | goto label_4;
| }
0x00008a38 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00008a3c lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00008a40 lw a0, 0x4c(sp) | a0 = *(arg_4ch);
0x00008a44 move a2, s2 | a2 = s2;
| /* str._s_resides_on_a_read_only_file_system._n */
0x00008a48 addiu a1, a1, 0x188 | a1 += 0x188;
0x00008a4c jalr t9 | t9 ();
0x00008a50 addiu s0, zero, 0x17 | s0 = 0x17;
0x00008a54 lw gp, 0x18(sp) | gp = *(var_18h);
0x00008a58 b 0x88c8 | goto label_2;
| label_13:
0x00008a5c lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00008a60 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00008a64 lw a0, 0x4c(sp) | a0 = *(arg_4ch);
0x00008a68 move a2, s2 | a2 = s2;
| /* str.You_dont_have_permission_to_create__s._n */
0x00008a6c addiu a1, a1, 0x138 | a1 += aav.0x00000138;
0x00008a70 jalr t9 | t9 ();
0x00008a74 addiu s0, zero, 0x17 | s0 = 0x17;
0x00008a78 lw gp, 0x18(sp) | gp = *(var_18h);
0x00008a7c b 0x88c8 | goto label_2;
| label_12:
0x00008a80 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00008a84 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00008a88 lw a0, 0x4c(sp) | a0 = *(arg_4ch);
0x00008a8c move a2, s2 | a2 = s2;
| /* str.Error_creating_directory__s._n */
0x00008a90 addiu a1, a1, 0x238 | a1 += aav.0x00000238;
0x00008a94 jalr t9 | t9 ();
0x00008a98 addiu s0, zero, 0x17 | s0 = 0x17;
0x00008a9c lw gp, 0x18(sp) | gp = *(var_18h);
0x00008aa0 b 0x88c8 | goto label_2;
| label_11:
0x00008aa4 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00008aa8 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00008aac lw a0, 0x4c(sp) | a0 = *(arg_4ch);
0x00008ab0 move a2, s2 | a2 = s2;
| /* str.The_directory_name__s_is_too_long._n */
0x00008ab4 addiu a1, a1, 0x164 | a1 += aav.0x00000164;
0x00008ab8 jalr t9 | t9 ();
0x00008abc addiu s0, zero, 0x17 | s0 = 0x17;
0x00008ac0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00008ac4 b 0x88c8 | goto label_2;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x1ab00 */
| #include <stdint.h>
|
; (fcn) sym.glob_match_url () | void glob_match_url () {
0x0001ab00 lui gp, 2 |
0x0001ab04 addiu gp, gp, 0x7540 |
0x0001ab08 addu gp, gp, t9 | gp += t9;
0x0001ab0c addiu sp, sp, -0x88 |
0x0001ab10 lw t9, -0x7f1c(gp) | t9 = sym.curlx_dyn_init;
0x0001ab14 sw s5, 0x74(sp) | *(var_74h) = s5;
0x0001ab18 lw s5, -0x7cb0(gp) | s5 = *((gp - 7980));
0x0001ab1c sw s0, 0x60(sp) | *(var_60h) = s0;
0x0001ab20 lw s0, -0x7fd4(gp) | s0 = *(gp);
0x0001ab24 lw v0, (s5) | v0 = *(s5);
0x0001ab28 sw gp, 0x18(sp) | *(var_18h) = gp;
0x0001ab2c sw s2, 0x68(sp) | *(var_68h) = s2;
0x0001ab30 addiu s2, sp, 0x38 | s2 = sp + 0x38;
0x0001ab34 sw fp, 0x80(sp) | *(var_80h) = fp;
0x0001ab38 sw s7, 0x7c(sp) | *(var_7ch) = s7;
0x0001ab3c sw s4, 0x70(sp) | *(var_70h) = s4;
0x0001ab40 sw s3, 0x6c(sp) | *(var_6ch) = s3;
0x0001ab44 sw s1, 0x64(sp) | *(var_64h) = s1;
0x0001ab48 sw ra, 0x84(sp) | *(var_84h) = ra;
0x0001ab4c sw s6, 0x78(sp) | *(var_78h) = s6;
0x0001ab50 sw a0, 0x2c(sp) | *(var_2ch) = a0;
0x0001ab54 sw a1, 0x34(sp) | *(var_34h) = a1;
0x0001ab58 sw zero, (a0) | *(a0) = 0;
0x0001ab5c sw v0, 0x5c(sp) | *(var_5ch) = v0;
0x0001ab60 sw s0, 0x28(sp) | *(var_28h) = s0;
0x0001ab64 addiu a1, zero, 0x2800 | a1 = aav.0x00002800;
0x0001ab68 move a0, s2 | a0 = s2;
0x0001ab6c sw a2, 0x24(sp) | *(var_24h) = a2;
0x0001ab70 bal 0x1cca0 | sym_curlx_dyn_init ();
0x0001ab74 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001ab78 move s1, zero | s1 = 0;
0x0001ab7c addiu s0, s0, 0x6c00 | s0 += 0x6c00;
0x0001ab80 lw s4, -0x7fd4(gp) | s4 = *(gp);
0x0001ab84 addiu s3, zero, 0x23 | s3 = 0x23;
| /* str._0lu */
0x0001ab88 addiu v0, s4, 0x7620 | v0 = s4 + 0x7620;
0x0001ab8c addiu fp, sp, 0x34 | fp = sp + 0x34;
0x0001ab90 addiu s7, sp, 0x48 | s7 = sp + 0x48;
0x0001ab94 sw v0, 0x30(sp) | *(var_30h) = v0;
0x0001ab98 b 0x1abc4 |
| while (v0 != s3) {
| label_1:
0x0001ab9c sw s6, 0x34(sp) | *(var_34h) = s6;
| label_0:
0x0001aba0 move s0, s4 | s0 = s4;
0x0001aba4 addiu s1, zero, 1 | s1 = 1;
| label_4:
0x0001aba8 lw t9, -0x7dec(gp) | t9 = sym.curlx_dyn_addn;
0x0001abac move a2, s1 | a2 = s1;
0x0001abb0 move a1, s0 | a1 = s0;
0x0001abb4 move a0, s2 | a0 = s2;
0x0001abb8 bal 0x1cdcc | sym_curlx_dyn_addn ();
0x0001abbc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0001abc0 bnez v0, 0x1acb4 | goto label_5;
| }
0x0001abc4 lw s4, 0x34(sp) | s4 = *(var_34h);
0x0001abc8 lb v0, (s4) | v0 = *(s4);
| if (v0 == 0) {
0x0001abcc beql v0, zero, 0x1acf8 | goto label_6;
| }
0x0001abd0 lw v0, 0x28(sp) | v0 = *(var_28h);
0x0001abd4 addiu s6, s4, 1 | s6 = s4 + 1;
0x0001abd8 bne v0, s3, 0x1ab9c |
| }
0x0001abdc lbu v0, 1(s4) | v0 = *((s4 + 1));
0x0001abe0 addiu v0, v0, -0x30 | v0 += -0x30;
0x0001abe4 sltiu v0, v0, 0xa | v0 = (v0 < 0xa) ? 1 : 0;
| if (v0 == 0) {
0x0001abe8 beql v0, zero, 0x1aba0 | goto label_0;
| }
0x0001abec sw s6, 0x34(sp) | *(var_34h) = s6;
0x0001abf0 lw t9, -0x7c84(gp) | t9 = sym.imp.strtoul;
0x0001abf4 addiu a2, zero, 0xa | a2 = 0xa;
0x0001abf8 move a1, fp | a1 = fp;
0x0001abfc move a0, s6 | a0 = s6;
0x0001ac00 jalr t9 | t9 ();
0x0001ac04 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0001ac08 beqz v0, 0x1ab9c | goto label_1;
| }
0x0001ac0c lw v1, 0x24(sp) | v1 = *(var_24h);
0x0001ac10 lw a2, 0xaf0(v1) | a2 = *((v1 + 700));
0x0001ac14 sltu a0, v0, a2 | a0 = (v0 < a2) ? 1 : 0;
| if (a0 == 0) {
0x0001ac18 beql a0, zero, 0x1aba0 | goto label_0;
| }
0x0001ac1c sw s6, 0x34(sp) | *(var_34h) = s6;
0x0001ac20 addiu v0, v0, -1 | v0 += -1;
| if (a2 == 0) {
0x0001ac24 beqz a2, 0x1ab9c | goto label_1;
| }
0x0001ac28 lw a0, 4(v1) | a0 = *((v1 + 1));
0x0001ac2c move a0, zero | a0 = 0;
| if (a0 == v0) {
0x0001ac30 beq a0, v0, 0x1ac50 | goto label_7;
| }
0x0001ac34 addiu a1, v1, 0x20 | a1 = v1 + 0x20;
0x0001ac38 addiu a0, a0, 1 | a0++;
| label_2:
0x0001ac3c addiu a1, a1, 0x1c | a1 += 0x1c;
| if (a2 == a0) {
0x0001ac40 beq a2, a0, 0x1ab9c | goto label_1;
| }
0x0001ac44 lw t2, -0x1c(a1) | t2 = *((a1 - 7));
0x0001ac48 addiu a0, a0, 1 | a0++;
| if (t2 == v0) {
0x0001ac4c bnel t2, v0, 0x1ac3c | goto label_2;
| }
| label_7:
0x0001ac50 sll v0, a0, 3 | v0 = a0 << 3;
0x0001ac54 lw v1, 0x24(sp) | v1 = *(var_24h);
0x0001ac58 subu v0, v0, a0 | __asm ("subu v0, v0, a0");
0x0001ac5c sll v0, v0, 2 | v0 <<= 2;
0x0001ac60 addu v0, v1, v0 | v0 = v1 + v0;
0x0001ac64 addiu v1, zero, 2 | v1 = 2;
0x0001ac68 lw a2, (v0) | a2 = *(v0);
0x0001ac6c addiu v1, zero, 3 | v1 = 3;
| if (a2 == v1) {
0x0001ac70 beq a2, v1, 0x1ad34 | goto label_8;
| }
0x0001ac74 addiu v1, zero, 1 | v1 = 1;
| if (a2 == v1) {
0x0001ac78 beq a2, v1, 0x1ad78 | goto label_9;
| }
0x0001ac7c lw a1, -0x7fd4(gp) | a1 = *(gp);
| if (a2 == v1) {
0x0001ac80 beq a2, v1, 0x1ad4c | goto label_10;
| }
0x0001ac84 lw v0, -0x7fd8(gp) | v0 = *(gp);
0x0001ac88 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0001ac8c lw a0, (v0) | a0 = *(v0);
| /* str.internal_error:_invalid_pattern_type___d__n */
0x0001ac90 addiu a1, a1, 0x75f4 | a1 += 0x75f4;
0x0001ac94 jalr t9 | t9 ();
0x0001ac98 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001ac9c move a0, s2 | a0 = s2;
0x0001aca0 lw t9, -0x7e80(gp) | t9 = sym.curlx_dyn_free;
0x0001aca4 addiu s0, zero, 2 | s0 = 2;
0x0001aca8 bal 0x1ccb4 | sym_curlx_dyn_free ();
0x0001acac lw gp, 0x18(sp) | gp = *(var_18h);
0x0001acb0 b 0x1acb8 |
| while (v0 != 0) {
| label_5:
0x0001acb4 addiu s0, zero, 0x1b | s0 = 0x1b;
| label_3:
0x0001acb8 lw a0, 0x5c(sp) | a0 = *(var_5ch);
0x0001acbc lw v1, (s5) | v1 = *(s5);
0x0001acc0 move v0, s0 | v0 = s0;
| if (a0 != v1) {
0x0001acc4 bne a0, v1, 0x1adb8 | goto label_11;
| }
0x0001acc8 lw ra, 0x84(sp) | ra = *(var_84h);
0x0001accc lw fp, 0x80(sp) | fp = *(var_80h);
0x0001acd0 lw s7, 0x7c(sp) | s7 = *(var_7ch);
0x0001acd4 lw s6, 0x78(sp) | s6 = *(var_78h);
0x0001acd8 lw s5, 0x74(sp) | s5 = *(var_74h);
0x0001acdc lw s4, 0x70(sp) | s4 = *(var_70h);
0x0001ace0 lw s3, 0x6c(sp) | s3 = *(var_6ch);
0x0001ace4 lw s2, 0x68(sp) | s2 = *(var_68h);
0x0001ace8 lw s1, 0x64(sp) | s1 = *(var_64h);
0x0001acec lw s0, 0x60(sp) | s0 = *(var_60h);
0x0001acf0 addiu sp, sp, 0x88 |
0x0001acf4 jr ra | return v1;
| label_6:
0x0001acf8 lw t9, -0x7dec(gp) | t9 = sym.curlx_dyn_addn;
0x0001acfc move a2, zero | a2 = 0;
0x0001ad00 addiu a1, v0, 0x6c00 | a1 = v0 + 0x6c00;
0x0001ad04 move a0, s2 | a0 = s2;
0x0001ad08 bal 0x1cdcc | sym_curlx_dyn_addn ();
0x0001ad0c move s0, v0 | s0 = v0;
0x0001ad10 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001ad14 bnez v0, 0x1acb4 |
| }
0x0001ad18 lw t9, -0x7f14(gp) | t9 = sym.curlx_dyn_ptr;
0x0001ad1c move a0, s2 | a0 = s2;
0x0001ad20 bal 0x1cf7c | sym_curlx_dyn_ptr ();
0x0001ad24 lw v1, 0x2c(sp) | v1 = *(var_2ch);
0x0001ad28 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001ad2c sw v0, (v1) | *(v1) = v0;
0x0001ad30 b 0x1acb8 | goto label_3;
| label_8:
0x0001ad34 lbu v0, 0xa(v0) | v0 = *((v0 + 10));
0x0001ad38 sb zero, 0x49(sp) | *(var_49h) = 0;
0x0001ad3c sb v0, 0x48(sp) | *(var_48h) = v0;
0x0001ad40 addiu s1, zero, 1 | s1 = 1;
0x0001ad44 move s0, s7 | s0 = s7;
0x0001ad48 b 0x1aba8 | goto label_4;
| label_10:
0x0001ad4c lw v1, 8(v0) | v1 = *((v0 + 2));
0x0001ad50 lw t9, -0x7c88(gp) | t9 = sym.imp.strlen;
| if (v1 == 0) {
0x0001ad54 beqz v1, 0x1aba8 | goto label_4;
| }
0x0001ad58 lw s0, 0x10(v0) | s0 = *((v0 + 4));
0x0001ad5c sll s0, s0, 2 | s0 <<= 2;
0x0001ad60 lwx s0, s0(v1) | __asm ("lwx s0, s0(v1)");
0x0001ad64 move a0, s0 | a0 = s0;
0x0001ad68 jalr t9 | t9 ();
0x0001ad6c move s1, v0 | s1 = v0;
0x0001ad70 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001ad74 b 0x1aba8 | goto label_4;
| label_9:
0x0001ad78 lw v1, 0x14(v0) | v1 = *((v0 + 5));
0x0001ad7c lw t9, -0x7cec(gp) | t9 = sym.imp.curl_msnprintf
0x0001ad80 lw a3, 0x10(v0) | a3 = *((v0 + 4));
0x0001ad84 lw a2, 0x30(sp) | a2 = *(var_30h);
0x0001ad88 addiu a1, zero, 0x12 | a1 = 0x12;
0x0001ad8c move a0, s7 | a0 = s7;
0x0001ad90 sw v1, 0x10(sp) | *(var_10h_2) = v1;
0x0001ad94 jalr t9 | t9 ();
0x0001ad98 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001ad9c move a0, s7 | a0 = s7;
0x0001ada0 lw t9, -0x7c88(gp) | t9 = sym.imp.strlen;
0x0001ada4 move s0, s7 | s0 = s7;
0x0001ada8 jalr t9 | t9 ();
0x0001adac move s1, v0 | s1 = v0;
0x0001adb0 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001adb4 b 0x1aba8 | goto label_4;
| label_11:
0x0001adb8 lw t9, -0x7ce8(gp) | t9 = sym.imp.__stack_chk_fail;
0x0001adbc jalr t9 | t9 ();
0x0001adc0 nop |
0x0001adc4 nop |
0x0001adc8 nop |
0x0001adcc nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x112e4 */
| #include <stdint.h>
|
; (fcn) sym.helpf () | void helpf () {
0x000112e4 lui gp, 3 |
0x000112e8 addiu gp, gp, 0xd5c |
0x000112ec addu gp, gp, t9 | gp += t9;
0x000112f0 addiu sp, sp, -0x30 |
0x000112f4 sw s1, 0x24(sp) | *(var_24h_2) = s1;
0x000112f8 lw s1, -0x7cb0(gp) | s1 = *((gp - 7980));
0x000112fc sw gp, 0x10(sp) | *(var_10h_2) = gp;
0x00011300 sw s0, 0x20(sp) | *(var_20h_2) = s0;
0x00011304 lw v0, (s1) | v0 = *(s1);
0x00011308 sw ra, 0x2c(sp) | *(var_2ch) = ra;
0x0001130c sw s2, 0x28(sp) | *(var_28h) = s2;
0x00011310 move s0, a0 | s0 = a0;
0x00011314 sw a2, 0x38(sp) | *(var_38h) = a2;
0x00011318 sw a3, 0x3c(sp) | *(var_3ch) = a3;
0x0001131c sw v0, 0x1c(sp) | *(var_1ch_2) = v0;
0x00011320 move a3, a0 | a3 = a0;
| if (a1 != 0) {
0x00011324 beqz a1, 0x11368 |
0x00011328 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x0001132c lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x00011330 addiu v0, sp, 0x38 | v0 = sp + 0x38;
0x00011334 move s2, a1 | s2 = a1;
0x00011338 addiu a2, zero, 6 | a2 = 6;
0x0001133c addiu a1, zero, 1 | a1 = 1;
| /* str.curl:_ */
0x00011340 addiu a0, a0, 0x6604 | a0 += 0x6604;
0x00011344 sw v0, 0x18(sp) | *(var_18h_4) = v0;
0x00011348 jalr t9 | t9 ();
0x0001134c lw gp, 0x10(sp) | gp = *(var_10h_2);
0x00011350 lw a2, 0x18(sp) | a2 = *(var_18h_4);
0x00011354 move a1, s2 | a1 = s2;
0x00011358 lw t9, -0x7c68(gp) | t9 = sym.imp.curl_mvfprintf
0x0001135c move a0, s0 | a0 = s0;
0x00011360 jalr t9 | t9 ();
0x00011364 lw gp, 0x10(sp) | gp = *(var_10h_2);
| }
0x00011368 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0001136c lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
| /* str.curl:_try_curl___help_for_more_information_n */
0x00011370 addiu a1, a1, 0x660c | a1 += 0x660c;
0x00011374 move a0, s0 | a0 = s0;
0x00011378 jalr t9 | t9 ();
0x0001137c lw v1, 0x1c(sp) | v1 = *(var_1ch_2);
0x00011380 lw v0, (s1) | v0 = *(s1);
0x00011384 lw gp, 0x10(sp) | gp = *(var_10h_2);
| if (v1 == v0) {
0x00011388 bne v1, v0, 0x113a4 |
0x0001138c lw ra, 0x2c(sp) | ra = *(var_2ch);
0x00011390 lw s2, 0x28(sp) | s2 = *(var_28h);
0x00011394 lw s1, 0x24(sp) | s1 = *(var_24h_2);
0x00011398 lw s0, 0x20(sp) | s0 = *(var_20h_2);
0x0001139c addiu sp, sp, 0x30 |
0x000113a0 jr ra | return v1;
| }
0x000113a4 lw t9, -0x7ce8(gp) | t9 = sym.imp.__stack_chk_fail;
0x000113a8 jalr t9 | t9 ();
0x000113ac nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x1be40 */
| #include <stdint.h>
|
; (fcn) sym.jsonWriteString () | void jsonWriteString () {
0x0001be40 lui gp, 2 |
0x0001be44 addiu gp, gp, 0x6200 |
0x0001be48 addu gp, gp, t9 | gp += t9;
0x0001be4c addiu sp, sp, -0x40 |
0x0001be50 lw t9, -0x7c88(gp) | t9 = sym.imp.strlen;
0x0001be54 sw gp, 0x10(sp) | *(var_10h) = gp;
0x0001be58 sw ra, 0x3c(sp) | *(var_3ch) = ra;
0x0001be5c sw fp, 0x38(sp) | *(var_38h) = fp;
0x0001be60 sw s7, 0x34(sp) | *(var_34h) = s7;
0x0001be64 sw s1, 0x1c(sp) | *(var_1ch) = s1;
0x0001be68 sw s0, 0x18(sp) | *(var_18h) = s0;
0x0001be6c sw s6, 0x30(sp) | *(var_30h) = s6;
0x0001be70 move s0, a0 | s0 = a0;
0x0001be74 sw s5, 0x2c(sp) | *(var_2ch) = s5;
0x0001be78 move a0, a1 | a0 = a1;
0x0001be7c sw s4, 0x28(sp) | *(var_28h) = s4;
0x0001be80 sw s3, 0x24(sp) | *(var_24h) = s3;
0x0001be84 sw s2, 0x20(sp) | *(var_20h) = s2;
0x0001be88 move fp, a1 | fp = a1;
0x0001be8c move s7, a2 | s7 = a2;
0x0001be90 jalr t9 | t9 ();
0x0001be94 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001be98 addu s1, fp, v0 | s1 = fp + v0;
0x0001be9c move a1, s0 | a1 = s0;
0x0001bea0 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001bea4 addiu a0, zero, 0x22 | a0 = 0x22;
0x0001bea8 jalr t9 | t9 ();
0x0001beac sltu v0, fp, s1 | v0 = (fp < s1) ? 1 : 0;
0x0001beb0 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0001beb4 beqz v0, 0x1bf3c | goto label_4;
| }
0x0001beb8 lw s3, -0x7fd4(gp) | s3 = *(gp);
0x0001bebc lw s4, -0x7fd4(gp) | s4 = *(gp);
0x0001bec0 lw s2, -0x7fd4(gp) | s2 = *(gp);
0x0001bec4 lw s6, -0x7fd4(gp) | s6 = *(gp);
0x0001bec8 lw s5, -0x7fd4(gp) | s5 = *(gp);
| /* esilref: '\f' */
0x0001becc addiu s3, s3, 0x7aec | s3 += 0x7aec;
| /* str.u_04x */
0x0001bed0 addiu s4, s4, 0x7afc | s4 += 0x7afc;
| /* esilref: '\\' */
0x0001bed4 addiu s2, s2, 0x7ae0 | s2 += 0x7ae0;
0x0001bed8 lb a2, (fp) | a2 = *(fp);
| do {
0x0001bedc addiu v0, zero, 0xc | v0 = 0xc;
0x0001bee0 slti v0, a2, 0xd | v0 = (a2 < 0xd) ? 1 : 0;
| if (a2 == v0) {
0x0001bee4 beq a2, v0, 0x1bff4 | goto label_5;
| }
0x0001bee8 addiu v0, zero, 0x22 | v0 = 0x22;
| if (v0 == 0) {
0x0001beec beqz v0, 0x1bf78 | goto label_6;
| }
0x0001bef0 addiu v0, zero, 9 | v0 = 9;
0x0001bef4 addiu v0, zero, 0xa | v0 = 0xa;
| if (a2 == v0) {
0x0001bef8 beq a2, v0, 0x1c014 | goto label_7;
| }
0x0001befc addiu v0, zero, 8 | v0 = 8;
| if (a2 == v0) {
0x0001bf00 beq a2, v0, 0x1bfd0 | goto label_8;
| }
| if (a2 == v0) {
0x0001bf04 beql a2, v0, 0x1bfb0 | goto label_9;
| }
0x0001bf08 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x0001bf0c slti v0, a2, 0x20 | v0 = (a2 < 0x20) ? 1 : 0;
| label_0:
0x0001bf10 move a0, a2 | a0 = a2;
| if (v0 != 0) {
0x0001bf14 bnez v0, 0x1c090 | goto label_10;
| }
0x0001bf18 addiu v0, a2, -0x41 | v0 = a2 + -0x41;
| if (s7 != 0) {
0x0001bf1c bnez s7, 0x1c078 | goto label_11;
| }
| label_2:
0x0001bf20 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
| label_3:
0x0001bf24 move a1, s0 | a1 = s0;
0x0001bf28 jalr t9 | t9 ();
0x0001bf2c lw gp, 0x10(sp) | gp = *(var_10h);
| label_1:
0x0001bf30 addiu fp, fp, 1 | fp++;
0x0001bf34 lb a2, (fp) | a2 = *(fp);
0x0001bf38 bnel s1, fp, 0x1bedc |
| } while (s1 == fp);
| label_4:
0x0001bf3c lw ra, 0x3c(sp) | ra = *(var_3ch);
0x0001bf40 lw fp, 0x38(sp) | fp = *(var_38h);
0x0001bf44 lw s7, 0x34(sp) | s7 = *(var_34h);
0x0001bf48 lw s6, 0x30(sp) | s6 = *(var_30h);
0x0001bf4c lw s5, 0x2c(sp) | s5 = *(var_2ch);
0x0001bf50 lw s4, 0x28(sp) | s4 = *(var_28h);
0x0001bf54 lw s3, 0x24(sp) | s3 = *(var_24h);
0x0001bf58 lw s2, 0x20(sp) | s2 = *(var_20h);
0x0001bf5c lw s1, 0x1c(sp) | s1 = *(var_1ch);
0x0001bf60 move a1, s0 | a1 = s0;
0x0001bf64 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001bf68 lw s0, 0x18(sp) | s0 = *(var_18h);
0x0001bf6c addiu a0, zero, 0x22 | a0 = 0x22;
0x0001bf70 addiu sp, sp, 0x40 |
0x0001bf74 jr t9 | t9 ();
| label_6:
0x0001bf78 addiu v0, zero, 0x5c | v0 = 0x5c;
| if (a2 == v0) {
0x0001bf7c beq a2, v0, 0x1c058 | goto label_12;
| }
0x0001bf80 addiu v0, zero, 0xd | v0 = 0xd;
| if (a2 == v0) {
0x0001bf84 beq a2, v0, 0x1c038 | goto label_13;
| }
0x0001bf88 slti v0, a2, 0x20 | v0 = (a2 < 0x20) ? 1 : 0;
| if (a2 != v0) {
0x0001bf8c bne a2, v0, 0x1bf10 | goto label_0;
| }
0x0001bf90 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x0001bf94 move a3, s0 | a3 = s0;
0x0001bf98 addiu a2, zero, 2 | a2 = 2;
0x0001bf9c addiu a1, zero, 1 | a1 = 1;
| /* esilref: '\r' */
0x0001bfa0 addiu a0, s5, 0x7af4 | a0 = s5 + 0x7af4;
0x0001bfa4 jalr t9 | t9 ();
0x0001bfa8 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001bfac b 0x1bf30 | goto label_1;
| label_9:
0x0001bfb0 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x0001bfb4 move a3, s0 | a3 = s0;
0x0001bfb8 addiu a2, zero, 2 | a2 = 2;
0x0001bfbc addiu a1, zero, 1 | a1 = 1;
| /* esilref: '\b' */
0x0001bfc0 addiu a0, a0, 0x7ae8 | a0 += 0x7ae8;
0x0001bfc4 jalr t9 | t9 ();
0x0001bfc8 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001bfcc b 0x1bf30 | goto label_1;
| label_8:
0x0001bfd0 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x0001bfd4 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x0001bfd8 move a3, s0 | a3 = s0;
0x0001bfdc addiu a2, zero, 2 | a2 = 2;
0x0001bfe0 addiu a1, zero, 1 | a1 = 1;
| /* esilref: '\n' */
0x0001bfe4 addiu a0, a0, 0x7af0 | a0 += 0x7af0;
0x0001bfe8 jalr t9 | t9 ();
0x0001bfec lw gp, 0x10(sp) | gp = *(var_10h);
0x0001bff0 b 0x1bf30 | goto label_1;
| label_5:
0x0001bff4 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x0001bff8 move a3, s0 | a3 = s0;
0x0001bffc addiu a2, zero, 2 | a2 = 2;
0x0001c000 addiu a1, zero, 1 | a1 = 1;
0x0001c004 move a0, s3 | a0 = s3;
0x0001c008 jalr t9 | t9 ();
0x0001c00c lw gp, 0x10(sp) | gp = *(var_10h);
0x0001c010 b 0x1bf30 | goto label_1;
| label_7:
0x0001c014 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x0001c018 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x0001c01c move a3, s0 | a3 = s0;
0x0001c020 addiu a2, zero, 2 | a2 = 2;
0x0001c024 addiu a1, zero, 1 | a1 = 1;
| /* esilref: '\t' */
0x0001c028 addiu a0, a0, 0x7af8 | a0 += 0x7af8;
0x0001c02c jalr t9 | t9 ();
0x0001c030 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001c034 b 0x1bf30 | goto label_1;
| label_13:
0x0001c038 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x0001c03c move a3, s0 | a3 = s0;
0x0001c040 addiu a2, zero, 2 | a2 = 2;
0x0001c044 addiu a1, zero, 1 | a1 = 1;
0x0001c048 move a0, s2 | a0 = s2;
0x0001c04c jalr t9 | t9 ();
0x0001c050 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001c054 b 0x1bf30 | goto label_1;
| label_12:
0x0001c058 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x0001c05c move a3, s0 | a3 = s0;
0x0001c060 addiu a2, zero, 2 | a2 = 2;
0x0001c064 addiu a1, zero, 1 | a1 = 1;
| /* esilref: '\"' */
0x0001c068 addiu a0, s6, 0x7ae4 | a0 = s6 + 0x7ae4;
0x0001c06c jalr t9 | t9 ();
0x0001c070 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001c074 b 0x1bf30 | goto label_1;
| label_11:
0x0001c078 andi v0, v0, 0xff | v0 &= 0xff;
0x0001c07c sltiu v0, v0, 0x1a | v0 = (v0 < 0x1a) ? 1 : 0;
0x0001c080 ori a0, a2, 0x20 | a0 = a2 | 0x20;
| if (v0 == 0) {
0x0001c084 bnel v0, zero, 0x1bf20 | goto label_2;
| }
0x0001c088 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001c08c b 0x1bf24 | goto label_3;
| label_10:
0x0001c090 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0001c094 move a1, s4 | a1 = s4;
0x0001c098 move a0, s0 | a0 = s0;
0x0001c09c jalr t9 | t9 ();
0x0001c0a0 lw gp, 0x10(sp) | gp = *(var_10h);
0x0001c0a4 b 0x1bf30 | goto label_1;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x1b900 */
| #include <stdint.h>
|
; (fcn) sym.ourWriteOut () | void ourWriteOut () {
0x0001b900 lui gp, 2 |
0x0001b904 addiu gp, gp, 0x6740 |
0x0001b908 addu gp, gp, t9 | gp += t9;
0x0001b90c addiu sp, sp, -0x178 |
0x0001b910 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
0x0001b914 sw s3, 0x15c(sp) | *(var_15ch) = s3;
0x0001b918 lw s3, -0x7cb0(gp) | s3 = *((gp - 7980));
0x0001b91c sw s5, 0x164(sp) | *(var_164h) = s5;
0x0001b920 lw s5, -0x7d30(gp) | s5 = *((gp - 8012));
0x0001b924 lw v0, (s3) | v0 = *(s3);
0x0001b928 sw s4, 0x160(sp) | *(var_160h) = s4;
0x0001b92c sw s1, 0x154(sp) | *(var_154h) = s1;
0x0001b930 move s4, a1 | s4 = a1;
0x0001b934 lw s1, 0x1bc(a0) | s1 = *(a0);
0x0001b938 lw a0, 0x10(a1) | a0 = *((a1 + 4));
0x0001b93c lui a1, 0x40 | a1 = 0x400000;
0x0001b940 sw gp, 0x18(sp) | *(var_18h) = gp;
0x0001b944 sw s0, 0x150(sp) | *(var_150h) = s0;
0x0001b948 sw a2, 0x180(sp) | *(arg_180h) = a2;
0x0001b94c sw ra, 0x174(sp) | *(var_174h) = ra;
0x0001b950 sw fp, 0x170(sp) | *(var_170h) = fp;
0x0001b954 sw s7, 0x16c(sp) | *(var_16ch) = s7;
0x0001b958 sw s6, 0x168(sp) | *(var_168h) = s6;
0x0001b95c sw s2, 0x158(sp) | *(var_158h) = s2;
0x0001b960 addiu a1, a1, 0x22 | a1 += 0x22;
0x0001b964 addiu a2, sp, 0x44 | a2 = sp + 0x44;
0x0001b968 sw v0, 0x14c(sp) | *(var_14ch) = v0;
0x0001b96c lw s0, (s5) | s0 = *(s5);
0x0001b970 jalr t9 | t9 ();
0x0001b974 lw gp, 0x18(sp) | gp = *(var_18h);
| if (s1 == 0) {
0x0001b978 beqz s1, 0x1bad0 | goto label_1;
| }
0x0001b97c lw v0, 0x44(sp) | v0 = *(var_44h);
| if (v0 == 0) {
0x0001b980 beqz v0, 0x1bb34 | goto label_10;
| }
| label_2:
0x0001b984 lw v0, -0x7fd4(gp) | v0 = *(gp);
| label_3:
0x0001b988 sw zero, 0x24(sp) | *(var_24h_2) = 0;
0x0001b98c sw v0, 0x38(sp) | *(var_38h_2) = v0;
0x0001b990 lw v0, -0x7fb8(gp) | v0 = *((gp - 8174));
0x0001b994 sw v0, 0x2c(sp) | *(var_2ch_2) = v0;
0x0001b998 lw v0, -0x7fd4(gp) | v0 = *(gp);
| /* str.header */
0x0001b99c addiu v0, v0, 0x76a0 | v0 += sym.tool_read_cb;
0x0001b9a0 sw v0, 0x28(sp) | *(var_28h_2) = v0;
0x0001b9a4 lw v0, -0x7fd4(gp) | v0 = *(gp);
| /* str._header */
0x0001b9a8 addiu v0, v0, 0x76a8 | v0 += 0x76a8;
0x0001b9ac sw v0, 0x34(sp) | *(var_34h_2) = v0;
0x0001b9b0 lw v0, -0x7fd4(gp) | v0 = *(gp);
| /* esilref: 'certs' */
0x0001b9b4 addiu v0, v0, 0x7754 | v0 += 0x7754;
0x0001b9b8 sw v0, 0x30(sp) | *(var_30h_2) = v0;
0x0001b9bc lb a0, (s1) | a0 = *(s1);
| label_7:
0x0001b9c0 lw v0, 0x24(sp) | v0 = *(var_24h_2);
| if (a0 == 0) {
0x0001b9c4 beqz a0, 0x1bad0 | goto label_1;
| }
0x0001b9c8 addiu v0, zero, 0x25 | v0 = 0x25;
| if (v0 != 0) {
0x0001b9cc bnez v0, 0x1bad0 | goto label_1;
| }
| if (a0 == v0) {
0x0001b9d0 beql a0, v0, 0x1ba58 | goto label_11;
| }
0x0001b9d4 lb v0, 1(s1) | v0 = *((s1 + 1));
0x0001b9d8 addiu v0, zero, 0x5c | v0 = 0x5c;
| do {
0x0001b9dc lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
| if (a0 != v0) {
0x0001b9e0 bne a0, v0, 0x1bb0c | goto label_12;
| }
0x0001b9e4 lb v0, 1(s1) | v0 = *((s1 + 1));
0x0001b9e8 move a1, s0 | a1 = s0;
| if (v0 == 0) {
0x0001b9ec beqz v0, 0x1bb10 | goto label_13;
| }
0x0001b9f0 addiu v1, zero, 0x72 | v1 = 0x72;
0x0001b9f4 addiu v1, zero, 0x74 | v1 = 0x74;
| if (v0 == v1) {
0x0001b9f8 beq v0, v1, 0x1bb90 | goto label_14;
| }
0x0001b9fc addiu v1, zero, 0x6e | v1 = 0x6e;
| if (v0 == v1) {
0x0001ba00 beq v0, v1, 0x1bb7c | goto label_15;
| }
| if (v0 == v1) {
0x0001ba04 beq v0, v1, 0x1bba4 | goto label_16;
| }
0x0001ba08 nop |
0x0001ba0c addiu a0, zero, 0x5c | a0 = 0x5c;
0x0001ba10 jalr t9 | t9 ();
0x0001ba14 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001ba18 lb a0, 1(s1) | a0 = *((s1 + 1));
0x0001ba1c lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001ba20 move a1, s0 | a1 = s0;
0x0001ba24 jalr t9 | t9 ();
0x0001ba28 lw gp, 0x18(sp) | gp = *(var_18h);
| label_5:
0x0001ba2c addiu s7, s1, 2 | s7 = s1 + 2;
| if (s7 == 0) {
0x0001ba30 beqz s7, 0x1bad0 | goto label_1;
| }
0x0001ba34 nop |
| label_4:
0x0001ba38 lb a0, 2(s1) | a0 = *((s1 + 2));
| if (a0 == 0) {
0x0001ba3c beqz a0, 0x1bad0 | goto label_1;
| }
0x0001ba40 nop |
0x0001ba44 move s1, s7 | s1 = s7;
| label_0:
0x0001ba48 addiu v0, zero, 0x25 | v0 = 0x25;
0x0001ba4c addiu v0, zero, 0x5c | v0 = 0x5c;
0x0001ba50 bne a0, v0, 0x1b9dc |
| } while (a0 != v0);
0x0001ba54 lb v0, 1(s1) | v0 = *((s1 + 1));
| label_11:
0x0001ba58 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
| if (v0 == 0) {
0x0001ba5c beqz v0, 0x1bb0c | goto label_12;
| }
0x0001ba60 addiu v1, zero, 0x7b | v1 = 0x7b;
| if (v0 == a0) {
0x0001ba64 beq v0, a0, 0x1bc8c | goto label_17;
| }
0x0001ba68 lw t9, -0x7d50(gp) | t9 = sym.imp.strncmp;
| if (v0 == v1) {
0x0001ba6c beq v0, v1, 0x1bbb4 | goto label_18;
| }
0x0001ba70 lw a0, 0x28(sp) | a0 = *(var_28h_2);
0x0001ba74 addiu a2, zero, 7 | a2 = 7;
0x0001ba78 addiu a1, s1, 1 | a1 = s1 + 1;
0x0001ba7c jalr t9 | t9 ();
0x0001ba80 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0001ba84 bnez v0, 0x1bb44 | goto label_19;
| }
0x0001ba88 lw t9, -0x7bcc(gp) | t9 = sym.imp.strchr;
0x0001ba8c addiu s7, s1, 8 | s7 = s1 + 8;
0x0001ba90 addiu a1, zero, 0x7d | a1 = 0x7d;
0x0001ba94 move a0, s7 | a0 = s7;
0x0001ba98 jalr t9 | t9 ();
0x0001ba9c move s2, v0 | s2 = v0;
0x0001baa0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0001baa4 beqz v0, 0x1bd60 | goto label_20;
| }
0x0001baa8 subu s1, v0, s7 | __asm ("subu s1, v0, s7");
0x0001baac sltiu v0, s1, 0x100 | v0 = (s1 < aav.0x00000100) ? 1 : 0;
0x0001bab0 lw t9, -0x7c08(gp) | t9 = sym.imp.__memcpy_chk;
| if (v0 != 0) {
0x0001bab4 bnez v0, 0x1bce8 | goto label_21;
| }
| label_8:
0x0001bab8 addiu s7, s2, 1 | s7 = s2 + 1;
| if (s7 == 0) {
0x0001babc beqz s7, 0x1bad0 | goto label_1;
| }
0x0001bac0 nop |
0x0001bac4 lb a0, 1(s2) | a0 = *((s2 + 1));
0x0001bac8 move s1, s7 | s1 = s7;
| if (a0 == 0) {
0x0001bacc bnel a0, zero, 0x1ba48 | goto label_0;
| }
| do {
| label_1:
0x0001bad0 lw v1, 0x14c(sp) | v1 = *(var_14ch);
0x0001bad4 lw v0, (s3) | v0 = *(s3);
0x0001bad8 lw ra, 0x174(sp) | ra = *(var_174h);
| if (v1 != v0) {
0x0001badc bne v1, v0, 0x1be28 | goto label_22;
| }
0x0001bae0 lw fp, 0x170(sp) | fp = *(var_170h);
0x0001bae4 lw s7, 0x16c(sp) | s7 = *(var_16ch);
0x0001bae8 lw s6, 0x168(sp) | s6 = *(var_168h);
0x0001baec lw s5, 0x164(sp) | s5 = *(var_164h);
0x0001baf0 lw s4, 0x160(sp) | s4 = *(var_160h);
0x0001baf4 lw s3, 0x15c(sp) | s3 = *(var_15ch);
0x0001baf8 lw s2, 0x158(sp) | s2 = *(var_158h);
0x0001bafc lw s1, 0x154(sp) | s1 = *(var_154h);
0x0001bb00 lw s0, 0x150(sp) | s0 = *(var_150h);
0x0001bb04 addiu sp, sp, 0x178 |
0x0001bb08 jr ra | return v0;
| label_12:
0x0001bb0c move a1, s0 | a1 = s0;
| label_13:
0x0001bb10 addiu s7, s1, 1 | s7 = s1 + 1;
0x0001bb14 jalr t9 | t9 ();
0x0001bb18 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001bb1c beqz s7, 0x1bad0 |
| } while (s7 == 0);
0x0001bb20 lb a0, 1(s1) | a0 = *((s1 + 1));
| if (a0 == 0) {
0x0001bb24 beqz a0, 0x1bad0 | goto label_1;
| }
0x0001bb28 nop |
0x0001bb2c move s1, s7 | s1 = s7;
0x0001bb30 b 0x1ba48 | goto label_0;
| label_10:
0x0001bb34 sw v0, 0xc(s4) | *((s4 + 3)) = v0;
| if (v0 == 0) {
0x0001bb38 bnel v0, zero, 0x1b984 | goto label_2;
| }
0x0001bb3c lw v0, -0x7fd4(gp) | v0 = *(gp);
0x0001bb40 b 0x1b988 | goto label_3;
| label_19:
0x0001bb44 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001bb48 move a1, s0 | a1 = s0;
0x0001bb4c addiu a0, zero, 0x25 | a0 = 0x25;
0x0001bb50 jalr t9 | t9 ();
0x0001bb54 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001bb58 lb a0, 1(s1) | a0 = *((s1 + 1));
0x0001bb5c move a1, s0 | a1 = s0;
0x0001bb60 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001bb64 addiu s7, s1, 2 | s7 = s1 + 2;
0x0001bb68 jalr t9 | t9 ();
0x0001bb6c lw gp, 0x18(sp) | gp = *(var_18h);
| if (s7 != 0) {
0x0001bb70 bnez s7, 0x1ba38 | goto label_4;
| }
0x0001bb74 b 0x1bad0 | goto label_1;
0x0001bb78 nop |
| label_15:
0x0001bb7c move a1, s0 | a1 = s0;
0x0001bb80 addiu a0, zero, 9 | a0 = 9;
0x0001bb84 jalr t9 | t9 ();
0x0001bb88 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001bb8c b 0x1ba2c | goto label_5;
| label_14:
0x0001bb90 move a1, s0 | a1 = s0;
0x0001bb94 addiu a0, zero, 0xd | a0 = 0xd;
0x0001bb98 jalr t9 | t9 ();
0x0001bb9c lw gp, 0x18(sp) | gp = *(var_18h);
0x0001bba0 b 0x1ba2c | goto label_5;
| label_16:
0x0001bba4 addiu a0, zero, 0xa | a0 = 0xa;
0x0001bba8 jalr t9 | t9 ();
0x0001bbac lw gp, 0x18(sp) | gp = *(var_18h);
0x0001bbb0 b 0x1ba2c | goto label_5;
| label_18:
0x0001bbb4 lw t9, -0x7bcc(gp) | t9 = sym.imp.strchr;
0x0001bbb8 addiu a1, zero, 0x7d | a1 = 0x7d;
0x0001bbbc move a0, s1 | a0 = s1;
0x0001bbc0 jalr t9 | t9 ();
0x0001bbc4 sw v0, 0x3c(sp) | *(var_3ch_2) = v0;
0x0001bbc8 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001bbcc addiu s7, s1, 2 | s7 = s1 + 2;
| if (v0 == 0) {
0x0001bbd0 beqz v0, 0x1bd8c | goto label_23;
| }
0x0001bbd4 lw v0, 0x3c(sp) | v0 = *(var_3ch_2);
0x0001bbd8 move s1, zero | s1 = 0;
0x0001bbdc subu s2, v0, s7 | __asm ("subu s2, v0, s7");
0x0001bbe0 lw v0, 0x2c(sp) | v0 = *(var_2ch_2);
0x0001bbe4 lw fp, 0x30(sp) | fp = *(var_30h_2);
0x0001bbe8 addiu s6, v0, -0x6458 | s6 = v0 + -0x6458;
0x0001bbec addiu v0, zero, 5 | v0 = 5;
0x0001bbf0 b 0x1bc14 | goto label_24;
| label_6:
0x0001bbf4 addiu s6, s6, 0x10 | s6 += 0x10;
| do {
0x0001bbf8 lw fp, -0x10(s6) | fp = *((s6 - 4));
0x0001bbfc addiu s1, s1, 1 | s1++;
| if (fp == 0) {
0x0001bc00 beqz fp, 0x1bcac | goto label_25;
| }
0x0001bc04 lw t9, -0x7c88(gp) | t9 = sym.imp.strlen;
0x0001bc08 move a0, fp | a0 = fp;
0x0001bc0c jalr t9 | t9 ();
0x0001bc10 lw gp, 0x18(sp) | gp = *(var_18h);
| label_24:
0x0001bc14 addiu s6, s6, 0x10 | s6 += 0x10;
0x0001bc18 bnel s2, v0, 0x1bbf8 |
| } while (s2 == v0);
0x0001bc1c lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
0x0001bc20 move a2, s2 | a2 = s2;
0x0001bc24 move a1, fp | a1 = fp;
0x0001bc28 move a0, s7 | a0 = s7;
0x0001bc2c jalr t9 | t9 ();
0x0001bc30 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0001bc34 beqz v0, 0x1bbf4 | goto label_6;
| }
0x0001bc38 lw a1, -0x7fb8(gp) | a1 = *((gp - 8174));
0x0001bc3c sll s1, s1, 4 | s1 <<= 4;
| /* esilref: 'certs' */
0x0001bc40 addiu a1, a1, -0x6468 | a1 += -0x6468;
0x0001bc44 addu v0, a1, s1 | v0 = a1 + s1;
0x0001bc48 addiu v1, zero, 0x2c | v1 = 0x2c;
0x0001bc4c lw v0, 4(v0) | v0 = *((v0 + 1));
0x0001bc50 sltiu v1, v0, 0x2d | v1 = (v0 < 0x2d) ? 1 : 0;
| if (v0 == v1) {
0x0001bc54 beq v0, v1, 0x1bdd0 | goto label_26;
| }
0x0001bc58 addiu v1, zero, 0x3d | v1 = 0x3d;
| if (v1 == 0) {
0x0001bc5c beqz v1, 0x1bdb8 | goto label_27;
| }
0x0001bc60 addiu v1, zero, 0xb | v1 = 0xb;
0x0001bc64 addiu v1, zero, 0x25 | v1 = 0x25;
| if (v0 == v1) {
0x0001bc68 beq v0, v1, 0x1be04 | goto label_28;
| }
0x0001bc6c lw t9, -0x7dc0(gp) | t9 = sym.ourWriteOutJSON;
| if (v0 != v1) {
0x0001bc70 bne v0, v1, 0x1bde0 | goto label_29;
| }
0x0001bc74 lw a3, 0x180(sp) | a3 = *(arg_180h);
0x0001bc78 move a2, s4 | a2 = s4;
0x0001bc7c move a0, s0 | a0 = s0;
0x0001bc80 bal 0x1c0a8 | sym_ourWriteOutJSON ();
0x0001bc84 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001bc88 b 0x1bcd0 | goto label_9;
| label_17:
0x0001bc8c move a1, s0 | a1 = s0;
0x0001bc90 addiu a0, zero, 0x25 | a0 = 0x25;
0x0001bc94 addiu s7, s1, 2 | s7 = s1 + 2;
0x0001bc98 jalr t9 | t9 ();
0x0001bc9c lw gp, 0x18(sp) | gp = *(var_18h);
| if (s7 != 0) {
0x0001bca0 bnez s7, 0x1ba38 | goto label_4;
| }
0x0001bca4 b 0x1bad0 | goto label_1;
0x0001bca8 nop |
| label_25:
0x0001bcac lw v0, -0x7fd8(gp) | v0 = *(gp);
0x0001bcb0 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0001bcb4 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0001bcb8 lw a0, (v0) | a0 = *(v0);
0x0001bcbc move a3, s7 | a3 = s7;
0x0001bcc0 move a2, s2 | a2 = s2;
| /* str.curl:_unknown___write_out_variable:__.s_n */
0x0001bcc4 addiu a1, a1, 0x7674 | a1 += 0x7674;
0x0001bcc8 jalr t9 | t9 ();
0x0001bccc lw gp, 0x18(sp) | gp = *(var_18h);
| label_9:
0x0001bcd0 lw v0, 0x3c(sp) | v0 = *(var_3ch_2);
0x0001bcd4 addiu s1, v0, 1 | s1 = v0 + 1;
0x0001bcd8 lb a0, (s1) | a0 = *(s1);
| if (s1 == 0) {
0x0001bcdc bnel s1, zero, 0x1b9c0 | goto label_7;
| }
0x0001bce0 b 0x1bad0 | goto label_1;
0x0001bce4 nop |
| label_21:
0x0001bce8 addiu v1, sp, 0x4c | v1 = sp + 0x4c;
0x0001bcec move a2, s1 | a2 = s1;
0x0001bcf0 move a0, v1 | a0 = v1;
0x0001bcf4 addiu a3, zero, 0x100 | a3 = aav.0x00000100;
0x0001bcf8 move a1, s7 | a1 = s7;
0x0001bcfc jalr t9 | t9 ();
0x0001bd00 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001bd04 move v1, v0 | v1 = v0;
0x0001bd08 addiu v0, sp, 0x150 | v0 = sp + 0x150;
0x0001bd0c addu s1, v0, s1 | s1 = v0 + s1;
0x0001bd10 addiu v0, sp, 0x48 | v0 = sp + 0x48;
0x0001bd14 lw a0, 0x10(s4) | a0 = *((s4 + 4));
0x0001bd18 lw t9, -0x7c9c(gp) | t9 = sym.imp.curl_easy_header;
0x0001bd1c sw v0, 0x14(sp) | *(var_14h) = v0;
0x0001bd20 addiu v0, zero, -1 | v0 = -1;
0x0001bd24 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x0001bd28 addiu a3, zero, 1 | a3 = 1;
0x0001bd2c move a2, zero | a2 = 0;
0x0001bd30 move a1, v1 | a1 = v1;
0x0001bd34 sb zero, -0x104(s1) | *(s1) = 0;
0x0001bd38 jalr t9 | t9 ();
0x0001bd3c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0001bd40 bnez v0, 0x1bab8 | goto label_8;
| }
0x0001bd44 lw v0, 0x48(sp) | v0 = *(var_48h);
0x0001bd48 lw t9, -0x7b68(gp) | t9 = sym.imp.fputs;
0x0001bd4c move a1, s0 | a1 = s0;
0x0001bd50 lw a0, 4(v0) | a0 = *((v0 + 1));
0x0001bd54 jalr t9 | t9 ();
0x0001bd58 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001bd5c b 0x1bab8 | goto label_8;
| label_20:
0x0001bd60 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x0001bd64 lw a0, 0x34(sp) | a0 = *(var_34h_2);
0x0001bd68 move a3, s0 | a3 = s0;
0x0001bd6c addiu a2, zero, 8 | a2 = 8;
0x0001bd70 addiu a1, zero, 1 | a1 = 1;
0x0001bd74 jalr t9 | t9 ();
0x0001bd78 lb a0, 8(s1) | a0 = *((s1 + 8));
0x0001bd7c lw gp, 0x18(sp) | gp = *(var_18h);
| if (a0 == 0) {
0x0001bd80 beqz a0, 0x1bad0 | goto label_1;
| }
0x0001bd84 move s1, s7 | s1 = s7;
0x0001bd88 b 0x1ba48 | goto label_0;
| label_23:
0x0001bd8c lw v0, 0x38(sp) | v0 = *(var_38h_2);
0x0001bd90 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x0001bd94 move a3, s0 | a3 = s0;
0x0001bd98 addiu a2, zero, 2 | a2 = 2;
0x0001bd9c addiu a1, zero, 1 | a1 = 1;
0x0001bda0 addiu a0, v0, 0x7670 | a0 = v0 + 0x7670;
0x0001bda4 jalr t9 | t9 ();
0x0001bda8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (s7 != 0) {
0x0001bdac bnez s7, 0x1ba38 | goto label_4;
| }
0x0001bdb0 b 0x1bad0 | goto label_1;
0x0001bdb4 nop |
| label_27:
0x0001bdb8 addiu v1, zero, 0x3e | v1 = 0x3e;
| if (v0 != v1) {
0x0001bdbc beq v0, v1, 0x1be1c |
0x0001bdc0 addu a1, a1, s1 | a1 += s1;
| if (v0 != v1) {
0x0001bdc4 bnel v0, v1, 0x1bde4 |
0x0001bdc8 lw s0, (s5) | s0 = *(s5);
0x0001bdcc b 0x1bcd0 | goto label_9;
| label_26:
0x0001bdd0 lw v0, 0x180(sp) | v0 = *(arg_180h);
0x0001bdd4 sltiu v0, v0, 1 | v0 = (v0 < 1) ? 1 : 0;
0x0001bdd8 sw v0, 0x24(sp) | *(var_24h_2) = v0;
0x0001bddc b 0x1bcd0 | goto label_9;
| label_29:
0x0001bde0 addu a1, a1, s1 | a1 += s1;
| }
0x0001bde4 lw a3, 0x180(sp) | a3 = *(arg_180h);
0x0001bde8 lw t9, 0xc(a1) | t9 = *((a1 + 3));
0x0001bdec sw zero, 0x10(sp) | *(var_10h_2) = 0;
0x0001bdf0 move a2, s4 | a2 = s4;
0x0001bdf4 move a0, s0 | a0 = s0;
0x0001bdf8 jalr t9 | t9 ();
0x0001bdfc lw gp, 0x18(sp) | gp = *(var_18h);
0x0001be00 b 0x1bcd0 | goto label_9;
| label_28:
0x0001be04 lw t9, -0x7dbc(gp) | t9 = sym.headerJSON;
0x0001be08 move a1, s4 | a1 = s4;
0x0001be0c move a0, s0 | a0 = s0;
0x0001be10 bal 0x1c1cc | sym_headerJSON ();
0x0001be14 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001be18 b 0x1bcd0 | goto label_9;
| }
0x0001be1c lw v0, -0x7fd8(gp) | v0 = *(gp);
0x0001be20 lw s0, (v0) | s0 = *(v0);
0x0001be24 b 0x1bcd0 | goto label_9;
| label_22:
0x0001be28 lw t9, -0x7ce8(gp) | t9 = sym.imp.__stack_chk_fail;
0x0001be2c jalr t9 | t9 ();
0x0001be30 nop |
0x0001be34 nop |
0x0001be38 nop |
0x0001be3c nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x1c0a8 */
| #include <stdint.h>
|
; (fcn) sym.ourWriteOutJSON () | void ourWriteOutJSON () {
0x0001c0a8 lui gp, 2 |
0x0001c0ac addiu gp, gp, 0x5f98 |
0x0001c0b0 addu gp, gp, t9 | gp += t9;
0x0001c0b4 addiu sp, sp, -0x38 |
0x0001c0b8 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001c0bc sw s0, 0x20(sp) | *(var_20h) = s0;
0x0001c0c0 move s0, a1 | s0 = a1;
0x0001c0c4 sw gp, 0x18(sp) | *(var_18h) = gp;
0x0001c0c8 sw s3, 0x2c(sp) | *(var_2ch) = s3;
0x0001c0cc sw s2, 0x28(sp) | *(var_28h) = s2;
0x0001c0d0 sw s1, 0x24(sp) | *(var_24h) = s1;
0x0001c0d4 move a1, a0 | a1 = a0;
0x0001c0d8 sw ra, 0x34(sp) | *(var_34h) = ra;
0x0001c0dc sw s4, 0x30(sp) | *(var_30h) = s4;
0x0001c0e0 move s1, a0 | s1 = a0;
0x0001c0e4 addiu a0, zero, 0x7b | a0 = 0x7b;
0x0001c0e8 move s2, a2 | s2 = a2;
0x0001c0ec move s3, a3 | s3 = a3;
0x0001c0f0 jalr t9 | t9 ();
0x0001c0f4 lw v0, (s0) | v0 = *(s0);
0x0001c0f8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0001c0fc beqz v0, 0x1c15c | goto label_2;
| }
0x0001c100 addiu s4, zero, 1 | s4 = 1;
0x0001c104 b 0x1c114 |
| while (t9 == 0) {
| label_0:
0x0001c108 lw v0, (s0) | v0 = *(s0);
0x0001c10c lw a1, -0x7fd4(gp) | a1 = *(gp);
| if (v0 == 0) {
0x0001c110 beqz v0, 0x1c160 | goto label_3;
| }
| label_1:
0x0001c114 lw t9, 0xc(s0) | t9 = *((s0 + 3));
0x0001c118 move a1, s0 | a1 = s0;
0x0001c11c move a3, s3 | a3 = s3;
0x0001c120 addiu s0, s0, 0x10 | s0 += 0x10;
0x0001c124 move a2, s2 | a2 = s2;
0x0001c128 move a0, s1 | a0 = s1;
0x0001c12c beqz t9, 0x1c108 |
| }
0x0001c130 sw s4, 0x10(sp) | *(var_10h) = s4;
0x0001c134 jalr t9 | t9 ();
0x0001c138 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0001c13c beqz v0, 0x1c108 | goto label_0;
| }
0x0001c140 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001c144 move a1, s1 | a1 = s1;
0x0001c148 addiu a0, zero, 0x2c | a0 = 0x2c;
0x0001c14c jalr t9 | t9 ();
0x0001c150 lw v0, (s0) | v0 = *(s0);
0x0001c154 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0001c158 bnez v0, 0x1c114 | goto label_1;
| }
| label_2:
0x0001c15c lw a1, -0x7fd4(gp) | a1 = *(gp);
| label_3:
0x0001c160 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0001c164 move a0, s1 | a0 = s1;
| /* str._curl_version_: */
0x0001c168 addiu a1, a1, 0x7b04 | a1 += 0x7b04;
0x0001c16c jalr t9 | t9 ();
0x0001c170 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001c174 lw t9, -0x7c78(gp) | t9 = sym.imp.curl_version;
0x0001c178 jalr t9 | t9 ();
0x0001c17c nop |
0x0001c180 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001c184 move a0, s1 | a0 = s1;
0x0001c188 move a1, v0 | a1 = v0;
0x0001c18c lw t9, -0x7dc4(gp) | t9 = sym.jsonWriteString;
0x0001c190 move a2, zero | a2 = 0;
0x0001c194 bal 0x1be40 | sym_jsonWriteString ();
0x0001c198 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001c19c lw ra, 0x34(sp) | ra = *(var_34h);
0x0001c1a0 lw s4, 0x30(sp) | s4 = *(var_30h);
0x0001c1a4 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0001c1a8 lw s3, 0x2c(sp) | s3 = *(var_2ch);
0x0001c1ac lw s2, 0x28(sp) | s2 = *(var_28h);
0x0001c1b0 lw s0, 0x20(sp) | s0 = *(var_20h);
0x0001c1b4 move a0, s1 | a0 = s1;
0x0001c1b8 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0001c1bc lw s1, 0x24(sp) | s1 = *(var_24h);
0x0001c1c0 addiu a1, a1, -0x42c | a1 += -0x42c;
0x0001c1c4 addiu sp, sp, 0x38 |
0x0001c1c8 jr t9 | return t9 ();
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x1c0a8 */
| #include <stdint.h>
|
; (fcn) sym.ourWriteOutJSON () | void ourWriteOutJSON () {
0x0001c0a8 lui gp, 2 |
0x0001c0ac addiu gp, gp, 0x5f98 |
0x0001c0b0 addu gp, gp, t9 | gp += t9;
0x0001c0b4 addiu sp, sp, -0x38 |
0x0001c0b8 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001c0bc sw s0, 0x20(sp) | *(var_20h) = s0;
0x0001c0c0 move s0, a1 | s0 = a1;
0x0001c0c4 sw gp, 0x18(sp) | *(var_18h) = gp;
0x0001c0c8 sw s3, 0x2c(sp) | *(var_2ch) = s3;
0x0001c0cc sw s2, 0x28(sp) | *(var_28h) = s2;
0x0001c0d0 sw s1, 0x24(sp) | *(var_24h) = s1;
0x0001c0d4 move a1, a0 | a1 = a0;
0x0001c0d8 sw ra, 0x34(sp) | *(var_34h) = ra;
0x0001c0dc sw s4, 0x30(sp) | *(var_30h) = s4;
0x0001c0e0 move s1, a0 | s1 = a0;
0x0001c0e4 addiu a0, zero, 0x7b | a0 = 0x7b;
0x0001c0e8 move s2, a2 | s2 = a2;
0x0001c0ec move s3, a3 | s3 = a3;
0x0001c0f0 jalr t9 | t9 ();
0x0001c0f4 lw v0, (s0) | v0 = *(s0);
0x0001c0f8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0001c0fc beqz v0, 0x1c15c | goto label_2;
| }
0x0001c100 addiu s4, zero, 1 | s4 = 1;
0x0001c104 b 0x1c114 |
| while (t9 == 0) {
| label_0:
0x0001c108 lw v0, (s0) | v0 = *(s0);
0x0001c10c lw a1, -0x7fd4(gp) | a1 = *(gp);
| if (v0 == 0) {
0x0001c110 beqz v0, 0x1c160 | goto label_3;
| }
| label_1:
0x0001c114 lw t9, 0xc(s0) | t9 = *((s0 + 3));
0x0001c118 move a1, s0 | a1 = s0;
0x0001c11c move a3, s3 | a3 = s3;
0x0001c120 addiu s0, s0, 0x10 | s0 += 0x10;
0x0001c124 move a2, s2 | a2 = s2;
0x0001c128 move a0, s1 | a0 = s1;
0x0001c12c beqz t9, 0x1c108 |
| }
0x0001c130 sw s4, 0x10(sp) | *(var_10h) = s4;
0x0001c134 jalr t9 | t9 ();
0x0001c138 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x0001c13c beqz v0, 0x1c108 | goto label_0;
| }
0x0001c140 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x0001c144 move a1, s1 | a1 = s1;
0x0001c148 addiu a0, zero, 0x2c | a0 = 0x2c;
0x0001c14c jalr t9 | t9 ();
0x0001c150 lw v0, (s0) | v0 = *(s0);
0x0001c154 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0001c158 bnez v0, 0x1c114 | goto label_1;
| }
| label_2:
0x0001c15c lw a1, -0x7fd4(gp) | a1 = *(gp);
| label_3:
0x0001c160 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0001c164 move a0, s1 | a0 = s1;
| /* str._curl_version_: */
0x0001c168 addiu a1, a1, 0x7b04 | a1 += 0x7b04;
0x0001c16c jalr t9 | t9 ();
0x0001c170 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001c174 lw t9, -0x7c78(gp) | t9 = sym.imp.curl_version;
0x0001c178 jalr t9 | t9 ();
0x0001c17c nop |
0x0001c180 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001c184 move a0, s1 | a0 = s1;
0x0001c188 move a1, v0 | a1 = v0;
0x0001c18c lw t9, -0x7dc4(gp) | t9 = sym.jsonWriteString;
0x0001c190 move a2, zero | a2 = 0;
0x0001c194 bal 0x1be40 | sym_jsonWriteString ();
0x0001c198 lw gp, 0x18(sp) | gp = *(var_18h);
0x0001c19c lw ra, 0x34(sp) | ra = *(var_34h);
0x0001c1a0 lw s4, 0x30(sp) | s4 = *(var_30h);
0x0001c1a4 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x0001c1a8 lw s3, 0x2c(sp) | s3 = *(var_2ch);
0x0001c1ac lw s2, 0x28(sp) | s2 = *(var_28h);
0x0001c1b0 lw s0, 0x20(sp) | s0 = *(var_20h);
0x0001c1b4 move a0, s1 | a0 = s1;
0x0001c1b8 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x0001c1bc lw s1, 0x24(sp) | s1 = *(var_24h);
0x0001c1c0 addiu a1, a1, -0x42c | a1 += -0x42c;
0x0001c1c4 addiu sp, sp, 0x38 |
0x0001c1c8 jr t9 | return t9 ();
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x64d0 */
| #include <stdint.h>
|
; (fcn) sym.tool_header_cb () | void tool_header_cb () {
0x000064d0 lui gp, 4 |
0x000064d4 addiu gp, gp, -0x4490 |
0x000064d8 addu gp, gp, t9 | gp += t9;
0x000064dc addiu sp, sp, -0x68 |
0x000064e0 lw v0, 8(a3) | v0 = *((a3 + 2));
0x000064e4 sw s3, 0x4c(sp) | *(var_4ch) = s3;
0x000064e8 lw s3, -0x7cb0(gp) | s3 = *((gp - 7980));
0x000064ec sw gp, 0x18(sp) | *(var_18h) = gp;
0x000064f0 sw s1, 0x44(sp) | *(var_44h) = s1;
0x000064f4 lw v1, (s3) | v1 = *(s3);
0x000064f8 sw ra, 0x64(sp) | *(var_64h) = ra;
0x000064fc sw fp, 0x60(sp) | *(var_60h) = fp;
0x00006500 sw s7, 0x5c(sp) | *(var_5ch) = s7;
0x00006504 sw s6, 0x58(sp) | *(var_58h) = s6;
0x00006508 sw s5, 0x54(sp) | *(var_54h) = s5;
0x0000650c sw s4, 0x50(sp) | *(var_50h) = s4;
0x00006510 sw s2, 0x48(sp) | *(var_48h) = s2;
0x00006514 sw s0, 0x40(sp) | *(var_40h) = s0;
0x00006518 sw v1, 0x3c(sp) | *(var_3ch) = v1;
0x0000651c mul s1, a1, a2 | __asm ("mul s1, a1, a2");
0x00006520 sw zero, 0x2c(sp) | *(var_2ch) = 0;
| if (v0 == 0) {
0x00006524 beqz v0, 0x6c70 | goto label_11;
| }
0x00006528 lw v1, 0x7c(v0) | v1 = *((v0 + 31));
0x0000652c move s0, a3 | s0 = a3;
0x00006530 move s5, a1 | s5 = a1;
0x00006534 move s2, a0 | s2 = a0;
| if (v1 == 0) {
0x00006538 beqz v1, 0x65b0 | goto label_19;
| }
0x0000653c lw a3, 0xa8(a3) | a3 = *((a3 + 42));
0x00006540 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
| if (a3 == 0) {
0x00006544 beqz a3, 0x65b0 | goto label_19;
| }
0x00006548 jalr t9 | t9 ();
0x0000654c nop |
0x00006550 lw gp, 0x18(sp) | gp = *(var_18h);
| if (s1 == v0) {
0x00006554 beq s1, v0, 0x659c | goto label_20;
| }
0x00006558 move s1, v0 | s1 = v0;
| do {
| label_0:
0x0000655c lw a0, 0x3c(sp) | a0 = *(var_3ch);
0x00006560 lw v1, (s3) | v1 = *(s3);
0x00006564 move v0, s1 | v0 = s1;
| if (a0 != v1) {
0x00006568 bne a0, v1, 0x6dd4 | goto label_21;
| }
0x0000656c lw ra, 0x64(sp) | ra = *(var_64h);
0x00006570 lw fp, 0x60(sp) | fp = *(var_60h);
0x00006574 lw s7, 0x5c(sp) | s7 = *(var_5ch);
0x00006578 lw s6, 0x58(sp) | s6 = *(var_58h);
0x0000657c lw s5, 0x54(sp) | s5 = *(var_54h);
0x00006580 lw s4, 0x50(sp) | s4 = *(var_50h);
0x00006584 lw s3, 0x4c(sp) | s3 = *(var_4ch);
0x00006588 lw s2, 0x48(sp) | s2 = *(var_48h);
0x0000658c lw s1, 0x44(sp) | s1 = *(var_44h);
0x00006590 lw s0, 0x40(sp) | s0 = *(var_40h);
0x00006594 addiu sp, sp, 0x68 |
0x00006598 jr ra | return v1;
| label_20:
0x0000659c lw t9, -0x7c44(gp) | t9 = sym.imp.fflush;
0x000065a0 lw a0, 0xa8(s0) | a0 = *((s0 + 42));
0x000065a4 jalr t9 | t9 ();
0x000065a8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000065ac lw v0, 8(s0) | v0 = *((s0 + 2));
| label_19:
0x000065b0 lw v0, 0x188(v0) | v0 = *((v0 + 98));
0x000065b4 addu s4, s2, s1 | s4 = s2 + s1;
| if (v0 != 0) {
0x000065b8 beqz v0, 0x65f4 |
0x000065bc lw v0, 0xc8(s0) | v0 = *((s0 + 50));
0x000065c0 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
| if (v0 == 0) {
0x000065c4 beqz v0, 0x65f4 | goto label_9;
| }
0x000065c8 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x000065cc addiu a2, zero, 5 | a2 = 5;
| /* str.etag: */
0x000065d0 addiu a1, a1, -0x3e0 | a1 += -0x3e0;
0x000065d4 move a0, s2 | a0 = s2;
0x000065d8 jalr t9 | t9 ();
0x000065dc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000065e0 beqz v0, 0x65f4 | goto label_9;
| }
0x000065e4 lb v1, -1(s4) | v1 = *((s4 - 1));
0x000065e8 addiu v0, zero, 0xa | v0 = 0xa;
0x000065ec addiu a0, s2, 5 | a0 = s2 + 5;
| if (v1 == v0) {
0x000065f0 beq v1, v0, 0x6c78 | goto label_22;
| }
| }
| label_9:
0x000065f4 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| label_8:
0x000065f8 lw a0, 0x10(s0) | a0 = *((s0 + 4));
0x000065fc lui a1, 0x10 | a1 = 0x100000;
0x00006600 addiu a2, sp, 0x2c | a2 = sp + 0x2c;
0x00006604 addiu a1, a1, 0x31 | a1 += 0x31;
0x00006608 jalr t9 | t9 ();
0x0000660c lw gp, 0x18(sp) | gp = *(var_18h);
0x00006610 lw a0, 0x2c(sp) | a0 = *(var_2ch);
0x00006614 lw t9, -0x7fa4(gp) | t9 = sym.proto_token;
0x00006618 addiu s5, s0, 0x80 | s5 = s0 + 0x80;
0x0000661c bal 0x10f04 | sym_proto_token ();
0x00006620 lbu v1, 0x100(s0) | v1 = *(s0);
0x00006624 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006628 sw v0, 0x2c(sp) | *(var_2ch) = v0;
| if (v1 != 0) {
0x0000662c beqz v1, 0x663c |
0x00006630 sltiu v0, s1, 0x15 | v0 = (s1 < 0x15) ? 1 : 0;
0x00006634 lw a1, -0x7fd4(gp) | a1 = *(gp);
| if (v0 == 0) {
0x00006638 beqz v0, 0x69b4 | goto label_23;
| }
| }
| label_2:
0x0000663c lw s4, 0xf0(s0) | s4 = *((s0 + 60));
| label_3:
0x00006640 lw v0, 0x1bc(s4) | v0 = *(s4);
0x00006644 lw t9, -0x7d4c(gp) | t9 = sym.imp.memchr;
| if (v0 != 0) {
0x00006648 beqz v0, 0x667c |
0x0000664c move a2, s1 | a2 = s1;
0x00006650 addiu a1, zero, 0x3a | a1 = 0x3a;
0x00006654 move a0, s2 | a0 = s2;
0x00006658 jalr t9 | t9 ();
0x0000665c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00006660 beqz v0, 0x6acc | goto label_24;
| }
0x00006664 lbu v0, 0x108(s0) | v0 = *(s0);
| if (v0 == 0) {
0x00006668 beql v0, zero, 0x69a4 | goto label_25;
| }
0x0000666c lw v0, 0x104(s0) | v0 = *(s0);
0x00006670 addiu v0, zero, 1 | v0 = 1;
0x00006674 sb zero, 0x108(s0) | *(s0) = 0;
0x00006678 sw v0, 0x104(s0) | *(s0) = v0;
| }
| label_1:
0x0000667c lbu v0, 0xfb(s4) | v0 = *((s4 + 251));
| label_7:
0x00006680 lw v1, -0x7fa0(gp) | v1 = *(gp);
0x00006684 beqz v0, 0x655c |
| } while (v0 == 0);
0x00006688 lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x0000668c lw v1, (v1) | v1 = *(v1);
0x00006690 lw v1, -0x7f9c(gp) | v1 = *(gp);
| if (v0 == v1) {
0x00006694 beq v0, v1, 0x66bc | goto label_26;
| }
0x00006698 lw v1, (v1) | v1 = *(v1);
0x0000669c lw v1, -0x7f98(gp) | v1 = *(gp);
| if (v0 == v1) {
0x000066a0 beq v0, v1, 0x66bc | goto label_26;
| }
0x000066a4 lw v1, (v1) | v1 = *(v1);
0x000066a8 lw v1, -0x7f94(gp) | v1 = *(gp);
| if (v0 == v1) {
0x000066ac beq v0, v1, 0x66bc | goto label_26;
| }
0x000066b0 lw v1, (v1) | v1 = *(v1);
| if (v0 != v1) {
0x000066b4 bne v0, v1, 0x655c | goto label_0;
| }
0x000066b8 nop |
| label_26:
0x000066bc lw s4, 0x88(s0) | s4 = *((s0 + 34));
0x000066c0 lw t9, -0x7f90(gp) | t9 = sym.tool_create_output_file;
| if (s4 == 0) {
0x000066c4 beqz s4, 0x6d14 | goto label_27;
| }
| label_12:
0x000066c8 lw v0, 0xec(s0) | v0 = *((s0 + 59));
0x000066cc lbu v1, 3(v0) | v1 = *((v0 + 3));
0x000066d0 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
| if (v1 == 0) {
0x000066d4 beqz v1, 0x6ab0 | goto label_28;
| }
0x000066d8 lbu v0, 0x21(v0) | v0 = *((v0 + 33));
0x000066dc move a3, s4 | a3 = s4;
| if (v0 == 0) {
0x000066e0 beqz v0, 0x6ab4 | goto label_29;
| }
0x000066e4 lw t9, -0x7d4c(gp) | t9 = sym.imp.memchr;
0x000066e8 move a2, s1 | a2 = s1;
0x000066ec addiu a1, zero, 0x3a | a1 = 0x3a;
0x000066f0 move a0, s2 | a0 = s2;
0x000066f4 jalr t9 | t9 ();
0x000066f8 move s5, v0 | s5 = v0;
0x000066fc lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00006700 beqz v0, 0x6aac | goto label_30;
| }
0x00006704 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00006708 subu s6, v0, s2 | __asm ("subu s6, v0, s2");
0x0000670c lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00006710 move a3, s2 | a3 = s2;
0x00006714 move a0, s4 | a0 = s4;
0x00006718 move a2, s6 | a2 = s6;
| /* str.e_1m_.se_0m: */
0x0000671c addiu a1, a1, -0x3b4 | a1 += -0x3b4;
0x00006720 jalr t9 | t9 ();
0x00006724 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006728 move a1, s2 | a1 = s2;
0x0000672c move a2, s6 | a2 = s6;
0x00006730 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x00006734 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
| /* str.Location */
0x00006738 addiu a0, a0, -0x3a4 | a0 += -0x3a4;
0x0000673c jalr t9 | t9 ();
0x00006740 addiu s2, s1, -1 | s2 = s1 + -1;
0x00006744 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006748 addiu s4, s5, 1 | s4 = s5 + 1;
0x0000674c subu s2, s2, s6 | __asm ("subu s2, s2, s6");
| if (v0 == 0) {
0x00006750 beqz v0, 0x6d30 | goto label_31;
| }
0x00006754 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x00006758 lw v0, 0x10(s0) | v0 = *((s0 + 4));
0x0000675c lw t9, -0x7bd0(gp) | t9 = sym.imp.getenv;
| /* str.VTE_VERSION */
0x00006760 addiu a0, a0, -0x398 | a0 += -0x398;
0x00006764 sw v0, 0x20(sp) | *(var_20h) = v0;
0x00006768 sw zero, 0x30(sp) | *(var_30h) = 0;
0x0000676c sw zero, 0x34(sp) | *(var_34h) = 0;
0x00006770 sw zero, 0x38(sp) | *(var_38h) = 0;
0x00006774 lw fp, 0x88(s0) | fp = *((s0 + 34));
0x00006778 jalr t9 | t9 ();
0x0000677c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00006780 beqz v0, 0x67a8 |
0x00006784 lw t9, -0x7c34(gp) | t9 = sym.imp.strtol;
0x00006788 addiu a2, zero, 0xa | a2 = 0xa;
0x0000678c move a1, zero | a1 = 0;
0x00006790 move a0, v0 | a0 = v0;
0x00006794 jalr t9 | t9 ();
0x00006798 addiu v0, v0, -1 | v0 += -1;
0x0000679c sltiu v0, v0, 0x12c1 | v0 = (v0 < 0x12c1) ? 1 : 0;
0x000067a0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000067a4 bnez v0, 0x6d58 | goto label_32;
| }
| }
0x000067a8 addiu v0, zero, 0x20 | v0 = 0x20;
| if (s2 == 0) {
0x000067ac beqz s2, 0x6dc8 | goto label_33;
| }
0x000067b0 lb v1, 1(s5) | v1 = *((s5 + 1));
0x000067b4 move s0, s2 | s0 = s2;
0x000067b8 move s7, s4 | s7 = s4;
| if (v1 != v0) {
0x000067bc bne v1, v0, 0x6d64 | goto label_34;
| }
0x000067c0 addiu v1, zero, 0x20 | v1 = 0x20;
0x000067c4 b 0x67d4 |
| while (s0 != 0) {
0x000067c8 lb v0, (s7) | v0 = *(s7);
0x000067cc addiu a0, zero, 0xa | a0 = 0xa;
| if (v0 != v1) {
0x000067d0 bne v0, v1, 0x6d68 | goto label_35;
| }
0x000067d4 addiu s0, s0, -1 | s0 += -1;
0x000067d8 addiu s7, s7, 1 | s7++;
0x000067dc bnez s0, 0x67c8 |
| }
| label_14:
0x000067e0 lw t9, -0x7cb4(gp) | t9 = sym.imp.curl_url;
| label_16:
0x000067e4 jalr t9 | t9 ();
0x000067e8 nop |
0x000067ec move s6, v0 | s6 = v0;
0x000067f0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000067f4 beqz v0, 0x6d58 | goto label_32;
| }
0x000067f8 lw t9, -0x7ce0(gp) | t9 = sym.imp.malloc;
0x000067fc addiu a0, s0, 1 | a0 = s0 + 1;
0x00006800 jalr t9 | t9 ();
0x00006804 move s5, v0 | s5 = v0;
0x00006808 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0000680c beqz v0, 0x6944 |
0x00006810 lw t9, -0x7c80(gp) | t9 = sym.imp.memcpy;
0x00006814 move a2, s0 | a2 = s0;
0x00006818 move a1, s7 | a1 = s7;
0x0000681c move a0, v0 | a0 = v0;
0x00006820 jalr t9 | t9 ();
0x00006824 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006828 addu s0, s5, s0 | s0 = s5 + s0;
0x0000682c lui a1, 0x10 | a1 = 0x100000;
0x00006830 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
0x00006834 lw a0, 0x20(sp) | a0 = *(var_20h);
0x00006838 sb zero, (s0) | *(s0) = 0;
0x0000683c addiu a2, sp, 0x30 | a2 = sp + 0x30;
0x00006840 addiu a1, a1, 1 | a1++;
0x00006844 jalr t9 | t9 ();
0x00006848 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0000684c bnez v0, 0x6944 | goto label_36;
| }
0x00006850 lw t9, -0x7d18(gp) | t9 = sym.imp.curl_url_set;
0x00006854 lw a2, 0x30(sp) | a2 = *(var_30h);
0x00006858 move a3, zero | a3 = 0;
0x0000685c move a1, zero | a1 = 0;
0x00006860 move a0, s6 | a0 = s6;
0x00006864 jalr t9 | t9 ();
0x00006868 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0000686c bnez v0, 0x6944 | goto label_36;
| }
0x00006870 lw t9, -0x7d18(gp) | t9 = sym.imp.curl_url_set;
0x00006874 move a3, zero | a3 = 0;
0x00006878 move a2, s5 | a2 = s5;
0x0000687c move a1, zero | a1 = 0;
0x00006880 move a0, s6 | a0 = s6;
0x00006884 jalr t9 | t9 ();
0x00006888 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x0000688c bnez v0, 0x6944 | goto label_36;
| }
0x00006890 lw t9, -0x7cf0(gp) | t9 = sym.imp.curl_url_get;
0x00006894 addiu a3, zero, 2 | a3 = 2;
0x00006898 addiu a2, sp, 0x38 | a2 = sp + 0x38;
0x0000689c move a1, zero | a1 = 0;
0x000068a0 move a0, s6 | a0 = s6;
0x000068a4 jalr t9 | t9 ();
0x000068a8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000068ac bnez v0, 0x6944 | goto label_36;
| }
0x000068b0 lw t9, -0x7cf0(gp) | t9 = sym.imp.curl_url_get;
0x000068b4 move a3, zero | a3 = 0;
0x000068b8 addiu a2, sp, 0x34 | a2 = sp + 0x34;
0x000068bc addiu a1, zero, 1 | a1 = 1;
0x000068c0 move a0, s6 | a0 = s6;
0x000068c4 jalr t9 | t9 ();
0x000068c8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000068cc bnez v0, 0x6944 | goto label_36;
| }
0x000068d0 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x000068d4 lw s0, 0x34(sp) | s0 = *(var_34h);
0x000068d8 lw t9, -0x7d80(gp) | t9 = sym.imp.strcmp;
0x000068dc move a1, s0 | a1 = s0;
| /* str.http */
0x000068e0 addiu a0, a0, -0x38c | a0 += -0x38c;
0x000068e4 jalr t9 | t9 ();
0x000068e8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000068ec beqz v0, 0x6de0 | goto label_37;
| }
0x000068f0 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x000068f4 lw t9, -0x7d80(gp) | t9 = sym.imp.strcmp;
0x000068f8 move a1, s0 | a1 = s0;
| /* str.https */
0x000068fc addiu a0, a0, -0x384 | a0 += -0x384;
0x00006900 jalr t9 | t9 ();
0x00006904 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00006908 beqz v0, 0x6de0 | goto label_37;
| }
0x0000690c lw a0, -0x7fd4(gp) | a0 = *(gp);
0x00006910 lw t9, -0x7d80(gp) | t9 = sym.imp.strcmp;
0x00006914 move a1, s0 | a1 = s0;
| /* esilref: 'ftp' */
0x00006918 addiu a0, a0, -0x37c | a0 += -0x37c;
0x0000691c jalr t9 | t9 ();
0x00006920 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00006924 beqz v0, 0x6de0 | goto label_37;
| }
0x00006928 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x0000692c lw t9, -0x7d80(gp) | t9 = sym.imp.strcmp;
0x00006930 move a1, s0 | a1 = s0;
| /* str.ftps */
0x00006934 addiu a0, a0, -0x378 | a0 += -0x378;
0x00006938 jalr t9 | t9 ();
0x0000693c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00006940 beqz v0, 0x6de0 | goto label_37;
| }
| }
| label_36:
0x00006944 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x00006948 move a3, fp | a3 = fp;
0x0000694c addiu a2, zero, 1 | a2 = 1;
0x00006950 move a1, s2 | a1 = s2;
0x00006954 move a0, s4 | a0 = s4;
0x00006958 jalr t9 | t9 ();
0x0000695c lw gp, 0x18(sp) | gp = *(var_18h);
| label_18:
0x00006960 lw t9, -0x7c3c(gp) | t9 = sym.imp.curl_free;
0x00006964 lw a0, 0x38(sp) | a0 = *(var_38h);
0x00006968 jalr t9 | t9 ();
0x0000696c lw gp, 0x18(sp) | gp = *(var_18h);
0x00006970 lw t9, -0x7c3c(gp) | t9 = sym.imp.curl_free;
0x00006974 lw a0, 0x34(sp) | a0 = *(var_34h);
0x00006978 jalr t9 | t9 ();
0x0000697c lw gp, 0x18(sp) | gp = *(var_18h);
0x00006980 lw t9, -0x7b90(gp) | t9 = sym.imp.curl_url_cleanup;
0x00006984 move a0, s6 | a0 = s6;
0x00006988 jalr t9 | t9 ();
0x0000698c lw gp, 0x18(sp) | gp = *(var_18h);
0x00006990 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00006994 move a0, s5 | a0 = s5;
0x00006998 jalr t9 | t9 ();
0x0000699c lw gp, 0x18(sp) | gp = *(var_18h);
0x000069a0 b 0x655c | goto label_0;
| label_25:
0x000069a4 sb zero, 0x108(s0) | *(s0) = 0;
0x000069a8 addiu v0, v0, 1 | v0++;
0x000069ac sw v0, 0x104(s0) | *(s0) = v0;
0x000069b0 b 0x667c | goto label_1;
| label_23:
0x000069b4 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
0x000069b8 addiu a2, zero, 0x14 | a2 = 0x14;
| /* str.Content_disposition: */
0x000069bc addiu a1, a1, -0x3d8 | a1 += -0x3d8;
0x000069c0 move a0, s2 | a0 = s2;
0x000069c4 jalr t9 | t9 ();
0x000069c8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x000069cc beqz v0, 0x663c | goto label_2;
| }
0x000069d0 lw v1, -0x7fa0(gp) | v1 = *(gp);
0x000069d4 lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x000069d8 lw v1, (v1) | v1 = *(v1);
0x000069dc lw v1, -0x7f9c(gp) | v1 = *(gp);
| if (v0 == v1) {
0x000069e0 beq v0, v1, 0x69f0 | goto label_38;
| }
0x000069e4 lw v1, (v1) | v1 = *(v1);
0x000069e8 lw s4, 0xf0(s0) | s4 = *((s0 + 60));
| if (v0 == v1) {
0x000069ec bnel v0, v1, 0x6640 | goto label_3;
| }
| label_38:
0x000069f0 lw s6, -0x7fd4(gp) | s6 = *(gp);
0x000069f4 addiu v0, s4, -9 | v0 = s4 + -9;
0x000069f8 sw v0, 0x20(sp) | *(var_20h) = v0;
0x000069fc lb s7, 0x14(s2) | s7 = *((s2 + 20));
| /* str.filename */
0x00006a00 addiu v0, s6, -0x3c0 | v0 = s6 + -0x3c0;
0x00006a04 addiu fp, s2, 0x14 | fp = s2 + 0x14;
0x00006a08 sw v0, 0x24(sp) | *(var_24h) = v0;
0x00006a0c addiu s6, zero, 0x3b | s6 = 0x3b;
| label_4:
0x00006a10 lw v0, 0x20(sp) | v0 = *(var_20h);
| if (s7 == 0) {
0x00006a14 beqz s7, 0x6a50 | goto label_39;
| }
| do {
0x00006a18 sltu v0, fp, s4 | v0 = (fp < s4) ? 1 : 0;
| label_5:
0x00006a1c lw v0, 0x20(sp) | v0 = *(var_20h);
| if (v0 == 0) {
0x00006a20 beqz v0, 0x6a50 | goto label_39;
| }
0x00006a24 addiu v0, zero, -0x21 | v0 = -0x21;
0x00006a28 and v0, s7, v0 | v0 = s7 & v0;
0x00006a2c addiu v0, v0, -0x41 | v0 += -0x41;
0x00006a30 andi v0, v0, 0xff | v0 &= 0xff;
0x00006a34 sltiu v0, v0, 0x1a | v0 = (v0 < 0x1a) ? 1 : 0;
0x00006a38 lw v0, 0x20(sp) | v0 = *(var_20h);
| if (v0 != 0) {
0x00006a3c bnez v0, 0x6a50 | goto label_39;
| }
0x00006a40 lb s7, 1(fp) | s7 = *(arg_1h);
0x00006a44 addiu fp, fp, 1 | fp++;
0x00006a48 bnez s7, 0x6a18 |
| } while (s7 != 0);
0x00006a4c lw v0, 0x20(sp) | v0 = *(var_20h);
| label_39:
0x00006a50 sltu v0, v0, fp | v0 = (v0 < fp) ? 1 : 0;
0x00006a54 lw t9, -0x7b7c(gp) | t9 = sym.imp.memcmp;
| if (v0 != 0) {
0x00006a58 bnez v0, 0x6c4c | goto label_17;
| }
0x00006a5c lw a1, 0x24(sp) | a1 = *(var_24h);
0x00006a60 addiu a2, zero, 9 | a2 = 9;
0x00006a64 move a0, fp | a0 = fp;
0x00006a68 jalr t9 | t9 ();
0x00006a6c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00006a70 beqz v0, 0x6af0 | goto label_40;
| }
0x00006a74 sltu v0, fp, s4 | v0 = (fp < s4) ? 1 : 0;
| if (v0 == 0) {
0x00006a78 beqz v0, 0x6a10 | goto label_4;
| }
0x00006a7c nop |
0x00006a80 addiu fp, fp, 1 | fp++;
| if (s7 == s6) {
0x00006a84 bnel s7, s6, 0x6a9c | goto label_41;
| }
0x00006a88 b 0x6a1c | goto label_5;
0x00006a8c nop |
| if (s7 == s6) {
| label_6:
0x00006a90 beq s7, s6, 0x6a10 | goto label_4;
| }
0x00006a94 nop |
0x00006a98 addiu fp, fp, 1 | fp++;
| label_41:
0x00006a9c lb s7, (fp) | s7 = *(fp);
| if (s4 != fp) {
0x00006aa0 bne s4, fp, 0x6a90 | goto label_6;
| }
0x00006aa4 move fp, s4 | fp = s4;
0x00006aa8 b 0x6a10 | goto label_4;
| label_30:
0x00006aac lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
| label_28:
0x00006ab0 move a3, s4 | a3 = s4;
| label_29:
0x00006ab4 addiu a2, zero, 1 | a2 = 1;
0x00006ab8 move a1, s1 | a1 = s1;
0x00006abc move a0, s2 | a0 = s2;
0x00006ac0 jalr t9 | t9 ();
0x00006ac4 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006ac8 b 0x655c | goto label_0;
| label_24:
0x00006acc lb v0, (s2) | v0 = *(s2);
0x00006ad0 addiu v1, zero, 0xd | v1 = 0xd;
0x00006ad4 addiu v1, zero, 0xa | v1 = 0xa;
| if (v0 == v1) {
0x00006ad8 beq v0, v1, 0x6ae4 | goto label_42;
| }
0x00006adc lbu v0, 0xfb(s4) | v0 = *((s4 + 251));
| if (v0 == v1) {
0x00006ae0 bnel v0, v1, 0x6680 | goto label_7;
| }
| label_42:
0x00006ae4 addiu v0, zero, 1 | v0 = 1;
0x00006ae8 sb v0, 0x108(s0) | *(s0) = v0;
0x00006aec b 0x667c | goto label_1;
| label_40:
0x00006af0 addiu s4, fp, 9 | s4 = fp + 9;
0x00006af4 subu s6, s4, s2 | __asm ("subu s6, s4, s2");
0x00006af8 lw t9, -0x7ce0(gp) | t9 = sym.imp.malloc;
0x00006afc subu s6, s1, s6 | __asm ("subu s6, s1, s6");
0x00006b00 addiu a0, s6, 1 | a0 = s6 + 1;
0x00006b04 jalr t9 | t9 ();
0x00006b08 move s7, v0 | s7 = v0;
0x00006b0c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00006b10 beqz v0, 0x6c4c |
0x00006b14 lw t9, -0x7c80(gp) | t9 = sym.imp.memcpy;
0x00006b18 move a2, s6 | a2 = s6;
0x00006b1c addu s6, s7, s6 | s6 = s7 + s6;
0x00006b20 move a1, s4 | a1 = s4;
0x00006b24 move a0, v0 | a0 = v0;
0x00006b28 jalr t9 | t9 ();
0x00006b2c lw gp, 0x18(sp) | gp = *(var_18h);
0x00006b30 sb zero, (s6) | *(s6) = 0;
0x00006b34 lb a1, (s7) | a1 = *(s7);
0x00006b38 addiu v0, zero, 0x27 | v0 = 0x27;
0x00006b3c addiu v0, zero, 0x22 | v0 = 0x22;
| if (a1 == v0) {
0x00006b40 beq a1, v0, 0x6d50 | goto label_43;
| }
0x00006b44 addiu s4, s7, 1 | s4 = s7 + 1;
| if (a1 != v0) {
0x00006b48 beq a1, v0, 0x6b54 |
0x00006b4c move s4, s7 | s4 = s7;
0x00006b50 addiu a1, zero, 0x3b | a1 = 0x3b;
| }
| label_13:
0x00006b54 lw t9, -0x7bcc(gp) | t9 = sym.imp.strchr;
0x00006b58 move a0, s4 | a0 = s4;
0x00006b5c jalr t9 | t9 ();
0x00006b60 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00006b64 beqz v0, 0x6b6c |
0x00006b68 sb zero, (v0) | *(v0) = 0;
| }
0x00006b6c lw t9, -0x7c0c(gp) | t9 = sym.imp.strrchr;
0x00006b70 addiu a1, zero, 0x2f | a1 = 0x2f;
0x00006b74 move a0, s4 | a0 = s4;
0x00006b78 jalr t9 | t9 ();
0x00006b7c lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00006b80 beqz v0, 0x6b90 |
0x00006b84 lb v1, 1(v0) | v1 = *((v0 + 1));
0x00006b88 addiu s4, v0, 1 | s4 = v0 + 1;
| if (v1 == 0) {
0x00006b8c beqz v1, 0x6db4 | goto label_44;
| }
| }
0x00006b90 lw t9, -0x7c0c(gp) | t9 = sym.imp.strrchr;
0x00006b94 addiu a1, zero, 0x5c | a1 = 0x5c;
0x00006b98 move a0, s4 | a0 = s4;
0x00006b9c jalr t9 | t9 ();
0x00006ba0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00006ba4 beqz v0, 0x6bb4 |
0x00006ba8 lb v1, 1(v0) | v1 = *((v0 + 1));
0x00006bac addiu s4, v0, 1 | s4 = v0 + 1;
| if (v1 == 0) {
0x00006bb0 beqz v1, 0x6db4 | goto label_44;
| }
| }
0x00006bb4 lw t9, -0x7bcc(gp) | t9 = sym.imp.strchr;
0x00006bb8 addiu a1, zero, 0xd | a1 = 0xd;
0x00006bbc move a0, s4 | a0 = s4;
0x00006bc0 jalr t9 | t9 ();
0x00006bc4 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00006bc8 beqz v0, 0x6bd0 |
0x00006bcc sb zero, (v0) | *(v0) = 0;
| }
0x00006bd0 lw t9, -0x7bcc(gp) | t9 = sym.imp.strchr;
0x00006bd4 addiu a1, zero, 0xa | a1 = 0xa;
0x00006bd8 move a0, s4 | a0 = s4;
0x00006bdc jalr t9 | t9 ();
0x00006be0 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00006be4 beqz v0, 0x6bec |
0x00006be8 sb zero, (v0) | *(v0) = 0;
| }
0x00006bec lw t9, -0x7c88(gp) | t9 = sym.imp.strlen;
| if (s7 != s4) {
0x00006bf0 beq s7, s4, 0x6c18 |
0x00006bf4 move a0, s4 | a0 = s4;
0x00006bf8 jalr t9 | t9 ();
0x00006bfc ldc1 f28, 0x18(sp) | __asm ("ldc1 f28, (var_18h)");
0x00006c00 addiu zero, zero, 0x29 | 0 = 0x29;
0x00006c04 move a1, s4 | a1 = s4;
0x00006c08 lw t9, -0x7d20(gp) | t9 = sym.imp.memmove;
0x00006c0c move a0, s7 | a0 = s7;
0x00006c10 jalr t9 | t9 ();
0x00006c14 lw gp, 0x18(sp) | gp = *(var_18h);
| }
0x00006c18 lw v0, 0x88(s0) | v0 = *((s0 + 34));
0x00006c1c lw t9, -0x7f90(gp) | t9 = sym.tool_create_output_file;
| if (v0 != 0) {
0x00006c20 bnez v0, 0x6d9c | goto label_45;
| }
0x00006c24 lui v0, 1 | v0 = 0x10101;
0x00006c28 addiu v0, v0, 0x101 |
0x00006c2c lw a1, 8(s0) | a1 = *((s0 + 2));
0x00006c30 sw s7, 0x80(s0) | *((s0 + 32)) = s7;
0x00006c34 sw v0, 0x84(s0) | *((s0 + 33)) = v0;
0x00006c38 sb zero, 0x100(s0) | *(s0) = 0;
0x00006c3c move a0, s5 | a0 = s5;
0x00006c40 bal 0x7990 | sym_tool_create_output_file ();
0x00006c44 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00006c48 beqz v0, 0x6c70 | goto label_11;
| }
| }
| label_17:
0x00006c4c lw v0, 0x88(s0) | v0 = *((s0 + 34));
0x00006c50 lw s4, 0xf0(s0) | s4 = *((s0 + 60));
| if (v0 == 0) {
0x00006c54 bnel v0, zero, 0x6640 | goto label_3;
| }
0x00006c58 lw t9, -0x7f90(gp) | t9 = sym.tool_create_output_file;
0x00006c5c lw a1, 8(s0) | a1 = *((s0 + 2));
0x00006c60 move a0, s5 | a0 = s5;
0x00006c64 bal 0x7990 | sym_tool_create_output_file ();
0x00006c68 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00006c6c bnez v0, 0x663c | goto label_2;
| }
| label_11:
0x00006c70 addiu s1, zero, -1 | s1 = -1;
0x00006c74 b 0x655c | goto label_0;
| label_22:
0x00006c78 addiu v1, s4, -1 | v1 = s4 + -1;
0x00006c7c addiu a1, zero, 0x20 | a1 = 0x20;
0x00006c80 addiu a2, zero, 9 | a2 = 9;
| do {
0x00006c84 lb v0, (a0) | v0 = *(a0);
| if (v0 != a1) {
0x00006c88 beql v0, a1, 0x6c98 |
0x00006c8c sltu v0, a0, v1 | v0 = (a0 < v1) ? 1 : 0;
0x00006c90 sltu v0, a0, v1 | v0 = (a0 < v1) ? 1 : 0;
| if (v0 != a2) {
0x00006c94 bne v0, a2, 0x6ca0 | goto label_46;
| }
| }
0x00006c98 addiu a0, a0, 1 | a0++;
0x00006c9c bnel v0, zero, 0x6c84 |
| } while (v0 == 0);
| label_46:
0x00006ca0 addiu a1, zero, 0x20 | a1 = 0x20;
| label_10:
0x00006ca4 lb v0, (v1) | v0 = *(v1);
0x00006ca8 addiu v0, v0, -9 | v0 += -9;
| if (v0 == a1) {
0x00006cac beq v0, a1, 0x6d0c | goto label_47;
| }
0x00006cb0 andi v0, v0, 0xff | v0 &= 0xff;
0x00006cb4 sltiu v0, v0, 5 | v0 = (v0 < 5) ? 1 : 0;
0x00006cb8 sltu v0, v1, a0 | v0 = (v1 < a0) ? 1 : 0;
| if (v0 != 0) {
0x00006cbc bnez v0, 0x6d0c | goto label_47;
| }
0x00006cc0 lw t9, -0x7b84(gp) | t9 = sym.imp.curl_easy_getinfo;
| if (v0 != 0) {
0x00006cc4 bnez v0, 0x65f8 | goto label_8;
| }
0x00006cc8 subu v1, v1, a0 | __asm ("subu v1, v1, a0");
0x00006ccc lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x00006cd0 lw a3, 0xc8(s0) | a3 = *((s0 + 50));
0x00006cd4 addiu a2, v1, 1 | a2 = v1 + 1;
0x00006cd8 move a1, s5 | a1 = s5;
0x00006cdc jalr t9 | t9 ();
0x00006ce0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006ce4 lw a1, 0xc8(s0) | a1 = *((s0 + 50));
0x00006ce8 lw t9, -0x7cf8(gp) | t9 = sym.imp.fputc;
0x00006cec addiu a0, zero, 0xa | a0 = 0xa;
0x00006cf0 jalr t9 | t9 ();
0x00006cf4 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006cf8 lw t9, -0x7c44(gp) | t9 = sym.imp.fflush;
0x00006cfc lw a0, 0xc8(s0) | a0 = *((s0 + 50));
0x00006d00 jalr t9 | t9 ();
0x00006d04 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006d08 b 0x65f4 | goto label_9;
| label_47:
0x00006d0c addiu v1, v1, -1 | v1 += -1;
0x00006d10 b 0x6ca4 | goto label_10;
| label_27:
0x00006d14 lw a1, 8(s0) | a1 = *((s0 + 2));
0x00006d18 move a0, s5 | a0 = s5;
0x00006d1c bal 0x7990 | sym_tool_create_output_file ();
0x00006d20 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 == 0) {
0x00006d24 beqz v0, 0x6c70 | goto label_11;
| }
0x00006d28 lw s4, 0x88(s0) | s4 = *((s0 + 34));
0x00006d2c b 0x66c8 | goto label_12;
| label_31:
0x00006d30 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x00006d34 lw a3, 0x88(s0) | a3 = *((s0 + 34));
| do {
0x00006d38 addiu a2, zero, 1 | a2 = 1;
0x00006d3c move a1, s2 | a1 = s2;
0x00006d40 move a0, s4 | a0 = s4;
0x00006d44 jalr t9 | t9 ();
0x00006d48 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006d4c b 0x655c | goto label_0;
| label_43:
0x00006d50 addiu s4, s7, 1 | s4 = s7 + 1;
0x00006d54 b 0x6b54 | goto label_13;
| label_32:
0x00006d58 lw t9, -0x7cd0(gp) | t9 = sym.imp.fwrite;
0x00006d5c move a3, fp | a3 = fp;
0x00006d60 b 0x6d38 |
| } while (1);
| label_34:
0x00006d64 addiu a0, zero, 0xa | a0 = 0xa;
| label_35:
0x00006d68 addiu a2, zero, 0xd | a2 = 0xd;
0x00006d6c b 0x6d78 | goto label_48;
| label_15:
0x00006d70 move s0, v0 | s0 = v0;
| if (v0 == 0) {
0x00006d74 beqz v0, 0x67e0 | goto label_14;
| }
| label_48:
0x00006d78 addiu v0, s0, -1 | v0 = s0 + -1;
0x00006d7c addu v1, s7, v0 | v1 = s7 + v0;
0x00006d80 lb v1, (v1) | v1 = *(v1);
| if (v1 == a0) {
0x00006d84 beq v1, a0, 0x6d70 | goto label_15;
| }
0x00006d88 nop |
0x00006d8c lw t9, -0x7cb4(gp) | t9 = sym.imp.curl_url;
| if (v1 == a2) {
0x00006d90 beq v1, a2, 0x6d70 | goto label_15;
| }
0x00006d94 b 0x67e4 | goto label_16;
0x00006d98 nop |
| label_45:
0x00006d9c lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00006da0 move a0, s7 | a0 = s7;
0x00006da4 jalr t9 | t9 ();
0x00006da8 addiu s1, zero, -1 | s1 = -1;
0x00006dac lw gp, 0x18(sp) | gp = *(var_18h);
0x00006db0 b 0x655c | goto label_0;
| label_44:
0x00006db4 lw t9, -0x7c38(gp) | t9 = sym.imp.free;
0x00006db8 move a0, s7 | a0 = s7;
0x00006dbc jalr t9 | t9 ();
0x00006dc0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006dc4 b 0x6c4c | goto label_17;
| label_33:
0x00006dc8 move s7, s4 | s7 = s4;
0x00006dcc move s0, zero | s0 = 0;
0x00006dd0 b 0x67e0 | goto label_14;
| label_21:
0x00006dd4 lw t9, -0x7ce8(gp) | t9 = sym.imp.__stack_chk_fail;
0x00006dd8 jalr t9 | t9 ();
0x00006ddc nop |
| label_37:
0x00006de0 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00006de4 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x00006de8 lw a2, 0x38(sp) | a2 = *(var_38h);
0x00006dec sw s4, 0x10(sp) | *(var_10h) = s4;
0x00006df0 move a3, s2 | a3 = s2;
| /* str.e_8___se_.se_8__e */
0x00006df4 addiu a1, a1, -0x370 | a1 += -0x370;
0x00006df8 move a0, fp | a0 = fp;
0x00006dfc jalr t9 | t9 ();
0x00006e00 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006e04 b 0x6960 | goto label_18;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x6e10 */
| #include <stdint.h>
|
; (fcn) sym.tool_progress_cb () | void tool_progress_cb () {
0x00006e10 lui gp, 4 |
0x00006e14 addiu gp, gp, -0x4dd0 |
0x00006e18 addu gp, gp, t9 | gp += t9;
0x00006e1c addiu sp, sp, -0x190 |
0x00006e20 lw t9, -0x7fac(gp) | t9 = sym.tvnow;
0x00006e24 sw s5, 0x17c(sp) | *(var_17ch) = s5;
0x00006e28 lw s5, -0x7cb0(gp) | s5 = *((gp - 7980));
0x00006e2c lw v1, 0x1a4(sp) | v1 = *(arg_1a4h);
0x00006e30 sw s0, 0x168(sp) | *(var_168h) = s0;
0x00006e34 lw v0, (s5) | v0 = *(s5);
0x00006e38 move s0, a0 | s0 = a0;
0x00006e3c sw gp, 0x18(sp) | *(var_18h) = gp;
0x00006e40 sw fp, 0x188(sp) | *(var_188h) = fp;
0x00006e44 sw s7, 0x184(sp) | *(var_184h) = s7;
0x00006e48 sw s6, 0x180(sp) | *(var_180h) = s6;
0x00006e4c sw s4, 0x178(sp) | *(var_178h) = s4;
0x00006e50 sw s3, 0x174(sp) | *(var_174h) = s3;
0x00006e54 sw s2, 0x170(sp) | *(var_170h) = s2;
0x00006e58 sw s1, 0x16c(sp) | *(var_16ch) = s1;
0x00006e5c addiu a0, sp, 0x30 | a0 = sp + 0x30;
0x00006e60 sw a3, 0x20(sp) | *(var_20h) = a3;
0x00006e64 sw ra, 0x18c(sp) | *(var_18ch) = ra;
0x00006e68 sw v1, 0x2c(sp) | *(var_2ch) = v1;
0x00006e6c sw v0, 0x164(sp) | *(var_164h) = v0;
0x00006e70 move s1, a2 | s1 = a2;
0x00006e74 lw fp, 0x1a0(sp) | fp = *(arg_1a0h);
0x00006e78 lw s3, 0x1a8(sp) | s3 = *(arg_1a8h);
0x00006e7c lw s6, 0x1ac(sp) | s6 = *(arg_1ach);
0x00006e80 lw s2, 0x1b0(sp) | s2 = *(arg_1b0h);
0x00006e84 lw s4, 0x1b4(sp) | s4 = *(arg_1b4h);
0x00006e88 bal 0x1add0 | sym_tvnow ();
0x00006e8c lw t2, 0x6c(s0) | t2 = *((s0 + 27));
0x00006e90 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006e94 lw s7, 8(s0) | s7 = *((s0 + 2));
0x00006e98 addiu a0, s0, 0x48 | a0 = s0 + 0x48;
0x00006e9c lw t1, 0x68(s0) | t1 = *((s0 + 26));
0x00006ea0 lw a3, 0x20(sp) | a3 = *(var_20h);
| if (t2 < 0) {
0x00006ea4 bltz t2, 0x71a8 | goto label_21;
| }
0x00006ea8 addu s3, s1, s3 | s3 = s1 + s3;
0x00006eac lui v0, 0x7fff | v0 = 0x7fff0000;
0x00006eb0 sltu s1, s3, s1 | s1 = (s3 < s1) ? 1 : 0;
0x00006eb4 addu a3, a3, s6 | a3 += s6;
0x00006eb8 ori v0, v0, 0xffff | v0 |= 0xffff;
0x00006ebc subu v0, v0, t2 | __asm ("subu v0, v0, t2");
0x00006ec0 addu s1, s1, a3 | s1 += a3;
0x00006ec4 slt v1, v0, s1 | v1 = (v0 < s1) ? 1 : 0;
0x00006ec8 nor t3, zero, t1 | __asm ("nor t3, zero, t1");
| if (v1 == 0) {
0x00006ecc beqz v1, 0x7160 | goto label_22;
| }
0x00006ed0 lw a1, 0x2c(sp) | a1 = *(var_2ch);
| label_10:
0x00006ed4 addu s2, fp, s2 | s2 = fp + s2;
0x00006ed8 sltu v1, s2, fp | v1 = (s2 < fp) ? 1 : 0;
0x00006edc addu s4, a1, s4 | s4 = a1 + s4;
0x00006ee0 addu s4, v1, s4 | s4 = v1 + s4;
0x00006ee4 lui s1, 0x7fff | s1 = 0x7fff0000;
0x00006ee8 slt v1, v0, s4 | v1 = (v0 < s4) ? 1 : 0;
0x00006eec addiu s3, zero, -1 | s3 = -1;
0x00006ef0 ori s1, s1, 0xffff | s1 |= 0xffff;
0x00006ef4 lw t0, 0x48(s0) | t0 = *((s0 + 18));
| if (v1 != 0) {
0x00006ef8 bnez v1, 0x7198 | goto label_23;
| }
| if (s4 == v0) {
| do {
0x00006efc beql s4, v0, 0x7254 | goto label_24;
| }
0x00006f00 sltu t3, t3, s2 | t3 = (t3 < s2) ? 1 : 0;
0x00006f04 addu fp, t1, s2 | fp = t1 + s2;
| label_9:
0x00006f08 sltu t1, fp, t1 | t1 = (fp < t1) ? 1 : 0;
0x00006f0c addu s4, t2, s4 | s4 = t2 + s4;
0x00006f10 addu s4, t1, s4 | s4 = t1 + s4;
| if (t0 != 0) {
| label_0:
0x00006f14 beql t0, zero, 0x6f74 |
0x00006f18 addiu t0, t0, 1 | t0++;
0x00006f1c or v0, s3, s1 | v0 = s3 | s1;
0x00006f20 lw t9, -0x7f8c(gp) | t9 = sym.tvdiff;
| if (v0 == 0) {
0x00006f24 beqz v0, 0x7290 | goto label_25;
| }
| label_1:
0x00006f28 lw v0, 0x50(s0) | v0 = *((s0 + 20));
| if (v0 == fp) {
0x00006f2c beql v0, fp, 0x748c | goto label_26;
| }
0x00006f30 lw v0, 0x54(s0) | v0 = *((s0 + 21));
0x00006f34 lw t9, -0x7f8c(gp) | t9 = sym.tvdiff;
| label_15:
0x00006f38 lw a2, 0x10(a0) | a2 = *((a0 + 4));
0x00006f3c lw a3, 0x14(a0) | a3 = *((a0 + 5));
0x00006f40 lw a1, 0x34(sp) | a1 = *(var_34h);
0x00006f44 lw a0, 0x30(sp) | a0 = *(var_30h);
0x00006f48 bal 0x1aea0 | sym_tvdiff ();
0x00006f4c slti v0, v0, 0x64 | v0 = (v0 < 0x64) ? 1 : 0;
0x00006f50 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x00006f54 beqz v0, 0x6f6c |
0x00006f58 slt v0, s4, s1 | v0 = (s4 < s1) ? 1 : 0;
| if (v0 != 0) {
0x00006f5c bnez v0, 0x7120 | goto label_4;
| }
0x00006f60 nop |
0x00006f64 sltu v0, fp, s3 | v0 = (fp < s3) ? 1 : 0;
| if (s1 == s4) {
0x00006f68 beq s1, s4, 0x74a8 | goto label_27;
| }
| }
0x00006f6c lw t0, 0x48(s0) | t0 = *((s0 + 18));
| label_17:
0x00006f70 addiu t0, t0, 1 | t0++;
| }
0x00006f74 sw t0, 0x48(s0) | *((s0 + 18)) = t0;
| if (s1 <= 0) {
0x00006f78 blez s1, 0x7204 | goto label_28;
| }
| label_12:
0x00006f7c lw v0, 0x50(s0) | v0 = *((s0 + 20));
| if (v0 == fp) {
| label_3:
0x00006f80 beql v0, fp, 0x747c | goto label_29;
| }
0x00006f84 lw v0, 0x54(s0) | v0 = *((s0 + 21));
0x00006f88 lw t9, -0x7f88(gp) | t9 = *(gp);
| label_14:
0x00006f8c move a0, fp | a0 = fp;
0x00006f90 move a1, s4 | a1 = s4;
0x00006f94 bal 0x1ef70 | fcn_0001ef70 ();
0x00006f98 slt a0, s1, s4 | a0 = (s1 < s4) ? 1 : 0;
0x00006f9c lw gp, 0x18(sp) | gp = *(var_18h);
0x00006fa0 move a1, s1 | a1 = s1;
0x00006fa4 move t0, v0 | t0 = v0;
0x00006fa8 move t1, v1 | t1 = v1;
| if (a0 == 0) {
0x00006fac beqz a0, 0x7238 | goto label_30;
| }
0x00006fb0 move s3, fp | s3 = fp;
| label_7:
0x00006fb4 move a1, s4 | a1 = s4;
0x00006fb8 lw t9, -0x7f88(gp) | t9 = *(gp);
| label_5:
0x00006fbc move a0, s3 | a0 = s3;
| label_6:
0x00006fc0 sw t0, 0x20(sp) | *(var_20h) = t0;
0x00006fc4 sw t1, 0x24(sp) | *(var_24h_2) = t1;
0x00006fc8 bal 0x1ef70 | fcn_0001ef70 ();
0x00006fcc lw gp, 0x18(sp) | gp = *(var_18h);
0x00006fd0 lw t1, 0x24(sp) | t1 = *(var_24h_2);
0x00006fd4 lw t0, 0x20(sp) | t0 = *(var_20h);
0x00006fd8 lw t9, -0x7f84(gp) | t9 = *(gp);
0x00006fdc move a1, t1 | a1 = t1;
0x00006fe0 move a0, t0 | a0 = t0;
0x00006fe4 move a2, v0 | a2 = v0;
0x00006fe8 move a3, v1 | a3 = v1;
0x00006fec bal 0x1dd30 | fcn_0001dd30 ();
0x00006ff0 lw gp, 0x18(sp) | gp = *(var_18h);
0x00006ff4 lw s6, 0x60(s0) | s6 = *((s0 + 24));
0x00006ff8 move s2, v0 | s2 = v0;
0x00006ffc lw t9, -0x7f80(gp) | t9 = sym.config_init;
0x00007000 addiu s6, s6, -7 | s6 += -7;
0x00007004 move a0, s6 | a0 = s6;
0x00007008 move s3, v1 | s3 = v1;
0x0000700c bal 0x1edb0 | fcn_0001edb0 ();
0x00007010 lw gp, 0x18(sp) | gp = *(var_18h);
0x00007014 move a2, s2 | a2 = s2;
0x00007018 move a3, s3 | a3 = s3;
0x0000701c lw t9, -0x7f7c(gp) | t9 = *(gp);
0x00007020 move a0, v0 | a0 = v0;
0x00007024 move a1, v1 | a1 = v1;
0x00007028 bal 0x1e790 | fcn_0001e790 ();
0x0000702c lw gp, 0x18(sp) | gp = *(var_18h);
0x00007030 move a1, v1 | a1 = v1;
0x00007034 lw t9, -0x7f78(gp) | t9 = *(gp);
0x00007038 move a0, v0 | a0 = v0;
0x0000703c bal 0x1ed30 | fcn_0001ed30 ();
0x00007040 lw gp, 0x18(sp) | gp = *(var_18h);
0x00007044 slti s1, v0, 0x101 | s1 = (v0 < 0x101) ? 1 : 0;
0x00007048 addiu v1, zero, 0x100 | v1 = aav.0x00000100;
0x0000704c addiu t0, sp, 0x60 | t0 = sp + 0x60;
| if (s1 == 0) {
0x00007050 movn v1, v0, s1 | v1 = v0;
| }
0x00007054 lw t9, -0x7cf4(gp) | t9 = sym.imp.__memset_chk;
0x00007058 move a0, t0 | a0 = t0;
0x0000705c move a2, v1 | a2 = v1;
0x00007060 sw t0, 0x20(sp) | *(var_20h) = t0;
0x00007064 addiu a3, zero, 0x101 | a3 = 0x101;
0x00007068 addiu a1, zero, 0x23 | a1 = 0x23;
0x0000706c move s1, v1 | s1 = v1;
0x00007070 jalr t9 | t9 ();
0x00007074 lw gp, 0x18(sp) | gp = *(var_18h);
0x00007078 addiu v0, sp, 0x168 | v0 = sp + 0x168;
0x0000707c addu s1, v0, s1 | s1 = v0 + s1;
0x00007080 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x00007084 move a3, s6 | a3 = s6;
0x00007088 lw t9, -0x7cec(gp) | t9 = sym.imp.curl_msnprintf
0x0000708c addiu s6, sp, 0x38 | s6 = sp + 0x38;
| /* str._r____ds___5.1f____ */
0x00007090 addiu a2, a2, -0x348 | a2 += -0x348;
0x00007094 addiu a1, zero, 0x28 | a1 = 0x28;
0x00007098 move a0, s6 | a0 = s6;
0x0000709c sb zero, -0x108(s1) | *(s1) = 0;
0x000070a0 jalr t9 | t9 ();
0x000070a4 lw gp, 0x18(sp) | gp = *(var_18h);
0x000070a8 move a0, s2 | a0 = s2;
0x000070ac move a1, s3 | a1 = s3;
0x000070b0 lw v0, -0x7fd4(gp) | v0 = *(gp);
0x000070b4 lw t9, -0x7f7c(gp) | t9 = *(gp);
0x000070b8 lw s1, 0x64(s0) | s1 = *((s0 + 25));
0x000070bc lw a2, (v0) | a2 = *(v0);
0x000070c0 lw a3, 4(v0) | a3 = *((v0 + 1));
0x000070c4 bal 0x1e790 | fcn_0001e790 ();
0x000070c8 lw gp, 0x18(sp) | gp = *(var_18h);
0x000070cc lw t0, 0x20(sp) | t0 = *(var_20h);
0x000070d0 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x000070d4 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x000070d8 sw v1, 0x14(sp) | *(var_14h) = v1;
0x000070dc move a2, t0 | a2 = t0;
0x000070e0 move a1, s6 | a1 = s6;
0x000070e4 move a0, s1 | a0 = s1;
0x000070e8 jalr t9 | t9 ();
0x000070ec lw gp, 0x18(sp) | gp = *(var_18h);
| label_13:
0x000070f0 lw t9, -0x7c44(gp) | t9 = sym.imp.fflush;
| label_2:
0x000070f4 lw a0, 0x64(s0) | a0 = *((s0 + 25));
0x000070f8 jalr t9 | t9 ();
0x000070fc lw v1, 0x30(sp) | v1 = *(var_30h);
0x00007100 lw gp, 0x18(sp) | gp = *(var_18h);
0x00007104 lbu v0, 0x1aa(s7) | v0 = *((s7 + 426));
0x00007108 sw v1, 0x58(s0) | *((s0 + 22)) = v1;
0x0000710c lw v1, 0x34(sp) | v1 = *(var_34h);
0x00007110 sw fp, 0x50(s0) | *((s0 + 20)) = fp;
0x00007114 sw s4, 0x54(s0) | *((s0 + 21)) = s4;
0x00007118 sw v1, 0x5c(s0) | *((s0 + 23)) = v1;
| if (v0 != 0) {
0x0000711c bnez v0, 0x721c | goto label_31;
| }
| label_4:
0x00007120 lw a0, 0x164(sp) | a0 = *(var_164h);
0x00007124 lw v1, (s5) | v1 = *(s5);
0x00007128 move v0, zero | v0 = 0;
| if (a0 != v1) {
0x0000712c bne a0, v1, 0x74dc | goto label_32;
| }
0x00007130 lw ra, 0x18c(sp) | ra = *(var_18ch);
0x00007134 lw fp, 0x188(sp) | fp = *(var_188h);
0x00007138 lw s7, 0x184(sp) | s7 = *(var_184h);
0x0000713c lw s6, 0x180(sp) | s6 = *(var_180h);
0x00007140 lw s5, 0x17c(sp) | s5 = *(var_17ch);
0x00007144 lw s4, 0x178(sp) | s4 = *(var_178h);
0x00007148 lw s3, 0x174(sp) | s3 = *(var_174h);
0x0000714c lw s2, 0x170(sp) | s2 = *(var_170h);
0x00007150 lw s1, 0x16c(sp) | s1 = *(var_16ch);
0x00007154 lw s0, 0x168(sp) | s0 = *(var_168h);
0x00007158 addiu sp, sp, 0x190 |
0x0000715c jr ra | return v0;
| label_22:
0x00007160 sltu v1, t3, s3 | v1 = (t3 < s3) ? 1 : 0;
| if (s1 == v0) {
0x00007164 beq s1, v0, 0x7264 | goto label_33;
| }
0x00007168 addu s3, t1, s3 | s3 = t1 + s3;
| label_11:
0x0000716c sltu a1, s3, t1 | a1 = (s3 < t1) ? 1 : 0;
0x00007170 addu s1, t2, s1 | s1 = t2 + s1;
0x00007174 addu s1, a1, s1 | s1 = a1 + s1;
0x00007178 lw a1, 0x2c(sp) | a1 = *(var_2ch);
0x0000717c addu s2, fp, s2 | s2 = fp + s2;
0x00007180 sltu v1, s2, fp | v1 = (s2 < fp) ? 1 : 0;
0x00007184 addu s4, a1, s4 | s4 = a1 + s4;
0x00007188 addu s4, v1, s4 | s4 = v1 + s4;
0x0000718c slt v1, v0, s4 | v1 = (v0 < s4) ? 1 : 0;
0x00007190 lw t0, 0x48(s0) | t0 = *((s0 + 18));
0x00007194 beqz v1, 0x6efc |
| } while (v1 == 0);
| label_23:
0x00007198 lui s4, 0x7fff | s4 = 0x7fff0000;
| label_8:
0x0000719c addiu fp, zero, -1 | fp = -1;
0x000071a0 ori s4, s4, 0xffff | s4 |= 0xffff;
0x000071a4 b 0x6f14 | goto label_0;
| label_21:
0x000071a8 or v0, s1, s3 | v0 = s1 | s3;
0x000071ac or v1, a3, s6 | v1 = a3 | s6;
0x000071b0 or v0, v0, v1 | v0 |= v1;
0x000071b4 lw t0, 0x48(s0) | t0 = *((s0 + 18));
| if (v0 == 0) {
0x000071b8 bnez v0, 0x71d8 |
0x000071bc lui s1, 0x7fff | s1 = 0x7fff0000;
| if (t0 == 0) {
0x000071c0 beqz t0, 0x7274 | goto label_34;
| }
0x000071c4 ori s1, s1, 0xffff | s1 |= 0xffff;
0x000071c8 addiu s3, zero, -1 | s3 = -1;
0x000071cc addiu fp, zero, -1 | fp = -1;
0x000071d0 move s4, s1 | s4 = s1;
0x000071d4 b 0x6f28 | goto label_1;
| }
0x000071d8 lw v0, 0x2c(sp) | v0 = *(var_2ch);
0x000071dc addu s2, fp, s2 | s2 = fp + s2;
0x000071e0 addu s3, s1, s3 | s3 = s1 + s3;
0x000071e4 sltu v1, s2, fp | v1 = (s2 < fp) ? 1 : 0;
0x000071e8 sltu s1, s3, s1 | s1 = (s3 < s1) ? 1 : 0;
0x000071ec addu a3, a3, s6 | a3 += s6;
0x000071f0 addu s4, v0, s4 | s4 = v0 + s4;
0x000071f4 addu s1, s1, a3 | s1 += a3;
0x000071f8 move fp, s2 | fp = s2;
0x000071fc addu s4, v1, s4 | s4 = v1 + s4;
0x00007200 b 0x6f14 | goto label_0;
| label_28:
0x00007204 lw t9, -0x7c44(gp) | t9 = sym.imp.fflush;
| if (s1 != 0) {
0x00007208 bnez s1, 0x70f4 | goto label_2;
| }
0x0000720c lw v0, 0x50(s0) | v0 = *((s0 + 20));
| if (s3 == 0) {
0x00007210 bnel s3, zero, 0x6f80 | goto label_3;
| }
0x00007214 b 0x70f4 | goto label_2;
0x00007218 nop |
| label_31:
0x0000721c lw t9, -0x7c5c(gp) | t9 = sym.imp.curl_easy_pause;
0x00007220 lw a0, 0x10(s0) | a0 = *((s0 + 4));
0x00007224 move a1, zero | a1 = 0;
0x00007228 sb zero, 0x1aa(s7) | *((s7 + 426)) = 0;
0x0000722c jalr t9 | t9 ();
0x00007230 lw gp, 0x18(sp) | gp = *(var_18h);
0x00007234 b 0x7120 | goto label_4;
| label_30:
0x00007238 lw t9, -0x7f88(gp) | t9 = *(gp);
| if (s4 != s1) {
0x0000723c bne s4, s1, 0x6fbc | goto label_5;
| }
0x00007240 sltu v0, s3, fp | v0 = (s3 < fp) ? 1 : 0;
| if (v0 == 0) {
0x00007244 beql v0, zero, 0x6fc0 | goto label_6;
| }
0x00007248 move a0, s3 | a0 = s3;
0x0000724c move s3, fp | s3 = fp;
0x00007250 b 0x6fb4 | goto label_7;
| label_24:
0x00007254 lui s4, 0x7fff | s4 = 0x7fff0000;
| if (t3 == 0) {
0x00007258 bnel t3, zero, 0x719c | goto label_8;
| }
0x0000725c addu fp, t1, s2 | fp = t1 + s2;
0x00007260 b 0x6f08 | goto label_9;
| label_33:
0x00007264 lw a1, 0x2c(sp) | a1 = *(var_2ch);
| if (v1 != 0) {
0x00007268 bnez v1, 0x6ed4 | goto label_10;
| }
0x0000726c addu s3, t1, s3 | s3 = t1 + s3;
0x00007270 b 0x716c | goto label_11;
| label_34:
0x00007274 ori s1, s1, 0xffff | s1 |= 0xffff;
0x00007278 addiu v0, zero, 1 | v0 = 1;
0x0000727c sw v0, 0x48(s0) | *((s0 + 18)) = v0;
0x00007280 addiu s3, zero, -1 | s3 = -1;
0x00007284 addiu fp, zero, -1 | fp = -1;
0x00007288 move s4, s1 | s4 = s1;
0x0000728c b 0x6f7c | goto label_12;
| label_25:
0x00007290 lw a2, 0x10(a0) | a2 = *((a0 + 4));
0x00007294 lw a3, 0x14(a0) | a3 = *((a0 + 5));
0x00007298 lw a1, 0x34(sp) | a1 = *(var_34h);
0x0000729c lw a0, 0x30(sp) | a0 = *(var_30h);
0x000072a0 bal 0x1aea0 | sym_tvdiff ();
0x000072a4 slti v0, v0, 0x64 | v0 = (v0 < 0x64) ? 1 : 0;
0x000072a8 lw gp, 0x18(sp) | gp = *(var_18h);
| if (v0 != 0) {
0x000072ac bnez v0, 0x7120 | goto label_4;
| }
0x000072b0 lw v0, -0x7fd4(gp) | v0 = *(gp);
0x000072b4 lw s6, 0x60(s0) | s6 = *((s0 + 24));
0x000072b8 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x000072bc lw t9, -0x7cec(gp) | t9 = sym.imp.curl_msnprintf
0x000072c0 addiu s3, sp, 0x60 | s3 = sp + 0x60;
0x000072c4 addiu v0, v0, 0x6600 | v0 += 0x6600;
0x000072c8 sw v0, 0x10(sp) | *(var_10h_2) = v0;
0x000072cc addiu a3, s6, -1 | a3 = s6 + -1;
| /* str._s_r */
0x000072d0 addiu a2, a2, -0x358 | a2 += -0x358;
0x000072d4 addiu a1, zero, 0x100 | a1 = aav.0x00000100;
0x000072d8 move a0, s3 | a0 = s3;
0x000072dc lw s2, 0x50(s0) | s2 = *((s0 + 20));
0x000072e0 lw s1, 0x54(s0) | s1 = *((s0 + 21));
0x000072e4 jalr t9 | t9 ();
0x000072e8 lui v1, 0xf | v1 = 0xf0000;
0x000072ec addiu v0, v1, 0x4240 | v0 = v1 + 0x4240;
0x000072f0 addiu v1, s6, -2 | v1 = s6 + -2;
0x000072f4 div zero, v0, v1 | __asm ("div zero, v0, v1");
0x000072f8 teq v1, zero, 7 | __asm ("teq v1, zero, 7");
0x000072fc lw gp, 0x18(sp) | gp = *(var_18h);
0x00007300 lw v0, 0x70(s0) | v0 = *((s0 + 28));
0x00007304 lui t2, 0x51eb | t2 = 0x51eb851f;
0x00007308 ori t2, t2, 0x851f |
0x0000730c lw a1, -0x7fd4(gp) | a1 = *(gp);
0x00007310 lw a0, 0x74(s0) | a0 = *((s0 + 29));
| /* str._O_ */
0x00007314 addiu t5, a1, -0x350 | t5 = a1 + -0x350;
0x00007318 lw t1, -0x350(a1) | t1 = *((a1 - 212));
0x0000731c addu a0, s3, a0 | a0 = s3 + a0;
0x00007320 addiu t0, v0, 5 | t0 = v0 + 5;
0x00007324 addiu a3, v0, 0xa | a3 = v0 + 0xa;
0x00007328 lbu t5, 4(t5) | t5 = *((t5 + 4));
0x0000732c swl t1, 3(a0) | __asm ("swl t1, 3(a0)");
0x00007330 addiu t3, v0, 0xf | t3 = v0 + 0xf;
0x00007334 swr t1, (a0) | __asm ("swr t1, (a0)");
0x00007338 addiu t4, zero, 0xc8 | t4 = 0xc8;
0x0000733c sb t5, 4(a0) | *((a0 + 4)) = t5;
0x00007340 lw a2, -0x7fd4(gp) | a2 = *(gp);
0x00007344 addiu t1, zero, 0x23 | t1 = 0x23;
0x00007348 addiu a2, a2, -0x320 | a2 += -0x320;
0x0000734c lw a1, 0x64(s0) | a1 = *((s0 + 25));
0x00007350 lw t9, -0x7b68(gp) | t9 = sym.imp.fputs;
0x00007354 move a0, s3 | a0 = s3;
0x00007358 mflo v1 | __asm ("mflo v1");
0x0000735c multu v0, t2 | __asm ("multu v0, t2");
0x00007360 mfhi t7 | __asm ("mfhi t7");
0x00007364 multu t0, t2 | __asm ("multu t0, t2");
0x00007368 mfhi t6 | __asm ("mfhi t6");
0x0000736c multu a3, t2 | __asm ("multu a3, t2");
0x00007370 mfhi t5 | __asm ("mfhi t5");
0x00007374 srl t7, t7, 6 | t7 >>= 6;
0x00007378 multu t3, t2 | __asm ("multu t3, t2");
0x0000737c mfhi t2 | __asm ("mfhi t2");
0x00007380 mul t8, t7, t4 | __asm ("mul t8, t7, t4");
0x00007384 srl t6, t6, 6 | t6 >>= 6;
0x00007388 srl t5, t5, 6 | t5 >>= 6;
0x0000738c mul t7, t6, t4 | __asm ("mul t7, t6, t4");
0x00007390 srl t2, t2, 6 | t2 >>= 6;
0x00007394 subu v0, v0, t8 | __asm ("subu v0, v0, t8");
0x00007398 sll v0, v0, 2 | v0 <<= 2;
0x0000739c mul t6, t5, t4 | __asm ("mul t6, t5, t4");
0x000073a0 lwx v0, v0(a2) | __asm ("lwx v0, v0(a2)");
0x000073a4 mul t5, t2, t4 | __asm ("mul t5, t2, t4");
0x000073a8 subu t0, t0, t7 | __asm ("subu t0, t0, t7");
0x000073ac sll t0, t0, 2 | t0 <<= 2;
0x000073b0 subu a3, a3, t6 | __asm ("subu a3, a3, t6");
0x000073b4 lwx t0, t0(a2) | __asm ("lwx t0, t0(a2)");
0x000073b8 divu zero, v0, v1 | __asm ("divu zero, v0, v1");
0x000073bc teq v1, zero, 7 | __asm ("teq v1, zero, 7");
0x000073c0 sll a3, a3, 2 | a3 <<= 2;
0x000073c4 subu t2, t3, t5 | __asm ("subu t2, t3, t5");
0x000073c8 lwx a3, a3(a2) | __asm ("lwx a3, a3(a2)");
0x000073cc sll t2, t2, 2 | t2 <<= 2;
0x000073d0 lwx a2, t2(a2) | __asm ("lwx a2, t2(a2)");
0x000073d4 addiu t2, sp, 0x168 | t2 = sp + 0x168;
0x000073d8 mflo v0 | __asm ("mflo v0");
0x000073dc divu zero, t0, v1 | __asm ("divu zero, t0, v1");
0x000073e0 teq v1, zero, 7 | __asm ("teq v1, zero, 7");
0x000073e4 addu v0, t2, v0 | v0 = t2 + v0;
0x000073e8 sb t1, -0x108(v0) | *(v0) = t1;
0x000073ec mflo t0 | __asm ("mflo t0");
0x000073f0 divu zero, a3, v1 | __asm ("divu zero, a3, v1");
0x000073f4 teq v1, zero, 7 | __asm ("teq v1, zero, 7");
0x000073f8 addu t0, t2, t0 | t0 = t2 + t0;
0x000073fc sb t1, -0x108(t0) | *(t0) = t1;
0x00007400 mflo a3 | __asm ("mflo a3");
0x00007404 divu zero, a2, v1 | __asm ("divu zero, a2, v1");
0x00007408 teq v1, zero, 7 | __asm ("teq v1, zero, 7");
0x0000740c addu a3, t2, a3 | a3 = t2 + a3;
0x00007410 sb t1, -0x108(a3) | *(a3) = t1;
0x00007414 mflo v1 | __asm ("mflo v1");
0x00007418 addu a2, t2, v1 | a2 = t2 + v1;
0x0000741c sb t1, -0x108(a2) | *(a2) = t1;
0x00007420 jalr t9 | t9 ();
0x00007424 lw v0, 0x70(s0) | v0 = *((s0 + 28));
0x00007428 addiu v1, v0, 2 | v1 = v0 + 2;
0x0000742c sltiu a0, v1, 0xc8 | a0 = (v1 < 0xc8) ? 1 : 0;
0x00007430 lw gp, 0x18(sp) | gp = *(var_18h);
| if (a0 == 0) {
0x00007434 beqz a0, 0x749c | goto label_35;
| }
0x00007438 sw v1, 0x70(s0) | *((s0 + 28)) = v1;
| label_16:
0x0000743c lw v0, 0x74(s0) | v0 = *((s0 + 29));
| if (s2 != fp) {
0x00007440 bne s2, fp, 0x74b8 | goto label_36;
| }
0x00007444 lw v1, 0x78(s0) | v1 = *((s0 + 30));
| if (s1 == s4) {
0x00007448 bnel s1, s4, 0x74bc | goto label_37;
| }
| label_18:
0x0000744c lw v1, 0x60(s0) | v1 = *((s0 + 24));
0x00007450 addiu v1, v1, -6 | v1 += -6;
0x00007454 slt a0, v0, v1 | a0 = (v0 < v1) ? 1 : 0;
0x00007458 sw v0, 0x74(s0) | *((s0 + 29)) = v0;
| if (a0 != 0) {
0x0000745c bnez a0, 0x74c4 | goto label_38;
| }
0x00007460 addiu v0, zero, -1 | v0 = -1;
0x00007464 sw v0, 0x78(s0) | *((s0 + 30)) = v0;
0x00007468 sw v1, 0x74(s0) | *((s0 + 29)) = v1;
| label_20:
0x0000746c lw v0, 0x48(s0) | v0 = *((s0 + 18));
| label_19:
0x00007470 addiu v0, v0, 1 | v0++;
0x00007474 sw v0, 0x48(s0) | *((s0 + 18)) = v0;
0x00007478 b 0x70f0 | goto label_13;
| label_29:
0x0000747c lw t9, -0x7f88(gp) | t9 = *(gp);
| if (v0 == s4) {
0x00007480 bnel v0, s4, 0x6f8c | goto label_14;
| }
0x00007484 lw t9, -0x7c44(gp) | t9 = sym.imp.fflush;
0x00007488 b 0x70f4 | goto label_2;
| label_26:
0x0000748c lw t9, -0x7f8c(gp) | t9 = sym.tvdiff;
| if (v0 != s4) {
0x00007490 bne v0, s4, 0x6f38 | goto label_15;
| }
0x00007494 b 0x7120 | goto label_4;
0x00007498 nop |
| label_35:
0x0000749c addiu v0, v0, -0xc6 | v0 += -0xc6;
0x000074a0 sw v0, 0x70(s0) | *((s0 + 28)) = v0;
0x000074a4 b 0x743c | goto label_16;
| if (v0 != 0) {
| label_27:
0x000074a8 bnez v0, 0x7120 | goto label_4;
| }
0x000074ac nop |
0x000074b0 lw t0, 0x48(s0) | t0 = *((s0 + 18));
0x000074b4 b 0x6f70 | goto label_17;
| label_36:
0x000074b8 lw v1, 0x78(s0) | v1 = *((s0 + 30));
| label_37:
0x000074bc addu v0, v0, v1 | v0 += v1;
0x000074c0 b 0x744c | goto label_18;
| if (v0 >= 0) {
| label_38:
0x000074c4 bgezl v0, 0x7470 | goto label_19;
| }
0x000074c8 lw v0, 0x48(s0) | v0 = *((s0 + 18));
0x000074cc addiu v0, zero, 1 | v0 = 1;
0x000074d0 sw v0, 0x78(s0) | *((s0 + 30)) = v0;
0x000074d4 sw zero, 0x74(s0) | *((s0 + 29)) = 0;
0x000074d8 b 0x746c | goto label_20;
| label_32:
0x000074dc lw t9, -0x7ce8(gp) | t9 = sym.imp.__stack_chk_fail;
0x000074e0 jalr t9 | t9 ();
0x000074e4 nop |
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/curl @ 0x10644 */
| #include <stdint.h>
|
; (fcn) sym.tool_version_info () | void tool_version_info () {
0x00010644 lui gp, 3 |
0x00010648 addiu gp, gp, 0x19fc |
0x0001064c addu gp, gp, t9 | gp += t9;
0x00010650 addiu sp, sp, -0x30 |
0x00010654 sw s2, 0x24(sp) | *(var_24h) = s2;
0x00010658 lw s2, -0x7eb0(gp) | s2 = *(gp);
0x0001065c sw s0, 0x1c(sp) | *(var_1ch) = s0;
0x00010660 sw gp, 0x10(sp) | *(var_10h) = gp;
0x00010664 lw s0, (s2) | s0 = *(s2);
0x00010668 sw ra, 0x2c(sp) | *(var_2ch) = ra;
0x0001066c sw s3, 0x28(sp) | *(var_28h) = s3;
0x00010670 lw a1, (s0) | a1 = *(s0);
0x00010674 sw s1, 0x20(sp) | *(var_20h) = s1;
0x00010678 lw t9, -0x7c78(gp) | t9 = sym.imp.curl_version;
| if (a1 == 0) {
0x0001067c beqz a1, 0x106d0 | goto label_0;
| }
0x00010680 lw s1, -0x7fd4(gp) | s1 = *(gp);
| /* str.debug */
0x00010684 addiu s1, s1, 0x2320 | s1 += 0x2320;
0x00010688 b 0x10698 |
| while (v0 == 0) {
0x0001068c lw a1, (s0) | a1 = *(s0);
0x00010690 lw t9, -0x7c78(gp) | t9 = sym.imp.curl_version;
| if (a1 == 0) {
0x00010694 beqz a1, 0x106d0 | goto label_0;
| }
0x00010698 lw t9, -0x7b8c(gp) | t9 = sym.imp.curl_strequal;
0x0001069c move a0, s1 | a0 = s1;
0x000106a0 jalr t9 | t9 ();
0x000106a4 addiu s0, s0, 4 | s0 += 4;
0x000106a8 lw gp, 0x10(sp) | gp = *(var_10h);
0x000106ac beqz v0, 0x1068c |
| }
0x000106b0 lw v0, -0x7fd8(gp) | v0 = *(gp);
0x000106b4 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x000106b8 lw t9, -0x7d90(gp) | t9 = sym.imp.curl_mfprintf
0x000106bc lw a0, (v0) | a0 = *(v0);
| /* str.WARNING:_this_libcurl_is_Debug_enabled__do_not_use_in_production_n_n */
0x000106c0 addiu a1, a1, 0x23f0 | a1 += 0x23f0;
0x000106c4 jalr t9 | t9 ();
0x000106c8 lw gp, 0x10(sp) | gp = *(var_10h);
0x000106cc lw t9, -0x7c78(gp) | t9 = sym.imp.curl_version;
| label_0:
0x000106d0 lw s0, -0x7ec4(gp) | s0 = *(gp);
0x000106d4 jalr t9 | t9 ();
0x000106d8 nop |
0x000106dc lw gp, 0x10(sp) | gp = *(var_10h);
0x000106e0 move a1, v0 | a1 = v0;
0x000106e4 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x000106e8 lw t9, -0x7d00(gp) | t9 = sym.imp.curl_mprintf
| /* str.curl_8.1.0__mipsel_poky_linux_gnu___s_n */
0x000106ec addiu a0, a0, 0x2328 | a0 += 0x2328;
0x000106f0 jalr t9 | t9 ();
0x000106f4 lw gp, 0x10(sp) | gp = *(var_10h);
0x000106f8 lw a1, -0x7fd4(gp) | a1 = *(gp);
0x000106fc lw a0, -0x7fd4(gp) | a0 = *(gp);
0x00010700 lw t9, -0x7d00(gp) | t9 = sym.imp.curl_mprintf
| /* str.2023_05_17 */
0x00010704 addiu a1, a1, 0x2350 | a1 += 0x2350;
| /* str.Release_Date:__s_n */
0x00010708 addiu a0, a0, 0x235c | a0 += 0x235c;
0x0001070c jalr t9 | t9 ();
0x00010710 lw v0, (s0) | v0 = *(s0);
0x00010714 lw v0, (v0) | v0 = *(v0);
0x00010718 lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x0001071c beqz v0, 0x107ac | goto label_1;
| }
0x00010720 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x00010724 lw t9, -0x7d00(gp) | t9 = sym.imp.curl_mprintf
| /* str.Protocols: */
0x00010728 addiu a0, a0, 0x2370 | a0 += 0x2370;
0x0001072c jalr t9 | t9 ();
0x00010730 lw s0, (s0) | s0 = *(s0);
0x00010734 lw a0, (s0) | a0 = *(s0);
0x00010738 lw gp, 0x10(sp) | gp = *(var_10h);
| if (a0 == 0) {
0x0001073c beqz a0, 0x10798 | goto label_2;
| }
0x00010740 lw s1, -0x7fd4(gp) | s1 = *(gp);
0x00010744 lw s3, -0x7fd4(gp) | s3 = *(gp);
| /* str.rtmp */
0x00010748 addiu s1, s1, 0x237c | s1 += 0x237c;
| /* esilref: ' &s' */
0x0001074c addiu s3, s3, 0x2384 | s3 += 0x2384;
0x00010750 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
| do {
0x00010754 move a1, s1 | a1 = s1;
0x00010758 addiu a2, zero, 4 | a2 = 4;
0x0001075c jalr t9 | t9 ();
0x00010760 lw gp, 0x10(sp) | gp = *(var_10h);
0x00010764 lw a1, (s0) | a1 = *(s0);
| if (v0 != 0) {
0x00010768 beqz v0, 0x10778 |
0x0001076c lb v0, 4(a1) | v0 = *((a1 + 4));
0x00010770 addiu s0, s0, 4 | s0 += 4;
| if (v0 == 0) {
0x00010774 bnel v0, zero, 0x1078c | goto label_3;
| }
| }
0x00010778 lw t9, -0x7d00(gp) | t9 = sym.imp.curl_mprintf
0x0001077c move a0, s3 | a0 = s3;
0x00010780 jalr t9 | t9 ();
0x00010784 lw gp, 0x10(sp) | gp = *(var_10h);
0x00010788 addiu s0, s0, 4 | s0 += 4;
| label_3:
0x0001078c lw a0, (s0) | a0 = *(s0);
0x00010790 lw t9, -0x7d8c(gp) | t9 = sym.imp.curl_strnequal;
0x00010794 bnez a0, 0x10754 |
| } while (a0 != 0);
| label_2:
0x00010798 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x0001079c lw t9, -0x7d34(gp) | t9 = sym.imp.puts;
0x000107a0 addiu a0, a0, 0x6c00 | a0 += 0x6c00;
0x000107a4 jalr t9 | t9 ();
0x000107a8 lw gp, 0x10(sp) | gp = *(var_10h);
| label_1:
0x000107ac lw v0, (s2) | v0 = *(s2);
0x000107b0 lw v0, (v0) | v0 = *(v0);
0x000107b4 lw a0, -0x7fd4(gp) | a0 = *(gp);
| if (v0 == 0) {
0x000107b8 beqz v0, 0x10810 | goto label_4;
| }
0x000107bc lw t9, -0x7d00(gp) | t9 = sym.imp.curl_mprintf
| /* str.Features: */
0x000107c0 addiu a0, a0, 0x2388 | a0 += 0x2388;
0x000107c4 jalr t9 | t9 ();
0x000107c8 lw s0, (s2) | s0 = *(s2);
0x000107cc lw a1, (s0) | a1 = *(s0);
0x000107d0 lw gp, 0x10(sp) | gp = *(var_10h);
| if (a1 == 0) {
0x000107d4 beqz a1, 0x107fc | goto label_5;
| }
0x000107d8 lw s1, -0x7fd4(gp) | s1 = *(gp);
| /* esilref: ' &s' */
0x000107dc addiu s1, s1, 0x2384 | s1 += 0x2384;
| do {
0x000107e0 lw t9, -0x7d00(gp) | t9 = sym.imp.curl_mprintf
0x000107e4 addiu s0, s0, 4 | s0 += 4;
0x000107e8 move a0, s1 | a0 = s1;
0x000107ec jalr t9 | t9 ();
0x000107f0 lw a1, (s0) | a1 = *(s0);
0x000107f4 lw gp, 0x10(sp) | gp = *(var_10h);
0x000107f8 bnez a1, 0x107e0 |
| } while (a1 != 0);
| label_5:
0x000107fc lw a0, -0x7fd4(gp) | a0 = *(gp);
0x00010800 lw t9, -0x7d34(gp) | t9 = sym.imp.puts;
0x00010804 addiu a0, a0, 0x6c00 | a0 += 0x6c00;
0x00010808 jalr t9 | t9 ();
0x0001080c lw gp, 0x10(sp) | gp = *(var_10h);
| label_4:
0x00010810 lw v0, -0x7f10(gp) | v0 = *(gp);
0x00010814 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x00010818 lw t9, -0x7d80(gp) | t9 = sym.imp.strcmp;
0x0001081c lw v0, (v0) | v0 = *(v0);
| /* str.8.1.0 */
0x00010820 addiu a0, a0, 0x2394 | a0 += 0x2394;
0x00010824 lw a1, 4(v0) | a1 = *((v0 + 1));
0x00010828 jalr t9 | t9 ();
0x0001082c lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00010830 bnez v0, 0x10850 |
0x00010834 lw ra, 0x2c(sp) | ra = *(var_2ch);
0x00010838 lw s3, 0x28(sp) | s3 = *(var_28h);
0x0001083c lw s2, 0x24(sp) | s2 = *(var_24h);
0x00010840 lw s1, 0x20(sp) | s1 = *(var_20h);
0x00010844 lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x00010848 addiu sp, sp, 0x30 |
0x0001084c jr ra | return v0;
| }
0x00010850 lw a0, -0x7fd4(gp) | a0 = *(gp);
0x00010854 lw ra, 0x2c(sp) | ra = *(var_2ch);
0x00010858 lw s3, 0x28(sp) | s3 = *(var_28h);
0x0001085c lw s2, 0x24(sp) | s2 = *(var_24h);
0x00010860 lw s1, 0x20(sp) | s1 = *(var_20h);
0x00010864 lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x00010868 lw t9, -0x7d00(gp) | t9 = sym.imp.curl_mprintf
| /* str.WARNING:_curl_and_libcurl_versions_do_not_match._Functionality_may_be_affected._n */
0x0001086c addiu a0, a0, 0x239c | a0 += 0x239c;
0x00010870 addiu sp, sp, 0x30 |
0x00010874 jr t9 | return t9 ();
| }
[*] Function printf used 45 times curl