[*] Binary protection state of libmp.so

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


[*] Function strcat tear down of libmp.so

    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libmp.so @ 0x7b7b0 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.load_audioProcess_library ()         | void load_audioProcess_library () {
    0x0007b7b0 lui gp, 7                             |     
    0x0007b7b4 addiu gp, gp, 0x1c60                  |     
    0x0007b7b8 addu gp, gp, t9                       |     gp += t9;
    0x0007b7bc addiu sp, sp, -0x58                   |     
    0x0007b7c0 sw gp, 0x28(sp)                       |     *(var_28h) = gp;
    0x0007b7c4 sw ra, 0x54(sp)                       |     *(var_54h) = ra;
    0x0007b7c8 sw fp, 0x50(sp)                       |     *(var_50h) = fp;
    0x0007b7cc sw s7, 0x4c(sp)                       |     *(var_4ch) = s7;
    0x0007b7d0 sw s6, 0x48(sp)                       |     *(var_48h) = s6;
    0x0007b7d4 sw s5, 0x44(sp)                       |     *(var_44h) = s5;
    0x0007b7d8 sw s4, 0x40(sp)                       |     *(var_40h) = s4;
    0x0007b7dc sw s3, 0x3c(sp)                       |     *(var_3ch) = s3;
    0x0007b7e0 sw s2, 0x38(sp)                       |     *(var_38h) = s2;
    0x0007b7e4 sw s1, 0x34(sp)                       |     *(var_34h) = s1;
    0x0007b7e8 sw s0, 0x30(sp)                       |     *(var_30h) = s0;
                                                     |     if (a0 == 0) {
    0x0007b7ec beqz a0, 0x7bb10                      |         goto label_5;
                                                     |     }
    0x0007b7f0 nop                                   |     
                                                     |     if (a2 == 0) {
    0x0007b7f4 beqz a2, 0x7bb10                      |         goto label_5;
                                                     |     }
    0x0007b7f8 nop                                   |     
    0x0007b7fc move s2, a0                           |     s2 = a0;
                                                     |     if (a1 <= 0) {
    0x0007b800 blez a1, 0x7bb10                      |         goto label_5;
                                                     |     }
    0x0007b804 move s4, a1                           |     s4 = a1;
    0x0007b808 move s1, a2                           |     s1 = a2;
                                                     |     if (a3 == 0) {
    0x0007b80c beqz a3, 0x7b9a0                      |         goto label_2;
                                                     |     }
    0x0007b810 lw t9, -0x7e58(gp)                    |     t9 = sym.imp.strlen;
    0x0007b814 move a0, a3                           |     a0 = a3;
    0x0007b818 move s5, a3                           |     s5 = a3;
    0x0007b81c jalr t9                               |     t9 ();
    0x0007b820 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007b824 move a0, s1                           |     a0 = s1;
    0x0007b828 lw t9, -0x7e58(gp)                    |     t9 = sym.imp.strlen;
    0x0007b82c move s6, v0                           |     s6 = v0;
    0x0007b830 jalr t9                               |     t9 ();
    0x0007b834 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007b838 addu v0, s6, v0                       |     v0 = s6 + v0;
    0x0007b83c addiu s6, v0, 2                       |     s6 = v0 + 2;
    0x0007b840 lw t9, -0x76d8(gp)                    |     t9 = sym.imp.malloc;
    0x0007b844 move a0, s6                           |     a0 = s6;
    0x0007b848 jalr t9                               |     t9 ();
    0x0007b84c move s0, v0                           |     s0 = v0;
    0x0007b850 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == 0) {
    0x0007b854 beqz v0, 0x7bc38                      |         goto label_6;
                                                     |     }
    0x0007b858 lw t9, -0x7b18(gp)                    |     t9 = sym.imp.memset;
    0x0007b85c move a0, v0                           |     a0 = v0;
    0x0007b860 move a1, zero                         |     a1 = 0;
    0x0007b864 move a2, s6                           |     a2 = s6;
    0x0007b868 jalr t9                               |     t9 ();
    0x0007b86c lb v0, (s5)                           |     v0 = *(s5);
    0x0007b870 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == 0) {
    0x0007b874 beqz v0, 0x7b990                      |         goto label_7;
                                                     |     }
    0x0007b878 lw s7, -0x7f90(gp)                    |     s7 = *(gp);
    0x0007b87c addiu fp, zero, 0x2f                  |     fp = 0x2f;
                                                     |     /* sym.file_is_exist */
    0x0007b880 addiu s7, s7, -0x49f0                 |     s7 += -0x49f0;
    0x0007b884 b 0x7b8f8                             |     
                                                     |     while (v0 != 0) {
    0x0007b888 addiu s5, v0, 1                       |         s5 = v0 + 1;
    0x0007b88c jalr t9                               |         t9 ();
    0x0007b890 lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007b894 lw t9, -0x7e58(gp)                    |         t9 = sym.imp.strlen;
    0x0007b898 move a0, s0                           |         a0 = s0;
    0x0007b89c jalr t9                               |         t9 ();
    0x0007b8a0 lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007b8a4 addu v1, s0, v0                       |         v1 = s0 + v0;
    0x0007b8a8 addiu a0, v0, 1                       |         a0 = v0 + 1;
    0x0007b8ac lw t9, -0x7458(gp)                    |         t9 = sym.imp.strcpy;
    0x0007b8b0 move a1, s1                           |         a1 = s1;
    0x0007b8b4 addu a0, s0, a0                       |         a0 = s0 + a0;
    0x0007b8b8 sb fp, (v1)                           |         *(v1) = fp;
    0x0007b8bc jalr t9                               |         t9 ();
    0x0007b8c0 move t9, s7                           |         t9 = s7;
    0x0007b8c4 move a0, s0                           |         a0 = s0;
    0x0007b8c8 bal 0x7b610                           |         sym_file_is_exist ();
    0x0007b8cc lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007b8d0 move a0, s0                           |         a0 = s0;
    0x0007b8d4 move a1, zero                         |         a1 = 0;
    0x0007b8d8 move a2, s6                           |         a2 = s6;
    0x0007b8dc lw t9, -0x7b18(gp)                    |         t9 = sym.imp.memset;
                                                     |         if (v0 == 0) {
    0x0007b8e0 beqz v0, 0x7bb98                      |             goto label_8;
                                                     |         }
    0x0007b8e4 jalr t9                               |         t9 ();
    0x0007b8e8 nop                                   |         
    0x0007b8ec lb v0, 1(s3)                          |         v0 = *((s3 + 1));
    0x0007b8f0 lw gp, 0x28(sp)                       |         gp = *(var_28h);
                                                     |         if (v0 == 0) {
    0x0007b8f4 beqz v0, 0x7b990                      |             goto label_7;
                                                     |         }
    0x0007b8f8 lw t9, -0x7e8c(gp)                    |         t9 = sym.imp.strchr;
    0x0007b8fc move a0, s5                           |         a0 = s5;
    0x0007b900 addiu a1, zero, 0x3a                  |         a1 = 0x3a;
    0x0007b904 jalr t9                               |         t9 ();
    0x0007b908 lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007b90c move a1, s5                           |         a1 = s5;
    0x0007b910 move a0, s0                           |         a0 = s0;
    0x0007b914 move s3, v0                           |         s3 = v0;
    0x0007b918 subu a2, v0, s5                       |         __asm ("subu a2, v0, s5");
    0x0007b91c lw t9, -0x7670(gp)                    |         t9 = sym.imp.memcpy;
    0x0007b920 bnez v0, 0x7b888                      |         
                                                     |     }
    0x0007b924 lw t9, -0x7e58(gp)                    |     t9 = sym.imp.strlen;
    0x0007b928 move a0, s5                           |     a0 = s5;
    0x0007b92c jalr t9                               |     t9 ();
    0x0007b930 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007b934 move a2, v0                           |     a2 = v0;
    0x0007b938 move a1, s5                           |     a1 = s5;
    0x0007b93c lw t9, -0x7670(gp)                    |     t9 = sym.imp.memcpy;
    0x0007b940 move a0, s0                           |     a0 = s0;
    0x0007b944 jalr t9                               |     t9 ();
    0x0007b948 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007b94c lw t9, -0x7e58(gp)                    |     t9 = sym.imp.strlen;
    0x0007b950 move a0, s0                           |     a0 = s0;
    0x0007b954 jalr t9                               |     t9 ();
    0x0007b958 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007b95c addu v1, s0, v0                       |     v1 = s0 + v0;
    0x0007b960 addiu a0, v0, 1                       |     a0 = v0 + 1;
    0x0007b964 lw t9, -0x7458(gp)                    |     t9 = sym.imp.strcpy;
    0x0007b968 addiu v0, zero, 0x2f                  |     v0 = 0x2f;
    0x0007b96c addu a0, s0, a0                       |     a0 = s0 + a0;
    0x0007b970 move a1, s1                           |     a1 = s1;
    0x0007b974 sb v0, (v1)                           |     *(v1) = v0;
    0x0007b978 jalr t9                               |     t9 ();
    0x0007b97c move t9, s7                           |     t9 = s7;
    0x0007b980 move a0, s0                           |     a0 = s0;
    0x0007b984 bal 0x7b610                           |     sym_file_is_exist ();
    0x0007b988 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (v0 == 0) {
    0x0007b98c beqz v0, 0x7bb98                      |         goto label_8;
                                                     |     }
                                                     | label_7:
    0x0007b990 lw t9, -0x7f4c(gp)                    |     t9 = *((gp - 8147));
    0x0007b994 move a0, s0                           |     a0 = s0;
    0x0007b998 jalr t9                               |     t9 ();
    0x0007b99c lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     | label_2:
    0x0007b9a0 move s3, zero                         |     s3 = 0;
                                                     | label_4:
    0x0007b9a4 lw s5, -0x7f90(gp)                    |     s5 = *(gp);
    0x0007b9a8 lw s6, -0x7f90(gp)                    |     s6 = *(gp);
    0x0007b9ac b 0x7b9e4                             |     
                                                     |     while (v0 == 0) {
                                                     |         /* sym.open_shared_library */
    0x0007b9b0 addiu t9, s6, -0x4940                 |         t9 = s6 + -0x4940;
    0x0007b9b4 move a0, s0                           |         a0 = s0;
    0x0007b9b8 bal 0x7b6c0                           |         sym_open_shared_library ();
    0x0007b9bc lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007b9c0 move fp, v0                           |         fp = v0;
    0x0007b9c4 lw t9, -0x7f4c(gp)                    |         t9 = *((gp - 8147));
    0x0007b9c8 move a0, s0                           |         a0 = s0;
    0x0007b9cc jalr t9                               |         t9 ();
    0x0007b9d0 lw gp, 0x28(sp)                       |         gp = *(var_28h);
                                                     |         if (fp != 0) {
    0x0007b9d4 bnez fp, 0x7bb14                      |             goto label_9;
                                                     |         }
    0x0007b9d8 addiu s3, s3, 1                       |         s3++;
    0x0007b9dc addiu s2, s2, 4                       |         s2 += 4;
                                                     |         if (s3 == s4) {
    0x0007b9e0 beq s3, s4, 0x7bb10                   |             goto label_5;
                                                     |         }
                                                     | label_0:
    0x0007b9e4 lw fp, (s2)                           |         fp = *(s2);
    0x0007b9e8 lw t9, -0x7adc(gp)                    |         t9 = sym.imp.IMP_Log_Get_Option;
                                                     |         if (fp == 0) {
    0x0007b9ec beqz fp, 0x7bb48                      |             goto label_10;
                                                     |         }
    0x0007b9f0 lw t9, -0x7e58(gp)                    |         t9 = sym.imp.strlen;
    0x0007b9f4 move a0, fp                           |         a0 = fp;
    0x0007b9f8 jalr t9                               |         t9 ();
    0x0007b9fc lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007ba00 move a0, s1                           |         a0 = s1;
    0x0007ba04 lw t9, -0x7e58(gp)                    |         t9 = sym.imp.strlen;
    0x0007ba08 move s0, v0                           |         s0 = v0;
    0x0007ba0c jalr t9                               |         t9 ();
    0x0007ba10 lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007ba14 addu v0, s0, v0                       |         v0 = s0 + v0;
    0x0007ba18 addiu s7, v0, 2                       |         s7 = v0 + 2;
    0x0007ba1c lw t9, -0x76d8(gp)                    |         t9 = sym.imp.malloc;
    0x0007ba20 move a0, s7                           |         a0 = s7;
    0x0007ba24 jalr t9                               |         t9 ();
    0x0007ba28 move s0, v0                           |         s0 = v0;
    0x0007ba2c lw gp, 0x28(sp)                       |         gp = *(var_28h);
                                                     |         if (v0 == 0) {
    0x0007ba30 beqz v0, 0x7bbf8                      |             goto label_11;
                                                     |         }
    0x0007ba34 lw t9, -0x7b18(gp)                    |         t9 = sym.imp.memset;
    0x0007ba38 move a2, s7                           |         a2 = s7;
    0x0007ba3c move a0, v0                           |         a0 = v0;
    0x0007ba40 move a1, zero                         |         a1 = 0;
    0x0007ba44 jalr t9                               |         t9 ();
    0x0007ba48 lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007ba4c move a1, fp                           |         a1 = fp;
    0x0007ba50 lw t9, -0x78f0(gp)                    |         t9 = sym.imp.strcat
    0x0007ba54 move a0, s0                           |         a0 = s0;
    0x0007ba58 jalr t9                               |         t9 ();
    0x0007ba5c lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007ba60 lw t9, -0x7e58(gp)                    |         t9 = sym.imp.strlen;
    0x0007ba64 move a0, s0                           |         a0 = s0;
    0x0007ba68 jalr t9                               |         t9 ();
    0x0007ba6c lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007ba70 addu v1, s0, v0                       |         v1 = s0 + v0;
    0x0007ba74 addiu a0, v0, 1                       |         a0 = v0 + 1;
    0x0007ba78 lw t9, -0x7458(gp)                    |         t9 = sym.imp.strcpy;
    0x0007ba7c addiu v0, zero, 0x2f                  |         v0 = 0x2f;
    0x0007ba80 addu a0, s0, a0                       |         a0 = s0 + a0;
    0x0007ba84 move a1, s1                           |         a1 = s1;
    0x0007ba88 sb v0, (v1)                           |         *(v1) = v0;
    0x0007ba8c jalr t9                               |         t9 ();
                                                     |         /* sym.file_is_exist */
    0x0007ba90 addiu t9, s5, -0x49f0                 |         t9 = s5 + -0x49f0;
    0x0007ba94 move a0, s0                           |         a0 = s0;
    0x0007ba98 bal 0x7b610                           |         sym_file_is_exist ();
    0x0007ba9c lw gp, 0x28(sp)                       |         gp = *(var_28h);
    0x0007baa0 beqz v0, 0x7b9b0                      |         
                                                     |     }
    0x0007baa4 lw t9, -0x7adc(gp)                    |     t9 = sym.imp.IMP_Log_Get_Option;
    0x0007baa8 jalr t9                               |     t9 ();
    0x0007baac nop                                   |     
    0x0007bab0 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007bab4 sw s0, 0x20(sp)                       |     *(var_20h) = s0;
    0x0007bab8 addiu a0, zero, 4                     |     a0 = 4;
    0x0007babc lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
    0x0007bac0 lw t9, -0x79d0(gp)                    |     t9 = sym.imp.imp_log_fun;
                                                     |     /* str._home_ptkang_work_platform_isvp_20160504_e_proj_sdk_lv3_src_imp_audio_audio_process.c */
    0x0007bac4 addiu v1, v1, 0x2440                  |     v1 += 0x2440;
    0x0007bac8 sw v1, 0x10(sp)                       |     *(var_10h) = v1;
    0x0007bacc addiu v1, zero, 0x7e                  |     v1 = 0x7e;
    0x0007bad0 sw v1, 0x14(sp)                       |     *(var_14h) = v1;
    0x0007bad4 lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
                                                     |     /* obj.__func__.6531 */
    0x0007bad8 addiu v1, v1, 0x260c                  |     v1 += 0x260c;
    0x0007badc sw v1, 0x18(sp)                       |     *(var_18h) = v1;
    0x0007bae0 lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
                                                     |     /* str.file:_s_is_not_exist_n */
    0x0007bae4 addiu v1, v1, 0x255c                  |     v1 += 0x255c;
    0x0007bae8 sw v1, 0x1c(sp)                       |     *(var_1ch) = v1;
                                                     | label_1:
    0x0007baec lw a3, -0x7fc8(gp)                    |     a3 = *(gp);
    0x0007baf0 move a1, v0                           |     a1 = v0;
    0x0007baf4 addiu a2, zero, 2                     |     a2 = 2;
                                                     |     /* str.AudioProcess */
    0x0007baf8 addiu a3, a3, 0x2430                  |     a3 += 0x2430;
    0x0007bafc addiu s3, s3, 1                       |     s3++;
    0x0007bb00 jalr t9                               |     t9 ();
    0x0007bb04 addiu s2, s2, 4                       |     s2 += 4;
    0x0007bb08 lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (s3 != s4) {
    0x0007bb0c bne s3, s4, 0x7b9e4                   |         goto label_0;
                                                     |     }
                                                     | label_5:
    0x0007bb10 move fp, zero                         |     fp = 0;
                                                     | label_9:
    0x0007bb14 lw ra, 0x54(sp)                       |     ra = *(var_54h);
    0x0007bb18 move v0, fp                           |     v0 = fp;
    0x0007bb1c lw s7, 0x4c(sp)                       |     s7 = *(var_4ch);
    0x0007bb20 lw fp, 0x50(sp)                       |     fp = *(var_50h);
    0x0007bb24 lw s6, 0x48(sp)                       |     s6 = *(var_48h);
    0x0007bb28 lw s5, 0x44(sp)                       |     s5 = *(var_44h);
    0x0007bb2c lw s4, 0x40(sp)                       |     s4 = *(var_40h);
    0x0007bb30 lw s3, 0x3c(sp)                       |     s3 = *(var_3ch);
    0x0007bb34 lw s2, 0x38(sp)                       |     s2 = *(var_38h);
    0x0007bb38 lw s1, 0x34(sp)                       |     s1 = *(var_34h);
    0x0007bb3c lw s0, 0x30(sp)                       |     s0 = *(var_30h);
    0x0007bb40 addiu sp, sp, 0x58                    |     
    0x0007bb44 jr ra                                 |     return v1;
                                                     | label_10:
    0x0007bb48 jalr t9                               |     t9 ();
    0x0007bb4c nop                                   |     
    0x0007bb50 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007bb54 lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
    0x0007bb58 lw t9, -0x79d0(gp)                    |     t9 = sym.imp.imp_log_fun;
                                                     |     /* str._home_ptkang_work_platform_isvp_20160504_e_proj_sdk_lv3_src_imp_audio_audio_process.c */
    0x0007bb5c addiu v1, v1, 0x2440                  |     v1 += 0x2440;
    0x0007bb60 sw v1, 0x10(sp)                       |     *(var_10h) = v1;
    0x0007bb64 addiu v1, zero, 0x6a                  |     v1 = 0x6a;
    0x0007bb68 sw v1, 0x14(sp)                       |     *(var_14h) = v1;
    0x0007bb6c lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
                                                     |     /* obj.__func__.6531 */
    0x0007bb70 addiu v1, v1, 0x260c                  |     v1 += 0x260c;
    0x0007bb74 sw v1, 0x18(sp)                       |     *(var_18h) = v1;
    0x0007bb78 lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
                                                     |     /* str.fun:_s_defaultDir_or_libFileName_is_empty_n */
    0x0007bb7c addiu v1, v1, 0x2510                  |     v1 += 0x2510;
                                                     | label_3:
    0x0007bb80 sw v1, 0x1c(sp)                       |     *(var_1ch) = v1;
    0x0007bb84 lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
    0x0007bb88 addiu a0, zero, 6                     |     a0 = 6;
                                                     |     /* obj.__func__.6531 */
    0x0007bb8c addiu v1, v1, 0x260c                  |     v1 += 0x260c;
    0x0007bb90 sw v1, 0x20(sp)                       |     *(var_20h) = v1;
    0x0007bb94 b 0x7baec                             |     goto label_1;
                                                     | label_8:
    0x0007bb98 lw t9, -0x7f90(gp)                    |     t9 = *(gp);
                                                     |     /* sym.open_shared_library */
    0x0007bb9c addiu t9, t9, -0x4940                 |     t9 += -0x4940;
    0x0007bba0 move a0, s0                           |     a0 = s0;
    0x0007bba4 bal 0x7b6c0                           |     sym_open_shared_library ();
    0x0007bba8 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007bbac move fp, v0                           |     fp = v0;
    0x0007bbb0 lw t9, -0x7f4c(gp)                    |     t9 = *((gp - 8147));
    0x0007bbb4 move a0, s0                           |     a0 = s0;
    0x0007bbb8 jalr t9                               |     t9 ();
    0x0007bbbc lw gp, 0x28(sp)                       |     gp = *(var_28h);
                                                     |     if (fp == 0) {
    0x0007bbc0 beqz fp, 0x7b9a0                      |         goto label_2;
                                                     |     }
    0x0007bbc4 lw ra, 0x54(sp)                       |     ra = *(var_54h);
    0x0007bbc8 move v0, fp                           |     v0 = fp;
    0x0007bbcc lw s7, 0x4c(sp)                       |     s7 = *(var_4ch);
    0x0007bbd0 lw fp, 0x50(sp)                       |     fp = *(var_50h);
    0x0007bbd4 lw s6, 0x48(sp)                       |     s6 = *(var_48h);
    0x0007bbd8 lw s5, 0x44(sp)                       |     s5 = *(var_44h);
    0x0007bbdc lw s4, 0x40(sp)                       |     s4 = *(var_40h);
    0x0007bbe0 lw s3, 0x3c(sp)                       |     s3 = *(var_3ch);
    0x0007bbe4 lw s2, 0x38(sp)                       |     s2 = *(var_38h);
    0x0007bbe8 lw s1, 0x34(sp)                       |     s1 = *(var_34h);
    0x0007bbec lw s0, 0x30(sp)                       |     s0 = *(var_30h);
    0x0007bbf0 addiu sp, sp, 0x58                    |     
    0x0007bbf4 jr ra                                 |     return v1;
                                                     | label_11:
    0x0007bbf8 lw t9, -0x7adc(gp)                    |     t9 = sym.imp.IMP_Log_Get_Option;
    0x0007bbfc jalr t9                               |     t9 ();
    0x0007bc00 nop                                   |     
    0x0007bc04 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007bc08 lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
    0x0007bc0c lw t9, -0x79d0(gp)                    |     t9 = sym.imp.imp_log_fun;
                                                     |     /* str._home_ptkang_work_platform_isvp_20160504_e_proj_sdk_lv3_src_imp_audio_audio_process.c */
    0x0007bc10 addiu v1, v1, 0x2440                  |     v1 += 0x2440;
    0x0007bc14 sw v1, 0x10(sp)                       |     *(var_10h) = v1;
    0x0007bc18 addiu v1, zero, 0x75                  |     v1 = 0x75;
    0x0007bc1c sw v1, 0x14(sp)                       |     *(var_14h) = v1;
    0x0007bc20 lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
                                                     |     /* obj.__func__.6531 */
    0x0007bc24 addiu v1, v1, 0x260c                  |     v1 += 0x260c;
    0x0007bc28 sw v1, 0x18(sp)                       |     *(var_18h) = v1;
    0x0007bc2c lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
                                                     |     /* str.fun:_s_malloc_tmpBuf_failed_n */
    0x0007bc30 addiu v1, v1, 0x253c                  |     v1 += 0x253c;
    0x0007bc34 b 0x7bb80                             |     goto label_3;
                                                     | label_6:
    0x0007bc38 lw t9, -0x7adc(gp)                    |     t9 = sym.imp.IMP_Log_Get_Option;
    0x0007bc3c move s3, zero                         |     s3 = 0;
    0x0007bc40 jalr t9                               |     t9 ();
    0x0007bc44 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007bc48 move a1, v0                           |     a1 = v0;
    0x0007bc4c addiu a2, zero, 2                     |     a2 = 2;
    0x0007bc50 lw a0, -0x7fc8(gp)                    |     a0 = *(gp);
    0x0007bc54 lw v1, -0x7fc8(gp)                    |     v1 = *(gp);
    0x0007bc58 lw a3, -0x7fc8(gp)                    |     a3 = *(gp);
                                                     |     /* str._home_ptkang_work_platform_isvp_20160504_e_proj_sdk_lv3_src_imp_audio_audio_process.c */
    0x0007bc5c addiu a0, a0, 0x2440                  |     a0 += 0x2440;
    0x0007bc60 sw a0, 0x10(sp)                       |     *(var_10h) = a0;
    0x0007bc64 addiu a0, zero, 0x42                  |     a0 = 0x42;
    0x0007bc68 sw a0, 0x14(sp)                       |     *(var_14h) = a0;
    0x0007bc6c lw a0, -0x7fc8(gp)                    |     a0 = *(gp);
    0x0007bc70 lw t9, -0x79d0(gp)                    |     t9 = sym.imp.imp_log_fun;
                                                     |     /* obj.__func__.6517 */
    0x0007bc74 addiu v1, v1, 0x25d0                  |     v1 += 0x25d0;
                                                     |     /* str.fun:_s_malloc_space_failed_n */
    0x0007bc78 addiu a0, a0, 0x24f4                  |     a0 += 0x24f4;
    0x0007bc7c sw a0, 0x1c(sp)                       |     *(var_1ch) = a0;
    0x0007bc80 sw v1, 0x18(sp)                       |     *(var_18h) = v1;
    0x0007bc84 sw v1, 0x20(sp)                       |     *(var_20h) = v1;
    0x0007bc88 addiu a0, zero, 6                     |     a0 = 6;
                                                     |     /* str.AudioProcess */
    0x0007bc8c addiu a3, a3, 0x2430                  |     a3 += 0x2430;
    0x0007bc90 jalr t9                               |     t9 ();
    0x0007bc94 lw gp, 0x28(sp)                       |     gp = *(var_28h);
    0x0007bc98 b 0x7b9a4                             |     goto label_4;
                                                     | }

[*] Function strcat used 2 times libmp.so