[*] Binary protection state of shuttergaind

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


[*] Function printf tear down of shuttergaind

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/shuttergaind @ 0x1fd0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00001fd0 ()              | void fcn_00001fd0 () {
    0x00001fd0 lui gp, 2                 |     
    0x00001fd4 addiu gp, gp, -0x4c80     |     
    0x00001fd8 addu gp, gp, t9           |     gp += t9;
    0x00001fdc addiu sp, sp, -0x20       |     
    0x00001fe0 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00001fe4 sw ra, 0x1c(sp)           |     *(var_1ch) = ra;
    0x00001fe8 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
                                         |     if (a0 != 0) {
    0x00001fec bnez a0, 0x2004           |         goto label_0;
                                         |     }
    0x00001ff0 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001ff4 lw v0, 0x54b8(v0)         |     v0 = *((v0 + 5422));
                                         |     do {
    0x00001ff8 lw ra, 0x1c(sp)           |         ra = *(var_1ch);
    0x00001ffc addiu sp, sp, 0x20        |         
    0x00002000 jr ra                     |         return v0;
                                         | label_0:
    0x00002004 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00002008 move a3, a0               |         a3 = a0;
    0x0000200c lw t9, -0x7f94(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002010 lw a0, (v0)               |         a0 = *(v0);
    0x00002014 addiu a2, a2, 0x3e58      |         a2 += str.Failed_to_get_params_for_invalid_source___d__n;
    0x00002018 addiu a1, zero, 1         |         a1 = 1;
    0x0000201c jalr t9                   |         t9 ();
    0x00002020 move v0, zero             |         v0 = 0;
    0x00002024 b 0x1ff8                  |         
                                         |     } while (1);
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/shuttergaind @ 0x2028 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00002028 ()              | void fcn_00002028 () {
    0x00002028 lui gp, 2                 |     
    0x0000202c addiu gp, gp, -0x4cd8     |     
    0x00002030 addu gp, gp, t9           |     gp += t9;
    0x00002034 addiu sp, sp, -0x40       |     
    0x00002038 lw t9, -0x7fd8(gp)        |     t9 = *((gp - 8182));
    0x0000203c sw s2, 0x28(sp)           |     *(var_28h) = s2;
    0x00002040 lw s2, -0x7ef8(gp)        |     s2 = *((gp - 8126));
    0x00002044 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00002048 sw s1, 0x24(sp)           |     *(var_24h) = s1;
    0x0000204c lw v0, (s2)               |     v0 = *(s2);
    0x00002050 sw ra, 0x3c(sp)           |     *(var_3ch) = ra;
    0x00002054 sw s6, 0x38(sp)           |     *(var_38h) = s6;
    0x00002058 sw s5, 0x34(sp)           |     *(var_34h) = s5;
    0x0000205c sw s4, 0x30(sp)           |     *(var_30h) = s4;
    0x00002060 sw s3, 0x2c(sp)           |     *(var_2ch) = s3;
    0x00002064 sw s0, 0x20(sp)           |     *(var_20h) = s0;
    0x00002068 move s1, a0               |     s1 = a0;
    0x0000206c sw v0, 0x1c(sp)           |     *(var_1ch) = v0;
    0x00002070 addiu t9, t9, 0x1fd0      |     t9 += fcn.00001fd0;
    0x00002074 bal 0x1fd0                |     fcn_00001fd0 ();
    0x00002078 nop                       |     
    0x0000207c lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (s1 != 0) {
    0x00002080 bnez s1, 0x225c           |         goto label_3;
                                         |     }
    0x00002084 move s0, v0               |     s0 = v0;
    0x00002088 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000208c lw s3, 0x54b4(v0)         |     s3 = *((v0 + 5421));
    0x00002090 lw t9, -0x7fd8(gp)        |     t9 = *((gp - 8182));
                                         |     if (s3 == 0) {
    0x00002094 beqz s3, 0x22a8           |         goto label_4;
                                         |     }
    0x00002098 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000209c addiu a1, sp, 0x18        |     a1 = sp + 0x18;
    0x000020a0 lw s5, 0x54b0(v0)         |     s5 = *((v0 + 5420));
    0x000020a4 sw zero, 0x18(sp)         |     *(var_18h_2) = 0;
    0x000020a8 addiu t9, t9, 0x1f70      |     t9 += fcn.00001f70;
    0x000020ac move a0, s5               |     a0 = s5;
    0x000020b0 bal 0x1f70                |     fcn_00001f70 ();
    0x000020b4 lw v1, 0xc(s3)            |     v1 = *((s3 + 3));
    0x000020b8 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000020bc move s4, v0               |     s4 = v0;
                                         |     if (v1 != v0) {
    0x000020c0 bne v1, v0, 0x2200        |         goto label_5;
                                         |     }
    0x000020c4 lw v0, 8(s3)              |     v0 = *((s3 + 2));
    0x000020c8 lw v1, 4(s3)              |     v1 = *((s3 + 1));
                                         | label_0:
    0x000020cc lw a0, 0x18(sp)           |     a0 = *(var_18h_2);
    0x000020d0 sw a0, 8(v0)              |     *((v0 + 2)) = a0;
    0x000020d4 lw a0, 0xc(s3)            |     a0 = *((s3 + 3));
    0x000020d8 addiu s3, s0, 0x340       |     s3 = s0 + 0x340;
    0x000020dc sw a0, 0xc(v0)            |     *((v0 + 3)) = a0;
    0x000020e0 lwl v0, 0x1d(s0)          |     __asm ("lwl v0, 0x1d(s0)");
                                         |     do {
    0x000020e4 lwr v0, 0x1a(s0)          |         __asm ("lwr v0, 0x1a(s0)");
                                         |         if (v0 != 0) {
    0x000020e8 beql v0, zero, 0x21c0     |             
    0x000020ec addiu s0, s0, 0x34        |             s0 += 0x34;
    0x000020f0 lwl a3, 3(s0)             |             __asm ("lwl a3, 3(s0)");
    0x000020f4 lwl a2, 7(s0)             |             __asm ("lwl a2, 7(s0)");
    0x000020f8 lwl a1, 0xb(s0)           |             __asm ("lwl a1, 0xb(s0)");
    0x000020fc lwl a0, 0xf(s0)           |             __asm ("lwl a0, 0xf(s0)");
    0x00002100 lwl v0, 0x13(s0)          |             __asm ("lwl v0, 0x13(s0)");
    0x00002104 lwr a3, (s0)              |             __asm ("lwr a3, (s0)");
    0x00002108 lwr a0, 0xc(s0)           |             __asm ("lwr a0, 0xc(s0)");
    0x0000210c lwr v0, 0x10(s0)          |             __asm ("lwr v0, 0x10(s0)");
    0x00002110 lwr a2, 4(s0)             |             __asm ("lwr a2, 4(s0)");
    0x00002114 lwr a1, 8(s0)             |             __asm ("lwr a1, 8(s0)");
    0x00002118 swl a3, 3(v1)             |             __asm ("swl a3, 3(v1)");
    0x0000211c swr a3, (v1)              |             __asm ("swr a3, (v1)");
    0x00002120 swl a2, 7(v1)             |             __asm ("swl a2, 7(v1)");
    0x00002124 swr a2, 4(v1)             |             __asm ("swr a2, 4(v1)");
    0x00002128 swl a1, 0xb(v1)           |             __asm ("swl a1, 0xb(v1)");
    0x0000212c swr a1, 8(v1)             |             __asm ("swr a1, 8(v1)");
    0x00002130 swl a0, 0xf(v1)           |             __asm ("swl a0, 0xf(v1)");
    0x00002134 swr a0, 0xc(v1)           |             __asm ("swr a0, 0xc(v1)");
    0x00002138 swl v0, 0x13(v1)          |             __asm ("swl v0, 0x13(v1)");
    0x0000213c swr v0, 0x10(v1)          |             __asm ("swr v0, 0x10(v1)");
    0x00002140 lbu v0, 0x14(s0)          |             v0 = *((s0 + 20));
    0x00002144 addiu a0, s0, 0x16        |             a0 = s0 + 0x16;
    0x00002148 sb v0, 0x14(v1)           |             *((v1 + 20)) = v0;
    0x0000214c lbu v0, 0x15(s0)          |             v0 = *((s0 + 21));
    0x00002150 addiu a2, v1, 0x16        |             a2 = v1 + 0x16;
    0x00002154 sb v0, 0x15(v1)           |             *((v1 + 21)) = v0;
    0x00002158 lwl a3, 3(a0)             |             __asm ("lwl a3, 3(a0)");
    0x0000215c addiu v0, s0, 0x1a        |             v0 = s0 + 0x1a;
    0x00002160 addiu a1, v1, 0x1a        |             a1 = v1 + 0x1a;
    0x00002164 lwr a3, (a0)              |             __asm ("lwr a3, (a0)");
    0x00002168 lw t9, -0x7ef4(gp)        |             t9 = sym.imp.memcpy;
    0x0000216c move a0, a3               |             a0 = a3;
    0x00002170 swl a0, 0x19(v1)          |             __asm ("swl a0, 0x19(v1)");
    0x00002174 swr a0, (a2)              |             __asm ("swr a0, (a2)");
    0x00002178 lwl a2, 3(v0)             |             __asm ("lwl a2, 3(v0)");
    0x0000217c addiu a3, v1, 0x1e        |             a3 = v1 + 0x1e;
    0x00002180 move a0, a3               |             a0 = a3;
    0x00002184 lwr a2, (v0)              |             __asm ("lwr a2, (v0)");
    0x00002188 swl a2, 0x1d(v1)          |             __asm ("swl a2, 0x1d(v1)");
    0x0000218c swr a2, (a1)              |             __asm ("swr a2, (a1)");
    0x00002190 lwl a2, 0x1d(s0)          |             __asm ("lwl a2, 0x1d(s0)");
    0x00002194 lwl a1, 0x21(s0)          |             __asm ("lwl a1, 0x21(s0)");
    0x00002198 lwr a2, 0x1a(s0)          |             __asm ("lwr a2, 0x1a(s0)");
    0x0000219c lwr a1, 0x1e(s0)          |             __asm ("lwr a1, 0x1e(s0)");
    0x000021a0 sll a2, a2, 2             |             a2 <<= 2;
    0x000021a4 jalr t9                   |             t9 ();
    0x000021a8 lwl v1, 0x1d(s0)          |             __asm ("lwl v1, 0x1d(s0)");
    0x000021ac lw gp, 0x10(sp)           |             gp = *(var_10h);
    0x000021b0 lwr v1, 0x1a(s0)          |             __asm ("lwr v1, 0x1a(s0)");
    0x000021b4 sll v1, v1, 2             |             v1 <<= 2;
    0x000021b8 addu v1, v0, v1           |             v1 = v0 + v1;
    0x000021bc addiu s0, s0, 0x34        |             s0 += 0x34;
                                         |         }
    0x000021c0 lwl v0, 0x1d(s0)          |         __asm ("lwl v0, 0x1d(s0)");
    0x000021c4 bnel s3, s0, 0x20e4       |         
                                         |     } while (s3 == s0);
                                         |     do {
                                         | label_2:
    0x000021c8 lw a0, 0x1c(sp)           |         a0 = *(var_1ch);
    0x000021cc lw v1, (s2)               |         v1 = *(s2);
    0x000021d0 move v0, s1               |         v0 = s1;
                                         |         if (a0 != v1) {
    0x000021d4 bne a0, v1, 0x2308        |             goto label_6;
                                         |         }
    0x000021d8 lw ra, 0x3c(sp)           |         ra = *(var_3ch);
    0x000021dc lw s6, 0x38(sp)           |         s6 = *(var_38h);
    0x000021e0 lw s5, 0x34(sp)           |         s5 = *(var_34h);
    0x000021e4 lw s4, 0x30(sp)           |         s4 = *(var_30h);
    0x000021e8 lw s3, 0x2c(sp)           |         s3 = *(var_2ch);
    0x000021ec lw s2, 0x28(sp)           |         s2 = *(var_28h);
    0x000021f0 lw s1, 0x24(sp)           |         s1 = *(var_24h);
    0x000021f4 lw s0, 0x20(sp)           |         s0 = *(var_20h);
    0x000021f8 addiu sp, sp, 0x40        |         
    0x000021fc jr ra                     |         return v0;
                                         | label_5:
    0x00002200 move a2, v0               |         a2 = v0;
    0x00002204 lw v0, -0x7fdc(gp)        |         v0 = *((gp - 8183));
    0x00002208 lw t9, -0x7f04(gp)        |         t9 = sym.imp.ftruncate64;
    0x0000220c move a3, zero             |         a3 = 0;
    0x00002210 lw a0, 0x54ac(v0)         |         a0 = *((v0 + 5419));
    0x00002214 addiu s6, zero, -1        |         s6 = -1;
    0x00002218 jalr t9                   |         t9 ();
    0x0000221c lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |         if (v0 == s6) {
    0x00002220 beq v0, s6, 0x22b0        |             goto label_7;
                                         |         }
    0x00002224 lw t9, -0x7fa8(gp)        |         t9 = sym.imp.mremap;
    0x00002228 lw a1, 0xc(s3)            |         a1 = *((s3 + 3));
    0x0000222c lw a0, (s3)               |         a0 = *(s3);
    0x00002230 addiu a3, zero, 1         |         a3 = 1;
    0x00002234 move a2, s4               |         a2 = s4;
    0x00002238 jalr t9                   |         t9 ();
    0x0000223c lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00002240 sw v0, (s3)               |         *(s3) = v0;
                                         |         if (v0 == s6) {
    0x00002244 beq v0, s6, 0x22dc        |             goto label_8;
                                         |         }
    0x00002248 addu v1, v0, s5           |         v1 = v0 + s5;
    0x0000224c sw s4, 0xc(s3)            |         *((s3 + 3)) = s4;
    0x00002250 sw v0, 8(s3)              |         *((s3 + 2)) = v0;
    0x00002254 sw v1, 4(s3)              |         *((s3 + 1)) = v1;
    0x00002258 b 0x20cc                  |         goto label_0;
                                         | label_3:
    0x0000225c lw s0, -0x7ee4(gp)        |         s0 = *((gp - 8121));
    0x00002260 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00002264 lw t9, -0x7f94(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002268 lw a0, (s0)               |         a0 = *(s0);
    0x0000226c move a3, s1               |         a3 = s1;
    0x00002270 addiu a2, a2, 0x3e88      |         a2 += str.Cant_get_shared_mem_for_invalid_source__d_n;
    0x00002274 addiu a1, zero, 1         |         a1 = 1;
    0x00002278 jalr t9                   |         t9 ();
    0x0000227c lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         | label_1:
    0x00002280 lw a0, -0x7fd8(gp)        |         a0 = *((gp - 8182));
    0x00002284 lw t9, -0x7f2c(gp)        |         t9 = sym.imp.fwrite;
    0x00002288 lw a3, (s0)               |         a3 = *(s0);
    0x0000228c addiu a2, zero, 0x27      |         a2 = 0x27;
    0x00002290 addiu a1, zero, 1         |         a1 = 1;
    0x00002294 addiu a0, a0, 0x3eb4      |         a0 += str.Tried_to_update_non_existing_memory..._n;
    0x00002298 jalr t9                   |         t9 ();
    0x0000229c addiu s1, zero, -1        |         s1 = -1;
    0x000022a0 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x000022a4 b 0x21c8                  |         
                                         |     } while (1);
                                         | label_4:
    0x000022a8 lw s0, -0x7ee4(gp)        |     s0 = *((gp - 8121));
    0x000022ac b 0x2280                  |     goto label_1;
                                         | label_7:
    0x000022b0 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x000022b4 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x000022b8 lw t9, -0x7f2c(gp)        |     t9 = sym.imp.fwrite;
    0x000022bc lw a3, (v0)               |     a3 = *(v0);
    0x000022c0 addiu a2, zero, 0x2c      |     a2 = 0x2c;
    0x000022c4 addiu a1, zero, 1         |     a1 = 1;
    0x000022c8 addiu a0, a0, 0x3edc      |     a0 += str.Failed_to_re_ftruncate_shared_memory_region_n;
    0x000022cc jalr t9                   |     t9 ();
    0x000022d0 addiu s1, zero, -1        |     s1 = -1;
    0x000022d4 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000022d8 b 0x21c8                  |     goto label_2;
                                         | label_8:
    0x000022dc lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x000022e0 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x000022e4 lw t9, -0x7f2c(gp)        |     t9 = sym.imp.fwrite;
    0x000022e8 lw a3, (v0)               |     a3 = *(v0);
    0x000022ec addiu a2, zero, 0x1e      |     a2 = 0x1e;
    0x000022f0 addiu a1, zero, 1         |     a1 = 1;
    0x000022f4 addiu a0, a0, 0x3f0c      |     a0 += str.Failed_to_remap_shared_memory_n;
    0x000022f8 jalr t9                   |     t9 ();
    0x000022fc addiu s1, zero, -1        |     s1 = -1;
    0x00002300 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00002304 b 0x21c8                  |     goto label_2;
                                         | label_6:
    0x00002308 lw t9, -0x7f0c(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x0000230c jalr t9                   |     t9 ();
    0x00002310 nop                       |     
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/shuttergaind @ 0x2314 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00002314 ()              | void fcn_00002314 () {
                                         | label_2:
    0x00002314 lui gp, 2                 |     
    0x00002318 addiu gp, gp, -0x4fc4     |     
    0x0000231c addu gp, gp, t9           |     gp += t9;
    0x00002320 addiu sp, sp, -0x50       |     
    0x00002324 addiu v0, sp, 0x34        |     v0 = sp + 0x34;
    0x00002328 sw s1, 0x44(sp)           |     *(var_44h) = s1;
    0x0000232c lw s1, -0x7ef8(gp)        |     s1 = *((gp - 8126));
    0x00002330 lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x00002334 sw s0, 0x40(sp)           |     *(var_40h) = s0;
    0x00002338 lw v1, (s1)               |     v1 = *(s1);
    0x0000233c lw s0, -0x7fd8(gp)        |     s0 = *((gp - 8182));
    0x00002340 sw v0, 0x18(sp)           |     *(var_18h) = v0;
    0x00002344 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x00002348 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x0000234c lw t9, -0x7f24(gp)        |     t9 = sym.imp.sd_bus_call_method;
    0x00002350 addiu a3, a3, 0x3f2c      |     a3 += str.org.freedesktop.DBus;
    0x00002354 addiu v0, v0, 0x3f5c      |     v0 += str.GetNameOwner;
    0x00002358 addiu s0, s0, 0x4324      |     s0 += 0x4324;
    0x0000235c sw gp, 0x28(sp)           |     *(var_28h) = gp;
    0x00002360 sw s2, 0x48(sp)           |     *(var_48h) = s2;
    0x00002364 sw a1, 0x20(sp)           |     *(var_20h) = a1;
    0x00002368 sw ra, 0x4c(sp)           |     *(var_4ch) = ra;
    0x0000236c move s2, a1               |     s2 = a1;
    0x00002370 sw s0, 0x1c(sp)           |     *(var_1ch) = s0;
    0x00002374 sw zero, 0x14(sp)         |     *(var_14h) = 0;
    0x00002378 sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x0000237c addiu a2, a2, 0x3f44      |     a2 += str._org_freedesktop_DBus;
    0x00002380 move a1, a3               |     a1 = a3;
    0x00002384 sw v1, 0x3c(sp)           |     *(var_3ch) = v1;
    0x00002388 sw zero, 0x34(sp)         |     *(var_34h) = 0;
    0x0000238c jalr t9                   |     t9 ();
    0x00002390 nop                       |     
    0x00002394 lw gp, 0x28(sp)           |     gp = *(var_28h);
                                         |     if (v0 >= 0) {
    0x00002398 bgez v0, 0x2410           |         goto label_10;
                                         |     }
    0x0000239c addiu v1, zero, -6        |     v1 = -6;
    0x000023a0 negu a0, v0               |     __asm ("negu a0, v0");
                                         |     if (v0 != v1) {
    0x000023a4 bne v0, v1, 0x23d0        |         goto label_11;
                                         |     }
    0x000023a8 move v0, zero             |     v0 = 0;
                                         |     do {
                                         | label_0:
    0x000023ac lw a0, 0x3c(sp)           |         a0 = *(var_3ch);
    0x000023b0 lw v1, (s1)               |         v1 = *(s1);
    0x000023b4 lw ra, 0x4c(sp)           |         ra = *(var_4ch);
                                         |         if (a0 != v1) {
    0x000023b8 bne a0, v1, 0x2474        |             goto label_12;
                                         |         }
    0x000023bc lw s2, 0x48(sp)           |         s2 = *(var_48h);
    0x000023c0 lw s1, 0x44(sp)           |         s1 = *(var_44h);
    0x000023c4 lw s0, 0x40(sp)           |         s0 = *(var_40h);
    0x000023c8 addiu sp, sp, 0x50        |         
    0x000023cc jr ra                     |         return v0;
                                         | label_11:
    0x000023d0 lw v0, -0x7ee4(gp)        |         v0 = *((gp - 8121));
    0x000023d4 lw t9, -0x7f3c(gp)        |         t9 = sym.imp.strerror;
    0x000023d8 lw s0, (v0)               |         s0 = *(v0);
    0x000023dc jalr t9                   |         t9 ();
    0x000023e0 lw gp, 0x28(sp)           |         gp = *(var_28h);
    0x000023e4 sw v0, 0x10(sp)           |         *(var_10h) = v0;
    0x000023e8 move a3, s2               |         a3 = s2;
    0x000023ec lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x000023f0 lw t9, -0x7f94(gp)        |         t9 = sym.imp.__fprintf_chk
    0x000023f4 addiu a2, a2, 0x3f6c      |         a2 += str.Failed_to_call_GetNameOwner_for_service__s:__s_n;
                                         | label_1:
    0x000023f8 addiu a1, zero, 1         |         a1 = 1;
    0x000023fc move a0, s0               |         a0 = s0;
    0x00002400 jalr t9                   |         t9 ();
    0x00002404 lw gp, 0x28(sp)           |         gp = *(var_28h);
    0x00002408 addiu v0, zero, -1        |         v0 = -1;
    0x0000240c b 0x23ac                  |         
                                         |     } while (1);
                                         | label_10:
    0x00002410 lw t9, -0x7f14(gp)        |     t9 = sym.imp.sd_bus_message_read;
    0x00002414 lw a0, 0x34(sp)           |     a0 = *(var_34h);
    0x00002418 addiu a2, sp, 0x38        |     a2 = sp + 0x38;
    0x0000241c move a1, s0               |     a1 = s0;
    0x00002420 jalr t9                   |     t9 ();
    0x00002424 lw gp, 0x28(sp)           |     gp = *(var_28h);
                                         |     if (v0 >= 0) {
    0x00002428 bltz v0, 0x2444           |         
    0x0000242c lw t9, -0x7f58(gp)        |         t9 = sym.imp.sd_bus_message_unref;
    0x00002430 lw a0, 0x34(sp)           |         a0 = *(var_34h);
    0x00002434 jalr t9                   |         t9 ();
    0x00002438 lw gp, 0x28(sp)           |         gp = *(var_28h);
    0x0000243c addiu v0, zero, 1         |         v0 = 1;
    0x00002440 b 0x23ac                  |         goto label_0;
                                         |     }
    0x00002444 negu a0, v0               |     __asm ("negu a0, v0");
    0x00002448 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x0000244c lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00002450 lw s0, (v0)               |     s0 = *(v0);
    0x00002454 jalr t9                   |     t9 ();
    0x00002458 lw gp, 0x28(sp)           |     gp = *(var_28h);
    0x0000245c sw v0, 0x10(sp)           |     *(var_10h) = v0;
    0x00002460 move a3, s2               |     a3 = s2;
    0x00002464 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002468 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x0000246c addiu a2, a2, 0x3fa0      |     a2 += str.Failed_to_read_unique_name_for_service__s:__s_n;
    0x00002470 b 0x23f8                  |     goto label_1;
                                         | label_12:
    0x00002474 lw t9, -0x7f0c(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00002478 jalr t9                   |     t9 ();
    0x0000247c nop                       |     
    0x00002480 lui gp, 2                 |     
    0x00002484 addiu gp, gp, -0x5130     |     
    0x00002488 addu gp, gp, t9           |     gp += t9;
    0x0000248c addiu sp, sp, -0xd0       |     
    0x00002490 lw t9, -0x7f14(gp)        |     t9 = sym.imp.sd_bus_message_read;
    0x00002494 sw s1, 0xac(sp)           |     *(var_ach) = s1;
    0x00002498 lw s1, -0x7ef8(gp)        |     s1 = *((gp - 8126));
    0x0000249c sw s3, 0xb4(sp)           |     *(var_b4h) = s3;
    0x000024a0 move s3, a1               |     s3 = a1;
    0x000024a4 lw v0, (s1)               |     v0 = *(s1);
    0x000024a8 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x000024ac sw gp, 0x30(sp)           |     *(var_30h) = gp;
    0x000024b0 sw s6, 0xc0(sp)           |     *(var_c0h) = s6;
    0x000024b4 sw s0, 0xa8(sp)           |     *(var_a8h) = s0;
    0x000024b8 sw ra, 0xcc(sp)           |     *(var_cch) = ra;
    0x000024bc sw fp, 0xc8(sp)           |     *(var_c8h) = fp;
    0x000024c0 sw s7, 0xc4(sp)           |     *(var_c4h) = s7;
    0x000024c4 sw s5, 0xbc(sp)           |     *(var_bch) = s5;
    0x000024c8 sw s4, 0xb8(sp)           |     *(var_b8h) = s4;
    0x000024cc sw s2, 0xb0(sp)           |     *(var_b0h) = s2;
    0x000024d0 move s6, a2               |     s6 = a2;
    0x000024d4 addiu a3, sp, 0x44        |     a3 = sp + 0x44;
    0x000024d8 addiu a2, sp, 0x50        |     a2 = sp + 0x50;
    0x000024dc addiu a1, a1, 0x4018      |     a1 += 0x4018;
    0x000024e0 sw v0, 0xa4(sp)           |     *(var_a4h) = v0;
    0x000024e4 sw zero, 0x58(sp)         |     *(var_58h) = 0;
    0x000024e8 sw zero, 0x5c(sp)         |     *(var_5ch) = 0;
    0x000024ec sw zero, 0x60(sp)         |     *(var_60h) = 0;
    0x000024f0 move s0, a0               |     s0 = a0;
    0x000024f4 jalr t9                   |     t9 ();
    0x000024f8 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x000024fc bltz v0, 0x27f4           |         goto label_13;
                                         |     }
    0x00002500 lw v0, 0x50(sp)           |     v0 = *(var_50h);
    0x00002504 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
                                         |     if (v0 != 0) {
    0x00002508 bnez v0, 0x2bd0           |         goto label_14;
                                         |     }
    0x0000250c lw t9, -0x7ee0(gp)        |     t9 = sym.imp.sd_bus_message_peek_type;
    0x00002510 addiu a2, sp, 0x40        |     a2 = sp + 0x40;
    0x00002514 move a1, zero             |     a1 = 0;
    0x00002518 move a0, s0               |     a0 = s0;
    0x0000251c jalr t9                   |     t9 ();
    0x00002520 move s7, v0               |     s7 = v0;
    0x00002524 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x00002528 bltz v0, 0x2660           |         goto label_15;
                                         |     }
    0x0000252c lw t9, -0x7f74(gp)        |     t9 = sym.imp.sd_bus_message_enter_container;
    0x00002530 lw a2, 0x40(sp)           |     a2 = *(var_40h_3);
    0x00002534 addiu a1, zero, 0x76      |     a1 = 0x76;
    0x00002538 move a0, s0               |     a0 = s0;
    0x0000253c jalr t9                   |     t9 ();
    0x00002540 move s7, v0               |     s7 = v0;
    0x00002544 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x00002548 bltz v0, 0x293c           |         goto label_16;
                                         |     }
    0x0000254c lw s4, 0x40(sp)           |     s4 = *(var_40h_3);
    0x00002550 lw s5, -0x7fd8(gp)        |     s5 = *((gp - 8182));
    0x00002554 lw t9, -0x7ed4(gp)        |     t9 = sym.imp.strcmp;
    0x00002558 move a0, s4               |     a0 = s4;
    0x0000255c lw s2, -0x7fd8(gp)        |     s2 = *((gp - 8182));
    0x00002560 addiu a1, s5, 0x40cc      |     a1 = s5 + 0x40cc;
    0x00002564 jalr t9                   |     t9 ();
    0x00002568 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x0000256c move a0, s4               |     a0 = s4;
    0x00002570 addiu a1, s2, 0x4324      |     a1 = s2 + 0x4324;
    0x00002574 lw t9, -0x7ed4(gp)        |     t9 = sym.imp.strcmp;
    0x00002578 move s4, v0               |     s4 = v0;
    0x0000257c jalr t9                   |     t9 ();
    0x00002580 sw v0, 0x38(sp)           |     *(var_38h_3) = v0;
    0x00002584 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (s4 == 0) {
    0x00002588 beqz s4, 0x2754           |         goto label_17;
                                         |     }
    0x0000258c lw v0, 0x38(sp)           |     v0 = *(var_38h_3);
    0x00002590 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
                                         |     if (v0 != 0) {
    0x00002594 bnez v0, 0x2bdc           |         goto label_18;
                                         |     }
    0x00002598 lw t9, -0x7f5c(gp)        |     t9 = sym.imp.sd_bus_message_read_basic;
    0x0000259c addiu a2, sp, 0x48        |     a2 = sp + 0x48;
    0x000025a0 addiu a1, zero, 0x73      |     a1 = 0x73;
    0x000025a4 move a0, s0               |     a0 = s0;
    0x000025a8 jalr t9                   |     t9 ();
    0x000025ac move s7, v0               |     s7 = v0;
    0x000025b0 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x000025b4 bltz v0, 0x29f8           |         goto label_19;
                                         |     }
                                         | label_4:
    0x000025b8 lw t9, -0x7f18(gp)        |     t9 = sym.imp.sd_bus_message_exit_container;
    0x000025bc move a0, s0               |     a0 = s0;
    0x000025c0 jalr t9                   |     t9 ();
    0x000025c4 move s7, v0               |     s7 = v0;
    0x000025c8 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x000025cc bltz v0, 0x2834           |         goto label_20;
                                         |     }
    0x000025d0 lw s7, -0x7fdc(gp)        |     s7 = *((gp - 8183));
    0x000025d4 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000025d8 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x000025dc addiu t9, v0, 0x2314      |     t9 = v0 + fcn.00002314;
    0x000025e0 lw a0, 0x54a8(s7)         |     a0 = *((s7 + 5418));
    0x000025e4 addiu a1, a1, 0x4150      |     a1 += str.com.axis.VideoControl;
    0x000025e8 sw t9, 0x3c(sp)           |     *(var_3ch_3) = t9;
    0x000025ec bal 0x2314                |     fcn_00002314 ();
                                         |     goto label_2;
    0x000025f0 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 != 0) {
    0x000025f4 bnez v0, 0x2870           |         goto label_21;
                                         |     }
    0x000025f8 move t9, s3               |     t9 = s3;
    0x000025fc lw a0, 0x50(sp)           |     a0 = *(var_50h);
    0x00002600 jalr t9                   |     t9 ();
    0x00002604 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002608 lw s2, 0x44(sp)           |     s2 = *(var_44h_2);
    0x0000260c move fp, v0               |     fp = v0;
    0x00002610 addiu s3, v0, 0x340       |     s3 = v0 + 0x340;
    0x00002614 lw t9, -0x7ed4(gp)        |     t9 = sym.imp.strcmp;
                                         |     do {
    0x00002618 move a1, s2               |         a1 = s2;
    0x0000261c move a0, fp               |         a0 = fp;
    0x00002620 jalr t9                   |         t9 ();
    0x00002624 lw gp, 0x30(sp)           |         gp = *(var_30h);
                                         |         if (v0 == 0) {
    0x00002628 beqz v0, 0x26d8           |             goto label_22;
                                         |         }
    0x0000262c addiu fp, fp, 0x34        |         fp += 0x34;
    0x00002630 lw t9, -0x7ed4(gp)        |         t9 = sym.imp.strcmp;
    0x00002634 bne s3, fp, 0x2618        |         
                                         |     } while (s3 != fp);
                                         |     do {
    0x00002638 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x0000263c lw t9, -0x7f10(gp)        |         t9 = sym.imp.sd_bus_error_set_const;
    0x00002640 addiu a2, a2, 0x4228      |         a2 += str.Invalid_parameter;
                                         | label_9:
    0x00002644 lw a1, -0x7fd8(gp)        |         a1 = *((gp - 8182));
    0x00002648 move a0, s6               |         a0 = s6;
    0x0000264c addiu a1, a1, 0x404c      |         a1 += str.org.freedesktop.DBus.Error.InvalidArgs;
    0x00002650 jalr t9                   |         t9 ();
    0x00002654 addiu s7, zero, -0x16     |         s7 = -0x16;
    0x00002658 lw gp, 0x30(sp)           |         gp = *(var_30h);
    0x0000265c b 0x2698                  |         goto label_3;
                                         | label_15:
    0x00002660 negu a0, v0               |         __asm ("negu a0, v0");
    0x00002664 lw v0, -0x7ee4(gp)        |         v0 = *((gp - 8121));
    0x00002668 lw t9, -0x7f3c(gp)        |         t9 = sym.imp.strerror;
    0x0000266c lw s0, (v0)               |         s0 = *(v0);
    0x00002670 jalr t9                   |         t9 ();
    0x00002674 lw gp, 0x30(sp)           |         gp = *(var_30h);
    0x00002678 move a3, v0               |         a3 = v0;
    0x0000267c addiu a1, zero, 1         |         a1 = 1;
    0x00002680 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00002684 lw t9, -0x7f94(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002688 addiu a2, a2, 0x4074      |         a2 += str.Failed_to_peek_at_content__set_:__s_n;
    0x0000268c move a0, s0               |         a0 = s0;
    0x00002690 jalr t9                   |         t9 ();
    0x00002694 lw gp, 0x30(sp)           |         gp = *(var_30h);
                                         | label_3:
    0x00002698 lw a0, 0xa4(sp)           |         a0 = *(var_a4h);
    0x0000269c lw v1, (s1)               |         v1 = *(s1);
    0x000026a0 move v0, s7               |         v0 = s7;
                                         |         if (a0 != v1) {
    0x000026a4 bne a0, v1, 0x2be8        |             goto label_23;
                                         |         }
    0x000026a8 lw ra, 0xcc(sp)           |         ra = *(var_cch);
    0x000026ac lw fp, 0xc8(sp)           |         fp = *(var_c8h);
    0x000026b0 lw s7, 0xc4(sp)           |         s7 = *(var_c4h);
    0x000026b4 lw s6, 0xc0(sp)           |         s6 = *(var_c0h);
    0x000026b8 lw s5, 0xbc(sp)           |         s5 = *(var_bch);
    0x000026bc lw s4, 0xb8(sp)           |         s4 = *(var_b8h);
    0x000026c0 lw s3, 0xb4(sp)           |         s3 = *(var_b4h);
    0x000026c4 lw s2, 0xb0(sp)           |         s2 = *(var_b0h);
    0x000026c8 lw s1, 0xac(sp)           |         s1 = *(var_ach);
    0x000026cc lw s0, 0xa8(sp)           |         s0 = *(var_a8h);
    0x000026d0 addiu sp, sp, 0xd0        |         
    0x000026d4 jr ra                     |         return v0;
                                         | label_22:
    0x000026d8 lw t9, -0x7ef0(gp)        |         t9 = sym.imp.strdup;
    0x000026dc lw a0, 0x28(fp)           |         a0 = *(arg_28h);
    0x000026e0 jalr t9                   |         t9 ();
    0x000026e4 move s2, v0               |         s2 = v0;
    0x000026e8 lw gp, 0x30(sp)           |         gp = *(var_30h);
    0x000026ec beqz v0, 0x2638           |         
                                         |     } while (v0 == 0);
    0x000026f0 lw s3, -0x7fd8(gp)        |     s3 = *((gp - 8182));
    0x000026f4 lw a0, 0x54a8(s7)         |     a0 = *((s7 + 5418));
    0x000026f8 lw t9, 0x3c(sp)           |     t9 = *(var_3ch_3);
    0x000026fc addiu a1, s3, 0x4004      |     a1 = s3 + str.com.axis.ImcControl;
    0x00002700 jalr t9                   |     t9 ();
    0x00002704 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 == 0) {
    0x00002708 beqz v0, 0x27b0           |         goto label_24;
                                         |     }
    0x0000270c lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002710 addiu a1, s3, 0x4004      |     a1 = s3 + str.com.axis.ImcControl;
    0x00002714 addiu a2, a2, 0x3fec      |     a2 += str._com_axis_ImcControl;
                                         | label_5:
    0x00002718 lw v0, 0x38(sp)           |     v0 = *(var_38h_3);
                                         |     if (s4 == 0) {
    0x0000271c beqz s4, 0x2978           |         goto label_25;
                                         |     }
    0x00002720 lw t9, -0x7eec(gp)        |     t9 = sym.imp.free;
                                         |     if (v0 == 0) {
    0x00002724 beqz v0, 0x2a34           |         goto label_26;
                                         |     }
    0x00002728 move a0, s2               |     a0 = s2;
    0x0000272c jalr t9                   |     t9 ();
    0x00002730 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         | label_6:
    0x00002734 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x00002738 lw t9, -0x7f30(gp)        |     t9 = sym.imp.sd_bus_reply_method_return;
    0x0000273c addiu a1, a1, 0x48ec      |     a1 += 0x48ec;
    0x00002740 move a0, s0               |     a0 = s0;
    0x00002744 jalr t9                   |     t9 ();
    0x00002748 move s7, v0               |     s7 = v0;
    0x0000274c lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002750 b 0x2698                  |     goto label_3;
                                         | label_17:
    0x00002754 lw t9, -0x7f5c(gp)        |     t9 = sym.imp.sd_bus_message_read_basic;
    0x00002758 addiu a2, sp, 0x4c        |     a2 = sp + 0x4c;
    0x0000275c addiu a1, zero, 0x69      |     a1 = 0x69;
    0x00002760 move a0, s0               |     a0 = s0;
    0x00002764 jalr t9                   |     t9 ();
    0x00002768 move s7, v0               |     s7 = v0;
    0x0000276c lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 >= 0) {
    0x00002770 bgez v0, 0x25b8           |         goto label_4;
                                         |     }
    0x00002774 negu a0, v0               |     __asm ("negu a0, v0");
    0x00002778 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x0000277c lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00002780 lw s0, (v0)               |     s0 = *(v0);
    0x00002784 jalr t9                   |     t9 ();
    0x00002788 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x0000278c move a3, v0               |     a3 = v0;
    0x00002790 addiu a1, zero, 1         |     a1 = 1;
    0x00002794 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002798 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x0000279c addiu a2, a2, 0x40d0      |     a2 += str.Failed_to_read_int_value:__s_n;
    0x000027a0 move a0, s0               |     a0 = s0;
    0x000027a4 jalr t9                   |     t9 ();
    0x000027a8 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x000027ac b 0x2698                  |     goto label_3;
                                         | label_24:
    0x000027b0 lw v0, 0x50(sp)           |     v0 = *(var_50h);
    0x000027b4 lw t9, -0x7ed0(gp)        |     t9 = sym.imp.__snprintf_chk
    0x000027b8 sw v0, 0x14(sp)           |     *(var_14h_3) = v0;
    0x000027bc lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000027c0 addiu s3, sp, 0x64        |     s3 = sp + 0x64;
    0x000027c4 addiu v0, v0, 0x423c      |     v0 += str._com_axis_ImageControl__d_0;
    0x000027c8 addiu a2, zero, 1         |     a2 = 1;
    0x000027cc addiu a1, zero, 0x25      |     a1 = 0x25;
    0x000027d0 sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x000027d4 addiu a3, zero, 0x25      |     a3 = 0x25;
    0x000027d8 move a0, s3               |     a0 = s3;
    0x000027dc jalr t9                   |     t9 ();
    0x000027e0 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x000027e4 move a2, s3               |     a2 = s3;
    0x000027e8 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x000027ec addiu a1, a1, 0x3fd4      |     a1 += str.com.axis.ImageControl;
    0x000027f0 b 0x2718                  |     goto label_5;
                                         | label_13:
    0x000027f4 negu a0, v0               |     __asm ("negu a0, v0");
    0x000027f8 move s7, v0               |     s7 = v0;
    0x000027fc lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00002800 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00002804 lw s0, (v0)               |     s0 = *(v0);
    0x00002808 jalr t9                   |     t9 ();
    0x0000280c lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002810 move a3, v0               |     a3 = v0;
    0x00002814 addiu a1, zero, 1         |     a1 = 1;
    0x00002818 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x0000281c lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00002820 addiu a2, a2, 0x401c      |     a2 += str.Failed_to_parse_parameters:__s_n;
    0x00002824 move a0, s0               |     a0 = s0;
    0x00002828 jalr t9                   |     t9 ();
    0x0000282c lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002830 b 0x2698                  |     goto label_3;
                                         | label_20:
    0x00002834 negu a0, v0               |     __asm ("negu a0, v0");
    0x00002838 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x0000283c lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00002840 lw s0, (v0)               |     s0 = *(v0);
    0x00002844 jalr t9                   |     t9 ();
    0x00002848 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x0000284c move a3, v0               |     a3 = v0;
    0x00002850 addiu a1, zero, 1         |     a1 = 1;
    0x00002854 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002858 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x0000285c addiu a2, a2, 0x4124      |     a2 += str.Failed_to_exit_variant_container__set_:__s_n;
    0x00002860 move a0, s0               |     a0 = s0;
    0x00002864 jalr t9                   |     t9 ();
    0x00002868 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x0000286c b 0x2698                  |     goto label_3;
                                         | label_21:
    0x00002870 lw v0, 0x4c(sp)           |     v0 = *(var_4ch_3);
    0x00002874 lw t9, -0x7ed0(gp)        |     t9 = sym.imp.__snprintf_chk
    0x00002878 sw v0, 0x18(sp)           |     *(var_18h_3) = v0;
    0x0000287c lw v0, 0x44(sp)           |     v0 = *(var_44h_2);
    0x00002880 addiu s3, sp, 0x64        |     s3 = sp + 0x64;
    0x00002884 sw v0, 0x14(sp)           |     *(var_14h_3) = v0;
    0x00002888 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x0000288c addiu a3, zero, 0x40      |     a3 = 0x40;
    0x00002890 addiu v0, v0, 0x4168      |     v0 += str._s:int32:_d;
    0x00002894 addiu a2, zero, 1         |     a2 = 1;
    0x00002898 addiu a1, zero, 0x40      |     a1 = 0x40;
    0x0000289c move a0, s3               |     a0 = s3;
    0x000028a0 sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x000028a4 jalr t9                   |     t9 ();
    0x000028a8 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x000028ac lw a0, 0x54a8(s7)         |     a0 = *((s7 + 5418));
    0x000028b0 addiu s2, s2, 0x4324      |     s2 += 0x4324;
    0x000028b4 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000028b8 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x000028bc addiu v0, v0, 0x41cc      |     v0 += str.ImageSourceSensor;
    0x000028c0 sw v0, 0x24(sp)           |     *(var_24h_2) = v0;
    0x000028c4 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000028c8 lw a3, -0x7fd8(gp)        |     a3 = *((gp - 8182));
    0x000028cc addiu v0, v0, 0x41e0      |     v0 += 0x41e0;
    0x000028d0 sw v0, 0x1c(sp)           |     *(var_1ch_3) = v0;
    0x000028d4 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000028d8 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000028dc lw t9, -0x7f24(gp)        |     t9 = sym.imp.sd_bus_call_method;
    0x000028e0 addiu a1, a1, 0x41b0      |     a1 += str.com.axis.PTZ.Driver.id12;
    0x000028e4 addiu v0, v0, 0x41e4      |     v0 += 0x41e4;
    0x000028e8 addiu s4, sp, 0x58        |     s4 = sp + 0x58;
    0x000028ec sw s3, 0x2c(sp)           |     *(var_2ch) = s3;
    0x000028f0 sw s2, 0x28(sp)           |     *(var_28h_3) = s2;
    0x000028f4 sw a1, 0x20(sp)           |     *(var_20h_3) = a1;
    0x000028f8 sw zero, 0x18(sp)         |     *(var_18h_3) = 0;
    0x000028fc sw s4, 0x14(sp)           |     *(var_14h_3) = s4;
    0x00002900 sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x00002904 addiu a3, a3, 0x4174      |     a3 += str.org.freedesktop.DBus.Properties;
    0x00002908 addiu a2, a2, 0x4194      |     a2 += str._com_axis_PTZ_Driver_id12;
    0x0000290c jalr t9                   |     t9 ();
    0x00002910 move s7, v0               |     s7 = v0;
    0x00002914 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 >= 0) {
    0x00002918 bgez v0, 0x2734           |         goto label_6;
                                         |     }
    0x0000291c lw t9, -0x7f48(gp)        |     t9 = sym.imp.sd_bus_error_free;
    0x00002920 move a0, s4               |     a0 = s4;
    0x00002924 jalr t9                   |     t9 ();
    0x00002928 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x0000292c lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002930 lw t9, -0x7f10(gp)        |     t9 = sym.imp.sd_bus_error_set_const;
    0x00002934 addiu a2, a2, 0x41e8      |     a2 += str.Failed_to_set_PTZ_property;
    0x00002938 b 0x29e0                  |     goto label_27;
                                         | label_16:
    0x0000293c negu a0, v0               |     __asm ("negu a0, v0");
    0x00002940 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00002944 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00002948 lw s0, (v0)               |     s0 = *(v0);
    0x0000294c jalr t9                   |     t9 ();
    0x00002950 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002954 move a3, v0               |     a3 = v0;
    0x00002958 addiu a1, zero, 1         |     a1 = 1;
    0x0000295c lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002960 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00002964 addiu a2, a2, 0x409c      |     a2 += str.Failed_to_enter_variant_container__set_:__s_n;
    0x00002968 move a0, s0               |     a0 = s0;
    0x0000296c jalr t9                   |     t9 ();
    0x00002970 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002974 b 0x2698                  |     goto label_3;
                                         | label_25:
    0x00002978 lw v0, 0x4c(sp)           |     v0 = *(var_4ch_3);
    0x0000297c lw t9, -0x7f84(gp)        |     t9 = sym.imp.sd_bus_set_property;
    0x00002980 sw v0, 0x1c(sp)           |     *(var_1ch_3) = v0;
    0x00002984 lw v0, 0x44(sp)           |     v0 = *(var_44h_2);
    0x00002988 lw a0, 0x54a8(s7)         |     a0 = *((s7 + 5418));
    0x0000298c addiu s5, s5, 0x40cc      |     s5 += 0x40cc;
    0x00002990 addiu s3, sp, 0x58        |     s3 = sp + 0x58;
    0x00002994 sw s5, 0x18(sp)           |     *(var_18h_3) = s5;
    0x00002998 sw s3, 0x14(sp)           |     *(var_14h_3) = s3;
    0x0000299c sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x000029a0 move a3, s2               |     a3 = s2;
    0x000029a4 jalr t9                   |     t9 ();
    0x000029a8 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x000029ac move s7, v0               |     s7 = v0;
                                         | label_7:
    0x000029b0 lw t9, -0x7eec(gp)        |     t9 = sym.imp.free;
    0x000029b4 move a0, s2               |     a0 = s2;
    0x000029b8 jalr t9                   |     t9 ();
    0x000029bc lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (s7 >= 0) {
    0x000029c0 bgez s7, 0x2734           |         goto label_6;
                                         |     }
    0x000029c4 lw t9, -0x7f48(gp)        |     t9 = sym.imp.sd_bus_error_free;
    0x000029c8 move a0, s3               |     a0 = s3;
    0x000029cc jalr t9                   |     t9 ();
    0x000029d0 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x000029d4 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000029d8 lw t9, -0x7f10(gp)        |     t9 = sym.imp.sd_bus_error_set_const;
    0x000029dc addiu a2, a2, 0x4260      |     a2 += str.Failed_to_set_property;
                                         | label_27:
    0x000029e0 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x000029e4 move a0, s6               |     a0 = s6;
    0x000029e8 addiu a1, a1, 0x4204      |     a1 += str.org.freedesktop.DBus.Error.Failed;
    0x000029ec jalr t9                   |     t9 ();
    0x000029f0 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x000029f4 b 0x2698                  |     goto label_3;
                                         | label_19:
    0x000029f8 negu a0, v0               |     __asm ("negu a0, v0");
    0x000029fc lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00002a00 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00002a04 lw s0, (v0)               |     s0 = *(v0);
    0x00002a08 jalr t9                   |     t9 ();
    0x00002a0c lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002a10 move a3, v0               |     a3 = v0;
    0x00002a14 addiu a1, zero, 1         |     a1 = 1;
    0x00002a18 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002a1c lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00002a20 addiu a2, a2, 0x40f0      |     a2 += str.Failed_to_read_string_value:__s_n;
    0x00002a24 move a0, s0               |     a0 = s0;
    0x00002a28 jalr t9                   |     t9 ();
    0x00002a2c lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002a30 b 0x2698                  |     goto label_3;
                                         | label_26:
    0x00002a34 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x00002a38 lw s4, 0x54a8(s7)         |     s4 = *((s7 + 5418));
    0x00002a3c addiu v0, v0, 0x41e4      |     v0 += 0x41e4;
    0x00002a40 sw v0, 0x14(sp)           |     *(var_14h_3) = v0;
    0x00002a44 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x00002a48 lw t9, -0x7f80(gp)        |     t9 = sym.imp.sd_bus_message_new_method_call;
    0x00002a4c addiu v0, v0, 0x4174      |     v0 += str.org.freedesktop.DBus.Properties;
    0x00002a50 move a3, a2               |     a3 = a2;
    0x00002a54 sw v0, 0x10(sp)           |     *(var_10h_3) = v0;
    0x00002a58 move a2, a1               |     a2 = a1;
    0x00002a5c move a0, s4               |     a0 = s4;
    0x00002a60 addiu a1, sp, 0x54        |     a1 = sp + 0x54;
    0x00002a64 sw zero, 0x54(sp)         |     *(var_54h_2) = 0;
    0x00002a68 lw s3, 0x44(sp)           |     s3 = *(var_44h_2);
    0x00002a6c lw s5, 0x48(sp)           |     s5 = *(var_48h_3);
    0x00002a70 jalr t9                   |     t9 ();
    0x00002a74 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x00002a78 bltz v0, 0x2bb0           |         goto label_28;
                                         |     }
    0x00002a7c lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x00002a80 lw t9, -0x7f8c(gp)        |     t9 = sym.imp.sd_bus_message_append;
    0x00002a84 lw a0, 0x54(sp)           |     a0 = *(var_54h_2);
    0x00002a88 move a3, s3               |     a3 = s3;
    0x00002a8c move a2, s2               |     a2 = s2;
    0x00002a90 addiu a1, a1, 0x4258      |     a1 += 0x4258;
    0x00002a94 jalr t9                   |     t9 ();
    0x00002a98 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x00002a9c bltz v0, 0x2bb0           |         goto label_28;
                                         |     }
    0x00002aa0 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002aa4 lw t9, -0x7f88(gp)        |     t9 = sym.imp.sd_bus_message_open_container;
    0x00002aa8 lw a0, 0x54(sp)           |     a0 = *(var_54h_2);
    0x00002aac addiu a2, a2, 0x425c      |     a2 += 0x425c;
    0x00002ab0 addiu a1, zero, 0x76      |     a1 = 0x76;
    0x00002ab4 jalr t9                   |     t9 ();
    0x00002ab8 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x00002abc bltz v0, 0x2bb0           |         goto label_28;
                                         |     }
    0x00002ac0 lw fp, -0x7fd8(gp)        |     fp = *((gp - 8182));
    0x00002ac4 lw t9, -0x7f88(gp)        |     t9 = sym.imp.sd_bus_message_open_container;
    0x00002ac8 lw a0, 0x54(sp)           |     a0 = *(var_54h_2);
    0x00002acc addiu a2, fp, 0x4a20      |     a2 = fp + 0x4a20;
    0x00002ad0 addiu a1, zero, 0x61      |     a1 = 0x61;
    0x00002ad4 jalr t9                   |     t9 ();
    0x00002ad8 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x00002adc bltz v0, 0x2bb0           |         goto label_28;
                                         |     }
    0x00002ae0 move s3, zero             |     s3 = 0;
    0x00002ae4 addiu s7, fp, 0x4a20      |     s7 = fp + 0x4a20;
    0x00002ae8 b 0x2b0c                  |     
                                         |     while (v0 != 0) {
    0x00002aec addu v0, s5, s3           |         v0 = s5 + s3;
    0x00002af0 lw t9, -0x7f8c(gp)        |         t9 = sym.imp.sd_bus_message_append;
    0x00002af4 lb a2, (v0)               |         a2 = *(v0);
    0x00002af8 move a1, s7               |         a1 = s7;
    0x00002afc jalr t9                   |         t9 ();
    0x00002b00 lw gp, 0x30(sp)           |         gp = *(var_30h);
                                         |         if (v0 < 0) {
    0x00002b04 bltz v0, 0x2bb0           |             goto label_28;
                                         |         }
    0x00002b08 addiu s3, s3, 1           |         s3++;
    0x00002b0c lw t9, -0x7f4c(gp)        |         t9 = sym.imp.strlen;
    0x00002b10 move a0, s5               |         a0 = s5;
    0x00002b14 jalr t9                   |         t9 ();
    0x00002b18 sltu v0, s3, v0           |         v0 = (s3 < v0) ? 1 : 0;
    0x00002b1c lw gp, 0x30(sp)           |         gp = *(var_30h);
    0x00002b20 lw a0, 0x54(sp)           |         a0 = *(var_54h_2);
    0x00002b24 bnez v0, 0x2aec           |         
                                         |     }
    0x00002b28 lw t9, -0x7f8c(gp)        |     t9 = sym.imp.sd_bus_message_append;
    0x00002b2c move a2, zero             |     a2 = 0;
    0x00002b30 addiu a1, fp, 0x4a20      |     a1 = fp + 0x4a20;
    0x00002b34 jalr t9                   |     t9 ();
    0x00002b38 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x00002b3c bltz v0, 0x2bb0           |         goto label_28;
                                         |     }
    0x00002b40 lw t9, -0x7ecc(gp)        |     t9 = sym.imp.sd_bus_message_close_container;
    0x00002b44 lw a0, 0x54(sp)           |     a0 = *(var_54h_2);
    0x00002b48 jalr t9                   |     t9 ();
    0x00002b4c lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x00002b50 bltz v0, 0x2bb0           |         goto label_28;
                                         |     }
    0x00002b54 lw t9, -0x7ecc(gp)        |     t9 = sym.imp.sd_bus_message_close_container;
    0x00002b58 lw a0, 0x54(sp)           |     a0 = *(var_54h_2);
    0x00002b5c jalr t9                   |     t9 ();
    0x00002b60 lw gp, 0x30(sp)           |     gp = *(var_30h);
                                         |     if (v0 < 0) {
    0x00002b64 bltz v0, 0x2bb0           |         goto label_28;
                                         |     }
    0x00002b68 lw t9, -0x7f08(gp)        |     t9 = sym.imp.sd_bus_call;
    0x00002b6c addiu s3, sp, 0x58        |     s3 = sp + 0x58;
    0x00002b70 lw a1, 0x54(sp)           |     a1 = *(var_54h_2);
    0x00002b74 sw zero, 0x14(sp)         |     *(var_14h_3) = 0;
    0x00002b78 sw s3, 0x10(sp)           |     *(var_10h_3) = s3;
    0x00002b7c move a2, zero             |     a2 = 0;
    0x00002b80 move a3, zero             |     a3 = 0;
    0x00002b84 move a0, s4               |     a0 = s4;
    0x00002b88 jalr t9                   |     t9 ();
    0x00002b8c lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002b90 move s7, v0               |     s7 = v0;
                                         | label_8:
    0x00002b94 lw a0, 0x54(sp)           |     a0 = *(var_54h_2);
    0x00002b98 lw t9, -0x7f58(gp)        |     t9 = sym.imp.sd_bus_message_unref;
                                         |     if (a0 == 0) {
    0x00002b9c beqz a0, 0x29b0           |         goto label_7;
                                         |     }
    0x00002ba0 jalr t9                   |     t9 ();
    0x00002ba4 nop                       |     
    0x00002ba8 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002bac b 0x29b0                  |     goto label_7;
                                         | label_28:
    0x00002bb0 lw t9, -0x7f90(gp)        |     t9 = sym.imp.sd_bus_error_set_errno;
    0x00002bb4 addiu s3, sp, 0x58        |     s3 = sp + 0x58;
    0x00002bb8 move a1, v0               |     a1 = v0;
    0x00002bbc move a0, s3               |     a0 = s3;
    0x00002bc0 jalr t9                   |     t9 ();
    0x00002bc4 move s7, v0               |     s7 = v0;
    0x00002bc8 lw gp, 0x30(sp)           |     gp = *(var_30h);
    0x00002bcc b 0x2b94                  |     goto label_8;
                                         | label_14:
    0x00002bd0 lw t9, -0x7f10(gp)        |     t9 = sym.imp.sd_bus_error_set_const;
    0x00002bd4 addiu a2, a2, 0x403c      |     a2 += str.Invalid_source;
    0x00002bd8 b 0x2644                  |     goto label_9;
                                         | label_18:
    0x00002bdc lw t9, -0x7f10(gp)        |     t9 = sym.imp.sd_bus_error_set_const;
    0x00002be0 addiu a2, a2, 0x4114      |     a2 += str.Invalid_type;
    0x00002be4 b 0x2644                  |     goto label_9;
                                         | label_23:
    0x00002be8 lw t9, -0x7f0c(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00002bec jalr t9                   |     t9 ();
    0x00002bf0 nop                       |     
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/shuttergaind @ 0x2bf4 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00002bf4 ()              | void fcn_00002bf4 () {
    0x00002bf4 lui gp, 2                 |     
    0x00002bf8 addiu gp, gp, -0x58a4     |     
    0x00002bfc addu gp, gp, t9           |     gp += t9;
    0x00002c00 addiu sp, sp, -0xa8       |     
    0x00002c04 sw s1, 0x84(sp)           |     *(var_84h) = s1;
    0x00002c08 lw s1, -0x7ef8(gp)        |     s1 = *((gp - 8126));
    0x00002c0c sw gp, 0x30(sp)           |     *(var_30h_2) = gp;
    0x00002c10 sw s7, 0x9c(sp)           |     *(var_9ch) = s7;
    0x00002c14 lw v0, (s1)               |     v0 = *(s1);
    0x00002c18 sw s4, 0x90(sp)           |     *(var_90h) = s4;
    0x00002c1c sw ra, 0xa4(sp)           |     *(var_a4h_2) = ra;
    0x00002c20 sw fp, 0xa0(sp)           |     *(var_a0h) = fp;
    0x00002c24 sw s6, 0x98(sp)           |     *(var_98h) = s6;
    0x00002c28 sw s5, 0x94(sp)           |     *(var_94h) = s5;
    0x00002c2c sw s3, 0x8c(sp)           |     *(var_8ch) = s3;
    0x00002c30 sw s2, 0x88(sp)           |     *(var_88h) = s2;
    0x00002c34 sw s0, 0x80(sp)           |     *(var_80h) = s0;
    0x00002c38 move s4, a1               |     s4 = a1;
    0x00002c3c move s7, a2               |     s7 = a2;
    0x00002c40 sw zero, 0x70(sp)         |     *(var_70h) = 0;
    0x00002c44 sw v0, 0x7c(sp)           |     *(var_7ch) = v0;
    0x00002c48 sw zero, 0x74(sp)         |     *(var_74h) = 0;
    0x00002c4c sw zero, 0x78(sp)         |     *(var_78h) = 0;
    0x00002c50 sw zero, 0x58(sp)         |     *(var_58h_2) = 0;
                                         |     if (a0 == 0) {
    0x00002c54 beqz a0, 0x2d88           |         goto label_11;
                                         |     }
    0x00002c58 lw t9, -0x7f1c(gp)        |     t9 = sym.imp.sd_bus_message_ref;
    0x00002c5c addiu s0, sp, 0x70        |     s0 = sp + 0x70;
    0x00002c60 jalr t9                   |     t9 ();
    0x00002c64 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00002c68 move s2, v0               |     s2 = v0;
    0x00002c6c sw v0, 0x58(sp)           |     *(var_58h_2) = v0;
                                         | label_0:
    0x00002c70 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x00002c74 lw t9, -0x7ed4(gp)        |     t9 = sym.imp.strcmp;
    0x00002c78 lw a0, 0x30(s7)           |     a0 = *((s7 + 12));
    0x00002c7c addiu a1, a1, 0x425c      |     a1 += 0x425c;
    0x00002c80 jalr t9                   |     t9 ();
    0x00002c84 move s3, v0               |     s3 = v0;
    0x00002c88 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 != 0) {
    0x00002c8c bnez v0, 0x2d2c           |         goto label_12;
                                         |     }
    0x00002c90 lw t9, -0x7f64(gp)        |     t9 = sym.imp.sd_bus_message_read_array;
    0x00002c94 addiu a3, sp, 0x68        |     a3 = sp + 0x68;
    0x00002c98 addiu a2, sp, 0x6c        |     a2 = sp + 0x6c;
    0x00002c9c addiu a1, zero, 0x79      |     a1 = 0x79;
    0x00002ca0 move a0, s2               |     a0 = s2;
    0x00002ca4 jalr t9                   |     t9 ();
    0x00002ca8 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 >= 0) {
    0x00002cac bgez v0, 0x2f1c           |         goto label_13;
                                         |     }
    0x00002cb0 addiu a0, zero, -0x16     |     a0 = -0x16;
    0x00002cb4 negu a0, v0               |     __asm ("negu a0, v0");
                                         |     if (v0 != a0) {
    0x00002cb8 bne v0, a0, 0x32ac        |         goto label_14;
                                         |     }
    0x00002cbc lw t9, -0x7f48(gp)        |     t9 = sym.imp.sd_bus_error_free;
    0x00002cc0 move a0, s0               |     a0 = s0;
    0x00002cc4 jalr t9                   |     t9 ();
    0x00002cc8 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     do {
                                         | label_2:
    0x00002ccc lw t9, -0x7f48(gp)        |         t9 = sym.imp.sd_bus_error_free;
                                         | label_4:
    0x00002cd0 move a0, s0               |         a0 = s0;
    0x00002cd4 jalr t9                   |         t9 ();
    0x00002cd8 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
    0x00002cdc lw t9, -0x7f58(gp)        |         t9 = sym.imp.sd_bus_message_unref;
    0x00002ce0 lw a0, 0x58(sp)           |         a0 = *(var_58h_2);
    0x00002ce4 jalr t9                   |         t9 ();
    0x00002ce8 lw a0, 0x7c(sp)           |         a0 = *(var_7ch);
    0x00002cec lw v1, (s1)               |         v1 = *(s1);
    0x00002cf0 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
    0x00002cf4 move v0, s3               |         v0 = s3;
                                         |         if (a0 != v1) {
    0x00002cf8 bne a0, v1, 0x3670        |             goto label_15;
                                         |         }
    0x00002cfc lw ra, 0xa4(sp)           |         ra = *(var_a4h_2);
    0x00002d00 lw fp, 0xa0(sp)           |         fp = *(var_a0h);
    0x00002d04 lw s7, 0x9c(sp)           |         s7 = *(var_9ch);
    0x00002d08 lw s6, 0x98(sp)           |         s6 = *(var_98h);
    0x00002d0c lw s5, 0x94(sp)           |         s5 = *(var_94h);
    0x00002d10 lw s4, 0x90(sp)           |         s4 = *(var_90h);
    0x00002d14 lw s3, 0x8c(sp)           |         s3 = *(var_8ch);
    0x00002d18 lw s2, 0x88(sp)           |         s2 = *(var_88h);
    0x00002d1c lw s1, 0x84(sp)           |         s1 = *(var_84h);
    0x00002d20 lw s0, 0x80(sp)           |         s0 = *(var_80h);
    0x00002d24 addiu sp, sp, 0xa8        |         
    0x00002d28 jr ra                     |         return v0;
                                         | label_12:
    0x00002d2c lw a1, -0x7fd8(gp)        |         a1 = *((gp - 8182));
    0x00002d30 lw t9, -0x7f14(gp)        |         t9 = sym.imp.sd_bus_message_read;
    0x00002d34 addiu a2, sp, 0x54        |         a2 = sp + 0x54;
    0x00002d38 addiu a1, a1, 0x40cc      |         a1 += 0x40cc;
    0x00002d3c move a0, s2               |         a0 = s2;
    0x00002d40 jalr t9                   |         t9 ();
    0x00002d44 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         |         if (v0 < 0) {
    0x00002d48 bltz v0, 0x2f90           |             goto label_16;
                                         |         }
    0x00002d4c lwl v0, 0x1d(s7)          |         __asm ("lwl v0, 0x1d(s7)");
    0x00002d50 addiu a0, zero, 1         |         a0 = 1;
    0x00002d54 lwr v0, 0x1a(s7)          |         __asm ("lwr v0, 0x1a(s7)");
                                         |         if (v0 == a0) {
    0x00002d58 beql v0, a0, 0x2dd0       |             goto label_17;
                                         |         }
    0x00002d5c lwl v0, 0x21(s7)          |         __asm ("lwl v0, 0x21(s7)");
                                         |         if (v0 == 0) {
    0x00002d60 beql v0, zero, 0x2fe0     |             goto label_18;
                                         |         }
    0x00002d64 swl a0, 0x1d(s7)          |         __asm ("swl a0, 0x1d(s7)");
    0x00002d68 lw a0, 0x54(sp)           |         a0 = *(var_54h);
                                         | label_1:
    0x00002d6c swl a0, 0x19(s7)          |         __asm ("swl a0, 0x19(s7)");
    0x00002d70 swr a0, 0x16(s7)          |         __asm ("swr a0, 0x16(s7)");
    0x00002d74 lbu v0, 0x2c(s7)          |         v0 = *((s7 + 44));
    0x00002d78 lw v0, 0x28(s7)           |         v0 = *((s7 + 10));
                                         |         if (v0 == 0) {
    0x00002d7c bnel v0, zero, 0x2de4     |             goto label_19;
                                         |         }
                                         | label_10:
    0x00002d80 move s3, zero             |         s3 = 0;
    0x00002d84 b 0x2ccc                  |         
                                         |     } while (1);
                                         | label_11:
    0x00002d88 lw a0, -0x7fdc(gp)        |     a0 = *((gp - 8183));
    0x00002d8c lw v0, 0x30(a2)           |     v0 = *((a2 + 12));
    0x00002d90 lw a3, 0x28(a2)           |     a3 = *((a2 + 10));
    0x00002d94 lw a1, 0x24(a2)           |     a1 = *((a2 + 9));
    0x00002d98 lw t9, -0x7f20(gp)        |     t9 = sym.imp.sd_bus_get_property;
    0x00002d9c sw v0, 0x1c(sp)           |     *(var_1ch_2) = v0;
    0x00002da0 addiu s0, sp, 0x70        |     s0 = sp + 0x70;
    0x00002da4 addiu v0, sp, 0x58        |     v0 = sp + 0x58;
    0x00002da8 lw a0, 0x54a8(a0)         |     a0 = *((a0 + 5418));
    0x00002dac sw a2, 0x10(sp)           |     *(var_10h_2) = a2;
    0x00002db0 sw v0, 0x18(sp)           |     *(var_18h_2) = v0;
    0x00002db4 sw s0, 0x14(sp)           |     *(var_14h_2) = s0;
    0x00002db8 move a2, s4               |     a2 = s4;
    0x00002dbc jalr t9                   |     t9 ();
    0x00002dc0 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 >= 0) {
    0x00002dc4 bltz v0, 0x2ea0           |         
    0x00002dc8 lw s2, 0x58(sp)           |         s2 = *(var_58h_2);
    0x00002dcc b 0x2c70                  |         goto label_0;
                                         | label_17:
    0x00002dd0 lw a0, 0x54(sp)           |         a0 = *(var_54h);
    0x00002dd4 lwr v0, 0x1e(s7)          |         __asm ("lwr v0, 0x1e(s7)");
    0x00002dd8 sw a0, (v0)               |         *(v0) = a0;
    0x00002ddc lw a0, 0x54(sp)           |         a0 = *(var_54h);
    0x00002de0 b 0x2d6c                  |         goto label_1;
                                         | label_19:
    0x00002de4 lw a1, 0x24(s7)           |         a1 = *((s7 + 9));
    0x00002de8 sw v0, 0x20(sp)           |         *(var_20h_2) = v0;
    0x00002dec lw v0, -0x7fd8(gp)        |         v0 = *((gp - 8182));
    0x00002df0 lw a0, -0x7fdc(gp)        |         a0 = *((gp - 8183));
    0x00002df4 addiu v0, v0, 0x4318      |         v0 += 0x4318;
    0x00002df8 sw v0, 0x1c(sp)           |         *(var_1ch_2) = v0;
    0x00002dfc addiu v0, sp, 0x58        |         v0 = sp + 0x58;
    0x00002e00 sw v0, 0x18(sp)           |         *(var_18h_2) = v0;
    0x00002e04 lw v0, -0x7fd8(gp)        |         v0 = *((gp - 8182));
    0x00002e08 lw a3, -0x7fd8(gp)        |         a3 = *((gp - 8182));
    0x00002e0c lw t9, -0x7f24(gp)        |         t9 = sym.imp.sd_bus_call_method;
    0x00002e10 addiu a2, zero, 1         |         a2 = 1;
    0x00002e14 addiu v0, v0, 0x431c      |         v0 += str.GetRanges;
    0x00002e18 lw a0, 0x54a8(a0)         |         a0 = *((a0 + 5418));
    0x00002e1c sw a2, 0x24(sp)           |         *(var_24h) = a2;
    0x00002e20 sw s7, 0x28(sp)           |         *(var_28h_2) = s7;
    0x00002e24 sw s0, 0x14(sp)           |         *(var_14h_2) = s0;
    0x00002e28 sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
    0x00002e2c addiu a3, a3, 0x42f4      |         a3 += str.com.axis.ImageControl.Properties;
    0x00002e30 move a2, s4               |         a2 = s4;
    0x00002e34 jalr t9                   |         t9 ();
    0x00002e38 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         |         if (v0 >= 0) {
    0x00002e3c bgez v0, 0x3008           |             goto label_20;
                                         |         }
    0x00002e40 negu v0, v0               |         __asm ("negu v0, v0");
    0x00002e44 addiu a0, zero, 0x33      |         a0 = 0x33;
    0x00002e48 addiu a0, zero, 0x94      |         a0 = 0x94;
                                         |         if (v0 == a0) {
    0x00002e4c beq v0, a0, 0x2ec8        |             goto label_21;
                                         |         }
    0x00002e50 addiu a0, zero, 5         |         a0 = 5;
                                         |         if (v0 == a0) {
    0x00002e54 beq v0, a0, 0x2ec8        |             goto label_21;
                                         |         }
    0x00002e58 move a0, v0               |         a0 = v0;
                                         |         if (v0 == a0) {
    0x00002e5c beq v0, a0, 0x2ec8        |             goto label_21;
                                         |         }
    0x00002e60 lw v0, -0x7ee4(gp)        |         v0 = *((gp - 8121));
    0x00002e64 lw t9, -0x7f3c(gp)        |         t9 = sym.imp.strerror;
    0x00002e68 lw s2, (v0)               |         s2 = *(v0);
    0x00002e6c jalr t9                   |         t9 ();
    0x00002e70 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
    0x00002e74 sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
    0x00002e78 move a3, s7               |         a3 = s7;
    0x00002e7c lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00002e80 lw t9, -0x7f94(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00002e84 addiu a2, a2, 0x4328      |         a2 += str.Failed_to_get_range_for_param__s:__s_n;
                                         | label_3:
    0x00002e88 addiu a1, zero, 1         |         a1 = 1;
    0x00002e8c move a0, s2               |         a0 = s2;
    0x00002e90 jalr t9                   |         t9 ();
    0x00002e94 addiu s3, zero, -1        |         s3 = -1;
    0x00002e98 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
    0x00002e9c b 0x2ccc                  |         goto label_2;
                                         |     }
    0x00002ea0 negu v0, v0               |     __asm ("negu v0, v0");
    0x00002ea4 addiu a0, zero, 0x16      |     a0 = 0x16;
    0x00002ea8 slti a0, v0, 0x17         |     a0 = (v0 < 0x17) ? 1 : 0;
                                         |     if (v0 != a0) {
    0x00002eac beq v0, a0, 0x2ec8        |         
    0x00002eb0 addiu a0, zero, 0x33      |         a0 = 0x33;
                                         |         if (a0 != 0) {
    0x00002eb4 bnez a0, 0x2ee0           |             goto label_22;
                                         |         }
    0x00002eb8 addiu a0, zero, 0x94      |         a0 = 0x94;
                                         |         if (v0 == a0) {
    0x00002ebc beq v0, a0, 0x2ec8        |             goto label_21;
                                         |         }
    0x00002ec0 move a0, v0               |         a0 = v0;
                                         |         if (v0 != a0) {
    0x00002ec4 bne v0, a0, 0x2ef0        |             goto label_23;
                                         |         }
                                         |     }
                                         | label_21:
    0x00002ec8 lw t9, -0x7f48(gp)        |     t9 = sym.imp.sd_bus_error_free;
                                         |     do {
                                         | label_5:
    0x00002ecc move a0, s0               |         a0 = s0;
    0x00002ed0 jalr t9                   |         t9 ();
    0x00002ed4 move s3, zero             |         s3 = 0;
    0x00002ed8 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
    0x00002edc b 0x2ccc                  |         goto label_2;
                                         | label_22:
    0x00002ee0 addiu a0, zero, 6         |         a0 = 6;
    0x00002ee4 beql v0, a0, 0x2ecc       |         
                                         |     } while (v0 == a0);
    0x00002ee8 lw t9, -0x7f48(gp)        |     t9 = sym.imp.sd_bus_error_free;
    0x00002eec move a0, v0               |     a0 = v0;
                                         | label_23:
    0x00002ef0 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00002ef4 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00002ef8 lw s2, (v0)               |     s2 = *(v0);
    0x00002efc jalr t9                   |     t9 ();
    0x00002f00 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00002f04 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x00002f08 move a3, s7               |     a3 = s7;
    0x00002f0c lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002f10 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00002f14 addiu a2, a2, 0x4278      |     a2 += str.Failed_to_sync_value_for_param__s:__s_n;
    0x00002f18 b 0x2e88                  |     goto label_3;
                                         | label_13:
    0x00002f1c lwl v0, 0x1d(s7)          |     __asm ("lwl v0, 0x1d(s7)");
    0x00002f20 lwr v0, 0x1a(s7)          |     __asm ("lwr v0, 0x1a(s7)");
    0x00002f24 lwl a0, 0x21(s7)          |     __asm ("lwl a0, 0x21(s7)");
                                         |     if (v0 == 0) {
    0x00002f28 bnel v0, zero, 0x2fcc     |         goto label_24;
                                         |     }
                                         | label_6:
    0x00002f2c lw s2, 0x6c(sp)           |     s2 = *(var_6ch);
    0x00002f30 lw t9, -0x7f4c(gp)        |     t9 = sym.imp.strlen;
    0x00002f34 move a0, s2               |     a0 = s2;
    0x00002f38 jalr t9                   |     t9 ();
    0x00002f3c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00002f40 swl v0, 0x1d(s7)          |     __asm ("swl v0, 0x1d(s7)");
    0x00002f44 sll s4, v0, 2             |     s4 = v0 << 2;
    0x00002f48 lw t9, -0x7f34(gp)        |     t9 = sym.imp.malloc;
    0x00002f4c swr v0, 0x1a(s7)          |     __asm ("swr v0, 0x1a(s7)");
    0x00002f50 move a0, s4               |     a0 = s4;
    0x00002f54 move s5, v0               |     s5 = v0;
    0x00002f58 jalr t9                   |     t9 ();
    0x00002f5c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00002f60 swl v0, 0x21(s7)          |     __asm ("swl v0, 0x21(s7)");
    0x00002f64 swr v0, 0x1e(s7)          |     __asm ("swr v0, 0x1e(s7)");
                                         |     if (s5 == 0) {
    0x00002f68 beqz s5, 0x2ccc           |         goto label_2;
                                         |     }
    0x00002f6c move a0, s2               |     a0 = s2;
    0x00002f70 addu a1, v0, s4           |     a1 = v0 + s4;
                                         |     do {
    0x00002f74 lb v1, (a0)               |         v1 = *(a0);
    0x00002f78 addiu v0, v0, 4           |         v0 += 4;
    0x00002f7c addiu a0, a0, 1           |         a0++;
    0x00002f80 sw v1, -4(v0)             |         *((v0 - 1)) = v1;
    0x00002f84 bne a1, v0, 0x2f74        |         
                                         |     } while (a1 != v0);
    0x00002f88 lw t9, -0x7f48(gp)        |     t9 = sym.imp.sd_bus_error_free;
    0x00002f8c b 0x2cd0                  |     goto label_4;
                                         | label_16:
    0x00002f90 addiu a0, zero, -0x16     |     a0 = -0x16;
                                         |     if (v0 == a0) {
    0x00002f94 beql v0, a0, 0x2ecc       |         goto label_5;
                                         |     }
    0x00002f98 lw t9, -0x7f48(gp)        |     t9 = sym.imp.sd_bus_error_free;
    0x00002f9c negu a0, v0               |     __asm ("negu a0, v0");
    0x00002fa0 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00002fa4 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00002fa8 lw s2, (v0)               |     s2 = *(v0);
    0x00002fac jalr t9                   |     t9 ();
    0x00002fb0 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00002fb4 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x00002fb8 move a3, s7               |     a3 = s7;
    0x00002fbc lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00002fc0 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00002fc4 addiu a2, a2, 0x42c8      |     a2 += str.Failed_to_read_parameter_value_for__s:__s_n;
    0x00002fc8 b 0x2e88                  |     goto label_3;
                                         | label_24:
    0x00002fcc lw t9, -0x7eec(gp)        |     t9 = sym.imp.free;
    0x00002fd0 lwr a0, 0x1e(s7)          |     __asm ("lwr a0, 0x1e(s7)");
    0x00002fd4 jalr t9                   |     t9 ();
    0x00002fd8 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00002fdc b 0x2f2c                  |     goto label_6;
                                         | label_18:
    0x00002fe0 lw t9, -0x7f34(gp)        |     t9 = sym.imp.malloc;
    0x00002fe4 swr a0, 0x1a(s7)          |     __asm ("swr a0, 0x1a(s7)");
    0x00002fe8 addiu a0, zero, 4         |     a0 = 4;
    0x00002fec jalr t9                   |     t9 ();
    0x00002ff0 lw a0, 0x54(sp)           |     a0 = *(var_54h);
    0x00002ff4 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00002ff8 swl v0, 0x21(s7)          |     __asm ("swl v0, 0x21(s7)");
    0x00002ffc swr v0, 0x1e(s7)          |     __asm ("swr v0, 0x1e(s7)");
    0x00003000 sw a0, (v0)               |     *(v0) = a0;
    0x00003004 b 0x2d6c                  |     goto label_1;
                                         | label_20:
    0x00003008 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x0000300c lw s2, 0x58(sp)           |     s2 = *(var_58h_2);
    0x00003010 lw t9, -0x7f74(gp)        |     t9 = sym.imp.sd_bus_message_enter_container;
    0x00003014 sw v0, 0x4c(sp)           |     *(var_4ch_2) = v0;
    0x00003018 addiu a2, v0, 0x4350      |     a2 = v0 + str.sv;
    0x0000301c addiu a1, zero, 0x61      |     a1 = 0x61;
    0x00003020 move a0, s2               |     a0 = s2;
    0x00003024 jalr t9                   |     t9 ();
    0x00003028 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 < 0) {
    0x0000302c bltz v0, 0x32d8           |         goto label_25;
                                         |     }
    0x00003030 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x00003034 lw s4, -0x7fd8(gp)        |     s4 = *((gp - 8182));
    0x00003038 lw s5, -0x7fd8(gp)        |     s5 = *((gp - 8182));
    0x0000303c sw v0, 0x3c(sp)           |     *(var_3ch_2) = v0;
    0x00003040 addiu v0, s4, 0x4324      |     v0 = s4 + 0x4324;
    0x00003044 sw v0, 0x40(sp)           |     *(var_40h_2) = v0;
    0x00003048 addiu v0, s5, 0x4498      |     v0 = s5 + 0x4498;
    0x0000304c addiu fp, sp, 0x68        |     fp = sp + 0x68;
    0x00003050 sw v0, 0x48(sp)           |     *(var_48h_2) = v0;
                                         | label_9:
    0x00003054 lw v0, 0x3c(sp)           |     v0 = *(var_3ch_2);
    0x00003058 lw t9, -0x7f74(gp)        |     t9 = sym.imp.sd_bus_message_enter_container;
    0x0000305c addiu a2, v0, 0x4548      |     a2 = v0 + 0x4548;
    0x00003060 addiu a1, zero, 0x65      |     a1 = 0x65;
    0x00003064 move a0, s2               |     a0 = s2;
    0x00003068 jalr t9                   |     t9 ();
    0x0000306c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 <= 0) {
    0x00003070 blez v0, 0x351c           |         goto label_26;
                                         |     }
    0x00003074 lw t9, -0x7f14(gp)        |     t9 = sym.imp.sd_bus_message_read;
    0x00003078 lw a1, 0x40(sp)           |     a1 = *(var_40h_2);
    0x0000307c move a2, fp               |     a2 = fp;
    0x00003080 move a0, s2               |     a0 = s2;
    0x00003084 jalr t9                   |     t9 ();
    0x00003088 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 < 0) {
    0x0000308c bltz v0, 0x3630           |         goto label_27;
                                         |     }
    0x00003090 lw t9, -0x7ee0(gp)        |     t9 = sym.imp.sd_bus_message_peek_type;
    0x00003094 addiu v0, sp, 0x6c        |     v0 = sp + 0x6c;
    0x00003098 sw v0, 0x44(sp)           |     *(var_44h_3) = v0;
    0x0000309c move a2, v0               |     a2 = v0;
    0x000030a0 move a1, zero             |     a1 = 0;
    0x000030a4 move a0, s2               |     a0 = s2;
    0x000030a8 jalr t9                   |     t9 ();
    0x000030ac lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 < 0) {
    0x000030b0 bltz v0, 0x35f0           |         goto label_28;
                                         |     }
    0x000030b4 lw t9, -0x7f74(gp)        |     t9 = sym.imp.sd_bus_message_enter_container;
    0x000030b8 lw a2, 0x6c(sp)           |     a2 = *(var_6ch);
    0x000030bc addiu a1, zero, 0x76      |     a1 = 0x76;
    0x000030c0 move a0, s2               |     a0 = s2;
    0x000030c4 jalr t9                   |     t9 ();
    0x000030c8 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 < 0) {
    0x000030cc bltz v0, 0x35b0           |         goto label_29;
                                         |     }
    0x000030d0 lw v0, 0x4c(sp)           |     v0 = *(var_4ch_2);
    0x000030d4 lw t9, -0x7f74(gp)        |     t9 = sym.imp.sd_bus_message_enter_container;
    0x000030d8 addiu a2, v0, 0x4350      |     a2 = v0 + str.sv;
    0x000030dc addiu a1, zero, 0x61      |     a1 = 0x61;
    0x000030e0 move a0, s2               |     a0 = s2;
    0x000030e4 jalr t9                   |     t9 ();
    0x000030e8 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 < 0) {
    0x000030ec bltz v0, 0x3570           |         goto label_30;
                                         |     }
    0x000030f0 addiu s6, sp, 0x64        |     s6 = sp + 0x64;
    0x000030f4 addiu s4, sp, 0x60        |     s4 = sp + 0x60;
    0x000030f8 addiu s5, sp, 0x5c        |     s5 = sp + 0x5c;
    0x000030fc b 0x319c                  |     
                                         |     while (v0 == 0) {
    0x00003100 lw t9, -0x7f64(gp)        |         t9 = sym.imp.sd_bus_message_read_array;
    0x00003104 move a3, s4               |         a3 = s4;
    0x00003108 move a2, s5               |         a2 = s5;
    0x0000310c addiu a1, zero, 0x69      |         a1 = 0x69;
    0x00003110 move a0, s2               |         a0 = s2;
    0x00003114 jalr t9                   |         t9 ();
    0x00003118 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         |         if (v0 < 0) {
    0x0000311c bltz v0, 0x34d4           |             goto label_31;
                                         |         }
    0x00003120 lwl v0, 0x1d(s7)          |         __asm ("lwl v0, 0x1d(s7)");
    0x00003124 lwr v0, 0x1a(s7)          |         __asm ("lwr v0, 0x1a(s7)");
    0x00003128 lwl a0, 0x21(s7)          |         __asm ("lwl a0, 0x21(s7)");
                                         |         if (v0 == 0) {
    0x0000312c bnel v0, zero, 0x3298     |             goto label_32;
                                         |         }
                                         | label_8:
    0x00003130 lw s3, 0x60(sp)           |         s3 = *(var_60h_2);
    0x00003134 lw t9, -0x7f34(gp)        |         t9 = sym.imp.malloc;
    0x00003138 srl v0, s3, 2             |         v0 = s3 >> 2;
    0x0000313c swl v0, 0x1d(s7)          |         __asm ("swl v0, 0x1d(s7)");
    0x00003140 addiu a0, zero, -4        |         a0 = -4;
    0x00003144 and a0, s3, a0            |         a0 = s3 & a0;
    0x00003148 swr v0, 0x1a(s7)          |         __asm ("swr v0, 0x1a(s7)");
    0x0000314c jalr t9                   |         t9 ();
    0x00003150 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
    0x00003154 swl v0, 0x21(s7)          |         __asm ("swl v0, 0x21(s7)");
    0x00003158 lw a1, 0x5c(sp)           |         a1 = *(var_5ch_2);
    0x0000315c lw t9, -0x7ef4(gp)        |         t9 = sym.imp.memcpy;
    0x00003160 swr v0, 0x1e(s7)          |         __asm ("swr v0, 0x1e(s7)");
    0x00003164 move a2, s3               |         a2 = s3;
    0x00003168 move a0, v0               |         a0 = v0;
    0x0000316c jalr t9                   |         t9 ();
    0x00003170 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         | label_7:
    0x00003174 lw t9, -0x7f18(gp)        |         t9 = sym.imp.sd_bus_message_exit_container;
    0x00003178 move a0, s2               |         a0 = s2;
    0x0000317c jalr t9                   |         t9 ();
    0x00003180 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         |         if (v0 < 0) {
    0x00003184 bltz v0, 0x3494           |             goto label_33;
                                         |         }
    0x00003188 lw t9, -0x7f18(gp)        |         t9 = sym.imp.sd_bus_message_exit_container;
    0x0000318c move a0, s2               |         a0 = s2;
    0x00003190 jalr t9                   |         t9 ();
    0x00003194 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         |         if (v0 < 0) {
    0x00003198 bltz v0, 0x3454           |             goto label_34;
                                         |         }
    0x0000319c lw v0, 0x3c(sp)           |         v0 = *(var_3ch_2);
    0x000031a0 lw t9, -0x7f74(gp)        |         t9 = sym.imp.sd_bus_message_enter_container;
    0x000031a4 addiu a2, v0, 0x4548      |         a2 = v0 + 0x4548;
    0x000031a8 addiu a1, zero, 0x65      |         a1 = 0x65;
    0x000031ac move a0, s2               |         a0 = s2;
    0x000031b0 jalr t9                   |         t9 ();
    0x000031b4 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         |         if (v0 <= 0) {
    0x000031b8 blez v0, 0x3318           |             goto label_35;
                                         |         }
    0x000031bc lw t9, -0x7f14(gp)        |         t9 = sym.imp.sd_bus_message_read;
    0x000031c0 lw a1, 0x40(sp)           |         a1 = *(var_40h_2);
    0x000031c4 move a2, s6               |         a2 = s6;
    0x000031c8 move a0, s2               |         a0 = s2;
    0x000031cc jalr t9                   |         t9 ();
    0x000031d0 lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         |         if (v0 < 0) {
    0x000031d4 bltz v0, 0x33d4           |             goto label_36;
                                         |         }
    0x000031d8 lw t9, -0x7ee0(gp)        |         t9 = sym.imp.sd_bus_message_peek_type;
    0x000031dc lw a2, 0x44(sp)           |         a2 = *(var_44h_3);
    0x000031e0 move a1, zero             |         a1 = 0;
    0x000031e4 move a0, s2               |         a0 = s2;
    0x000031e8 jalr t9                   |         t9 ();
    0x000031ec lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         |         if (v0 < 0) {
    0x000031f0 bltz v0, 0x3394           |             goto label_37;
                                         |         }
    0x000031f4 lw t9, -0x7f74(gp)        |         t9 = sym.imp.sd_bus_message_enter_container;
    0x000031f8 lw a2, 0x6c(sp)           |         a2 = *(var_6ch);
    0x000031fc addiu a1, zero, 0x76      |         a1 = 0x76;
    0x00003200 move a0, s2               |         a0 = s2;
    0x00003204 jalr t9                   |         t9 ();
    0x00003208 move s3, v0               |         s3 = v0;
    0x0000320c lw gp, 0x30(sp)           |         gp = *(var_30h_2);
                                         |         if (v0 < 0) {
    0x00003210 bltz v0, 0x3414           |             goto label_38;
                                         |         }
    0x00003214 lw a2, 0x6c(sp)           |         a2 = *(var_6ch);
    0x00003218 lw t9, -0x7ed4(gp)        |         t9 = sym.imp.strcmp;
    0x0000321c lw a1, 0x48(sp)           |         a1 = *(var_48h_2);
    0x00003220 move a0, a2               |         a0 = a2;
    0x00003224 sw a2, 0x38(sp)           |         *(var_38h_2) = a2;
    0x00003228 jalr t9                   |         t9 ();
    0x0000322c lw gp, 0x30(sp)           |         gp = *(var_30h_2);
    0x00003230 lw a2, 0x38(sp)           |         a2 = *(var_38h_2);
    0x00003234 beqz v0, 0x3100           |         
                                         |     }
    0x00003238 lw t9, -0x7f38(gp)        |     t9 = sym.imp.sd_bus_message_skip;
    0x0000323c move a1, a2               |     a1 = a2;
    0x00003240 move a0, s2               |     a0 = s2;
    0x00003244 jalr t9                   |     t9 ();
    0x00003248 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 >= 0) {
    0x0000324c bgez v0, 0x3174           |         goto label_7;
                                         |     }
    0x00003250 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00003254 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00003258 negu a0, s3               |     __asm ("negu a0, s3");
    0x0000325c lw s2, (v0)               |     s2 = *(v0);
    0x00003260 lw s3, 0x64(sp)           |     s3 = *(var_64h);
    0x00003264 jalr t9                   |     t9 ();
    0x00003268 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x0000326c move a3, s3               |     a3 = s3;
    0x00003270 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x00003274 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00003278 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x0000327c addiu a2, a2, 0x44c8      |     a2 += str.Failed_to_skip_reading_for_range__s:__s_n;
    0x00003280 addiu a1, zero, 1         |     a1 = 1;
    0x00003284 move a0, s2               |     a0 = s2;
    0x00003288 jalr t9                   |     t9 ();
    0x0000328c move s3, zero             |     s3 = 0;
    0x00003290 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003294 b 0x2ccc                  |     goto label_2;
                                         | label_32:
    0x00003298 lw t9, -0x7eec(gp)        |     t9 = sym.imp.free;
    0x0000329c lwr a0, 0x1e(s7)          |     __asm ("lwr a0, 0x1e(s7)");
    0x000032a0 jalr t9                   |     t9 ();
    0x000032a4 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000032a8 b 0x3130                  |     goto label_8;
                                         | label_14:
    0x000032ac lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x000032b0 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x000032b4 lw s2, (v0)               |     s2 = *(v0);
    0x000032b8 jalr t9                   |     t9 ();
    0x000032bc lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000032c0 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x000032c4 move a3, s7               |     a3 = s7;
    0x000032c8 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000032cc lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x000032d0 addiu a2, a2, 0x42a0      |     a2 += str.Failed_to_read_string_value_for__s:__s_n;
    0x000032d4 b 0x2e88                  |     goto label_3;
                                         | label_25:
    0x000032d8 negu a0, v0               |     __asm ("negu a0, v0");
    0x000032dc lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x000032e0 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x000032e4 addiu s3, zero, -1        |     s3 = -1;
    0x000032e8 lw s2, (v0)               |     s2 = *(v0);
    0x000032ec jalr t9                   |     t9 ();
    0x000032f0 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000032f4 move a3, v0               |     a3 = v0;
    0x000032f8 addiu a1, zero, 1         |     a1 = 1;
    0x000032fc lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00003300 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00003304 addiu a2, a2, 0x4358      |     a2 += str.Failed_to_enter_array_container__0_:__s_n;
    0x00003308 move a0, s2               |     a0 = s2;
    0x0000330c jalr t9                   |     t9 ();
    0x00003310 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003314 b 0x2ccc                  |     goto label_2;
                                         | label_35:
    0x00003318 lw t9, -0x7f18(gp)        |     t9 = sym.imp.sd_bus_message_exit_container;
    0x0000331c move a0, s2               |     a0 = s2;
    0x00003320 jalr t9                   |     t9 ();
    0x00003324 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 < 0) {
    0x00003328 bltz v0, 0x36bc           |         goto label_39;
                                         |     }
    0x0000332c lw t9, -0x7f18(gp)        |     t9 = sym.imp.sd_bus_message_exit_container;
    0x00003330 move a0, s2               |     a0 = s2;
    0x00003334 jalr t9                   |     t9 ();
    0x00003338 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 < 0) {
    0x0000333c bltz v0, 0x367c           |         goto label_40;
                                         |     }
    0x00003340 lw t9, -0x7f18(gp)        |     t9 = sym.imp.sd_bus_message_exit_container;
    0x00003344 move a0, s2               |     a0 = s2;
    0x00003348 jalr t9                   |     t9 ();
    0x0000334c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 >= 0) {
    0x00003350 bgez v0, 0x3054           |         goto label_9;
                                         |     }
    0x00003354 negu a0, v0               |     __asm ("negu a0, v0");
    0x00003358 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x0000335c lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00003360 addiu s3, zero, -1        |     s3 = -1;
    0x00003364 lw s2, (v0)               |     s2 = *(v0);
    0x00003368 jalr t9                   |     t9 ();
    0x0000336c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003370 move a3, v0               |     a3 = v0;
    0x00003374 addiu a1, zero, 1         |     a1 = 1;
    0x00003378 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x0000337c lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00003380 addiu a2, a2, 0x45a0      |     a2 += str.Failed_to_exit_dict_container__1_:__s_n;
    0x00003384 move a0, s2               |     a0 = s2;
    0x00003388 jalr t9                   |     t9 ();
    0x0000338c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003390 b 0x2ccc                  |     goto label_2;
                                         | label_37:
    0x00003394 negu a0, v0               |     __asm ("negu a0, v0");
    0x00003398 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x0000339c lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x000033a0 addiu s3, zero, -1        |     s3 = -1;
    0x000033a4 lw s2, (v0)               |     s2 = *(v0);
    0x000033a8 jalr t9                   |     t9 ();
    0x000033ac lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000033b0 move a3, v0               |     a3 = v0;
    0x000033b4 addiu a1, zero, 1         |     a1 = 1;
    0x000033b8 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000033bc lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x000033c0 addiu a2, a2, 0x4448      |     a2 += str.Failed_to_peek_at_content__2_:__s_n;
    0x000033c4 move a0, s2               |     a0 = s2;
    0x000033c8 jalr t9                   |     t9 ();
    0x000033cc lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000033d0 b 0x2ccc                  |     goto label_2;
                                         | label_36:
    0x000033d4 negu a0, v0               |     __asm ("negu a0, v0");
    0x000033d8 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x000033dc lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x000033e0 addiu s3, zero, -1        |     s3 = -1;
    0x000033e4 lw s2, (v0)               |     s2 = *(v0);
    0x000033e8 jalr t9                   |     t9 ();
    0x000033ec lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000033f0 move a3, v0               |     a3 = v0;
    0x000033f4 addiu a1, zero, 1         |     a1 = 1;
    0x000033f8 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000033fc lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00003400 addiu a2, a2, 0x4424      |     a2 += str.Failed_to_read_property__2_:__s_n;
    0x00003404 move a0, s2               |     a0 = s2;
    0x00003408 jalr t9                   |     t9 ();
    0x0000340c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003410 b 0x2ccc                  |     goto label_2;
                                         | label_38:
    0x00003414 negu a0, v0               |     __asm ("negu a0, v0");
    0x00003418 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x0000341c lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00003420 addiu s3, zero, -1        |     s3 = -1;
    0x00003424 lw s2, (v0)               |     s2 = *(v0);
    0x00003428 jalr t9                   |     t9 ();
    0x0000342c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003430 move a3, v0               |     a3 = v0;
    0x00003434 addiu a1, zero, 1         |     a1 = 1;
    0x00003438 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x0000343c lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00003440 addiu a2, a2, 0x446c      |     a2 += str.Failed_to_enter_variant_container__2_:__s_n;
    0x00003444 move a0, s2               |     a0 = s2;
    0x00003448 jalr t9                   |     t9 ();
    0x0000344c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003450 b 0x2ccc                  |     goto label_2;
                                         | label_34:
    0x00003454 negu a0, v0               |     __asm ("negu a0, v0");
    0x00003458 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x0000345c lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00003460 addiu s3, zero, -1        |     s3 = -1;
    0x00003464 lw s2, (v0)               |     s2 = *(v0);
    0x00003468 jalr t9                   |     t9 ();
    0x0000346c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003470 move a3, v0               |     a3 = v0;
    0x00003474 addiu a1, zero, 1         |     a1 = 1;
    0x00003478 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x0000347c lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00003480 addiu a2, a2, 0x4520      |     a2 += str.Failed_to_exit_dict_container__2_:__s_n;
    0x00003484 move a0, s2               |     a0 = s2;
    0x00003488 jalr t9                   |     t9 ();
    0x0000348c lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003490 b 0x2ccc                  |     goto label_2;
                                         | label_33:
    0x00003494 negu a0, v0               |     __asm ("negu a0, v0");
    0x00003498 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x0000349c lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x000034a0 addiu s3, zero, -1        |     s3 = -1;
    0x000034a4 lw s2, (v0)               |     s2 = *(v0);
    0x000034a8 jalr t9                   |     t9 ();
    0x000034ac lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000034b0 move a3, v0               |     a3 = v0;
    0x000034b4 addiu a1, zero, 1         |     a1 = 1;
    0x000034b8 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000034bc lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x000034c0 addiu a2, a2, 0x44f4      |     a2 += str.Failed_to_exit_variant_container__2_:__s_n;
    0x000034c4 move a0, s2               |     a0 = s2;
    0x000034c8 jalr t9                   |     t9 ();
    0x000034cc lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000034d0 b 0x2ccc                  |     goto label_2;
                                         | label_31:
    0x000034d4 negu a0, v0               |     __asm ("negu a0, v0");
    0x000034d8 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x000034dc lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x000034e0 lw s3, 0x64(sp)           |     s3 = *(var_64h);
    0x000034e4 lw s2, (v0)               |     s2 = *(v0);
    0x000034e8 jalr t9                   |     t9 ();
    0x000034ec lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000034f0 move a3, s3               |     a3 = s3;
    0x000034f4 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x000034f8 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000034fc lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00003500 addiu a2, a2, 0x449c      |     a2 += str.Failed_to_read_value_for_range__s:__s_n;
    0x00003504 addiu a1, zero, 1         |     a1 = 1;
    0x00003508 move a0, s2               |     a0 = s2;
    0x0000350c jalr t9                   |     t9 ();
    0x00003510 addiu s3, zero, -1        |     s3 = -1;
    0x00003514 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003518 b 0x2ccc                  |     goto label_2;
                                         | label_26:
    0x0000351c lw t9, -0x7f18(gp)        |     t9 = sym.imp.sd_bus_message_exit_container;
    0x00003520 move a0, s2               |     a0 = s2;
    0x00003524 jalr t9                   |     t9 ();
    0x00003528 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
                                         |     if (v0 >= 0) {
    0x0000352c bgez v0, 0x2d80           |         goto label_10;
                                         |     }
    0x00003530 negu a0, v0               |     __asm ("negu a0, v0");
    0x00003534 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00003538 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x0000353c addiu s3, zero, -1        |     s3 = -1;
    0x00003540 lw s2, (v0)               |     s2 = *(v0);
    0x00003544 jalr t9                   |     t9 ();
    0x00003548 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x0000354c move a3, v0               |     a3 = v0;
    0x00003550 addiu a1, zero, 1         |     a1 = 1;
    0x00003554 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00003558 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x0000355c addiu a2, a2, 0x45c8      |     a2 += str.Failed_to_exit_array_container__0_:__s_n;
    0x00003560 move a0, s2               |     a0 = s2;
    0x00003564 jalr t9                   |     t9 ();
    0x00003568 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x0000356c b 0x2ccc                  |     goto label_2;
                                         | label_30:
    0x00003570 negu a0, v0               |     __asm ("negu a0, v0");
    0x00003574 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00003578 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x0000357c addiu s3, zero, -1        |     s3 = -1;
    0x00003580 lw s2, (v0)               |     s2 = *(v0);
    0x00003584 jalr t9                   |     t9 ();
    0x00003588 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x0000358c move a3, v0               |     a3 = v0;
    0x00003590 addiu a1, zero, 1         |     a1 = 1;
    0x00003594 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00003598 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x0000359c addiu a2, a2, 0x43f8      |     a2 += str.Failed_to_enter_array_container__1_:__s_n;
    0x000035a0 move a0, s2               |     a0 = s2;
    0x000035a4 jalr t9                   |     t9 ();
    0x000035a8 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000035ac b 0x2ccc                  |     goto label_2;
                                         | label_29:
    0x000035b0 negu a0, v0               |     __asm ("negu a0, v0");
    0x000035b4 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x000035b8 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x000035bc addiu s3, zero, -1        |     s3 = -1;
    0x000035c0 lw s2, (v0)               |     s2 = *(v0);
    0x000035c4 jalr t9                   |     t9 ();
    0x000035c8 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000035cc move a3, v0               |     a3 = v0;
    0x000035d0 addiu a1, zero, 1         |     a1 = 1;
    0x000035d4 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000035d8 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x000035dc addiu a2, a2, 0x43cc      |     a2 += str.Failed_to_enter_variant_container__1_:__s_n;
    0x000035e0 move a0, s2               |     a0 = s2;
    0x000035e4 jalr t9                   |     t9 ();
    0x000035e8 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000035ec b 0x2ccc                  |     goto label_2;
                                         | label_28:
    0x000035f0 negu a0, v0               |     __asm ("negu a0, v0");
    0x000035f4 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x000035f8 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x000035fc addiu s3, zero, -1        |     s3 = -1;
    0x00003600 lw s2, (v0)               |     s2 = *(v0);
    0x00003604 jalr t9                   |     t9 ();
    0x00003608 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x0000360c move a3, v0               |     a3 = v0;
    0x00003610 addiu a1, zero, 1         |     a1 = 1;
    0x00003614 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00003618 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x0000361c addiu a2, a2, 0x43a8      |     a2 += str.Failed_to_peek_at_content__1_:__s_n;
    0x00003620 move a0, s2               |     a0 = s2;
    0x00003624 jalr t9                   |     t9 ();
    0x00003628 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x0000362c b 0x2ccc                  |     goto label_2;
                                         | label_27:
    0x00003630 negu a0, v0               |     __asm ("negu a0, v0");
    0x00003634 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00003638 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x0000363c addiu s3, zero, -1        |     s3 = -1;
    0x00003640 lw s2, (v0)               |     s2 = *(v0);
    0x00003644 jalr t9                   |     t9 ();
    0x00003648 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x0000364c move a3, v0               |     a3 = v0;
    0x00003650 addiu a1, zero, 1         |     a1 = 1;
    0x00003654 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00003658 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x0000365c addiu a2, a2, 0x4384      |     a2 += str.Failed_to_read_property__1_:__s_n;
    0x00003660 move a0, s2               |     a0 = s2;
    0x00003664 jalr t9                   |     t9 ();
    0x00003668 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x0000366c b 0x2ccc                  |     goto label_2;
                                         | label_15:
    0x00003670 lw t9, -0x7f0c(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00003674 jalr t9                   |     t9 ();
    0x00003678 nop                       |     
                                         | label_40:
    0x0000367c negu a0, v0               |     __asm ("negu a0, v0");
    0x00003680 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00003684 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00003688 addiu s3, zero, -1        |     s3 = -1;
    0x0000368c lw s2, (v0)               |     s2 = *(v0);
    0x00003690 jalr t9                   |     t9 ();
    0x00003694 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x00003698 move a3, v0               |     a3 = v0;
    0x0000369c addiu a1, zero, 1         |     a1 = 1;
    0x000036a0 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000036a4 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x000036a8 addiu a2, a2, 0x4574      |     a2 += str.Failed_to_exit_variant_container__1_:__s_n;
    0x000036ac move a0, s2               |     a0 = s2;
    0x000036b0 jalr t9                   |     t9 ();
    0x000036b4 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000036b8 b 0x2ccc                  |     goto label_2;
                                         | label_39:
    0x000036bc negu a0, v0               |     __asm ("negu a0, v0");
    0x000036c0 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x000036c4 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x000036c8 addiu s3, zero, -1        |     s3 = -1;
    0x000036cc lw s2, (v0)               |     s2 = *(v0);
    0x000036d0 jalr t9                   |     t9 ();
    0x000036d4 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000036d8 move a3, v0               |     a3 = v0;
    0x000036dc addiu a1, zero, 1         |     a1 = 1;
    0x000036e0 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x000036e4 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x000036e8 addiu a2, a2, 0x454c      |     a2 += str.Failed_to_exit_array_container__1_:__s_n;
    0x000036ec move a0, s2               |     a0 = s2;
    0x000036f0 jalr t9                   |     t9 ();
    0x000036f4 lw gp, 0x30(sp)           |     gp = *(var_30h_2);
    0x000036f8 b 0x2ccc                  |     goto label_2;
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/shuttergaind @ 0x13b0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) main ()                      | int32_t main () {
                                         |     /* [13] -r-x section size 10016 named .text */
    0x000013b0 lui gp, 2                 |     
    0x000013b4 addiu gp, gp, -0x4060     |     
    0x000013b8 addu gp, gp, t9           |     gp += t9;
    0x000013bc addiu sp, sp, -0xa0       |     
    0x000013c0 lw t9, -0x7f40(gp)        |     t9 = sym.imp.sd_bus_open_system;
    0x000013c4 sw s1, 0x7c(sp)           |     *(var_7ch) = s1;
    0x000013c8 lw s1, -0x7ef8(gp)        |     s1 = *((gp - 8126));
    0x000013cc sw s0, 0x78(sp)           |     *(var_78h) = s0;
    0x000013d0 lw s0, -0x7fdc(gp)        |     s0 = *((gp - 8183));
    0x000013d4 lw v0, (s1)               |     v0 = *(s1);
    0x000013d8 sw gp, 0x20(sp)           |     *(var_20h) = gp;
    0x000013dc sw ra, 0x9c(sp)           |     *(var_9ch) = ra;
    0x000013e0 sw fp, 0x98(sp)           |     *(var_98h) = fp;
    0x000013e4 sw s7, 0x94(sp)           |     *(var_94h) = s7;
    0x000013e8 sw s6, 0x90(sp)           |     *(var_90h) = s6;
    0x000013ec sw s5, 0x8c(sp)           |     *(var_8ch) = s5;
    0x000013f0 sw s4, 0x88(sp)           |     *(var_88h) = s4;
    0x000013f4 sw s3, 0x84(sp)           |     *(var_84h) = s3;
    0x000013f8 sw s2, 0x80(sp)           |     *(var_80h) = s2;
    0x000013fc addiu a0, s0, 0x54a8      |     a0 = s0 + 0x54a8;
    0x00001400 sw v0, 0x74(sp)           |     *(var_74h) = v0;
    0x00001404 sw zero, 0x44(sp)         |     *(var_44h) = 0;
    0x00001408 jalr t9                   |     t9 ();
    0x0000140c nop                       |     
    0x00001410 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 < 0) {
    0x00001414 bltz v0, 0x1cd8           |         goto label_11;
                                         |     }
    0x00001418 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x0000141c lw s3, -0x7fd8(gp)        |     s3 = *((gp - 8182));
    0x00001420 addiu v0, v0, 0x1fd0      |     v0 += fcn.00001fd0;
    0x00001424 sw v0, 0x14(sp)           |     *(var_14h_2) = v0;
    0x00001428 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x0000142c lw s2, -0x7fdc(gp)        |     s2 = *((gp - 8183));
    0x00001430 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001434 lw t9, -0x7f98(gp)        |     t9 = sym.imp.sd_bus_add_object_vtable;
                                         |     /* section..data.rel.ro */
    0x00001438 addiu v0, v0, 0x4fa0      |     v0 += 0x4fa0;
    0x0000143c lw a0, 0x54a8(s0)         |     a0 = *((s0 + 5418));
    0x00001440 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x00001444 addiu a3, s3, 0x4700      |     a3 = s3 + str.com.axis.ShuttergainControl;
    0x00001448 addiu a2, a2, 0x471c      |     a2 += str._com_axis_ShuttergainControl;
    0x0000144c addiu a1, s2, 0x54a0      |     a1 = s2 + 0x54a0;
    0x00001450 jalr t9                   |     t9 ();
    0x00001454 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 < 0) {
    0x00001458 bltz v0, 0x1c98           |         goto label_12;
                                         |     }
    0x0000145c lw t9, -0x7f28(gp)        |     t9 = sym.imp.sd_bus_request_name;
    0x00001460 lw a0, 0x54a8(s0)         |     a0 = *((s0 + 5418));
    0x00001464 move a2, zero             |     a2 = 0;
    0x00001468 move a3, zero             |     a3 = 0;
    0x0000146c addiu a1, s3, 0x4700      |     a1 = s3 + str.com.axis.ShuttergainControl;
    0x00001470 jalr t9                   |     t9 ();
    0x00001474 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 < 0) {
    0x00001478 bltz v0, 0x1d04           |         goto label_13;
                                         |     }
    0x0000147c lw s3, -0x7fdc(gp)        |     s3 = *((gp - 8183));
    0x00001480 sw zero, 0x48(sp)         |     *(var_48h) = 0;
    0x00001484 lw v0, 0x54b8(s3)         |     v0 = *((s3 + 5422));
    0x00001488 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
                                         |     if (v0 == 0) {
    0x0000148c beqz v0, 0x16ac           |         goto label_14;
                                         |     }
    0x00001490 lw t9, -0x7f60(gp)        |     t9 = sym.imp.__printf_chk
    0x00001494 move a2, zero             |     a2 = 0;
    0x00001498 addiu a1, a1, 0x478c      |     a1 += str.Trying_to_create_params_for_already_allocated_source__d_n;
    0x0000149c addiu a0, zero, 1         |     a0 = 1;
    0x000014a0 jalr t9                   |     t9 ();
    0x000014a4 lw s5, 0x54b8(s3)         |     s5 = *((s3 + 5422));
    0x000014a8 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (s5 == 0) {
    0x000014ac beqz s5, 0x1918           |         goto label_15;
                                         |     }
                                         | label_1:
    0x000014b0 lw v0, 0x48(sp)           |     v0 = *(var_48h);
    0x000014b4 lw t9, -0x7ed0(gp)        |     t9 = sym.imp.__snprintf_chk
    0x000014b8 sw v0, 0x14(sp)           |     *(var_14h_2) = v0;
    0x000014bc lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000014c0 addiu s4, sp, 0x4c        |     s4 = sp + 0x4c;
    0x000014c4 addiu v0, v0, 0x423c      |     v0 += str._com_axis_ImageControl__d_0;
    0x000014c8 addiu a3, zero, 0x25      |     a3 = 0x25;
    0x000014cc addiu a2, zero, 1         |     a2 = 1;
    0x000014d0 addiu a1, zero, 0x25      |     a1 = 0x25;
    0x000014d4 move a0, s4               |     a0 = s4;
    0x000014d8 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x000014dc jalr t9                   |     t9 ();
    0x000014e0 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000014e4 lw a0, 0x54a8(s0)         |     a0 = *((s0 + 5418));
    0x000014e8 sw zero, 0x38(sp)         |     *(var_38h) = 0;
    0x000014ec lw s6, -0x7fd8(gp)        |     s6 = *((gp - 8182));
    0x000014f0 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x000014f4 addiu s6, s6, 0x2314      |     s6 += fcn.00002314;
    0x000014f8 addiu a1, a1, 0x4004      |     a1 += str.com.axis.ImcControl;
    0x000014fc sw zero, 0x3c(sp)         |     *(var_3ch) = 0;
    0x00001500 move t9, s6               |     t9 = s6;
    0x00001504 sw zero, 0x40(sp)         |     *(var_40h) = 0;
    0x00001508 bal 0x2314                |     fcn_00002314 ();
    0x0000150c lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 == 0) {
    0x00001510 beqz v0, 0x18d4           |         goto label_16;
                                         |     }
    0x00001514 lw s7, -0x7fd8(gp)        |     s7 = *((gp - 8182));
    0x00001518 lw t9, -0x7ef0(gp)        |     t9 = sym.imp.strdup;
    0x0000151c addiu a0, s7, 0x47c8      |     a0 = s7 + str.imcd;
    0x00001520 jalr t9                   |     t9 ();
    0x00001524 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001528 sw v0, 0x44(sp)           |     *(var_44h) = v0;
    0x0000152c move s6, v0               |     s6 = v0;
                                         | label_3:
    0x00001530 lw t9, -0x7ed4(gp)        |     t9 = sym.imp.strcmp;
    0x00001534 addiu a1, s7, 0x47c8      |     a1 = s7 + str.imcd;
    0x00001538 move a0, s6               |     a0 = s6;
    0x0000153c jalr t9                   |     t9 ();
    0x00001540 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 != 0) {
    0x00001544 bnez v0, 0x1920           |         goto label_17;
                                         |     }
    0x00001548 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x0000154c addiu v0, s5, 0x24        |     v0 = s5 + 0x24;
    0x00001550 addiu v1, s5, 0x364       |     v1 = s5 + 0x364;
    0x00001554 addiu a2, a2, 0x4004      |     a2 += str.com.axis.ImcControl;
    0x00001558 sw a2, (v0)               |     *(v0) = a2;
                                         |     do {
    0x0000155c addiu v0, v0, 0x34        |         v0 += 0x34;
    0x00001560 sw a2, (v0)               |         *(v0) = a2;
    0x00001564 bnel v1, v0, 0x155c       |         
                                         |     } while (v1 == v0);
    0x00001568 lw s7, -0x7fd8(gp)        |     s7 = *((gp - 8182));
    0x0000156c addiu s7, s7, 0x3fec      |     s7 += str._com_axis_ImcControl;
                                         | label_5:
    0x00001570 addiu v0, sp, 0x48        |     v0 = sp + 0x48;
    0x00001574 sw v0, 0x1c(sp)           |     *(var_1ch) = v0;
    0x00001578 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x0000157c lw t9, -0x7fa0(gp)        |     t9 = sym.imp.sd_bus_match_signal;
    0x00001580 addiu v0, v0, 0x36fc      |     v0 += 0x36fc;
    0x00001584 sw v0, 0x18(sp)           |     *(var_18h_2) = v0;
    0x00001588 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x0000158c lw a0, 0x54a8(s0)         |     a0 = *((s0 + 5418));
    0x00001590 addiu v0, v0, 0x4880      |     v0 += str.PropertiesChanged;
    0x00001594 sw v0, 0x14(sp)           |     *(var_14h_2) = v0;
    0x00001598 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x0000159c move a3, s7               |     a3 = s7;
    0x000015a0 addiu v0, v0, 0x4174      |     v0 += str.org.freedesktop.DBus.Properties;
    0x000015a4 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x000015a8 move a1, zero             |     a1 = 0;
    0x000015ac jalr t9                   |     t9 ();
    0x000015b0 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 < 0) {
    0x000015b4 bltz v0, 0x1738           |         goto label_18;
                                         |     }
    0x000015b8 lw s6, -0x7fd8(gp)        |     s6 = *((gp - 8182));
    0x000015bc addiu fp, s5, 0x340       |     fp = s5 + 0x340;
    0x000015c0 addiu s6, s6, 0x2bf4      |     s6 += fcn.00002bf4;
    0x000015c4 move a2, s5               |     a2 = s5;
                                         |     do {
    0x000015c8 move a1, s7               |         a1 = s7;
    0x000015cc move t9, s6               |         t9 = s6;
    0x000015d0 move a0, zero             |         a0 = 0;
    0x000015d4 bal 0x2bf4                |         fcn_00002bf4 ();
    0x000015d8 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 < 0) {
    0x000015dc bltz v0, 0x1918           |             goto label_15;
                                         |         }
    0x000015e0 addiu s5, s5, 0x34        |         s5 += 0x34;
    0x000015e4 move a2, s5               |         a2 = s5;
    0x000015e8 bne s5, fp, 0x15c8        |         
                                         |     } while (s5 != fp);
    0x000015ec lw s5, -0x7fdc(gp)        |     s5 = *((gp - 8183));
    0x000015f0 lw v0, 0x54b4(s5)         |     v0 = *((s5 + 5421));
    0x000015f4 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
                                         |     if (v0 == 0) {
    0x000015f8 beqz v0, 0x1930           |         goto label_19;
                                         |     }
    0x000015fc lw t9, -0x7f60(gp)        |     t9 = sym.imp.__printf_chk
    0x00001600 move a2, zero             |     a2 = 0;
    0x00001604 addiu a1, a1, 0x48b0      |     a1 += str.Trying_to_create_shared_mem_for_already_allocated_source__d_n;
    0x00001608 addiu a0, zero, 1         |     a0 = 1;
    0x0000160c jalr t9                   |     t9 ();
    0x00001610 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         | label_6:
    0x00001614 lw t9, -0x7fd8(gp)        |     t9 = *((gp - 8182));
    0x00001618 addiu t9, t9, 0x2028      |     t9 += fcn.00002028;
    0x0000161c move a0, zero             |     a0 = 0;
    0x00001620 bal 0x2028                |     fcn_00002028 ();
    0x00001624 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 < 0) {
    0x00001628 bltz v0, 0x1774           |         goto label_4;
                                         |     }
    0x0000162c lw s2, -0x7fd8(gp)        |     s2 = *((gp - 8182));
    0x00001630 lw s1, -0x7fd8(gp)        |     s1 = *((gp - 8182));
    0x00001634 lw s7, -0x7ee4(gp)        |     s7 = *((gp - 8121));
    0x00001638 addiu s2, s2, 0x49e4      |     s2 += str.Failed_to_wait_on_bus:__s_n;
    0x0000163c addiu s1, s1, 0x49c8      |     s1 += str.Failed_to_process_bus:__s_n;
    0x00001640 b 0x1660                  |     
                                         |     while (v0 >= 0) {
    0x00001644 lw t9, -0x7ee8(gp)        |         t9 = sym.imp.sd_bus_wait;
    0x00001648 lw a0, 0x54a8(s0)         |         a0 = *((s0 + 5418));
    0x0000164c addiu a2, zero, -1        |         a2 = -1;
    0x00001650 addiu a3, zero, -1        |         a3 = -1;
    0x00001654 jalr t9                   |         t9 ();
    0x00001658 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 < 0) {
    0x0000165c bltz v0, 0x1704           |             goto label_20;
                                         |         }
                                         | label_0:
    0x00001660 lw t9, -0x7f6c(gp)        |         t9 = sym.imp.sd_bus_process;
    0x00001664 lw a0, 0x54a8(s0)         |         a0 = *((s0 + 5418));
    0x00001668 move a1, zero             |         a1 = 0;
    0x0000166c jalr t9                   |         t9 ();
    0x00001670 lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001674 bgez v0, 0x1644           |         
                                         |     }
    0x00001678 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x0000167c negu a0, v0               |     __asm ("negu a0, v0");
    0x00001680 lw s3, (s7)               |     s3 = *(s7);
    0x00001684 jalr t9                   |     t9 ();
    0x00001688 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x0000168c move a3, v0               |     a3 = v0;
    0x00001690 move a2, s1               |     a2 = s1;
    0x00001694 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001698 addiu a1, zero, 1         |     a1 = 1;
    0x0000169c move a0, s3               |     a0 = s3;
    0x000016a0 jalr t9                   |     t9 ();
    0x000016a4 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000016a8 b 0x1660                  |     goto label_0;
                                         | label_14:
    0x000016ac lw t9, -0x7f34(gp)        |     t9 = sym.imp.malloc;
    0x000016b0 addiu a0, zero, 0x340     |     a0 = 0x340;
    0x000016b4 jalr t9                   |     t9 ();
    0x000016b8 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000016bc move s5, v0               |     s5 = v0;
    0x000016c0 move v1, s5               |     v1 = s5;
    0x000016c4 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
                                         |     /* str.MinGain */
    0x000016c8 addiu v0, v0, 0x5010      |     v0 += 0x5010;
    0x000016cc addiu t0, v0, 0x340       |     t0 = v0 + 0x340;
                                         |     do {
    0x000016d0 lw a3, (v0)               |         a3 = *(v0);
    0x000016d4 lw a2, 4(v0)              |         a2 = *((v0 + 1));
    0x000016d8 lw a1, 8(v0)              |         a1 = *((v0 + 2));
    0x000016dc lw a0, 0xc(v0)            |         a0 = *((v0 + 3));
    0x000016e0 addiu v0, v0, 0x10        |         v0 += 0x10;
    0x000016e4 sw a3, (v1)               |         *(v1) = a3;
    0x000016e8 sw a2, 4(v1)              |         *((v1 + 1)) = a2;
    0x000016ec sw a1, 8(v1)              |         *((v1 + 2)) = a1;
    0x000016f0 sw a0, 0xc(v1)            |         *((v1 + 3)) = a0;
    0x000016f4 addiu v1, v1, 0x10        |         v1 += 0x10;
    0x000016f8 bne v0, t0, 0x16d0        |         
                                         |     } while (v0 != t0);
    0x000016fc sw s5, 0x54b8(s3)         |     *((s3 + 5422)) = s5;
    0x00001700 b 0x14b0                  |     goto label_1;
                                         | label_20:
    0x00001704 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00001708 negu a0, v0               |     __asm ("negu a0, v0");
    0x0000170c lw s3, (s7)               |     s3 = *(s7);
    0x00001710 jalr t9                   |     t9 ();
    0x00001714 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001718 move a3, v0               |     a3 = v0;
    0x0000171c move a2, s2               |     a2 = s2;
    0x00001720 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001724 addiu a1, zero, 1         |     a1 = 1;
    0x00001728 move a0, s3               |     a0 = s3;
    0x0000172c jalr t9                   |     t9 ();
    0x00001730 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001734 b 0x1660                  |     goto label_0;
                                         | label_18:
    0x00001738 negu a0, v0               |     __asm ("negu a0, v0");
    0x0000173c lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00001740 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00001744 lw s4, (v0)               |     s4 = *(v0);
    0x00001748 jalr t9                   |     t9 ();
    0x0000174c lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001750 move a3, v0               |     a3 = v0;
    0x00001754 addiu a1, zero, 1         |     a1 = 1;
    0x00001758 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x0000175c lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001760 addiu a2, a2, 0x4894      |     a2 += str.Failed_to_match_signal:__s_n;
    0x00001764 move a0, s4               |     a0 = s4;
    0x00001768 jalr t9                   |     t9 ();
    0x0000176c lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001770 lw s5, -0x7fdc(gp)        |     s5 = *((gp - 8183));
                                         | label_4:
    0x00001774 lw a0, 0x44(sp)           |     a0 = *(var_44h);
    0x00001778 lw t9, -0x7eec(gp)        |     t9 = sym.imp.free;
                                         |     if (a0 != 0) {
    0x0000177c beqz a0, 0x178c           |         
    0x00001780 jalr t9                   |         t9 ();
    0x00001784 nop                       |         
    0x00001788 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |     }
    0x0000178c lw s6, 0x54b8(s3)         |     s6 = *((s3 + 5422));
    0x00001790 lw t9, -0x7f7c(gp)        |     t9 = sym.imp.sd_bus_unref;
                                         |     if (s6 == 0) {
    0x00001794 beqz s6, 0x17fc           |         goto label_21;
                                         |     }
    0x00001798 move s4, s6               |     s4 = s6;
    0x0000179c addiu s7, s6, 0x340       |     s7 = s6 + 0x340;
    0x000017a0 b 0x17ac                  |     
                                         |     while (v0 == 0) {
    0x000017a4 lw t9, -0x7eec(gp)        |         t9 = sym.imp.free;
                                         |         if (s7 == s4) {
    0x000017a8 beq s7, s4, 0x17e8        |             goto label_22;
                                         |         }
    0x000017ac lwl v0, 0x1d(s4)          |         __asm ("lwl v0, 0x1d(s4)");
                                         | label_2:
    0x000017b0 lwr v0, 0x1a(s4)          |         __asm ("lwr v0, 0x1a(s4)");
    0x000017b4 beql v0, zero, 0x17a4     |         
                                         |     }
    0x000017b8 addiu s4, s4, 0x34        |     s4 += 0x34;
    0x000017bc lwl a0, 0x21(s4)          |     __asm ("lwl a0, 0x21(s4)");
    0x000017c0 lw t9, -0x7eec(gp)        |     t9 = sym.imp.free;
    0x000017c4 lwr a0, 0x1e(s4)          |     __asm ("lwr a0, 0x1e(s4)");
    0x000017c8 jalr t9                   |     t9 ();
    0x000017cc lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000017d0 swl zero, 0x1d(s4)        |     __asm ("swl zero, 0x1d(s4)");
    0x000017d4 swr zero, 0x1a(s4)        |     __asm ("swr zero, 0x1a(s4)");
    0x000017d8 addiu s4, s4, 0x34        |     s4 += 0x34;
    0x000017dc lwl v0, 0x1d(s4)          |     __asm ("lwl v0, 0x1d(s4)");
                                         |     if (s7 == s4) {
    0x000017e0 bnel s7, s4, 0x17b0       |         goto label_2;
                                         |     }
    0x000017e4 lw t9, -0x7eec(gp)        |     t9 = sym.imp.free;
                                         | label_22:
    0x000017e8 move a0, s6               |     a0 = s6;
    0x000017ec jalr t9                   |     t9 ();
    0x000017f0 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000017f4 sw zero, 0x54b8(s3)       |     *((s3 + 5422)) = 0;
    0x000017f8 lw t9, -0x7f7c(gp)        |     t9 = sym.imp.sd_bus_unref;
                                         | label_21:
    0x000017fc lw a0, 0x54a8(s0)         |     a0 = *((s0 + 5418));
    0x00001800 jalr t9                   |     t9 ();
    0x00001804 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001808 lw a0, 0x54a0(s2)         |     a0 = *((s2 + 5416));
    0x0000180c lw t9, -0x7f78(gp)        |     t9 = sym.imp.sd_bus_slot_unref;
    0x00001810 sw zero, 0x54a8(s0)       |     *((s0 + 5418)) = 0;
    0x00001814 jalr t9                   |     t9 ();
    0x00001818 lw s0, 0x54b4(s5)         |     s0 = *((s5 + 5421));
    0x0000181c lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001820 sw zero, 0x54a0(s2)       |     *((s2 + 5416)) = 0;
                                         |     if (s0 == 0) {
    0x00001824 beqz s0, 0x1854           |         goto label_23;
                                         |     }
    0x00001828 lw a0, (s0)               |     a0 = *(s0);
    0x0000182c lw t9, -0x7f70(gp)        |     t9 = sym.imp.munmap;
                                         |     if (a0 != 0) {
    0x00001830 beqz a0, 0x1844           |         
    0x00001834 lw a1, 0xc(s0)            |         a1 = *((s0 + 3));
    0x00001838 jalr t9                   |         t9 ();
    0x0000183c lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001840 sw zero, (s0)             |         *(s0) = 0;
                                         |     }
    0x00001844 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001848 lw a0, 0x54ac(v0)         |     a0 = *((v0 + 5419));
    0x0000184c lw s0, -0x7fdc(gp)        |     s0 = *((gp - 8183));
    0x00001850 bgtz a0, 0x1894           |     
                                         |     while (1) {
                                         | label_23:
    0x00001854 move v0, zero             |         v0 = 0;
                                         | label_10:
    0x00001858 lw a0, 0x74(sp)           |         a0 = *(var_74h);
    0x0000185c lw v1, (s1)               |         v1 = *(s1);
    0x00001860 lw ra, 0x9c(sp)           |         ra = *(var_9ch);
                                         |         if (a0 != v1) {
    0x00001864 bne a0, v1, 0x1df0        |             goto label_24;
                                         |         }
    0x00001868 lw fp, 0x98(sp)           |         fp = *(var_98h);
    0x0000186c lw s7, 0x94(sp)           |         s7 = *(var_94h);
    0x00001870 lw s6, 0x90(sp)           |         s6 = *(var_90h);
    0x00001874 lw s5, 0x8c(sp)           |         s5 = *(var_8ch);
    0x00001878 lw s4, 0x88(sp)           |         s4 = *(var_88h);
    0x0000187c lw s3, 0x84(sp)           |         s3 = *(var_84h);
    0x00001880 lw s2, 0x80(sp)           |         s2 = *(var_80h);
    0x00001884 lw s1, 0x7c(sp)           |         s1 = *(var_7ch);
    0x00001888 lw s0, 0x78(sp)           |         s0 = *(var_78h);
    0x0000188c addiu sp, sp, 0xa0        |         
    0x00001890 jr ra                     |         return v0;
    0x00001894 lw t9, -0x7fac(gp)        |         t9 = sym.imp.close;
    0x00001898 jalr t9                   |         t9 ();
    0x0000189c nop                       |         
    0x000018a0 lw s2, 0x54a4(s0)         |         s2 = *((s0 + 5417));
    0x000018a4 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (s2 != 0) {
    0x000018a8 beqz s2, 0x18cc           |             
    0x000018ac lw t9, -0x7f68(gp)        |             t9 = sym.imp.shm_unlink;
    0x000018b0 move a0, s2               |             a0 = s2;
    0x000018b4 jalr t9                   |             t9 ();
    0x000018b8 lw gp, 0x20(sp)           |             gp = *(var_20h);
    0x000018bc lw t9, -0x7eec(gp)        |             t9 = sym.imp.free;
    0x000018c0 move a0, s2               |             a0 = s2;
    0x000018c4 jalr t9                   |             t9 ();
    0x000018c8 lw gp, 0x20(sp)           |             gp = *(var_20h);
                                         |         }
    0x000018cc sw zero, 0x54a4(s0)       |         *((s0 + 5417)) = 0;
    0x000018d0 b 0x1854                  |         
                                         |     }
                                         | label_16:
    0x000018d4 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x000018d8 lw a0, 0x54a8(s0)         |     a0 = *((s0 + 5418));
    0x000018dc move t9, s6               |     t9 = s6;
    0x000018e0 addiu a1, a1, 0x4150      |     a1 += str.com.axis.VideoControl;
    0x000018e4 bal 0x2314                |     fcn_00002314 ();
    0x000018e8 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 == 0) {
    0x000018ec beqz v0, 0x1b84           |         goto label_25;
                                         |     }
    0x000018f0 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x000018f4 lw t9, -0x7ef0(gp)        |     t9 = sym.imp.strdup;
    0x000018f8 addiu a0, a0, 0x47d0      |     a0 += str.videocontrol;
                                         | label_7:
    0x000018fc jalr t9                   |     t9 ();
    0x00001900 nop                       |     
    0x00001904 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001908 sw v0, 0x44(sp)           |     *(var_44h) = v0;
    0x0000190c move s6, v0               |     s6 = v0;
    0x00001910 lw s7, -0x7fd8(gp)        |     s7 = *((gp - 8182));
    0x00001914 b 0x1530                  |     goto label_3;
                                         | label_15:
    0x00001918 lw s5, -0x7fdc(gp)        |     s5 = *((gp - 8183));
    0x0000191c b 0x1774                  |     goto label_4;
                                         | label_17:
    0x00001920 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001924 move s7, s4               |     s7 = s4;
    0x00001928 addiu a2, a2, 0x3fd4      |     a2 += str.com.axis.ImageControl;
    0x0000192c b 0x1570                  |     goto label_5;
                                         | label_19:
    0x00001930 lw s6, 0x44(sp)           |     s6 = *(var_44h);
    0x00001934 lw t9, -0x7fb0(gp)        |     t9 = sym.imp.calloc;
    0x00001938 addiu a1, zero, 0x10      |     a1 = 0x10;
    0x0000193c sw s6, 0x2c(sp)           |     *(var_2ch) = s6;
    0x00001940 addiu a0, zero, 1         |     a0 = 1;
    0x00001944 jalr t9                   |     t9 ();
    0x00001948 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x0000194c move a0, s6               |     a0 = s6;
    0x00001950 sw zero, 0x38(sp)         |     *(var_38h) = 0;
    0x00001954 lw t9, -0x7f4c(gp)        |     t9 = sym.imp.strlen;
    0x00001958 move s6, v0               |     s6 = v0;
    0x0000195c jalr t9                   |     t9 ();
    0x00001960 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001964 move s7, v0               |     s7 = v0;
    0x00001968 sll v0, v0, 2             |     v0 <<= 2;
    0x0000196c addiu v1, v0, 0x14        |     v1 = v0 + 0x14;
    0x00001970 sw v0, 0x34(sp)           |     *(var_34h) = v0;
    0x00001974 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x00001978 lw t9, -0x7ed0(gp)        |     t9 = sym.imp.__snprintf_chk
    0x0000197c addiu v0, v0, 0x48f0      |     v0 += str.shuttergain_d;
    0x00001980 sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x00001984 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001988 addiu a3, zero, 0xd       |     a3 = 0xd;
    0x0000198c addiu a2, zero, 1         |     a2 = 1;
    0x00001990 addiu a1, zero, 0xd       |     a1 = 0xd;
    0x00001994 sw v1, 0x30(sp)           |     *(var_30h) = v1;
    0x00001998 sw v1, 0x54b0(v0)         |     *((v0 + 5420)) = v1;
    0x0000199c move a0, s4               |     a0 = s4;
    0x000019a0 sw zero, 0x14(sp)         |     *(var_14h_2) = 0;
    0x000019a4 jalr t9                   |     t9 ();
    0x000019a8 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000019ac lw t9, -0x7ef0(gp)        |     t9 = sym.imp.strdup;
    0x000019b0 move a0, s4               |     a0 = s4;
    0x000019b4 jalr t9                   |     t9 ();
    0x000019b8 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x000019bc addiu a2, zero, 0x180     |     a2 = 0x180;
    0x000019c0 addiu a1, zero, 0x102     |     a1 = 0x102;
    0x000019c4 lw v1, -0x7fdc(gp)        |     v1 = *((gp - 8183));
    0x000019c8 lw t9, -0x7efc(gp)        |     t9 = sym.imp.shm_open;
    0x000019cc move a0, s4               |     a0 = s4;
    0x000019d0 sw v0, 0x54a4(v1)         |     *((v1 + 5417)) = v0;
    0x000019d4 jalr t9                   |     t9 ();
    0x000019d8 move fp, v0               |     fp = v0;
    0x000019dc lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 < 0) {
    0x000019e0 bltz v0, 0x1c20           |         goto label_26;
                                         |     }
    0x000019e4 lw t9, -0x7fb4(gp)        |     t9 = sym.imp.fchmod;
    0x000019e8 addiu a1, zero, 0x1b6     |     a1 = 0x1b6;
    0x000019ec move a0, v0               |     a0 = v0;
    0x000019f0 jalr t9                   |     t9 ();
    0x000019f4 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 < 0) {
    0x000019f8 bltz v0, 0x1ae8           |         goto label_27;
                                         |     }
    0x000019fc lw t9, -0x7fd8(gp)        |     t9 = *((gp - 8182));
    0x00001a00 lw a0, 0x30(sp)           |     a0 = *(var_30h);
    0x00001a04 addiu t9, t9, 0x1f70      |     t9 += fcn.00001f70;
    0x00001a08 addiu a1, sp, 0x38        |     a1 = sp + 0x38;
    0x00001a0c bal 0x1f70                |     fcn_00001f70 ();
    0x00001a10 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001a14 sw v0, 0xc(s6)            |     *((s6 + 3)) = v0;
    0x00001a18 move a2, v0               |     a2 = v0;
    0x00001a1c lw t9, -0x7f04(gp)        |     t9 = sym.imp.ftruncate64;
    0x00001a20 move a3, zero             |     a3 = 0;
    0x00001a24 move a0, fp               |     a0 = fp;
    0x00001a28 jalr t9                   |     t9 ();
    0x00001a2c addiu v1, zero, -1        |     v1 = -1;
    0x00001a30 lw gp, 0x20(sp)           |     gp = *(var_20h);
                                         |     if (v0 == v1) {
    0x00001a34 beq v0, v1, 0x1c70        |         goto label_28;
                                         |     }
    0x00001a38 lw a1, 0xc(s6)            |     a1 = *((s6 + 3));
    0x00001a3c lw t9, -0x7f00(gp)        |     t9 = sym.imp.mmap64;
    0x00001a40 move v1, zero             |     v1 = 0;
    0x00001a44 move v0, zero             |     v0 = 0;
    0x00001a48 sw v1, 0x1c(sp)           |     *(var_1ch) = v1;
    0x00001a4c sw v0, 0x18(sp)           |     *(var_18h_2) = v0;
    0x00001a50 sw fp, 0x10(sp)           |     *(var_10h_2) = fp;
    0x00001a54 addiu a3, zero, 1         |     a3 = 1;
    0x00001a58 addiu a2, zero, 2         |     a2 = 2;
    0x00001a5c move a0, zero             |     a0 = 0;
    0x00001a60 jalr t9                   |     t9 ();
    0x00001a64 addiu v1, zero, -1        |     v1 = -1;
    0x00001a68 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001a6c sw v0, (s6)               |     *(s6) = v0;
                                         |     if (v0 == v1) {
    0x00001a70 beq v0, v1, 0x1d48        |         goto label_29;
                                         |     }
    0x00001a74 lw v1, 0x30(sp)           |     v1 = *(var_30h);
    0x00001a78 sw v0, 8(s6)              |     *((s6 + 2)) = v0;
    0x00001a7c addu v1, v0, v1           |     v1 = v0 + v1;
    0x00001a80 sw v1, 4(s6)              |     *((s6 + 1)) = v1;
    0x00001a84 addiu v1, zero, 5         |     v1 = 5;
    0x00001a88 sw v1, (v0)               |     *(v0) = v1;
    0x00001a8c addiu v1, zero, 0x16      |     v1 = 0x16;
    0x00001a90 sw v1, 4(v0)              |     *((v0 + 1)) = v1;
    0x00001a94 lw v1, 0x38(sp)           |     v1 = *(var_38h);
    0x00001a98 addiu a0, v0, 0x14        |     a0 = v0 + 0x14;
    0x00001a9c sw v1, 8(v0)              |     *((v0 + 2)) = v1;
    0x00001aa0 lw a1, 0xc(s6)            |     a1 = *((s6 + 3));
    0x00001aa4 move v1, zero             |     v1 = 0;
    0x00001aa8 sw a1, 0xc(v0)            |     *((v0 + 3)) = a1;
    0x00001aac lw a1, 0x34(sp)           |     a1 = *(var_34h);
    0x00001ab0 sw a1, 0x10(v0)           |     *((v0 + 4)) = a1;
    0x00001ab4 b 0x1acc                  |     
                                         |     while (v0 != 0) {
    0x00001ab8 addiu a0, a0, 4           |         a0 += 4;
    0x00001abc addu v0, v0, v1           |         v0 += v1;
    0x00001ac0 addiu v1, v1, 1           |         v1++;
    0x00001ac4 lb v0, (v0)               |         v0 = *(v0);
    0x00001ac8 sw v0, -4(a0)             |         *((a0 - 1)) = v0;
    0x00001acc slt v0, v1, s7            |         v0 = (v1 < s7) ? 1 : 0;
    0x00001ad0 lw v0, 0x2c(sp)           |         v0 = *(var_2ch);
    0x00001ad4 bnez v0, 0x1ab8           |         
                                         |     }
    0x00001ad8 lw v0, -0x7fdc(gp)        |     v0 = *((gp - 8183));
    0x00001adc sw s6, 0x54b4(s5)         |     *((s5 + 5421)) = s6;
    0x00001ae0 sw fp, 0x54ac(v0)         |     *((v0 + 5419)) = fp;
    0x00001ae4 b 0x1614                  |     goto label_6;
                                         | label_27:
    0x00001ae8 lw s7, -0x7ee4(gp)        |     s7 = *((gp - 8121));
    0x00001aec lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x00001af0 lw t9, -0x7f2c(gp)        |     t9 = sym.imp.fwrite;
    0x00001af4 lw a3, (s7)               |     a3 = *(s7);
    0x00001af8 addiu a2, zero, 0x25      |     a2 = 0x25;
    0x00001afc addiu a1, zero, 1         |     a1 = 1;
    0x00001b00 addiu a0, a0, 0x4928      |     a0 += str.Failed_to_chmod_shared_memory_region_n;
    0x00001b04 jalr t9                   |     t9 ();
    0x00001b08 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001b0c beqz s6, 0x1b38           |     
                                         |     while (s6 != 0) {
                                         | label_9:
    0x00001b10 lw a0, (s6)               |         a0 = *(s6);
    0x00001b14 lw t9, -0x7f70(gp)        |         t9 = sym.imp.munmap;
                                         |         if (a0 != 0) {
    0x00001b18 beqz a0, 0x1b38           |             
    0x00001b1c lw a1, 0xc(s6)            |             a1 = *((s6 + 3));
    0x00001b20 jalr t9                   |             t9 ();
    0x00001b24 lw gp, 0x20(sp)           |             gp = *(var_20h);
    0x00001b28 lw t9, -0x7eec(gp)        |             t9 = sym.imp.free;
    0x00001b2c move a0, s6               |             a0 = s6;
    0x00001b30 jalr t9                   |             t9 ();
    0x00001b34 lw gp, 0x20(sp)           |             gp = *(var_20h);
                                         |         }
    0x00001b38 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
                                         |         if (fp > 0) {
    0x00001b3c blez fp, 0x1b64           |             
    0x00001b40 lw t9, -0x7fac(gp)        |             t9 = sym.imp.close;
    0x00001b44 move a0, fp               |             a0 = fp;
    0x00001b48 jalr t9                   |             t9 ();
    0x00001b4c lw gp, 0x20(sp)           |             gp = *(var_20h);
    0x00001b50 lw t9, -0x7f68(gp)        |             t9 = sym.imp.shm_unlink;
    0x00001b54 move a0, s4               |             a0 = s4;
    0x00001b58 jalr t9                   |             t9 ();
    0x00001b5c lw gp, 0x20(sp)           |             gp = *(var_20h);
    0x00001b60 lw a2, -0x7fd8(gp)        |             a2 = *((gp - 8182));
                                         |         }
                                         | label_8:
    0x00001b64 lw t9, -0x7f94(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00001b68 lw a0, (s7)               |         a0 = *(s7);
    0x00001b6c move a3, zero             |         a3 = 0;
    0x00001b70 addiu a2, a2, 0x499c      |         a2 += str.Failed_to_create_shared_mem_for_source__d_n;
    0x00001b74 addiu a1, zero, 1         |         a1 = 1;
    0x00001b78 jalr t9                   |         t9 ();
    0x00001b7c lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001b80 b 0x1774                  |         goto label_4;
                                         | label_25:
    0x00001b84 lw s7, -0x7fd8(gp)        |         s7 = *((gp - 8182));
    0x00001b88 lw a0, 0x54a8(s0)         |         a0 = *((s0 + 5418));
    0x00001b8c move t9, s6               |         t9 = s6;
    0x00001b90 addiu a1, s7, 0x3fd4      |         a1 = s7 + str.com.axis.ImageControl;
    0x00001b94 bal 0x2314                |         fcn_00002314 ();
    0x00001b98 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 == 0) {
    0x00001b9c beqz v0, 0x1d70           |             goto label_30;
                                         |         }
    0x00001ba0 addiu v0, sp, 0x44        |         v0 = sp + 0x44;
    0x00001ba4 sw v0, 0x18(sp)           |         *(var_18h_2) = v0;
    0x00001ba8 lw v0, -0x7fd8(gp)        |         v0 = *((gp - 8182));
    0x00001bac lw a3, -0x7fd8(gp)        |         a3 = *((gp - 8182));
    0x00001bb0 lw t9, -0x7f54(gp)        |         t9 = sym.imp.sd_bus_get_property_string;
    0x00001bb4 addiu v0, v0, 0x47fc      |         v0 += str.SensorType;
    0x00001bb8 addiu s6, sp, 0x38        |         s6 = sp + 0x38;
    0x00001bbc lw a0, 0x54a8(s0)         |         a0 = *((s0 + 5418));
    0x00001bc0 sw s6, 0x14(sp)           |         *(var_14h_2) = s6;
    0x00001bc4 sw v0, 0x10(sp)           |         *(var_10h_2) = v0;
    0x00001bc8 addiu a3, a3, 0x47e0      |         a3 += str.com.axis.ImageControlStream;
    0x00001bcc move a2, s4               |         a2 = s4;
    0x00001bd0 addiu a1, s7, 0x3fd4      |         a1 = s7 + str.com.axis.ImageControl;
    0x00001bd4 jalr t9                   |         t9 ();
    0x00001bd8 lw gp, 0x20(sp)           |         gp = *(var_20h);
                                         |         if (v0 >= 0) {
    0x00001bdc bltz v0, 0x1c08           |             
    0x00001be0 lw a1, -0x7fd8(gp)        |             a1 = *((gp - 8182));
    0x00001be4 lw s6, 0x44(sp)           |             s6 = *(var_44h);
    0x00001be8 lw t9, -0x7ed4(gp)        |             t9 = sym.imp.strcmp;
    0x00001bec addiu a1, a1, 0x4840      |             a1 += str.thermal;
    0x00001bf0 move a0, s6               |             a0 = s6;
    0x00001bf4 jalr t9                   |             t9 ();
    0x00001bf8 lw gp, 0x20(sp)           |             gp = *(var_20h);
                                         |             if (v0 != 0) {
    0x00001bfc bnez v0, 0x1c50           |                 goto label_31;
                                         |             }
    0x00001c00 lw s7, -0x7fd8(gp)        |             s7 = *((gp - 8182));
    0x00001c04 b 0x1530                  |             goto label_3;
                                         |         }
    0x00001c08 addiu v1, zero, -0x33     |         v1 = -0x33;
    0x00001c0c lw t9, -0x7ef0(gp)        |         t9 = sym.imp.strdup;
                                         |         if (v0 != v1) {
    0x00001c10 bne v0, v1, 0x1d9c        |             goto label_32;
                                         |         }
    0x00001c14 lw a0, -0x7fd8(gp)        |         a0 = *((gp - 8182));
    0x00001c18 addiu a0, a0, 0x4834      |         a0 += str.headless;
    0x00001c1c b 0x18fc                  |         goto label_7;
                                         | label_26:
    0x00001c20 lw s7, -0x7ee4(gp)        |         s7 = *((gp - 8121));
    0x00001c24 lw a0, -0x7fd8(gp)        |         a0 = *((gp - 8182));
    0x00001c28 lw t9, -0x7f2c(gp)        |         t9 = sym.imp.fwrite;
    0x00001c2c lw a3, (s7)               |         a3 = *(s7);
    0x00001c30 addiu a2, zero, 0x26      |         a2 = 0x26;
    0x00001c34 addiu a1, zero, 1         |         a1 = 1;
    0x00001c38 addiu a0, a0, 0x4900      |         a0 += str.Failed_to_create_shared_memory_region_n;
    0x00001c3c jalr t9                   |         t9 ();
    0x00001c40 lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001c44 bnez s6, 0x1b10           |         
                                         |     }
    0x00001c48 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001c4c b 0x1b64                  |     goto label_8;
                                         | label_31:
    0x00001c50 lw t9, -0x7eec(gp)        |     t9 = sym.imp.free;
    0x00001c54 move a0, s6               |     a0 = s6;
    0x00001c58 jalr t9                   |     t9 ();
    0x00001c5c lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001c60 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x00001c64 lw t9, -0x7ef0(gp)        |     t9 = sym.imp.strdup;
    0x00001c68 addiu a0, a0, 0x4848      |     a0 += str.imaging;
    0x00001c6c b 0x18fc                  |     goto label_7;
                                         | label_28:
    0x00001c70 lw s7, -0x7ee4(gp)        |     s7 = *((gp - 8121));
    0x00001c74 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x00001c78 lw t9, -0x7f2c(gp)        |     t9 = sym.imp.fwrite;
    0x00001c7c lw a3, (s7)               |     a3 = *(s7);
    0x00001c80 addiu a2, zero, 0x29      |     a2 = 0x29;
    0x00001c84 addiu a1, zero, 1         |     a1 = 1;
    0x00001c88 addiu a0, a0, 0x4950      |     a0 += str.Failed_to_ftruncate_shared_memory_region_n;
    0x00001c8c jalr t9                   |     t9 ();
    0x00001c90 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001c94 b 0x1b10                  |     goto label_9;
                                         | label_12:
    0x00001c98 negu a0, v0               |     __asm ("negu a0, v0");
    0x00001c9c lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00001ca0 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00001ca4 lw s0, (v0)               |     s0 = *(v0);
    0x00001ca8 jalr t9                   |     t9 ();
    0x00001cac lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001cb0 move a3, v0               |     a3 = v0;
    0x00001cb4 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001cb8 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001cbc addiu a2, a2, 0x473c      |     a2 += str.Failed_to_add_object_vtable:__s_n;
                                         |     do {
    0x00001cc0 addiu a1, zero, 1         |         a1 = 1;
    0x00001cc4 move a0, s0               |         a0 = s0;
    0x00001cc8 jalr t9                   |         t9 ();
    0x00001ccc lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001cd0 addiu v0, zero, -1        |         v0 = -1;
    0x00001cd4 b 0x1858                  |         goto label_10;
                                         | label_11:
    0x00001cd8 negu a0, v0               |         __asm ("negu a0, v0");
    0x00001cdc lw v0, -0x7ee4(gp)        |         v0 = *((gp - 8121));
    0x00001ce0 lw t9, -0x7f3c(gp)        |         t9 = sym.imp.strerror;
    0x00001ce4 lw s0, (v0)               |         s0 = *(v0);
    0x00001ce8 jalr t9                   |         t9 ();
    0x00001cec lw gp, 0x20(sp)           |         gp = *(var_20h);
    0x00001cf0 move a3, v0               |         a3 = v0;
    0x00001cf4 lw a2, -0x7fd8(gp)        |         a2 = *((gp - 8182));
    0x00001cf8 lw t9, -0x7f94(gp)        |         t9 = sym.imp.__fprintf_chk
    0x00001cfc addiu a2, a2, 0x46d8      |         a2 += str.Failed_to_connect_to_system_bus:__s_n;
    0x00001d00 b 0x1cc0                  |         
                                         |     } while (1);
                                         | label_13:
    0x00001d04 negu a0, v0               |     __asm ("negu a0, v0");
    0x00001d08 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00001d0c lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00001d10 lw s0, (v0)               |     s0 = *(v0);
    0x00001d14 jalr t9                   |     t9 ();
    0x00001d18 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001d1c sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x00001d20 addiu a3, s3, 0x4700      |     a3 = s3 + str.com.axis.ShuttergainControl;
    0x00001d24 lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001d28 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001d2c addiu a2, a2, 0x4760      |     a2 += str.Failed_to_acquire_service_name___s_:__s_n;
    0x00001d30 addiu a1, zero, 1         |     a1 = 1;
    0x00001d34 move a0, s0               |     a0 = s0;
    0x00001d38 jalr t9                   |     t9 ();
    0x00001d3c lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001d40 addiu v0, zero, -1        |     v0 = -1;
    0x00001d44 b 0x1858                  |     goto label_10;
                                         | label_29:
    0x00001d48 lw s7, -0x7ee4(gp)        |     s7 = *((gp - 8121));
    0x00001d4c lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x00001d50 lw t9, -0x7f2c(gp)        |     t9 = sym.imp.fwrite;
    0x00001d54 lw a3, (s7)               |     a3 = *(s7);
    0x00001d58 addiu a2, zero, 0x1d      |     a2 = 0x1d;
    0x00001d5c addiu a1, zero, 1         |     a1 = 1;
    0x00001d60 addiu a0, a0, 0x497c      |     a0 += str.Failed_to_mmap_shared_memory_n;
    0x00001d64 jalr t9                   |     t9 ();
    0x00001d68 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001d6c b 0x1b10                  |     goto label_9;
                                         | label_30:
    0x00001d70 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00001d74 lw a0, -0x7fd8(gp)        |     a0 = *((gp - 8182));
    0x00001d78 lw t9, -0x7f2c(gp)        |     t9 = sym.imp.fwrite;
    0x00001d7c lw a3, (v0)               |     a3 = *(v0);
    0x00001d80 addiu a2, zero, 0x2c      |     a2 = 0x2c;
    0x00001d84 addiu a1, zero, 1         |     a1 = 1;
    0x00001d88 addiu a0, a0, 0x4850      |     a0 += str.Failed_to_determine_image_controller__abort_n;
    0x00001d8c jalr t9                   |     t9 ();
    0x00001d90 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001d94 lw s5, -0x7fdc(gp)        |     s5 = *((gp - 8183));
    0x00001d98 b 0x1774                  |     goto label_4;
                                         | label_32:
    0x00001d9c negu a0, v0               |     __asm ("negu a0, v0");
    0x00001da0 lw v0, -0x7ee4(gp)        |     v0 = *((gp - 8121));
    0x00001da4 lw t9, -0x7f3c(gp)        |     t9 = sym.imp.strerror;
    0x00001da8 lw s5, (v0)               |     s5 = *(v0);
    0x00001dac jalr t9                   |     t9 ();
    0x00001db0 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001db4 move a0, s5               |     a0 = s5;
    0x00001db8 move a3, s4               |     a3 = s4;
    0x00001dbc lw a2, -0x7fd8(gp)        |     a2 = *((gp - 8182));
    0x00001dc0 lw t9, -0x7f94(gp)        |     t9 = sym.imp.__fprintf_chk
    0x00001dc4 addiu a2, a2, 0x4808      |     a2 += str.Failed_to_determine_sensor_type___s_:__s_n;
    0x00001dc8 addiu a1, zero, 1         |     a1 = 1;
    0x00001dcc sw v0, 0x10(sp)           |     *(var_10h_2) = v0;
    0x00001dd0 jalr t9                   |     t9 ();
    0x00001dd4 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001dd8 lw t9, -0x7f48(gp)        |     t9 = sym.imp.sd_bus_error_free;
    0x00001ddc move a0, s6               |     a0 = s6;
    0x00001de0 jalr t9                   |     t9 ();
    0x00001de4 lw gp, 0x20(sp)           |     gp = *(var_20h);
    0x00001de8 lw s5, -0x7fdc(gp)        |     s5 = *((gp - 8183));
    0x00001dec b 0x1774                  |     goto label_4;
                                         | label_24:
    0x00001df0 lw t9, -0x7f0c(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x00001df4 jalr t9                   |     t9 ();
    0x00001df8 nop                       |     
    0x00001dfc nop                       |     
                                         | }

[*] Function printf used 45 times shuttergaind