[*] Binary protection state of libaudioProcess.so

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


[*] Function strcpy tear down of libaudioProcess.so

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x234a8 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.read_dir_file ()         | void read_dir_file () {
    0x000234a8 lui gp, 7                 |     
    0x000234ac addiu gp, gp, 0x6558      |     
    0x000234b0 addu gp, gp, t9           |     gp += t9;
    0x000234b4 lw t9, -0x75b0(gp)        |     t9 = sym.imp.opendir;
    0x000234b8 addiu sp, sp, -0xa0       |     
    0x000234bc sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x000234c0 sw s5, 0x94(sp)           |     *(var_94h) = s5;
    0x000234c4 sw s2, 0x88(sp)           |     *(var_88h) = s2;
    0x000234c8 sw s1, 0x84(sp)           |     *(var_84h) = s1;
    0x000234cc sw ra, 0x9c(sp)           |     *(var_9ch) = ra;
    0x000234d0 sw s6, 0x98(sp)           |     *(var_98h) = s6;
    0x000234d4 sw s4, 0x90(sp)           |     *(var_90h) = s4;
    0x000234d8 sw s3, 0x8c(sp)           |     *(var_8ch) = s3;
    0x000234dc sw s0, 0x80(sp)           |     *(var_80h) = s0;
    0x000234e0 move s5, a1               |     s5 = a1;
    0x000234e4 jalr t9                   |     t9 ();
    0x000234e8 move s2, zero             |     s2 = 0;
    0x000234ec lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000234f0 move s1, zero             |     s1 = 0;
                                         |     if (v0 == 0) {
    0x000234f4 beqz v0, 0x23618          |         goto label_2;
                                         |     }
    0x000234f8 lw s3, -0x7fcc(gp)        |     s3 = *(gp);
    0x000234fc lw s4, -0x7fcc(gp)        |     s4 = *(gp);
    0x00023500 move s0, v0               |     s0 = v0;
                                         |     /* esilref: '(' */
    0x00023504 addiu s3, s3, -0x4b64     |     s3 += -0x4b64;
                                         |     /* aav.0x0006b0c0 */
    0x00023508 addiu s4, s4, -0x4f40     |     s4 += -0x4f40;
    0x0002350c lw t9, -0x7dd0(gp)        |     t9 = sym.imp.readdir;
                                         |     do {
    0x00023510 move a0, s0               |         a0 = s0;
    0x00023514 jalr t9                   |         t9 ();
    0x00023518 lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |         if (v0 == 0) {
    0x0002351c beqz v0, 0x235a8          |             goto label_3;
                                         |         }
                                         | label_0:
    0x00023520 addiu v1, zero, 0xa       |         v1 = 0xa;
    0x00023524 addiu v1, zero, 0x2e      |         v1 = 0x2e;
                                         |         if (s1 == v1) {
    0x00023528 beq s1, v1, 0x235a8       |             goto label_3;
                                         |         }
    0x0002352c lb a0, 0xb(v0)            |         a0 = *((v0 + 11));
    0x00023530 lw t9, -0x7dd0(gp)        |         t9 = sym.imp.readdir;
    0x00023534 beq a0, v1, 0x23510       |         
                                         |     } while (a0 == v1);
    0x00023538 lw t9, -0x7f70(gp)        |     t9 = sym.imp.strcpy
    0x0002353c addiu s6, v0, 0xb         |     s6 = v0 + 0xb;
    0x00023540 addiu a0, sp, 0x18        |     a0 = sp + 0x18;
    0x00023544 move a1, s6               |     a1 = s6;
    0x00023548 jalr t9                   |     t9 ();
    0x0002354c lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023550 addiu a0, sp, 0x18        |     a0 = sp + 0x18;
    0x00023554 lw t9, -0x7834(gp)        |     t9 = sym.imp.strtok;
    0x00023558 move a1, s3               |     a1 = s3;
    0x0002355c jalr t9                   |     t9 ();
    0x00023560 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023564 move a1, s3               |     a1 = s3;
    0x00023568 lw t9, -0x7834(gp)        |     t9 = sym.imp.strtok;
    0x0002356c move a0, zero             |     a0 = 0;
    0x00023570 jalr t9                   |     t9 ();
    0x00023574 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023578 move a0, v0               |     a0 = v0;
    0x0002357c lw t9, -0x7cec(gp)        |     t9 = sym.imp.strcmp;
    0x00023580 move a1, s4               |     a1 = s4;
    0x00023584 jalr t9                   |     t9 ();
    0x00023588 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x0002358c beqz v0, 0x235e0          |         goto label_4;
                                         |     }
    0x00023590 addiu s1, s1, 1           |     s1++;
                                         | label_1:
    0x00023594 lw t9, -0x7dd0(gp)        |     t9 = sym.imp.readdir;
    0x00023598 move a0, s0               |     a0 = s0;
    0x0002359c jalr t9                   |     t9 ();
    0x000235a0 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x000235a4 bnez v0, 0x23520          |         goto label_0;
                                         |     }
                                         | label_3:
    0x000235a8 lw t9, -0x7884(gp)        |     t9 = sym.imp.closedir;
    0x000235ac move a0, s0               |     a0 = s0;
    0x000235b0 jalr t9                   |     t9 ();
                                         |     do {
    0x000235b4 lw ra, 0x9c(sp)           |         ra = *(var_9ch);
    0x000235b8 move v0, s2               |         v0 = s2;
    0x000235bc lw s6, 0x98(sp)           |         s6 = *(var_98h);
    0x000235c0 lw s5, 0x94(sp)           |         s5 = *(var_94h);
    0x000235c4 lw s4, 0x90(sp)           |         s4 = *(var_90h);
    0x000235c8 lw s3, 0x8c(sp)           |         s3 = *(var_8ch);
    0x000235cc lw s2, 0x88(sp)           |         s2 = *(var_88h);
    0x000235d0 lw s1, 0x84(sp)           |         s1 = *(var_84h);
    0x000235d4 lw s0, 0x80(sp)           |         s0 = *(var_80h);
    0x000235d8 addiu sp, sp, 0xa0        |         
    0x000235dc jr ra                     |         return v0;
                                         | label_4:
    0x000235e0 sll v1, s2, 2             |         v1 = s2 << 2;
    0x000235e4 sll v0, s2, 4             |         v0 = s2 << 4;
    0x000235e8 addu v0, v1, v0           |         v0 = v1 + v0;
    0x000235ec sll a0, v0, 2             |         a0 = v0 << 2;
    0x000235f0 lw t9, -0x7f70(gp)        |         t9 = sym.imp.strcpy
    0x000235f4 addu v0, v0, a0           |         v0 += a0;
    0x000235f8 addu a0, v0, s2           |         a0 = v0 + s2;
    0x000235fc addu a0, s5, a0           |         a0 = s5 + a0;
    0x00023600 move a1, s6               |         a1 = s6;
    0x00023604 jalr t9                   |         t9 ();
    0x00023608 addiu s2, s2, 1           |         s2++;
    0x0002360c lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00023610 addiu s1, s1, 1           |         s1++;
    0x00023614 b 0x23594                 |         goto label_1;
                                         | label_2:
    0x00023618 addiu s2, zero, -1        |         s2 = -1;
    0x0002361c b 0x235b4                 |         
                                         |     } while (1);
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x23620 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.read_profile ()          | void read_profile () {
    0x00023620 lui gp, 7                 |     
    0x00023624 addiu gp, gp, 0x63e0      |     
    0x00023628 addu gp, gp, t9           |     gp += t9;
    0x0002362c lw v0, -0x7fcc(gp)        |     v0 = *(gp);
    0x00023630 lw t9, -0x7a54(gp)        |     t9 = sym.imp.memset;
    0x00023634 addiu sp, sp, -0xa8       |     
    0x00023638 lbu v0, -0x49c0(v0)       |     v0 = *((v0 - 18880));
    0x0002363c sw ra, 0xa4(sp)           |     *(var_a4h) = ra;
    0x00023640 sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00023644 sw s6, 0x9c(sp)           |     *(var_9ch) = s6;
    0x00023648 sw s5, 0x98(sp)           |     *(var_98h) = s5;
    0x0002364c sw s4, 0x94(sp)           |     *(var_94h) = s4;
    0x00023650 sw s1, 0x88(sp)           |     *(var_88h) = s1;
    0x00023654 move s4, a0               |     s4 = a0;
    0x00023658 sw s7, 0xa0(sp)           |     *(var_a0h) = s7;
    0x0002365c addiu a0, sp, 0x19        |     a0 = sp + 0x19;
    0x00023660 sw s3, 0x90(sp)           |     *(var_90h) = s3;
    0x00023664 sw s2, 0x8c(sp)           |     *(var_8ch) = s2;
    0x00023668 sw s0, 0x84(sp)           |     *(var_84h) = s0;
    0x0002366c move s6, a1               |     s6 = a1;
    0x00023670 move s1, a2               |     s1 = a2;
    0x00023674 move a1, zero             |     a1 = 0;
    0x00023678 addiu a2, zero, 0x63      |     a2 = 0x63;
    0x0002367c sb v0, 0x18(sp)           |     *(var_18h) = v0;
    0x00023680 move s5, a3               |     s5 = a3;
    0x00023684 jalr t9                   |     t9 ();
    0x00023688 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0002368c lw t9, -0x7fd8(gp)        |     t9 = *(gp);
                                         |     /* sym.profile_lock */
    0x00023690 addiu t9, t9, 0x3440      |     t9 += 0x3440;
    0x00023694 bal 0x23440               |     sym_profile_lock ();
    0x00023698 nop                       |     
    0x0002369c lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000236a0 move a0, s4               |     a0 = s4;
    0x000236a4 lw a1, -0x7fcc(gp)        |     a1 = *(gp);
    0x000236a8 lw t9, -0x77ac(gp)        |     t9 = *(gp);
                                         |     /* esilref: '' */
    0x000236ac addiu a1, a1, -0x4b60     |     a1 += -0x4b60;
    0x000236b0 jalr t9                   |     t9 ();
    0x000236b4 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x000236b8 beqz v0, 0x23a84          |         goto label_5;
                                         |     }
    0x000236bc lw t9, -0x7bb8(gp)        |     t9 = sym.imp.fseek;
    0x000236c0 move a0, v0               |     a0 = v0;
    0x000236c4 move a1, zero             |     a1 = 0;
    0x000236c8 addiu a2, zero, 2         |     a2 = 2;
    0x000236cc move s0, v0               |     s0 = v0;
    0x000236d0 jalr t9                   |     t9 ();
    0x000236d4 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x000236d8 bnez v0, 0x23a0c          |         goto label_6;
                                         |     }
    0x000236dc lw t9, -0x7da4(gp)        |     t9 = sym.imp.ftell;
    0x000236e0 move a0, s0               |     a0 = s0;
    0x000236e4 jalr t9                   |     t9 ();
    0x000236e8 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000236ec move a0, s0               |     a0 = s0;
    0x000236f0 move a1, zero             |     a1 = 0;
    0x000236f4 lw t9, -0x7bb8(gp)        |     t9 = sym.imp.fseek;
    0x000236f8 move a2, zero             |     a2 = 0;
    0x000236fc move s3, v0               |     s3 = v0;
    0x00023700 jalr t9                   |     t9 ();
    0x00023704 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x00023708 bnez v0, 0x23a0c          |         goto label_6;
                                         |     }
    0x0002370c lw t9, -0x74d8(gp)        |     t9 = sym.imp.malloc;
    0x00023710 move a0, s3               |     a0 = s3;
    0x00023714 jalr t9                   |     t9 ();
    0x00023718 move s2, v0               |     s2 = v0;
    0x0002371c lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x00023720 beqz v0, 0x23ac4          |         goto label_7;
                                         |     }
    0x00023724 lw t9, -0x7a54(gp)        |     t9 = sym.imp.memset;
    0x00023728 move a0, v0               |     a0 = v0;
    0x0002372c move a1, zero             |     a1 = 0;
    0x00023730 move a2, s3               |     a2 = s3;
    0x00023734 jalr t9                   |     t9 ();
    0x00023738 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x0002373c move a3, s0               |     a3 = s0;
    0x00023740 addiu a1, zero, 1         |     a1 = 1;
    0x00023744 lw t9, -0x7764(gp)        |     t9 = sym.imp.fread;
    0x00023748 move a2, s3               |     a2 = s3;
    0x0002374c move a0, s2               |     a0 = s2;
    0x00023750 jalr t9                   |     t9 ();
    0x00023754 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023758 lw t9, -0x774c(gp)        |     t9 = sym.imp.fclose;
    0x0002375c move a0, s0               |     a0 = s0;
    0x00023760 jalr t9                   |     t9 ();
    0x00023764 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023768 addiu a0, sp, 0x18        |     a0 = sp + 0x18;
    0x0002376c move a2, s6               |     a2 = s6;
    0x00023770 lw a1, -0x7fcc(gp)        |     a1 = *(gp);
    0x00023774 lw t9, -0x7b6c(gp)        |     t9 = sym.imp.sprintf;
                                         |     /* esilref: '&s]' */
    0x00023778 addiu a1, a1, -0x4af0     |     a1 += -0x4af0;
    0x0002377c jalr t9                   |     t9 ();
    0x00023780 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023784 move a0, s2               |     a0 = s2;
    0x00023788 lw t9, -0x7cdc(gp)        |     t9 = sym.imp.strstr;
    0x0002378c move a1, s6               |     a1 = s6;
    0x00023790 jalr t9                   |     t9 ();
    0x00023794 move s0, v0               |     s0 = v0;
    0x00023798 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x0002379c beqz v0, 0x23a3c          |         goto label_8;
                                         |     }
    0x000237a0 lw t9, -0x7df8(gp)        |     t9 = sym.imp.strchr;
    0x000237a4 move a0, v0               |     a0 = v0;
    0x000237a8 addiu a1, zero, 0x5b      |     a1 = 0x5b;
    0x000237ac jalr t9                   |     t9 ();
    0x000237b0 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x000237b4 beqz v0, 0x23968          |         goto label_9;
                                         |     }
    0x000237b8 lw t9, -0x74d8(gp)        |     t9 = sym.imp.malloc;
    0x000237bc subu s6, v0, s0           |     __asm ("subu s6, v0, s0");
    0x000237c0 addiu s7, s6, 1           |     s7 = s6 + 1;
    0x000237c4 move a0, s7               |     a0 = s7;
    0x000237c8 jalr t9                   |     t9 ();
    0x000237cc move s3, v0               |     s3 = v0;
    0x000237d0 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x000237d4 beqz v0, 0x239c4          |         goto label_10;
                                         |     }
    0x000237d8 lw t9, -0x7a54(gp)        |     t9 = sym.imp.memset;
    0x000237dc move a0, v0               |     a0 = v0;
    0x000237e0 move a1, zero             |     a1 = 0;
    0x000237e4 move a2, s7               |     a2 = s7;
    0x000237e8 jalr t9                   |     t9 ();
    0x000237ec lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000237f0 move a0, s3               |     a0 = s3;
    0x000237f4 move a1, s0               |     a1 = s0;
    0x000237f8 lw t9, -0x7954(gp)        |     t9 = sym.imp.strncpy;
    0x000237fc move a2, s6               |     a2 = s6;
    0x00023800 jalr t9                   |     t9 ();
    0x00023804 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         | label_2:
    0x00023808 move s0, zero             |     s0 = 0;
    0x0002380c addiu s6, zero, 0x3d      |     s6 = 0x3d;
                                         |     do {
    0x00023810 lw t9, -0x7598(gp)        |         t9 = sym.imp.strlen;
    0x00023814 move a0, s1               |         a0 = s1;
                                         |         if (s0 == 0) {
    0x00023818 beqz s0, 0x23920          |             goto label_11;
                                         |         }
    0x0002381c jalr t9                   |         t9 ();
    0x00023820 nop                       |         
    0x00023824 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00023828 addu a0, s0, v0           |         a0 = s0 + v0;
    0x0002382c lw t9, -0x7cdc(gp)        |         t9 = sym.imp.strstr;
    0x00023830 move a1, s1               |         a1 = s1;
    0x00023834 jalr t9                   |         t9 ();
    0x00023838 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x0002383c move s0, v0               |         s0 = v0;
    0x00023840 move a0, s1               |         a0 = s1;
    0x00023844 lw t9, -0x7598(gp)        |         t9 = sym.imp.strlen;
                                         |         if (s0 == 0) {
    0x00023848 beqz s0, 0x23944          |             goto label_12;
                                         |         }
                                         | label_0:
    0x0002384c jalr t9                   |         t9 ();
    0x00023850 nop                       |         
    0x00023854 addu v0, s0, v0           |         v0 = s0 + v0;
    0x00023858 lb v1, (v0)               |         v1 = *(v0);
    0x0002385c lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00023860 bne v1, s6, 0x23810       |         
                                         |     } while (v1 != s6);
    0x00023864 lw t9, -0x7df8(gp)        |     t9 = sym.imp.strchr;
    0x00023868 move a0, s0               |     a0 = s0;
    0x0002386c addiu a1, zero, 0x3d      |     a1 = 0x3d;
    0x00023870 jalr t9                   |     t9 ();
    0x00023874 move s0, v0               |     s0 = v0;
    0x00023878 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x0002387c beqz v0, 0x239ec          |         goto label_13;
                                         |     }
    0x00023880 lw a1, -0x7fcc(gp)        |     a1 = *(gp);
    0x00023884 lw t9, -0x7834(gp)        |     t9 = sym.imp.strtok;
    0x00023888 move a0, v0               |     a0 = v0;
    0x0002388c addiu a1, a1, 0x64a4      |     a1 += 0x64a4;
    0x00023890 jalr t9                   |     t9 ();
    0x00023894 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023898 move a0, s5               |     a0 = s5;
    0x0002389c lw t9, -0x7f70(gp)        |     t9 = sym.imp.strcpy
    0x000238a0 addiu a1, s0, 1           |     a1 = s0 + 1;
    0x000238a4 jalr t9                   |     t9 ();
    0x000238a8 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000238ac lw t9, -0x7598(gp)        |     t9 = sym.imp.strlen;
    0x000238b0 move a0, s5               |     a0 = s5;
    0x000238b4 jalr t9                   |     t9 ();
    0x000238b8 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x000238bc move s1, v0               |     s1 = v0;
                                         | label_1:
    0x000238c0 lw t9, -0x7dbc(gp)        |     t9 = sym.imp.free;
    0x000238c4 move a0, s3               |     a0 = s3;
    0x000238c8 jalr t9                   |     t9 ();
    0x000238cc lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         | label_3:
    0x000238d0 lw t9, -0x7dbc(gp)        |     t9 = sym.imp.free;
    0x000238d4 move a0, s2               |     a0 = s2;
    0x000238d8 jalr t9                   |     t9 ();
    0x000238dc lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         | label_4:
    0x000238e0 lw a0, -0x7fe4(gp)        |     a0 = *((gp - 8185));
    0x000238e4 lw t9, -0x7c9c(gp)        |     t9 = sym.imp.pthread_mutex_unlock;
                                         |     /* obj.mutex */
    0x000238e8 addiu a0, a0, 0x32d4      |     a0 += aav.0x000032d4;
    0x000238ec jalr t9                   |     t9 ();
    0x000238f0 lw ra, 0xa4(sp)           |     ra = *(var_a4h);
    0x000238f4 move v0, s1               |     v0 = s1;
    0x000238f8 lw s7, 0xa0(sp)           |     s7 = *(var_a0h);
    0x000238fc lw s6, 0x9c(sp)           |     s6 = *(var_9ch);
    0x00023900 lw s5, 0x98(sp)           |     s5 = *(var_98h);
    0x00023904 lw s4, 0x94(sp)           |     s4 = *(var_94h);
    0x00023908 lw s3, 0x90(sp)           |     s3 = *(var_90h);
    0x0002390c lw s2, 0x8c(sp)           |     s2 = *(var_8ch);
    0x00023910 lw s1, 0x88(sp)           |     s1 = *(var_88h);
    0x00023914 lw s0, 0x84(sp)           |     s0 = *(var_84h);
    0x00023918 addiu sp, sp, 0xa8        |     
    0x0002391c jr ra                     |     return v0;
                                         | label_11:
    0x00023920 lw t9, -0x7cdc(gp)        |     t9 = sym.imp.strstr;
    0x00023924 move a0, s3               |     a0 = s3;
    0x00023928 move a1, s1               |     a1 = s1;
    0x0002392c jalr t9                   |     t9 ();
    0x00023930 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023934 move s0, v0               |     s0 = v0;
    0x00023938 move a0, s1               |     a0 = s1;
    0x0002393c lw t9, -0x7598(gp)        |     t9 = sym.imp.strlen;
                                         |     if (s0 != 0) {
    0x00023940 bnez s0, 0x2384c          |         goto label_0;
                                         |     }
                                         | label_12:
    0x00023944 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00023948 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf;
    0x0002394c move a1, s1               |     a1 = s1;
                                         |     /* str.ERROR:_no__s_this_parameter_in__s_file_n */
    0x00023950 addiu a0, a0, -0x4a9c     |     a0 += -0x4a9c;
    0x00023954 move a2, s4               |     a2 = s4;
    0x00023958 jalr t9                   |     t9 ();
    0x0002395c addiu s1, zero, -1        |     s1 = -1;
    0x00023960 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023964 b 0x238c0                 |     goto label_1;
                                         | label_9:
    0x00023968 lw t9, -0x7598(gp)        |     t9 = sym.imp.strlen;
    0x0002396c move a0, s0               |     a0 = s0;
    0x00023970 jalr t9                   |     t9 ();
    0x00023974 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023978 addiu s6, v0, 1           |     s6 = v0 + 1;
    0x0002397c lw t9, -0x74d8(gp)        |     t9 = sym.imp.malloc;
    0x00023980 move a0, s6               |     a0 = s6;
    0x00023984 jalr t9                   |     t9 ();
    0x00023988 move s3, v0               |     s3 = v0;
    0x0002398c lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x00023990 beqz v0, 0x23a5c          |         
    0x00023994 lw t9, -0x7a54(gp)        |         t9 = sym.imp.memset;
    0x00023998 move a0, v0               |         a0 = v0;
    0x0002399c move a1, zero             |         a1 = 0;
    0x000239a0 move a2, s6               |         a2 = s6;
    0x000239a4 jalr t9                   |         t9 ();
    0x000239a8 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x000239ac move a0, s3               |         a0 = s3;
    0x000239b0 lw t9, -0x7f70(gp)        |         t9 = sym.imp.strcpy
    0x000239b4 move a1, s0               |         a1 = s0;
    0x000239b8 jalr t9                   |         t9 ();
    0x000239bc lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x000239c0 b 0x23808                 |         goto label_2;
                                         | label_10:
    0x000239c4 lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x000239c8 lw a1, -0x7fcc(gp)        |         a1 = *(gp);
    0x000239cc lw t9, -0x7e50(gp)        |         t9 = sym.imp.printf;
                                         |         /* str.ERROR:_temp_buffer_malloc_failed__s___d_n */
    0x000239d0 addiu a0, a0, -0x4ac8     |         a0 += -0x4ac8;
                                         |         /* obj.__func__.3806 */
    0x000239d4 addiu a1, a1, -0x495c     |         a1 += -0x495c;
    0x000239d8 addiu a2, zero, 0x91      |         a2 = 0x91;
    0x000239dc jalr t9                   |         t9 ();
    0x000239e0 addiu s1, zero, -1        |         s1 = -1;
    0x000239e4 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x000239e8 b 0x238d0                 |         goto label_3;
                                         | label_13:
    0x000239ec lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x000239f0 lw t9, -0x7e50(gp)        |         t9 = sym.imp.printf;
    0x000239f4 move a1, s1               |         a1 = s1;
                                         |         /* str.ERROR:__s_parameter_no_value_n */
    0x000239f8 addiu a0, a0, -0x4a74     |         a0 += -0x4a74;
    0x000239fc jalr t9                   |         t9 ();
    0x00023a00 addiu s1, zero, -1        |         s1 = -1;
    0x00023a04 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00023a08 b 0x238c0                 |         goto label_1;
                                         | label_6:
    0x00023a0c lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x00023a10 lw t9, -0x7e50(gp)        |         t9 = sym.imp.printf;
    0x00023a14 move a1, s4               |         a1 = s4;
                                         |         /* str.ERROR:Calculated_length_of_the__s_failed_n */
    0x00023a18 addiu a0, a0, -0x4b40     |         a0 += -0x4b40;
    0x00023a1c jalr t9                   |         t9 ();
    0x00023a20 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00023a24 move a0, s0               |         a0 = s0;
    0x00023a28 lw t9, -0x774c(gp)        |         t9 = sym.imp.fclose;
    0x00023a2c addiu s1, zero, -1        |         s1 = -1;
    0x00023a30 jalr t9                   |         t9 ();
    0x00023a34 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00023a38 b 0x238e0                 |         goto label_4;
                                         | label_8:
    0x00023a3c lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x00023a40 lw t9, -0x7e50(gp)        |         t9 = sym.imp.printf;
    0x00023a44 move a1, s6               |         a1 = s6;
                                         |         /* str.ERROR:_serch_the__s_token_failed_n */
    0x00023a48 addiu a0, a0, -0x4aec     |         a0 += -0x4aec;
    0x00023a4c jalr t9                   |         t9 ();
    0x00023a50 addiu s1, zero, -1        |         s1 = -1;
    0x00023a54 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00023a58 b 0x238d0                 |         goto label_3;
                                         |     }
    0x00023a5c lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00023a60 lw a1, -0x7fcc(gp)        |     a1 = *(gp);
    0x00023a64 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf;
                                         |     /* str.ERROR:_temp_buffer_malloc_failed__s___d_n */
    0x00023a68 addiu a0, a0, -0x4ac8     |     a0 += -0x4ac8;
                                         |     /* obj.__func__.3806 */
    0x00023a6c addiu a1, a1, -0x495c     |     a1 += -0x495c;
    0x00023a70 addiu a2, zero, 0x88      |     a2 = 0x88;
    0x00023a74 jalr t9                   |     t9 ();
    0x00023a78 addiu s1, zero, -1        |     s1 = -1;
    0x00023a7c lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023a80 b 0x238d0                 |     goto label_3;
                                         | label_5:
    0x00023a84 lw t9, -0x723c(gp)        |     t9 = sym.imp.__errno_location;
    0x00023a88 addiu s1, zero, -1        |     s1 = -1;
    0x00023a8c jalr t9                   |     t9 ();
    0x00023a90 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023a94 lw t9, -0x7e2c(gp)        |     t9 = sym.imp.strerror;
    0x00023a98 lw a0, (v0)               |     a0 = *(v0);
    0x00023a9c jalr t9                   |     t9 ();
    0x00023aa0 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023aa4 move a1, s4               |     a1 = s4;
    0x00023aa8 move a2, v0               |     a2 = v0;
    0x00023aac lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00023ab0 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf;
                                         |     /* esilref: 'fopen error file &s: &s
' */
    0x00023ab4 addiu a0, a0, -0x4b5c     |     a0 += -0x4b5c;
    0x00023ab8 jalr t9                   |     t9 ();
    0x00023abc lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023ac0 b 0x238e0                 |     goto label_4;
                                         | label_7:
    0x00023ac4 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00023ac8 lw t9, -0x7e94(gp)        |     t9 = *(gp);
    0x00023acc addiu s1, zero, -1        |     s1 = -1;
                                         |     /* str.ERROR:_file_buffer_malloc_failed */
    0x00023ad0 addiu a0, a0, -0x4b14     |     a0 += -0x4b14;
    0x00023ad4 jalr t9                   |     t9 ();
    0x00023ad8 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023adc lw t9, -0x774c(gp)        |     t9 = sym.imp.fclose;
    0x00023ae0 move a0, s0               |     a0 = s0;
    0x00023ae4 jalr t9                   |     t9 ();
    0x00023ae8 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00023aec b 0x238e0                 |     goto label_4;
                                         | }

[*] Function strcpy used 5 times libaudioProcess.so