[*] Binary protection state of libcproducer.so

  
  	No RELRO       No Canary found   NX disabled  DSO          RPATH        No RUNPATH   Symbols


[*] Function system tear down of libcproducer.so

    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0xb190 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.__do_global_dtors_aux ()         | void do_global_dtors_aux () {
    0x0000b190 lui gp, 8                         |     
    0x0000b194 addiu gp, gp, 0x5f40              |     
    0x0000b198 addu gp, gp, t9                   |     gp += t9;
    0x0000b19c addiu sp, sp, -0x30               |     
    0x0000b1a0 sw s3, 0x28(sp)                   |     *(var_28h) = s3;
    0x0000b1a4 lw s3, -0x7fe4(gp)                |     s3 = *((gp - 8185));
    0x0000b1a8 sw gp, 0x10(sp)                   |     *(var_10h) = gp;
    0x0000b1ac sw ra, 0x2c(sp)                   |     *(var_2ch) = ra;
    0x0000b1b0 lbu v0, -0x60c0(s3)               |     v0 = *((s3 - 24768));
    0x0000b1b4 sw s2, 0x24(sp)                   |     *(var_24h) = s2;
    0x0000b1b8 sw s1, 0x20(sp)                   |     *(var_20h) = s1;
    0x0000b1bc sw s0, 0x1c(sp)                   |     *(var_1ch) = s0;
    0x0000b1c0 lw v0, -0x7324(gp)                |     v0 = *((gp - 7369));
                                                 |     if (v0 != 0) {
    0x0000b1c4 bnez v0, 0xb27c                   |         goto label_1;
                                                 |     }
    0x0000b1c8 lw v0, -0x7fe0(gp)                |     v0 = *(gp);
                                                 |     if (v0 != 0) {
    0x0000b1cc beqz v0, 0xb1e0                   |         
    0x0000b1d0 lw t9, -0x7324(gp)                |         t9 = *((gp - 7369));
    0x0000b1d4 lw a0, (v0)                       |         a0 = *(v0);
    0x0000b1d8 jalr t9                           |         t9 ();
    0x0000b1dc lw gp, 0x10(sp)                   |         gp = *(var_10h);
                                                 |     }
    0x0000b1e0 lw s2, -0x7fe4(gp)                |     s2 = *((gp - 8185));
    0x0000b1e4 lw s0, -0x7fe4(gp)                |     s0 = *((gp - 8185));
    0x0000b1e8 lw s1, -0x7fdc(gp)                |     s1 = *(gp);
                                                 |     /* obj.__DTOR_LIST__ */
    0x0000b1ec addiu s2, s2, -0x7644             |     s2 += -0x7644;
    0x0000b1f0 lw v0, -0x60bc(s0)                |     v0 = *((s0 - 6191));
    0x0000b1f4 subu s1, s1, s2                   |     __asm ("subu s1, s1, s2");
    0x0000b1f8 sra s1, s1, 2                     |     s1 >>= 2;
    0x0000b1fc addiu s1, s1, -1                  |     s1 += -1;
    0x0000b200 sltu v1, v0, s1                   |     v1 = (v0 < s1) ? 1 : 0;
    0x0000b204 lw t9, -0x7fd8(gp)                |     t9 = *(gp);
                                                 |     if (v1 == 0) {
    0x0000b208 beqz v1, 0xb238                   |         goto label_2;
                                                 |     }
                                                 |     do {
    0x0000b20c addiu v0, v0, 1                   |         v0++;
    0x0000b210 sll v1, v0, 2                     |         v1 = v0 << 2;
    0x0000b214 addu v1, s2, v1                   |         v1 = s2 + v1;
    0x0000b218 lw t9, (v1)                       |         t9 = *(v1);
    0x0000b21c sw v0, -0x60bc(s0)                |         *((s0 - 6191)) = v0;
    0x0000b220 jalr t9                           |         t9 ();
    0x0000b224 lw v0, -0x60bc(s0)                |         v0 = *((s0 - 6191));
    0x0000b228 sltu v1, v0, s1                   |         v1 = (v0 < s1) ? 1 : 0;
    0x0000b22c lw gp, 0x10(sp)                   |         gp = *(var_10h);
    0x0000b230 bnez v1, 0xb20c                   |         
                                                 |     } while (v1 != 0);
    0x0000b234 lw t9, -0x7fd8(gp)                |     t9 = *(gp);
                                                 | label_2:
    0x0000b238 addiu t9, t9, -0x4f00             |     t9 += -0x4f00;
    0x0000b23c bal 0xb100                        |     entry0 ();
    0x0000b240 nop                               |     
    0x0000b244 lw gp, 0x10(sp)                   |     gp = *(var_10h);
    0x0000b248 lw v0, -0x7cb4(gp)                |     v0 = *((gp - 7981));
    0x0000b24c lw a0, -0x7de8(gp)                |     a0 = *((gp - 8058));
                                                 |     if (v0 == 0) {
    0x0000b250 beqz v0, 0xb298                   |         goto label_3;
                                                 |     }
    0x0000b254 lw v0, -0x75e4(gp)                |     v0 = *((gp - 7545));
                                                 |     if (a0 == 0) {
    0x0000b258 beqz a0, 0xb29c                   |         goto label_4;
                                                 |     }
    0x0000b25c lb v0, (a0)                       |     v0 = *(a0);
    0x0000b260 slti v0, v0, 2                    |     v0 = (v0 < 2) ? 1 : 0;
    0x0000b264 lw t9, -0x75e4(gp)                |     t9 = *((gp - 7545));
                                                 |     if (v0 != 0) {
    0x0000b268 bnez v0, 0xb298                   |         goto label_3;
                                                 |     }
    0x0000b26c jalr t9                           |     t9 ();
    0x0000b270 nop                               |     
                                                 |     do {
    0x0000b274 addiu v0, zero, 1                 |         v0 = 1;
                                                 | label_0:
    0x0000b278 sb v0, -0x60c0(s3)                |         *((s3 - 24768)) = v0;
                                                 | label_1:
    0x0000b27c lw ra, 0x2c(sp)                   |         ra = *(var_2ch);
    0x0000b280 lw s3, 0x28(sp)                   |         s3 = *(var_28h);
    0x0000b284 lw s2, 0x24(sp)                   |         s2 = *(var_24h);
    0x0000b288 lw s1, 0x20(sp)                   |         s1 = *(var_20h);
    0x0000b28c lw s0, 0x1c(sp)                   |         s0 = *(var_1ch);
    0x0000b290 addiu sp, sp, 0x30                |         
    0x0000b294 jr ra                             |         return v0;
                                                 | label_3:
    0x0000b298 lw v0, -0x75e4(gp)                |         v0 = *((gp - 7545));
                                                 | label_4:
    0x0000b29c lw a0, -0x7fd4(gp)                |         a0 = *((gp - 8181));
    0x0000b2a0 beqz v0, 0xb274                   |         
                                                 |     } while (v0 == 0);
    0x0000b2a4 lw t9, -0x75e4(gp)                |     t9 = *((gp - 7545));
                                                 |     /* obj.__EH_FRAME_BEGIN__ */
    0x0000b2a8 addiu a0, a0, -0x768c             |     a0 += -0x768c;
    0x0000b2ac jalr t9                           |     t9 ();
    0x0000b2b0 addiu v0, zero, 1                 |     v0 = 1;
    0x0000b2b4 b 0xb278                          |     goto label_0;
                                                 | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0x513b4 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.acceptStateMachineState ()       | void acceptStateMachineState () {
    0x000513b4 addiu sp, sp, -0x18               |     
    0x000513b8 sw fp, 0x14(sp)                   |     *(var_14h) = fp;
    0x000513bc move fp, sp                       |     fp = sp;
    0x000513c0 sw a0, 0x18(fp)                   |     *(arg_18h) = a0;
    0x000513c4 sw a2, 0x20(fp)                   |     *(arg_20h) = a2;
    0x000513c8 sw a3, 0x24(fp)                   |     *(arg_24h) = a3;
    0x000513cc sw zero, 8(fp)                    |     *(var_8h) = 0;
    0x000513d0 lw a0, 0x18(fp)                   |     a0 = *(arg_18h);
    0x000513d4 sw a0, 0xc(fp)                    |     *(var_ch) = a0;
    0x000513d8 lw a0, 0xc(fp)                    |     a0 = *(var_ch);
                                                 |     if (a0 == 0) {
    0x000513dc bnez a0, 0x513f4                  |         
    0x000513e0 nop                               |         
    0x000513e4 addiu v0, zero, 1                 |         v0 = 1;
    0x000513e8 sw v0, 8(fp)                      |         *(var_8h) = v0;
    0x000513ec b 0x51448                         |         goto label_0;
    0x000513f0 nop                               |         
                                                 |     }
    0x000513f4 lw a0, 0xc(fp)                    |     a0 = *(var_ch);
    0x000513f8 lw a0, 0x18(a0)                   |     a0 = *((a0 + 6));
    0x000513fc lw a1, 4(a0)                      |     a1 = *((a0 + 1));
    0x00051400 lw a0, (a0)                       |     a0 = *(a0);
    0x00051404 lw a2, 0x20(fp)                   |     a2 = *(arg_20h);
    0x00051408 and v0, a2, a0                    |     v0 = a2 & a0;
    0x0005140c lw a2, 0x24(fp)                   |     a2 = *(arg_24h);
    0x00051410 and v1, a2, a1                    |     v1 = a2 & a1;
    0x00051414 lw a0, 0xc(fp)                    |     a0 = *(var_ch);
    0x00051418 lw a0, 0x18(a0)                   |     a0 = *((a0 + 6));
    0x0005141c lw a1, 4(a0)                      |     a1 = *((a0 + 1));
    0x00051420 lw a0, (a0)                       |     a0 = *(a0);
    0x00051424 move a2, a0                       |     a2 = a0;
                                                 |     if (v0 == a2) {
    0x00051428 bne v0, a2, 0x5143c               |         
    0x0005142c nop                               |         
    0x00051430 move a0, a1                       |         a0 = a1;
                                                 |         if (v1 == a0) {
    0x00051434 beq v1, a0, 0x51448               |             goto label_0;
                                                 |         }
    0x00051438 nop                               |         
                                                 |     }
    0x0005143c lui v0, 0x5200                    |     v0 = 0x5200000e;
    0x00051440 ori v0, v0, 0xe                   |     
    0x00051444 sw v0, 8(fp)                      |     *(var_8h) = v0;
                                                 | label_0:
    0x00051448 lw v0, 8(fp)                      |     v0 = *(var_8h);
    0x0005144c move sp, fp                       |     
    0x00051450 lw fp, 0x14(sp)                   |     fp = *(var_14h);
    0x00051454 addiu sp, sp, 0x18                |     
    0x00051458 jr ra                             |     return v0;
    0x0005145c nop                               |     
                                                 | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0xdf10 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.clientShutdownAggregate ()           | void clientShutdownAggregate () {
    0x0000df10 addiu sp, sp, -0x30                   |     
    0x0000df14 sw ra, 0x2c(sp)                       |     *(var_2ch) = ra;
    0x0000df18 sw fp, 0x28(sp)                       |     *(var_28h) = fp;
    0x0000df1c move fp, sp                           |     fp = sp;
    0x0000df20 sw a0, 0x30(fp)                       |     *(arg_30h) = a0;
    0x0000df24 sw a1, 0x34(fp)                       |     *(arg_34h) = a1;
    0x0000df28 sw a2, 0x38(fp)                       |     *(arg_38h) = a2;
    0x0000df2c sw a3, 0x3c(fp)                       |     *(arg_3ch) = a3;
    0x0000df30 sw zero, 0x18(fp)                     |     *(var_18h) = 0;
    0x0000df34 lw v0, 0x30(fp)                       |     v0 = *(arg_30h);
    0x0000df38 sw v0, 0x20(fp)                       |     *(var_20h) = v0;
    0x0000df3c lw v0, 0x20(fp)                       |     v0 = *(var_20h);
                                                     |     if (v0 == 0) {
    0x0000df40 bnez v0, 0xdf58                       |         
    0x0000df44 nop                                   |         
    0x0000df48 addiu v0, zero, 2                     |         v0 = 2;
    0x0000df4c sw v0, 0x18(fp)                       |         *(var_18h) = v0;
    0x0000df50 b 0xe040                              |         goto label_0;
    0x0000df54 nop                                   |         
                                                     |     }
    0x0000df58 sw zero, 0x1c(fp)                     |     *(var_1ch) = 0;
    0x0000df5c b 0xe028                              |     goto label_1;
    0x0000df60 nop                                   |     
                                                     |     do {
    0x0000df64 lw v0, 0x20(fp)                       |         v0 = *(var_20h);
    0x0000df68 lw v1, 0x100(v0)                      |         v1 = *(v0);
    0x0000df6c lw v0, 0x1c(fp)                       |         v0 = *(var_1ch);
    0x0000df70 sll v0, v0, 5                         |         v0 <<= 5;
    0x0000df74 addu v0, v1, v0                       |         v0 = v1 + v0;
    0x0000df78 lw v0, 0x18(v0)                       |         v0 = *((v0 + 6));
                                                     |         if (v0 != 0) {
    0x0000df7c beqz v0, 0xe01c                       |             
    0x0000df80 nop                                   |             
    0x0000df84 lw v0, 0x20(fp)                       |             v0 = *(var_20h);
    0x0000df88 lw v1, 0x100(v0)                      |             v1 = *(v0);
    0x0000df8c lw v0, 0x1c(fp)                       |             v0 = *(var_1ch);
    0x0000df90 sll v0, v0, 5                         |             v0 <<= 5;
    0x0000df94 addu v0, v1, v0                       |             v0 = v1 + v0;
    0x0000df98 lw t0, 0x18(v0)                       |             t0 = *((v0 + 6));
    0x0000df9c lw v0, 0x20(fp)                       |             v0 = *(var_20h);
    0x0000dfa0 lw v1, 0x100(v0)                      |             v1 = *(v0);
    0x0000dfa4 lw v0, 0x1c(fp)                       |             v0 = *(var_1ch);
    0x0000dfa8 sll v0, v0, 5                         |             v0 <<= 5;
    0x0000dfac addu v0, v1, v0                       |             v0 = v1 + v0;
    0x0000dfb0 lw v1, 0xc(v0)                        |             v1 = *((v0 + 3));
    0x0000dfb4 lw v0, 8(v0)                          |             v0 = *((v0 + 2));
    0x0000dfb8 move a0, v0                           |             a0 = v0;
    0x0000dfbc move a1, v1                           |             a1 = v1;
    0x0000dfc0 lw a2, 0x38(fp)                       |             a2 = *(arg_38h);
    0x0000dfc4 lw a3, 0x3c(fp)                       |             a3 = *(arg_3ch);
    0x0000dfc8 move t9, t0                           |             t9 = t0;
    0x0000dfcc jalr t9                               |             t9 ();
    0x0000dfd0 nop                                   |             
    0x0000dfd4 sw v0, 0x18(fp)                       |             *(var_18h) = v0;
    0x0000dfd8 lw v1, 0x18(fp)                       |             v1 = *(var_18h);
    0x0000dfdc lui v0, 0x1500                        |             v0 = 0x15000001;
    0x0000dfe0 ori v0, v0, 1                         |             
                                                     |             if (v1 == v0) {
    0x0000dfe4 bne v1, v0, 0xdff8                    |                 
    0x0000dfe8 nop                                   |                 
    0x0000dfec sw zero, 0x18(fp)                     |                 *(var_18h) = 0;
    0x0000dff0 b 0xe040                              |                 goto label_0;
    0x0000dff4 nop                                   |                 
                                                     |             }
    0x0000dff8 lw v0, 0x18(fp)                       |             v0 = *(var_18h);
    0x0000dffc sw v0, 0x24(fp)                       |             *(var_24h) = v0;
    0x0000e000 lw v0, 0x24(fp)                       |             v0 = *(var_24h);
                                                     |             if (v0 == 0) {
    0x0000e004 beqz v0, 0xe01c                       |                 goto label_2;
                                                     |             }
    0x0000e008 nop                                   |             
    0x0000e00c lw v0, 0x24(fp)                       |             v0 = *(var_24h);
    0x0000e010 sw v0, 0x18(fp)                       |             *(var_18h) = v0;
    0x0000e014 b 0xe040                              |             goto label_0;
    0x0000e018 nop                                   |             
                                                     |         }
                                                     | label_2:
    0x0000e01c lw v0, 0x1c(fp)                       |         v0 = *(var_1ch);
    0x0000e020 addiu v0, v0, 1                       |         v0++;
    0x0000e024 sw v0, 0x1c(fp)                       |         *(var_1ch) = v0;
                                                     | label_1:
    0x0000e028 lw v0, 0x20(fp)                       |         v0 = *(var_20h);
    0x0000e02c lw v1, 0x104(v0)                      |         v1 = *(v0);
    0x0000e030 lw v0, 0x1c(fp)                       |         v0 = *(var_1ch);
    0x0000e034 sltu v0, v0, v1                       |         v0 = (v0 < v1) ? 1 : 0;
    0x0000e038 bnez v0, 0xdf64                       |         
                                                     |     } while (v0 != 0);
    0x0000e03c nop                                   |     
                                                     | label_0:
    0x0000e040 lw v0, 0x18(fp)                       |     v0 = *(var_18h);
    0x0000e044 move sp, fp                           |     
    0x0000e048 lw ra, 0x2c(sp)                       |     ra = *(var_2ch);
    0x0000e04c lw fp, 0x28(sp)                       |     fp = *(var_28h);
    0x0000e050 addiu sp, sp, 0x30                    |     
    0x0000e054 jr ra                                 |     return v0;
    0x0000e058 nop                                   |     
                                                     | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0x129c0 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.createCurlApiCallbacks ()        | void createCurlApiCallbacks () {
    0x000129c0 lui gp, 8                         |     
    0x000129c4 addiu gp, gp, -0x18f0             |     
    0x000129c8 addu gp, gp, t9                   |     gp += t9;
    0x000129cc addiu sp, sp, -0x78               |     
    0x000129d0 sw ra, 0x74(sp)                   |     *(var_74h) = ra;
    0x000129d4 sw fp, 0x70(sp)                   |     *(var_70h) = fp;
    0x000129d8 sw s5, 0x6c(sp)                   |     *(var_6ch) = s5;
    0x000129dc sw s4, 0x68(sp)                   |     *(var_68h) = s4;
    0x000129e0 sw s3, 0x64(sp)                   |     *(var_64h) = s3;
    0x000129e4 sw s2, 0x60(sp)                   |     *(var_60h) = s2;
    0x000129e8 sw s1, 0x5c(sp)                   |     *(var_5ch) = s1;
    0x000129ec sw s0, 0x58(sp)                   |     *(var_58h) = s0;
    0x000129f0 move fp, sp                       |     fp = sp;
    0x000129f4 sw gp, 0x20(sp)                   |     *(var_20h) = gp;
    0x000129f8 sw a0, 0x78(fp)                   |     *(arg_78h) = a0;
    0x000129fc sw a1, 0x7c(fp)                   |     *(arg_7ch) = a1;
    0x00012a00 sw a2, 0x80(fp)                   |     *(arg_80h) = a2;
    0x00012a04 sw zero, 0x28(fp)                 |     *(var_28h) = 0;
    0x00012a08 sw zero, 0x50(fp)                 |     *(var_50h) = 0;
    0x00012a0c lw v0, 0x78(fp)                   |     v0 = *(arg_78h);
                                                 |     if (v0 != 0) {
    0x00012a10 beqz v0, 0x12a24                  |         
    0x00012a14 nop                               |         
    0x00012a18 lw v0, 0xa0(fp)                   |         v0 = *(arg_a0h);
                                                 |         if (v0 != 0) {
    0x00012a1c bnez v0, 0x12a34                  |             goto label_0;
                                                 |         }
    0x00012a20 nop                               |         
                                                 |     }
    0x00012a24 addiu v0, zero, 1                 |     v0 = 1;
    0x00012a28 sw v0, 0x28(fp)                   |     *(var_28h) = v0;
    0x00012a2c b 0x13370                         |     goto label_1;
    0x00012a30 nop                               |     
                                                 | label_0:
    0x00012a34 lw v0, 0x94(fp)                   |     v0 = *(arg_94h);
                                                 |     if (v0 != 0) {
    0x00012a38 beqz v0, 0x12a7c                  |         
    0x00012a3c nop                               |         
    0x00012a40 lw a0, 0x94(fp)                   |         a0 = *(arg_94h);
    0x00012a44 addiu a1, zero, 0x1001            |         a1 = 0x1001;
    0x00012a48 lw v0, -0x7484(gp)                |         v0 = sym.imp.strnlen;
    0x00012a4c move t9, v0                       |         t9 = v0;
    0x00012a50 jalr t9                           |         t9 ();
    0x00012a54 nop                               |         
    0x00012a58 lw gp, 0x20(fp)                   |         gp = *(var_20h);
    0x00012a5c slti v0, v0, 0x1001               |         v0 = (v0 < 0x1001) ? 1 : 0;
                                                 |         if (v0 != 0) {
    0x00012a60 bnez v0, 0x12a7c                  |             goto label_2;
                                                 |         }
    0x00012a64 nop                               |         
    0x00012a68 lui v0, 0x5200                    |         v0 = 0x52000080;
    0x00012a6c ori v0, v0, 0x80                  |         
    0x00012a70 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00012a74 b 0x13370                         |         goto label_1;
    0x00012a78 nop                               |         
                                                 |     }
                                                 | label_2:
    0x00012a7c lw v0, 0x9c(fp)                   |     v0 = *(arg_9ch);
                                                 |     if (v0 != 0) {
    0x00012a80 beqz v0, 0x12ac4                  |         
    0x00012a84 nop                               |         
    0x00012a88 lw a0, 0x9c(fp)                   |         a0 = *(arg_9ch);
    0x00012a8c addiu a1, zero, 0x81              |         a1 = 0x81;
    0x00012a90 lw v0, -0x7484(gp)                |         v0 = sym.imp.strnlen;
    0x00012a94 move t9, v0                       |         t9 = v0;
    0x00012a98 jalr t9                           |         t9 ();
    0x00012a9c nop                               |         
    0x00012aa0 lw gp, 0x20(fp)                   |         gp = *(var_20h);
    0x00012aa4 slti v0, v0, 0x81                 |         v0 = (v0 < 0x81) ? 1 : 0;
                                                 |         if (v0 != 0) {
    0x00012aa8 bnez v0, 0x12ac4                  |             goto label_3;
                                                 |         }
    0x00012aac nop                               |         
    0x00012ab0 lui v0, 0x1500                    |         v0 = 0x15000014;
    0x00012ab4 ori v0, v0, 0x14                  |         
    0x00012ab8 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00012abc b 0x13370                         |         goto label_1;
    0x00012ac0 nop                               |         
                                                 |     }
                                                 | label_3:
    0x00012ac4 lw v0, 0x98(fp)                   |     v0 = *(arg_98h);
                                                 |     if (v0 != 0) {
    0x00012ac8 beqz v0, 0x12b0c                  |         
    0x00012acc nop                               |         
    0x00012ad0 lw a0, 0x98(fp)                   |         a0 = *(arg_98h);
    0x00012ad4 addiu a1, zero, 0x21              |         a1 = 0x21;
    0x00012ad8 lw v0, -0x7484(gp)                |         v0 = sym.imp.strnlen;
    0x00012adc move t9, v0                       |         t9 = v0;
    0x00012ae0 jalr t9                           |         t9 ();
    0x00012ae4 nop                               |         
    0x00012ae8 lw gp, 0x20(fp)                   |         gp = *(var_20h);
    0x00012aec slti v0, v0, 0x21                 |         v0 = (v0 < 0x21) ? 1 : 0;
                                                 |         if (v0 != 0) {
    0x00012af0 bnez v0, 0x12b0c                  |             goto label_4;
                                                 |         }
    0x00012af4 nop                               |         
    0x00012af8 lui v0, 0x1500                    |         v0 = 0x15000013;
    0x00012afc ori v0, v0, 0x13                  |         
    0x00012b00 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00012b04 b 0x13370                         |         goto label_1;
    0x00012b08 nop                               |         
                                                 |     }
                                                 | label_4:
    0x00012b0c lw v0, 0x8c(fp)                   |     v0 = *(arg_8ch);
    0x00012b10 sltiu v0, v0, 0xca                |     v0 = (v0 < 0xca) ? 1 : 0;
                                                 |     if (v0 != 0) {
    0x00012b14 beqz v0, 0x12b44                  |         
    0x00012b18 nop                               |         
    0x00012b1c lw v1, 0x8c(fp)                   |         v1 = *(arg_8ch);
    0x00012b20 addiu v0, zero, 0xc9              |         v0 = 0xc9;
                                                 |         if (v1 != v0) {
    0x00012b24 bne v1, v0, 0x12b58               |             goto label_5;
                                                 |         }
    0x00012b28 nop                               |         
    0x00012b2c lw v1, 0x88(fp)                   |         v1 = *(arg_88h);
    0x00012b30 lui v0, 0x2a69                    |         v0 = 0x2a69c001;
    0x00012b34 ori v0, v0, 0xc001                |         
    0x00012b38 sltu v0, v1, v0                   |         v0 = (v1 < v0) ? 1 : 0;
                                                 |         if (v0 != 0) {
    0x00012b3c bnez v0, 0x12b58                  |             goto label_5;
                                                 |         }
    0x00012b40 nop                               |         
                                                 |     }
    0x00012b44 lui v0, 0x1500                    |     v0 = 0x15000016;
    0x00012b48 ori v0, v0, 0x16                  |     
    0x00012b4c sw v0, 0x28(fp)                   |     *(var_28h) = v0;
    0x00012b50 b 0x13370                         |     goto label_1;
    0x00012b54 nop                               |     
                                                 | label_5:
    0x00012b58 lw v0, 0x88(fp)                   |     v0 = *(arg_88h);
    0x00012b5c lw v1, 0x8c(fp)                   |     v1 = *(arg_8ch);
    0x00012b60 or v0, v0, v1                     |     v0 |= v1;
                                                 |     if (v0 == 0) {
    0x00012b64 bnez v0, 0x12b80                  |         
    0x00012b68 nop                               |         
    0x00012b6c lui v0, 0x9682                    |         v0 = 0x9682f000;
    0x00012b70 ori v0, v0, 0xf000                |         
    0x00012b74 addiu v1, zero, 5                 |         v1 = 5;
    0x00012b78 sw v0, 0x88(fp)                   |         *(arg_88h) = v0;
    0x00012b7c sw v1, 0x8c(fp)                   |         *(arg_8ch) = v1;
                                                 |     }
    0x00012b80 lw v0, -0x7620(gp)                |     v0 = *(gp);
    0x00012b84 lw v0, (v0)                       |     v0 = *(v0);
    0x00012b88 addiu a0, zero, 1                 |     a0 = 1;
    0x00012b8c addiu a1, zero, 0x39a8            |     a1 = 0x39a8;
    0x00012b90 move t9, v0                       |     t9 = v0;
    0x00012b94 jalr t9                           |     t9 ();
    0x00012b98 nop                               |     
    0x00012b9c lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00012ba0 sw v0, 0x50(fp)                   |     *(var_50h) = v0;
    0x00012ba4 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
                                                 |     if (v0 == 0) {
    0x00012ba8 bnez v0, 0x12bc0                  |         
    0x00012bac nop                               |         
    0x00012bb0 addiu v0, zero, 4                 |         v0 = 4;
    0x00012bb4 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00012bb8 b 0x13370                         |         goto label_1;
    0x00012bbc nop                               |         
                                                 |     }
    0x00012bc0 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012bc4 sw zero, (v0)                     |     *(v0) = 0;
    0x00012bc8 lw v1, 0x50(fp)                   |     v1 = *(var_50h);
    0x00012bcc lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012bd0 move s4, v0                       |     s4 = v0;
    0x00012bd4 sra v0, v0, 0x1f                  |     v0 >>= 0x1f;
    0x00012bd8 move s5, v0                       |     s5 = v0;
    0x00012bdc sw s4, 8(v1)                      |     *((v1 + 2)) = s4;
    0x00012be0 sw s5, 0xc(v1)                    |     *((v1 + 3)) = s5;
    0x00012be4 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012be8 move a0, zero                     |     a0 = 0;
    0x00012bec move a1, zero                     |     a1 = 0;
    0x00012bf0 sw a0, 0x3970(v0)                 |     *((v0 + 3676)) = a0;
    0x00012bf4 sw a1, 0x3974(v0)                 |     *((v0 + 3677)) = a1;
    0x00012bf8 lw a0, 0x50(fp)                   |     a0 = *(var_50h);
    0x00012bfc lw v0, 0x88(fp)                   |     v0 = *(arg_88h);
    0x00012c00 lw v1, 0x8c(fp)                   |     v1 = *(arg_8ch);
    0x00012c04 sw v0, 0x3978(a0)                 |     *((a0 + 3678)) = v0;
    0x00012c08 sw v1, 0x397c(a0)                 |     *(a0) = v1;
    0x00012c0c lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c10 lw v1, 0x80(fp)                   |     v1 = *(arg_80h);
    0x00012c14 sw v1, 0x3980(v0)                 |     *((v0 + 3680)) = v1;
    0x00012c18 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c1c move a0, zero                     |     a0 = 0;
    0x00012c20 move a1, zero                     |     a1 = 0;
    0x00012c24 sw a0, 0x3958(v0)                 |     *((v0 + 3670)) = a0;
    0x00012c28 sw a1, 0x395c(v0)                 |     *((v0 + 3671)) = a1;
    0x00012c2c lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c30 move a0, zero                     |     a0 = 0;
    0x00012c34 move a1, zero                     |     a1 = 0;
    0x00012c38 sw a0, 0x3948(v0)                 |     *((v0 + 3666)) = a0;
    0x00012c3c sw a1, 0x394c(v0)                 |     *((v0 + 3667)) = a1;
    0x00012c40 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c44 move a0, zero                     |     a0 = 0;
    0x00012c48 move a1, zero                     |     a1 = 0;
    0x00012c4c sw a0, 0x3968(v0)                 |     *(v0) = a0;
    0x00012c50 sw a1, 0x396c(v0)                 |     *((v0 + 3675)) = a1;
    0x00012c54 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c58 move a0, zero                     |     a0 = 0;
    0x00012c5c move a1, zero                     |     a1 = 0;
    0x00012c60 sw a0, 0x3988(v0)                 |     *((v0 + 3682)) = a0;
    0x00012c64 sw a1, 0x398c(v0)                 |     *(v0) = a1;
    0x00012c68 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c6c lw v1, 0x78(fp)                   |     v1 = *(arg_78h);
    0x00012c70 sw v1, 0x3930(v0)                 |     *((v0 + 3660)) = v1;
    0x00012c74 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c78 lw v1, -0x7614(gp)                |     v1 = sym.createStreamCachingCurl;
    0x00012c7c sw v1, 0x10(v0)                   |     *((v0 + 4)) = v1;
    0x00012c80 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c84 lw v1, -0x7c08(gp)                |     v1 = sym.describeStreamCachingCurl;
    0x00012c88 sw v1, 0x14(v0)                   |     *((v0 + 5)) = v1;
    0x00012c8c lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c90 lw v1, -0x7a74(gp)                |     v1 = sym.getStreamingEndpointCachingCurl;
    0x00012c94 sw v1, 0x18(v0)                   |     *((v0 + 6)) = v1;
    0x00012c98 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012c9c lw v1, -0x7604(gp)                |     v1 = sym.tagResourceCachingCurl;
    0x00012ca0 sw v1, 0x20(v0)                   |     *((v0 + 8)) = v1;
    0x00012ca4 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012ca8 lw v1, -0x7ddc(gp)                |     v1 = sym.createDeviceCurl;
    0x00012cac sw v1, 0x24(v0)                   |     *((v0 + 9)) = v1;
    0x00012cb0 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012cb4 lw v1, -0x7300(gp)                |     v1 = sym.putStreamCurl;
    0x00012cb8 sw v1, 0x1c(v0)                   |     *((v0 + 7)) = v1;
    0x00012cbc lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012cc0 lw v1, -0x75fc(gp)                |     v1 = sym.freeApiCallbacksCurl;
    0x00012cc4 sw v1, 0x28(v0)                   |     *((v0 + 10)) = v1;
    0x00012cc8 lw v0, 0x7c(fp)                   |     v0 = *(arg_7ch);
                                                 |     if (v0 != 0) {
    0x00012ccc beqz v0, 0x12ce4                  |         
    0x00012cd0 nop                               |         
    0x00012cd4 lw v0, 0x7c(fp)                   |         v0 = *(arg_7ch);
    0x00012cd8 lb v0, (v0)                       |         v0 = *(v0);
                                                 |         if (v0 != 0) {
    0x00012cdc bnez v0, 0x12d28                  |             goto label_6;
                                                 |         }
    0x00012ce0 nop                               |         
                                                 |     }
    0x00012ce4 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012ce8 addiu v0, v0, 0x9c                |     v0 += 0x9c;
    0x00012cec lw v1, -0x7fcc(gp)                |     v1 = *((gp - 8179));
    0x00012cf0 lw a1, 0x3270(v1)                 |     a1 = *((v1 + 3228));
                                                 |     /* esilref: 'us-west-2' */
    0x00012cf4 addiu a0, v1, 0x3270              |     a0 = v1 + 0x3270;
    0x00012cf8 lw a0, 4(a0)                      |     a0 = *((a0 + 1));
    0x00012cfc swl a1, 3(v0)                     |     __asm ("swl a1, 3(v0)");
    0x00012d00 swr a1, (v0)                      |     __asm ("swr a1, (v0)");
    0x00012d04 swl a0, 7(v0)                     |     __asm ("swl a0, 7(v0)");
    0x00012d08 swr a0, 4(v0)                     |     __asm ("swr a0, 4(v0)");
                                                 |     /* esilref: 'us-west-2' */
    0x00012d0c addiu v1, v1, 0x3270              |     v1 += 0x3270;
    0x00012d10 lbu a0, 8(v1)                     |     a0 = *((v1 + 8));
    0x00012d14 sb a0, 8(v0)                      |     *((v0 + 8)) = a0;
    0x00012d18 lbu v1, 9(v1)                     |     v1 = *((v1 + 9));
    0x00012d1c sb v1, 9(v0)                      |     *((v0 + 9)) = v1;
    0x00012d20 b 0x12d58                         |     goto label_7;
    0x00012d24 nop                               |     
                                                 | label_6:
    0x00012d28 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012d2c addiu v0, v0, 0x9c                |     v0 += 0x9c;
    0x00012d30 move a0, v0                       |     a0 = v0;
    0x00012d34 lw a1, 0x7c(fp)                   |     a1 = *(arg_7ch);
    0x00012d38 addiu a2, zero, 0x80              |     a2 = 0x80;
    0x00012d3c lw v0, -0x7c74(gp)                |     v0 = sym.imp.strncpy;
    0x00012d40 move t9, v0                       |     t9 = v0;
    0x00012d44 jalr t9                           |     t9 ();
    0x00012d48 nop                               |     
    0x00012d4c lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00012d50 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012d54 sb zero, 0x11c(v0)                |     *(v0) = 0;
                                                 | label_7:
    0x00012d58 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012d5c addiu v0, v0, 0x11d               |     v0 += 0x11d;
    0x00012d60 lw a0, 0x98(fp)                   |     a0 = *(arg_98h);
    0x00012d64 lw a1, 0x9c(fp)                   |     a1 = *(arg_9ch);
    0x00012d68 addiu a2, zero, 0x100             |     a2 = aav.0x00000100;
    0x00012d6c move a3, v0                       |     a3 = v0;
    0x00012d70 lw v0, -0x7948(gp)                |     v0 = sym.getUserAgentString;
    0x00012d74 move t9, v0                       |     t9 = v0;
    0x00012d78 jalr t9                           |     t9 ();
    0x00012d7c nop                               |     
    0x00012d80 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00012d84 sw v0, 0x2c(fp)                   |     *(var_2ch) = v0;
    0x00012d88 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012d8c sb zero, 0x21d(v0)                |     *((v0 + 541)) = 0;
    0x00012d90 lw v0, 0x2c(fp)                   |     v0 = *(var_2ch);
                                                 |     if (v0 != 0) {
    0x00012d94 beqz v0, 0x12dd8                  |         
    0x00012d98 nop                               |         
    0x00012d9c lw v0, -0x7f44(gp)                |         v0 = *(gp);
    0x00012da0 lw v0, (v0)                       |         v0 = *(v0);
    0x00012da4 lw v1, 0x2c(fp)                   |         v1 = *(var_2ch);
    0x00012da8 sw v1, 0x10(sp)                   |         *(var_10h) = v1;
    0x00012dac addiu a0, zero, 4                 |         a0 = 4;
    0x00012db0 lw v1, -0x7fcc(gp)                |         v1 = *((gp - 8179));
                                                 |         /* str.CurlApiCallbacks */
    0x00012db4 addiu a1, v1, 0x327c              |         a1 = v1 + 0x327c;
    0x00012db8 lw v1, -0x7fcc(gp)                |         v1 = *((gp - 8179));
                                                 |         /* str._s__:_Failed_to_generate_user_agent_string_with_error_0x_08x. */
    0x00012dbc addiu a2, v1, 0x3290              |         a2 = v1 + 0x3290;
    0x00012dc0 lw v1, -0x7fcc(gp)                |         v1 = *((gp - 8179));
                                                 |         /* obj.__FUNCTION__.8919 */
    0x00012dc4 addiu a3, v1, 0x3bfc              |         a3 = v1 + 0x3bfc;
    0x00012dc8 move t9, v0                       |         t9 = v0;
    0x00012dcc jalr t9                           |         t9 ();
    0x00012dd0 nop                               |         
    0x00012dd4 lw gp, 0x20(fp)                   |         gp = *(var_20h);
                                                 |     }
    0x00012dd8 lw v0, 0x90(fp)                   |     v0 = *(arg_90h);
                                                 |     if (v0 != 0) {
    0x00012ddc beqz v0, 0x12df4                  |         
    0x00012de0 nop                               |         
    0x00012de4 lw v0, 0x90(fp)                   |         v0 = *(arg_90h);
    0x00012de8 lb v0, (v0)                       |         v0 = *(v0);
                                                 |         if (v0 != 0) {
    0x00012dec bnez v0, 0x12e54                  |             goto label_8;
                                                 |         }
    0x00012df0 nop                               |         
                                                 |     }
    0x00012df4 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012df8 addiu v0, v0, 0x21e               |     v0 += 0x21e;
    0x00012dfc lw v1, 0x50(fp)                   |     v1 = *(var_50h);
    0x00012e00 addiu v1, v1, 0x9c                |     v1 += 0x9c;
    0x00012e04 lw a0, -0x7fcc(gp)                |     a0 = *((gp - 8179));
                                                 |     /* esilref: 'kinesisvideo' */
    0x00012e08 addiu a0, a0, 0x32e8              |     a0 += 0x32e8;
    0x00012e0c sw a0, 0x10(sp)                   |     *(var_10h) = a0;
    0x00012e10 sw v1, 0x14(sp)                   |     *(var_14h) = v1;
    0x00012e14 lw v1, -0x7fcc(gp)                |     v1 = *((gp - 8179));
                                                 |     /* str..amazonaws.com */
    0x00012e18 addiu v1, v1, 0x32f8              |     v1 += 0x32f8;
    0x00012e1c sw v1, 0x18(sp)                   |     *(var_18h) = v1;
    0x00012e20 move a0, v0                       |     a0 = v0;
    0x00012e24 addiu a1, zero, 0x2710            |     a1 = 0x2710;
    0x00012e28 lw v0, -0x7fcc(gp)                |     v0 = *((gp - 8179));
                                                 |     /* str._s_s._s_s */
    0x00012e2c addiu a2, v0, 0x32d0              |     a2 = v0 + aav.0x000032d0;
    0x00012e30 lw v0, -0x7fcc(gp)                |     v0 = *((gp - 8179));
                                                 |     /* esilref: 'https://' */
    0x00012e34 addiu a3, v0, 0x32dc              |     a3 = v0 + 0x32dc;
    0x00012e38 lw v0, -0x7b44(gp)                |     v0 = sym.imp.snprintf;
    0x00012e3c move t9, v0                       |     t9 = v0;
    0x00012e40 jalr t9                           |     t9 ();
    0x00012e44 nop                               |     
    0x00012e48 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00012e4c b 0x12e7c                         |     goto label_9;
    0x00012e50 nop                               |     
                                                 | label_8:
    0x00012e54 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012e58 addiu v0, v0, 0x21e               |     v0 += 0x21e;
    0x00012e5c move a0, v0                       |     a0 = v0;
    0x00012e60 lw a1, 0x90(fp)                   |     a1 = *(arg_90h);
    0x00012e64 addiu a2, zero, 0x2710            |     a2 = 0x2710;
    0x00012e68 lw v0, -0x7c74(gp)                |     v0 = sym.imp.strncpy;
    0x00012e6c move t9, v0                       |     t9 = v0;
    0x00012e70 jalr t9                           |     t9 ();
    0x00012e74 nop                               |     
    0x00012e78 lw gp, 0x20(fp)                   |     gp = *(var_20h);
                                                 | label_9:
    0x00012e7c lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012e80 sb zero, 0x292e(v0)               |     *((v0 + 10542)) = 0;
    0x00012e84 lw v0, 0x94(fp)                   |     v0 = *(arg_94h);
                                                 |     if (v0 != 0) {
    0x00012e88 beqz v0, 0x12ec0                  |         
    0x00012e8c nop                               |         
    0x00012e90 lw v0, 0x50(fp)                   |         v0 = *(var_50h);
    0x00012e94 addiu v0, v0, 0x292f              |         v0 += 0x292f;
    0x00012e98 move a0, v0                       |         a0 = v0;
    0x00012e9c lw a1, 0x94(fp)                   |         a1 = *(arg_94h);
    0x00012ea0 addiu a2, zero, 0x1000            |         a2 = 0x1000;
    0x00012ea4 lw v0, -0x7c74(gp)                |         v0 = sym.imp.strncpy;
    0x00012ea8 move t9, v0                       |         t9 = v0;
    0x00012eac jalr t9                           |         t9 ();
    0x00012eb0 nop                               |         
    0x00012eb4 lw gp, 0x20(fp)                   |         gp = *(var_20h);
    0x00012eb8 b 0x12ec8                         |         goto label_10;
    0x00012ebc nop                               |         
                                                 |     }
    0x00012ec0 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012ec4 sb zero, 0x292f(v0)               |     *((v0 + 10543)) = 0;
                                                 | label_10:
    0x00012ec8 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012ecc addiu v0, v0, 0x3950              |     v0 += 0x3950;
    0x00012ed0 addiu a0, zero, 0x64              |     a0 = 0x64;
    0x00012ed4 addiu a1, zero, 2                 |     a1 = 2;
    0x00012ed8 move a2, v0                       |     a2 = v0;
    0x00012edc lw v0, -0x7440(gp)                |     v0 = sym.hashTableCreateWithParams;
    0x00012ee0 move t9, v0                       |     t9 = v0;
    0x00012ee4 jalr t9                           |     t9 ();
    0x00012ee8 nop                               |     
    0x00012eec lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00012ef0 sw v0, 0x30(fp)                   |     *(var_30h) = v0;
    0x00012ef4 lw v0, 0x30(fp)                   |     v0 = *(var_30h);
                                                 |     if (v0 != 0) {
    0x00012ef8 beqz v0, 0x12f10                  |         
    0x00012efc nop                               |         
    0x00012f00 lw v0, 0x30(fp)                   |         v0 = *(var_30h);
    0x00012f04 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00012f08 b 0x13370                         |         goto label_1;
    0x00012f0c nop                               |         
                                                 |     }
    0x00012f10 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012f14 addiu v0, v0, 0x3940              |     v0 += aav.0x00003940;
    0x00012f18 move a0, v0                       |     a0 = v0;
    0x00012f1c lw v0, -0x79a0(gp)                |     v0 = sym.doubleListCreate;
    0x00012f20 move t9, v0                       |     t9 = v0;
    0x00012f24 jalr t9                           |     t9 ();
    0x00012f28 nop                               |     
    0x00012f2c lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00012f30 sw v0, 0x34(fp)                   |     *(var_34h) = v0;
    0x00012f34 lw v0, 0x34(fp)                   |     v0 = *(var_34h);
                                                 |     if (v0 != 0) {
    0x00012f38 beqz v0, 0x12f50                  |         
    0x00012f3c nop                               |         
    0x00012f40 lw v0, 0x34(fp)                   |         v0 = *(var_34h);
    0x00012f44 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00012f48 b 0x13370                         |         goto label_1;
    0x00012f4c nop                               |         
                                                 |     }
    0x00012f50 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012f54 addiu v0, v0, 0x3960              |     v0 += 0x3960;
    0x00012f58 addiu a0, zero, 0x64              |     a0 = 0x64;
    0x00012f5c addiu a1, zero, 2                 |     a1 = 2;
    0x00012f60 move a2, v0                       |     a2 = v0;
    0x00012f64 lw v0, -0x7440(gp)                |     v0 = sym.hashTableCreateWithParams;
    0x00012f68 move t9, v0                       |     t9 = v0;
    0x00012f6c jalr t9                           |     t9 ();
    0x00012f70 nop                               |     
    0x00012f74 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00012f78 sw v0, 0x38(fp)                   |     *(var_38h) = v0;
    0x00012f7c lw v0, 0x38(fp)                   |     v0 = *(var_38h);
                                                 |     if (v0 != 0) {
    0x00012f80 beqz v0, 0x12f98                  |         
    0x00012f84 nop                               |         
    0x00012f88 lw v0, 0x38(fp)                   |         v0 = *(var_38h);
    0x00012f8c sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00012f90 b 0x13370                         |         goto label_1;
    0x00012f94 nop                               |         
                                                 |     }
    0x00012f98 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00012f9c addiu v0, v0, 0x3984              |     v0 += 0x3984;
    0x00012fa0 addiu a0, zero, 0x64              |     a0 = 0x64;
    0x00012fa4 addiu a1, zero, 2                 |     a1 = 2;
    0x00012fa8 move a2, v0                       |     a2 = v0;
    0x00012fac lw v0, -0x7440(gp)                |     v0 = sym.hashTableCreateWithParams;
    0x00012fb0 move t9, v0                       |     t9 = v0;
    0x00012fb4 jalr t9                           |     t9 ();
    0x00012fb8 nop                               |     
    0x00012fbc lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00012fc0 sw v0, 0x3c(fp)                   |     *(var_3ch) = v0;
    0x00012fc4 lw v0, 0x3c(fp)                   |     v0 = *(var_3ch);
                                                 |     if (v0 != 0) {
    0x00012fc8 beqz v0, 0x12fe0                  |         
    0x00012fcc nop                               |         
    0x00012fd0 lw v0, 0x3c(fp)                   |         v0 = *(var_3ch);
    0x00012fd4 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00012fd8 b 0x13370                         |         goto label_1;
    0x00012fdc nop                               |         
                                                 |     }
    0x00012fe0 lw s4, 0x50(fp)                   |     s4 = *(var_50h);
    0x00012fe4 lw v0, 0x78(fp)                   |     v0 = *(arg_78h);
    0x00012fe8 lw a3, 0x18(v0)                   |     a3 = *((v0 + 6));
    0x00012fec lw v0, 0x78(fp)                   |     v0 = *(arg_78h);
    0x00012ff0 lw v1, 0xc(v0)                    |     v1 = *((v0 + 3));
    0x00012ff4 lw v0, 8(v0)                      |     v0 = *((v0 + 2));
    0x00012ff8 move a0, v0                       |     a0 = v0;
    0x00012ffc move a1, v1                       |     a1 = v1;
    0x00013000 addiu a2, zero, 1                 |     a2 = 1;
    0x00013004 move t9, a3                       |     t9 = a3;
    0x00013008 jalr t9                           |     t9 ();
    0x0001300c nop                               |     
    0x00013010 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00013014 sw v0, 0x3948(s4)                 |     *((s4 + 3666)) = v0;
    0x00013018 sw v1, 0x394c(s4)                 |     *((s4 + 3667)) = v1;
    0x0001301c lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013020 lw a0, 0x3948(v0)                 |     a0 = *((v0 + 3666));
    0x00013024 lw a1, 0x394c(v0)                 |     a1 = *((v0 + 3667));
    0x00013028 move v0, a0                       |     v0 = a0;
    0x0001302c or v0, v0, a1                     |     v0 |= a1;
                                                 |     if (v0 == 0) {
    0x00013030 bnez v0, 0x13048                  |         
    0x00013034 nop                               |         
    0x00013038 addiu v0, zero, 0xd               |         v0 = 0xd;
    0x0001303c sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00013040 b 0x13370                         |         goto label_1;
    0x00013044 nop                               |         
                                                 |     }
    0x00013048 lw s4, 0x50(fp)                   |     s4 = *(var_50h);
    0x0001304c lw v0, 0x78(fp)                   |     v0 = *(arg_78h);
    0x00013050 lw a3, 0x18(v0)                   |     a3 = *((v0 + 6));
    0x00013054 lw v0, 0x78(fp)                   |     v0 = *(arg_78h);
    0x00013058 lw v1, 0xc(v0)                    |     v1 = *((v0 + 3));
    0x0001305c lw v0, 8(v0)                      |     v0 = *((v0 + 2));
    0x00013060 move a0, v0                       |     a0 = v0;
    0x00013064 move a1, v1                       |     a1 = v1;
    0x00013068 addiu a2, zero, 1                 |     a2 = 1;
    0x0001306c move t9, a3                       |     t9 = a3;
    0x00013070 jalr t9                           |     t9 ();
    0x00013074 nop                               |     
    0x00013078 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x0001307c sw v0, 0x3958(s4)                 |     *((s4 + 3670)) = v0;
    0x00013080 sw v1, 0x395c(s4)                 |     *((s4 + 3671)) = v1;
    0x00013084 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013088 lw a0, 0x3958(v0)                 |     a0 = *((v0 + 3670));
    0x0001308c lw a1, 0x395c(v0)                 |     a1 = *((v0 + 3671));
    0x00013090 move v0, a0                       |     v0 = a0;
    0x00013094 or v0, v0, a1                     |     v0 |= a1;
                                                 |     if (v0 == 0) {
    0x00013098 bnez v0, 0x130b0                  |         
    0x0001309c nop                               |         
    0x000130a0 addiu v0, zero, 0xd               |         v0 = 0xd;
    0x000130a4 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x000130a8 b 0x13370                         |         goto label_1;
    0x000130ac nop                               |         
                                                 |     }
    0x000130b0 lw s4, 0x50(fp)                   |     s4 = *(var_50h);
    0x000130b4 lw v0, 0x78(fp)                   |     v0 = *(arg_78h);
    0x000130b8 lw a3, 0x18(v0)                   |     a3 = *((v0 + 6));
    0x000130bc lw v0, 0x78(fp)                   |     v0 = *(arg_78h);
    0x000130c0 lw v1, 0xc(v0)                    |     v1 = *((v0 + 3));
    0x000130c4 lw v0, 8(v0)                      |     v0 = *((v0 + 2));
    0x000130c8 move a0, v0                       |     a0 = v0;
    0x000130cc move a1, v1                       |     a1 = v1;
    0x000130d0 addiu a2, zero, 1                 |     a2 = 1;
    0x000130d4 move t9, a3                       |     t9 = a3;
    0x000130d8 jalr t9                           |     t9 ();
    0x000130dc nop                               |     
    0x000130e0 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x000130e4 sw v0, 0x3968(s4)                 |     *(s4) = v0;
    0x000130e8 sw v1, 0x396c(s4)                 |     *((s4 + 3675)) = v1;
    0x000130ec lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x000130f0 lw a0, 0x3968(v0)                 |     a0 = *(v0);
    0x000130f4 lw a1, 0x396c(v0)                 |     a1 = *((v0 + 3675));
    0x000130f8 move v0, a0                       |     v0 = a0;
    0x000130fc or v0, v0, a1                     |     v0 |= a1;
                                                 |     if (v0 == 0) {
    0x00013100 bnez v0, 0x13118                  |         
    0x00013104 nop                               |         
    0x00013108 addiu v0, zero, 0xd               |         v0 = 0xd;
    0x0001310c sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00013110 b 0x13370                         |         goto label_1;
    0x00013114 nop                               |         
                                                 |     }
    0x00013118 lw s4, 0x50(fp)                   |     s4 = *(var_50h);
    0x0001311c lw v0, 0x78(fp)                   |     v0 = *(arg_78h);
    0x00013120 lw a3, 0x18(v0)                   |     a3 = *((v0 + 6));
    0x00013124 lw v0, 0x78(fp)                   |     v0 = *(arg_78h);
    0x00013128 lw v1, 0xc(v0)                    |     v1 = *((v0 + 3));
    0x0001312c lw v0, 8(v0)                      |     v0 = *((v0 + 2));
    0x00013130 move a0, v0                       |     a0 = v0;
    0x00013134 move a1, v1                       |     a1 = v1;
    0x00013138 addiu a2, zero, 1                 |     a2 = 1;
    0x0001313c move t9, a3                       |     t9 = a3;
    0x00013140 jalr t9                           |     t9 ();
    0x00013144 nop                               |     
    0x00013148 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x0001314c sw v0, 0x3988(s4)                 |     *((s4 + 3682)) = v0;
    0x00013150 sw v1, 0x398c(s4)                 |     *(s4) = v1;
    0x00013154 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013158 lw a0, 0x3988(v0)                 |     a0 = *((v0 + 3682));
    0x0001315c lw a1, 0x398c(v0)                 |     a1 = *(v0);
    0x00013160 move v0, a0                       |     v0 = a0;
    0x00013164 or v0, v0, a1                     |     v0 |= a1;
                                                 |     if (v0 == 0) {
    0x00013168 bnez v0, 0x13180                  |         
    0x0001316c nop                               |         
    0x00013170 addiu v0, zero, 0xd               |         v0 = 0xd;
    0x00013174 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x00013178 b 0x13370                         |         goto label_1;
    0x0001317c nop                               |         
                                                 |     }
    0x00013180 addiu a0, zero, 0xd               |     a0 = 0xd;
    0x00013184 addiu a1, zero, 1                 |     a1 = 1;
    0x00013188 lw v0, -0x7dec(gp)                |     v0 = sym.imp.signal;
    0x0001318c move t9, v0                       |     t9 = v0;
    0x00013190 jalr t9                           |     t9 ();
    0x00013194 nop                               |     
    0x00013198 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x0001319c lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x000131a0 move a0, zero                     |     a0 = 0;
    0x000131a4 move a1, zero                     |     a1 = 0;
    0x000131a8 sw a0, 0x3990(v0)                 |     *((v0 + 3684)) = a0;
    0x000131ac sw a1, 0x3994(v0)                 |     *((v0 + 3685)) = a1;
    0x000131b0 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x000131b4 sw zero, 0x3998(v0)               |     *((v0 + 3686)) = 0;
    0x000131b8 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x000131bc sw zero, 0x399c(v0)               |     *((v0 + 3687)) = 0;
    0x000131c0 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x000131c4 sw zero, 0x39a0(v0)               |     *((v0 + 3688)) = 0;
    0x000131c8 addiu a0, zero, 3                 |     a0 = 3;
    0x000131cc lw v0, -0x7a40(gp)                |     v0 = sym.imp.curl_global_init;
    0x000131d0 move t9, v0                       |     t9 = v0;
    0x000131d4 jalr t9                           |     t9 ();
    0x000131d8 nop                               |     
    0x000131dc lw gp, 0x20(fp)                   |     gp = *(var_20h);
                                                 |     if (v0 != 0) {
    0x000131e0 beqz v0, 0x131fc                  |         
    0x000131e4 nop                               |         
    0x000131e8 lui v0, 0x1500                    |         v0 = 0x1500000e;
    0x000131ec ori v0, v0, 0xe                   |         
    0x000131f0 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x000131f4 b 0x13370                         |         goto label_1;
    0x000131f8 nop                               |         
                                                 |     }
    0x000131fc lw v0, -0x7b94(gp)                |     v0 = *(gp);
    0x00013200 lw v0, (v0)                       |     v0 = *(v0);
    0x00013204 lw v1, 0x50(fp)                   |     v1 = *(var_50h);
    0x00013208 addiu v1, v1, 0x98                |     v1 += 0x98;
    0x0001320c move a0, v1                       |     a0 = v1;
    0x00013210 move a1, zero                     |     a1 = 0;
    0x00013214 move t9, v0                       |     t9 = v0;
    0x00013218 jalr t9                           |     t9 ();
    0x0001321c nop                               |     
    0x00013220 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00013224 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013228 sw zero, 0x30(v0)                 |     *((v0 + 12)) = 0;
    0x0001322c lw v1, 0x50(fp)                   |     v1 = *(var_50h);
    0x00013230 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013234 move s2, v0                       |     s2 = v0;
    0x00013238 sra v0, v0, 0x1f                  |     v0 >>= 0x1f;
    0x0001323c move s3, v0                       |     s3 = v0;
    0x00013240 sw s2, 0x38(v1)                   |     *((v1 + 14)) = s2;
    0x00013244 sw s3, 0x3c(v1)                   |     *((v1 + 15)) = s3;
    0x00013248 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x0001324c lw v1, -0x79a4(gp)                |     v1 = sym.dataAvailableCurl;
    0x00013250 sw v1, 0x60(v0)                   |     *((v0 + 24)) = v1;
    0x00013254 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013258 lw v1, -0x76f0(gp)                |     v1 = sym.streamClosedCurl;
    0x0001325c sw v1, 0x68(v0)                   |     *((v0 + 26)) = v1;
    0x00013260 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013264 sw zero, 0x58(v0)                 |     *((v0 + 22)) = 0;
    0x00013268 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x0001326c lw v1, -0x7914(gp)                |     v1 = sym.fragmentAckReceivedCurl;
    0x00013270 sw v1, 0x5c(v0)                   |     *((v0 + 23)) = v1;
    0x00013274 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013278 lw v1, -0x7b74(gp)                |     v1 = sym.shutdownStreamCurl;
    0x0001327c sw v1, 0x6c(v0)                   |     *((v0 + 27)) = v1;
    0x00013280 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013284 sw zero, 0x78(v0)                 |     *((v0 + 30)) = 0;
    0x00013288 lw v1, 0x50(fp)                   |     v1 = *(var_50h);
    0x0001328c lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013290 move s0, v0                       |     s0 = v0;
    0x00013294 sra v0, v0, 0x1f                  |     v0 >>= 0x1f;
    0x00013298 move s1, v0                       |     s1 = v0;
    0x0001329c sw s0, 0x80(v1)                   |     *((v1 + 32)) = s0;
    0x000132a0 sw s1, 0x84(v1)                   |     *((v1 + 33)) = s1;
    0x000132a4 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x000132a8 lw v1, -0x7a1c(gp)                |     v1 = sym.clientShutdownCurl;
    0x000132ac sw v1, 0x90(v0)                   |     *((v0 + 36)) = v1;
    0x000132b0 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x000132b4 lw a0, 0x78(fp)                   |     a0 = *(arg_78h);
    0x000132b8 move a1, v0                       |     a1 = v0;
    0x000132bc lw v0, -0x7ca4(gp)                |     v0 = sym.addApiCallbacks;
    0x000132c0 move t9, v0                       |     t9 = v0;
    0x000132c4 jalr t9                           |     t9 ();
    0x000132c8 nop                               |     
    0x000132cc lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x000132d0 sw v0, 0x40(fp)                   |     *(var_40h) = v0;
    0x000132d4 lw v0, 0x40(fp)                   |     v0 = *(var_40h);
                                                 |     if (v0 != 0) {
    0x000132d8 beqz v0, 0x132f0                  |         
    0x000132dc nop                               |         
    0x000132e0 lw v0, 0x40(fp)                   |         v0 = *(var_40h);
    0x000132e4 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x000132e8 b 0x13370                         |         goto label_1;
    0x000132ec nop                               |         
                                                 |     }
    0x000132f0 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x000132f4 addiu v0, v0, 0x30                |     v0 += 0x30;
    0x000132f8 lw a0, 0x78(fp)                   |     a0 = *(arg_78h);
    0x000132fc move a1, v0                       |     a1 = v0;
    0x00013300 lw v0, -0x75f4(gp)                |     v0 = sym.addStreamCallbacks;
    0x00013304 move t9, v0                       |     t9 = v0;
    0x00013308 jalr t9                           |     t9 ();
    0x0001330c nop                               |     
    0x00013310 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00013314 sw v0, 0x44(fp)                   |     *(var_44h) = v0;
    0x00013318 lw v0, 0x44(fp)                   |     v0 = *(var_44h);
                                                 |     if (v0 != 0) {
    0x0001331c beqz v0, 0x13334                  |         
    0x00013320 nop                               |         
    0x00013324 lw v0, 0x44(fp)                   |         v0 = *(var_44h);
    0x00013328 sw v0, 0x28(fp)                   |         *(var_28h) = v0;
    0x0001332c b 0x13370                         |         goto label_1;
    0x00013330 nop                               |         
                                                 |     }
    0x00013334 lw v0, 0x50(fp)                   |     v0 = *(var_50h);
    0x00013338 addiu v0, v0, 0x78                |     v0 += 0x78;
    0x0001333c lw a0, 0x78(fp)                   |     a0 = *(arg_78h);
    0x00013340 move a1, v0                       |     a1 = v0;
    0x00013344 lw v0, -0x74d8(gp)                |     v0 = sym.addProducerCallbacks;
    0x00013348 move t9, v0                       |     t9 = v0;
    0x0001334c jalr t9                           |     t9 ();
    0x00013350 nop                               |     
    0x00013354 lw gp, 0x20(fp)                   |     gp = *(var_20h);
    0x00013358 sw v0, 0x48(fp)                   |     *(var_48h) = v0;
    0x0001335c lw v0, 0x48(fp)                   |     v0 = *(var_48h);
                                                 |     if (v0 != 0) {
    0x00013360 beqz v0, 0x13370                  |         
    0x00013364 nop                               |         
    0x00013368 lw v0, 0x48(fp)                   |         v0 = *(var_48h);
    0x0001336c sw v0, 0x28(fp)                   |         *(var_28h) = v0;
                                                 |     }
                                                 | label_1:
    0x00013370 lw v0, 0x28(fp)                   |     v0 = *(var_28h);
    0x00013374 sw v0, 0x4c(fp)                   |     *(var_4ch) = v0;
    0x00013378 lw v0, 0x4c(fp)                   |     v0 = *(var_4ch);
                                                 |     if (v0 != 0) {
    0x0001337c beqz v0, 0x133c0                  |         
    0x00013380 nop                               |         
    0x00013384 lw v0, -0x7f44(gp)                |         v0 = *(gp);
    0x00013388 lw v0, (v0)                       |         v0 = *(v0);
    0x0001338c lw v1, 0x4c(fp)                   |         v1 = *(var_4ch);
    0x00013390 sw v1, 0x10(sp)                   |         *(var_10h) = v1;
    0x00013394 addiu a0, zero, 5                 |         a0 = 5;
    0x00013398 lw v1, -0x7fcc(gp)                |         v1 = *((gp - 8179));
                                                 |         /* str.CurlApiCallbacks */
    0x0001339c addiu a1, v1, 0x327c              |         a1 = v1 + 0x327c;
    0x000133a0 lw v1, -0x7fcc(gp)                |         v1 = *((gp - 8179));
                                                 |         /* esilref: '&s(): operation returned status code: 0x&x' */
    0x000133a4 addiu a2, v1, 0x3308              |         a2 = v1 + 0x3308;
    0x000133a8 lw v1, -0x7fcc(gp)                |         v1 = *((gp - 8179));
                                                 |         /* obj.__FUNCTION__.8919 */
    0x000133ac addiu a3, v1, 0x3bfc              |         a3 = v1 + 0x3bfc;
    0x000133b0 move t9, v0                       |         t9 = v0;
    0x000133b4 jalr t9                           |         t9 ();
    0x000133b8 nop                               |         
    0x000133bc lw gp, 0x20(fp)                   |         gp = *(var_20h);
                                                 |     }
    0x000133c0 lw v0, 0x28(fp)                   |     v0 = *(var_28h);
                                                 |     if (v0 != 0) {
    0x000133c4 beqz v0, 0x133ec                  |         
    0x000133c8 nop                               |         
    0x000133cc addiu v0, fp, 0x50                |         v0 = fp + 0x50;
    0x000133d0 move a0, v0                       |         a0 = v0;
    0x000133d4 lw v0, -0x7524(gp)                |         v0 = sym.freeCurlApiCallbacks;
    0x000133d8 move t9, v0                       |         t9 = v0;
    0x000133dc jalr t9                           |         t9 ();
    0x000133e0 nop                               |         
    0x000133e4 lw gp, 0x20(fp)                   |         gp = *(var_20h);
    0x000133e8 sw zero, 0x50(fp)                 |         *(var_50h) = 0;
                                                 |     }
    0x000133ec lw v0, 0xa0(fp)                   |     v0 = *(arg_a0h);
                                                 |     if (v0 != 0) {
    0x000133f0 beqz v0, 0x13404                  |         
    0x000133f4 nop                               |         
    0x000133f8 lw v1, 0x50(fp)                   |         v1 = *(var_50h);
    0x000133fc lw v0, 0xa0(fp)                   |         v0 = *(arg_a0h);
    0x00013400 sw v1, (v0)                       |         *(v0) = v1;
                                                 |     }
    0x00013404 lw v0, 0x28(fp)                   |     v0 = *(var_28h);
    0x00013408 move sp, fp                       |     
    0x0001340c lw ra, 0x74(sp)                   |     ra = *(var_74h);
    0x00013410 lw fp, 0x70(sp)                   |     fp = *(var_70h);
    0x00013414 lw s5, 0x6c(sp)                   |     s5 = *(var_6ch);
    0x00013418 lw s4, 0x68(sp)                   |     s4 = *(var_68h);
    0x0001341c lw s3, 0x64(sp)                   |     s3 = *(var_64h);
    0x00013420 lw s2, 0x60(sp)                   |     s2 = *(var_60h);
    0x00013424 lw s1, 0x5c(sp)                   |     s1 = *(var_5ch);
    0x00013428 lw s0, 0x58(sp)                   |     s0 = *(var_58h);
    0x0001342c addiu sp, sp, 0x78                |     
    0x00013430 jr ra                             |     return v0;
    0x00013434 nop                               |     
                                                 | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0x1fb50 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.createCurlRequest ()         | void createCurlRequest () {
    0x0001fb50 lui gp, 7                     |     
    0x0001fb54 addiu gp, gp, 0x1580          |     
    0x0001fb58 addu gp, gp, t9               |     gp += t9;
    0x0001fb5c addiu sp, sp, -0x50           |     
    0x0001fb60 sw ra, 0x4c(sp)               |     *(var_4ch) = ra;
    0x0001fb64 sw fp, 0x48(sp)               |     *(var_48h) = fp;
    0x0001fb68 sw s0, 0x44(sp)               |     *(var_44h) = s0;
    0x0001fb6c move fp, sp                   |     fp = sp;
    0x0001fb70 sw gp, 0x10(sp)               |     *(var_10h) = gp;
    0x0001fb74 sw a0, 0x50(fp)               |     *(arg_50h) = a0;
    0x0001fb78 sw a1, 0x54(fp)               |     *(arg_54h) = a1;
    0x0001fb7c sw a2, 0x58(fp)               |     *(arg_58h) = a2;
    0x0001fb80 sw zero, 0x18(fp)             |     *(var_18h) = 0;
    0x0001fb84 sw zero, 0x34(fp)             |     *(var_34h) = 0;
    0x0001fb88 addiu v0, zero, 0x5920        |     v0 = 0x5920;
    0x0001fb8c sw v0, 0x1c(fp)               |     *(var_1ch) = v0;
    0x0001fb90 sw zero, 0x20(fp)             |     *(var_20h) = 0;
    0x0001fb94 lw v0, 0x9c(fp)               |     v0 = *(arg_9ch);
                                             |     if (v0 != 0) {
    0x0001fb98 beqz v0, 0x1fbc8              |         
    0x0001fb9c nop                           |         
    0x0001fba0 lw v0, 0x54(fp)               |         v0 = *(arg_54h);
                                             |         if (v0 == 0) {
    0x0001fba4 beqz v0, 0x1fbc8              |             goto label_0;
                                             |         }
    0x0001fba8 nop                           |         
    0x0001fbac lw v0, 0x98(fp)               |         v0 = *(arg_98h);
                                             |         if (v0 == 0) {
    0x0001fbb0 beqz v0, 0x1fbc8              |             goto label_0;
                                             |         }
    0x0001fbb4 nop                           |         
    0x0001fbb8 lw v0, 0x98(fp)               |         v0 = *(arg_98h);
    0x0001fbbc lw v0, 0x3930(v0)             |         v0 = *((v0 + 3660));
                                             |         if (v0 != 0) {
    0x0001fbc0 bnez v0, 0x1fbd8              |             goto label_1;
                                             |         }
    0x0001fbc4 nop                           |         
                                             |     }
                                             | label_0:
    0x0001fbc8 addiu v0, zero, 1             |     v0 = 1;
    0x0001fbcc sw v0, 0x18(fp)               |     *(var_18h) = v0;
    0x0001fbd0 b 0x1ffd8                     |     goto label_2;
    0x0001fbd4 nop                           |     
                                             | label_1:
    0x0001fbd8 lw v0, 0x98(fp)               |     v0 = *(arg_98h);
    0x0001fbdc lw v0, 0x3930(v0)             |     v0 = *((v0 + 3660));
    0x0001fbe0 sw v0, 0x24(fp)               |     *(var_24h) = v0;
    0x0001fbe4 lw v0, 0x58(fp)               |     v0 = *(arg_58h);
                                             |     if (v0 != 0) {
    0x0001fbe8 beqz v0, 0x1fc1c              |         
    0x0001fbec nop                           |         
    0x0001fbf0 lw a0, 0x58(fp)               |         a0 = *(arg_58h);
    0x0001fbf4 lw v0, -0x7dfc(gp)            |         v0 = sym.imp.strlen;
    0x0001fbf8 move t9, v0                   |         t9 = v0;
    0x0001fbfc jalr t9                       |         t9 ();
    0x0001fc00 nop                           |         
    0x0001fc04 lw gp, 0x10(fp)               |         gp = *(var_10h);
    0x0001fc08 sw v0, 0x20(fp)               |         *(var_20h) = v0;
    0x0001fc0c lw v1, 0x1c(fp)               |         v1 = *(var_1ch);
    0x0001fc10 lw v0, 0x20(fp)               |         v0 = *(var_20h);
    0x0001fc14 addu v0, v1, v0               |         v0 = v1 + v0;
    0x0001fc18 sw v0, 0x1c(fp)               |         *(var_1ch) = v0;
                                             |     }
    0x0001fc1c lw v0, -0x7620(gp)            |     v0 = *(gp);
    0x0001fc20 lw v0, (v0)                   |     v0 = *(v0);
    0x0001fc24 addiu a0, zero, 1             |     a0 = 1;
    0x0001fc28 lw a1, 0x1c(fp)               |     a1 = *(var_1ch);
    0x0001fc2c move t9, v0                   |     t9 = v0;
    0x0001fc30 jalr t9                       |     t9 ();
    0x0001fc34 nop                           |     
    0x0001fc38 lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001fc3c sw v0, 0x34(fp)               |     *(var_34h) = v0;
    0x0001fc40 lw v0, 0x34(fp)               |     v0 = *(var_34h);
                                             |     if (v0 == 0) {
    0x0001fc44 bnez v0, 0x1fc5c              |         
    0x0001fc48 nop                           |         
    0x0001fc4c addiu v0, zero, 4             |         v0 = 4;
    0x0001fc50 sw v0, 0x18(fp)               |         *(var_18h) = v0;
    0x0001fc54 b 0x1ffd8                     |         goto label_2;
    0x0001fc58 nop                           |         
                                             |     }
    0x0001fc5c lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fc60 lw v1, 0x94(fp)               |     v1 = *(arg_94h);
    0x0001fc64 sw v1, 0x57e8(v0)             |     *((v0 + 5626)) = v1;
    0x0001fc68 lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fc6c lw v1, 0x50(fp)               |     v1 = *(arg_50h);
    0x0001fc70 sw v1, 0xc(v0)                |     *((v0 + 3)) = v1;
    0x0001fc74 lw a0, 0x34(fp)               |     a0 = *(var_34h);
    0x0001fc78 lw v0, 0x60(fp)               |     v0 = *(arg_60h);
    0x0001fc7c lw v1, 0x64(fp)               |     v1 = *(arg_64h);
    0x0001fc80 sw v0, 0x58f8(a0)             |     *((a0 + 5694)) = v0;
    0x0001fc84 sw v1, 0x58fc(a0)             |     *((a0 + 5695)) = v1;
    0x0001fc88 lw a0, 0x34(fp)               |     a0 = *(var_34h);
    0x0001fc8c lw v0, 0x80(fp)               |     v0 = *(arg_80h);
    0x0001fc90 lw v1, 0x84(fp)               |     v1 = *(arg_84h);
    0x0001fc94 sw v0, 0x57c0(a0)             |     *((a0 + 5616)) = v0;
    0x0001fc98 sw v1, 0x57c4(a0)             |     *((a0 + 5617)) = v1;
    0x0001fc9c lw a0, 0x34(fp)               |     a0 = *(var_34h);
    0x0001fca0 lw v0, 0x78(fp)               |     v0 = *(arg_78h);
    0x0001fca4 lw v1, 0x7c(fp)               |     v1 = *(arg_7ch);
    0x0001fca8 sw v0, 0x57c8(a0)             |     *((a0 + 5618)) = v0;
    0x0001fcac sw v1, 0x57cc(a0)             |     *((a0 + 5619)) = v1;
    0x0001fcb0 lw a0, 0x34(fp)               |     a0 = *(var_34h);
    0x0001fcb4 lw v0, 0x88(fp)               |     v0 = *(arg_88h);
    0x0001fcb8 lw v1, 0x8c(fp)               |     v1 = *(arg_8ch);
    0x0001fcbc sw v0, 0x57d0(a0)             |     *((a0 + 5620)) = v0;
    0x0001fcc0 sw v1, 0x57d4(a0)             |     *((a0 + 5621)) = v1;
    0x0001fcc4 lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fcc8 lw v1, 0x98(fp)               |     v1 = *(arg_98h);
    0x0001fccc sw v1, 0x5900(v0)             |     *((v0 + 5696)) = v1;
    0x0001fcd0 lw v0, -0x7b94(gp)            |     v0 = *(gp);
    0x0001fcd4 lw v0, (v0)                   |     v0 = *(v0);
    0x0001fcd8 lw v1, 0x34(fp)               |     v1 = *(var_34h);
    0x0001fcdc addiu v1, v1, 8               |     v1 += 8;
    0x0001fce0 move a0, v1                   |     a0 = v1;
    0x0001fce4 move a1, zero                 |     a1 = 0;
    0x0001fce8 move t9, v0                   |     t9 = v0;
    0x0001fcec jalr t9                       |     t9 ();
    0x0001fcf0 nop                           |     
    0x0001fcf4 lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001fcf8 lw v0, -0x7b94(gp)            |     v0 = *(gp);
    0x0001fcfc lw v0, (v0)                   |     v0 = *(v0);
    0x0001fd00 lw v1, 0x34(fp)               |     v1 = *(var_34h);
    0x0001fd04 move a0, v1                   |     a0 = v1;
    0x0001fd08 move a1, zero                 |     a1 = 0;
    0x0001fd0c move t9, v0                   |     t9 = v0;
    0x0001fd10 jalr t9                       |     t9 ();
    0x0001fd14 nop                           |     
    0x0001fd18 lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001fd1c lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fd20 move a0, zero                 |     a0 = 0;
    0x0001fd24 move a1, zero                 |     a1 = 0;
    0x0001fd28 sw a0, 0x5910(v0)             |     *((v0 + 5700)) = a0;
    0x0001fd2c sw a1, 0x5914(v0)             |     *((v0 + 5701)) = a1;
    0x0001fd30 lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fd34 lw v1, 0x20(fp)               |     v1 = *(var_20h);
    0x0001fd38 sw v1, 0x14(v0)               |     *((v0 + 5)) = v1;
    0x0001fd3c lw a0, 0x34(fp)               |     a0 = *(var_34h);
    0x0001fd40 lw v0, 0x70(fp)               |     v0 = *(arg_70h);
    0x0001fd44 lw v1, 0x74(fp)               |     v1 = *(arg_74h);
    0x0001fd48 sw v0, 0x57b8(a0)             |     *((a0 + 5614)) = v0;
    0x0001fd4c sw v1, 0x57bc(a0)             |     *((a0 + 5615)) = v1;
    0x0001fd50 lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fd54 addiu v0, v0, 0x5730          |     v0 += 0x5730;
    0x0001fd58 move a0, v0                   |     a0 = v0;
    0x0001fd5c lw a1, 0x68(fp)               |     a1 = *(arg_68h);
    0x0001fd60 addiu a2, zero, 0x80          |     a2 = 0x80;
    0x0001fd64 lw v0, -0x7c74(gp)            |     v0 = sym.imp.strncpy;
    0x0001fd68 move t9, v0                   |     t9 = v0;
    0x0001fd6c jalr t9                       |     t9 ();
    0x0001fd70 nop                           |     
    0x0001fd74 lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001fd78 lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fd7c addiu v0, v0, 0x18            |     v0 += 0x18;
    0x0001fd80 move a0, v0                   |     a0 = v0;
    0x0001fd84 lw a1, 0x54(fp)               |     a1 = *(arg_54h);
    0x0001fd88 addiu a2, zero, 0x2710        |     a2 = 0x2710;
    0x0001fd8c lw v0, -0x7c74(gp)            |     v0 = sym.imp.strncpy;
    0x0001fd90 move t9, v0                   |     t9 = v0;
    0x0001fd94 jalr t9                       |     t9 ();
    0x0001fd98 nop                           |     
    0x0001fd9c lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001fda0 lw v0, 0x90(fp)               |     v0 = *(arg_90h);
                                             |     if (v0 != 0) {
    0x0001fda4 beqz v0, 0x1fdd4              |         
    0x0001fda8 nop                           |         
    0x0001fdac lw v0, 0x34(fp)               |         v0 = *(var_34h);
    0x0001fdb0 addiu v0, v0, 0x2729          |         v0 += 0x2729;
    0x0001fdb4 move a0, v0                   |         a0 = v0;
    0x0001fdb8 lw a1, 0x90(fp)               |         a1 = *(arg_90h);
    0x0001fdbc addiu a2, zero, 0x1000        |         a2 = 0x1000;
    0x0001fdc0 lw v0, -0x7c74(gp)            |         v0 = sym.imp.strncpy;
    0x0001fdc4 move t9, v0                   |         t9 = v0;
    0x0001fdc8 jalr t9                       |         t9 ();
    0x0001fdcc nop                           |         
    0x0001fdd0 lw gp, 0x10(fp)               |         gp = *(var_10h);
                                             |     }
    0x0001fdd4 lw v0, 0x58(fp)               |     v0 = *(arg_58h);
                                             |     if (v0 != 0) {
    0x0001fdd8 beqz v0, 0x1fe28              |         
    0x0001fddc nop                           |         
    0x0001fde0 lw v0, 0x34(fp)               |         v0 = *(var_34h);
    0x0001fde4 lw v1, 0x34(fp)               |         v1 = *(var_34h);
    0x0001fde8 addiu v1, v1, 0x5920          |         v1 += 0x5920;
    0x0001fdec sw v1, 0x10(v0)               |         *((v0 + 4)) = v1;
    0x0001fdf0 lw v0, 0x34(fp)               |         v0 = *(var_34h);
    0x0001fdf4 sw zero, 0x58f4(v0)           |         *((v0 + 5693)) = 0;
    0x0001fdf8 lw v0, 0x34(fp)               |         v0 = *(var_34h);
    0x0001fdfc lw v0, 0x10(v0)               |         v0 = *((v0 + 4));
    0x0001fe00 move a0, v0                   |         a0 = v0;
    0x0001fe04 lw a1, 0x58(fp)               |         a1 = *(arg_58h);
    0x0001fe08 lw a2, 0x20(fp)               |         a2 = *(var_20h);
    0x0001fe0c lw v0, -0x760c(gp)            |         v0 = sym.imp.memcpy;
    0x0001fe10 move t9, v0                   |         t9 = v0;
    0x0001fe14 jalr t9                       |         t9 ();
    0x0001fe18 nop                           |         
    0x0001fe1c lw gp, 0x10(fp)               |         gp = *(var_10h);
    0x0001fe20 b 0x1fe7c                     |         goto label_3;
    0x0001fe24 nop                           |         
                                             |     }
    0x0001fe28 lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fe2c addiu v1, zero, 1             |     v1 = 1;
    0x0001fe30 sw v1, 0x58f4(v0)             |     *((v0 + 5693)) = v1;
    0x0001fe34 lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fe38 sw zero, 0x10(v0)             |     *((v0 + 4)) = 0;
    0x0001fe3c lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fe40 lw v1, 0x98(fp)               |     v1 = *(arg_98h);
    0x0001fe44 lw a0, 0x3970(v1)             |     a0 = *((v1 + 3676));
    0x0001fe48 lw a1, 0x3974(v1)             |     a1 = *((v1 + 3677));
    0x0001fe4c sw a0, 0x5918(v0)             |     *((v0 + 5702)) = a0;
    0x0001fe50 sw a1, 0x591c(v0)             |     *((v0 + 5703)) = a1;
    0x0001fe54 addiu a2, zero, 1             |     a2 = 1;
    0x0001fe58 move a3, zero                 |     a3 = 0;
    0x0001fe5c addu v0, a0, a2               |     v0 = a0 + a2;
    0x0001fe60 sltu t0, v0, a0               |     t0 = (v0 < a0) ? 1 : 0;
    0x0001fe64 addu v1, a1, a3               |     v1 = a1 + a3;
    0x0001fe68 addu a0, t0, v1               |     a0 = t0 + v1;
    0x0001fe6c move v1, a0                   |     v1 = a0;
    0x0001fe70 lw a0, 0x98(fp)               |     a0 = *(arg_98h);
    0x0001fe74 sw v0, 0x3970(a0)             |     *((a0 + 3676)) = v0;
    0x0001fe78 sw v1, 0x3974(a0)             |     *((a0 + 3677)) = v1;
                                             | label_3:
    0x0001fe7c lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fe80 addiu v0, v0, 0x57ec          |     v0 += 0x57ec;
    0x0001fe84 move a0, v0                   |     a0 = v0;
    0x0001fe88 lw v0, -0x7708(gp)            |     v0 = sym.singleListCreate;
    0x0001fe8c move t9, v0                   |     t9 = v0;
    0x0001fe90 jalr t9                       |     t9 ();
    0x0001fe94 nop                           |     
    0x0001fe98 lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001fe9c sw v0, 0x28(fp)               |     *(var_28h) = v0;
    0x0001fea0 lw v0, 0x28(fp)               |     v0 = *(var_28h);
                                             |     if (v0 != 0) {
    0x0001fea4 beqz v0, 0x1febc              |         
    0x0001fea8 nop                           |         
    0x0001feac lw v0, 0x28(fp)               |         v0 = *(var_28h);
    0x0001feb0 sw v0, 0x18(fp)               |         *(var_18h) = v0;
    0x0001feb4 b 0x1ffd8                     |         goto label_2;
    0x0001feb8 nop                           |         
                                             |     }
    0x0001febc lw s0, 0x34(fp)               |     s0 = *(var_34h);
    0x0001fec0 lw v0, 0x24(fp)               |     v0 = *(var_24h);
    0x0001fec4 lw a3, 0x18(v0)               |     a3 = *((v0 + 6));
    0x0001fec8 lw v0, 0x24(fp)               |     v0 = *(var_24h);
    0x0001fecc lw v1, 0xc(v0)                |     v1 = *((v0 + 3));
    0x0001fed0 lw v0, 8(v0)                  |     v0 = *((v0 + 2));
    0x0001fed4 move a0, v0                   |     a0 = v0;
    0x0001fed8 move a1, v1                   |     a1 = v1;
    0x0001fedc move a2, zero                 |     a2 = 0;
    0x0001fee0 move t9, a3                   |     t9 = a3;
    0x0001fee4 jalr t9                       |     t9 ();
    0x0001fee8 nop                           |     
    0x0001feec lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001fef0 sw v0, 0x5908(s0)             |     *((s0 + 5698)) = v0;
    0x0001fef4 sw v1, 0x590c(s0)             |     *((s0 + 5699)) = v1;
    0x0001fef8 lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001fefc lw a0, 0x5908(v0)             |     a0 = *((v0 + 5698));
    0x0001ff00 lw a1, 0x590c(v0)             |     a1 = *((v0 + 5699));
    0x0001ff04 move v0, a0                   |     v0 = a0;
    0x0001ff08 or v0, v0, a1                 |     v0 |= a1;
                                             |     if (v0 == 0) {
    0x0001ff0c bnez v0, 0x1ff24              |         
    0x0001ff10 nop                           |         
    0x0001ff14 addiu v0, zero, 0xd           |         v0 = 0xd;
    0x0001ff18 sw v0, 0x18(fp)               |         *(var_18h) = v0;
    0x0001ff1c b 0x1ffd8                     |         goto label_2;
    0x0001ff20 nop                           |         
                                             |     }
    0x0001ff24 addiu v0, fp, 0x38            |     v0 = fp + 0x38;
    0x0001ff28 lw a0, 0x60(fp)               |     a0 = *(arg_60h);
    0x0001ff2c lw a1, 0x64(fp)               |     a1 = *(arg_64h);
    0x0001ff30 move a2, v0                   |     a2 = v0;
    0x0001ff34 lw v0, -0x7a64(gp)            |     v0 = sym.kinesisVideoStreamGetStreamInfo;
    0x0001ff38 move t9, v0                   |     t9 = v0;
    0x0001ff3c jalr t9                       |     t9 ();
    0x0001ff40 nop                           |     
    0x0001ff44 lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001ff48 sw v0, 0x2c(fp)               |     *(var_2ch) = v0;
    0x0001ff4c lw v0, 0x2c(fp)               |     v0 = *(var_2ch);
                                             |     if (v0 != 0) {
    0x0001ff50 beqz v0, 0x1ff68              |         
    0x0001ff54 nop                           |         
    0x0001ff58 lw v0, 0x2c(fp)               |         v0 = *(var_2ch);
    0x0001ff5c sw v0, 0x18(fp)               |         *(var_18h) = v0;
    0x0001ff60 b 0x1ffd8                     |         goto label_2;
    0x0001ff64 nop                           |         
                                             |     }
    0x0001ff68 lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001ff6c addiu v1, v0, 0x57f0          |     v1 = v0 + 0x57f0;
    0x0001ff70 lw v0, 0x38(fp)               |     v0 = *(var_38h);
    0x0001ff74 addiu v0, v0, 4               |     v0 += 4;
    0x0001ff78 move a0, v1                   |     a0 = v1;
    0x0001ff7c move a1, v0                   |     a1 = v0;
    0x0001ff80 addiu a2, zero, 0x100         |     a2 = aav.0x00000100;
    0x0001ff84 lw v0, -0x7c74(gp)            |     v0 = sym.imp.strncpy;
    0x0001ff88 move t9, v0                   |     t9 = v0;
    0x0001ff8c jalr t9                       |     t9 ();
    0x0001ff90 nop                           |     
    0x0001ff94 lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001ff98 lw v1, 0x34(fp)               |     v1 = *(var_34h);
    0x0001ff9c lw v0, 0x34(fp)               |     v0 = *(var_34h);
    0x0001ffa0 addiu v0, v0, 0x5904          |     v0 += 0x5904;
    0x0001ffa4 move a0, v1                   |     a0 = v1;
    0x0001ffa8 move a1, v0                   |     a1 = v0;
    0x0001ffac lw v0, -0x758c(gp)            |     v0 = sym.createCurlResponse;
    0x0001ffb0 move t9, v0                   |     t9 = v0;
    0x0001ffb4 jalr t9                       |     t9 ();
    0x0001ffb8 nop                           |     
    0x0001ffbc lw gp, 0x10(fp)               |     gp = *(var_10h);
    0x0001ffc0 sw v0, 0x30(fp)               |     *(var_30h) = v0;
    0x0001ffc4 lw v0, 0x30(fp)               |     v0 = *(var_30h);
                                             |     if (v0 != 0) {
    0x0001ffc8 beqz v0, 0x1ffd8              |         
    0x0001ffcc nop                           |         
    0x0001ffd0 lw v0, 0x30(fp)               |         v0 = *(var_30h);
    0x0001ffd4 sw v0, 0x18(fp)               |         *(var_18h) = v0;
                                             |     }
                                             | label_2:
    0x0001ffd8 lw v0, 0x18(fp)               |     v0 = *(var_18h);
                                             |     if (v0 != 0) {
    0x0001ffdc beqz v0, 0x20004              |         
    0x0001ffe0 nop                           |         
    0x0001ffe4 addiu v0, fp, 0x34            |         v0 = fp + 0x34;
    0x0001ffe8 move a0, v0                   |         a0 = v0;
    0x0001ffec lw v0, -0x7858(gp)            |         v0 = sym.freeCurlRequest;
    0x0001fff0 move t9, v0                   |         t9 = v0;
    0x0001fff4 jalr t9                       |         t9 ();
    0x0001fff8 nop                           |         
    0x0001fffc lw gp, 0x10(fp)               |         gp = *(var_10h);
    0x00020000 sw zero, 0x34(fp)             |         *(var_34h) = 0;
                                             |     }
    0x00020004 lw v0, 0x9c(fp)               |     v0 = *(arg_9ch);
                                             |     if (v0 != 0) {
    0x00020008 beqz v0, 0x2001c              |         
    0x0002000c nop                           |         
    0x00020010 lw v1, 0x34(fp)               |         v1 = *(var_34h);
    0x00020014 lw v0, 0x9c(fp)               |         v0 = *(arg_9ch);
    0x00020018 sw v1, (v0)                   |         *(v0) = v1;
                                             |     }
    0x0002001c lw v0, 0x18(fp)               |     v0 = *(var_18h);
    0x00020020 move sp, fp                   |     
    0x00020024 lw ra, 0x4c(sp)               |     ra = *(var_4ch);
    0x00020028 lw fp, 0x48(sp)               |     fp = *(var_48h);
    0x0002002c lw s0, 0x44(sp)               |     s0 = *(var_44h);
    0x00020030 addiu sp, sp, 0x50            |     
    0x00020034 jr ra                         |     return v0;
    0x00020038 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0x205a0 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.createCurlResponse ()        | void createCurlResponse () {
    0x000205a0 lui gp, 7                     |     
    0x000205a4 addiu gp, gp, 0xb30           |     
    0x000205a8 addu gp, gp, t9               |     gp += t9;
    0x000205ac addiu sp, sp, -0x58           |     
    0x000205b0 sw ra, 0x54(sp)               |     *(var_54h) = ra;
    0x000205b4 sw fp, 0x50(sp)               |     *(var_50h) = fp;
    0x000205b8 sw s0, 0x4c(sp)               |     *(var_4ch) = s0;
    0x000205bc move fp, sp                   |     fp = sp;
    0x000205c0 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x000205c4 sw a0, 0x58(fp)               |     *(arg_58h) = a0;
    0x000205c8 sw a1, 0x5c(fp)               |     *(arg_5ch) = a1;
    0x000205cc sw zero, 0x28(fp)             |     *(var_28h) = 0;
    0x000205d0 sw zero, 0x44(fp)             |     *(var_44h) = 0;
    0x000205d4 sw zero, 0x2c(fp)             |     *(var_2ch) = 0;
    0x000205d8 sw zero, 0x30(fp)             |     *(var_30h) = 0;
    0x000205dc sw zero, 0x34(fp)             |     *(var_34h) = 0;
    0x000205e0 lw v0, 0x5c(fp)               |     v0 = *(arg_5ch);
                                             |     if (v0 != 0) {
    0x000205e4 beqz v0, 0x2061c              |         
    0x000205e8 nop                           |         
    0x000205ec lw v0, 0x58(fp)               |         v0 = *(arg_58h);
                                             |         if (v0 == 0) {
    0x000205f0 beqz v0, 0x2061c              |             goto label_0;
                                             |         }
    0x000205f4 nop                           |         
    0x000205f8 lw v0, 0x58(fp)               |         v0 = *(arg_58h);
    0x000205fc lw v0, 0x5900(v0)             |         v0 = *((v0 + 5696));
                                             |         if (v0 == 0) {
    0x00020600 beqz v0, 0x2061c              |             goto label_0;
                                             |         }
    0x00020604 nop                           |         
    0x00020608 lw v0, 0x58(fp)               |         v0 = *(arg_58h);
    0x0002060c lw v0, 0x5900(v0)             |         v0 = *((v0 + 5696));
    0x00020610 lw v0, 0x3930(v0)             |         v0 = *((v0 + 3660));
                                             |         if (v0 != 0) {
    0x00020614 bnez v0, 0x2062c              |             goto label_1;
                                             |         }
    0x00020618 nop                           |         
                                             |     }
                                             | label_0:
    0x0002061c addiu v0, zero, 1             |     v0 = 1;
    0x00020620 sw v0, 0x28(fp)               |     *(var_28h) = v0;
    0x00020624 b 0x208cc                     |     goto label_2;
    0x00020628 nop                           |     
                                             | label_1:
    0x0002062c lw v0, 0x58(fp)               |     v0 = *(arg_58h);
    0x00020630 lw a0, 0x58f8(v0)             |     a0 = *((v0 + 5694));
    0x00020634 lw a1, 0x58fc(v0)             |     a1 = *((v0 + 5695));
    0x00020638 move v0, a0                   |     v0 = a0;
    0x0002063c or v0, v0, a1                 |     v0 |= a1;
                                             |     if (v0 == 0) {
    0x00020640 bnez v0, 0x20658              |         
    0x00020644 nop                           |         
    0x00020648 addiu v0, zero, 2             |         v0 = 2;
    0x0002064c sw v0, 0x28(fp)               |         *(var_28h) = v0;
    0x00020650 b 0x208cc                     |         goto label_2;
    0x00020654 nop                           |         
                                             |     }
    0x00020658 lw v0, 0x58(fp)               |     v0 = *(arg_58h);
    0x0002065c lw v0, 0x5900(v0)             |     v0 = *((v0 + 5696));
    0x00020660 sw v0, 0x2c(fp)               |     *(var_2ch) = v0;
    0x00020664 lw v0, 0x2c(fp)               |     v0 = *(var_2ch);
    0x00020668 lw v0, 0x3930(v0)             |     v0 = *((v0 + 3660));
    0x0002066c sw v0, 0x38(fp)               |     *(var_38h) = v0;
    0x00020670 lw v0, -0x7620(gp)            |     v0 = *(gp);
    0x00020674 lw v0, (v0)                   |     v0 = *(v0);
    0x00020678 addiu a0, zero, 1             |     a0 = 1;
    0x0002067c addiu a1, zero, 0x1148        |     a1 = 0x1148;
    0x00020680 move t9, v0                   |     t9 = v0;
    0x00020684 jalr t9                       |     t9 ();
    0x00020688 nop                           |     
    0x0002068c lw gp, 0x20(fp)               |     gp = *(var_20h);
    0x00020690 sw v0, 0x44(fp)               |     *(var_44h) = v0;
    0x00020694 lw v0, 0x44(fp)               |     v0 = *(var_44h);
                                             |     if (v0 == 0) {
    0x00020698 bnez v0, 0x206b0              |         
    0x0002069c nop                           |         
    0x000206a0 addiu v0, zero, 4             |         v0 = 4;
    0x000206a4 sw v0, 0x28(fp)               |         *(var_28h) = v0;
    0x000206a8 b 0x208cc                     |         goto label_2;
    0x000206ac nop                           |         
                                             |     }
    0x000206b0 lw v0, 0x44(fp)               |     v0 = *(var_44h);
    0x000206b4 sw zero, 0x12c(v0)            |     *(v0) = 0;
    0x000206b8 lw v0, 0x44(fp)               |     v0 = *(var_44h);
    0x000206bc sw zero, 0x130(v0)            |     *(v0) = 0;
    0x000206c0 lw v0, 0x44(fp)               |     v0 = *(var_44h);
    0x000206c4 addiu v1, zero, 1             |     v1 = 1;
    0x000206c8 sw v1, 0x134(v0)              |     *(v0) = v1;
    0x000206cc lw v0, 0x44(fp)               |     v0 = *(var_44h);
    0x000206d0 sw zero, 0x138(v0)            |     *(v0) = 0;
    0x000206d4 lw v0, 0x44(fp)               |     v0 = *(var_44h);
    0x000206d8 sb zero, 0x13c(v0)            |     *(v0) = 0;
    0x000206dc lw v0, -0x7fcc(gp)            |     v0 = *((gp - 8179));
                                             |     /* str.KVS_DEBUG_DUMP_DATA_FILE_DIR */
    0x000206e0 addiu a0, v0, 0x3db0          |     a0 = v0 + 0x3db0;
    0x000206e4 lw v0, -0x7780(gp)            |     v0 = sym.imp.getenv;
    0x000206e8 move t9, v0                   |     t9 = v0;
    0x000206ec jalr t9                       |     t9 ();
    0x000206f0 nop                           |     
    0x000206f4 lw gp, 0x20(fp)               |     gp = *(var_20h);
    0x000206f8 sw v0, 0x30(fp)               |     *(var_30h) = v0;
    0x000206fc lw v0, 0x30(fp)               |     v0 = *(var_30h);
                                             |     if (v0 != 0) {
    0x00020700 beqz v0, 0x207e8              |         
    0x00020704 nop                           |         
    0x00020708 lw v0, 0x58(fp)               |         v0 = *(arg_58h);
    0x0002070c lw v0, 0x58f4(v0)             |         v0 = *((v0 + 5693));
                                             |         if (v0 == 0) {
    0x00020710 beqz v0, 0x207e8              |             goto label_3;
                                             |         }
    0x00020714 nop                           |         
    0x00020718 lw v0, 0x44(fp)               |         v0 = *(var_44h);
    0x0002071c addiu a0, v0, 0x13c           |         a0 = v0 + aav.0x0000013c;
    0x00020720 lw v0, 0x58(fp)               |         v0 = *(arg_58h);
    0x00020724 addiu a1, v0, 0x57f0          |         a1 = v0 + 0x57f0;
    0x00020728 lw v0, 0x58(fp)               |         v0 = *(arg_58h);
    0x0002072c lw v1, 0x591c(v0)             |         v1 = *((v0 + 5703));
    0x00020730 lw v0, 0x5918(v0)             |         v0 = *((v0 + 5702));
    0x00020734 sw a1, 0x10(sp)               |         *(var_10h) = a1;
    0x00020738 sw v0, 0x18(sp)               |         *(var_18h) = v0;
    0x0002073c sw v1, 0x1c(sp)               |         *(var_1ch) = v1;
    0x00020740 addiu a1, zero, 0x1001        |         a1 = 0x1001;
    0x00020744 lw v0, -0x7fcc(gp)            |         v0 = *((gp - 8179));
                                             |         /* str._s__s__llu.mkv */
    0x00020748 addiu a2, v0, 0x3dd0          |         a2 = v0 + 0x3dd0;
    0x0002074c lw a3, 0x30(fp)               |         a3 = *(var_30h);
    0x00020750 lw v0, -0x7b44(gp)            |         v0 = sym.imp.snprintf;
    0x00020754 move t9, v0                   |         t9 = v0;
    0x00020758 jalr t9                       |         t9 ();
    0x0002075c nop                           |         
    0x00020760 lw gp, 0x20(fp)               |         gp = *(var_20h);
    0x00020764 sw v0, 0x34(fp)               |         *(var_34h) = v0;
    0x00020768 lw v0, 0x34(fp)               |         v0 = *(var_34h);
    0x0002076c sltiu v0, v0, 0x1001          |         v0 = (v0 < 0x1001) ? 1 : 0;
                                             |         if (v0 == 0) {
    0x00020770 bnez v0, 0x2078c              |             
    0x00020774 nop                           |             
    0x00020778 lui v0, 0x4000                |             v0 = 0x40000007;
    0x0002077c ori v0, v0, 7                 |             
    0x00020780 sw v0, 0x28(fp)               |             *(var_28h) = v0;
    0x00020784 b 0x208cc                     |             goto label_2;
    0x00020788 nop                           |             
                                             |         }
    0x0002078c lw v0, 0x44(fp)               |         v0 = *(var_44h);
    0x00020790 addiu v1, zero, 1             |         v1 = 1;
    0x00020794 sw v1, 0x138(v0)              |         *(v0) = v1;
    0x00020798 lw v0, 0x44(fp)               |         v0 = *(var_44h);
    0x0002079c sb zero, 0x113c(v0)           |         *((v0 + 4412)) = 0;
    0x000207a0 lw v0, 0x44(fp)               |         v0 = *(var_44h);
    0x000207a4 addiu v0, v0, 0x13c           |         v0 += aav.0x0000013c;
    0x000207a8 move a0, v0                   |         a0 = v0;
    0x000207ac move a2, zero                 |         a2 = 0;
    0x000207b0 move a3, zero                 |         a3 = 0;
    0x000207b4 lw v0, -0x7744(gp)            |         v0 = sym.createFile;
    0x000207b8 move t9, v0                   |         t9 = v0;
    0x000207bc jalr t9                       |         t9 ();
    0x000207c0 nop                           |         
    0x000207c4 lw gp, 0x20(fp)               |         gp = *(var_20h);
    0x000207c8 sw v0, 0x3c(fp)               |         *(var_3ch) = v0;
    0x000207cc lw v0, 0x3c(fp)               |         v0 = *(var_3ch);
                                             |         if (v0 == 0) {
    0x000207d0 beqz v0, 0x207e8              |             goto label_3;
                                             |         }
    0x000207d4 nop                           |         
    0x000207d8 lw v0, 0x3c(fp)               |         v0 = *(var_3ch);
    0x000207dc sw v0, 0x28(fp)               |         *(var_28h) = v0;
    0x000207e0 b 0x208cc                     |         goto label_2;
    0x000207e4 nop                           |         
                                             |     }
                                             | label_3:
    0x000207e8 lw s0, 0x44(fp)               |     s0 = *(var_44h);
    0x000207ec lw v0, 0x38(fp)               |     v0 = *(var_38h);
    0x000207f0 lw a3, 0x18(v0)               |     a3 = *((v0 + 6));
    0x000207f4 lw v0, 0x38(fp)               |     v0 = *(var_38h);
    0x000207f8 lw v1, 0xc(v0)                |     v1 = *((v0 + 3));
    0x000207fc lw v0, 8(v0)                  |     v0 = *((v0 + 2));
    0x00020800 move a0, v0                   |     a0 = v0;
    0x00020804 move a1, v1                   |     a1 = v1;
    0x00020808 addiu a2, zero, 1             |     a2 = 1;
    0x0002080c move t9, a3                   |     t9 = a3;
    0x00020810 jalr t9                       |     t9 ();
    0x00020814 nop                           |     
    0x00020818 lw gp, 0x20(fp)               |     gp = *(var_20h);
    0x0002081c sw v0, 0x1140(s0)             |     *((s0 + 1104)) = v0;
    0x00020820 sw v1, 0x1144(s0)             |     *((s0 + 1105)) = v1;
    0x00020824 lw v0, 0x44(fp)               |     v0 = *(var_44h);
    0x00020828 lw a0, 0x1140(v0)             |     a0 = *((v0 + 1104));
    0x0002082c lw a1, 0x1144(v0)             |     a1 = *((v0 + 1105));
    0x00020830 move v0, a0                   |     v0 = a0;
    0x00020834 or v0, v0, a1                 |     v0 |= a1;
                                             |     if (v0 == 0) {
    0x00020838 bnez v0, 0x20850              |         
    0x0002083c nop                           |         
    0x00020840 addiu v0, zero, 0xd           |         v0 = 0xd;
    0x00020844 sw v0, 0x28(fp)               |         *(var_28h) = v0;
    0x00020848 b 0x208cc                     |         goto label_2;
    0x0002084c nop                           |         
                                             |     }
    0x00020850 lw v0, 0x44(fp)               |     v0 = *(var_44h);
    0x00020854 lw v1, 0x58(fp)               |     v1 = *(arg_58h);
    0x00020858 sw v1, (v0)                   |     *(v0) = v1;
    0x0002085c lw v0, 0x58(fp)               |     v0 = *(arg_58h);
    0x00020860 addiu a0, v0, 8               |     a0 = v0 + 8;
    0x00020864 lw v0, 0x44(fp)               |     v0 = *(var_44h);
    0x00020868 addiu v1, v0, 0xc             |     v1 = v0 + 0xc;
    0x0002086c lw v0, 0x44(fp)               |     v0 = *(var_44h);
    0x00020870 addiu v0, v0, 4               |     v0 += 4;
    0x00020874 lw a1, -0x7d64(gp)            |     a1 = sym.writeHeaderCallback;
    0x00020878 sw a1, 0x10(sp)               |     *(var_10h) = a1;
    0x0002087c lw a1, -0x76b8(gp)            |     a1 = sym.postReadCallback;
    0x00020880 sw a1, 0x14(sp)               |     *(var_14h) = a1;
    0x00020884 lw a1, -0x7e5c(gp)            |     a1 = sym.postWriteCallback;
    0x00020888 sw a1, 0x18(sp)               |     *(var_18h) = a1;
    0x0002088c lw a1, -0x7750(gp)            |     a1 = sym.postResponseWriteCallback;
    0x00020890 sw a1, 0x1c(sp)               |     *(var_1ch) = a1;
    0x00020894 move a1, v1                   |     a1 = v1;
    0x00020898 move a2, v0                   |     a2 = v0;
    0x0002089c lw a3, 0x58(fp)               |     a3 = *(arg_58h);
    0x000208a0 lw v0, -0x7580(gp)            |     v0 = sym.initializeCurlSession;
    0x000208a4 move t9, v0                   |     t9 = v0;
    0x000208a8 jalr t9                       |     t9 ();
    0x000208ac nop                           |     
    0x000208b0 lw gp, 0x20(fp)               |     gp = *(var_20h);
    0x000208b4 sw v0, 0x40(fp)               |     *(var_40h) = v0;
    0x000208b8 lw v0, 0x40(fp)               |     v0 = *(var_40h);
                                             |     if (v0 != 0) {
    0x000208bc beqz v0, 0x208cc              |         
    0x000208c0 nop                           |         
    0x000208c4 lw v0, 0x40(fp)               |         v0 = *(var_40h);
    0x000208c8 sw v0, 0x28(fp)               |         *(var_28h) = v0;
                                             |     }
                                             | label_2:
    0x000208cc lw v0, 0x28(fp)               |     v0 = *(var_28h);
                                             |     if (v0 != 0) {
    0x000208d0 beqz v0, 0x208f8              |         
    0x000208d4 nop                           |         
    0x000208d8 addiu v0, fp, 0x44            |         v0 = fp + 0x44;
    0x000208dc move a0, v0                   |         a0 = v0;
    0x000208e0 lw v0, -0x7924(gp)            |         v0 = sym.freeCurlResponse;
    0x000208e4 move t9, v0                   |         t9 = v0;
    0x000208e8 jalr t9                       |         t9 ();
    0x000208ec nop                           |         
    0x000208f0 lw gp, 0x20(fp)               |         gp = *(var_20h);
    0x000208f4 sw zero, 0x44(fp)             |         *(var_44h) = 0;
                                             |     }
    0x000208f8 lw v0, 0x5c(fp)               |     v0 = *(arg_5ch);
                                             |     if (v0 != 0) {
    0x000208fc beqz v0, 0x20910              |         
    0x00020900 nop                           |         
    0x00020904 lw v1, 0x44(fp)               |         v1 = *(var_44h);
    0x00020908 lw v0, 0x5c(fp)               |         v0 = *(arg_5ch);
    0x0002090c sw v1, (v0)                   |         *(v0) = v1;
                                             |     }
    0x00020910 lw v0, 0x28(fp)               |     v0 = *(var_28h);
    0x00020914 move sp, fp                   |     
    0x00020918 lw ra, 0x54(sp)               |     ra = *(var_54h);
    0x0002091c lw fp, 0x50(sp)               |     fp = *(var_50h);
    0x00020920 lw s0, 0x4c(sp)               |     s0 = *(var_4ch);
    0x00020924 addiu sp, sp, 0x58            |     
    0x00020928 jr ra                         |     return v0;
    0x0002092c nop                           |     
                                             | }
    ; assembly                                           | /* r2dec pseudo code output */
                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0xd574 */
                                                         | #include <stdint.h>
                                                         |  
    ; (fcn) sym.getDeviceCertificateAggregate ()         | void getDeviceCertificateAggregate () {
    0x0000d574 addiu sp, sp, -0x38                       |     
    0x0000d578 sw ra, 0x34(sp)                           |     *(var_34h) = ra;
    0x0000d57c sw fp, 0x30(sp)                           |     *(var_30h) = fp;
    0x0000d580 move fp, sp                               |     fp = sp;
    0x0000d584 sw a0, 0x38(fp)                           |     *(arg_38h) = a0;
    0x0000d588 sw a1, 0x3c(fp)                           |     *(arg_3ch) = a1;
    0x0000d58c sw a2, 0x40(fp)                           |     *(arg_40h) = a2;
    0x0000d590 sw a3, 0x44(fp)                           |     *(arg_44h) = a3;
    0x0000d594 sw zero, 0x20(fp)                         |     *(var_20h) = 0;
    0x0000d598 lw v0, 0x38(fp)                           |     v0 = *(arg_38h);
    0x0000d59c sw v0, 0x28(fp)                           |     *(var_28h) = v0;
    0x0000d5a0 lw v0, 0x28(fp)                           |     v0 = *(var_28h);
                                                         |     if (v0 == 0) {
    0x0000d5a4 bnez v0, 0xd5bc                           |         
    0x0000d5a8 nop                                       |         
    0x0000d5ac addiu v0, zero, 2                         |         v0 = 2;
    0x0000d5b0 sw v0, 0x20(fp)                           |         *(var_20h) = v0;
    0x0000d5b4 b 0xd6c4                                  |         goto label_0;
    0x0000d5b8 nop                                       |         
                                                         |     }
    0x0000d5bc sw zero, 0x24(fp)                         |     *(var_24h) = 0;
    0x0000d5c0 b 0xd6ac                                  |     goto label_1;
    0x0000d5c4 nop                                       |     
                                                         |     do {
    0x0000d5c8 lw v0, 0x28(fp)                           |         v0 = *(var_28h);
    0x0000d5cc lw v1, 0x110(v0)                          |         v1 = *(v0);
    0x0000d5d0 lw v0, 0x24(fp)                           |         v0 = *(var_24h);
    0x0000d5d4 sll v0, v0, 3                             |         v0 <<= 3;
    0x0000d5d8 sll a0, v0, 2                             |         a0 = v0 << 2;
    0x0000d5dc addu v0, v0, a0                           |         v0 += a0;
    0x0000d5e0 addu v0, v1, v0                           |         v0 = v1 + v0;
    0x0000d5e4 lw v0, 0x14(v0)                           |         v0 = *((v0 + 5));
                                                         |         if (v0 != 0) {
    0x0000d5e8 beqz v0, 0xd6a0                           |             
    0x0000d5ec nop                                       |             
    0x0000d5f0 lw v0, 0x28(fp)                           |             v0 = *(var_28h);
    0x0000d5f4 lw v1, 0x110(v0)                          |             v1 = *(v0);
    0x0000d5f8 lw v0, 0x24(fp)                           |             v0 = *(var_24h);
    0x0000d5fc sll v0, v0, 3                             |             v0 <<= 3;
    0x0000d600 sll a0, v0, 2                             |             a0 = v0 << 2;
    0x0000d604 addu v0, v0, a0                           |             v0 += a0;
    0x0000d608 addu v0, v1, v0                           |             v0 = v1 + v0;
    0x0000d60c lw t0, 0x14(v0)                           |             t0 = *((v0 + 5));
    0x0000d610 lw v0, 0x28(fp)                           |             v0 = *(var_28h);
    0x0000d614 lw v1, 0x110(v0)                          |             v1 = *(v0);
    0x0000d618 lw v0, 0x24(fp)                           |             v0 = *(var_24h);
    0x0000d61c sll v0, v0, 3                             |             v0 <<= 3;
    0x0000d620 sll a0, v0, 2                             |             a0 = v0 << 2;
    0x0000d624 addu v0, v0, a0                           |             v0 += a0;
    0x0000d628 addu v0, v1, v0                           |             v0 = v1 + v0;
    0x0000d62c lw v1, 0xc(v0)                            |             v1 = *((v0 + 3));
    0x0000d630 lw v0, 8(v0)                              |             v0 = *((v0 + 2));
    0x0000d634 lw a0, 0x48(fp)                           |             a0 = *(arg_48h);
    0x0000d638 sw a0, 0x10(sp)                           |             *(var_10h) = a0;
    0x0000d63c move a0, v0                               |             a0 = v0;
    0x0000d640 move a1, v1                               |             a1 = v1;
    0x0000d644 lw a2, 0x40(fp)                           |             a2 = *(arg_40h);
    0x0000d648 lw a3, 0x44(fp)                           |             a3 = *(arg_44h);
    0x0000d64c move t9, t0                               |             t9 = t0;
    0x0000d650 jalr t9                                   |             t9 ();
    0x0000d654 nop                                       |             
    0x0000d658 sw v0, 0x20(fp)                           |             *(var_20h) = v0;
    0x0000d65c lw v1, 0x20(fp)                           |             v1 = *(var_20h);
    0x0000d660 lui v0, 0x1500                            |             v0 = 0x15000001;
    0x0000d664 ori v0, v0, 1                             |             
                                                         |             if (v1 == v0) {
    0x0000d668 bne v1, v0, 0xd67c                        |                 
    0x0000d66c nop                                       |                 
    0x0000d670 sw zero, 0x20(fp)                         |                 *(var_20h) = 0;
    0x0000d674 b 0xd6c4                                  |                 goto label_0;
    0x0000d678 nop                                       |                 
                                                         |             }
    0x0000d67c lw v0, 0x20(fp)                           |             v0 = *(var_20h);
    0x0000d680 sw v0, 0x2c(fp)                           |             *(var_2ch) = v0;
    0x0000d684 lw v0, 0x2c(fp)                           |             v0 = *(var_2ch);
                                                         |             if (v0 == 0) {
    0x0000d688 beqz v0, 0xd6a0                           |                 goto label_2;
                                                         |             }
    0x0000d68c nop                                       |             
    0x0000d690 lw v0, 0x2c(fp)                           |             v0 = *(var_2ch);
    0x0000d694 sw v0, 0x20(fp)                           |             *(var_20h) = v0;
    0x0000d698 b 0xd6c4                                  |             goto label_0;
    0x0000d69c nop                                       |             
                                                         |         }
                                                         | label_2:
    0x0000d6a0 lw v0, 0x24(fp)                           |         v0 = *(var_24h);
    0x0000d6a4 addiu v0, v0, 1                           |         v0++;
    0x0000d6a8 sw v0, 0x24(fp)                           |         *(var_24h) = v0;
                                                         | label_1:
    0x0000d6ac lw v0, 0x28(fp)                           |         v0 = *(var_28h);
    0x0000d6b0 lw v1, 0x114(v0)                          |         v1 = *(v0);
    0x0000d6b4 lw v0, 0x24(fp)                           |         v0 = *(var_24h);
    0x0000d6b8 sltu v0, v0, v1                           |         v0 = (v0 < v1) ? 1 : 0;
    0x0000d6bc bnez v0, 0xd5c8                           |         
                                                         |     } while (v0 != 0);
    0x0000d6c0 nop                                       |     
                                                         | label_0:
    0x0000d6c4 lw v0, 0x20(fp)                           |     v0 = *(var_20h);
    0x0000d6c8 move sp, fp                               |     
    0x0000d6cc lw ra, 0x34(sp)                           |     ra = *(var_34h);
    0x0000d6d0 lw fp, 0x30(sp)                           |     fp = *(var_30h);
    0x0000d6d4 addiu sp, sp, 0x38                        |     
    0x0000d6d8 jr ra                                     |     return v0;
    0x0000d6dc nop                                       |     
                                                         | }
    ; assembly                                           | /* r2dec pseudo code output */
                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0xe34c */
                                                         | #include <stdint.h>
                                                         |  
    ; (fcn) sym.getStreamingEndpointAggregate ()         | void getStreamingEndpointAggregate () {
    0x0000e34c addiu sp, sp, -0x38                       |     
    0x0000e350 sw ra, 0x34(sp)                           |     *(var_34h) = ra;
    0x0000e354 sw fp, 0x30(sp)                           |     *(var_30h) = fp;
    0x0000e358 move fp, sp                               |     fp = sp;
    0x0000e35c sw a0, 0x38(fp)                           |     *(arg_38h) = a0;
    0x0000e360 sw a1, 0x3c(fp)                           |     *(arg_3ch) = a1;
    0x0000e364 sw a2, 0x40(fp)                           |     *(arg_40h) = a2;
    0x0000e368 sw a3, 0x44(fp)                           |     *(arg_44h) = a3;
    0x0000e36c sw zero, 0x20(fp)                         |     *(var_20h) = 0;
    0x0000e370 lw v0, 0x38(fp)                           |     v0 = *(arg_38h);
    0x0000e374 sw v0, 0x28(fp)                           |     *(var_28h) = v0;
    0x0000e378 lw v0, 0x28(fp)                           |     v0 = *(var_28h);
                                                         |     if (v0 == 0) {
    0x0000e37c bnez v0, 0xe394                           |         
    0x0000e380 nop                                       |         
    0x0000e384 addiu v0, zero, 2                         |         v0 = 2;
    0x0000e388 sw v0, 0x20(fp)                           |         *(var_20h) = v0;
    0x0000e38c b 0xe49c                                  |         goto label_0;
    0x0000e390 nop                                       |         
                                                         |     }
    0x0000e394 sw zero, 0x24(fp)                         |     *(var_24h) = 0;
    0x0000e398 b 0xe484                                  |     goto label_1;
    0x0000e39c nop                                       |     
                                                         |     do {
    0x0000e3a0 lw v0, 0x28(fp)                           |         v0 = *(var_28h);
    0x0000e3a4 lw v1, 0x118(v0)                          |         v1 = *(v0);
    0x0000e3a8 lw v0, 0x24(fp)                           |         v0 = *(var_24h);
    0x0000e3ac sll v0, v0, 4                             |         v0 <<= 4;
    0x0000e3b0 sll a0, v0, 2                             |         a0 = v0 << 2;
    0x0000e3b4 subu v0, a0, v0                           |         __asm ("subu v0, a0, v0");
    0x0000e3b8 addu v0, v1, v0                           |         v0 = v1 + v0;
    0x0000e3bc lw v0, 0x18(v0)                           |         v0 = *((v0 + 6));
                                                         |         if (v0 != 0) {
    0x0000e3c0 beqz v0, 0xe478                           |             
    0x0000e3c4 nop                                       |             
    0x0000e3c8 lw v0, 0x28(fp)                           |             v0 = *(var_28h);
    0x0000e3cc lw v1, 0x118(v0)                          |             v1 = *(v0);
    0x0000e3d0 lw v0, 0x24(fp)                           |             v0 = *(var_24h);
    0x0000e3d4 sll v0, v0, 4                             |             v0 <<= 4;
    0x0000e3d8 sll a0, v0, 2                             |             a0 = v0 << 2;
    0x0000e3dc subu v0, a0, v0                           |             __asm ("subu v0, a0, v0");
    0x0000e3e0 addu v0, v1, v0                           |             v0 = v1 + v0;
    0x0000e3e4 lw t0, 0x18(v0)                           |             t0 = *((v0 + 6));
    0x0000e3e8 lw v0, 0x28(fp)                           |             v0 = *(var_28h);
    0x0000e3ec lw v1, 0x118(v0)                          |             v1 = *(v0);
    0x0000e3f0 lw v0, 0x24(fp)                           |             v0 = *(var_24h);
    0x0000e3f4 sll v0, v0, 4                             |             v0 <<= 4;
    0x0000e3f8 sll a0, v0, 2                             |             a0 = v0 << 2;
    0x0000e3fc subu v0, a0, v0                           |             __asm ("subu v0, a0, v0");
    0x0000e400 addu v0, v1, v0                           |             v0 = v1 + v0;
    0x0000e404 lw v1, 0xc(v0)                            |             v1 = *((v0 + 3));
    0x0000e408 lw v0, 8(v0)                              |             v0 = *((v0 + 2));
    0x0000e40c lw a0, 0x48(fp)                           |             a0 = *(arg_48h);
    0x0000e410 sw a0, 0x10(sp)                           |             *(var_10h) = a0;
    0x0000e414 move a0, v0                               |             a0 = v0;
    0x0000e418 move a1, v1                               |             a1 = v1;
    0x0000e41c lw a2, 0x40(fp)                           |             a2 = *(arg_40h);
    0x0000e420 lw a3, 0x44(fp)                           |             a3 = *(arg_44h);
    0x0000e424 move t9, t0                               |             t9 = t0;
    0x0000e428 jalr t9                                   |             t9 ();
    0x0000e42c nop                                       |             
    0x0000e430 sw v0, 0x20(fp)                           |             *(var_20h) = v0;
    0x0000e434 lw v1, 0x20(fp)                           |             v1 = *(var_20h);
    0x0000e438 lui v0, 0x1500                            |             v0 = 0x15000001;
    0x0000e43c ori v0, v0, 1                             |             
                                                         |             if (v1 == v0) {
    0x0000e440 bne v1, v0, 0xe454                        |                 
    0x0000e444 nop                                       |                 
    0x0000e448 sw zero, 0x20(fp)                         |                 *(var_20h) = 0;
    0x0000e44c b 0xe49c                                  |                 goto label_0;
    0x0000e450 nop                                       |                 
                                                         |             }
    0x0000e454 lw v0, 0x20(fp)                           |             v0 = *(var_20h);
    0x0000e458 sw v0, 0x2c(fp)                           |             *(var_2ch) = v0;
    0x0000e45c lw v0, 0x2c(fp)                           |             v0 = *(var_2ch);
                                                         |             if (v0 == 0) {
    0x0000e460 beqz v0, 0xe478                           |                 goto label_2;
                                                         |             }
    0x0000e464 nop                                       |             
    0x0000e468 lw v0, 0x2c(fp)                           |             v0 = *(var_2ch);
    0x0000e46c sw v0, 0x20(fp)                           |             *(var_20h) = v0;
    0x0000e470 b 0xe49c                                  |             goto label_0;
    0x0000e474 nop                                       |             
                                                         |         }
                                                         | label_2:
    0x0000e478 lw v0, 0x24(fp)                           |         v0 = *(var_24h);
    0x0000e47c addiu v0, v0, 1                           |         v0++;
    0x0000e480 sw v0, 0x24(fp)                           |         *(var_24h) = v0;
                                                         | label_1:
    0x0000e484 lw v0, 0x28(fp)                           |         v0 = *(var_28h);
    0x0000e488 lw v1, 0x11c(v0)                          |         v1 = *(v0);
    0x0000e48c lw v0, 0x24(fp)                           |         v0 = *(var_24h);
    0x0000e490 sltu v0, v0, v1                           |         v0 = (v0 < v1) ? 1 : 0;
    0x0000e494 bnez v0, 0xe3a0                           |         
                                                         |     } while (v0 != 0);
    0x0000e498 nop                                       |     
                                                         | label_0:
    0x0000e49c lw v0, 0x20(fp)                           |     v0 = *(var_20h);
    0x0000e4a0 move sp, fp                               |     
    0x0000e4a4 lw ra, 0x34(sp)                           |     ra = *(var_34h);
    0x0000e4a8 lw fp, 0x30(sp)                           |     fp = *(var_30h);
    0x0000e4ac addiu sp, sp, 0x38                        |     
    0x0000e4b0 jr ra                                     |     return v0;
    0x0000e4b4 nop                                       |     
                                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0x41ba0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.heapInitialize ()        | void heapInitialize () {
    0x00041ba0 lui gp, 5                 |     
    0x00041ba4 addiu gp, gp, -0xad0      |     
    0x00041ba8 addu gp, gp, t9           |     gp += t9;
    0x00041bac addiu sp, sp, -0x50       |     
    0x00041bb0 sw ra, 0x4c(sp)           |     *(var_4ch) = ra;
    0x00041bb4 sw fp, 0x48(sp)           |     *(var_48h) = fp;
    0x00041bb8 move fp, sp               |     fp = sp;
    0x00041bbc sw gp, 0x20(sp)           |     *(var_20h) = gp;
    0x00041bc0 sw a0, 0x50(fp)           |     *(arg_50h) = a0;
    0x00041bc4 sw a1, 0x54(fp)           |     *(arg_54h) = a1;
    0x00041bc8 sw a2, 0x58(fp)           |     *(arg_58h) = a2;
    0x00041bcc sw a3, 0x5c(fp)           |     *(arg_5ch) = a3;
    0x00041bd0 sw zero, 0x28(fp)         |     *(var_28h) = 0;
    0x00041bd4 sw zero, 0x40(fp)         |     *(var_40h) = 0;
    0x00041bd8 sw zero, 0x44(fp)         |     *(var_44h) = 0;
    0x00041bdc lw v0, 0x5c(fp)           |     v0 = *(arg_5ch);
    0x00041be0 andi v0, v0, 3            |     v0 &= 3;
    0x00041be4 sw v0, 0x2c(fp)           |     *(var_2ch) = v0;
    0x00041be8 lw v0, 0x60(fp)           |     v0 = *(arg_60h);
                                         |     if (v0 == 0) {
    0x00041bec bnez v0, 0x41c04          |         
    0x00041bf0 nop                       |         
    0x00041bf4 addiu v0, zero, 1         |         v0 = 1;
    0x00041bf8 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00041bfc b 0x41f18                 |         goto label_0;
    0x00041c00 nop                       |         
                                         |     }
    0x00041c04 lw v0, 0x54(fp)           |     v0 = *(arg_54h);
                                         |     if (v0 == 0) {
    0x00041c08 bnez v0, 0x41c40          |         
    0x00041c0c nop                       |         
    0x00041c10 lw v0, 0x54(fp)           |         v0 = *(arg_54h);
                                         |         if (v0 == 0) {
    0x00041c14 bnez v0, 0x41c30          |             
    0x00041c18 nop                       |             
    0x00041c1c lw v1, 0x50(fp)           |             v1 = *(arg_50h);
    0x00041c20 lui v0, 0x10              |             v0 = 0x100000;
    0x00041c24 sltu v0, v1, v0           |             v0 = (v1 < v0) ? 1 : 0;
                                         |             if (v0 == 0) {
    0x00041c28 beqz v0, 0x41c40          |                 goto label_1;
                                         |             }
    0x00041c2c nop                       |             
                                         |         }
    0x00041c30 addiu v0, zero, 2         |         v0 = 2;
    0x00041c34 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00041c38 b 0x41f18                 |         goto label_0;
    0x00041c3c nop                       |         
                                         |     }
                                         | label_1:
    0x00041c40 lw v0, 0x58(fp)           |     v0 = *(arg_58h);
    0x00041c44 sltiu v0, v0, 0x65        |     v0 = (v0 < 0x65) ? 1 : 0;
                                         |     if (v0 == 0) {
    0x00041c48 bnez v0, 0x41c60          |         
    0x00041c4c nop                       |         
    0x00041c50 addiu v0, zero, 2         |         v0 = 2;
    0x00041c54 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00041c58 b 0x41f18                 |         goto label_0;
    0x00041c5c nop                       |         
                                         |     }
    0x00041c60 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
                                         |     if (v0 != 0) {
    0x00041c64 beqz v0, 0x41c7c          |         
    0x00041c68 nop                       |         
    0x00041c6c lw v1, 0x2c(fp)           |         v1 = *(var_2ch);
    0x00041c70 addiu v0, zero, 3         |         v0 = 3;
                                         |         if (v1 != v0) {
    0x00041c74 bne v1, v0, 0x41c90       |             goto label_2;
                                         |         }
    0x00041c78 nop                       |         
                                         |     }
    0x00041c7c lui v0, 0x1000            |     v0 = 0x10000001;
    0x00041c80 ori v0, v0, 1             |     
    0x00041c84 sw v0, 0x28(fp)           |     *(var_28h) = v0;
    0x00041c88 b 0x41f18                 |     goto label_0;
    0x00041c8c nop                       |     
                                         | label_2:
    0x00041c90 lw v0, -0x7f44(gp)        |     v0 = *(gp);
    0x00041c94 lw t0, (v0)               |     t0 = *(v0);
    0x00041c98 lw v0, 0x50(fp)           |     v0 = *(arg_50h);
    0x00041c9c lw v1, 0x54(fp)           |     v1 = *(arg_54h);
    0x00041ca0 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00041ca4 sw v1, 0x14(sp)           |     *(var_14h) = v1;
    0x00041ca8 lw v0, 0x58(fp)           |     v0 = *(arg_58h);
    0x00041cac sw v0, 0x18(sp)           |     *(var_18h) = v0;
    0x00041cb0 lw v0, 0x5c(fp)           |     v0 = *(arg_5ch);
    0x00041cb4 sw v0, 0x1c(sp)           |     *(var_1ch) = v0;
    0x00041cb8 addiu a0, zero, 3         |     a0 = 3;
    0x00041cbc lw v0, -0x7fcc(gp)        |     v0 = *((gp - 8179));
                                         |     /* str.Heap */
    0x00041cc0 addiu a1, v0, 0x6bb0      |     a1 = v0 + 0x6bb0;
    0x00041cc4 lw v0, -0x7fcc(gp)        |     v0 = *((gp - 8179));
                                         |     /* str._s__:_Initializing_native_heap_with_limit_size__llu__spill_ratio__u___and_flags_0x_08x */
    0x00041cc8 addiu a2, v0, 0x6bb8      |     a2 = v0 + 0x6bb8;
    0x00041ccc lw v0, -0x7fcc(gp)        |     v0 = *((gp - 8179));
                                         |     /* obj.__FUNCTION__.5484 */
    0x00041cd0 addiu a3, v0, 0x6ce8      |     a3 = v0 + 0x6ce8;
    0x00041cd4 move t9, t0               |     t9 = t0;
    0x00041cd8 jalr t9                   |     t9 ();
    0x00041cdc nop                       |     
    0x00041ce0 lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x00041ce4 lw v0, 0x5c(fp)           |     v0 = *(arg_5ch);
    0x00041ce8 andi v0, v0, 2            |     v0 &= 2;
                                         |     if (v0 != 0) {
    0x00041cec beqz v0, 0x41d64          |         
    0x00041cf0 nop                       |         
    0x00041cf4 lw v0, -0x7f44(gp)        |         v0 = *(gp);
    0x00041cf8 lw v0, (v0)               |         v0 = *(v0);
    0x00041cfc addiu a0, zero, 3         |         a0 = 3;
    0x00041d00 lw v1, -0x7fcc(gp)        |         v1 = *((gp - 8179));
                                         |         /* str.Heap */
    0x00041d04 addiu a1, v1, 0x6bb0      |         a1 = v1 + 0x6bb0;
    0x00041d08 lw v1, -0x7fcc(gp)        |         v1 = *((gp - 8179));
                                         |         /* str._s__:_Creating_system_heap. */
    0x00041d0c addiu a2, v1, 0x6c10      |         a2 = v1 + 0x6c10;
    0x00041d10 lw v1, -0x7fcc(gp)        |         v1 = *((gp - 8179));
                                         |         /* obj.__FUNCTION__.5484 */
    0x00041d14 addiu a3, v1, 0x6ce8      |         a3 = v1 + 0x6ce8;
    0x00041d18 move t9, v0               |         t9 = v0;
    0x00041d1c jalr t9                   |         t9 ();
    0x00041d20 nop                       |         
    0x00041d24 lw gp, 0x20(fp)           |         gp = *(var_20h);
    0x00041d28 addiu v0, fp, 0x40        |         v0 = fp + 0x40;
    0x00041d2c move a0, v0               |         a0 = v0;
    0x00041d30 lw v0, -0x77dc(gp)        |         v0 = sym.sysHeapCreate;
    0x00041d34 move t9, v0               |         t9 = v0;
    0x00041d38 jalr t9                   |         t9 ();
    0x00041d3c nop                       |         
    0x00041d40 lw gp, 0x20(fp)           |         gp = *(var_20h);
    0x00041d44 sw v0, 0x30(fp)           |         *(var_30h) = v0;
    0x00041d48 lw v0, 0x30(fp)           |         v0 = *(var_30h);
                                         |         if (v0 == 0) {
    0x00041d4c beqz v0, 0x41dd4          |             goto label_3;
                                         |         }
    0x00041d50 nop                       |         
    0x00041d54 lw v0, 0x30(fp)           |         v0 = *(var_30h);
    0x00041d58 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00041d5c b 0x41f18                 |         goto label_0;
    0x00041d60 nop                       |         
                                         |     }
    0x00041d64 lw v0, -0x7f44(gp)        |     v0 = *(gp);
    0x00041d68 lw v0, (v0)               |     v0 = *(v0);
    0x00041d6c addiu a0, zero, 3         |     a0 = 3;
    0x00041d70 lw v1, -0x7fcc(gp)        |     v1 = *((gp - 8179));
                                         |     /* str.Heap */
    0x00041d74 addiu a1, v1, 0x6bb0      |     a1 = v1 + 0x6bb0;
    0x00041d78 lw v1, -0x7fcc(gp)        |     v1 = *((gp - 8179));
                                         |     /* str._s__:_Creating_AIV_heap. */
    0x00041d7c addiu a2, v1, 0x6c2c      |     a2 = v1 + 0x6c2c;
    0x00041d80 lw v1, -0x7fcc(gp)        |     v1 = *((gp - 8179));
                                         |     /* obj.__FUNCTION__.5484 */
    0x00041d84 addiu a3, v1, 0x6ce8      |     a3 = v1 + 0x6ce8;
    0x00041d88 move t9, v0               |     t9 = v0;
    0x00041d8c jalr t9                   |     t9 ();
    0x00041d90 nop                       |     
    0x00041d94 lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x00041d98 addiu v0, fp, 0x40        |     v0 = fp + 0x40;
    0x00041d9c move a0, v0               |     a0 = v0;
    0x00041da0 lw v0, -0x75ac(gp)        |     v0 = sym.aivHeapCreate;
    0x00041da4 move t9, v0               |     t9 = v0;
    0x00041da8 jalr t9                   |     t9 ();
    0x00041dac nop                       |     
    0x00041db0 lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x00041db4 sw v0, 0x34(fp)           |     *(var_34h) = v0;
    0x00041db8 lw v0, 0x34(fp)           |     v0 = *(var_34h);
                                         |     if (v0 != 0) {
    0x00041dbc beqz v0, 0x41dd4          |         
    0x00041dc0 nop                       |         
    0x00041dc4 lw v0, 0x34(fp)           |         v0 = *(var_34h);
    0x00041dc8 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00041dcc b 0x41f18                 |         goto label_0;
    0x00041dd0 nop                       |         
                                         |     }
                                         | label_3:
    0x00041dd4 lw v0, 0x5c(fp)           |     v0 = *(arg_5ch);
    0x00041dd8 andi v0, v0, 4            |     v0 &= 4;
                                         |     if (v0 != 0) {
    0x00041ddc beqz v0, 0x41e74          |         
    0x00041de0 nop                       |         
    0x00041de4 lw v0, -0x7f44(gp)        |         v0 = *(gp);
    0x00041de8 lw v0, (v0)               |         v0 = *(v0);
    0x00041dec lw v1, 0x5c(fp)           |         v1 = *(arg_5ch);
    0x00041df0 sw v1, 0x10(sp)           |         *(var_10h) = v1;
    0x00041df4 addiu a0, zero, 3         |         a0 = 3;
    0x00041df8 lw v1, -0x7fcc(gp)        |         v1 = *((gp - 8179));
                                         |         /* str.Heap */
    0x00041dfc addiu a1, v1, 0x6bb0      |         a1 = v1 + 0x6bb0;
    0x00041e00 lw v1, -0x7fcc(gp)        |         v1 = *((gp - 8179));
                                         |         /* str._s__:_Creating_hybrid_heap_with_flags:_0x_08x */
    0x00041e04 addiu a2, v1, 0x6c48      |         a2 = v1 + 0x6c48;
    0x00041e08 lw v1, -0x7fcc(gp)        |         v1 = *((gp - 8179));
                                         |         /* obj.__FUNCTION__.5484 */
    0x00041e0c addiu a3, v1, 0x6ce8      |         a3 = v1 + 0x6ce8;
    0x00041e10 move t9, v0               |         t9 = v0;
    0x00041e14 jalr t9                   |         t9 ();
    0x00041e18 nop                       |         
    0x00041e1c lw gp, 0x20(fp)           |         gp = *(var_20h);
    0x00041e20 lw v1, 0x40(fp)           |         v1 = *(var_40h);
    0x00041e24 addiu v0, fp, 0x44        |         v0 = fp + 0x44;
    0x00041e28 move a0, v1               |         a0 = v1;
    0x00041e2c lw a1, 0x58(fp)           |         a1 = *(arg_58h);
    0x00041e30 lw a2, 0x5c(fp)           |         a2 = *(arg_5ch);
    0x00041e34 move a3, v0               |         a3 = v0;
    0x00041e38 lw v0, -0x75c4(gp)        |         v0 = sym.hybridCreateHeap;
    0x00041e3c move t9, v0               |         t9 = v0;
    0x00041e40 jalr t9                   |         t9 ();
    0x00041e44 nop                       |         
    0x00041e48 lw gp, 0x20(fp)           |         gp = *(var_20h);
    0x00041e4c sw v0, 0x38(fp)           |         *(var_38h) = v0;
    0x00041e50 lw v0, 0x38(fp)           |         v0 = *(var_38h);
                                         |         if (v0 != 0) {
    0x00041e54 beqz v0, 0x41e6c          |             
    0x00041e58 nop                       |             
    0x00041e5c lw v0, 0x38(fp)           |             v0 = *(var_38h);
    0x00041e60 sw v0, 0x28(fp)           |             *(var_28h) = v0;
    0x00041e64 b 0x41f18                 |             goto label_0;
    0x00041e68 nop                       |             
                                         |         }
    0x00041e6c lw v0, 0x44(fp)           |         v0 = *(var_44h);
    0x00041e70 sw v0, 0x40(fp)           |         *(var_40h) = v0;
                                         |     }
    0x00041e74 lw v0, 0x40(fp)           |     v0 = *(var_40h);
                                         |     if (v0 == 0) {
    0x00041e78 bnez v0, 0x41e90          |         
    0x00041e7c nop                       |         
    0x00041e80 addiu v0, zero, 0xc       |         v0 = 0xc;
    0x00041e84 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00041e88 b 0x41f18                 |         goto label_0;
    0x00041e8c nop                       |         
                                         |     }
    0x00041e90 lw v0, 0x40(fp)           |     v0 = *(var_40h);
    0x00041e94 lw v0, 0x18(v0)           |     v0 = *((v0 + 6));
    0x00041e98 lw v1, 0x40(fp)           |     v1 = *(var_40h);
    0x00041e9c move a0, v1               |     a0 = v1;
    0x00041ea0 lw a2, 0x50(fp)           |     a2 = *(arg_50h);
    0x00041ea4 lw a3, 0x54(fp)           |     a3 = *(arg_54h);
    0x00041ea8 move t9, v0               |     t9 = v0;
    0x00041eac jalr t9                   |     t9 ();
    0x00041eb0 nop                       |     
    0x00041eb4 lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x00041eb8 sw v0, 0x3c(fp)           |     *(var_3ch) = v0;
    0x00041ebc lw v0, 0x3c(fp)           |     v0 = *(var_3ch);
                                         |     if (v0 != 0) {
    0x00041ec0 beqz v0, 0x41ed8          |         
    0x00041ec4 nop                       |         
    0x00041ec8 lw v0, 0x3c(fp)           |         v0 = *(var_3ch);
    0x00041ecc sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00041ed0 b 0x41f18                 |         goto label_0;
    0x00041ed4 nop                       |         
                                         |     }
    0x00041ed8 lw v0, -0x7f44(gp)        |     v0 = *(gp);
    0x00041edc lw v0, (v0)               |     v0 = *(v0);
    0x00041ee0 addiu a0, zero, 3         |     a0 = 3;
    0x00041ee4 lw v1, -0x7fcc(gp)        |     v1 = *((gp - 8179));
                                         |     /* str.Heap */
    0x00041ee8 addiu a1, v1, 0x6bb0      |     a1 = v1 + 0x6bb0;
    0x00041eec lw v1, -0x7fcc(gp)        |     v1 = *((gp - 8179));
                                         |     /* str._s__:_Heap_is_initialized_OK */
    0x00041ef0 addiu a2, v1, 0x6c78      |     a2 = v1 + 0x6c78;
    0x00041ef4 lw v1, -0x7fcc(gp)        |     v1 = *((gp - 8179));
                                         |     /* obj.__FUNCTION__.5484 */
    0x00041ef8 addiu a3, v1, 0x6ce8      |     a3 = v1 + 0x6ce8;
    0x00041efc move t9, v0               |     t9 = v0;
    0x00041f00 jalr t9                   |     t9 ();
    0x00041f04 nop                       |     
    0x00041f08 lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x00041f0c lw v1, 0x40(fp)           |     v1 = *(var_40h);
    0x00041f10 lw v0, 0x60(fp)           |     v0 = *(arg_60h);
    0x00041f14 sw v1, (v0)               |     *(v0) = v1;
                                         | label_0:
    0x00041f18 lw v0, 0x28(fp)           |     v0 = *(var_28h);
                                         |     if (v0 != 0) {
    0x00041f1c beqz v0, 0x41f74          |         
    0x00041f20 nop                       |         
    0x00041f24 lw v0, -0x7f44(gp)        |         v0 = *(gp);
    0x00041f28 lw v0, (v0)               |         v0 = *(v0);
    0x00041f2c addiu a0, zero, 5         |         a0 = 5;
    0x00041f30 lw v1, -0x7fcc(gp)        |         v1 = *((gp - 8179));
                                         |         /* str.Heap */
    0x00041f34 addiu a1, v1, 0x6bb0      |         a1 = v1 + 0x6bb0;
    0x00041f38 lw v1, -0x7fcc(gp)        |         v1 = *((gp - 8179));
                                         |         /* str._s__:_Failed_to_initialize_native_heap. */
    0x00041f3c addiu a2, v1, 0x6c98      |         a2 = v1 + 0x6c98;
    0x00041f40 lw v1, -0x7fcc(gp)        |         v1 = *((gp - 8179));
                                         |         /* obj.__FUNCTION__.5484 */
    0x00041f44 addiu a3, v1, 0x6ce8      |         a3 = v1 + 0x6ce8;
    0x00041f48 move t9, v0               |         t9 = v0;
    0x00041f4c jalr t9                   |         t9 ();
    0x00041f50 nop                       |         
    0x00041f54 lw gp, 0x20(fp)           |         gp = *(var_20h);
    0x00041f58 lw v0, 0x40(fp)           |         v0 = *(var_40h);
    0x00041f5c move a0, v0               |         a0 = v0;
    0x00041f60 lw v0, -0x7d04(gp)        |         v0 = sym.heapRelease;
    0x00041f64 move t9, v0               |         t9 = v0;
    0x00041f68 jalr t9                   |         t9 ();
    0x00041f6c nop                       |         
    0x00041f70 lw gp, 0x20(fp)           |         gp = *(var_20h);
                                         |     }
    0x00041f74 lw v0, 0x28(fp)           |     v0 = *(var_28h);
    0x00041f78 move sp, fp               |     
    0x00041f7c lw ra, 0x4c(sp)           |     ra = *(var_4ch);
    0x00041f80 lw fp, 0x48(sp)           |     fp = *(var_48h);
    0x00041f84 addiu sp, sp, 0x50        |     
    0x00041f88 jr ra                     |     return v0;
    0x00041f8c nop                       |     
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0x50ff0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.stepStateMachine ()      | void stepStateMachine () {
    0x00050ff0 lui gp, 4                 |     
    0x00050ff4 addiu gp, gp, 0xe0        |     
    0x00050ff8 addu gp, gp, t9           |     gp += t9;
    0x00050ffc addiu sp, sp, -0x70       |     
    0x00051000 sw ra, 0x6c(sp)           |     *(var_6ch) = ra;
    0x00051004 sw fp, 0x68(sp)           |     *(var_68h) = fp;
    0x00051008 sw s1, 0x64(sp)           |     *(var_64h) = s1;
    0x0005100c sw s0, 0x60(sp)           |     *(var_60h) = s0;
    0x00051010 move fp, sp               |     fp = sp;
    0x00051014 sw gp, 0x20(sp)           |     *(var_20h) = gp;
    0x00051018 sw a0, 0x70(fp)           |     *(arg_70h) = a0;
    0x0005101c sw zero, 0x28(fp)         |     *(var_28h) = 0;
    0x00051020 sw zero, 0x54(fp)         |     *(var_54h) = 0;
    0x00051024 lw v0, 0x70(fp)           |     v0 = *(arg_70h);
    0x00051028 sw v0, 0x2c(fp)           |     *(var_2ch) = v0;
    0x0005102c lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
                                         |     if (v0 == 0) {
    0x00051030 bnez v0, 0x51048          |         
    0x00051034 nop                       |         
    0x00051038 addiu v0, zero, 1         |         v0 = 1;
    0x0005103c sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00051040 b 0x51390                 |         goto label_0;
    0x00051044 nop                       |         
                                         |     }
    0x00051048 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x0005104c lw v1, 0x14(v0)           |     v1 = *((v0 + 5));
    0x00051050 lw v0, 0x10(v0)           |     v0 = *((v0 + 4));
    0x00051054 sw v0, 0x30(fp)           |     *(var_30h) = v0;
    0x00051058 sw v1, 0x34(fp)           |     *(var_34h) = v1;
    0x0005105c lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x00051060 lw v0, 0x18(v0)           |     v0 = *((v0 + 6));
    0x00051064 lw v0, 0x10(v0)           |     v0 = *((v0 + 4));
                                         |     if (v0 == 0) {
    0x00051068 bnez v0, 0x51080          |         
    0x0005106c nop                       |         
    0x00051070 addiu v0, zero, 1         |         v0 = 1;
    0x00051074 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00051078 b 0x51390                 |         goto label_0;
    0x0005107c nop                       |         
                                         |     }
    0x00051080 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x00051084 lw v0, 0x18(v0)           |     v0 = *((v0 + 6));
    0x00051088 lw a3, 0x10(v0)           |     a3 = *((v0 + 4));
    0x0005108c lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x00051090 lw v1, 0x14(v0)           |     v1 = *((v0 + 5));
    0x00051094 lw v0, 0x10(v0)           |     v0 = *((v0 + 4));
    0x00051098 addiu a2, fp, 0x58        |     a2 = fp + 0x58;
    0x0005109c move a0, v0               |     a0 = v0;
    0x000510a0 move a1, v1               |     a1 = v1;
    0x000510a4 move t9, a3               |     t9 = a3;
    0x000510a8 jalr t9                   |     t9 ();
    0x000510ac nop                       |     
    0x000510b0 lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x000510b4 sw v0, 0x38(fp)           |     *(var_38h) = v0;
    0x000510b8 lw v0, 0x38(fp)           |     v0 = *(var_38h);
                                         |     if (v0 != 0) {
    0x000510bc beqz v0, 0x510d4          |         
    0x000510c0 nop                       |         
    0x000510c4 lw v0, 0x38(fp)           |         v0 = *(var_38h);
    0x000510c8 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x000510cc b 0x51390                 |         goto label_0;
    0x000510d0 nop                       |         
                                         |     }
    0x000510d4 lw v0, 0x58(fp)           |     v0 = *(var_58h);
    0x000510d8 lw v1, 0x5c(fp)           |     v1 = *(var_5ch);
    0x000510dc addiu a0, fp, 0x54        |     a0 = fp + 0x54;
    0x000510e0 sw a0, 0x10(sp)           |     *(var_10h) = a0;
    0x000510e4 lw a0, 0x70(fp)           |     a0 = *(arg_70h);
    0x000510e8 move a2, v0               |     a2 = v0;
    0x000510ec move a3, v1               |     a3 = v1;
    0x000510f0 lw v0, -0x7618(gp)        |     v0 = sym.getStateMachineState;
    0x000510f4 move t9, v0               |     t9 = v0;
    0x000510f8 jalr t9                   |     t9 ();
    0x000510fc nop                       |     
    0x00051100 lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x00051104 sw v0, 0x3c(fp)           |     *(var_3ch) = v0;
    0x00051108 lw v0, 0x3c(fp)           |     v0 = *(var_3ch);
                                         |     if (v0 != 0) {
    0x0005110c beqz v0, 0x51124          |         
    0x00051110 nop                       |         
    0x00051114 lw v0, 0x3c(fp)           |         v0 = *(var_3ch);
    0x00051118 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x0005111c b 0x51390                 |         goto label_0;
    0x00051120 nop                       |         
                                         |     }
    0x00051124 lw v0, 0x54(fp)           |     v0 = *(var_54h);
    0x00051128 lw v1, 0xc(v0)            |     v1 = *((v0 + 3));
    0x0005112c lw v0, 8(v0)              |     v0 = *((v0 + 2));
    0x00051130 lw a0, 0x2c(fp)           |     a0 = *(var_2ch);
    0x00051134 move a2, v0               |     a2 = v0;
    0x00051138 move a3, v1               |     a3 = v1;
    0x0005113c lw v0, -0x7438(gp)        |     v0 = sym.acceptStateMachineState;
    0x00051140 move t9, v0               |     t9 = v0;
    0x00051144 jalr t9                   |     t9 ();
    0x00051148 nop                       |     
    0x0005114c lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x00051150 sw v0, 0x40(fp)           |     *(var_40h) = v0;
    0x00051154 lw v0, 0x40(fp)           |     v0 = *(var_40h);
                                         |     if (v0 != 0) {
    0x00051158 beqz v0, 0x51170          |         
    0x0005115c nop                       |         
    0x00051160 lw v0, 0x40(fp)           |         v0 = *(var_40h);
    0x00051164 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00051168 b 0x51390                 |         goto label_0;
    0x0005116c nop                       |         
                                         |     }
    0x00051170 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x00051174 lw a2, 4(v0)              |     a2 = *((v0 + 1));
    0x00051178 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x0005117c lw v1, 0xc(v0)            |     v1 = *((v0 + 3));
    0x00051180 lw v0, 8(v0)              |     v0 = *((v0 + 2));
    0x00051184 move a0, v0               |     a0 = v0;
    0x00051188 move a1, v1               |     a1 = v1;
    0x0005118c move t9, a2               |     t9 = a2;
    0x00051190 jalr t9                   |     t9 ();
    0x00051194 nop                       |     
    0x00051198 lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x0005119c sw v0, 0x48(fp)           |     *(var_48h) = v0;
    0x000511a0 sw v1, 0x4c(fp)           |     *(var_4ch) = v1;
    0x000511a4 lw v0, 0x54(fp)           |     v0 = *(var_54h);
    0x000511a8 lw v1, 4(v0)              |     v1 = *((v0 + 1));
    0x000511ac lw v0, (v0)               |     v0 = *(v0);
    0x000511b0 lw a0, 0x2c(fp)           |     a0 = *(var_2ch);
    0x000511b4 lw a0, 0x18(a0)           |     a0 = *((a0 + 6));
    0x000511b8 lw a1, 4(a0)              |     a1 = *((a0 + 1));
    0x000511bc lw a0, (a0)               |     a0 = *(a0);
    0x000511c0 move a2, a0               |     a2 = a0;
                                         |     if (v0 == a2) {
    0x000511c4 bne v0, a2, 0x511d8       |         
    0x000511c8 nop                       |         
    0x000511cc move a0, a1               |         a0 = a1;
                                         |         if (v1 == a0) {
    0x000511d0 beq v1, a0, 0x51258       |             goto label_1;
                                         |         }
    0x000511d4 nop                       |         
                                         |     }
    0x000511d8 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x000511dc sw zero, 0x1c(v0)         |     *((v0 + 7)) = 0;
    0x000511e0 lw a0, 0x2c(fp)           |     a0 = *(var_2ch);
    0x000511e4 lw v0, 0x48(fp)           |     v0 = *(var_48h);
    0x000511e8 lw v1, 0x4c(fp)           |     v1 = *(var_4ch);
    0x000511ec sw v0, 0x20(a0)           |     *((a0 + 8)) = v0;
    0x000511f0 sw v1, 0x24(a0)           |     *((a0 + 9)) = v1;
    0x000511f4 lw v0, -0x7f44(gp)        |     v0 = *(gp);
    0x000511f8 lw t0, (v0)               |     t0 = *(v0);
    0x000511fc lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x00051200 lw v0, 0x18(v0)           |     v0 = *((v0 + 6));
    0x00051204 lw a0, (v0)               |     a0 = *(v0);
    0x00051208 lw a1, 4(v0)              |     a1 = *((v0 + 1));
    0x0005120c lw v0, 0x58(fp)           |     v0 = *(var_58h);
    0x00051210 lw v1, 0x5c(fp)           |     v1 = *(var_5ch);
    0x00051214 sw a0, 0x10(sp)           |     *(var_10h) = a0;
    0x00051218 sw a1, 0x14(sp)           |     *(var_14h) = a1;
    0x0005121c sw v0, 0x18(sp)           |     *(var_18h) = v0;
    0x00051220 sw v1, 0x1c(sp)           |     *(var_1ch) = v1;
    0x00051224 addiu a0, zero, 2         |     a0 = 2;
    0x00051228 lw v0, -0x7fcc(gp)        |     v0 = *((gp - 8179));
                                         |     /* str.State */
    0x0005122c addiu a1, v0, 0x7660      |     a1 = v0 + 0x7660;
    0x00051230 lw v0, -0x7fcc(gp)        |     v0 = *((gp - 8179));
                                         |     /* str._s__:_State_Machine___Current_state:_0x_016llx__Next_state:_0x_016llx */
    0x00051234 addiu a2, v0, 0x7668      |     a2 = v0 + 0x7668;
    0x00051238 lw v0, -0x7fcc(gp)        |     v0 = *((gp - 8179));
                                         |     /* obj.__FUNCTION__.5356 */
    0x0005123c addiu a3, v0, 0x76b0      |     a3 = v0 + 0x76b0;
    0x00051240 move t9, t0               |     t9 = t0;
    0x00051244 jalr t9                   |     t9 ();
    0x00051248 nop                       |     
    0x0005124c lw gp, 0x20(fp)           |     gp = *(var_20h);
    0x00051250 b 0x5131c                 |     goto label_2;
    0x00051254 nop                       |     
                                         | label_1:
    0x00051258 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x0005125c lw v0, 0x1c(v0)           |     v0 = *((v0 + 7));
    0x00051260 addiu v1, v0, 1           |     v1 = v0 + 1;
    0x00051264 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x00051268 sw v1, 0x1c(v0)           |     *((v0 + 7)) = v1;
    0x0005126c lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x00051270 lw v0, 0x1c(v0)           |     v0 = *((v0 + 7));
    0x00051274 andi v1, v0, 0x20         |     v1 = v0 & 0x20;
    0x00051278 move a0, zero             |     a0 = 0;
    0x0005127c lui a1, 0xf               |     a1 = 0xf4240;
    0x00051280 ori a1, a1, 0x4240        |     
    0x00051284 srl a2, a1, 1             |     a2 = a1 >> 1;
    0x00051288 addiu a1, zero, -1        |     a1 = -1;
    0x0005128c xor a1, v0, a1            |     a1 = v0 ^ a1;
    0x00051290 srlv a1, a2, a1           |     a1 = a2 >> a1;
    0x00051294 move a2, zero             |     a2 = 0;
    0x00051298 sllv s1, a2, v0           |     s1 = a2 << v0;
    0x0005129c or s1, a1, s1             |     s1 = a1 | s1;
    0x000512a0 lui a1, 0xf               |     a1 = 0xf4240;
    0x000512a4 ori a1, a1, 0x4240        |     
    0x000512a8 sllv s0, a1, v0           |     s0 = a1 << v0;
                                         |     if (v1 == 0) {
    0x000512ac movn s1, s0, v1           |         s1 = s0;
                                         |     }
                                         |     if (v1 == 0) {
    0x000512b0 movn s0, a0, v1           |         s0 = a0;
                                         |     }
    0x000512b4 lw a0, 0x48(fp)           |     a0 = *(var_48h);
    0x000512b8 lw a1, 0x4c(fp)           |     a1 = *(var_4ch);
    0x000512bc addu v0, s0, a0           |     v0 = s0 + a0;
    0x000512c0 sltu a2, v0, s0           |     a2 = (v0 < s0) ? 1 : 0;
    0x000512c4 addu v1, s1, a1           |     v1 = s1 + a1;
    0x000512c8 addu a0, a2, v1           |     a0 = a2 + v1;
    0x000512cc move v1, a0               |     v1 = a0;
    0x000512d0 lw a0, 0x2c(fp)           |     a0 = *(var_2ch);
    0x000512d4 sw v0, 0x20(a0)           |     *((a0 + 8)) = v0;
    0x000512d8 sw v1, 0x24(a0)           |     *((a0 + 9)) = v1;
    0x000512dc lw v0, 0x54(fp)           |     v0 = *(var_54h);
    0x000512e0 lw v0, 0x18(v0)           |     v0 = *((v0 + 6));
                                         |     if (v0 != 0) {
    0x000512e4 beqz v0, 0x5131c          |         
    0x000512e8 nop                       |         
    0x000512ec lw v0, 0x2c(fp)           |         v0 = *(var_2ch);
    0x000512f0 lw v1, 0x1c(v0)           |         v1 = *((v0 + 7));
    0x000512f4 lw v0, 0x54(fp)           |         v0 = *(var_54h);
    0x000512f8 lw v0, 0x18(v0)           |         v0 = *((v0 + 6));
    0x000512fc sltu v0, v0, v1           |         v0 = (v0 < v1) ? 1 : 0;
                                         |         if (v0 == 0) {
    0x00051300 beqz v0, 0x5131c          |             goto label_2;
                                         |         }
    0x00051304 nop                       |         
    0x00051308 lw v0, 0x54(fp)           |         v0 = *(var_54h);
    0x0005130c lw v0, 0x1c(v0)           |         v0 = *((v0 + 7));
    0x00051310 sw v0, 0x28(fp)           |         *(var_28h) = v0;
    0x00051314 b 0x51390                 |         goto label_0;
    0x00051318 nop                       |         
                                         |     }
                                         | label_2:
    0x0005131c lw v1, 0x54(fp)           |     v1 = *(var_54h);
    0x00051320 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x00051324 sw v1, 0x18(v0)           |     *((v0 + 6)) = v1;
    0x00051328 lw v0, 0x2c(fp)           |     v0 = *(var_2ch);
    0x0005132c lw v0, 0x18(v0)           |     v0 = *((v0 + 6));
    0x00051330 lw v0, 0x14(v0)           |     v0 = *((v0 + 5));
                                         |     if (v0 != 0) {
    0x00051334 beqz v0, 0x51390          |         
    0x00051338 nop                       |         
    0x0005133c lw v0, 0x2c(fp)           |         v0 = *(var_2ch);
    0x00051340 lw v0, 0x18(v0)           |         v0 = *((v0 + 6));
    0x00051344 lw t0, 0x14(v0)           |         t0 = *((v0 + 5));
    0x00051348 lw v0, 0x2c(fp)           |         v0 = *(var_2ch);
    0x0005134c lw a0, 0x10(v0)           |         a0 = *((v0 + 4));
    0x00051350 lw a1, 0x14(v0)           |         a1 = *((v0 + 5));
    0x00051354 lw v0, 0x2c(fp)           |         v0 = *(var_2ch);
    0x00051358 lw v1, 0x24(v0)           |         v1 = *((v0 + 9));
    0x0005135c lw v0, 0x20(v0)           |         v0 = *((v0 + 8));
    0x00051360 move a2, v0               |         a2 = v0;
    0x00051364 move a3, v1               |         a3 = v1;
    0x00051368 move t9, t0               |         t9 = t0;
    0x0005136c jalr t9                   |         t9 ();
    0x00051370 nop                       |         
    0x00051374 lw gp, 0x20(fp)           |         gp = *(var_20h);
    0x00051378 sw v0, 0x50(fp)           |         *(var_50h) = v0;
    0x0005137c lw v0, 0x50(fp)           |         v0 = *(var_50h);
                                         |         if (v0 == 0) {
    0x00051380 beqz v0, 0x51390          |             goto label_0;
                                         |         }
    0x00051384 nop                       |         
    0x00051388 lw v0, 0x50(fp)           |         v0 = *(var_50h);
    0x0005138c sw v0, 0x28(fp)           |         *(var_28h) = v0;
                                         |     }
                                         | label_0:
    0x00051390 lw v0, 0x28(fp)           |     v0 = *(var_28h);
    0x00051394 move sp, fp               |     
    0x00051398 lw ra, 0x6c(sp)           |     ra = *(var_6ch);
    0x0005139c lw fp, 0x68(sp)           |     fp = *(var_68h);
    0x000513a0 lw s1, 0x64(sp)           |     s1 = *(var_64h);
    0x000513a4 lw s0, 0x60(sp)           |     s0 = *(var_60h);
    0x000513a8 addiu sp, sp, 0x70        |     
    0x000513ac jr ra                     |     return v0;
    0x000513b0 nop                       |     
                                         | }
    ; assembly                                           | /* r2dec pseudo code output */
                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/13893632-15421440.squashfs_v4_le_extract/thirdlib/libcproducer.so @ 0xebfc */
                                                         | #include <stdint.h>
                                                         |  
    ; (fcn) sym.streamLatencyPressureAggregate ()        | void streamLatencyPressureAggregate () {
    0x0000ebfc addiu sp, sp, -0x38                       |     
    0x0000ec00 sw ra, 0x34(sp)                           |     *(var_34h) = ra;
    0x0000ec04 sw fp, 0x30(sp)                           |     *(var_30h) = fp;
    0x0000ec08 move fp, sp                               |     fp = sp;
    0x0000ec0c sw a0, 0x38(fp)                           |     *(arg_38h) = a0;
    0x0000ec10 sw a1, 0x3c(fp)                           |     *(arg_3ch) = a1;
    0x0000ec14 sw a2, 0x40(fp)                           |     *(arg_40h) = a2;
    0x0000ec18 sw a3, 0x44(fp)                           |     *(arg_44h) = a3;
    0x0000ec1c sw zero, 0x20(fp)                         |     *(var_20h) = 0;
    0x0000ec20 lw v0, 0x38(fp)                           |     v0 = *(arg_38h);
    0x0000ec24 sw v0, 0x28(fp)                           |     *(var_28h) = v0;
    0x0000ec28 lw v0, 0x28(fp)                           |     v0 = *(var_28h);
                                                         |     if (v0 == 0) {
    0x0000ec2c bnez v0, 0xec44                           |         
    0x0000ec30 nop                                       |         
    0x0000ec34 addiu v0, zero, 2                         |         v0 = 2;
    0x0000ec38 sw v0, 0x20(fp)                           |         *(var_20h) = v0;
    0x0000ec3c b 0xed54                                  |         goto label_0;
    0x0000ec40 nop                                       |         
                                                         |     }
    0x0000ec44 sw zero, 0x24(fp)                         |     *(var_24h) = 0;
    0x0000ec48 b 0xed3c                                  |     goto label_1;
    0x0000ec4c nop                                       |     
                                                         |     do {
    0x0000ec50 lw v0, 0x28(fp)                           |         v0 = *(var_28h);
    0x0000ec54 lw v1, 0x108(v0)                          |         v1 = *(v0);
    0x0000ec58 lw v0, 0x24(fp)                           |         v0 = *(var_24h);
    0x0000ec5c sll v0, v0, 3                             |         v0 <<= 3;
    0x0000ec60 sll a0, v0, 3                             |         a0 = v0 << 3;
    0x0000ec64 addu v0, v0, a0                           |         v0 += a0;
    0x0000ec68 addu v0, v1, v0                           |         v0 = v1 + v0;
    0x0000ec6c lw v0, 0x18(v0)                           |         v0 = *((v0 + 6));
                                                         |         if (v0 != 0) {
    0x0000ec70 beqz v0, 0xed30                           |             
    0x0000ec74 nop                                       |             
    0x0000ec78 lw v0, 0x28(fp)                           |             v0 = *(var_28h);
    0x0000ec7c lw v1, 0x108(v0)                          |             v1 = *(v0);
    0x0000ec80 lw v0, 0x24(fp)                           |             v0 = *(var_24h);
    0x0000ec84 sll v0, v0, 3                             |             v0 <<= 3;
    0x0000ec88 sll a0, v0, 3                             |             a0 = v0 << 3;
    0x0000ec8c addu v0, v0, a0                           |             v0 += a0;
    0x0000ec90 addu v0, v1, v0                           |             v0 = v1 + v0;
    0x0000ec94 lw t0, 0x18(v0)                           |             t0 = *((v0 + 6));
    0x0000ec98 lw v0, 0x28(fp)                           |             v0 = *(var_28h);
    0x0000ec9c lw v1, 0x108(v0)                          |             v1 = *(v0);
    0x0000eca0 lw v0, 0x24(fp)                           |             v0 = *(var_24h);
    0x0000eca4 sll v0, v0, 3                             |             v0 <<= 3;
    0x0000eca8 sll a0, v0, 3                             |             a0 = v0 << 3;
    0x0000ecac addu v0, v0, a0                           |             v0 += a0;
    0x0000ecb0 addu v0, v1, v0                           |             v0 = v1 + v0;
    0x0000ecb4 lw v1, 0xc(v0)                            |             v1 = *((v0 + 3));
    0x0000ecb8 lw v0, 8(v0)                              |             v0 = *((v0 + 2));
    0x0000ecbc lw a0, 0x48(fp)                           |             a0 = *(arg_48h);
    0x0000ecc0 lw a1, 0x4c(fp)                           |             a1 = *(arg_4ch);
    0x0000ecc4 sw a0, 0x10(sp)                           |             *(var_10h) = a0;
    0x0000ecc8 sw a1, 0x14(sp)                           |             *(var_14h) = a1;
    0x0000eccc move a0, v0                               |             a0 = v0;
    0x0000ecd0 move a1, v1                               |             a1 = v1;
    0x0000ecd4 lw a2, 0x40(fp)                           |             a2 = *(arg_40h);
    0x0000ecd8 lw a3, 0x44(fp)                           |             a3 = *(arg_44h);
    0x0000ecdc move t9, t0                               |             t9 = t0;
    0x0000ece0 jalr t9                                   |             t9 ();
    0x0000ece4 nop                                       |             
    0x0000ece8 sw v0, 0x20(fp)                           |             *(var_20h) = v0;
    0x0000ecec lw v1, 0x20(fp)                           |             v1 = *(var_20h);
    0x0000ecf0 lui v0, 0x1500                            |             v0 = 0x15000001;
    0x0000ecf4 ori v0, v0, 1                             |             
                                                         |             if (v1 == v0) {
    0x0000ecf8 bne v1, v0, 0xed0c                        |                 
    0x0000ecfc nop                                       |                 
    0x0000ed00 sw zero, 0x20(fp)                         |                 *(var_20h) = 0;
    0x0000ed04 b 0xed54                                  |                 goto label_0;
    0x0000ed08 nop                                       |                 
                                                         |             }
    0x0000ed0c lw v0, 0x20(fp)                           |             v0 = *(var_20h);
    0x0000ed10 sw v0, 0x2c(fp)                           |             *(var_2ch) = v0;
    0x0000ed14 lw v0, 0x2c(fp)                           |             v0 = *(var_2ch);
                                                         |             if (v0 == 0) {
    0x0000ed18 beqz v0, 0xed30                           |                 goto label_2;
                                                         |             }
    0x0000ed1c nop                                       |             
    0x0000ed20 lw v0, 0x2c(fp)                           |             v0 = *(var_2ch);
    0x0000ed24 sw v0, 0x20(fp)                           |             *(var_20h) = v0;
    0x0000ed28 b 0xed54                                  |             goto label_0;
    0x0000ed2c nop                                       |             
                                                         |         }
                                                         | label_2:
    0x0000ed30 lw v0, 0x24(fp)                           |         v0 = *(var_24h);
    0x0000ed34 addiu v0, v0, 1                           |         v0++;
    0x0000ed38 sw v0, 0x24(fp)                           |         *(var_24h) = v0;
                                                         | label_1:
    0x0000ed3c lw v0, 0x28(fp)                           |         v0 = *(var_28h);
    0x0000ed40 lw v1, 0x10c(v0)                          |         v1 = *(v0);
    0x0000ed44 lw v0, 0x24(fp)                           |         v0 = *(var_24h);
    0x0000ed48 sltu v0, v0, v1                           |         v0 = (v0 < v1) ? 1 : 0;
    0x0000ed4c bnez v0, 0xec50                           |         
                                                         |     } while (v0 != 0);
    0x0000ed50 nop                                       |     
                                                         | label_0:
    0x0000ed54 lw v0, 0x20(fp)                           |     v0 = *(var_20h);
    0x0000ed58 move sp, fp                               |     
    0x0000ed5c lw ra, 0x34(sp)                           |     ra = *(var_34h);
    0x0000ed60 lw fp, 0x30(sp)                           |     fp = *(var_30h);
    0x0000ed64 addiu sp, sp, 0x38                        |     
    0x0000ed68 jr ra                                     |     return v0;
    0x0000ed6c nop                                       |     
                                                         | }

[*] Function system used 2 times libcproducer.so