[*] Binary protection state of avcd

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


[*] Function system tear down of avcd

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/sbin/avcd @ 0x40670c */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) main ()                          | int32_t main () {
    0x0040670c lui gp, 4                     |     
    0x00406710 addiu gp, gp, -0x66ac         |     
    0x00406714 addu gp, gp, t9               |     gp += t9;
    0x00406718 addiu sp, sp, -0x3688         |     
    0x0040671c sw ra, 0x3684(sp)             |     *(arg_3684h) = ra;
    0x00406720 sw fp, 0x3680(sp)             |     *(arg_3680h) = fp;
    0x00406724 sw s7, 0x367c(sp)             |     *(arg_367ch) = s7;
    0x00406728 sw s6, 0x3678(sp)             |     *(arg_3678h) = s6;
    0x0040672c sw s5, 0x3674(sp)             |     *(arg_3674h) = s5;
    0x00406730 sw s4, 0x3670(sp)             |     *(arg_3670h) = s4;
    0x00406734 sw s3, 0x366c(sp)             |     *(arg_366ch) = s3;
    0x00406738 sw s2, 0x3668(sp)             |     *(arg_3668h) = s2;
    0x0040673c sw s1, 0x3664(sp)             |     *(arg_3664h) = s1;
    0x00406740 sw s0, 0x3660(sp)             |     *(arg_3660h) = s0;
    0x00406744 move fp, sp                   |     fp = sp;
    0x00406748 sw gp, 0x18(sp)               |     *(arg_18h) = gp;
    0x0040674c sw a0, 0x44(fp)               |     *(arg_44h) = a0;
    0x00406750 sw a1, 0x40(fp)               |     *(arg_40h) = a1;
    0x00406754 lw t8, -0x7d6c(gp)            |     t8 = *((gp - 8027));
    0x00406758 lw t8, (t8)                   |     t8 = *(t8);
    0x0040675c sw t8, 0x365c(fp)             |     *(arg_365ch) = t8;
    0x00406760 move t8, sp                   |     t8 = sp;
    0x00406764 sw t8, 0x34(fp)               |     *(arg_34h) = t8;
    0x00406768 lw t8, -0x7f44(gp)            |     t8 = sym.initSignal__;
    0x0040676c move t9, t8                   |     t9 = t8;
    0x00406770 jalr t9                       |     t9 ();
    0x00406774 nop                           |     
    0x00406778 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040677c move t8, v0                   |     t8 = v0;
    0x00406780 xori t8, t8, 1                |     t8 ^= 1;
    0x00406784 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x00406788 beqz t8, 0x4067a0             |         
    0x0040678c nop                           |         
    0x00406790 addiu s0, zero, 1             |         s0 = 1;
    0x00406794 move t8, zero                 |         t8 = 0;
    0x00406798 b 0x407c78                    |         goto label_1;
    0x0040679c nop                           |         
                                             |     }
    0x004067a0 sw zero, 0x6c(fp)             |     *(arg_6ch) = 0;
    0x004067a4 sw zero, 0x70(fp)             |     *(arg_70h) = 0;
    0x004067a8 addiu t8, fp, 0x90            |     t8 = fp + 0x90;
    0x004067ac move a0, t8                   |     a0 = t8;
    0x004067b0 lw t8, -0x7f40(gp)            |     t8 = *(gp);
    0x004067b4 move t9, t8                   |     t9 = t8;
    0x004067b8 jalr t9                       |     t9 ();
    0x004067bc nop                           |     
    0x004067c0 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004067c4 sw zero, 0x74(fp)             |     *(arg_74h) = 0;
    0x004067c8 sw zero, 0x78(fp)             |     *(arg_78h) = 0;
    0x004067cc addiu t8, zero, -1            |     t8 = -1;
    0x004067d0 sw t8, 0x58(fp)               |     *(arg_58h) = t8;
    0x004067d4 sw zero, 0x7c(fp)             |     *(arg_7ch) = 0;
    0x004067d8 sb zero, 0x4a(fp)             |     *(arg_4ah) = 0;
    0x004067dc sb zero, 0x4b(fp)             |     *(arg_4bh) = 0;
    0x004067e0 sw zero, 0x5c(fp)             |     *(arg_5ch) = 0;
    0x004067e4 sw zero, 0x60(fp)             |     *(arg_60h) = 0;
    0x004067e8 addiu t8, fp, 0x134           |     t8 = fp + 0x134;
    0x004067ec move a0, t8                   |     a0 = t8;
    0x004067f0 lw t8, -0x7f3c(gp)            |     t8 = *(gp);
    0x004067f4 move t9, t8                   |     t9 = t8;
    0x004067f8 jalr t9                       |     t9 ();
    0x004067fc nop                           |     
    0x00406800 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406804 addiu t8, fp, 0x48            |     t8 = fp + 0x48;
    0x00406808 move a0, t8                   |     a0 = t8;
    0x0040680c lw t8, -0x7cf0(gp)            |     t8 = sym.imp.cam_get_videopool__videopool_setting_;
    0x00406810 move t9, t8                   |     t9 = t8;
    0x00406814 jalr t9                       |     t9 ();
    0x00406818 nop                           |     
    0x0040681c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406820 lbu t8, 0x48(fp)              |     t8 = *(arg_48h);
    0x00406824 sltiu t8, t8, 5               |     t8 = (t8 < 5) ? 1 : 0;
                                             |     if (t8 != 0) {
    0x00406828 beqz t8, 0x40683c             |         
    0x0040682c nop                           |         
    0x00406830 lbu t8, 0x48(fp)              |         t8 = *(arg_48h);
                                             |         if (t8 != 0) {
    0x00406834 bnez t8, 0x406848             |             goto label_2;
                                             |         }
    0x00406838 nop                           |         
                                             |     }
    0x0040683c sw zero, 0x58(fp)             |     *(arg_58h) = 0;
    0x00406840 b 0x406854                    |     goto label_3;
    0x00406844 nop                           |     
                                             | label_2:
    0x00406848 lbu t8, 0x48(fp)              |     t8 = *(arg_48h);
    0x0040684c addiu t8, t8, -1              |     t8 += -1;
    0x00406850 sw t8, 0x58(fp)               |     *(arg_58h) = t8;
                                             | label_3:
    0x00406854 lw t8, -0x7f54(gp)            |     t8 = *(gp);
                                             |     /* aav.0x00404c70 */
    0x00406858 addiu t8, t8, 0x4c70          |     t8 += 0x4c70;
    0x0040685c move t9, t8                   |     t9 = t8;
    0x00406860 jalr t9                       |     t9 ();
    0x00406864 nop                           |     
    0x00406868 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040686c move t8, v0                   |     t8 = v0;
    0x00406870 sw t8, 0x70(fp)               |     *(arg_70h) = t8;
    0x00406874 lw t8, -0x7f58(gp)            |     t8 = *(gp);
    0x00406878 lw v0, 0x70(fp)               |     v0 = *(arg_70h);
    0x0040687c sw v0, (t8)                   |     *(t8) = v0;
    0x00406880 addiu t8, fp, 0x134           |     t8 = fp + 0x134;
    0x00406884 move a0, t8                   |     a0 = t8;
    0x00406888 lw t8, -0x7bf4(gp)            |     t8 = *(gp);
    0x0040688c move t9, t8                   |     t9 = t8;
    0x00406890 jalr t9                       |     t9 ();
    0x00406894 nop                           |     
    0x00406898 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040689c addiu t8, fp, 0x134           |     t8 = fp + 0x134;
    0x004068a0 move a0, t8                   |     a0 = t8;
    0x004068a4 addiu a1, zero, 0x1b          |     a1 = 0x1b;
    0x004068a8 lw t8, -0x7f38(gp)            |     t8 = *(gp);
    0x004068ac move t9, t8                   |     t9 = t8;
    0x004068b0 jalr t9                       |     t9 ();
    0x004068b4 nop                           |     
    0x004068b8 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004068bc move t8, v0                   |     t8 = v0;
                                             |     if (t8 != 0) {
    0x004068c0 beqz t8, 0x4068e4             |         
    0x004068c4 nop                           |         
    0x004068c8 addiu t8, zero, 1             |         t8 = 1;
    0x004068cc sb t8, 0x4a(fp)               |         *(arg_4ah) = t8;
    0x004068d0 lw t8, -0x7f58(gp)            |         t8 = *(gp);
    0x004068d4 lw t8, (t8)                   |         t8 = *(t8);
    0x004068d8 addiu v0, t8, 1               |         v0 = t8 + 1;
    0x004068dc lw t8, -0x7f58(gp)            |         t8 = *(gp);
    0x004068e0 sw v0, (t8)                   |         *(t8) = v0;
                                             |     }
    0x004068e4 addiu t8, fp, 0x134           |     t8 = fp + 0x134;
    0x004068e8 move a0, t8                   |     a0 = t8;
    0x004068ec addiu a1, zero, 0x1c          |     a1 = 0x1c;
    0x004068f0 lw t8, -0x7f38(gp)            |     t8 = *(gp);
    0x004068f4 move t9, t8                   |     t9 = t8;
    0x004068f8 jalr t9                       |     t9 ();
    0x004068fc nop                           |     
    0x00406900 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406904 move t8, v0                   |     t8 = v0;
                                             |     if (t8 != 0) {
    0x00406908 beqz t8, 0x40692c             |         
    0x0040690c nop                           |         
    0x00406910 addiu t8, zero, 1             |         t8 = 1;
    0x00406914 sb t8, 0x4b(fp)               |         *(arg_4bh) = t8;
    0x00406918 lw t8, -0x7f58(gp)            |         t8 = *(gp);
    0x0040691c lw t8, (t8)                   |         t8 = *(t8);
    0x00406920 addiu v0, t8, 1               |         v0 = t8 + 1;
    0x00406924 lw t8, -0x7f58(gp)            |         t8 = *(gp);
    0x00406928 sw v0, (t8)                   |         *(t8) = v0;
                                             |     }
    0x0040692c lw t8, -0x7fc8(gp)            |     t8 = *((gp - 8178));
                                             |     /* str.Support_active_profile:_d_n */
    0x00406930 addiu a0, t8, 0x1f8c          |     a0 = t8 + 0x1f8c;
    0x00406934 lw a1, 0x70(fp)               |     a1 = *(arg_70h);
    0x00406938 lw t8, -0x7af4(gp)            |     t8 = sym.imp.printf;
    0x0040693c move t9, t8                   |     t9 = t8;
    0x00406940 jalr t9                       |     t9 ();
    0x00406944 nop                           |     
    0x00406948 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040694c lw t8, 0x70(fp)               |     t8 = *(arg_70h);
                                             |     if (t8 == 0) {
    0x00406950 bnez t8, 0x406984             |         
    0x00406954 nop                           |         
    0x00406958 lw t8, -0x7fc8(gp)            |         t8 = *((gp - 8178));
                                             |         /* str.no_profile_support_in_avcd__leave___ */
    0x0040695c addiu a0, t8, 0x1fa8          |         a0 = t8 + 0x1fa8;
    0x00406960 lw t8, -0x7b60(gp)            |         t8 = sym.imp.puts;
    0x00406964 move t9, t8                   |         t9 = t8;
    0x00406968 jalr t9                       |         t9 ();
    0x0040696c nop                           |         
    0x00406970 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00406974 addiu s0, zero, -1            |         s0 = -1;
    0x00406978 move s1, zero                 |         s1 = 0;
    0x0040697c b 0x407c00                    |         goto label_4;
    0x00406980 nop                           |         
                                             |     }
    0x00406984 lw t8, -0x7f58(gp)            |     t8 = *(gp);
    0x00406988 lw t8, (t8)                   |     t8 = *(t8);
    0x0040698c sw t8, 0x30(fp)               |     *(arg_30h) = t8;
    0x00406990 lui t8, 0x37                  |     t8 = 0x370001;
    0x00406994 ori t8, t8, 1                 |     
    0x00406998 lw v0, 0x30(fp)               |     v0 = *(arg_30h);
    0x0040699c sltu t8, v0, t8               |     t8 = (v0 < t8) ? 1 : 0;
                                             |     if (t8 != 0) {
    0x004069a0 beqz t8, 0x4069c4             |         
    0x004069a4 nop                           |         
    0x004069a8 addiu t8, zero, 0x250         |         t8 = 0x250;
    0x004069ac lw v1, 0x30(fp)               |         v1 = *(arg_30h);
    0x004069b0 mult v1, t8                   |         __asm ("mult v1, t8");
    0x004069b4 mflo t9                       |         __asm ("mflo t9");
    0x004069b8 addiu t8, t9, 8               |         t8 = t9 + 8;
    0x004069bc b 0x4069c8                    |         goto label_5;
    0x004069c0 nop                           |         
                                             |     }
    0x004069c4 addiu t8, zero, -1            |     t8 = -1;
                                             | label_5:
    0x004069c8 move a0, t8                   |     a0 = t8;
    0x004069cc lw t8, -0x7c10(gp)            |     t8 = sym.imp.operator_new___unsigned_int_;
    0x004069d0 move t9, t8                   |     t9 = t8;
    0x004069d4 jalr t9                       |     t9 ();
    0x004069d8 nop                           |     
    0x004069dc lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004069e0 sw v0, 0x2c(fp)               |     *(arg_2ch) = v0;
    0x004069e4 lw v0, 0x2c(fp)               |     v0 = *(arg_2ch);
    0x004069e8 addiu t8, v0, 4               |     t8 = v0 + 4;
    0x004069ec lw v1, 0x30(fp)               |     v1 = *(arg_30h);
    0x004069f0 sw v1, (t8)                   |     *(t8) = v1;
    0x004069f4 lw t8, 0x2c(fp)               |     t8 = *(arg_2ch);
    0x004069f8 addiu t8, t8, 8               |     t8 += 8;
    0x004069fc sw t8, 0x28(fp)               |     *(arg_28h) = t8;
    0x00406a00 lw t9, 0x30(fp)               |     t9 = *(arg_30h);
    0x00406a04 addiu t8, t9, -1              |     t8 = t9 + -1;
    0x00406a08 sw t8, 0x38(fp)               |     *(arg_38h) = t8;
    0x00406a0c lw v0, 0x28(fp)               |     v0 = *(arg_28h);
    0x00406a10 sw v0, 0x3c(fp)               |     *(arg_3ch) = v0;
    0x00406a14 b 0x406a4c                    |     goto label_6;
    0x00406a18 nop                           |     
                                             |     do {
    0x00406a1c lw a0, 0x3c(fp)               |         a0 = *(arg_3ch);
    0x00406a20 lw t8, -0x7f34(gp)            |         t8 = *(gp);
    0x00406a24 move t9, t8                   |         t9 = t8;
    0x00406a28 jalr t9                       |         t9 ();
    0x00406a2c nop                           |         
    0x00406a30 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00406a34 lw v0, 0x3c(fp)               |         v0 = *(arg_3ch);
    0x00406a38 addiu v0, v0, 0x250           |         v0 += 0x250;
    0x00406a3c sw v0, 0x3c(fp)               |         *(arg_3ch) = v0;
    0x00406a40 lw v1, 0x38(fp)               |         v1 = *(arg_38h);
    0x00406a44 addiu v1, v1, -1              |         v1 += -1;
    0x00406a48 sw v1, 0x38(fp)               |         *(arg_38h) = v1;
                                             | label_6:
    0x00406a4c addiu t8, zero, -1            |         t8 = -1;
    0x00406a50 lw t9, 0x38(fp)               |         t9 = *(arg_38h);
    0x00406a54 bne t9, t8, 0x406a1c          |         
                                             |     } while (t9 != t8);
    0x00406a58 nop                           |     
    0x00406a5c lw v1, 0x2c(fp)               |     v1 = *(arg_2ch);
    0x00406a60 addiu v0, v1, 8               |     v0 = v1 + 8;
    0x00406a64 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406a68 sw v0, (t8)                   |     *(t8) = v0;
    0x00406a6c lw t8, -0x7f58(gp)            |     t8 = *(gp);
    0x00406a70 lw t8, (t8)                   |     t8 = *(t8);
    0x00406a74 addiu t8, t8, -1              |     t8 += -1;
    0x00406a78 sw t8, 0x80(fp)               |     *(arg_80h) = t8;
    0x00406a7c move v0, t8                   |     v0 = t8;
    0x00406a80 addiu v0, v0, 1               |     v0++;
    0x00406a84 move s2, v0                   |     s2 = v0;
    0x00406a88 move s3, zero                 |     s3 = 0;
    0x00406a8c srl v0, s2, 0x1b              |     v0 = s2 >> 0x1b;
    0x00406a90 sll s7, s3, 5                 |     s7 = s3 << 5;
    0x00406a94 or s7, v0, s7                 |     s7 = v0 | s7;
    0x00406a98 sll s6, s2, 5                 |     s6 = s2 << 5;
    0x00406a9c move v0, t8                   |     v0 = t8;
    0x00406aa0 addiu v0, v0, 1               |     v0++;
    0x00406aa4 move s0, v0                   |     s0 = v0;
    0x00406aa8 move s1, zero                 |     s1 = 0;
    0x00406aac srl v0, s0, 0x1b              |     v0 = s0 >> 0x1b;
    0x00406ab0 sll s5, s1, 5                 |     s5 = s1 << 5;
    0x00406ab4 or s5, v0, s5                 |     s5 = v0 | s5;
    0x00406ab8 sll s4, s0, 5                 |     s4 = s0 << 5;
    0x00406abc addiu t8, t8, 1               |     t8++;
    0x00406ac0 sll t8, t8, 2                 |     t8 <<= 2;
    0x00406ac4 addiu t8, t8, 3               |     t8 += 3;
    0x00406ac8 addiu t8, t8, 7               |     t8 += 7;
    0x00406acc srl t8, t8, 3                 |     t8 >>= 3;
    0x00406ad0 sll t8, t8, 3                 |     t8 <<= 3;
    0x00406ad4 subu sp, sp, t8               |     
    0x00406ad8 addiu t8, sp, 0x18            |     t8 = sp + 0x18;
    0x00406adc addiu t8, t8, 3               |     t8 += 3;
    0x00406ae0 srl t8, t8, 2                 |     t8 >>= 2;
    0x00406ae4 sll t8, t8, 2                 |     t8 <<= 2;
    0x00406ae8 sw t8, 0x84(fp)               |     *(arg_84h) = t8;
    0x00406aec sw zero, 0x5c(fp)             |     *(arg_5ch) = 0;
    0x00406af0 b 0x406b98                    |     goto label_7;
    0x00406af4 nop                           |     
                                             |     do {
    0x00406af8 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x00406afc lw t8, (t8)                   |         t8 = *(t8);
    0x00406b00 lw v1, 0x5c(fp)               |         v1 = *(arg_5ch);
    0x00406b04 addiu v0, zero, 0x250         |         v0 = 0x250;
    0x00406b08 mult v1, v0                   |         __asm ("mult v1, v0");
    0x00406b0c mflo t9                       |         __asm ("mflo t9");
    0x00406b10 addu t8, t8, t9               |         t8 += t9;
    0x00406b14 addiu v0, zero, 1             |         v0 = 1;
    0x00406b18 sb v0, 0x18(t8)               |         *((t8 + 24)) = v0;
    0x00406b1c lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x00406b20 lw t8, (t8)                   |         t8 = *(t8);
    0x00406b24 lw v1, 0x5c(fp)               |         v1 = *(arg_5ch);
    0x00406b28 addiu v0, zero, 0x250         |         v0 = 0x250;
    0x00406b2c mult v1, v0                   |         __asm ("mult v1, v0");
    0x00406b30 mflo v0                       |         __asm ("mflo v0");
    0x00406b34 addu t8, t8, v0               |         t8 += v0;
    0x00406b38 lw v0, 0x60(fp)               |         v0 = *(arg_60h);
    0x00406b3c sw v0, 0x24(t8)               |         *((t8 + 36)) = v0;
    0x00406b40 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x00406b44 lw t8, (t8)                   |         t8 = *(t8);
    0x00406b48 lw v1, 0x5c(fp)               |         v1 = *(arg_5ch);
    0x00406b4c addiu v0, zero, 0x250         |         v0 = 0x250;
    0x00406b50 mult v1, v0                   |         __asm ("mult v1, v0");
    0x00406b54 mflo v1                       |         __asm ("mflo v1");
    0x00406b58 addu t8, t8, v1               |         t8 += v1;
    0x00406b5c sb zero, 0x1b(t8)             |         *((t8 + 27)) = 0;
    0x00406b60 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x00406b64 lw t8, (t8)                   |         t8 = *(t8);
    0x00406b68 lw v1, 0x5c(fp)               |         v1 = *(arg_5ch);
    0x00406b6c addiu v0, zero, 0x250         |         v0 = 0x250;
    0x00406b70 mult v1, v0                   |         __asm ("mult v1, v0");
    0x00406b74 mflo t9                       |         __asm ("mflo t9");
    0x00406b78 addu t8, t8, t9               |         t8 += t9;
    0x00406b7c sw zero, 0x1c(t8)             |         *((t8 + 28)) = 0;
    0x00406b80 lw t8, 0x60(fp)               |         t8 = *(arg_60h);
    0x00406b84 addiu t8, t8, 1               |         t8++;
    0x00406b88 sw t8, 0x60(fp)               |         *(arg_60h) = t8;
    0x00406b8c lw t8, 0x5c(fp)               |         t8 = *(arg_5ch);
    0x00406b90 addiu t8, t8, 1               |         t8++;
    0x00406b94 sw t8, 0x5c(fp)               |         *(arg_5ch) = t8;
                                             | label_7:
    0x00406b98 lw v0, 0x5c(fp)               |         v0 = *(arg_5ch);
    0x00406b9c lw t8, 0x70(fp)               |         t8 = *(arg_70h);
    0x00406ba0 slt t8, v0, t8                |         t8 = (v0 < t8) ? 1 : 0;
    0x00406ba4 bnez t8, 0x406af8             |         
                                             |     } while (t8 != 0);
    0x00406ba8 nop                           |     
    0x00406bac lbu t8, 0x4a(fp)              |     t8 = *(arg_4ah);
                                             |     if (t8 == 0) {
    0x00406bb0 bnez t8, 0x406bc4             |         
    0x00406bb4 nop                           |         
    0x00406bb8 lbu t8, 0x4b(fp)              |         t8 = *(arg_4bh);
                                             |         if (t8 == 0) {
    0x00406bbc beqz t8, 0x406cb0             |             goto label_8;
                                             |         }
    0x00406bc0 nop                           |         
                                             |     }
    0x00406bc4 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406bc8 lw t8, (t8)                   |     t8 = *(t8);
    0x00406bcc lw v1, 0x5c(fp)               |     v1 = *(arg_5ch);
    0x00406bd0 addiu v0, zero, 0x250         |     v0 = 0x250;
    0x00406bd4 mult v1, v0                   |     __asm ("mult v1, v0");
    0x00406bd8 mflo v0                       |     __asm ("mflo v0");
    0x00406bdc addu t8, t8, v0               |     t8 += v0;
    0x00406be0 addiu v0, zero, 1             |     v0 = 1;
    0x00406be4 sb v0, 0x18(t8)               |     *((t8 + 24)) = v0;
    0x00406be8 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406bec lw t8, (t8)                   |     t8 = *(t8);
    0x00406bf0 lw v1, 0x5c(fp)               |     v1 = *(arg_5ch);
    0x00406bf4 addiu v0, zero, 0x250         |     v0 = 0x250;
    0x00406bf8 mult v1, v0                   |     __asm ("mult v1, v0");
    0x00406bfc mflo v1                       |     __asm ("mflo v1");
    0x00406c00 addu t8, t8, v1               |     t8 += v1;
    0x00406c04 lw v0, 0x60(fp)               |     v0 = *(arg_60h);
    0x00406c08 sw v0, 0x24(t8)               |     *((t8 + 36)) = v0;
    0x00406c0c lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406c10 lw t8, (t8)                   |     t8 = *(t8);
    0x00406c14 lw v1, 0x5c(fp)               |     v1 = *(arg_5ch);
    0x00406c18 addiu v0, zero, 0x250         |     v0 = 0x250;
    0x00406c1c mult v1, v0                   |     __asm ("mult v1, v0");
    0x00406c20 mflo t9                       |     __asm ("mflo t9");
    0x00406c24 addu t8, t8, t9               |     t8 += t9;
    0x00406c28 sb zero, 0x1b(t8)             |     *((t8 + 27)) = 0;
    0x00406c2c lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406c30 lw t8, (t8)                   |     t8 = *(t8);
    0x00406c34 lw v1, 0x5c(fp)               |     v1 = *(arg_5ch);
    0x00406c38 addiu v0, zero, 0x250         |     v0 = 0x250;
    0x00406c3c mult v1, v0                   |     __asm ("mult v1, v0");
    0x00406c40 mflo v0                       |     __asm ("mflo v0");
    0x00406c44 addu t8, t8, v0               |     t8 += v0;
    0x00406c48 addiu v0, zero, 1             |     v0 = 1;
    0x00406c4c sw v0, 0x1c(t8)               |     *((t8 + 28)) = v0;
    0x00406c50 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406c54 lw t8, (t8)                   |     t8 = *(t8);
    0x00406c58 lw v1, 0x5c(fp)               |     v1 = *(arg_5ch);
    0x00406c5c addiu v0, zero, 0x250         |     v0 = 0x250;
    0x00406c60 mult v1, v0                   |     __asm ("mult v1, v0");
    0x00406c64 mflo v1                       |     __asm ("mflo v1");
    0x00406c68 addu t8, t8, v1               |     t8 += v1;
    0x00406c6c lbu v0, 0x4a(fp)              |     v0 = *(arg_4ah);
    0x00406c70 sb v0, 0x20(t8)               |     *((t8 + 32)) = v0;
    0x00406c74 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406c78 lw t8, (t8)                   |     t8 = *(t8);
    0x00406c7c lw v1, 0x5c(fp)               |     v1 = *(arg_5ch);
    0x00406c80 addiu v0, zero, 0x250         |     v0 = 0x250;
    0x00406c84 mult v1, v0                   |     __asm ("mult v1, v0");
    0x00406c88 mflo t9                       |     __asm ("mflo t9");
    0x00406c8c addu t8, t8, t9               |     t8 += t9;
    0x00406c90 lbu v0, 0x4b(fp)              |     v0 = *(arg_4bh);
    0x00406c94 sb v0, 0x21(t8)               |     *((t8 + 33)) = v0;
    0x00406c98 lw t8, 0x60(fp)               |     t8 = *(arg_60h);
    0x00406c9c addiu t8, t8, 1               |     t8++;
    0x00406ca0 sw t8, 0x60(fp)               |     *(arg_60h) = t8;
    0x00406ca4 lw t8, 0x5c(fp)               |     t8 = *(arg_5ch);
    0x00406ca8 addiu t8, t8, 1               |     t8++;
    0x00406cac sw t8, 0x5c(fp)               |     *(arg_5ch) = t8;
                                             | label_8:
    0x00406cb0 lw t8, 0x60(fp)               |     t8 = *(arg_60h);
    0x00406cb4 slti t8, t8, 5                |     t8 = (t8 < 5) ? 1 : 0;
                                             |     if (t8 == 0) {
    0x00406cb8 bnez t8, 0x406cec             |         
    0x00406cbc nop                           |         
    0x00406cc0 lw t8, -0x7fc8(gp)            |         t8 = *((gp - 8178));
                                             |         /* str._Error__channel_id__d____MAX_MEDIA_POOL__d__n */
    0x00406cc4 addiu a0, t8, 0x1fd0          |         a0 = t8 + 0x1fd0;
    0x00406cc8 lw a1, 0x60(fp)               |         a1 = *(arg_60h);
    0x00406ccc addiu a2, zero, 4             |         a2 = 4;
    0x00406cd0 lw t8, -0x7af4(gp)            |         t8 = sym.imp.printf;
    0x00406cd4 move t9, t8                   |         t9 = t8;
    0x00406cd8 jalr t9                       |         t9 ();
    0x00406cdc nop                           |         
    0x00406ce0 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00406ce4 b 0x4079a8                    |         goto label_9;
    0x00406ce8 nop                           |         
                                             |     }
    0x00406cec lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406cf0 lw t8, (t8)                   |     t8 = *(t8);
    0x00406cf4 lw v1, 0x58(fp)               |     v1 = *(arg_58h);
    0x00406cf8 addiu v0, zero, 0x250         |     v0 = 0x250;
    0x00406cfc mult v1, v0                   |     __asm ("mult v1, v0");
    0x00406d00 mflo v0                       |     __asm ("mflo v0");
    0x00406d04 addu t8, t8, v0               |     t8 += v0;
    0x00406d08 addiu v0, zero, 1             |     v0 = 1;
    0x00406d0c sb v0, 0x1b(t8)               |     *((t8 + 27)) = v0;
    0x00406d10 lw t8, -0x7c7c(gp)            |     t8 = sym.imp.rts_av_init;
    0x00406d14 move t9, t8                   |     t9 = t8;
    0x00406d18 jalr t9                       |     t9 ();
    0x00406d1c nop                           |     
    0x00406d20 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406d24 move t8, v0                   |     t8 = v0;
    0x00406d28 sltu t8, zero, t8             |     t8 = (0 < t8) ? 1 : 0;
    0x00406d2c andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x00406d30 beqz t8, 0x406d64             |         
    0x00406d34 nop                           |         
    0x00406d38 lw t8, -0x7fc8(gp)            |         t8 = *((gp - 8178));
                                             |         /* str.rtk_init_fail__leave___ */
    0x00406d3c addiu a0, t8, 0x2000          |         a0 = t8 + 0x2000;
    0x00406d40 lw t8, -0x7b60(gp)            |         t8 = sym.imp.puts;
    0x00406d44 move t9, t8                   |         t9 = t8;
    0x00406d48 jalr t9                       |         t9 ();
    0x00406d4c nop                           |         
    0x00406d50 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00406d54 addiu s0, zero, -1            |         s0 = -1;
    0x00406d58 move s1, zero                 |         s1 = 0;
    0x00406d5c b 0x407c00                    |         goto label_4;
    0x00406d60 nop                           |         
                                             |     }
    0x00406d64 addiu a0, zero, 0xc           |     a0 = 0xc;
    0x00406d68 lw t8, -0x7ad0(gp)            |     t8 = sym.imp.operator_new_unsigned_int_;
    0x00406d6c move t9, t8                   |     t9 = t8;
    0x00406d70 jalr t9                       |     t9 ();
    0x00406d74 nop                           |     
    0x00406d78 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406d7c move t8, v0                   |     t8 = v0;
    0x00406d80 move s0, t8                   |     s0 = t8;
    0x00406d84 move a0, s0                   |     a0 = s0;
    0x00406d88 lw t8, -0x7c78(gp)            |     t8 = *(gp);
    0x00406d8c move t9, t8                   |     t9 = t8;
    0x00406d90 jalr t9                       |     t9 ();
    0x00406d94 nop                           |     
    0x00406d98 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406d9c lw t8, -0x7f90(gp)            |     t8 = *(gp);
    0x00406da0 sw s0, (t8)                   |     *(t8) = s0;
    0x00406da4 lw t8, -0x7f90(gp)            |     t8 = *(gp);
    0x00406da8 lw t8, (t8)                   |     t8 = *(t8);
    0x00406dac move a0, t8                   |     a0 = t8;
    0x00406db0 addiu a1, zero, 0x490         |     a1 = 0x490;
    0x00406db4 lw t8, -0x7b8c(gp)            |     t8 = *(gp);
    0x00406db8 move t9, t8                   |     t9 = t8;
    0x00406dbc jalr t9                       |     t9 ();
    0x00406dc0 nop                           |     
    0x00406dc4 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406dc8 lw t8, -0x7fb8(gp)            |     t8 = *(gp);
    0x00406dcc addiu v0, zero, 1             |     v0 = 1;
    0x00406dd0 sw v0, (t8)                   |     *(t8) = v0;
    0x00406dd4 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406dd8 lw t8, (t8)                   |     t8 = *(t8);
    0x00406ddc lbu t8, 0x18(t8)              |     t8 = *((t8 + 24));
    0x00406de0 xori t8, t8, 1                |     t8 ^= 1;
    0x00406de4 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x00406de8 beqz t8, 0x406e14             |         
    0x00406dec nop                           |         
    0x00406df0 lw t8, -0x7fc8(gp)            |         t8 = *((gp - 8178));
                                             |         /* str.main_profile_is_disable__leave___ */
    0x00406df4 addiu a0, t8, 0x2018          |         a0 = t8 + 0x2018;
    0x00406df8 lw t8, -0x7b60(gp)            |         t8 = sym.imp.puts;
    0x00406dfc move t9, t8                   |         t9 = t8;
    0x00406e00 jalr t9                       |         t9 ();
    0x00406e04 nop                           |         
    0x00406e08 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00406e0c b 0x4079a8                    |         goto label_9;
    0x00406e10 nop                           |         
                                             |     }
    0x00406e14 lw t8, 0x84(fp)               |     t8 = *(arg_84h);
    0x00406e18 move a0, t8                   |     a0 = t8;
    0x00406e1c move a1, zero                 |     a1 = 0;
    0x00406e20 lw t8, -0x7f54(gp)            |     t8 = *(gp);
                                             |     /* aav.0x00405260 */
    0x00406e24 addiu a2, t8, 0x5260          |     a2 = t8 + 0x5260;
    0x00406e28 move a3, zero                 |     a3 = 0;
    0x00406e2c lw t8, -0x7b30(gp)            |     t8 = sym.imp.pthread_create;
    0x00406e30 move t9, t8                   |     t9 = t8;
    0x00406e34 jalr t9                       |     t9 ();
    0x00406e38 nop                           |     
    0x00406e3c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406e40 sw v0, 0x6c(fp)               |     *(arg_6ch) = v0;
    0x00406e44 lw t8, 0x6c(fp)               |     t8 = *(arg_6ch);
                                             |     if (t8 < 0) {
    0x00406e48 bgez t8, 0x406e74             |         
    0x00406e4c nop                           |         
    0x00406e50 lw t8, -0x7fc8(gp)            |         t8 = *((gp - 8178));
                                             |         /* str.create_encode_thread_failed */
    0x00406e54 addiu a0, t8, 0x1f58          |         a0 = t8 + 0x1f58;
    0x00406e58 lw t8, -0x7c3c(gp)            |         t8 = sym.imp.perror;
    0x00406e5c move t9, t8                   |         t9 = t8;
    0x00406e60 jalr t9                       |         t9 ();
    0x00406e64 nop                           |         
    0x00406e68 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00406e6c b 0x4079a8                    |         goto label_9;
    0x00406e70 nop                           |         
                                             |     }
    0x00406e74 move a0, zero                 |     a0 = 0;
    0x00406e78 lw t8, -0x7f54(gp)            |     t8 = *(gp);
                                             |     /* aav.0x00404eb4 */
    0x00406e7c addiu t8, t8, 0x4eb4          |     t8 += 0x4eb4;
    0x00406e80 move t9, t8                   |     t9 = t8;
    0x00406e84 jalr t9                       |     t9 ();
    0x00406e88 nop                           |     
    0x00406e8c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406e90 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00406e94 lw t8, (t8)                   |     t8 = *(t8);
    0x00406e98 move a0, t8                   |     a0 = t8;
    0x00406e9c lw t8, -0x7f30(gp)            |     t8 = *(gp);
    0x00406ea0 move t9, t8                   |     t9 = t8;
    0x00406ea4 jalr t9                       |     t9 ();
    0x00406ea8 nop                           |     
    0x00406eac lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406eb0 addiu t8, fp, 0x4c            |     t8 = fp + 0x4c;
    0x00406eb4 move a0, t8                   |     a0 = t8;
    0x00406eb8 move a1, zero                 |     a1 = 0;
    0x00406ebc lw t8, -0x7f54(gp)            |     t8 = *(gp);
                                             |     /* aav.0x00404fd8 */
    0x00406ec0 addiu a2, t8, 0x4fd8          |     a2 = t8 + 0x4fd8;
    0x00406ec4 move a3, zero                 |     a3 = 0;
    0x00406ec8 lw t8, -0x7b30(gp)            |     t8 = sym.imp.pthread_create;
    0x00406ecc move t9, t8                   |     t9 = t8;
    0x00406ed0 jalr t9                       |     t9 ();
    0x00406ed4 nop                           |     
    0x00406ed8 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00406edc sw v0, 0x6c(fp)               |     *(arg_6ch) = v0;
    0x00406ee0 lw t8, 0x6c(fp)               |     t8 = *(arg_6ch);
                                             |     if (t8 < 0) {
    0x00406ee4 bgez t8, 0x406f10             |         
    0x00406ee8 nop                           |         
    0x00406eec lw t8, -0x7fc8(gp)            |         t8 = *((gp - 8178));
                                             |         /* str.create_snapshot_thread_failed */
    0x00406ef0 addiu a0, t8, 0x203c          |         a0 = t8 + 0x203c;
    0x00406ef4 lw t8, -0x7c3c(gp)            |         t8 = sym.imp.perror;
    0x00406ef8 move t9, t8                   |         t9 = t8;
    0x00406efc jalr t9                       |         t9 ();
    0x00406f00 nop                           |         
    0x00406f04 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00406f08 b 0x4079a8                    |         goto label_9;
    0x00406f0c nop                           |         
                                             |     }
    0x00406f10 addiu t8, zero, 1             |     t8 = 1;
    0x00406f14 sw t8, 0x64(fp)               |     *(arg_64h) = t8;
    0x00406f18 b 0x406fd4                    |     goto label_10;
    0x00406f1c nop                           |     
                                             |     do {
    0x00406f20 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x00406f24 lw t8, (t8)                   |         t8 = *(t8);
    0x00406f28 lw v1, 0x64(fp)               |         v1 = *(arg_64h);
    0x00406f2c addiu v0, zero, 0x250         |         v0 = 0x250;
    0x00406f30 mult v1, v0                   |         __asm ("mult v1, v0");
    0x00406f34 mflo v0                       |         __asm ("mflo v0");
    0x00406f38 addu t8, t8, v0               |         t8 += v0;
    0x00406f3c lbu t8, 0x18(t8)              |         t8 = *((t8 + 24));
    0x00406f40 xori t8, t8, 1                |         t8 ^= 1;
    0x00406f44 andi t8, t8, 0xff             |         t8 &= 0xff;
                                             |         if (t8 != 0) {
    0x00406f48 beqz t8, 0x406f58             |             
    0x00406f4c nop                           |             
    0x00406f50 b 0x406fc8                    |             goto label_11;
    0x00406f54 nop                           |             
                                             |         }
    0x00406f58 lw t8, 0x64(fp)               |         t8 = *(arg_64h);
    0x00406f5c sll t8, t8, 2                 |         t8 <<= 2;
    0x00406f60 lw v0, 0x84(fp)               |         v0 = *(arg_84h);
    0x00406f64 addu v0, v0, t8               |         v0 += t8;
    0x00406f68 lw t8, 0x64(fp)               |         t8 = *(arg_64h);
    0x00406f6c move a0, v0                   |         a0 = v0;
    0x00406f70 move a1, zero                 |         a1 = 0;
    0x00406f74 lw v0, -0x7f54(gp)            |         v0 = *(gp);
                                             |         /* aav.0x00405260 */
    0x00406f78 addiu a2, v0, 0x5260          |         a2 = v0 + 0x5260;
    0x00406f7c move a3, t8                   |         a3 = t8;
    0x00406f80 lw t8, -0x7b30(gp)            |         t8 = sym.imp.pthread_create;
    0x00406f84 move t9, t8                   |         t9 = t8;
    0x00406f88 jalr t9                       |         t9 ();
    0x00406f8c nop                           |         
    0x00406f90 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00406f94 sw v0, 0x6c(fp)               |         *(arg_6ch) = v0;
    0x00406f98 lw t8, 0x6c(fp)               |         t8 = *(arg_6ch);
                                             |         if (t8 < 0) {
    0x00406f9c bgez t8, 0x406fc8             |             
    0x00406fa0 nop                           |             
    0x00406fa4 lw t8, -0x7fc8(gp)            |             t8 = *((gp - 8178));
                                             |             /* str.create_encode_thread_failed */
    0x00406fa8 addiu a0, t8, 0x1f58          |             a0 = t8 + 0x1f58;
    0x00406fac lw t8, -0x7c3c(gp)            |             t8 = sym.imp.perror;
    0x00406fb0 move t9, t8                   |             t9 = t8;
    0x00406fb4 jalr t9                       |             t9 ();
    0x00406fb8 nop                           |             
    0x00406fbc lw gp, 0x18(fp)               |             gp = *(arg_18h);
    0x00406fc0 b 0x4079a8                    |             goto label_9;
    0x00406fc4 nop                           |             
                                             |         }
                                             | label_11:
    0x00406fc8 lw t8, 0x64(fp)               |         t8 = *(arg_64h);
    0x00406fcc addiu t8, t8, 1               |         t8++;
    0x00406fd0 sw t8, 0x64(fp)               |         *(arg_64h) = t8;
                                             | label_10:
    0x00406fd4 lw t8, -0x7f58(gp)            |         t8 = *(gp);
    0x00406fd8 lw t8, (t8)                   |         t8 = *(t8);
    0x00406fdc lw v0, 0x64(fp)               |         v0 = *(arg_64h);
    0x00406fe0 slt t8, v0, t8                |         t8 = (v0 < t8) ? 1 : 0;
    0x00406fe4 bnez t8, 0x406f20             |         
                                             |     } while (t8 != 0);
    0x00406fe8 nop                           |     
    0x00406fec lw t8, -0x7f90(gp)            |     t8 = *(gp);
    0x00406ff0 lw t8, (t8)                   |     t8 = *(t8);
    0x00406ff4 move a0, t8                   |     a0 = t8;
    0x00406ff8 addiu a1, zero, 4             |     a1 = 4;
    0x00406ffc lw t8, -0x7d74(gp)            |     t8 = *(gp);
    0x00407000 move t9, t8                   |     t9 = t8;
    0x00407004 jalr t9                       |     t9 ();
    0x00407008 nop                           |     
    0x0040700c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407010 lw t8, -0x7f90(gp)            |     t8 = *(gp);
    0x00407014 lw t8, (t8)                   |     t8 = *(t8);
    0x00407018 move a0, t8                   |     a0 = t8;
    0x0040701c addiu a1, zero, 0xa           |     a1 = 0xa;
    0x00407020 lw t8, -0x7b9c(gp)            |     t8 = *(gp);
    0x00407024 move t9, t8                   |     t9 = t8;
    0x00407028 jalr t9                       |     t9 ();
    0x0040702c nop                           |     
    0x00407030 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407034 addiu t8, fp, 0x50            |     t8 = fp + 0x50;
    0x00407038 move a0, t8                   |     a0 = t8;
    0x0040703c move a1, zero                 |     a1 = 0;
    0x00407040 lw t8, -0x7f54(gp)            |     t8 = *(gp);
                                             |     /* aav.0x00405bfc */
    0x00407044 addiu a2, t8, 0x5bfc          |     a2 = t8 + 0x5bfc;
    0x00407048 move a3, zero                 |     a3 = 0;
    0x0040704c lw t8, -0x7b30(gp)            |     t8 = sym.imp.pthread_create;
    0x00407050 move t9, t8                   |     t9 = t8;
    0x00407054 jalr t9                       |     t9 ();
    0x00407058 nop                           |     
    0x0040705c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407060 sw v0, 0x6c(fp)               |     *(arg_6ch) = v0;
    0x00407064 lw t8, 0x6c(fp)               |     t8 = *(arg_6ch);
                                             |     if (t8 < 0) {
    0x00407068 bgez t8, 0x407094             |         
    0x0040706c nop                           |         
    0x00407070 lw t8, -0x7fc8(gp)            |         t8 = *((gp - 8178));
                                             |         /* str.create_snapshot_thread_failed */
    0x00407074 addiu a0, t8, 0x203c          |         a0 = t8 + 0x203c;
    0x00407078 lw t8, -0x7c3c(gp)            |         t8 = sym.imp.perror;
    0x0040707c move t9, t8                   |         t9 = t8;
    0x00407080 jalr t9                       |         t9 ();
    0x00407084 nop                           |         
    0x00407088 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x0040708c b 0x4079a8                    |         goto label_9;
    0x00407090 nop                           |         
                                             |     }
    0x00407094 addiu a0, zero, 0x10          |     a0 = 0x10;
    0x00407098 lw t8, -0x7ad0(gp)            |     t8 = sym.imp.operator_new_unsigned_int_;
    0x0040709c move t9, t8                   |     t9 = t8;
    0x004070a0 jalr t9                       |     t9 ();
    0x004070a4 nop                           |     
    0x004070a8 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004070ac move t8, v0                   |     t8 = v0;
    0x004070b0 move s0, t8                   |     s0 = t8;
    0x004070b4 move a0, s0                   |     a0 = s0;
    0x004070b8 lw t8, -0x7f2c(gp)            |     t8 = *(gp);
    0x004070bc move t9, t8                   |     t9 = t8;
    0x004070c0 jalr t9                       |     t9 ();
    0x004070c4 nop                           |     
    0x004070c8 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004070cc lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x004070d0 sw s0, (t8)                   |     *(t8) = s0;
    0x004070d4 lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x004070d8 lw t8, (t8)                   |     t8 = *(t8);
    0x004070dc move a0, t8                   |     a0 = t8;
    0x004070e0 lw t8, -0x7f24(gp)            |     t8 = *(gp);
    0x004070e4 move t9, t8                   |     t9 = t8;
    0x004070e8 jalr t9                       |     t9 ();
    0x004070ec nop                           |     
    0x004070f0 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004070f4 move t8, v0                   |     t8 = v0;
    0x004070f8 sw t8, 0x7c(fp)               |     *(arg_7ch) = t8;
    0x004070fc lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x00407100 lw v1, (t8)                   |     v1 = *(t8);
    0x00407104 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00407108 lw t8, (t8)                   |     t8 = *(t8);
    0x0040710c lw v0, 8(t8)                  |     v0 = *((t8 + 2));
    0x00407110 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00407114 lw t8, (t8)                   |     t8 = *(t8);
    0x00407118 lw t8, 0xc(t8)                |     t8 = *((t8 + 3));
    0x0040711c move a0, v1                   |     a0 = v1;
    0x00407120 move a1, v0                   |     a1 = v0;
    0x00407124 move a2, t8                   |     a2 = t8;
    0x00407128 lw t8, -0x7f20(gp)            |     t8 = *(gp);
    0x0040712c move t9, t8                   |     t9 = t8;
    0x00407130 jalr t9                       |     t9 ();
    0x00407134 nop                           |     
    0x00407138 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040713c move t8, v0                   |     t8 = v0;
    0x00407140 sltiu t8, t8, 1               |     t8 = (t8 < 1) ? 1 : 0;
    0x00407144 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 == 0) {
    0x00407148 beqz t8, 0x40720c             |         goto label_12;
                                             |     }
    0x0040714c nop                           |     
    0x00407150 lw t8, 0x7c(fp)               |     t8 = *(arg_7ch);
                                             |     if (t8 == 0) {
    0x00407154 beqz t8, 0x4071e0             |         goto label_13;
                                             |     }
    0x00407158 nop                           |     
    0x0040715c lw t8, -0x7fc8(gp)            |     t8 = *((gp - 8178));
                                             |     /* str.setupAudio__im_1 */
    0x00407160 addiu a0, t8, 0x205c          |     a0 = t8 + 0x205c;
    0x00407164 lw t8, -0x7dd4(gp)            |     t8 = sym.imp.system
    0x00407168 move t9, t8                   |     t9 = t8;
    0x0040716c jalr t9                       |     t9 ();
    0x00407170 nop                           |     
    0x00407174 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407178 sw zero, 0x5c(fp)             |     *(arg_5ch) = 0;
    0x0040717c b 0x4071cc                    |     goto label_14;
    0x00407180 nop                           |     
                                             |     do {
    0x00407184 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x00407188 lw t8, (t8)                   |         t8 = *(t8);
    0x0040718c lw v1, 0x5c(fp)               |         v1 = *(arg_5ch);
    0x00407190 addiu v0, zero, 0x250         |         v0 = 0x250;
    0x00407194 mult v1, v0                   |         __asm ("mult v1, v0");
    0x00407198 mflo v0                       |         __asm ("mflo v0");
    0x0040719c addu t8, t8, v0               |         t8 += v0;
    0x004071a0 move a0, t8                   |         a0 = t8;
    0x004071a4 addiu a1, zero, -1            |         a1 = -1;
    0x004071a8 lw a2, 0x7c(fp)               |         a2 = *(arg_7ch);
    0x004071ac lw t8, -0x7f1c(gp)            |         t8 = *(gp);
    0x004071b0 move t9, t8                   |         t9 = t8;
    0x004071b4 jalr t9                       |         t9 ();
    0x004071b8 nop                           |         
    0x004071bc lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x004071c0 lw t8, 0x5c(fp)               |         t8 = *(arg_5ch);
    0x004071c4 addiu t8, t8, 1               |         t8++;
    0x004071c8 sw t8, 0x5c(fp)               |         *(arg_5ch) = t8;
                                             | label_14:
    0x004071cc lw v0, 0x5c(fp)               |         v0 = *(arg_5ch);
    0x004071d0 lw t8, 0x70(fp)               |         t8 = *(arg_70h);
    0x004071d4 slt t8, v0, t8                |         t8 = (v0 < t8) ? 1 : 0;
    0x004071d8 bnez t8, 0x407184             |         
                                             |     } while (t8 != 0);
    0x004071dc nop                           |     
                                             | label_13:
    0x004071e0 lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x004071e4 lw t8, (t8)                   |     t8 = *(t8);
    0x004071e8 move a0, t8                   |     a0 = t8;
    0x004071ec lw a1, 0x7c(fp)               |     a1 = *(arg_7ch);
    0x004071f0 lw t8, -0x7f18(gp)            |     t8 = *(gp);
    0x004071f4 move t9, t8                   |     t9 = t8;
    0x004071f8 jalr t9                       |     t9 ();
    0x004071fc nop                           |     
    0x00407200 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407204 b 0x407254                    |     goto label_15;
    0x00407208 nop                           |     
                                             | label_12:
    0x0040720c lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x00407210 lw s0, (t8)                   |     s0 = *(t8);
                                             |     if (s0 != 0) {
    0x00407214 beqz s0, 0x40724c             |         
    0x00407218 nop                           |         
    0x0040721c move a0, s0                   |         a0 = s0;
    0x00407220 lw t8, -0x7f14(gp)            |         t8 = *(gp);
    0x00407224 move t9, t8                   |         t9 = t8;
    0x00407228 jalr t9                       |         t9 ();
    0x0040722c nop                           |         
    0x00407230 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00407234 move a0, s0                   |         a0 = s0;
    0x00407238 lw t8, -0x7c5c(gp)            |         t8 = sym.imp.operator_delete_void_;
    0x0040723c move t9, t8                   |         t9 = t8;
    0x00407240 jalr t9                       |         t9 ();
    0x00407244 nop                           |         
    0x00407248 lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
    0x0040724c lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x00407250 sw zero, (t8)                 |     *(t8) = 0;
                                             | label_15:
    0x00407254 lw t8, -0x7f10(gp)            |     t8 = *(gp);
    0x00407258 move t9, t8                   |     t9 = t8;
    0x0040725c jalr t9                       |     t9 ();
    0x00407260 nop                           |     
    0x00407264 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407268 lw t8, -0x7fc8(gp)            |     t8 = *((gp - 8178));
                                             |     /* str._etc_rc.d_init.d_motion_detection_bgm.sh_start____dev_null_2_1 */
    0x0040726c addiu a0, t8, 0x2070          |     a0 = t8 + 0x2070;
    0x00407270 lw t8, -0x7dd4(gp)            |     t8 = sym.imp.system
    0x00407274 move t9, t8                   |     t9 = t8;
    0x00407278 jalr t9                       |     t9 ();
    0x0040727c nop                           |     
    0x00407280 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407284 addiu t8, fp, 0x90            |     t8 = fp + 0x90;
    0x00407288 move a0, t8                   |     a0 = t8;
    0x0040728c lw t8, -0x7fc8(gp)            |     t8 = *((gp - 8178));
                                             |     /* str._var_tmp_avcd */
    0x00407290 addiu a1, t8, 0x20b0          |     a1 = t8 + 0x20b0;
    0x00407294 lw t8, -0x7f0c(gp)            |     t8 = *(gp);
    0x00407298 move t9, t8                   |     t9 = t8;
    0x0040729c jalr t9                       |     t9 ();
    0x004072a0 nop                           |     
    0x004072a4 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004072a8 move t8, v0                   |     t8 = v0;
    0x004072ac xori t8, t8, 1                |     t8 ^= 1;
    0x004072b0 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x004072b4 beqz t8, 0x4072f4             |         
    0x004072b8 nop                           |         
    0x004072bc lw t8, -0x7cf4(gp)            |         t8 = *((gp - 7997));
    0x004072c0 lw t8, (t8)                   |         t8 = *(t8);
    0x004072c4 lw v0, -0x7fc8(gp)            |         v0 = *((gp - 8178));
                                             |         /* str.ipc_daemon.init_failed_n */
    0x004072c8 addiu a0, v0, 0x20c0          |         a0 = v0 + 0x20c0;
    0x004072cc addiu a1, zero, 1             |         a1 = 1;
    0x004072d0 addiu a2, zero, 0x17          |         a2 = 0x17;
    0x004072d4 move a3, t8                   |         a3 = t8;
    0x004072d8 lw t8, -0x7c68(gp)            |         t8 = sym.imp.fwrite;
    0x004072dc move t9, t8                   |         t9 = t8;
    0x004072e0 jalr t9                       |         t9 ();
    0x004072e4 nop                           |         
    0x004072e8 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x004072ec b 0x4079a8                    |         goto label_9;
    0x004072f0 nop                           |         
                                             |     }
                                             | label_0:
    0x004072f4 addiu v1, fp, 0x90            |     v1 = fp + 0x90;
    0x004072f8 addiu v0, fp, 0x9c            |     v0 = fp + 0x9c;
    0x004072fc addiu t8, fp, 0x54            |     t8 = fp + 0x54;
    0x00407300 sw zero, 0x10(sp)             |     *(arg_10h) = 0;
    0x00407304 lui a0, 0x1e                  |     a0 = 0x1e8480;
    0x00407308 ori a0, a0, 0x8480            |     
    0x0040730c sw a0, 0x14(sp)               |     *(arg_14h) = a0;
    0x00407310 move a0, v1                   |     a0 = v1;
    0x00407314 move a1, v0                   |     a1 = v0;
    0x00407318 addiu a2, zero, 0xc           |     a2 = 0xc;
    0x0040731c move a3, t8                   |     a3 = t8;
    0x00407320 lw t8, -0x7d2c(gp)            |     t8 = *(gp);
    0x00407324 move t9, t8                   |     t9 = t8;
    0x00407328 jalr t9                       |     t9 ();
    0x0040732c nop                           |     
    0x00407330 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407334 move t8, v0                   |     t8 = v0;
    0x00407338 sw t8, 0x88(fp)               |     *(arg_88h) = t8;
    0x0040733c lw t8, 0x88(fp)               |     t8 = *(arg_88h);
                                             |     if (t8 <= 0) {
    0x00407340 blez t8, 0x407668             |         goto label_16;
                                             |     }
    0x00407344 nop                           |     
    0x00407348 sw zero, 0xa8(fp)             |     *(arg_a8h) = 0;
    0x0040734c sw zero, 0xac(fp)             |     *(arg_ach) = 0;
    0x00407350 sw zero, 0xb0(fp)             |     *(arg_b0h) = 0;
    0x00407354 sw zero, 0xb4(fp)             |     *(arg_b4h) = 0;
    0x00407358 addiu v0, fp, 0xb8            |     v0 = fp + 0xb8;
    0x0040735c addiu t8, zero, 0x7c          |     t8 = 0x7c;
    0x00407360 move a0, v0                   |     a0 = v0;
    0x00407364 move a1, zero                 |     a1 = 0;
    0x00407368 move a2, t8                   |     a2 = t8;
    0x0040736c lw t8, -0x7c28(gp)            |     t8 = sym.imp.memset;
    0x00407370 move t9, t8                   |     t9 = t8;
    0x00407374 jalr t9                       |     t9 ();
    0x00407378 nop                           |     
    0x0040737c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407380 lw t8, 0x9c(fp)               |     t8 = *(arg_9ch);
    0x00407384 lw v0, -0x7fc8(gp)            |     v0 = *((gp - 8178));
                                             |     /* str.vcd_get_id:_d__n */
    0x00407388 addiu a0, v0, 0x20d8          |     a0 = v0 + 0x20d8;
    0x0040738c move a1, t8                   |     a1 = t8;
    0x00407390 lw t8, -0x7af4(gp)            |     t8 = sym.imp.printf;
    0x00407394 move t9, t8                   |     t9 = t8;
    0x00407398 jalr t9                       |     t9 ();
    0x0040739c nop                           |     
    0x004073a0 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004073a4 lw t8, 0x9c(fp)               |     t8 = *(arg_9ch);
    0x004073a8 addiu v0, zero, 0x3bb         |     v0 = 0x3bb;
                                             |     if (t8 != v0) {
    0x004073ac beq t8, v0, 0x407400          |         
    0x004073b0 nop                           |         
    0x004073b4 sltiu v0, t8, 0x3bc           |         v0 = (t8 < 0x3bc) ? 1 : 0;
                                             |         if (v0 != 0) {
    0x004073b8 beqz v0, 0x4073e0             |             
    0x004073bc nop                           |             
    0x004073c0 addiu v0, zero, 0x28d         |             v0 = 0x28d;
                                             |             if (t8 == v0) {
    0x004073c4 beq t8, v0, 0x4074cc          |                 goto label_17;
                                             |             }
    0x004073c8 nop                           |             
    0x004073cc addiu v0, zero, 0x28e         |             v0 = 0x28e;
                                             |             if (t8 == v0) {
    0x004073d0 beq t8, v0, 0x407578          |                 goto label_18;
                                             |             }
    0x004073d4 nop                           |             
    0x004073d8 b 0x407638                    |             goto label_19;
    0x004073dc nop                           |             
                                             |         }
    0x004073e0 addiu v0, zero, 0x3be         |         v0 = 0x3be;
                                             |         if (t8 == v0) {
    0x004073e4 beq t8, v0, 0x407620          |             goto label_20;
                                             |         }
    0x004073e8 nop                           |         
    0x004073ec addiu v0, zero, 0x3c0         |         v0 = 0x3c0;
                                             |         if (t8 == v0) {
    0x004073f0 beq t8, v0, 0x40741c          |             goto label_21;
                                             |         }
    0x004073f4 nop                           |         
    0x004073f8 b 0x407638                    |         goto label_19;
    0x004073fc nop                           |         
                                             |     }
    0x00407400 lw t8, -0x7f08(gp)            |     t8 = sym.reset_videoclip__;
    0x00407404 move t9, t8                   |     t9 = t8;
    0x00407408 jalr t9                       |     t9 ();
    0x0040740c nop                           |     
    0x00407410 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407414 b 0x407638                    |     goto label_19;
    0x00407418 nop                           |     
                                             | label_21:
    0x0040741c lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00407420 lw v0, (t8)                   |     v0 = *(t8);
    0x00407424 lw t8, 0xa0(fp)               |     t8 = *(arg_a0h);
    0x00407428 move a0, v0                   |     a0 = v0;
    0x0040742c move a1, t8                   |     a1 = t8;
    0x00407430 lw t8, -0x7f04(gp)            |     t8 = *(gp);
    0x00407434 move t9, t8                   |     t9 = t8;
    0x00407438 jalr t9                       |     t9 ();
    0x0040743c nop                           |     
    0x00407440 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407444 lw v0, 0xa0(fp)               |     v0 = *(arg_a0h);
    0x00407448 addiu t8, zero, 2             |     t8 = 2;
                                             |     if (v0 != t8) {
    0x0040744c bne v0, t8, 0x4074c4          |         goto label_22;
                                             |     }
    0x00407450 nop                           |     
    0x00407454 lw t8, 0xa4(fp)               |     t8 = *(arg_a4h);
    0x00407458 sw t8, 0x8c(fp)               |     *(arg_8ch) = t8;
    0x0040745c sw zero, 0x5c(fp)             |     *(arg_5ch) = 0;
    0x00407460 b 0x4074b0                    |     goto label_23;
    0x00407464 nop                           |     
                                             |     do {
    0x00407468 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x0040746c lw t8, (t8)                   |         t8 = *(t8);
    0x00407470 lw v1, 0x5c(fp)               |         v1 = *(arg_5ch);
    0x00407474 addiu v0, zero, 0x250         |         v0 = 0x250;
    0x00407478 mult v1, v0                   |         __asm ("mult v1, v0");
    0x0040747c mflo v0                       |         __asm ("mflo v0");
    0x00407480 addu t8, t8, v0               |         t8 += v0;
    0x00407484 move a0, t8                   |         a0 = t8;
    0x00407488 lw a1, 0x8c(fp)               |         a1 = *(arg_8ch);
    0x0040748c addiu a2, zero, -1            |         a2 = -1;
    0x00407490 lw t8, -0x7f1c(gp)            |         t8 = *(gp);
    0x00407494 move t9, t8                   |         t9 = t8;
    0x00407498 jalr t9                       |         t9 ();
    0x0040749c nop                           |         
    0x004074a0 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x004074a4 lw t8, 0x5c(fp)               |         t8 = *(arg_5ch);
    0x004074a8 addiu t8, t8, 1               |         t8++;
    0x004074ac sw t8, 0x5c(fp)               |         *(arg_5ch) = t8;
                                             | label_23:
    0x004074b0 lw v0, 0x5c(fp)               |         v0 = *(arg_5ch);
    0x004074b4 lw t8, 0x70(fp)               |         t8 = *(arg_70h);
    0x004074b8 slt t8, v0, t8                |         t8 = (v0 < t8) ? 1 : 0;
    0x004074bc bnez t8, 0x407468             |         
                                             |     } while (t8 != 0);
    0x004074c0 nop                           |     
                                             | label_22:
    0x004074c4 b 0x407638                    |     goto label_19;
    0x004074c8 nop                           |     
                                             | label_17:
    0x004074cc lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x004074d0 lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (t8 == 0) {
    0x004074d4 beqz t8, 0x407570             |         goto label_24;
                                             |     }
    0x004074d8 nop                           |     
    0x004074dc addiu t8, zero, 1             |     t8 = 1;
    0x004074e0 sw t8, 0x7c(fp)               |     *(arg_7ch) = t8;
    0x004074e4 lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x004074e8 lw t8, (t8)                   |     t8 = *(t8);
    0x004074ec move a0, t8                   |     a0 = t8;
    0x004074f0 lw a1, 0x7c(fp)               |     a1 = *(arg_7ch);
    0x004074f4 lw t8, -0x7f18(gp)            |     t8 = *(gp);
    0x004074f8 move t9, t8                   |     t9 = t8;
    0x004074fc jalr t9                       |     t9 ();
    0x00407500 nop                           |     
    0x00407504 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407508 sw zero, 0x5c(fp)             |     *(arg_5ch) = 0;
    0x0040750c b 0x40755c                    |     goto label_25;
    0x00407510 nop                           |     
                                             |     do {
    0x00407514 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x00407518 lw t8, (t8)                   |         t8 = *(t8);
    0x0040751c lw v1, 0x5c(fp)               |         v1 = *(arg_5ch);
    0x00407520 addiu v0, zero, 0x250         |         v0 = 0x250;
    0x00407524 mult v1, v0                   |         __asm ("mult v1, v0");
    0x00407528 mflo v0                       |         __asm ("mflo v0");
    0x0040752c addu t8, t8, v0               |         t8 += v0;
    0x00407530 move a0, t8                   |         a0 = t8;
    0x00407534 addiu a1, zero, -1            |         a1 = -1;
    0x00407538 lw a2, 0x7c(fp)               |         a2 = *(arg_7ch);
    0x0040753c lw t8, -0x7f1c(gp)            |         t8 = *(gp);
    0x00407540 move t9, t8                   |         t9 = t8;
    0x00407544 jalr t9                       |         t9 ();
    0x00407548 nop                           |         
    0x0040754c lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00407550 lw t8, 0x5c(fp)               |         t8 = *(arg_5ch);
    0x00407554 addiu t8, t8, 1               |         t8++;
    0x00407558 sw t8, 0x5c(fp)               |         *(arg_5ch) = t8;
                                             | label_25:
    0x0040755c lw v0, 0x5c(fp)               |         v0 = *(arg_5ch);
    0x00407560 lw t8, 0x70(fp)               |         t8 = *(arg_70h);
    0x00407564 slt t8, v0, t8                |         t8 = (v0 < t8) ? 1 : 0;
    0x00407568 bnez t8, 0x407514             |         
                                             |     } while (t8 != 0);
    0x0040756c nop                           |     
                                             | label_24:
    0x00407570 b 0x407638                    |     goto label_19;
    0x00407574 nop                           |     
                                             | label_18:
    0x00407578 lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x0040757c lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (t8 == 0) {
    0x00407580 beqz t8, 0x407618             |         goto label_26;
                                             |     }
    0x00407584 nop                           |     
    0x00407588 sw zero, 0x7c(fp)             |     *(arg_7ch) = 0;
    0x0040758c lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x00407590 lw t8, (t8)                   |     t8 = *(t8);
    0x00407594 move a0, t8                   |     a0 = t8;
    0x00407598 lw a1, 0x7c(fp)               |     a1 = *(arg_7ch);
    0x0040759c lw t8, -0x7f18(gp)            |     t8 = *(gp);
    0x004075a0 move t9, t8                   |     t9 = t8;
    0x004075a4 jalr t9                       |     t9 ();
    0x004075a8 nop                           |     
    0x004075ac lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x004075b0 sw zero, 0x5c(fp)             |     *(arg_5ch) = 0;
    0x004075b4 b 0x407604                    |     goto label_27;
    0x004075b8 nop                           |     
                                             |     do {
    0x004075bc lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x004075c0 lw t8, (t8)                   |         t8 = *(t8);
    0x004075c4 lw v1, 0x5c(fp)               |         v1 = *(arg_5ch);
    0x004075c8 addiu v0, zero, 0x250         |         v0 = 0x250;
    0x004075cc mult v1, v0                   |         __asm ("mult v1, v0");
    0x004075d0 mflo v0                       |         __asm ("mflo v0");
    0x004075d4 addu t8, t8, v0               |         t8 += v0;
    0x004075d8 move a0, t8                   |         a0 = t8;
    0x004075dc addiu a1, zero, -1            |         a1 = -1;
    0x004075e0 lw a2, 0x7c(fp)               |         a2 = *(arg_7ch);
    0x004075e4 lw t8, -0x7f1c(gp)            |         t8 = *(gp);
    0x004075e8 move t9, t8                   |         t9 = t8;
    0x004075ec jalr t9                       |         t9 ();
    0x004075f0 nop                           |         
    0x004075f4 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x004075f8 lw t8, 0x5c(fp)               |         t8 = *(arg_5ch);
    0x004075fc addiu t8, t8, 1               |         t8++;
    0x00407600 sw t8, 0x5c(fp)               |         *(arg_5ch) = t8;
                                             | label_27:
    0x00407604 lw v0, 0x5c(fp)               |         v0 = *(arg_5ch);
    0x00407608 lw t8, 0x70(fp)               |         t8 = *(arg_70h);
    0x0040760c slt t8, v0, t8                |         t8 = (v0 < t8) ? 1 : 0;
    0x00407610 bnez t8, 0x4075bc             |         
                                             |     } while (t8 != 0);
    0x00407614 nop                           |     
                                             | label_26:
    0x00407618 b 0x407638                    |     goto label_19;
    0x0040761c nop                           |     
                                             | label_20:
    0x00407620 lw t8, -0x7f10(gp)            |     t8 = *(gp);
    0x00407624 move t9, t8                   |     t9 = t8;
    0x00407628 jalr t9                       |     t9 ();
    0x0040762c nop                           |     
    0x00407630 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407634 nop                           |     
                                             | label_19:
    0x00407638 lw v0, 0x54(fp)               |     v0 = *(arg_54h);
    0x0040763c addiu v1, fp, 0x90            |     v1 = fp + 0x90;
    0x00407640 addiu t8, fp, 0xa8            |     t8 = fp + 0xa8;
    0x00407644 move a0, v1                   |     a0 = v1;
    0x00407648 move a1, v0                   |     a1 = v0;
    0x0040764c move a2, t8                   |     a2 = t8;
    0x00407650 addiu a3, zero, 0x8c          |     a3 = 0x8c;
    0x00407654 lw t8, -0x7d14(gp)            |     t8 = *(gp);
    0x00407658 move t9, t8                   |     t9 = t8;
    0x0040765c jalr t9                       |     t9 ();
    0x00407660 nop                           |     
    0x00407664 lw gp, 0x18(fp)               |     gp = *(arg_18h);
                                             | label_16:
    0x00407668 lw t8, -0x7fd4(gp)            |     t8 = *(gp);
    0x0040766c lbu t8, (t8)                  |     t8 = *(t8);
    0x00407670 xori t8, t8, 1                |     t8 ^= 1;
    0x00407674 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 != 0) {
    0x00407678 beqz t8, 0x407704             |         
    0x0040767c nop                           |         
    0x00407680 move a0, zero                 |         a0 = 0;
    0x00407684 lw t8, -0x7f54(gp)            |         t8 = *(gp);
                                             |         /* aav.0x00404eb4 */
    0x00407688 addiu t8, t8, 0x4eb4          |         t8 += 0x4eb4;
    0x0040768c move t9, t8                   |         t9 = t8;
    0x00407690 jalr t9                       |         t9 ();
    0x00407694 nop                           |         
    0x00407698 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x0040769c lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x004076a0 lw t8, (t8)                   |         t8 = *(t8);
    0x004076a4 move a0, t8                   |         a0 = t8;
    0x004076a8 lw t8, -0x7f00(gp)            |         t8 = *(gp);
    0x004076ac move t9, t8                   |         t9 = t8;
    0x004076b0 jalr t9                       |         t9 ();
    0x004076b4 nop                           |         
    0x004076b8 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x004076bc lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x004076c0 lw t8, (t8)                   |         t8 = *(t8);
    0x004076c4 move a0, t8                   |         a0 = t8;
    0x004076c8 lw t8, -0x7f30(gp)            |         t8 = *(gp);
    0x004076cc move t9, t8                   |         t9 = t8;
    0x004076d0 jalr t9                       |         t9 ();
    0x004076d4 nop                           |         
    0x004076d8 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x004076dc lw t8, -0x7fc8(gp)            |         t8 = *((gp - 8178));
                                             |         /* str._etc_rc.d_init.d_motion_detection_bgm.sh_reload___dev_null_2_1 */
    0x004076e0 addiu a0, t8, 0x20e8          |         a0 = t8 + 0x20e8;
    0x004076e4 lw t8, -0x7dd4(gp)            |         t8 = sym.imp.system
    0x004076e8 move t9, t8                   |         t9 = t8;
    0x004076ec jalr t9                       |         t9 ();
    0x004076f0 nop                           |         
    0x004076f4 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x004076f8 lw t8, -0x7fd4(gp)            |         t8 = *(gp);
    0x004076fc addiu v0, zero, 1             |         v0 = 1;
    0x00407700 sb v0, (t8)                   |         *(t8) = v0;
                                             |     }
    0x00407704 lw t8, -0x7fdc(gp)            |     t8 = *(gp);
    0x00407708 lbu t8, (t8)                  |     t8 = *(t8);
    0x0040770c xori t8, t8, 1                |     t8 ^= 1;
    0x00407710 andi t8, t8, 0xff             |     t8 &= 0xff;
                                             |     if (t8 == 0) {
    0x00407714 beqz t8, 0x407988             |         goto label_28;
                                             |     }
    0x00407718 nop                           |     
    0x0040771c sw zero, 0x68(fp)             |     *(arg_68h) = 0;
    0x00407720 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00407724 lw t8, (t8)                   |     t8 = *(t8);
    0x00407728 move a0, t8                   |     a0 = t8;
    0x0040772c lw t8, -0x7f00(gp)            |     t8 = *(gp);
    0x00407730 move t9, t8                   |     t9 = t8;
    0x00407734 jalr t9                       |     t9 ();
    0x00407738 nop                           |     
    0x0040773c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407740 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00407744 lw t8, (t8)                   |     t8 = *(t8);
    0x00407748 move a0, t8                   |     a0 = t8;
    0x0040774c lw t8, -0x7efc(gp)            |     t8 = *(gp);
    0x00407750 move t9, t8                   |     t9 = t8;
    0x00407754 jalr t9                       |     t9 ();
    0x00407758 nop                           |     
    0x0040775c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407760 lw t8, -0x7fc8(gp)            |     t8 = *((gp - 8178));
                                             |     /* str._etc_rc.d_init.d_motion_detection_bgm.sh_stop____dev_null_2_1 */
    0x00407764 addiu a0, t8, 0x2128          |     a0 = t8 + 0x2128;
    0x00407768 lw t8, -0x7dd4(gp)            |     t8 = sym.imp.system
    0x0040776c move t9, t8                   |     t9 = t8;
    0x00407770 jalr t9                       |     t9 ();
    0x00407774 nop                           |     
    0x00407778 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040777c lw t8, -0x7fb0(gp)            |     t8 = *(gp);
    0x00407780 lw t8, (t8)                   |     t8 = *(t8);
    0x00407784 move a0, t8                   |     a0 = t8;
    0x00407788 lw t8, -0x7ef8(gp)            |     t8 = *(gp);
    0x0040778c move t9, t8                   |     t9 = t8;
    0x00407790 jalr t9                       |     t9 ();
    0x00407794 nop                           |     
    0x00407798 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x0040779c lw t8, -0x7f58(gp)            |     t8 = *(gp);
    0x004077a0 lw t8, (t8)                   |     t8 = *(t8);
    0x004077a4 addiu t8, t8, -1              |     t8 += -1;
    0x004077a8 sw t8, 0x68(fp)               |     *(arg_68h) = t8;
    0x004077ac b 0x40781c                    |     goto label_29;
    0x004077b0 nop                           |     
                                             |     do {
    0x004077b4 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x004077b8 lw t8, (t8)                   |         t8 = *(t8);
    0x004077bc lw v1, 0x68(fp)               |         v1 = *(arg_68h);
    0x004077c0 addiu v0, zero, 0x250         |         v0 = 0x250;
    0x004077c4 mult v1, v0                   |         __asm ("mult v1, v0");
    0x004077c8 mflo v0                       |         __asm ("mflo v0");
    0x004077cc addu t8, t8, v0               |         t8 += v0;
    0x004077d0 lbu t8, 0x18(t8)              |         t8 = *((t8 + 24));
                                             |         if (t8 != 0) {
    0x004077d4 beqz t8, 0x407810             |             
    0x004077d8 nop                           |             
    0x004077dc lw t8, -0x7fc0(gp)            |             t8 = *(gp);
    0x004077e0 lw t8, (t8)                   |             t8 = *(t8);
    0x004077e4 lw v1, 0x68(fp)               |             v1 = *(arg_68h);
    0x004077e8 addiu v0, zero, 0x250         |             v0 = 0x250;
    0x004077ec mult v1, v0                   |             __asm ("mult v1, v0");
    0x004077f0 mflo v1                       |             __asm ("mflo v1");
    0x004077f4 addu t8, t8, v1               |             t8 += v1;
    0x004077f8 move a0, t8                   |             a0 = t8;
    0x004077fc lw t8, -0x7f4c(gp)            |             t8 = *(gp);
    0x00407800 move t9, t8                   |             t9 = t8;
    0x00407804 jalr t9                       |             t9 ();
    0x00407808 nop                           |             
    0x0040780c lw gp, 0x18(fp)               |             gp = *(arg_18h);
                                             |         }
    0x00407810 lw t8, 0x68(fp)               |         t8 = *(arg_68h);
    0x00407814 addiu t8, t8, -1              |         t8 += -1;
    0x00407818 sw t8, 0x68(fp)               |         *(arg_68h) = t8;
                                             | label_29:
    0x0040781c lw t8, 0x68(fp)               |         t8 = *(arg_68h);
    0x00407820 bgez t8, 0x4077b4             |         
                                             |     } while (t8 >= 0);
    0x00407824 nop                           |     
    0x00407828 lw t8, 0x4c(fp)               |     t8 = *(arg_4ch);
    0x0040782c move a0, t8                   |     a0 = t8;
    0x00407830 move a1, zero                 |     a1 = 0;
    0x00407834 lw t8, -0x7d98(gp)            |     t8 = sym.imp.pthread_join;
    0x00407838 move t9, t8                   |     t9 = t8;
    0x0040783c jalr t9                       |     t9 ();
    0x00407840 nop                           |     
    0x00407844 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407848 lw t8, -0x7f58(gp)            |     t8 = *(gp);
    0x0040784c lw t8, (t8)                   |     t8 = *(t8);
    0x00407850 addiu t8, t8, -1              |     t8 += -1;
    0x00407854 sw t8, 0x68(fp)               |     *(arg_68h) = t8;
    0x00407858 b 0x4078c4                    |     goto label_30;
    0x0040785c nop                           |     
                                             |     do {
    0x00407860 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x00407864 lw t8, (t8)                   |         t8 = *(t8);
    0x00407868 lw v1, 0x68(fp)               |         v1 = *(arg_68h);
    0x0040786c addiu v0, zero, 0x250         |         v0 = 0x250;
    0x00407870 mult v1, v0                   |         __asm ("mult v1, v0");
    0x00407874 mflo v0                       |         __asm ("mflo v0");
    0x00407878 addu t8, t8, v0               |         t8 += v0;
    0x0040787c lbu t8, 0x18(t8)              |         t8 = *((t8 + 24));
                                             |         if (t8 != 0) {
    0x00407880 beqz t8, 0x4078b8             |             
    0x00407884 nop                           |             
    0x00407888 lw v0, 0x84(fp)               |             v0 = *(arg_84h);
    0x0040788c lw t8, 0x68(fp)               |             t8 = *(arg_68h);
    0x00407890 sll t8, t8, 2                 |             t8 <<= 2;
    0x00407894 addu t8, v0, t8               |             t8 = v0 + t8;
    0x00407898 lw t8, (t8)                   |             t8 = *(t8);
    0x0040789c move a0, t8                   |             a0 = t8;
    0x004078a0 move a1, zero                 |             a1 = 0;
    0x004078a4 lw t8, -0x7d98(gp)            |             t8 = sym.imp.pthread_join;
    0x004078a8 move t9, t8                   |             t9 = t8;
    0x004078ac jalr t9                       |             t9 ();
    0x004078b0 nop                           |             
    0x004078b4 lw gp, 0x18(fp)               |             gp = *(arg_18h);
                                             |         }
    0x004078b8 lw t8, 0x68(fp)               |         t8 = *(arg_68h);
    0x004078bc addiu t8, t8, -1              |         t8 += -1;
    0x004078c0 sw t8, 0x68(fp)               |         *(arg_68h) = t8;
                                             | label_30:
    0x004078c4 lw t8, 0x68(fp)               |         t8 = *(arg_68h);
    0x004078c8 bgez t8, 0x407860             |         
                                             |     } while (t8 >= 0);
    0x004078cc nop                           |     
    0x004078d0 lw t8, -0x7f74(gp)            |     t8 = *(gp);
    0x004078d4 lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (t8 != 0) {
    0x004078d8 beqz t8, 0x407900             |         
    0x004078dc nop                           |         
    0x004078e0 lw t8, -0x7f74(gp)            |         t8 = *(gp);
    0x004078e4 lw t8, (t8)                   |         t8 = *(t8);
    0x004078e8 move a0, t8                   |         a0 = t8;
    0x004078ec lw t8, -0x7f4c(gp)            |         t8 = *(gp);
    0x004078f0 move t9, t8                   |         t9 = t8;
    0x004078f4 jalr t9                       |         t9 ();
    0x004078f8 nop                           |         
    0x004078fc lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
    0x00407900 sw zero, 0x68(fp)             |     *(arg_68h) = 0;
    0x00407904 b 0x40794c                    |     goto label_31;
    0x00407908 nop                           |     
                                             |     do {
    0x0040790c lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x00407910 lw t8, (t8)                   |         t8 = *(t8);
    0x00407914 lw v1, 0x68(fp)               |         v1 = *(arg_68h);
    0x00407918 addiu v0, zero, 0x250         |         v0 = 0x250;
    0x0040791c mult v1, v0                   |         __asm ("mult v1, v0");
    0x00407920 mflo v0                       |         __asm ("mflo v0");
    0x00407924 addu t8, t8, v0               |         t8 += v0;
    0x00407928 move a0, t8                   |         a0 = t8;
    0x0040792c lw t8, -0x7ef4(gp)            |         t8 = *(gp);
    0x00407930 move t9, t8                   |         t9 = t8;
    0x00407934 jalr t9                       |         t9 ();
    0x00407938 nop                           |         
    0x0040793c lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00407940 lw t8, 0x68(fp)               |         t8 = *(arg_68h);
    0x00407944 addiu t8, t8, 1               |         t8++;
    0x00407948 sw t8, 0x68(fp)               |         *(arg_68h) = t8;
                                             | label_31:
    0x0040794c lw v0, 0x68(fp)               |         v0 = *(arg_68h);
    0x00407950 lw t8, 0x70(fp)               |         t8 = *(arg_70h);
    0x00407954 slt t8, v0, t8                |         t8 = (v0 < t8) ? 1 : 0;
    0x00407958 bnez t8, 0x40790c             |         
                                             |     } while (t8 != 0);
    0x0040795c nop                           |     
    0x00407960 lw t8, 0x50(fp)               |     t8 = *(arg_50h);
    0x00407964 move a0, t8                   |     a0 = t8;
    0x00407968 move a1, zero                 |     a1 = 0;
    0x0040796c lw t8, -0x7d98(gp)            |     t8 = sym.imp.pthread_join;
    0x00407970 move t9, t8                   |     t9 = t8;
    0x00407974 jalr t9                       |     t9 ();
    0x00407978 nop                           |     
    0x0040797c lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407980 b 0x4079a8                    |     goto label_9;
    0x00407984 nop                           |     
                                             | label_28:
    0x00407988 lw t8, -0x7fbc(gp)            |     t8 = *(gp);
    0x0040798c lbu t8, (t8)                  |     t8 = *(t8);
                                             |     if (t8 != 0) {
    0x00407990 beqz t8, 0x4079a0             |         
    0x00407994 nop                           |         
    0x00407998 b 0x4079a8                    |         goto label_9;
    0x0040799c nop                           |         
                                             |     }
    0x004079a0 b 0x4072f4                    |     goto label_0;
    0x004079a4 nop                           |     
                                             | label_9:
    0x004079a8 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x004079ac lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (t8 == 0) {
    0x004079b0 beqz t8, 0x407a48             |         goto label_32;
                                             |     }
    0x004079b4 nop                           |     
    0x004079b8 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x004079bc lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (t8 == 0) {
    0x004079c0 beqz t8, 0x407a48             |         goto label_32;
                                             |     }
    0x004079c4 nop                           |     
    0x004079c8 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x004079cc lw t8, (t8)                   |     t8 = *(t8);
    0x004079d0 lw v0, -0x7fc0(gp)            |     v0 = *(gp);
    0x004079d4 lw v0, (v0)                   |     v0 = *(v0);
    0x004079d8 addiu v0, v0, -4              |     v0 += -4;
    0x004079dc lw v1, (v0)                   |     v1 = *(v0);
    0x004079e0 addiu v0, zero, 0x250         |     v0 = 0x250;
    0x004079e4 mult v1, v0                   |     __asm ("mult v1, v0");
    0x004079e8 mflo v0                       |     __asm ("mflo v0");
    0x004079ec addu s0, t8, v0               |     s0 = t8 + v0;
                                             |     do {
    0x004079f0 lw t8, -0x7fc0(gp)            |         t8 = *(gp);
    0x004079f4 lw t8, (t8)                   |         t8 = *(t8);
                                             |         if (s0 == t8) {
    0x004079f8 beq s0, t8, 0x407a24          |             goto label_33;
                                             |         }
    0x004079fc nop                           |         
    0x00407a00 addiu s0, s0, -0x250          |         s0 += -0x250;
    0x00407a04 move a0, s0                   |         a0 = s0;
    0x00407a08 lw t8, -0x7ef0(gp)            |         t8 = *(gp);
    0x00407a0c move t9, t8                   |         t9 = t8;
    0x00407a10 jalr t9                       |         t9 ();
    0x00407a14 nop                           |         
    0x00407a18 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00407a1c b 0x4079f0                    |         
                                             |     } while (1);
    0x00407a20 nop                           |     
                                             | label_33:
    0x00407a24 lw t8, -0x7fc0(gp)            |     t8 = *(gp);
    0x00407a28 lw t8, (t8)                   |     t8 = *(t8);
    0x00407a2c addiu t8, t8, -8              |     t8 += -8;
    0x00407a30 move a0, t8                   |     a0 = t8;
    0x00407a34 lw t8, -0x7cd4(gp)            |     t8 = sym.imp.operator_delete___void_;
    0x00407a38 move t9, t8                   |     t9 = t8;
    0x00407a3c jalr t9                       |     t9 ();
    0x00407a40 nop                           |     
    0x00407a44 lw gp, 0x18(fp)               |     gp = *(arg_18h);
                                             | label_32:
    0x00407a48 lw t8, -0x7fb0(gp)            |     t8 = *(gp);
    0x00407a4c lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (t8 != 0) {
    0x00407a50 beqz t8, 0x407a98             |         
    0x00407a54 nop                           |         
    0x00407a58 lw t8, -0x7fb0(gp)            |         t8 = *(gp);
    0x00407a5c lw s0, (t8)                   |         s0 = *(t8);
                                             |         if (s0 == 0) {
    0x00407a60 beqz s0, 0x407a98             |             goto label_34;
                                             |         }
    0x00407a64 nop                           |         
    0x00407a68 move a0, s0                   |         a0 = s0;
    0x00407a6c lw t8, -0x7eec(gp)            |         t8 = *(gp);
    0x00407a70 move t9, t8                   |         t9 = t8;
    0x00407a74 jalr t9                       |         t9 ();
    0x00407a78 nop                           |         
    0x00407a7c lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00407a80 move a0, s0                   |         a0 = s0;
    0x00407a84 lw t8, -0x7c5c(gp)            |         t8 = sym.imp.operator_delete_void_;
    0x00407a88 move t9, t8                   |         t9 = t8;
    0x00407a8c jalr t9                       |         t9 ();
    0x00407a90 nop                           |         
    0x00407a94 lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
                                             | label_34:
    0x00407a98 lw t8, -0x7f74(gp)            |     t8 = *(gp);
    0x00407a9c lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (t8 != 0) {
    0x00407aa0 beqz t8, 0x407ae8             |         
    0x00407aa4 nop                           |         
    0x00407aa8 lw t8, -0x7f74(gp)            |         t8 = *(gp);
    0x00407aac lw s0, (t8)                   |         s0 = *(t8);
                                             |         if (s0 == 0) {
    0x00407ab0 beqz s0, 0x407ae8             |             goto label_35;
                                             |         }
    0x00407ab4 nop                           |         
    0x00407ab8 move a0, s0                   |         a0 = s0;
    0x00407abc lw t8, -0x7ef0(gp)            |         t8 = *(gp);
    0x00407ac0 move t9, t8                   |         t9 = t8;
    0x00407ac4 jalr t9                       |         t9 ();
    0x00407ac8 nop                           |         
    0x00407acc lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00407ad0 move a0, s0                   |         a0 = s0;
    0x00407ad4 lw t8, -0x7c5c(gp)            |         t8 = sym.imp.operator_delete_void_;
    0x00407ad8 move t9, t8                   |         t9 = t8;
    0x00407adc jalr t9                       |         t9 ();
    0x00407ae0 nop                           |         
    0x00407ae4 lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
                                             | label_35:
    0x00407ae8 lw t8, -0x7f28(gp)            |     t8 = *(gp);
    0x00407aec lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (t8 != 0) {
    0x00407af0 beqz t8, 0x407b58             |         
    0x00407af4 nop                           |         
    0x00407af8 lw t8, -0x7f28(gp)            |         t8 = *(gp);
    0x00407afc lw t8, (t8)                   |         t8 = *(t8);
    0x00407b00 move a0, t8                   |         a0 = t8;
    0x00407b04 lw t8, -0x7ee8(gp)            |         t8 = *(gp);
    0x00407b08 move t9, t8                   |         t9 = t8;
    0x00407b0c jalr t9                       |         t9 ();
    0x00407b10 nop                           |         
    0x00407b14 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00407b18 lw t8, -0x7f28(gp)            |         t8 = *(gp);
    0x00407b1c lw s0, (t8)                   |         s0 = *(t8);
                                             |         if (s0 == 0) {
    0x00407b20 beqz s0, 0x407b58             |             goto label_36;
                                             |         }
    0x00407b24 nop                           |         
    0x00407b28 move a0, s0                   |         a0 = s0;
    0x00407b2c lw t8, -0x7f14(gp)            |         t8 = *(gp);
    0x00407b30 move t9, t8                   |         t9 = t8;
    0x00407b34 jalr t9                       |         t9 ();
    0x00407b38 nop                           |         
    0x00407b3c lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00407b40 move a0, s0                   |         a0 = s0;
    0x00407b44 lw t8, -0x7c5c(gp)            |         t8 = sym.imp.operator_delete_void_;
    0x00407b48 move t9, t8                   |         t9 = t8;
    0x00407b4c jalr t9                       |         t9 ();
    0x00407b50 nop                           |         
    0x00407b54 lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
                                             | label_36:
    0x00407b58 lw t8, -0x7f90(gp)            |     t8 = *(gp);
    0x00407b5c lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (t8 != 0) {
    0x00407b60 beqz t8, 0x407bc8             |         
    0x00407b64 nop                           |         
    0x00407b68 lw t8, -0x7f90(gp)            |         t8 = *(gp);
    0x00407b6c lw t8, (t8)                   |         t8 = *(t8);
    0x00407b70 move a0, t8                   |         a0 = t8;
    0x00407b74 lw t8, -0x7d4c(gp)            |         t8 = *(gp);
    0x00407b78 move t9, t8                   |         t9 = t8;
    0x00407b7c jalr t9                       |         t9 ();
    0x00407b80 nop                           |         
    0x00407b84 lw gp, 0x18(fp)               |         gp = *(arg_18h);
    0x00407b88 lw t8, -0x7f90(gp)            |         t8 = *(gp);
    0x00407b8c lw t8, (t8)                   |         t8 = *(t8);
                                             |         if (t8 == 0) {
    0x00407b90 beqz t8, 0x407bc8             |             goto label_37;
                                             |         }
    0x00407b94 nop                           |         
    0x00407b98 lw t8, -0x7f90(gp)            |         t8 = *(gp);
    0x00407b9c lw t8, (t8)                   |         t8 = *(t8);
    0x00407ba0 lw t8, (t8)                   |         t8 = *(t8);
    0x00407ba4 addiu t8, t8, 4               |         t8 += 4;
    0x00407ba8 lw t8, (t8)                   |         t8 = *(t8);
    0x00407bac lw v0, -0x7f90(gp)            |         v0 = *(gp);
    0x00407bb0 lw v0, (v0)                   |         v0 = *(v0);
    0x00407bb4 move a0, v0                   |         a0 = v0;
    0x00407bb8 move t9, t8                   |         t9 = t8;
    0x00407bbc jalr t9                       |         t9 ();
    0x00407bc0 nop                           |         
    0x00407bc4 lw gp, 0x18(fp)               |         gp = *(arg_18h);
                                             |     }
                                             | label_37:
    0x00407bc8 lw t8, -0x7cbc(gp)            |     t8 = sym.imp.rts_av_release;
    0x00407bcc move t9, t8                   |     t9 = t8;
    0x00407bd0 jalr t9                       |     t9 ();
    0x00407bd4 nop                           |     
    0x00407bd8 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407bdc lw t8, -0x7fc8(gp)            |     t8 = *((gp - 8178));
                                             |     /* str.avcd_bye___ */
    0x00407be0 addiu a0, t8, 0x2168          |     a0 = t8 + 0x2168;
    0x00407be4 lw t8, -0x7b60(gp)            |     t8 = sym.imp.puts;
    0x00407be8 move t9, t8                   |     t9 = t8;
    0x00407bec jalr t9                       |     t9 ();
    0x00407bf0 nop                           |     
    0x00407bf4 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407bf8 addiu s1, zero, 1             |     s1 = 1;
    0x00407bfc lw s0, 0x24(fp)               |     s0 = *(arg_24h);
                                             | label_4:
    0x00407c00 addiu t8, fp, 0x134           |     t8 = fp + 0x134;
    0x00407c04 move a0, t8                   |     a0 = t8;
    0x00407c08 lw t8, -0x7cc0(gp)            |     t8 = sym.imp.PIB::PIB__;
    0x00407c0c move t9, t8                   |     t9 = t8;
    0x00407c10 jalr t9                       |     t9 ();
    0x00407c14 nop                           |     
    0x00407c18 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407c1c addiu t8, zero, 1             |     t8 = 1;
                                             |     if (s1 != t8) {
    0x00407c20 beq s1, t8, 0x407c34          |         
    0x00407c24 nop                           |         
    0x00407c28 move s1, zero                 |         s1 = 0;
    0x00407c2c b 0x407c3c                    |         goto label_38;
    0x00407c30 nop                           |         
                                             |     }
    0x00407c34 nop                           |     
    0x00407c38 addiu s1, zero, 1             |     s1 = 1;
                                             | label_38:
    0x00407c3c addiu t8, fp, 0x90            |     t8 = fp + 0x90;
    0x00407c40 move a0, t8                   |     a0 = t8;
    0x00407c44 lw t8, -0x7ee4(gp)            |     t8 = *(gp);
    0x00407c48 move t9, t8                   |     t9 = t8;
    0x00407c4c jalr t9                       |     t9 ();
    0x00407c50 nop                           |     
    0x00407c54 lw gp, 0x18(fp)               |     gp = *(arg_18h);
    0x00407c58 addiu t8, zero, 1             |     t8 = 1;
                                             |     if (s1 != t8) {
    0x00407c5c beq s1, t8, 0x407c70          |         
    0x00407c60 nop                           |         
    0x00407c64 move t8, zero                 |         t8 = 0;
    0x00407c68 b 0x407c78                    |         goto label_1;
    0x00407c6c nop                           |         
                                             |     }
    0x00407c70 nop                           |     
    0x00407c74 addiu t8, zero, 1             |     t8 = 1;
                                             | label_1:
    0x00407c78 lw sp, 0x34(fp)               |     
    0x00407c7c addiu v0, zero, 1             |     v0 = 1;
                                             |     if (t8 == v0) {
    0x00407c80 bne t8, v0, 0x407c8c          |         
    0x00407c84 nop                           |         
    0x00407c88 move s0, zero                 |         s0 = 0;
                                             |     }
    0x00407c8c move t8, s0                   |     t8 = s0;
    0x00407c90 move v0, t8                   |     v0 = t8;
    0x00407c94 lw t8, -0x7d6c(gp)            |     t8 = *((gp - 8027));
    0x00407c98 lw v1, 0x365c(fp)             |     v1 = *(arg_365ch);
    0x00407c9c lw t8, (t8)                   |     t8 = *(t8);
                                             |     if (v1 != t8) {
    0x00407ca0 beq v1, t8, 0x407e0c          |         
    0x00407ca4 nop                           |         
    0x00407ca8 b 0x407dfc                    |         goto label_39;
    0x00407cac nop                           |         
                                             | label_39:
    0x00407dfc lw t8, -0x7bf0(gp)            |         t8 = sym.imp.__stack_chk_fail;
    0x00407e00 move t9, t8                   |         t9 = t8;
    0x00407e04 jalr t9                       |         t9 ();
    0x00407e08 nop                           |         
                                             |     }
    0x00407e0c move sp, fp                   |     
    0x00407e10 lw ra, 0x3684(sp)             |     ra = *(arg_3684h);
    0x00407e14 lw fp, 0x3680(sp)             |     fp = *(arg_3680h);
    0x00407e18 lw s7, 0x367c(sp)             |     s7 = *(arg_367ch);
    0x00407e1c lw s6, 0x3678(sp)             |     s6 = *(arg_3678h);
    0x00407e20 lw s5, 0x3674(sp)             |     s5 = *(arg_3674h);
    0x00407e24 lw s4, 0x3670(sp)             |     s4 = *(arg_3670h);
    0x00407e28 lw s3, 0x366c(sp)             |     s3 = *(arg_366ch);
    0x00407e2c lw s2, 0x3668(sp)             |     s2 = *(arg_3668h);
    0x00407e30 lw s1, 0x3664(sp)             |     s1 = *(arg_3664h);
    0x00407e34 lw s0, 0x3660(sp)             |     s0 = *(arg_3660h);
    0x00407e38 addiu sp, sp, 0x3688          |     
    0x00407e3c jr ra                         |     return v1;
    0x00407e40 nop                           |     
                                             | }
    ; assembly                                           | /* r2dec pseudo code output */
                                                         | /* /logs/firmware/patool_extraction/DUMP/mtdblock8_unblob_extracted/mtdblock8_extract/0-9650176.squashfs_v4_le_extract/sbin/avcd @ 0x411124 */
                                                         | #include <stdint.h>
                                                         |  
    ; (fcn) method.VCD_RUNNER.suspend_md_int_ ()         | void method_VCD_RUNNER_suspend_md_int_ () {
                                                         |     /* VCD_RUNNER::suspend_md(int) */
    0x00411124 lui gp, 3                                 |     
    0x00411128 addiu gp, gp, -0x10c4                     |     
    0x0041112c addu gp, gp, t9                           |     gp += t9;
    0x00411130 addiu sp, sp, -0xc0                       |     
    0x00411134 sw ra, 0xbc(sp)                           |     *(var_bch) = ra;
    0x00411138 sw fp, 0xb8(sp)                           |     *(var_b8h) = fp;
    0x0041113c move fp, sp                               |     fp = sp;
    0x00411140 sw gp, 0x10(sp)                           |     *(var_10h) = gp;
    0x00411144 sw a0, 0x1c(fp)                           |     *(arg_1ch) = a0;
    0x00411148 sw a1, 0x18(fp)                           |     *(arg_18h) = a1;
    0x0041114c lw t8, -0x7d6c(gp)                        |     t8 = *((gp - 8027));
    0x00411150 lw t8, (t8)                               |     t8 = *(t8);
    0x00411154 sw t8, 0xb4(fp)                           |     *(arg_b4h) = t8;
    0x00411158 lw t8, 0x18(fp)                           |     t8 = *(arg_18h);
    0x0041115c sw t8, 0x20(fp)                           |     *(arg_20h) = t8;
    0x00411160 lw t8, 0x1c(fp)                           |     t8 = *(arg_1ch);
    0x00411164 lw t8, 0x48(t8)                           |     t8 = *((t8 + 18));
                                                         |     if (t8 != 0) {
    0x00411168 beqz t8, 0x4111a8                         |         
    0x0041116c nop                                       |         
    0x00411170 lw t8, 0x1c(fp)                           |         t8 = *(arg_1ch);
    0x00411174 lw t8, 0x48(t8)                           |         t8 = *((t8 + 18));
    0x00411178 lbu t8, (t8)                              |         t8 = *(t8);
                                                         |         if (t8 == 0) {
    0x0041117c beqz t8, 0x4111a8                         |             goto label_0;
                                                         |         }
    0x00411180 nop                                       |         
    0x00411184 lw t8, 0x1c(fp)                           |         t8 = *(arg_1ch);
    0x00411188 lw t8, 0x48(t8)                           |         t8 = *((t8 + 18));
    0x0041118c move a0, t8                               |         a0 = t8;
    0x00411190 lw a1, 0x20(fp)                           |         a1 = *(arg_20h);
    0x00411194 lw t8, -0x7e48(gp)                        |         t8 = sym.md_suspend_md_info_t__suspend_md_status_;
    0x00411198 move t9, t8                               |         t9 = t8;
    0x0041119c jalr t9                                   |         t9 ();
    0x004111a0 nop                                       |         
    0x004111a4 lw gp, 0x10(fp)                           |         gp = *(arg_10h);
                                                         |     }
                                                         | label_0:
    0x004111a8 sw zero, 0x24(fp)                         |     *(arg_24h) = 0;
    0x004111ac sw zero, 0x28(fp)                         |     *(arg_28h) = 0;
    0x004111b0 sw zero, 0x2c(fp)                         |     *(arg_2ch) = 0;
    0x004111b4 sw zero, 0x30(fp)                         |     *(arg_30h) = 0;
    0x004111b8 lw t8, 0x20(fp)                           |     t8 = *(arg_20h);
    0x004111bc addiu v0, zero, 1                         |     v0 = 1;
                                                         |     if (t8 != v0) {
    0x004111c0 beq t8, v0, 0x41120c                      |         
    0x004111c4 nop                                       |         
    0x004111c8 addiu v0, zero, 2                         |         v0 = 2;
                                                         |         if (t8 == v0) {
    0x004111cc beq t8, v0, 0x41123c                      |             goto label_1;
                                                         |         }
    0x004111d0 nop                                       |         
                                                         |         if (t8 != 0) {
    0x004111d4 bnez t8, 0x411268                         |             goto label_2;
                                                         |         }
    0x004111d8 nop                                       |         
    0x004111dc addiu t8, fp, 0x24                        |         t8 = fp + 0x24;
    0x004111e0 move a0, t8                               |         a0 = t8;
    0x004111e4 lw t8, -0x7fc8(gp)                        |         t8 = *((gp - 8178));
                                                         |         /* str.suspend_off */
    0x004111e8 addiu a1, t8, 0x2f08                      |         a1 = t8 + 0x2f08;
    0x004111ec addiu a2, zero, 0x10                      |         a2 = 0x10;
    0x004111f0 lw t8, -0x7aec(gp)                        |         t8 = sym.imp.strncpy;
    0x004111f4 move t9, t8                               |         t9 = t8;
    0x004111f8 jalr t9                                   |         t9 ();
    0x004111fc nop                                       |         
    0x00411200 lw gp, 0x10(fp)                           |         gp = *(arg_10h);
    0x00411204 b 0x411268                                |         goto label_2;
    0x00411208 nop                                       |         
                                                         |     }
    0x0041120c addiu t8, fp, 0x24                        |     t8 = fp + 0x24;
    0x00411210 move a0, t8                               |     a0 = t8;
    0x00411214 lw t8, -0x7fc8(gp)                        |     t8 = *((gp - 8178));
                                                         |     /* str.suspend_on */
    0x00411218 addiu a1, t8, 0x2f14                      |     a1 = t8 + 0x2f14;
    0x0041121c addiu a2, zero, 0x10                      |     a2 = 0x10;
    0x00411220 lw t8, -0x7aec(gp)                        |     t8 = sym.imp.strncpy;
    0x00411224 move t9, t8                               |     t9 = t8;
    0x00411228 jalr t9                                   |     t9 ();
    0x0041122c nop                                       |     
    0x00411230 lw gp, 0x10(fp)                           |     gp = *(arg_10h);
    0x00411234 b 0x411268                                |     goto label_2;
    0x00411238 nop                                       |     
                                                         | label_1:
    0x0041123c addiu t8, fp, 0x24                        |     t8 = fp + 0x24;
    0x00411240 move a0, t8                               |     a0 = t8;
    0x00411244 lw t8, -0x7fc8(gp)                        |     t8 = *((gp - 8178));
                                                         |     /* str.suspend_10s */
    0x00411248 addiu a1, t8, 0x2f20                      |     a1 = t8 + 0x2f20;
    0x0041124c addiu a2, zero, 0x10                      |     a2 = 0x10;
    0x00411250 lw t8, -0x7aec(gp)                        |     t8 = sym.imp.strncpy;
    0x00411254 move t9, t8                               |     t9 = t8;
    0x00411258 jalr t9                                   |     t9 ();
    0x0041125c nop                                       |     
    0x00411260 lw gp, 0x10(fp)                           |     gp = *(arg_10h);
    0x00411264 nop                                       |     
                                                         | label_2:
    0x00411268 lb t8, 0x24(fp)                           |     t8 = *(arg_24h);
                                                         |     if (t8 != 0) {
    0x0041126c beqz t8, 0x4112c0                         |         
    0x00411270 nop                                       |         
    0x00411274 addiu v0, fp, 0x34                        |         v0 = fp + 0x34;
    0x00411278 addiu t8, fp, 0x24                        |         t8 = fp + 0x24;
    0x0041127c move a0, v0                               |         a0 = v0;
    0x00411280 addiu a1, zero, 0x80                      |         a1 = 0x80;
    0x00411284 lw v0, -0x7fc8(gp)                        |         v0 = *((gp - 8178));
                                                         |         /* str._etc_rc.d_init.d_motion_detection_bgm.sh__s___dev_null_2_1 */
    0x00411288 addiu a2, v0, 0x2f2c                      |         a2 = v0 + 0x2f2c;
    0x0041128c move a3, t8                               |         a3 = t8;
    0x00411290 lw t8, -0x7bc8(gp)                        |         t8 = sym.imp.snprintf;
    0x00411294 move t9, t8                               |         t9 = t8;
    0x00411298 jalr t9                                   |         t9 ();
    0x0041129c nop                                       |         
    0x004112a0 lw gp, 0x10(fp)                           |         gp = *(arg_10h);
    0x004112a4 addiu t8, fp, 0x34                        |         t8 = fp + 0x34;
    0x004112a8 move a0, t8                               |         a0 = t8;
    0x004112ac lw t8, -0x7dd4(gp)                        |         t8 = sym.imp.system
    0x004112b0 move t9, t8                               |         t9 = t8;
    0x004112b4 jalr t9                                   |         t9 ();
    0x004112b8 nop                                       |         
    0x004112bc lw gp, 0x10(fp)                           |         gp = *(arg_10h);
                                                         |     }
    0x004112c0 lw t8, -0x7d6c(gp)                        |     t8 = *((gp - 8027));
    0x004112c4 lw v0, 0xb4(fp)                           |     v0 = *(arg_b4h);
    0x004112c8 lw t8, (t8)                               |     t8 = *(t8);
                                                         |     if (v0 != t8) {
    0x004112cc beq v0, t8, 0x4112e4                      |         
    0x004112d0 nop                                       |         
    0x004112d4 lw t8, -0x7bf0(gp)                        |         t8 = sym.imp.__stack_chk_fail;
    0x004112d8 move t9, t8                               |         t9 = t8;
    0x004112dc jalr t9                                   |         t9 ();
    0x004112e0 nop                                       |         
                                                         |     }
    0x004112e4 move sp, fp                               |     
    0x004112e8 lw ra, 0xbc(sp)                           |     ra = *(var_bch);
    0x004112ec lw fp, 0xb8(sp)                           |     fp = *(var_b8h);
    0x004112f0 addiu sp, sp, 0xc0                        |     
    0x004112f4 jr ra                                     |     return v0;
    0x004112f8 nop                                       |     
                                                         | }

[*] Function system used 6 times avcd