[*] Binary protection state of file_upload

  
  	Full RELRO     Canary found      NX disabled  PIE enabled  No RPATH     No RUNPATH   No Symbols


[*] Function printf tear down of file_upload

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/file_upload @ 0xf80 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) main ()                      | int32_t main () {
                                         |     /* [13] -r-x section size 10800 named .text */
    0x00000f80 lui gp, 2                 |     
    0x00000f84 addiu gp, gp, -0x3f20     |     
    0x00000f88 addu gp, gp, t9           |     gp += t9;
    0x00000f8c lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x00000f90 lw a2, -0x7ed8(gp)        |     a2 = *((gp - 8118));
    0x00000f94 addiu v0, v1, 0x456c      |     v0 = v1 + str.hs:S:m:n:a;
    0x00000f98 addiu sp, sp, -0x488      |     
    0x00000f9c lw t2, -0x7fdc(gp)        |     t2 = *((gp - 8183));
    0x00000fa0 lw t1, (a2)               |     t1 = *(a2);
    0x00000fa4 lw t0, 0x456c(v1)         |     t0 = *(v1);
    0x00000fa8 lw a3, 4(v0)              |     a3 = *((v0 + 1));
    0x00000fac lhu v1, 8(v0)             |     v1 = *((v0 + 4));
    0x00000fb0 lbu v0, 0xa(v0)           |     v0 = *((v0 + 10));
    0x00000fb4 lw t9, -0x7f74(gp)        |     t9 = sym.imp.openlog;
    0x00000fb8 addiu a2, zero, 8         |     a2 = 8;
    0x00000fbc sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00000fc0 sh v1, 0x58(sp)           |     *(var_58h) = v1;
    0x00000fc4 sw ra, 0x484(sp)          |     *(var_484h) = ra;
    0x00000fc8 sw fp, 0x480(sp)          |     *(var_480h) = fp;
    0x00000fcc sw s7, 0x47c(sp)          |     *(var_47ch) = s7;
    0x00000fd0 sw s6, 0x478(sp)          |     *(var_478h) = s6;
    0x00000fd4 sw s5, 0x474(sp)          |     *(var_474h) = s5;
    0x00000fd8 sw s4, 0x470(sp)          |     *(var_470h) = s4;
    0x00000fdc sw s3, 0x46c(sp)          |     *(var_46ch) = s3;
    0x00000fe0 sw t2, 0x34(sp)           |     *(var_34h) = t2;
    0x00000fe4 move s4, a1               |     s4 = a1;
    0x00000fe8 sw t1, 0x45c(sp)          |     *(var_45ch) = t1;
    0x00000fec addiu a1, zero, 1         |     a1 = 1;
    0x00000ff0 sw t0, 0x50(sp)           |     *(var_50h) = t0;
    0x00000ff4 sw a3, 0x54(sp)           |     *(var_54h) = a3;
    0x00000ff8 sb v0, 0x5a(sp)           |     *(var_5ah) = v0;
    0x00000ffc sw s2, 0x468(sp)          |     *(var_468h) = s2;
    0x00001000 sw s1, 0x464(sp)          |     *(var_464h) = s1;
    0x00001004 sw s0, 0x460(sp)          |     *(var_460h) = s0;
    0x00001008 move s6, a0               |     s6 = a0;
    0x0000100c addiu a0, t2, 0x45b0      |     a0 = t2 + str.file_upload;
    0x00001010 jalr t9                   |     t9 ();
    0x00001014 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00001018 lw a0, (s4)               |     a0 = *(s4);
    0x0000101c move s5, zero             |     s5 = 0;
    0x00001020 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
    0x00001024 lw t9, -0x7eb0(gp)        |     t9 = sym.imp.strstr;
    0x00001028 addiu a1, a1, 0x3dd8      |     a1 += str.file_cache;
    0x0000102c jalr t9                   |     t9 ();
    0x00001030 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00001034 sw v0, 0x40(sp)           |     *(var_40h) = v0;
    0x00001038 sltu v0, zero, v0         |     v0 = (0 < v0) ? 1 : 0;
    0x0000103c sw v0, 0x3c(sp)           |     *(var_3ch) = v0;
    0x00001040 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001044 lw v1, -0x7fd0(gp)        |     v1 = *((gp - 8180));
    0x00001048 addiu v0, v0, 0x4564      |     v0 += str._tmp;
    0x0000104c sw v0, 0x48(sp)           |     *(var_48h) = v0;
    0x00001050 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001054 sw v1, 0x44(sp)           |     *(var_44h) = v1;
    0x00001058 lw s3, -0x7fd0(gp)        |     s3 = *((gp - 8180));
    0x0000105c lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x00001060 addiu v0, v0, 0x4550      |     v0 += str._var_cache_upload;
    0x00001064 sw v1, 0x38(sp)           |     *(var_38h) = v1;
    0x00001068 sw zero, 0x24(sp)         |     *(var_24h) = 0;
    0x0000106c sw zero, 0x20(sp)         |     *(var_20h) = 0;
    0x00001070 sw zero, 0x28(sp)         |     *(var_28h) = 0;
    0x00001074 move s7, zero             |     s7 = 0;
    0x00001078 sw zero, 0x30(sp)         |     *(var_30h) = 0;
    0x0000107c sw zero, 0x2c(sp)         |     *(var_2ch) = 0;
    0x00001080 addiu fp, sp, 0x50        |     fp = sp + 0x50;
                                         |     /* section..data.rel.ro */
    0x00001084 addiu s3, s3, 0x4fc0      |     s3 += 0x4fc0;
    0x00001088 sw v0, 0x4c(sp)           |     *(var_4ch) = v0;
                                         |     do {
                                         | label_3:
    0x0000108c addiu s2, zero, 0x53      |         s2 = 0x53;
                                         | label_5:
    0x00001090 addiu s1, zero, 0x6d      |         s1 = 0x6d;
    0x00001094 addiu s0, zero, 0x61      |         s0 = 0x61;
                                         | label_0:
    0x00001098 lw t9, -0x7f1c(gp)        |         t9 = sym.imp.getopt_long;
    0x0000109c sw zero, 0x10(sp)         |         *(var_10h) = 0;
    0x000010a0 move a3, s3               |         a3 = s3;
    0x000010a4 move a2, fp               |         a2 = fp;
    0x000010a8 move a1, s4               |         a1 = s4;
    0x000010ac move a0, s6               |         a0 = s6;
    0x000010b0 jalr t9                   |         t9 ();
    0x000010b4 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 < 0) {
    0x000010b8 bltz v0, 0x138c           |             goto label_11;
                                         |         }
    0x000010bc slti v1, v0, 0x54         |         v1 = (v0 < 0x54) ? 1 : 0;
                                         |         if (v0 == s2) {
    0x000010c0 beq v0, s2, 0x1220        |             goto label_12;
                                         |         }
    0x000010c4 addiu v1, zero, 1         |         v1 = 1;
                                         |         if (v1 != 0) {
    0x000010c8 bnez v1, 0x116c           |             goto label_13;
                                         |         }
    0x000010cc slti v1, v0, 0x6e         |         v1 = (v0 < 0x6e) ? 1 : 0;
                                         |         if (v0 == s1) {
    0x000010d0 beq v0, s1, 0x11c8        |             goto label_14;
                                         |         }
    0x000010d4 addiu v1, zero, 0x6e      |         v1 = 0x6e;
                                         |         if (v1 != 0) {
    0x000010d8 bnez v1, 0x11b8           |             goto label_15;
                                         |         }
    0x000010dc addiu v1, zero, 0x73      |         v1 = 0x73;
                                         |         if (v0 == v1) {
    0x000010e0 beq v0, v1, 0x1258        |             goto label_16;
                                         |         }
    0x000010e4 lw v0, -0x7f8c(gp)        |         v0 = *((gp - 8163));
                                         |         if (v0 != v1) {
    0x000010e8 bne v0, v1, 0x1184        |             goto label_2;
                                         |         }
    0x000010ec lw t9, -0x7f90(gp)        |         t9 = sym.imp.strtol;
    0x000010f0 addiu a2, zero, 0xa       |         a2 = 0xa;
    0x000010f4 lw a0, (v0)               |         a0 = *(v0);
    0x000010f8 move a1, zero             |         a1 = 0;
    0x000010fc jalr t9                   |         t9 ();
    0x00001100 sw v0, 0x2c(sp)           |         *(var_2ch) = v0;
    0x00001104 move a0, v0               |         a0 = v0;
    0x00001108 lw v0, 0x38(sp)           |         v0 = *(var_38h);
    0x0000110c addiu t9, v0, 0x16e0      |         t9 = v0 + fcn.000016e0;
    0x00001110 lw a1, 0x3c(sp)           |         a1 = *(var_3ch);
    0x00001114 bal 0x16e0                |         fcn_000016e0 ();
    0x00001118 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x0000111c beqz v0, 0x108c           |         
                                         |     } while (v0 == 0);
                                         | label_6:
    0x00001120 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00001124 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00001128 lw t9, -0x7f68(gp)        |     t9 = sym.imp.__syslog_chk;
    0x0000112c lw v0, 0x2c(sp)           |     v0 = *(var_2ch);
    0x00001130 addiu a0, zero, 3         |     a0 = 3;
    0x00001134 addiu a3, a3, 0x44e8      |     a3 += str.Error_invalid_size:;
    0x00001138 addiu a2, a2, 0x44fc      |     a2 += str._s__d;
    0x0000113c addiu a1, zero, 1         |     a1 = 1;
                                         | label_4:
    0x00001140 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00001144 jalr t9                   |     t9 ();
    0x00001148 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_7:
    0x0000114c lw t9, -0x7fdc(gp)        |     t9 = *((gp - 8183));
                                         | label_9:
    0x00001150 addiu t9, t9, 0x17b8      |     t9 += fcn.000017b8;
    0x00001154 bal 0x17b8                |     fcn_000017b8 ();
    0x00001158 nop                       |     
    0x0000115c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00001160 lw t9, -0x7f10(gp)        |     t9 = sym.imp.exit;
    0x00001164 addiu a0, zero, 1         |     a0 = 1;
    0x00001168 jalr t9                   |     t9 ();
                                         | label_13:
    0x0000116c addiu v1, zero, 2         |     v1 = 2;
                                         |     if (v0 == v1) {
    0x00001170 beq v0, v1, 0x1320        |         goto label_17;
                                         |     }
    0x00001174 lw a0, 0x24(sp)           |     a0 = *(var_24h);
                                         |     if (v0 == v1) {
    0x00001178 beq v0, v1, 0x12e4        |         goto label_18;
                                         |     }
                                         |     if (v0 == 0) {
    0x0000117c beql v0, zero, 0x12a8     |         goto label_19;
                                         |     }
    0x00001180 lw a0, 0x28(sp)           |     a0 = *(var_28h);
                                         | label_2:
    0x00001184 lw v0, -0x7f60(gp)        |     v0 = *((gp - 8152));
                                         | label_1:
    0x00001188 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x0000118c lw t9, -0x7f7c(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001190 lw a0, (v0)               |     a0 = *(v0);
    0x00001194 lw v0, 0x34(sp)           |     v0 = *(var_34h);
    0x00001198 addiu a2, a2, 0x3de4      |     a2 += str.syntax:__s___h_____allowed_realmsVAL1_VAL2_...__n___________allowed_dirsVAL1_VAL2_..._____defaut_dirVAL1__n_________s__size__S__size____m__max__n__min___n____h_help._n_____allowed_realms_comma_separated_list_of_values_that_the_realm_n____________________token_in_the_POST_must_take._If_the_list_contains_n____________________a_list_of_values__realm_must_be_present_and_n____________________take_any_of_the_values_within_the_list._n____________________If_the_option_is_passed_with_an_empty_str;
    0x0000119c addiu a3, v0, 0x45b0      |     a3 = v0 + str.file_upload;
    0x000011a0 addiu a1, zero, 1         |     a1 = 1;
    0x000011a4 jalr t9                   |     t9 ();
    0x000011a8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000011ac lw t9, -0x7f10(gp)        |     t9 = sym.imp.exit;
    0x000011b0 move a0, zero             |     a0 = 0;
    0x000011b4 jalr t9                   |     t9 ();
                                         | label_15:
    0x000011b8 addiu s5, zero, 1         |     s5 = 1;
                                         |     if (v0 == s0) {
    0x000011bc beq v0, s0, 0x1098        |         goto label_0;
                                         |     }
    0x000011c0 lw v0, -0x7f60(gp)        |     v0 = *((gp - 8152));
    0x000011c4 b 0x1188                  |     goto label_1;
                                         | label_14:
    0x000011c8 ori s7, s7, 1             |     s7 |= 1;
    0x000011cc addiu v0, zero, 1         |     v0 = 1;
    0x000011d0 lw v0, -0x7f8c(gp)        |     v0 = *((gp - 8163));
                                         |     if (s7 != v0) {
    0x000011d4 bne s7, v0, 0x1184        |         goto label_2;
                                         |     }
    0x000011d8 lw t9, -0x7f90(gp)        |     t9 = sym.imp.strtol;
    0x000011dc addiu a2, zero, 0xa       |     a2 = 0xa;
    0x000011e0 lw a0, (v0)               |     a0 = *(v0);
    0x000011e4 move a1, zero             |     a1 = 0;
    0x000011e8 jalr t9                   |     t9 ();
    0x000011ec sw v0, 0x30(sp)           |     *(var_30h) = v0;
    0x000011f0 sltiu v0, v0, 0x65        |     v0 = (v0 < 0x65) ? 1 : 0;
    0x000011f4 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x000011f8 bnez v0, 0x108c           |         goto label_3;
                                         |     }
    0x000011fc lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x00001200 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00001204 lw t9, -0x7f68(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00001208 addiu a0, zero, 3         |     a0 = 3;
    0x0000120c addiu a3, a3, 0x4504      |     a3 += str.Error_invalid_percentage:;
    0x00001210 addiu a2, a2, 0x44fc      |     a2 += str._s__d;
    0x00001214 addiu a1, zero, 1         |     a1 = 1;
    0x00001218 lw v0, 0x30(sp)           |     v0 = *(var_30h);
    0x0000121c b 0x1140                  |     goto label_4;
                                         | label_12:
    0x00001220 lw v0, -0x7f8c(gp)        |     v0 = *((gp - 8163));
    0x00001224 lw t9, -0x7f90(gp)        |     t9 = sym.imp.strtol;
    0x00001228 addiu a2, zero, 0xa       |     a2 = 0xa;
    0x0000122c lw a0, (v0)               |     a0 = *(v0);
    0x00001230 move a1, zero             |     a1 = 0;
    0x00001234 jalr t9                   |     t9 ();
    0x00001238 sw v0, 0x2c(sp)           |     *(var_2ch) = v0;
    0x0000123c lw v0, 0x40(sp)           |     v0 = *(var_40h);
    0x00001240 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00001244 bnez v0, 0x1360           |         goto label_20;
                                         |     }
    0x00001248 lw v0, 0x44(sp)           |     v0 = *(var_44h);
    0x0000124c lw v1, 0x48(sp)           |     v1 = *(var_48h);
    0x00001250 sw v1, 0x5010(v0)         |     *((v0 + 5124)) = v1;
    0x00001254 b 0x108c                  |     goto label_3;
                                         | label_16:
    0x00001258 ori s7, s7, 2             |     s7 |= 2;
    0x0000125c addiu v0, zero, 2         |     v0 = 2;
    0x00001260 lw v0, -0x7f8c(gp)        |     v0 = *((gp - 8163));
                                         |     if (s7 != v0) {
    0x00001264 bne s7, v0, 0x1184        |         goto label_2;
                                         |     }
    0x00001268 lw t9, -0x7f90(gp)        |     t9 = sym.imp.strtol;
    0x0000126c addiu a2, zero, 0xa       |     a2 = 0xa;
    0x00001270 lw a0, (v0)               |     a0 = *(v0);
    0x00001274 move a1, zero             |     a1 = 0;
    0x00001278 jalr t9                   |     t9 ();
    0x0000127c sw v0, 0x30(sp)           |     *(var_30h) = v0;
    0x00001280 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 >= 0) {
    0x00001284 bgez v0, 0x108c           |         goto label_3;
                                         |     }
    0x00001288 lw a3, -0x7fdc(gp)        |     a3 = *((gp - 8183));
    0x0000128c lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00001290 lw t9, -0x7f68(gp)        |     t9 = sym.imp.__syslog_chk;
    0x00001294 addiu a0, zero, 3         |     a0 = 3;
    0x00001298 addiu a3, a3, 0x44e8      |     a3 += str.Error_invalid_size:;
    0x0000129c addiu a2, a2, 0x44fc      |     a2 += str._s__d;
    0x000012a0 addiu a1, zero, 1         |     a1 = 1;
    0x000012a4 b 0x1140                  |     goto label_4;
                                         | label_19:
    0x000012a8 lw t9, -0x7ecc(gp)        |     t9 = sym.imp.free;
                                         |     if (a0 != 0) {
    0x000012ac beqz a0, 0x12bc           |         
    0x000012b0 jalr t9                   |         t9 ();
    0x000012b4 nop                       |         
    0x000012b8 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |     }
    0x000012bc lw v0, -0x7f8c(gp)        |     v0 = *((gp - 8163));
    0x000012c0 lw a0, (v0)               |     a0 = *(v0);
    0x000012c4 sw a0, 0x28(sp)           |     *(var_28h) = a0;
                                         |     if (a0 == 0) {
    0x000012c8 beqz a0, 0x108c           |         goto label_3;
                                         |     }
    0x000012cc lw t9, -0x7ed0(gp)        |     t9 = sym.imp.strdup;
    0x000012d0 addiu s2, zero, 0x53      |     s2 = 0x53;
    0x000012d4 jalr t9                   |     t9 ();
    0x000012d8 sw v0, 0x28(sp)           |     *(var_28h) = v0;
    0x000012dc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000012e0 b 0x1090                  |     goto label_5;
                                         | label_18:
    0x000012e4 lw t9, -0x7ecc(gp)        |     t9 = sym.imp.free;
                                         |     if (a0 != 0) {
    0x000012e8 beqz a0, 0x12f8           |         
    0x000012ec jalr t9                   |         t9 ();
    0x000012f0 nop                       |         
    0x000012f4 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |     }
    0x000012f8 lw v0, -0x7f8c(gp)        |     v0 = *((gp - 8163));
    0x000012fc lw a0, (v0)               |     a0 = *(v0);
    0x00001300 sw a0, 0x24(sp)           |     *(var_24h) = a0;
                                         |     if (a0 == 0) {
    0x00001304 beqz a0, 0x108c           |         goto label_3;
                                         |     }
    0x00001308 lw t9, -0x7ed0(gp)        |     t9 = sym.imp.strdup;
    0x0000130c addiu s2, zero, 0x53      |     s2 = 0x53;
    0x00001310 jalr t9                   |     t9 ();
    0x00001314 sw v0, 0x24(sp)           |     *(var_24h) = v0;
    0x00001318 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000131c b 0x1090                  |     goto label_5;
                                         | label_17:
    0x00001320 lw a0, 0x20(sp)           |     a0 = *(var_20h);
    0x00001324 lw t9, -0x7ecc(gp)        |     t9 = sym.imp.free;
                                         |     if (a0 != 0) {
    0x00001328 beqz a0, 0x1338           |         
    0x0000132c jalr t9                   |         t9 ();
    0x00001330 nop                       |         
    0x00001334 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |     }
    0x00001338 lw v0, -0x7f8c(gp)        |     v0 = *((gp - 8163));
    0x0000133c lw a0, (v0)               |     a0 = *(v0);
    0x00001340 sw a0, 0x20(sp)           |     *(var_20h) = a0;
                                         |     if (a0 == 0) {
    0x00001344 beqz a0, 0x108c           |         goto label_3;
                                         |     }
    0x00001348 lw t9, -0x7ed0(gp)        |     t9 = sym.imp.strdup;
    0x0000134c addiu s2, zero, 0x53      |     s2 = 0x53;
    0x00001350 jalr t9                   |     t9 ();
    0x00001354 sw v0, 0x20(sp)           |     *(var_20h) = v0;
    0x00001358 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0000135c b 0x1090                  |     goto label_5;
                                         | label_20:
    0x00001360 lw v0, 0x38(sp)           |     v0 = *(var_38h);
    0x00001364 lw a0, 0x2c(sp)           |     a0 = *(var_2ch);
    0x00001368 addiu t9, v0, 0x16e0      |     t9 = v0 + fcn.000016e0;
    0x0000136c addiu a1, zero, 1         |     a1 = 1;
    0x00001370 bal 0x16e0                |     fcn_000016e0 ();
    0x00001374 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00001378 bnez v0, 0x1120           |         goto label_6;
                                         |     }
    0x0000137c lw v0, 0x44(sp)           |     v0 = *(var_44h);
    0x00001380 lw v1, 0x4c(sp)           |     v1 = *(var_4ch);
    0x00001384 sw v1, 0x5010(v0)         |     *((v0 + 5124)) = v1;
    0x00001388 b 0x108c                  |     goto label_3;
                                         | label_11:
    0x0000138c addiu v0, zero, 0x32      |     v0 = 0x32;
                                         |     if (s7 == 0) {
    0x00001390 bnez s7, 0x13a0           |         
    0x00001394 addiu s7, zero, 1         |         s7 = 1;
    0x00001398 sw v0, 0x30(sp)           |         *(var_30h) = v0;
    0x0000139c sw zero, 0x2c(sp)         |         *(var_2ch) = 0;
                                         |     }
    0x000013a0 lw v0, -0x7fd0(gp)        |     v0 = *((gp - 8180));
                                         |     if (s5 == 0) {
    0x000013a4 beqz s5, 0x148c           |         goto label_21;
                                         |     }
                                         | label_8:
    0x000013a8 lw v0, 0x24(sp)           |     v0 = *(var_24h);
    0x000013ac lw s1, 0x28(sp)           |     s1 = *(var_28h);
    0x000013b0 lw t9, -0x7fcc(gp)        |     t9 = sym.http_post_parse;
    0x000013b4 addiu s0, sp, 0x5c        |     s0 = sp + 0x5c;
    0x000013b8 lw a3, 0x20(sp)           |     a3 = *(var_20h);
    0x000013bc lw a1, 0x3c(sp)           |     a1 = *(var_3ch);
    0x000013c0 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x000013c4 move a2, s1               |     a2 = s1;
    0x000013c8 move a0, s0               |     a0 = s0;
    0x000013cc bal 0x232c                |     sym_http_post_parse ();
    0x000013d0 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 < 0) {
    0x000013d4 bltz v0, 0x114c           |         goto label_7;
                                         |     }
    0x000013d8 move a0, s1               |     a0 = s1;
                                         |     if (s1 != 0) {
    0x000013dc beqz s1, 0x13f0           |         
    0x000013e0 lw t9, -0x7ecc(gp)        |         t9 = sym.imp.free;
    0x000013e4 jalr t9                   |         t9 ();
    0x000013e8 nop                       |         
    0x000013ec lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |     }
    0x000013f0 lw a0, 0x20(sp)           |     a0 = *(var_20h);
    0x000013f4 lw t9, -0x7ecc(gp)        |     t9 = sym.imp.free;
                                         |     if (a0 != 0) {
    0x000013f8 beqz a0, 0x1408           |         
    0x000013fc jalr t9                   |         t9 ();
    0x00001400 nop                       |         
    0x00001404 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |     }
    0x00001408 lw a0, 0x24(sp)           |     a0 = *(var_24h);
    0x0000140c lw t9, -0x7ecc(gp)        |     t9 = sym.imp.free;
                                         |     if (a0 != 0) {
    0x00001410 beqz a0, 0x1420           |         
    0x00001414 jalr t9                   |         t9 ();
    0x00001418 nop                       |         
    0x0000141c lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |     }
    0x00001420 lw v0, -0x7fd0(gp)        |     v0 = *((gp - 8180));
                                         |     if (s5 != 0) {
    0x00001424 bnez s5, 0x14b8           |         goto label_22;
                                         |     }
                                         | label_10:
    0x00001428 lw v0, 0x40(sp)           |     v0 = *(var_40h);
    0x0000142c lw t9, -0x7f24(gp)        |     t9 = sym.imp.strchr;
                                         |     if (v0 == 0) {
    0x00001430 beqz v0, 0x1518           |         goto label_23;
                                         |     }
    0x00001434 addiu a1, zero, 0x2d      |     a1 = 0x2d;
    0x00001438 move a0, s0               |     a0 = s0;
    0x0000143c jalr t9                   |     t9 ();
    0x00001440 move s1, v0               |     s1 = v0;
    0x00001444 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00001448 beqz v0, 0x1464           |         
    0x0000144c lw t9, -0x7f28(gp)        |         t9 = sym.imp.strlen;
    0x00001450 move a0, v0               |         a0 = v0;
    0x00001454 jalr t9                   |         t9 ();
    0x00001458 sltiu v0, v0, 2           |         v0 = (v0 < 2) ? 1 : 0;
    0x0000145c lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x00001460 beqz v0, 0x14fc           |             goto label_24;
                                         |         }
                                         |     }
    0x00001464 lw a2, -0x7fdc(gp)        |     a2 = *((gp - 8183));
    0x00001468 lw t9, -0x7f68(gp)        |     t9 = sym.imp.__syslog_chk;
    0x0000146c addiu a0, zero, 6         |     a0 = 6;
    0x00001470 addiu a2, a2, 0x4530      |     a2 += str.tmp_path_is_NULL_or_too_short;
    0x00001474 addiu a1, zero, 1         |     a1 = 1;
    0x00001478 jalr t9                   |     t9 ();
    0x0000147c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00001480 lw t9, -0x7f10(gp)        |     t9 = sym.imp.exit;
    0x00001484 addiu a0, zero, 1         |     a0 = 1;
    0x00001488 jalr t9                   |     t9 ();
                                         | label_21:
    0x0000148c lw t9, -0x7fdc(gp)        |     t9 = *((gp - 8183));
    0x00001490 lw a2, 0x30(sp)           |     a2 = *(var_30h);
    0x00001494 lw a0, 0x5010(v0)         |     a0 = *((v0 + 5124));
    0x00001498 lw a1, 0x2c(sp)           |     a1 = *(var_2ch);
    0x0000149c addiu t9, t9, 0x1858      |     t9 += fcn.00001858;
    0x000014a0 move a3, s7               |     a3 = s7;
    0x000014a4 bal 0x1858                |     fcn_00001858 ();
    0x000014a8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 >= 0) {
    0x000014ac bgez v0, 0x13a8           |         goto label_8;
                                         |     }
    0x000014b0 lw t9, -0x7fdc(gp)        |     t9 = *((gp - 8183));
    0x000014b4 b 0x1150                  |     goto label_9;
                                         | label_22:
    0x000014b8 lw t9, -0x7fdc(gp)        |     t9 = *((gp - 8183));
    0x000014bc lw a2, 0x30(sp)           |     a2 = *(var_30h);
    0x000014c0 lw a0, 0x5010(v0)         |     a0 = *((v0 + 5124));
    0x000014c4 move a3, s7               |     a3 = s7;
    0x000014c8 addiu t9, t9, 0x1858      |     t9 += fcn.00001858;
    0x000014cc move a1, zero             |     a1 = 0;
    0x000014d0 bal 0x1858                |     fcn_00001858 ();
    0x000014d4 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 >= 0) {
    0x000014d8 bgez v0, 0x1428           |         goto label_10;
                                         |     }
    0x000014dc lw t9, -0x7eec(gp)        |     t9 = sym.imp.unlink;
    0x000014e0 move a0, s0               |     a0 = s0;
    0x000014e4 jalr t9                   |     t9 ();
    0x000014e8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x000014ec bnez v0, 0x153c           |     
                                         |     while (1) {
    0x000014f0 lw t9, -0x7f10(gp)        |         t9 = sym.imp.exit;
    0x000014f4 addiu a0, zero, 1         |         a0 = 1;
    0x000014f8 jalr t9                   |         t9 ();
                                         | label_24:
    0x000014fc lw t9, -0x7f50(gp)        |         t9 = sym.imp.strncpy;
    0x00001500 addiu a2, zero, 6         |         a2 = 6;
    0x00001504 addiu a1, s1, 1           |         a1 = s1 + 1;
    0x00001508 move a0, s0               |         a0 = s0;
    0x0000150c jalr t9                   |         t9 ();
    0x00001510 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00001514 sb zero, 0x62(sp)         |         *(var_62h) = 0;
                                         | label_23:
    0x00001518 lw v0, -0x7f60(gp)        |         v0 = *((gp - 8152));
    0x0000151c lw t9, -0x7f94(gp)        |         t9 = sym.imp.fputs;
    0x00001520 move a0, s0               |         a0 = s0;
    0x00001524 lw a1, (v0)               |         a1 = *(v0);
    0x00001528 jalr t9                   |         t9 ();
    0x0000152c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00001530 lw t9, -0x7f10(gp)        |         t9 = sym.imp.exit;
    0x00001534 move a0, zero             |         a0 = 0;
    0x00001538 jalr t9                   |         t9 ();
    0x0000153c lw a3, -0x7fdc(gp)        |         a3 = *((gp - 8183));
    0x00001540 lw a2, -0x7fdc(gp)        |         a2 = *((gp - 8183));
    0x00001544 lw t9, -0x7f68(gp)        |         t9 = sym.imp.__syslog_chk;
    0x00001548 addiu a3, a3, 0x4520      |         a3 += str.Error_unlink:;
    0x0000154c addiu a2, a2, 0x3d9c      |         a2 += str._s__m;
    0x00001550 addiu a1, zero, 1         |         a1 = 1;
    0x00001554 addiu a0, zero, 3         |         a0 = 3;
    0x00001558 jalr t9                   |         t9 ();
    0x0000155c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00001560 b 0x14f0                  |         
                                         |     }
                                         | }

[*] Function printf used 2 times file_upload