[*] Binary protection state of pt_privacy

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


[*] Function system tear down of pt_privacy

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/sbin/pt_privacy @ 0x40290c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.privacy_off_bool_ ()         | void privacy_off_bool_ () {
                                             |     /* privacy_off(bool) */
    0x0040290c lui gp, 2                     |     
    0x00402910 addiu gp, gp, 0x714           |     
    0x00402914 addu gp, gp, t9               |     gp += t9;
    0x00402918 addiu sp, sp, -0x11e8         |     
    0x0040291c sw ra, 0x11e4(sp)             |     *(var_11e4h) = ra;
    0x00402920 sw fp, 0x11e0(sp)             |     *(var_11e0h) = fp;
    0x00402924 sw s1, 0x11dc(sp)             |     *(var_11dch) = s1;
    0x00402928 sw s0, 0x11d8(sp)             |     *(var_11d8h) = s0;
    0x0040292c move fp, sp                   |     fp = sp;
    0x00402930 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x00402934 move t8, a0                   |     t8 = a0;
    0x00402938 sb t8, 0x24(fp)               |     *(arg_24h) = t8;
    0x0040293c lw t8, -0x7e9c(gp)            |     t8 = *((gp - 8103));
    0x00402940 lw t8, (t8)                   |     t8 = *(t8);
    0x00402944 sw t8, 0x11d4(fp)             |     *(arg_11d4h) = t8;
    0x00402948 addiu t8, zero, -1            |     t8 = -1;
    0x0040294c sw t8, 0x30(fp)               |     *(arg_30h) = t8;
    0x00402950 addiu t8, fp, 0x38            |     t8 = fp + 0x38;
    0x00402954 move a0, t8                   |     a0 = t8;
    0x00402958 lw t8, -0x7fd4(gp)            |     t8 = *(gp);
    0x0040295c move t9, t8                   |     t9 = t8;
    0x00402960 jalr t9                       |     t9 ();
    0x00402964 nop                           |     
    0x00402968 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040296c lw a0, -0x7fd8(gp)            |     a0 = *(gp);
    0x00402970 lw t8, -0x7eec(gp)            |     t8 = sym.imp.cam_get_privacy__privacy_setting_;
    0x00402974 move t9, t8                   |     t9 = t8;
    0x00402978 jalr t9                       |     t9 ();
    0x0040297c nop                           |     
    0x00402980 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402984 lw t8, -0x7fd8(gp)            |     t8 = *(gp);
    0x00402988 lbu t8, (t8)                  |     t8 = *(t8);
                                             |     if (t8 == 0) {
    0x0040298c bnez t8, 0x4029a0             |         
    0x00402990 nop                           |         
    0x00402994 lw s0, 0x30(fp)               |         s0 = *(arg_30h);
    0x00402998 b 0x402e40                    |         goto label_0;
    0x0040299c nop                           |         
                                             |     }
    0x004029a0 addiu t8, fp, 0x1bc           |     t8 = fp + 0x1bc;
    0x004029a4 move a0, t8                   |     a0 = t8;
    0x004029a8 lw t8, -0x7fd0(gp)            |     t8 = *(gp);
    0x004029ac move t9, t8                   |     t9 = t8;
    0x004029b0 jalr t9                       |     t9 ();
    0x004029b4 nop                           |     
    0x004029b8 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004029bc addiu t8, fp, 0x1bc           |     t8 = fp + 0x1bc;
    0x004029c0 move a0, t8                   |     a0 = t8;
    0x004029c4 lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* esilref: 'PTZ' */
    0x004029c8 addiu a1, t8, -0x6a38         |     a1 = t8 + -0x6a38;
    0x004029cc lw t8, -0x7ec0(gp)            |     t8 = *(gp);
    0x004029d0 move t9, t8                   |     t9 = t8;
    0x004029d4 jalr t9                       |     t9 ();
    0x004029d8 nop                           |     
    0x004029dc lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004029e0 addiu t8, fp, 0x1bc           |     t8 = fp + 0x1bc;
    0x004029e4 move a0, t8                   |     a0 = t8;
    0x004029e8 lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str.InPrivacy */
    0x004029ec addiu a1, t8, -0x6a34         |     a1 = t8 + -0x6a34;
    0x004029f0 lw t8, -0x7ef0(gp)            |     t8 = *(gp);
    0x004029f4 move t9, t8                   |     t9 = t8;
    0x004029f8 jalr t9                       |     t9 ();
    0x004029fc nop                           |     
    0x00402a00 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402a04 move t8, v0                   |     t8 = v0;
    0x00402a08 sltiu t8, t8, 1               |     t8 = (t8 < 1) ? 1 : 0;
    0x00402a0c andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x00402a10 beqz t8, 0x402a28             |         
    0x00402a14 nop                           |         
    0x00402a18 lw s0, 0x30(fp)               |         s0 = *(arg_30h);
    0x00402a1c move s1, zero                 |         s1 = 0;
    0x00402a20 b 0x402e10                    |         goto label_1;
    0x00402a24 nop                           |         
                                             |     }
    0x00402a28 lw a0, -0x7fcc(gp)            |     a0 = *(gp);
    0x00402a2c addiu a1, zero, 4             |     a1 = 4;
    0x00402a30 lw t8, -0x7fc8(gp)            |     t8 = *(gp);
    0x00402a34 move t9, t8                   |     t9 = t8;
    0x00402a38 jalr t9                       |     t9 ();
    0x00402a3c nop                           |     
    0x00402a40 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402a44 move t8, v0                   |     t8 = v0;
                                             |     if (t8 != 0) {
    0x00402a48 beqz t8, 0x402ad4             |         
    0x00402a4c nop                           |         
    0x00402a50 lbu t8, 0x24(fp)              |         t8 = *(arg_24h);
                                             |         if (t8 != 0) {
    0x00402a54 beqz t8, 0x402ac8             |             
    0x00402a58 nop                           |             
    0x00402a5c addiu t8, zero, 0x1d          |             t8 = 0x1d;
    0x00402a60 sw t8, 0x50(fp)               |             *(arg_50h) = t8;
    0x00402a64 addiu v0, fp, 0x38            |             v0 = fp + 0x38;
    0x00402a68 addiu t8, fp, 0x50            |             t8 = fp + 0x50;
    0x00402a6c addiu v1, fp, 0x7c            |             v1 = fp + 0x7c;
    0x00402a70 sw v1, 0x10(sp)               |             *(var_10h) = v1;
    0x00402a74 addiu v1, zero, 0x8c          |             v1 = 0x8c;
    0x00402a78 sw v1, 0x14(sp)               |             *(var_14h) = v1;
    0x00402a7c move a0, v0                   |             a0 = v0;
    0x00402a80 lw v0, -0x7fdc(gp)            |             v0 = *((gp - 8183));
                                             |             /* str._var_tmp_ptd */
    0x00402a84 addiu a1, v0, -0x6a1c         |             a1 = v0 + -0x6a1c;
    0x00402a88 move a2, t8                   |             a2 = t8;
    0x00402a8c addiu a3, zero, 0x2c          |             a3 = 0x2c;
    0x00402a90 lw t8, -0x7ed8(gp)            |             t8 = *(gp);
    0x00402a94 move t9, t8                   |             t9 = t8;
    0x00402a98 jalr t9                       |             t9 ();
    0x00402a9c nop                           |             
    0x00402aa0 lw gp, 0x18(fp)               |             gp = *(arg_18h);
    0x00402aa4 move t8, v0                   |             t8 = v0;
    0x00402aa8 nor t8, zero, t8              |             __asm ("nor t8, zero, t8");
    0x00402aac srl t8, t8, 0x1f              |             t8 >>= 0x1f;
    0x00402ab0 andi t8, t8, 0xff             |             t8 &= 0xff;
                                             |             if (t8 == 0) {
    0x00402ab4 beqz t8, 0x402ad8             |                 goto label_2;
                                             |             }
    0x00402ab8 nop                           |             
    0x00402abc sw zero, 0x30(fp)             |             *(arg_30h) = 0;
    0x00402ac0 b 0x402ad8                    |             goto label_2;
    0x00402ac4 nop                           |             
                                             |         }
    0x00402ac8 sw zero, 0x30(fp)             |         *(arg_30h) = 0;
    0x00402acc b 0x402ad8                    |         goto label_2;
    0x00402ad0 nop                           |         
                                             |     }
    0x00402ad4 sw zero, 0x30(fp)             |     *(arg_30h) = 0;
                                             | label_2:
    0x00402ad8 lw t8, 0x30(fp)               |     t8 = *(arg_30h);
                                             |     if (t8 == 0) {
    0x00402adc bnez t8, 0x402b7c             |         
    0x00402ae0 nop                           |         
    0x00402ae4 addiu t8, fp, 0x1bc           |         t8 = fp + 0x1bc;
    0x00402ae8 move a0, t8                   |         a0 = t8;
    0x00402aec lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* esilref: 'PTZ' */
    0x00402af0 addiu a1, t8, -0x6a38         |         a1 = t8 + -0x6a38;
    0x00402af4 lw t8, -0x7ec0(gp)            |         t8 = *(gp);
    0x00402af8 move t9, t8                   |         t9 = t8;
    0x00402afc jalr t9                       |         t9 ();
    0x00402b00 nop                           |         
    0x00402b04 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00402b08 addiu t8, fp, 0x1bc           |         t8 = fp + 0x1bc;
    0x00402b0c move a0, t8                   |         a0 = t8;
    0x00402b10 lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* str.InPrivacy */
    0x00402b14 addiu a1, t8, -0x6a34         |         a1 = t8 + -0x6a34;
    0x00402b18 move a2, zero                 |         a2 = 0;
    0x00402b1c lw t8, -0x7f04(gp)            |         t8 = *(gp);
    0x00402b20 move t9, t8                   |         t9 = t8;
    0x00402b24 jalr t9                       |         t9 ();
    0x00402b28 nop                           |         
    0x00402b2c lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00402b30 lw t8, -0x7fd8(gp)            |         t8 = *(gp);
    0x00402b34 lbu v0, 2(t8)                 |         v0 = *((t8 + 2));
    0x00402b38 addiu t8, zero, 1             |         t8 = 1;
                                             |         if (v0 != t8) {
    0x00402b3c beq v0, t8, 0x402b54          |             
    0x00402b40 nop                           |             
    0x00402b44 lw t8, -0x7fd8(gp)            |             t8 = *(gp);
    0x00402b48 lbu t8, 2(t8)                 |             t8 = *((t8 + 2));
                                             |             if (t8 != 0) {
    0x00402b4c bnez t8, 0x402b7c             |                 goto label_3;
                                             |             }
    0x00402b50 nop                           |             
                                             |         }
    0x00402b54 addiu t8, fp, 0x1bc           |         t8 = fp + 0x1bc;
    0x00402b58 move a0, t8                   |         a0 = t8;
    0x00402b5c lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* str.PrivacyMode */
    0x00402b60 addiu a1, t8, -0x69fc         |         a1 = t8 + -0x69fc;
    0x00402b64 move a2, zero                 |         a2 = 0;
    0x00402b68 lw t8, -0x7f04(gp)            |         t8 = *(gp);
    0x00402b6c move t9, t8                   |         t9 = t8;
    0x00402b70 jalr t9                       |         t9 ();
    0x00402b74 nop                           |         
    0x00402b78 lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
                                             | label_3:
    0x00402b7c addiu t8, zero, 0x28e         |     t8 = 0x28e;
    0x00402b80 sw t8, 0x50(fp)               |     *(arg_50h) = t8;
    0x00402b84 addiu v0, fp, 0x38            |     v0 = fp + 0x38;
    0x00402b88 addiu t8, fp, 0x50            |     t8 = fp + 0x50;
    0x00402b8c addiu v1, fp, 0x7c            |     v1 = fp + 0x7c;
    0x00402b90 sw v1, 0x10(sp)               |     *(var_10h) = v1;
    0x00402b94 addiu v1, zero, 0x8c          |     v1 = 0x8c;
    0x00402b98 sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x00402b9c move a0, v0                   |     a0 = v0;
    0x00402ba0 lw v0, -0x7fdc(gp)            |     v0 = *((gp - 8183));
                                             |     /* str._var_tmp_avcd */
    0x00402ba4 addiu a1, v0, -0x698c         |     a1 = v0 + -0x698c;
    0x00402ba8 move a2, t8                   |     a2 = t8;
    0x00402bac addiu a3, zero, 0x2c          |     a3 = 0x2c;
    0x00402bb0 lw t8, -0x7ed8(gp)            |     t8 = *(gp);
    0x00402bb4 move t9, t8                   |     t9 = t8;
    0x00402bb8 jalr t9                       |     t9 ();
    0x00402bbc nop                           |     
    0x00402bc0 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402bc4 move t8, v0                   |     t8 = v0;
    0x00402bc8 srl t8, t8, 0x1f              |     t8 >>= 0x1f;
    0x00402bcc andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x00402bd0 beqz t8, 0x402bf4             |         
    0x00402bd4 nop                           |         
    0x00402bd8 lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* str.send_IPC_to_avcd_fail_ */
    0x00402bdc addiu a0, t8, -0x697c         |         a0 = t8 + -0x697c;
    0x00402be0 lw t8, -0x7f50(gp)            |         t8 = sym.imp.puts;
    0x00402be4 move t9, t8                   |         t9 = t8;
    0x00402be8 jalr t9                       |         t9 ();
    0x00402bec nop                           |         
    0x00402bf0 lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
    0x00402bf4 lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str.setupAudio__im_0 */
    0x00402bf8 addiu a0, t8, -0x6920         |     a0 = t8 + -0x6920;
    0x00402bfc lw t8, -0x7ea0(gp)            |     t8 = sym.imp.system
    0x00402c00 move t9, t8                   |     t9 = t8;
    0x00402c04 jalr t9                       |     t9 ();
    0x00402c08 nop                           |     
    0x00402c0c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402c10 lw t8, -0x7fc4(gp)            |     t8 = sym.send_reload_event__;
    0x00402c14 move t9, t8                   |     t9 = t8;
    0x00402c18 jalr t9                       |     t9 ();
    0x00402c1c nop                           |     
    0x00402c20 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402c24 addiu t8, zero, 0x3ed         |     t8 = 0x3ed;
    0x00402c28 sw t8, 0x44(fp)               |     *(arg_44h) = t8;
    0x00402c2c addiu t8, zero, 1             |     t8 = 1;
    0x00402c30 sw t8, 0x48(fp)               |     *(arg_48h) = t8;
    0x00402c34 sw zero, 0x4c(fp)             |     *(arg_4ch) = 0;
    0x00402c38 addiu v0, fp, 0x38            |     v0 = fp + 0x38;
    0x00402c3c addiu t8, fp, 0x44            |     t8 = fp + 0x44;
    0x00402c40 addiu v1, fp, 0x7c            |     v1 = fp + 0x7c;
    0x00402c44 sw v1, 0x10(sp)               |     *(var_10h) = v1;
    0x00402c48 addiu v1, zero, 0x8c          |     v1 = 0x8c;
    0x00402c4c sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x00402c50 move a0, v0                   |     a0 = v0;
    0x00402c54 lw v0, -0x7fdc(gp)            |     v0 = *((gp - 8183));
                                             |     /* str._var_tmp_watchdog */
    0x00402c58 addiu a1, v0, -0x6950         |     a1 = v0 + -0x6950;
    0x00402c5c move a2, t8                   |     a2 = t8;
    0x00402c60 addiu a3, zero, 0xc           |     a3 = 0xc;
    0x00402c64 lw t8, -0x7ed8(gp)            |     t8 = *(gp);
    0x00402c68 move t9, t8                   |     t9 = t8;
    0x00402c6c jalr t9                       |     t9 ();
    0x00402c70 nop                           |     
    0x00402c74 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402c78 move t8, v0                   |     t8 = v0;
    0x00402c7c srl t8, t8, 0x1f              |     t8 >>= 0x1f;
    0x00402c80 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x00402c84 beqz t8, 0x402cb0             |         
    0x00402c88 nop                           |         
    0x00402c8c lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* str.send_IPC_to_watchdog_fail_ */
    0x00402c90 addiu a0, t8, -0x693c         |         a0 = t8 + -0x693c;
    0x00402c94 lw t8, -0x7f50(gp)            |         t8 = sym.imp.puts;
    0x00402c98 move t9, t8                   |         t9 = t8;
    0x00402c9c jalr t9                       |         t9 ();
    0x00402ca0 nop                           |         
    0x00402ca4 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00402ca8 b 0x402cb4                    |         goto label_4;
    0x00402cac nop                           |         
                                             |     }
    0x00402cb0 sw zero, 0x30(fp)             |     *(arg_30h) = 0;
                                             | label_4:
    0x00402cb4 addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x00402cb8 move a0, t8                   |     a0 = t8;
    0x00402cbc addiu a1, zero, 0x10          |     a1 = 0x10;
    0x00402cc0 lw t8, -0x7f48(gp)            |     t8 = *(gp);
    0x00402cc4 move t9, t8                   |     t9 = t8;
    0x00402cc8 jalr t9                       |     t9 ();
    0x00402ccc nop                           |     
    0x00402cd0 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402cd4 addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x00402cd8 move a0, t8                   |     a0 = t8;
    0x00402cdc lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str._rm__f__tmp_privacy_lock___ */
    0x00402ce0 addiu a1, t8, -0x690c         |     a1 = t8 + -0x690c;
    0x00402ce4 lw t8, -0x7ed4(gp)            |     t8 = *(gp);
    0x00402ce8 move t9, t8                   |     t9 = t8;
    0x00402cec jalr t9                       |     t9 ();
    0x00402cf0 nop                           |     
    0x00402cf4 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402cf8 addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x00402cfc move a0, t8                   |     a0 = t8;
    0x00402d00 lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str.send_cmd_watchdog_688 */
    0x00402d04 addiu a1, t8, -0x68f0         |     a1 = t8 + -0x68f0;
    0x00402d08 lw t8, -0x7ed4(gp)            |     t8 = *(gp);
    0x00402d0c move t9, t8                   |     t9 = t8;
    0x00402d10 jalr t9                       |     t9 ();
    0x00402d14 nop                           |     
    0x00402d18 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402d1c addiu v0, fp, 0x28            |     v0 = fp + 0x28;
    0x00402d20 addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x00402d24 move a0, v0                   |     a0 = v0;
    0x00402d28 move a1, t8                   |     a1 = t8;
    0x00402d2c lw t8, -0x7ebc(gp)            |     t8 = *(gp);
    0x00402d30 move t9, t8                   |     t9 = t8;
    0x00402d34 jalr t9                       |     t9 ();
    0x00402d38 nop                           |     
    0x00402d3c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402d40 addiu t8, fp, 0x28            |     t8 = fp + 0x28;
    0x00402d44 move a0, t8                   |     a0 = t8;
    0x00402d48 lw t8, -0x7ea4(gp)            |     t8 = *(gp);
    0x00402d4c move t9, t8                   |     t9 = t8;
    0x00402d50 jalr t9                       |     t9 ();
    0x00402d54 nop                           |     
    0x00402d58 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402d5c move t8, v0                   |     t8 = v0;
    0x00402d60 addiu v0, fp, 0x2c            |     v0 = fp + 0x2c;
    0x00402d64 move a0, v0                   |     a0 = v0;
    0x00402d68 move a1, t8                   |     a1 = t8;
    0x00402d6c lw t8, -0x7ef8(gp)            |     t8 = sym.imp.strongEncode_char_const_;
    0x00402d70 move t9, t8                   |     t9 = t8;
    0x00402d74 jalr t9                       |     t9 ();
    0x00402d78 nop                           |     
    0x00402d7c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402d80 addiu t8, fp, 0x2c            |     t8 = fp + 0x2c;
    0x00402d84 move a0, t8                   |     a0 = t8;
    0x00402d88 lw t8, -0x7ea4(gp)            |     t8 = *(gp);
    0x00402d8c move t9, t8                   |     t9 = t8;
    0x00402d90 jalr t9                       |     t9 ();
    0x00402d94 nop                           |     
    0x00402d98 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402d9c move t8, v0                   |     t8 = v0;
    0x00402da0 move a0, t8                   |     a0 = t8;
    0x00402da4 lw t8, -0x7ea0(gp)            |     t8 = sym.imp.system
    0x00402da8 move t9, t8                   |     t9 = t8;
    0x00402dac jalr t9                       |     t9 ();
    0x00402db0 nop                           |     
    0x00402db4 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402db8 addiu t8, fp, 0x2c            |     t8 = fp + 0x2c;
    0x00402dbc move a0, t8                   |     a0 = t8;
    0x00402dc0 lw t8, -0x7edc(gp)            |     t8 = *((gp - 8119));
    0x00402dc4 move t9, t8                   |     t9 = t8;
    0x00402dc8 jalr t9                       |     t9 ();
    0x00402dcc nop                           |     
    0x00402dd0 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402dd4 addiu t8, fp, 0x28            |     t8 = fp + 0x28;
    0x00402dd8 move a0, t8                   |     a0 = t8;
    0x00402ddc lw t8, -0x7edc(gp)            |     t8 = *((gp - 8119));
    0x00402de0 move t9, t8                   |     t9 = t8;
    0x00402de4 jalr t9                       |     t9 ();
    0x00402de8 nop                           |     
    0x00402dec lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402df0 addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x00402df4 move a0, t8                   |     a0 = t8;
    0x00402df8 lw t8, -0x7f1c(gp)            |     t8 = *(gp);
    0x00402dfc move t9, t8                   |     t9 = t8;
    0x00402e00 jalr t9                       |     t9 ();
    0x00402e04 nop                           |     
    0x00402e08 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402e0c addiu s1, zero, 1             |     s1 = 1;
                                             | label_1:
    0x00402e10 addiu t8, fp, 0x1bc           |     t8 = fp + 0x1bc;
    0x00402e14 move a0, t8                   |     a0 = t8;
    0x00402e18 lw t8, -0x7f18(gp)            |     t8 = sym.imp.TinyDB::TinyDB__;
    0x00402e1c move t9, t8                   |     t9 = t8;
    0x00402e20 jalr t9                       |     t9 ();
    0x00402e24 nop                           |     
    0x00402e28 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402e2c addiu t8, zero, 1             |     t8 = 1;
                                             |     if (s1 == t8) {
    0x00402e30 bne s1, t8, 0x402e40          |         
    0x00402e34 nop                           |         
    0x00402e38 nop                           |         
    0x00402e3c lw s0, 0x30(fp)               |         s0 = *(arg_30h);
                                             |     }
                                             | label_0:
    0x00402e40 addiu t8, fp, 0x38            |     t8 = fp + 0x38;
    0x00402e44 move a0, t8                   |     a0 = t8;
    0x00402e48 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00402e4c move t9, t8                   |     t9 = t8;
    0x00402e50 jalr t9                       |     t9 ();
    0x00402e54 nop                           |     
    0x00402e58 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402e5c move t8, s0                   |     t8 = s0;
    0x00402e60 move v0, t8                   |     v0 = t8;
    0x00402e64 lw t8, -0x7e9c(gp)            |     t8 = *((gp - 8103));
    0x00402e68 lw v1, 0x11d4(fp)             |     v1 = *(arg_11d4h);
    0x00402e6c lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (v1 != t8) {
    0x00402e70 beq v1, t8, 0x403074          |         
    0x00402e74 nop                           |         
    0x00402e78 b 0x403064                    |         goto label_5;
    0x00402e7c nop                           |         
                                             | label_5:
    0x00403064 lw t8, -0x7ef4(gp)            |         t8 = sym.imp.__stack_chk_fail;
    0x00403068 move t9, t8                   |         t9 = t8;
    0x0040306c jalr t9                       |         t9 ();
    0x00403070 nop                           |         
                                             |     }
    0x00403074 move sp, fp                   |     
    0x00403078 lw ra, 0x11e4(sp)             |     ra = *(var_11e4h);
    0x0040307c lw fp, 0x11e0(sp)             |     fp = *(var_11e0h);
    0x00403080 lw s1, 0x11dc(sp)             |     s1 = *(var_11dch);
    0x00403084 lw s0, 0x11d8(sp)             |     s0 = *(var_11d8h);
    0x00403088 addiu sp, sp, 0x11e8          |     
    0x0040308c jr ra                         |     return v1;
    0x00403090 nop                           |     
                                             | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/sbin/pt_privacy @ 0x401f94 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.privacy_on_bool_ ()          | void privacy_on_bool_ () {
                                             |     /* privacy_on(bool) */
    0x00401f94 lui gp, 2                     |     
    0x00401f98 addiu gp, gp, 0x108c          |     
    0x00401f9c addu gp, gp, t9               |     gp += t9;
    0x00401fa0 addiu sp, sp, -0x11e8         |     
    0x00401fa4 sw ra, 0x11e4(sp)             |     *(var_11e4h) = ra;
    0x00401fa8 sw fp, 0x11e0(sp)             |     *(var_11e0h) = fp;
    0x00401fac sw s1, 0x11dc(sp)             |     *(var_11dch) = s1;
    0x00401fb0 sw s0, 0x11d8(sp)             |     *(var_11d8h) = s0;
    0x00401fb4 move fp, sp                   |     fp = sp;
    0x00401fb8 sw gp, 0x18(sp)               |     *(var_18h) = gp;
    0x00401fbc move t8, a0                   |     t8 = a0;
    0x00401fc0 sb t8, 0x24(fp)               |     *(arg_24h) = t8;
    0x00401fc4 lw t8, -0x7e9c(gp)            |     t8 = *((gp - 8103));
    0x00401fc8 lw t8, (t8)                   |     t8 = *(t8);
    0x00401fcc sw t8, 0x11d4(fp)             |     *(arg_11d4h) = t8;
    0x00401fd0 addiu t8, zero, -1            |     t8 = -1;
    0x00401fd4 sw t8, 0x30(fp)               |     *(arg_30h) = t8;
    0x00401fd8 addiu t8, fp, 0x38            |     t8 = fp + 0x38;
    0x00401fdc move a0, t8                   |     a0 = t8;
    0x00401fe0 lw t8, -0x7fd4(gp)            |     t8 = *(gp);
    0x00401fe4 move t9, t8                   |     t9 = t8;
    0x00401fe8 jalr t9                       |     t9 ();
    0x00401fec nop                           |     
    0x00401ff0 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00401ff4 lw a0, -0x7fd8(gp)            |     a0 = *(gp);
    0x00401ff8 lw t8, -0x7eec(gp)            |     t8 = sym.imp.cam_get_privacy__privacy_setting_;
    0x00401ffc move t9, t8                   |     t9 = t8;
    0x00402000 jalr t9                       |     t9 ();
    0x00402004 nop                           |     
    0x00402008 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040200c lw t8, -0x7fd8(gp)            |     t8 = *(gp);
    0x00402010 lbu t8, (t8)                  |     t8 = *(t8);
                                             |     if (t8 != 0) {
    0x00402014 beqz t8, 0x40202c             |         
    0x00402018 nop                           |         
    0x0040201c lw t8, -0x7fd8(gp)            |         t8 = *(gp);
    0x00402020 lbu t8, 1(t8)                 |         t8 = *((t8 + 1));
                                             |         if (t8 != 0) {
    0x00402024 bnez t8, 0x402038             |             goto label_0;
                                             |         }
    0x00402028 nop                           |         
                                             |     }
    0x0040202c lw s0, 0x30(fp)               |     s0 = *(arg_30h);
    0x00402030 b 0x402584                    |     goto label_1;
    0x00402034 nop                           |     
                                             | label_0:
    0x00402038 addiu t8, fp, 0x1bc           |     t8 = fp + 0x1bc;
    0x0040203c move a0, t8                   |     a0 = t8;
    0x00402040 lw t8, -0x7fd0(gp)            |     t8 = *(gp);
    0x00402044 move t9, t8                   |     t9 = t8;
    0x00402048 jalr t9                       |     t9 ();
    0x0040204c nop                           |     
    0x00402050 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402054 addiu t8, fp, 0x1bc           |     t8 = fp + 0x1bc;
    0x00402058 move a0, t8                   |     a0 = t8;
    0x0040205c lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* esilref: 'PTZ' */
    0x00402060 addiu a1, t8, -0x6a38         |     a1 = t8 + -0x6a38;
    0x00402064 lw t8, -0x7ec0(gp)            |     t8 = *(gp);
    0x00402068 move t9, t8                   |     t9 = t8;
    0x0040206c jalr t9                       |     t9 ();
    0x00402070 nop                           |     
    0x00402074 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402078 addiu t8, fp, 0x1bc           |     t8 = fp + 0x1bc;
    0x0040207c move a0, t8                   |     a0 = t8;
    0x00402080 lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str.InPrivacy */
    0x00402084 addiu a1, t8, -0x6a34         |     a1 = t8 + -0x6a34;
    0x00402088 lw t8, -0x7ef0(gp)            |     t8 = *(gp);
    0x0040208c move t9, t8                   |     t9 = t8;
    0x00402090 jalr t9                       |     t9 ();
    0x00402094 nop                           |     
    0x00402098 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040209c move t8, v0                   |     t8 = v0;
    0x004020a0 xori t8, t8, 1                |     t8 ^= 1;
    0x004020a4 sltiu t8, t8, 1               |     t8 = (t8 < 1) ? 1 : 0;
    0x004020a8 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x004020ac beqz t8, 0x4020c4             |         
    0x004020b0 nop                           |         
    0x004020b4 lw s0, 0x30(fp)               |         s0 = *(arg_30h);
    0x004020b8 move s1, zero                 |         s1 = 0;
    0x004020bc b 0x402554                    |         goto label_2;
    0x004020c0 nop                           |         
                                             |     }
    0x004020c4 lw a0, -0x7fcc(gp)            |     a0 = *(gp);
    0x004020c8 addiu a1, zero, 4             |     a1 = 4;
    0x004020cc lw t8, -0x7fc8(gp)            |     t8 = *(gp);
    0x004020d0 move t9, t8                   |     t9 = t8;
    0x004020d4 jalr t9                       |     t9 ();
    0x004020d8 nop                           |     
    0x004020dc lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004020e0 move t8, v0                   |     t8 = v0;
                                             |     if (t8 != 0) {
    0x004020e4 beqz t8, 0x4021c4             |         
    0x004020e8 nop                           |         
    0x004020ec lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* str.go_pt_on_ */
    0x004020f0 addiu a0, t8, -0x6a28         |         a0 = t8 + -0x6a28;
    0x004020f4 lw t8, -0x7f50(gp)            |         t8 = sym.imp.puts;
    0x004020f8 move t9, t8                   |         t9 = t8;
    0x004020fc jalr t9                       |         t9 ();
    0x00402100 nop                           |         
    0x00402104 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00402108 lbu t8, 0x24(fp)              |         t8 = *(arg_24h);
                                             |         if (t8 != 0) {
    0x0040210c beqz t8, 0x4021b8             |             
    0x00402110 nop                           |             
    0x00402114 addiu t8, zero, 0x2d          |             t8 = 0x2d;
    0x00402118 sw t8, 0x50(fp)               |             *(arg_50h) = t8;
    0x0040211c addiu v0, fp, 0x38            |             v0 = fp + 0x38;
    0x00402120 addiu t8, fp, 0x50            |             t8 = fp + 0x50;
    0x00402124 addiu v1, fp, 0x7c            |             v1 = fp + 0x7c;
    0x00402128 sw v1, 0x10(sp)               |             *(var_10h) = v1;
    0x0040212c addiu v1, zero, 0x8c          |             v1 = 0x8c;
    0x00402130 sw v1, 0x14(sp)               |             *(var_14h) = v1;
    0x00402134 move a0, v0                   |             a0 = v0;
    0x00402138 lw v0, -0x7fdc(gp)            |             v0 = *((gp - 8183));
                                             |             /* str._var_tmp_ptd */
    0x0040213c addiu a1, v0, -0x6a1c         |             a1 = v0 + -0x6a1c;
    0x00402140 move a2, t8                   |             a2 = t8;
    0x00402144 addiu a3, zero, 0x2c          |             a3 = 0x2c;
    0x00402148 lw t8, -0x7ed8(gp)            |             t8 = *(gp);
    0x0040214c move t9, t8                   |             t9 = t8;
    0x00402150 jalr t9                       |             t9 ();
    0x00402154 nop                           |             
    0x00402158 lw gp, 0x18(fp)               |             gp = *(arg_18h);
    0x0040215c move t8, v0                   |             t8 = v0;
    0x00402160 srl t8, t8, 0x1f              |             t8 >>= 0x1f;
    0x00402164 andi t8, t8, 0xff             |             t8 &= 0xff;
                                             |             if (t8 != 0) {
    0x00402168 beqz t8, 0x402194             |                 
    0x0040216c nop                           |                 
    0x00402170 lw t8, -0x7fdc(gp)            |                 t8 = *((gp - 8183));
                                             |                 /* str.send_IPC_fail_ */
    0x00402174 addiu a0, t8, -0x6a0c         |                 a0 = t8 + -0x6a0c;
    0x00402178 lw t8, -0x7f50(gp)            |                 t8 = sym.imp.puts;
    0x0040217c move t9, t8                   |                 t9 = t8;
    0x00402180 jalr t9                       |                 t9 ();
    0x00402184 nop                           |                 
    0x00402188 lw gp, 0x18(fp)               |                 gp = *(arg_18h);
    0x0040218c b 0x402198                    |                 goto label_3;
    0x00402190 nop                           |                 
                                             |             }
    0x00402194 sw zero, 0x30(fp)             |             *(arg_30h) = 0;
                                             | label_3:
    0x00402198 addiu a0, zero, 1             |             a0 = 1;
    0x0040219c lw t8, -0x7ea8(gp)            |             t8 = sym.imp.sleep;
    0x004021a0 move t9, t8                   |             t9 = t8;
    0x004021a4 jalr t9                       |             t9 ();
    0x004021a8 nop                           |             
    0x004021ac lw gp, 0x18(fp)               |             gp = *(arg_18h);
    0x004021b0 b 0x4021c8                    |             goto label_4;
    0x004021b4 nop                           |             
                                             |         }
    0x004021b8 sw zero, 0x30(fp)             |         *(arg_30h) = 0;
    0x004021bc b 0x4021c8                    |         goto label_4;
    0x004021c0 nop                           |         
                                             |     }
    0x004021c4 sw zero, 0x30(fp)             |     *(arg_30h) = 0;
                                             | label_4:
    0x004021c8 lw t8, 0x30(fp)               |     t8 = *(arg_30h);
                                             |     if (t8 == 0) {
    0x004021cc bnez t8, 0x40226c             |         
    0x004021d0 nop                           |         
    0x004021d4 addiu t8, fp, 0x1bc           |         t8 = fp + 0x1bc;
    0x004021d8 move a0, t8                   |         a0 = t8;
    0x004021dc lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* esilref: 'PTZ' */
    0x004021e0 addiu a1, t8, -0x6a38         |         a1 = t8 + -0x6a38;
    0x004021e4 lw t8, -0x7ec0(gp)            |         t8 = *(gp);
    0x004021e8 move t9, t8                   |         t9 = t8;
    0x004021ec jalr t9                       |         t9 ();
    0x004021f0 nop                           |         
    0x004021f4 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x004021f8 addiu t8, fp, 0x1bc           |         t8 = fp + 0x1bc;
    0x004021fc move a0, t8                   |         a0 = t8;
    0x00402200 lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* str.InPrivacy */
    0x00402204 addiu a1, t8, -0x6a34         |         a1 = t8 + -0x6a34;
    0x00402208 addiu a2, zero, 1             |         a2 = 1;
    0x0040220c lw t8, -0x7f04(gp)            |         t8 = *(gp);
    0x00402210 move t9, t8                   |         t9 = t8;
    0x00402214 jalr t9                       |         t9 ();
    0x00402218 nop                           |         
    0x0040221c lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00402220 lw t8, -0x7fd8(gp)            |         t8 = *(gp);
    0x00402224 lbu v0, 2(t8)                 |         v0 = *((t8 + 2));
    0x00402228 addiu t8, zero, 1             |         t8 = 1;
                                             |         if (v0 != t8) {
    0x0040222c beq v0, t8, 0x402244          |             
    0x00402230 nop                           |             
    0x00402234 lw t8, -0x7fd8(gp)            |             t8 = *(gp);
    0x00402238 lbu t8, 2(t8)                 |             t8 = *((t8 + 2));
                                             |             if (t8 != 0) {
    0x0040223c bnez t8, 0x40226c             |                 goto label_5;
                                             |             }
    0x00402240 nop                           |             
                                             |         }
    0x00402244 addiu t8, fp, 0x1bc           |         t8 = fp + 0x1bc;
    0x00402248 move a0, t8                   |         a0 = t8;
    0x0040224c lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* str.PrivacyMode */
    0x00402250 addiu a1, t8, -0x69fc         |         a1 = t8 + -0x69fc;
    0x00402254 addiu a2, zero, 1             |         a2 = 1;
    0x00402258 lw t8, -0x7f04(gp)            |         t8 = *(gp);
    0x0040225c move t9, t8                   |         t9 = t8;
    0x00402260 jalr t9                       |         t9 ();
    0x00402264 nop                           |         
    0x00402268 lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
                                             | label_5:
    0x0040226c addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x00402270 move a0, t8                   |     a0 = t8;
    0x00402274 addiu a1, zero, 0x10          |     a1 = 0x10;
    0x00402278 lw t8, -0x7f48(gp)            |     t8 = *(gp);
    0x0040227c move t9, t8                   |     t9 = t8;
    0x00402280 jalr t9                       |     t9 ();
    0x00402284 nop                           |     
    0x00402288 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040228c addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x00402290 move a0, t8                   |     a0 = t8;
    0x00402294 lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str._send_cmd_watchdog_687___ */
    0x00402298 addiu a1, t8, -0x69f0         |     a1 = t8 + -0x69f0;
    0x0040229c lw t8, -0x7ed4(gp)            |     t8 = *(gp);
    0x004022a0 move t9, t8                   |     t9 = t8;
    0x004022a4 jalr t9                       |     t9 ();
    0x004022a8 nop                           |     
    0x004022ac lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004022b0 addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x004022b4 move a0, t8                   |     a0 = t8;
    0x004022b8 lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str._touch__tmp_privacy_lock___ */
    0x004022bc addiu a1, t8, -0x69d4         |     a1 = t8 + -0x69d4;
    0x004022c0 lw t8, -0x7ed4(gp)            |     t8 = *(gp);
    0x004022c4 move t9, t8                   |     t9 = t8;
    0x004022c8 jalr t9                       |     t9 ();
    0x004022cc nop                           |     
    0x004022d0 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004022d4 addiu v0, fp, 0x28            |     v0 = fp + 0x28;
    0x004022d8 addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x004022dc move a0, v0                   |     a0 = v0;
    0x004022e0 move a1, t8                   |     a1 = t8;
    0x004022e4 lw t8, -0x7ebc(gp)            |     t8 = *(gp);
    0x004022e8 move t9, t8                   |     t9 = t8;
    0x004022ec jalr t9                       |     t9 ();
    0x004022f0 nop                           |     
    0x004022f4 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004022f8 addiu t8, fp, 0x28            |     t8 = fp + 0x28;
    0x004022fc move a0, t8                   |     a0 = t8;
    0x00402300 lw t8, -0x7ea4(gp)            |     t8 = *(gp);
    0x00402304 move t9, t8                   |     t9 = t8;
    0x00402308 jalr t9                       |     t9 ();
    0x0040230c nop                           |     
    0x00402310 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402314 move t8, v0                   |     t8 = v0;
    0x00402318 addiu v0, fp, 0x2c            |     v0 = fp + 0x2c;
    0x0040231c move a0, v0                   |     a0 = v0;
    0x00402320 move a1, t8                   |     a1 = t8;
    0x00402324 lw t8, -0x7ef8(gp)            |     t8 = sym.imp.strongEncode_char_const_;
    0x00402328 move t9, t8                   |     t9 = t8;
    0x0040232c jalr t9                       |     t9 ();
    0x00402330 nop                           |     
    0x00402334 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402338 addiu t8, fp, 0x2c            |     t8 = fp + 0x2c;
    0x0040233c move a0, t8                   |     a0 = t8;
    0x00402340 lw t8, -0x7ea4(gp)            |     t8 = *(gp);
    0x00402344 move t9, t8                   |     t9 = t8;
    0x00402348 jalr t9                       |     t9 ();
    0x0040234c nop                           |     
    0x00402350 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402354 move t8, v0                   |     t8 = v0;
    0x00402358 move a0, t8                   |     a0 = t8;
    0x0040235c lw t8, -0x7ea0(gp)            |     t8 = sym.imp.system
    0x00402360 move t9, t8                   |     t9 = t8;
    0x00402364 jalr t9                       |     t9 ();
    0x00402368 nop                           |     
    0x0040236c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402370 addiu t8, fp, 0x2c            |     t8 = fp + 0x2c;
    0x00402374 move a0, t8                   |     a0 = t8;
    0x00402378 lw t8, -0x7edc(gp)            |     t8 = *((gp - 8119));
    0x0040237c move t9, t8                   |     t9 = t8;
    0x00402380 jalr t9                       |     t9 ();
    0x00402384 nop                           |     
    0x00402388 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040238c addiu t8, fp, 0x28            |     t8 = fp + 0x28;
    0x00402390 move a0, t8                   |     a0 = t8;
    0x00402394 lw t8, -0x7edc(gp)            |     t8 = *((gp - 8119));
    0x00402398 move t9, t8                   |     t9 = t8;
    0x0040239c jalr t9                       |     t9 ();
    0x004023a0 nop                           |     
    0x004023a4 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004023a8 lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str.killall__9_stream_proxy */
    0x004023ac addiu a0, t8, -0x69b8         |     a0 = t8 + -0x69b8;
    0x004023b0 lw t8, -0x7ea0(gp)            |     t8 = sym.imp.system
    0x004023b4 move t9, t8                   |     t9 = t8;
    0x004023b8 jalr t9                       |     t9 ();
    0x004023bc nop                           |     
    0x004023c0 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004023c4 addiu a0, zero, 1             |     a0 = 1;
    0x004023c8 lw t8, -0x7ea8(gp)            |     t8 = sym.imp.sleep;
    0x004023cc move t9, t8                   |     t9 = t8;
    0x004023d0 jalr t9                       |     t9 ();
    0x004023d4 nop                           |     
    0x004023d8 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004023dc lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str._bin_stream_proxy_ */
    0x004023e0 addiu a0, t8, -0x69a0         |     a0 = t8 + -0x69a0;
    0x004023e4 lw t8, -0x7ea0(gp)            |     t8 = sym.imp.system
    0x004023e8 move t9, t8                   |     t9 = t8;
    0x004023ec jalr t9                       |     t9 ();
    0x004023f0 nop                           |     
    0x004023f4 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004023f8 addiu t8, zero, 0x28d         |     t8 = 0x28d;
    0x004023fc sw t8, 0x50(fp)               |     *(arg_50h) = t8;
    0x00402400 addiu v0, fp, 0x38            |     v0 = fp + 0x38;
    0x00402404 addiu t8, fp, 0x50            |     t8 = fp + 0x50;
    0x00402408 addiu v1, fp, 0x7c            |     v1 = fp + 0x7c;
    0x0040240c sw v1, 0x10(sp)               |     *(var_10h) = v1;
    0x00402410 addiu v1, zero, 0x8c          |     v1 = 0x8c;
    0x00402414 sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x00402418 move a0, v0                   |     a0 = v0;
    0x0040241c lw v0, -0x7fdc(gp)            |     v0 = *((gp - 8183));
                                             |     /* str._var_tmp_avcd */
    0x00402420 addiu a1, v0, -0x698c         |     a1 = v0 + -0x698c;
    0x00402424 move a2, t8                   |     a2 = t8;
    0x00402428 addiu a3, zero, 0x2c          |     a3 = 0x2c;
    0x0040242c lw t8, -0x7ed8(gp)            |     t8 = *(gp);
    0x00402430 move t9, t8                   |     t9 = t8;
    0x00402434 jalr t9                       |     t9 ();
    0x00402438 nop                           |     
    0x0040243c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402440 move t8, v0                   |     t8 = v0;
    0x00402444 srl t8, t8, 0x1f              |     t8 >>= 0x1f;
    0x00402448 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x0040244c beqz t8, 0x402470             |         
    0x00402450 nop                           |         
    0x00402454 lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* str.send_IPC_to_avcd_fail_ */
    0x00402458 addiu a0, t8, -0x697c         |         a0 = t8 + -0x697c;
    0x0040245c lw t8, -0x7f50(gp)            |         t8 = sym.imp.puts;
    0x00402460 move t9, t8                   |         t9 = t8;
    0x00402464 jalr t9                       |         t9 ();
    0x00402468 nop                           |         
    0x0040246c lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
    0x00402470 lw t8, -0x7fdc(gp)            |     t8 = *((gp - 8183));
                                             |     /* str.setupAudio__im_1 */
    0x00402474 addiu a0, t8, -0x6964         |     a0 = t8 + -0x6964;
    0x00402478 lw t8, -0x7ea0(gp)            |     t8 = sym.imp.system
    0x0040247c move t9, t8                   |     t9 = t8;
    0x00402480 jalr t9                       |     t9 ();
    0x00402484 nop                           |     
    0x00402488 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040248c lw t8, -0x7fc4(gp)            |     t8 = sym.send_reload_event__;
    0x00402490 move t9, t8                   |     t9 = t8;
    0x00402494 jalr t9                       |     t9 ();
    0x00402498 nop                           |     
    0x0040249c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004024a0 addiu t8, zero, 0x3ed         |     t8 = 0x3ed;
    0x004024a4 sw t8, 0x44(fp)               |     *(arg_44h) = t8;
    0x004024a8 addiu t8, zero, 1             |     t8 = 1;
    0x004024ac sw t8, 0x48(fp)               |     *(arg_48h) = t8;
    0x004024b0 addiu t8, zero, 1             |     t8 = 1;
    0x004024b4 sw t8, 0x4c(fp)               |     *(arg_4ch) = t8;
    0x004024b8 addiu v0, fp, 0x38            |     v0 = fp + 0x38;
    0x004024bc addiu t8, fp, 0x44            |     t8 = fp + 0x44;
    0x004024c0 addiu v1, fp, 0x7c            |     v1 = fp + 0x7c;
    0x004024c4 sw v1, 0x10(sp)               |     *(var_10h) = v1;
    0x004024c8 addiu v1, zero, 0x8c          |     v1 = 0x8c;
    0x004024cc sw v1, 0x14(sp)               |     *(var_14h) = v1;
    0x004024d0 move a0, v0                   |     a0 = v0;
    0x004024d4 lw v0, -0x7fdc(gp)            |     v0 = *((gp - 8183));
                                             |     /* str._var_tmp_watchdog */
    0x004024d8 addiu a1, v0, -0x6950         |     a1 = v0 + -0x6950;
    0x004024dc move a2, t8                   |     a2 = t8;
    0x004024e0 addiu a3, zero, 0xc           |     a3 = 0xc;
    0x004024e4 lw t8, -0x7ed8(gp)            |     t8 = *(gp);
    0x004024e8 move t9, t8                   |     t9 = t8;
    0x004024ec jalr t9                       |     t9 ();
    0x004024f0 nop                           |     
    0x004024f4 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004024f8 move t8, v0                   |     t8 = v0;
    0x004024fc srl t8, t8, 0x1f              |     t8 >>= 0x1f;
    0x00402500 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x00402504 beqz t8, 0x402530             |         
    0x00402508 nop                           |         
    0x0040250c lw t8, -0x7fdc(gp)            |         t8 = *((gp - 8183));
                                             |         /* str.send_IPC_to_watchdog_fail_ */
    0x00402510 addiu a0, t8, -0x693c         |         a0 = t8 + -0x693c;
    0x00402514 lw t8, -0x7f50(gp)            |         t8 = sym.imp.puts;
    0x00402518 move t9, t8                   |         t9 = t8;
    0x0040251c jalr t9                       |         t9 ();
    0x00402520 nop                           |         
    0x00402524 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00402528 b 0x402534                    |         goto label_6;
    0x0040252c nop                           |         
                                             |     }
    0x00402530 sw zero, 0x30(fp)             |     *(arg_30h) = 0;
                                             | label_6:
    0x00402534 addiu t8, fp, 0x108           |     t8 = fp + 0x108;
    0x00402538 move a0, t8                   |     a0 = t8;
    0x0040253c lw t8, -0x7f1c(gp)            |     t8 = *(gp);
    0x00402540 move t9, t8                   |     t9 = t8;
    0x00402544 jalr t9                       |     t9 ();
    0x00402548 nop                           |     
    0x0040254c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402550 addiu s1, zero, 1             |     s1 = 1;
                                             | label_2:
    0x00402554 addiu t8, fp, 0x1bc           |     t8 = fp + 0x1bc;
    0x00402558 move a0, t8                   |     a0 = t8;
    0x0040255c lw t8, -0x7f18(gp)            |     t8 = sym.imp.TinyDB::TinyDB__;
    0x00402560 move t9, t8                   |     t9 = t8;
    0x00402564 jalr t9                       |     t9 ();
    0x00402568 nop                           |     
    0x0040256c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00402570 addiu t8, zero, 1             |     t8 = 1;
                                             |     if (s1 == t8) {
    0x00402574 bne s1, t8, 0x402584          |         
    0x00402578 nop                           |         
    0x0040257c nop                           |         
    0x00402580 lw s0, 0x30(fp)               |         s0 = *(arg_30h);
                                             |     }
                                             | label_1:
    0x00402584 addiu t8, fp, 0x38            |     t8 = fp + 0x38;
    0x00402588 move a0, t8                   |     a0 = t8;
    0x0040258c lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00402590 move t9, t8                   |     t9 = t8;
    0x00402594 jalr t9                       |     t9 ();
    0x00402598 nop                           |     
    0x0040259c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004025a0 move t8, s0                   |     t8 = s0;
    0x004025a4 move v0, t8                   |     v0 = t8;
    0x004025a8 lw t8, -0x7e9c(gp)            |     t8 = *((gp - 8103));
    0x004025ac lw v1, 0x11d4(fp)             |     v1 = *(arg_11d4h);
    0x004025b0 lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (v1 != t8) {
    0x004025b4 beq v1, t8, 0x4027b8          |         
    0x004025b8 nop                           |         
    0x004025bc b 0x4027a8                    |         goto label_7;
    0x004025c0 nop                           |         
                                             | label_7:
    0x004027a8 lw t8, -0x7ef4(gp)            |         t8 = sym.imp.__stack_chk_fail;
    0x004027ac move t9, t8                   |         t9 = t8;
    0x004027b0 jalr t9                       |         t9 ();
    0x004027b4 nop                           |         
                                             |     }
    0x004027b8 move sp, fp                   |     
    0x004027bc lw ra, 0x11e4(sp)             |     ra = *(var_11e4h);
    0x004027c0 lw fp, 0x11e0(sp)             |     fp = *(var_11e0h);
    0x004027c4 lw s1, 0x11dc(sp)             |     s1 = *(var_11dch);
    0x004027c8 lw s0, 0x11d8(sp)             |     s0 = *(var_11d8h);
    0x004027cc addiu sp, sp, 0x11e8          |     
    0x004027d0 jr ra                         |     return v1;
    0x004027d4 nop                           |     
                                             | }

[*] Function system used 7 times pt_privacy