[*] Binary protection state of libaudioProcess.so

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


[*] Function printf tear down of libaudioProcess.so

    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x4aa58 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ProcessBlock ()                  | void ProcessBlock () {
    0x0004aa58 lui gp, 5                         |     
    0x0004aa5c addiu gp, gp, -0x1058             |     
    0x0004aa60 addu gp, gp, t9                   |     gp += t9;
    0x0004aa64 addiu sp, sp, -0x1f48             |     
    0x0004aa68 sw s4, 0x1f20(sp)                 |     *(var_1f20h) = s4;
    0x0004aa6c lui s4, 1                         |     s4 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004aa70 addu s4, a0, s4                   |     s4 = a0 + s4;
    0x0004aa74 lw v0, -0x7b7c(s4)                |     v0 = *((s4 - 7903));
    0x0004aa78 sw s0, 0x1f10(sp)                 |     *(var_1f10h) = s0;
    0x0004aa7c move s0, a0                       |     s0 = a0;
    0x0004aa80 sll a1, v0, 2                     |     a1 = v0 << 2;
    0x0004aa84 sll a2, v0, 7                     |     a2 = v0 << 7;
    0x0004aa88 subu a1, a2, a1                   |     __asm ("subu a1, a2, a1");
    0x0004aa8c addu v0, a1, v0                   |     v0 = a1 + v0;
    0x0004aa90 sll v0, v0, 2                     |     v0 <<= 2;
    0x0004aa94 sw v0, 0x1ee8(sp)                 |     *(var_1ee8h) = v0;
    0x0004aa98 lw a0, -0x7b74(s4)                |     a0 = *((s4 - 7901));
    0x0004aa9c addiu v0, sp, 0x1058              |     v0 = sp + 0x1058;
    0x0004aaa0 sw v0, 0x1ed0(sp)                 |     *(var_1ed0h) = v0;
    0x0004aaa4 addiu v0, sp, 0x1158              |     v0 = sp + 0x1158;
    0x0004aaa8 sw gp, 0x18(sp)                   |     *(var_18h) = gp;
    0x0004aaac sw v0, 0x1ed4(sp)                 |     *(var_1ed4h) = v0;
    0x0004aab0 addiu v0, zero, 1                 |     v0 = 1;
    0x0004aab4 sw ra, 0x1f34(sp)                 |     *(var_1f34h) = ra;
    0x0004aab8 sw fp, 0x1f30(sp)                 |     *(var_1f30h) = fp;
    0x0004aabc sw s7, 0x1f2c(sp)                 |     *(var_1f2ch) = s7;
    0x0004aac0 sw s6, 0x1f28(sp)                 |     *(var_1f28h) = s6;
    0x0004aac4 sw s5, 0x1f24(sp)                 |     *(var_1f24h) = s5;
    0x0004aac8 sw s3, 0x1f1c(sp)                 |     *(var_1f1ch) = s3;
    0x0004aacc sw s2, 0x1f18(sp)                 |     *(var_1f18h) = s2;
    0x0004aad0 sw s1, 0x1f14(sp)                 |     *(var_1f14h) = s1;
    0x0004aad4 sdc1 f22, 0x1f40(sp)              |     __asm ("sdc1 f22, aav.0x00001f40(sp)");
    0x0004aad8 sdc1 f20, 0x1f38(sp)              |     __asm ("sdc1 f20, 0x1f38(sp)");
    0x0004aadc sw zero, 0x1ee0(sp)               |     *(var_1ee0h) = 0;
    0x0004aae0 sw zero, 0x1edc(sp)               |     *(var_1edch) = 0;
                                                 |     if (a0 == v0) {
    0x0004aae4 beq a0, v0, 0x4af2c               |         goto label_17;
                                                 |     }
    0x0004aae8 move s3, s0                       |     s3 = s0;
    0x0004aaec move s6, zero                     |     s6 = 0;
    0x0004aaf0 addiu s2, sp, 0x1ee0              |     s2 = sp + 0x1ee0;
    0x0004aaf4 addiu s1, sp, 0x1b70              |     s1 = sp + 0x1b70;
                                                 | label_0:
    0x0004aaf8 lw t9, -0x7f04(gp)                |     t9 = sym.WebRtc_ReadBuffer;
    0x0004aafc lw a0, 0x50(s3)                   |     a0 = *((s3 + 20));
    0x0004ab00 move a1, s2                       |     a1 = s2;
    0x0004ab04 move a2, s1                       |     a2 = s1;
    0x0004ab08 addiu a3, zero, 0x40              |     a3 = 0x40;
    0x0004ab0c jalr t9                           |     t9 ();
    0x0004ab10 lw a0, 0x1ee0(sp)                 |     a0 = *(var_1ee0h);
    0x0004ab14 sll v0, s6, 9                     |     v0 = s6 << 9;
    0x0004ab18 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004ab1c addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004ab20 addiu v0, v0, 0x560               |     v0 += aav.0x00000560;
    0x0004ab24 addiu t1, a0, 0x100               |     t1 = a0 + aav.0x00000100;
                                                 |     do {
    0x0004ab28 lwl t0, 3(a0)                     |         __asm ("lwl t0, 3(a0)");
    0x0004ab2c lwl a3, 7(a0)                     |         __asm ("lwl a3, 7(a0)");
    0x0004ab30 lwl a2, 0xb(a0)                   |         __asm ("lwl a2, 0xb(a0)");
    0x0004ab34 lwl a1, 0xf(a0)                   |         __asm ("lwl a1, 0xf(a0)");
    0x0004ab38 lwr t0, (a0)                      |         __asm ("lwr t0, (a0)");
    0x0004ab3c lwr a3, 4(a0)                     |         __asm ("lwr a3, 4(a0)");
    0x0004ab40 lwr a2, 8(a0)                     |         __asm ("lwr a2, 8(a0)");
    0x0004ab44 lwr a1, 0xc(a0)                   |         __asm ("lwr a1, 0xc(a0)");
    0x0004ab48 swl t0, 3(v0)                     |         __asm ("swl t0, 3(v0)");
    0x0004ab4c swr t0, (v0)                      |         __asm ("swr t0, (v0)");
    0x0004ab50 swl a3, 7(v0)                     |         __asm ("swl a3, 7(v0)");
    0x0004ab54 swr a3, 4(v0)                     |         __asm ("swr a3, 4(v0)");
    0x0004ab58 swl a2, 0xb(v0)                   |         __asm ("swl a2, 0xb(v0)");
    0x0004ab5c swr a2, 8(v0)                     |         __asm ("swr a2, 8(v0)");
    0x0004ab60 addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004ab64 swl a1, 0xf(v0)                   |         __asm ("swl a1, 0xf(v0)");
    0x0004ab68 swr a1, 0xc(v0)                   |         __asm ("swr a1, 0xc(v0)");
    0x0004ab6c addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004ab70 bne a0, t1, 0x4ab28               |         
                                                 |     } while (a0 != t1);
    0x0004ab74 lw v0, -0x7b74(s4)                |     v0 = *((s4 - 7901));
    0x0004ab78 addiu s6, s6, 1                   |     s6++;
    0x0004ab7c addiu v0, v0, -1                  |     v0 += -1;
    0x0004ab80 sltu v0, s6, v0                   |     v0 = (s6 < v0) ? 1 : 0;
    0x0004ab84 addiu s3, s3, 4                   |     s3 += 4;
                                                 |     if (v0 != 0) {
    0x0004ab88 bnez v0, 0x4aaf8                  |         goto label_0;
                                                 |     }
                                                 | label_1:
    0x0004ab8c lw t9, -0x7f04(gp)                |     t9 = sym.WebRtc_ReadBuffer;
    0x0004ab90 lw a0, 0x48(s0)                   |     a0 = *((s0 + 18));
    0x0004ab94 move a1, s2                       |     a1 = s2;
    0x0004ab98 move a2, s1                       |     a2 = s1;
    0x0004ab9c addiu a3, zero, 0x40              |     a3 = 0x40;
    0x0004aba0 jalr t9                           |     t9 ();
    0x0004aba4 lw a0, 0x1ee0(sp)                 |     a0 = *(var_1ee0h);
    0x0004aba8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004abac addiu v1, s0, 0x160               |     v1 = s0 + aav.0x00000160;
    0x0004abb0 sw v1, 0x1eec(sp)                 |     *(var_1eech) = v1;
    0x0004abb4 move v0, v1                       |     v0 = v1;
    0x0004abb8 addiu t1, a0, 0x100               |     t1 = a0 + aav.0x00000100;
                                                 |     do {
    0x0004abbc lwl t0, 3(a0)                     |         __asm ("lwl t0, 3(a0)");
    0x0004abc0 lwl a3, 7(a0)                     |         __asm ("lwl a3, 7(a0)");
    0x0004abc4 lwl a2, 0xb(a0)                   |         __asm ("lwl a2, 0xb(a0)");
    0x0004abc8 lwl a1, 0xf(a0)                   |         __asm ("lwl a1, 0xf(a0)");
    0x0004abcc lwr t0, (a0)                      |         __asm ("lwr t0, (a0)");
    0x0004abd0 lwr a3, 4(a0)                     |         __asm ("lwr a3, 4(a0)");
    0x0004abd4 lwr a2, 8(a0)                     |         __asm ("lwr a2, 8(a0)");
    0x0004abd8 lwr a1, 0xc(a0)                   |         __asm ("lwr a1, 0xc(a0)");
    0x0004abdc swl t0, 3(v0)                     |         __asm ("swl t0, 3(v0)");
    0x0004abe0 swr t0, (v0)                      |         __asm ("swr t0, (v0)");
    0x0004abe4 swl a3, 7(v0)                     |         __asm ("swl a3, 7(v0)");
    0x0004abe8 swr a3, 4(v0)                     |         __asm ("swr a3, 4(v0)");
    0x0004abec swl a2, 0xb(v0)                   |         __asm ("swl a2, 0xb(v0)");
    0x0004abf0 swr a2, 8(v0)                     |         __asm ("swr a2, 8(v0)");
    0x0004abf4 addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004abf8 swl a1, 0xf(v0)                   |         __asm ("swl a1, 0xf(v0)");
    0x0004abfc swr a1, 0xc(v0)                   |         __asm ("swr a1, 0xc(v0)");
    0x0004ac00 addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004ac04 bne a0, t1, 0x4abbc               |         
                                                 |     } while (a0 != t1);
    0x0004ac08 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004ac0c addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004ac10 lw t9, -0x7f04(gp)                |     t9 = sym.WebRtc_ReadBuffer;
    0x0004ac14 lw a0, -0x7b88(v0)                |     a0 = *((v0 - 7906));
    0x0004ac18 addiu v1, s0, 0x60                |     v1 = s0 + 0x60;
    0x0004ac1c addiu a1, sp, 0x1edc              |     a1 = sp + 0x1edc;
    0x0004ac20 addiu a2, sp, 0xc50               |     a2 = sp + 0xc50;
    0x0004ac24 addiu a3, zero, 1                 |     a3 = 1;
    0x0004ac28 sw v1, 0x1ef4(sp)                 |     *(var_1ef4h) = v1;
    0x0004ac2c jalr t9                           |     t9 ();
    0x0004ac30 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004ac34 lw v0, 0x1ef4(sp)                 |     v0 = *(var_1ef4h);
    0x0004ac38 addiu t9, s0, 0x260               |     t9 = s0 + aav.0x00000260;
    0x0004ac3c sw t9, 0x1ef8(sp)                 |     *(var_1ef8h) = t9;
    0x0004ac40 addiu a0, sp, 0x1258              |     a0 = sp + 0x1258;
                                                 |     do {
    0x0004ac44 lw t0, (v0)                       |         t0 = *(v0);
    0x0004ac48 lw a3, 4(v0)                      |         a3 = *((v0 + 1));
    0x0004ac4c lw a2, 8(v0)                      |         a2 = *((v0 + 2));
    0x0004ac50 lw a1, 0xc(v0)                    |         a1 = *((v0 + 3));
    0x0004ac54 sw t0, (a0)                       |         *(a0) = t0;
    0x0004ac58 sw a3, 4(a0)                      |         *(var_125ch) = a3;
    0x0004ac5c sw a2, 8(a0)                      |         *(var_1260h) = a2;
    0x0004ac60 sw a1, 0xc(a0)                    |         *(var_ch) = a1;
    0x0004ac64 lw v1, 0x1ef8(sp)                 |         v1 = *(var_1ef8h);
    0x0004ac68 addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004ac6c addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004ac70 bne v1, v0, 0x4ac44               |         
                                                 |     } while (v1 != v0);
    0x0004ac74 lw t9, -0x7fc0(gp)                |     t9 = *(gp);
    0x0004ac78 addiu a0, sp, 0x1258              |     a0 = sp + 0x1258;
    0x0004ac7c addiu a1, sp, 0x638               |     a1 = sp + aav.0x00000638;
                                                 |     /* sym.TimeToFrequency.isra.0 */
    0x0004ac80 addiu t9, t9, -0x5680             |     t9 += -aav.0x00005680;
    0x0004ac84 move a2, zero                     |     a2 = 0;
    0x0004ac88 bal 0x4a980                       |     sym_TimeToFrequency_isra_0 ();
    0x0004ac8c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004ac90 addiu s3, s0, 0x860               |     s3 = s0 + 0x860;
    0x0004ac94 addiu s6, sp, 0x638               |     s6 = sp + aav.0x00000638;
    0x0004ac98 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004ac9c lw s7, -0x7fcc(gp)                |     s7 = *(gp);
    0x0004aca0 lw s5, -0x7fcc(gp)                |     s5 = *(gp);
    0x0004aca4 lwc1 f22, 0x5394(v0)              |     __asm ("lwc1 f22, aav.0x00005394(v0)");
    0x0004aca8 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004acac addiu s1, sp, 0x196c              |     s1 = sp + aav.0x0000196c;
    0x0004acb0 move s2, zero                     |     s2 = 0;
    0x0004acb4 lwc1 f23, 0x5398(v0)              |     __asm ("lwc1 f23, 0x5398(v0)");
    0x0004acb8 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004acbc addiu s4, sp, 0x1868              |     s4 = sp + 0x1868;
    0x0004acc0 addiu fp, sp, 0x1764              |     fp = sp + 0x1764;
    0x0004acc4 lwc1 f21, 0x5388(v0)              |     __asm ("lwc1 f21, aav.0x00005388(v0)");
    0x0004acc8 lw a0, 0x1edc(sp)                 |     a0 = *(var_1edch);
                                                 |     do {
    0x0004accc addu a0, a0, s2                   |         a0 += s2;
    0x0004acd0 lwc1 f0, 0x104(a0)                |         __asm ("lwc1 f0, aav.0x00000104(a0)");
    0x0004acd4 lwc1 f20, (a0)                    |         __asm ("lwc1 f20, (a0)");
    0x0004acd8 mul.s f0, f0, f0                  |         __asm ("mul.s f0, f0, f0");
    0x0004acdc madd.s f20, f0, f20, f20          |         __asm ("madd.s f20, f0, f20, f20");
    0x0004ace0 c.lt.s f22, f20                   |         __asm ("c.lt.s f22, f20");
    0x0004ace4 bc1f 0x4acf8                      |         __asm ("bc1f 0x4acf8");
    0x0004ace8 nop                               |         
    0x0004acec c.lt.s f20, f23                   |         __asm ("c.lt.s f20, f23");
    0x0004acf0 bc1t 0x4af38                      |         __asm ("bc1t 0x4af38");
    0x0004acf4 lw t9, -0x7fcc(gp)                |         t9 = *(gp);
    0x0004acf8 sw zero, (s1)                     |         *(s1) = 0;
    0x0004acfc sqrt.s f0, f20                    |         __asm ("sqrt.s f0, f20");
    0x0004ad00 lui a0, 1                         |         a0 = 0x10000;
                                                 |         /* aav.0x00010000 */
    0x0004ad04 addu a0, s0, a0                   |         a0 = s0 + a0;
    0x0004ad08 lw a0, -0x7818(a0)                |         a0 = *((a0 - 7686));
    0x0004ad0c lwc1 f2, 0x53a0(s5)               |         __asm ("lwc1 f2, 0x53a0(s5)");
    0x0004ad10 lwc1 f3, (s3)                     |         __asm ("lwc1 f3, (s3)");
    0x0004ad14 mtc1 a0, f4                       |         __asm ("mtc1 a0, f4");
    0x0004ad18 addiu s1, s1, 4                   |         s1 += 4;
    0x0004ad1c cvt.s.w f1, f4                    |         __asm ("cvt.s.w f1, f4");
    0x0004ad20 mul.s f1, f1, f2                  |         __asm ("mul.s f1, f1, f2");
    0x0004ad24 lwc1 f2, 0x539c(s7)               |         __asm ("lwc1 f2, 0x539c(s7)");
    0x0004ad28 mul.s f1, f1, f20                 |         __asm ("mul.s f1, f1, f20");
    0x0004ad2c madd.s f1, f1, f3, f2             |         __asm ("madd.s f1, f1, f3, f2");
    0x0004ad30 c.eq.s f0, f0                     |         __asm ("c.eq.s f0, f0");
    0x0004ad34 bc1f 0x4c450                      |         __asm ("bc1f 0x4c450");
    0x0004ad38 swc1 f1, (s3)                     |         __asm ("swc1 f1, (s3)");
    0x0004ad3c lwc1 f1, 0x104(s6)                |         __asm ("lwc1 f1, (var_104h)");
    0x0004ad40 lwc1 f12, (s6)                    |         __asm ("lwc1 f12, (s6)");
    0x0004ad44 swxc1 f0, s4(s2)                  |         __asm ("swxc1 f0, s4(s2)");
    0x0004ad48 mul.s f1, f1, f1                  |         __asm ("mul.s f1, f1, f1");
    0x0004ad4c lwc1 f4, 0x53a0(s5)               |         __asm ("lwc1 f4, 0x53a0(s5)");
    0x0004ad50 lwc1 f2, 0x104(s3)                |         __asm ("lwc1 f2, aav.0x00000104(s3)");
    0x0004ad54 lwc1 f3, 0x539c(s7)               |         __asm ("lwc1 f3, 0x539c(s7)");
    0x0004ad58 addiu s6, s6, 4                   |         s6 += 4;
    0x0004ad5c addiu s3, s3, 4                   |         s3 += 4;
    0x0004ad60 madd.s f12, f1, f12, f12          |         __asm ("madd.s f12, f1, f12, f12");
    0x0004ad64 sqrt.s f0, f12                    |         __asm ("sqrt.s f0, f12");
    0x0004ad68 mul.s f1, f12, f4                 |         __asm ("mul.s f1, f12, f4");
    0x0004ad6c madd.s f2, f1, f2, f3             |         __asm ("madd.s f2, f1, f2, f3");
    0x0004ad70 c.eq.s f0, f0                     |         __asm ("c.eq.s f0, f0");
    0x0004ad74 bc1f 0x4c43c                      |         __asm ("bc1f 0x4c43c");
    0x0004ad78 swc1 f2, 0x100(s3)                |         __asm ("swc1 f2, aav.0x00000100(s3)");
    0x0004ad7c swxc1 f0, fp(s2)                  |         __asm ("swxc1 f0, fp(s2)");
    0x0004ad80 addiu a0, zero, 0x104             |         a0 = aav.0x00000104;
    0x0004ad84 addiu s2, s2, 4                   |         s2 += 4;
    0x0004ad88 lw a0, 0x1edc(sp)                 |         a0 = *(var_1edch);
    0x0004ad8c bne s2, a0, 0x4accc               |         
                                                 |     } while (s2 != a0);
    0x0004ad90 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004ad94 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004ad98 lw t0, -0x7b64(v0)                |     t0 = *((v0 - 7897));
    0x0004ad9c slti v0, t0, 0x33                 |     v0 = (t0 < 0x33) ? 1 : 0;
    0x0004ada0 lw v1, 0x1ee8(sp)                 |     v1 = *(var_1ee8h);
                                                 |     if (v0 != 0) {
    0x0004ada4 bnez v0, 0x4ae08                  |         goto label_18;
                                                 |     }
    0x0004ada8 lw a0, -0x7fcc(gp)                |     a0 = *(gp);
    0x0004adac lwc1 f4, 0x53a0(s5)               |     __asm ("lwc1 f4, 0x53a0(s5)");
    0x0004adb0 addiu v0, s0, 0xa68               |     v0 = s0 + 0xa68;
    0x0004adb4 lwc1 f2, 0x53a4(a0)               |     __asm ("lwc1 f2, aav.0x000053a4(a0)");
    0x0004adb8 addiu a2, zero, 0x41              |     a2 = 0x41;
    0x0004adbc move a0, zero                     |     a0 = 0;
    0x0004adc0 mov.s f3, f2                      |     __asm ("mov.s f3, f2");
    0x0004adc4 b 0x4ade0                         |     
                                                 |     while (a0 != a2) {
    0x0004ade0 lwc1 f0, (v0)                     |         __asm ("lwc1 f0, (v0)");
    0x0004ade4 lwc1 f1, -0x104(v0)               |         __asm ("lwc1 f1, -aav.0x00000104(v0)");
    0x0004ade8 c.lt.s f1, f0                     |         __asm ("c.lt.s f1, f0");
    0x0004adec bc1t 0x4adc8                      |         __asm ("bc1t 0x4adc8");
    0x0004adf0 addiu a0, a0, 1                   |         a0++;
    0x0004adf4 mul.s f0, f0, f2                  |         __asm ("mul.s f0, f0, f2");
    0x0004adf8 addiu v0, v0, 4                   |         v0 += 4;
    0x0004adfc swc1 f0, -4(v0)                   |         __asm ("swc1 f0, -4(v0)");
    0x0004ae00 bne a0, a2, 0x4ade0               |         
                                                 |     }
    0x0004ae04 lw v1, 0x1ee8(sp)                 |     v1 = *(var_1ee8h);
                                                 | label_18:
    0x0004ae08 slt s5, t0, v1                    |     s5 = (t0 < v1) ? 1 : 0;
    0x0004ae0c lui s2, 1                         |     s2 = 0x10000;
                                                 |     if (s5 == 0) {
    0x0004ae10 beqz s5, 0x4af60                  |         goto label_19;
                                                 |     }
    0x0004ae14 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004ae18 addiu t0, t0, 1                   |     t0++;
    0x0004ae1c addiu t1, s0, 0xb6c               |     t1 = s0 + 0xb6c;
    0x0004ae20 lwc1 f3, 0x53a8(v0)               |     __asm ("lwc1 f3, 0x53a8(v0)");
    0x0004ae24 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004ae28 move a0, zero                     |     a0 = 0;
    0x0004ae2c addiu a2, zero, 0x41              |     a2 = 0x41;
    0x0004ae30 lwc1 f2, 0x53ac(v0)               |     __asm ("lwc1 f2, 0x53ac(v0)");
    0x0004ae34 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004ae38 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004ae3c sw t0, -0x7b64(v0)                |     *((v0 - 7897)) = t0;
    0x0004ae40 move v0, t1                       |     v0 = t1;
    0x0004ae44 b 0x4ae5c                         |     
                                                 |     while (a0 != a2) {
    0x0004ae5c lwc1 f1, (v0)                     |         __asm ("lwc1 f1, (v0)");
    0x0004ae60 lwc1 f0, -0x104(v0)               |         __asm ("lwc1 f0, -aav.0x00000104(v0)");
    0x0004ae64 c.lt.s f1, f0                     |         __asm ("c.lt.s f1, f0");
    0x0004ae68 bc1t 0x4ae48                      |         __asm ("bc1t 0x4ae48");
    0x0004ae6c addiu a0, a0, 1                   |         a0++;
    0x0004ae70 swc1 f0, (v0)                     |         __asm ("swc1 f0, (v0)");
    0x0004ae74 addiu v0, v0, 4                   |         v0 += 4;
    0x0004ae78 bne a0, a2, 0x4ae5c               |         
                                                 |     }
    0x0004ae7c lui s2, 1                         |     s2 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004ae80 addu s2, s0, s2                   |     s2 = s0 + s2;
    0x0004ae84 lw v0, -0x7844(s2)                |     v0 = *((s2 - 7697));
    0x0004ae88 sw t1, 0xc70(s0)                  |     *((s0 + 796)) = t1;
                                                 |     if (v0 == 0) {
    0x0004ae8c beqz v0, 0x4af78                  |         goto label_20;
                                                 |     }
    0x0004ae90 lw t9, -0x7f58(gp)                |     t9 = sym.WebRtc_AddFarSpectrumFloat;
                                                 |     do {
    0x0004ae94 lw a0, -0x7840(s2)                |         a0 = *((s2 - 7696));
    0x0004ae98 move a1, s4                       |         a1 = s4;
    0x0004ae9c addiu a2, zero, 0x41              |         a2 = 0x41;
    0x0004aea0 jalr t9                           |         t9 ();
    0x0004aea4 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v0 != 0) {
    0x0004aea8 bnez v0, 0x4af78                  |             goto label_20;
                                                 |         }
    0x0004aeac lw t9, -0x7f68(gp)                |         t9 = *(gp);
    0x0004aeb0 lw a0, -0x783c(s2)                |         a0 = *(s2);
    0x0004aeb4 move a1, fp                       |         a1 = fp;
    0x0004aeb8 addiu a2, zero, 0x41              |         a2 = 0x41;
    0x0004aebc jalr t9                           |         t9 ();
    0x0004aec0 lw gp, 0x18(sp)                   |         gp = *(var_18h);
                                                 |         if (v0 >= 0) {
    0x0004aec4 bltz v0, 0x4aeec                  |             
    0x0004aec8 addiu v0, v0, 0x216e              |             v0 += 0x216e;
    0x0004aecc sll v0, v0, 2                     |             v0 <<= 2;
    0x0004aed0 addu v0, s0, v0                   |             v0 = s0 + v0;
    0x0004aed4 lw a1, (v0)                       |             a1 = *(v0);
    0x0004aed8 lw a0, -0x7854(s2)                |             a0 = *((s2 - 7701));
    0x0004aedc addiu a1, a1, 1                   |             a1++;
    0x0004aee0 addiu a0, a0, 1                   |             a0++;
    0x0004aee4 sw a1, (v0)                       |             *(v0) = a1;
    0x0004aee8 sw a0, -0x7854(s2)                |             *((s2 - 7701)) = a0;
                                                 |         }
    0x0004aeec lui v0, 1                         |         v0 = 0x10000;
                                                 |         /* aav.0x00010000 */
    0x0004aef0 addu v0, s0, v0                   |         v0 = s0 + v0;
    0x0004aef4 lw a1, -0x7a4c(v0)                |         a1 = *((v0 - 7827));
    0x0004aef8 addiu a0, zero, 1                 |         a0 = 1;
    0x0004aefc lui a0, 1                         |         a0 = 0x10000;
                                                 |         if (a1 != a0) {
    0x0004af00 bne a1, a0, 0x4af7c               |             goto label_21;
                                                 |         }
    0x0004af04 lw v0, -0x7854(v0)                |         v0 = *((v0 - 7701));
    0x0004af08 slti v0, v0, 0x4e2                |         v0 = (v0 < 0x4e2) ? 1 : 0;
                                                 |         /* aav.0x00010000 */
    0x0004af0c addu a0, s0, a0                   |         a0 = s0 + a0;
                                                 |         if (v0 != 0) {
    0x0004af10 bnez v0, 0x4af80                  |             goto label_22;
                                                 |         }
    0x0004af14 lw t9, -0x7fc0(gp)                |         t9 = *(gp);
                                                 |         /* sym.UpdateDelayMetrics */
    0x0004af18 addiu t9, t9, -0x62e8             |         t9 += -0x62e8;
    0x0004af1c move a0, s0                       |         a0 = s0;
    0x0004af20 bal 0x49d18                       |         sym_UpdateDelayMetrics ();
    0x0004af24 lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0004af28 b 0x4af78                         |         goto label_20;
                                                 | label_17:
    0x0004af2c addiu s2, sp, 0x1ee0              |         s2 = sp + 0x1ee0;
    0x0004af30 addiu s1, sp, 0x1b70              |         s1 = sp + 0x1b70;
    0x0004af34 b 0x4ab8c                         |         goto label_1;
                                                 | label_19:
    0x0004af60 addiu v0, s0, 0xa68               |         v0 = s0 + 0xa68;
                                                 |         /* aav.0x00010000 */
    0x0004af64 addu s2, s0, s2                   |         s2 = s0 + s2;
    0x0004af68 sw v0, 0xc70(s0)                  |         *((s0 + 796)) = v0;
    0x0004af6c lw v0, -0x7844(s2)                |         v0 = *((s2 - 7697));
    0x0004af70 lw t9, -0x7f58(gp)                |         t9 = sym.WebRtc_AddFarSpectrumFloat;
    0x0004af74 bnez v0, 0x4ae94                  |         
                                                 |     } while (v0 != 0);
                                                 | label_20:
    0x0004af78 lui a0, 1                         |     a0 = 0x10000;
                                                 |     /* aav.0x00010000 */
                                                 | label_21:
    0x0004af7c addu a0, s0, a0                   |     a0 = s0 + a0;
                                                 | label_22:
    0x0004af80 lw v0, -0x7b8c(a0)                |     v0 = *((a0 - 7907));
    0x0004af84 addiu a1, zero, -1                |     a1 = -1;
    0x0004af88 addiu v0, v0, -1                  |     v0 += -1;
    0x0004af8c sw v0, -0x7b8c(a0)                |     *((a0 - 7907)) = v0;
                                                 |     if (v0 == a1) {
    0x0004af90 beq v0, a1, 0x4bca0               |         goto label_23;
                                                 |     }
                                                 | label_2:
    0x0004af94 lw t1, 0x1edc(sp)                 |     t1 = *(var_1edch);
    0x0004af98 sll a0, v0, 8                     |     a0 = v0 << 8;
    0x0004af9c sll a1, v0, 2                     |     a1 = v0 << 2;
    0x0004afa0 addu a1, a1, a0                   |     a1 += a0;
    0x0004afa4 addiu v0, s0, 0xc74               |     v0 = s0 + 0xc74;
    0x0004afa8 move a0, t1                       |     a0 = t1;
    0x0004afac addu v0, v0, a1                   |     v0 += a1;
    0x0004afb0 addiu t2, t1, 0x100               |     t2 = t1 + aav.0x00000100;
                                                 |     do {
    0x0004afb4 lwl t0, 3(a0)                     |         __asm ("lwl t0, 3(a0)");
    0x0004afb8 lwl a3, 7(a0)                     |         __asm ("lwl a3, 7(a0)");
    0x0004afbc lwl a2, 0xb(a0)                   |         __asm ("lwl a2, 0xb(a0)");
    0x0004afc0 lwl a1, 0xf(a0)                   |         __asm ("lwl a1, 0xf(a0)");
    0x0004afc4 lwr t0, (a0)                      |         __asm ("lwr t0, (a0)");
    0x0004afc8 lwr a3, 4(a0)                     |         __asm ("lwr a3, 4(a0)");
    0x0004afcc lwr a2, 8(a0)                     |         __asm ("lwr a2, 8(a0)");
    0x0004afd0 lwr a1, 0xc(a0)                   |         __asm ("lwr a1, 0xc(a0)");
    0x0004afd4 swl t0, 3(v0)                     |         __asm ("swl t0, 3(v0)");
    0x0004afd8 swr t0, (v0)                      |         __asm ("swr t0, (v0)");
    0x0004afdc swl a3, 7(v0)                     |         __asm ("swl a3, 7(v0)");
    0x0004afe0 swr a3, 4(v0)                     |         __asm ("swr a3, 4(v0)");
    0x0004afe4 swl a2, 0xb(v0)                   |         __asm ("swl a2, 0xb(v0)");
    0x0004afe8 swr a2, 8(v0)                     |         __asm ("swr a2, 8(v0)");
    0x0004afec addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004aff0 swl a1, 0xf(v0)                   |         __asm ("swl a1, 0xf(v0)");
    0x0004aff4 swr a1, 0xc(v0)                   |         __asm ("swr a1, 0xc(v0)");
    0x0004aff8 addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004affc bne a0, t2, 0x4afb4               |         
                                                 |     } while (a0 != t2);
    0x0004b000 lwl a1, 3(a0)                     |     __asm ("lwl a1, 3(a0)");
    0x0004b004 lui a3, 1                         |     a3 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b008 addu a3, s0, a3                   |     a3 = s0 + a3;
    0x0004b00c lwr a1, (a0)                      |     __asm ("lwr a1, (a0)");
    0x0004b010 addiu a2, s0, 0x18a4              |     a2 = s0 + 0x18a4;
    0x0004b014 addiu a0, t1, 0x104               |     a0 = t1 + aav.0x00000104;
    0x0004b018 swl a1, 3(v0)                     |     __asm ("swl a1, 3(v0)");
    0x0004b01c swr a1, (v0)                      |     __asm ("swr a1, (v0)");
    0x0004b020 lw a1, -0x7b8c(a3)                |     a1 = *((a3 - 7907));
    0x0004b024 addiu t1, t1, 0x204               |     t1 += aav.0x00000204;
    0x0004b028 sll v0, a1, 2                     |     v0 = a1 << 2;
    0x0004b02c sll a1, a1, 8                     |     a1 <<= 8;
    0x0004b030 addu a1, v0, a1                   |     a1 = v0 + a1;
    0x0004b034 addu v0, a2, a1                   |     v0 = a2 + a1;
                                                 |     do {
    0x0004b038 lwl t0, 3(a0)                     |         __asm ("lwl t0, 3(a0)");
    0x0004b03c lwl a3, 7(a0)                     |         __asm ("lwl a3, 7(a0)");
    0x0004b040 lwl a2, 0xb(a0)                   |         __asm ("lwl a2, 0xb(a0)");
    0x0004b044 lwl a1, 0xf(a0)                   |         __asm ("lwl a1, 0xf(a0)");
    0x0004b048 lwr t0, (a0)                      |         __asm ("lwr t0, (a0)");
    0x0004b04c lwr a3, 4(a0)                     |         __asm ("lwr a3, 4(a0)");
    0x0004b050 lwr a2, 8(a0)                     |         __asm ("lwr a2, 8(a0)");
    0x0004b054 lwr a1, 0xc(a0)                   |         __asm ("lwr a1, 0xc(a0)");
    0x0004b058 swl t0, 3(v0)                     |         __asm ("swl t0, 3(v0)");
    0x0004b05c swr t0, (v0)                      |         __asm ("swr t0, (v0)");
    0x0004b060 swl a3, 7(v0)                     |         __asm ("swl a3, 7(v0)");
    0x0004b064 swr a3, 4(v0)                     |         __asm ("swr a3, 4(v0)");
    0x0004b068 swl a2, 0xb(v0)                   |         __asm ("swl a2, 0xb(v0)");
    0x0004b06c swr a2, 8(v0)                     |         __asm ("swr a2, 8(v0)");
    0x0004b070 addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004b074 swl a1, 0xf(v0)                   |         __asm ("swl a1, 0xf(v0)");
    0x0004b078 swr a1, 0xc(v0)                   |         __asm ("swr a1, 0xc(v0)");
    0x0004b07c addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004b080 bne a0, t1, 0x4b038               |         
                                                 |     } while (a0 != t1);
    0x0004b084 lwl a1, 3(a0)                     |     __asm ("lwl a1, 3(a0)");
    0x0004b088 lui a3, 1                         |     a3 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b08c addu a3, s0, a3                   |     a3 = s0 + a3;
    0x0004b090 lwr a1, (a0)                      |     __asm ("lwr a1, (a0)");
    0x0004b094 addiu a2, s0, 0x24d4              |     a2 = s0 + aav.0x000024d4;
    0x0004b098 addiu a0, sp, 0x196c              |     a0 = sp + aav.0x0000196c;
    0x0004b09c swl a1, 3(v0)                     |     __asm ("swl a1, 3(v0)");
    0x0004b0a0 swr a1, (v0)                      |     __asm ("swr a1, (v0)");
    0x0004b0a4 lw v0, -0x7b8c(a3)                |     v0 = *((a3 - 7907));
    0x0004b0a8 addiu t0, sp, 0x1a6c              |     t0 = sp + aav.0x00001a6c;
    0x0004b0ac sll a1, v0, 2                     |     a1 = v0 << 2;
    0x0004b0b0 sll v0, v0, 8                     |     v0 <<= 8;
    0x0004b0b4 addu v0, a1, v0                   |     v0 = a1 + v0;
    0x0004b0b8 addu v0, a2, v0                   |     v0 = a2 + v0;
                                                 |     do {
    0x0004b0bc lw a1, (a0)                       |         a1 = *(a0);
    0x0004b0c0 lw a3, 4(a0)                      |         a3 = *(var_4h);
    0x0004b0c4 lw a2, 8(a0)                      |         a2 = *(var_8h);
    0x0004b0c8 swl a1, 3(v0)                     |         __asm ("swl a1, 3(v0)");
    0x0004b0cc swr a1, (v0)                      |         __asm ("swr a1, (v0)");
    0x0004b0d0 lw a1, 0xc(a0)                    |         a1 = *(var_ch_2);
    0x0004b0d4 swl a3, 7(v0)                     |         __asm ("swl a3, 7(v0)");
    0x0004b0d8 swr a3, 4(v0)                     |         __asm ("swr a3, 4(v0)");
    0x0004b0dc swl a2, 0xb(v0)                   |         __asm ("swl a2, 0xb(v0)");
    0x0004b0e0 swr a2, 8(v0)                     |         __asm ("swr a2, 8(v0)");
    0x0004b0e4 swl a1, 0xf(v0)                   |         __asm ("swl a1, 0xf(v0)");
    0x0004b0e8 addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004b0ec swr a1, 0xc(v0)                   |         __asm ("swr a1, 0xc(v0)");
    0x0004b0f0 addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004b0f4 bne a0, t0, 0x4b0bc               |         
                                                 |     } while (a0 != t0);
    0x0004b0f8 lw a3, (a0)                       |     a3 = *(a0);
    0x0004b0fc lw t9, -0x7a54(gp)                |     t9 = sym.imp.memset;
    0x0004b100 addiu a0, sp, 0xa48               |     a0 = sp + 0xa48;
    0x0004b104 swl a3, 3(v0)                     |     __asm ("swl a3, 3(v0)");
    0x0004b108 move a1, zero                     |     a1 = 0;
    0x0004b10c addiu a2, zero, 0x208             |     a2 = aav.0x00000208;
    0x0004b110 swr a3, (v0)                      |     __asm ("swr a3, (v0)");
    0x0004b114 jalr t9                           |     t9 ();
    0x0004b118 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b11c move a0, s0                       |     a0 = s0;
    0x0004b120 addiu a1, sp, 0xa48               |     a1 = sp + 0xa48;
    0x0004b124 lw v0, -0x7398(gp)                |     v0 = *(gp);
    0x0004b128 lw t9, (v0)                       |     t9 = *(v0);
    0x0004b12c addiu s3, sp, 0x1260              |     s3 = sp + 0x1260;
    0x0004b130 jalr t9                           |     t9 ();
    0x0004b134 lwc1 f0, 0xa48(sp)                |     __asm ("lwc1 f0, (var_a48h)");
    0x0004b138 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b13c addiu v0, sp, 0xa4c               |     v0 = sp + 0xa4c;
    0x0004b140 swc1 f0, 0x1258(sp)               |     __asm ("swc1 f0, (var_1258h)");
    0x0004b144 lwc1 f0, 0xb48(sp)                |     __asm ("lwc1 f0, (var_b48h)");
    0x0004b148 addiu a1, sp, 0xb48               |     a1 = sp + 0xb48;
    0x0004b14c move a0, s3                       |     a0 = s3;
    0x0004b150 swc1 f0, 0x125c(sp)               |     __asm ("swc1 f0, (var_125ch)");
                                                 |     do {
    0x0004b154 lwc1 f1, (v0)                     |         __asm ("lwc1 f1, (v0)");
    0x0004b158 lwc1 f0, 0x104(v0)                |         __asm ("lwc1 f0, (var_104h_2)");
    0x0004b15c addiu v0, v0, 4                   |         v0 += 4;
    0x0004b160 swc1 f1, (a0)                     |         __asm ("swc1 f1, (a0)");
    0x0004b164 swc1 f0, 4(a0)                    |         __asm ("swc1 f0, 4(a0)");
    0x0004b168 addiu a0, a0, 8                   |         a0 += 8;
    0x0004b16c bne v0, a1, 0x4b154               |         
                                                 |     } while (v0 != a1);
    0x0004b170 lw t9, -0x7990(gp)                |     t9 = sym.aec_rdft_inverse_128;
    0x0004b174 lw s2, -0x7fcc(gp)                |     s2 = *(gp);
    0x0004b178 addiu a0, sp, 0x1258              |     a0 = sp + 0x1258;
    0x0004b17c jalr t9                           |     t9 ();
    0x0004b180 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b184 lwc1 f1, 0x537c(s2)               |     __asm ("lwc1 f1, 0x537c(s2)");
    0x0004b188 move v0, zero                     |     v0 = 0;
    0x0004b18c addiu s5, sp, 0x1d70              |     s5 = sp + aav.0x00001d70;
    0x0004b190 addiu a1, zero, 0x100             |     a1 = aav.0x00000100;
    0x0004b194 addiu t9, sp, 0x1258              |     t9 = sp + 0x1258;
    0x0004b198 addu a0, t9, v0                   |     a0 = t9 + v0;
                                                 |     do {
    0x0004b19c lwc1 f0, 0x100(a0)                |         __asm ("lwc1 f0, (var_1358h)");
    0x0004b1a0 mul.s f0, f0, f1                  |         __asm ("mul.s f0, f0, f1");
    0x0004b1a4 swxc1 f0, s5(v0)                  |         __asm ("swxc1 f0, s5(v0)");
    0x0004b1a8 addiu v0, v0, 4                   |         v0 += 4;
    0x0004b1ac addu a0, t9, v0                   |         a0 = t9 + v0;
    0x0004b1b0 bne v0, a1, 0x4b19c               |         
                                                 |     } while (v0 != a1);
    0x0004b1b4 lw a1, 0x1ee0(sp)                 |     a1 = *(var_1ee0h);
    0x0004b1b8 move v0, zero                     |     v0 = 0;
    0x0004b1bc addiu s6, sp, 0x1c70              |     s6 = sp + 0x1c70;
    0x0004b1c0 addiu a0, zero, 0x100             |     a0 = aav.0x00000100;
                                                 |     do {
    0x0004b1c4 lwxc1 f1, a1(v0)                  |         __asm ("lwxc1 f1, a1(v0)");
    0x0004b1c8 lwxc1 f0, s5(v0)                  |         __asm ("lwxc1 f0, s5(v0)");
    0x0004b1cc sub.s f0, f1, f0                  |         __asm ("sub.s f0, f1, f0");
    0x0004b1d0 swxc1 f0, s6(v0)                  |         __asm ("swxc1 f0, s6(v0)");
    0x0004b1d4 addiu v0, v0, 4                   |         v0 += 4;
    0x0004b1d8 addiu v1, s0, 0x360               |         v1 = s0 + aav.0x00000360;
    0x0004b1dc bne v0, a0, 0x4b1c4               |         
                                                 |     } while (v0 != a0);
    0x0004b1e0 sw v1, 0x1ef0(sp)                 |     *(var_1ef0h) = v1;
    0x0004b1e4 move v0, s6                       |     v0 = s6;
    0x0004b1e8 move a0, v1                       |     a0 = v1;
                                                 |     do {
    0x0004b1ec lw t1, (v0)                       |         t1 = *(v0);
    0x0004b1f0 lw t0, 4(v0)                      |         t0 = *(var_4h_4);
    0x0004b1f4 lw a2, 8(v0)                      |         a2 = *(var_8h_2);
    0x0004b1f8 lw a1, 0xc(v0)                    |         a1 = *(var_ch_3);
    0x0004b1fc addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004b200 sw t1, (a0)                       |         *(a0) = t1;
    0x0004b204 sw t0, 4(a0)                      |         *((a0 + 1)) = t0;
    0x0004b208 sw a2, 8(a0)                      |         *((a0 + 2)) = a2;
    0x0004b20c sw a1, 0xc(a0)                    |         *((a0 + 3)) = a1;
    0x0004b210 addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004b214 bne v0, s5, 0x4b1ec               |         
                                                 |     } while (v0 != s5);
    0x0004b218 lw t9, -0x7a54(gp)                |     t9 = sym.imp.memset;
    0x0004b21c addiu a0, sp, 0x1258              |     a0 = sp + 0x1258;
    0x0004b220 move a1, zero                     |     a1 = 0;
    0x0004b224 addiu a2, zero, 0x100             |     a2 = aav.0x00000100;
    0x0004b228 jalr t9                           |     t9 ();
    0x0004b22c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b230 move a3, s6                       |     a3 = s6;
    0x0004b234 addiu v0, sp, 0x1358              |     v0 = sp + 0x1358;
                                                 |     do {
    0x0004b238 lw t0, (a3)                       |         t0 = *(a3);
    0x0004b23c lw a2, 4(a3)                      |         a2 = *(var_4h_4);
    0x0004b240 lw a1, 8(a3)                      |         a1 = *(var_8h_2);
    0x0004b244 lw a0, 0xc(a3)                    |         a0 = *(var_ch_3);
    0x0004b248 addiu a3, a3, 0x10                |         a3 += 0x10;
    0x0004b24c sw t0, (v0)                       |         *(v0) = t0;
    0x0004b250 sw a2, 4(v0)                      |         *(var_4h_5) = a2;
    0x0004b254 sw a1, 8(v0)                      |         *(var_8h_3) = a1;
    0x0004b258 sw a0, 0xc(v0)                    |         *(var_ch_4) = a0;
    0x0004b25c addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004b260 bne a3, s5, 0x4b238               |         
                                                 |     } while (a3 != s5);
    0x0004b264 lw t9, -0x7bf8(gp)                |     t9 = sym.aec_rdft_forward_128;
    0x0004b268 addiu a0, sp, 0x1258              |     a0 = sp + 0x1258;
    0x0004b26c addiu s6, sp, 0x1458              |     s6 = sp + 0x1458;
    0x0004b270 jalr t9                           |     t9 ();
    0x0004b274 lwc1 f0, 0x1258(sp)               |     __asm ("lwc1 f0, (var_1258h)");
    0x0004b278 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b27c sw zero, 0x944(sp)                |     *(var_944h) = 0;
    0x0004b280 swc1 f0, 0x840(sp)                |     __asm ("swc1 f0, (var_840h)");
    0x0004b284 lwc1 f0, 0x125c(sp)               |     __asm ("lwc1 f0, (var_125ch)");
    0x0004b288 sw zero, 0xa44(sp)                |     *(var_a44h) = 0;
    0x0004b28c addiu v0, sp, 0x844               |     v0 = sp + 0x844;
    0x0004b290 swc1 f0, 0x940(sp)                |     __asm ("swc1 f0, (var_940h)");
                                                 |     do {
    0x0004b294 lwc1 f1, (s3)                     |         __asm ("lwc1 f1, (s3)");
    0x0004b298 lwc1 f0, 4(s3)                    |         __asm ("lwc1 f0, (var_ch)");
    0x0004b29c addiu s3, s3, 8                   |         s3 += 8;
    0x0004b2a0 swc1 f1, (v0)                     |         __asm ("swc1 f1, (v0)");
    0x0004b2a4 swc1 f0, 0x104(v0)                |         __asm ("swc1 f0, aav.0x00000104(v0)");
    0x0004b2a8 addiu v0, v0, 4                   |         v0 += 4;
    0x0004b2ac bne s6, s3, 0x4b294               |         
                                                 |     } while (s6 != s3);
    0x0004b2b0 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b2b4 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b2b8 lw a0, -0x7af0(v0)                |     a0 = *((v0 - 7868));
    0x0004b2bc addiu v0, zero, 1                 |     v0 = 1;
    0x0004b2c0 lw t9, -0x7fc0(gp)                |     t9 = *(gp);
                                                 |     if (a0 == v0) {
    0x0004b2c4 beq a0, v0, 0x4c358               |         goto label_24;
                                                 |     }
                                                 | label_13:
    0x0004b2c8 lw v0, -0x7a80(gp)                |     v0 = *(gp);
    0x0004b2cc move a0, s0                       |     a0 = s0;
    0x0004b2d0 addiu a1, sp, 0x840               |     a1 = sp + 0x840;
    0x0004b2d4 lw t9, (v0)                       |     t9 = *(v0);
    0x0004b2d8 addiu s3, zero, 0x18              |     s3 = 0x18;
    0x0004b2dc jalr t9                           |     t9 ();
    0x0004b2e0 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b2e4 move a0, s0                       |     a0 = s0;
    0x0004b2e8 addiu a1, sp, 0x1258              |     a1 = sp + 0x1258;
    0x0004b2ec lw v0, -0x71c4(gp)                |     v0 = *(gp);
    0x0004b2f0 lw t9, (v0)                       |     t9 = *(v0);
    0x0004b2f4 addiu a2, sp, 0x840               |     a2 = sp + 0x840;
    0x0004b2f8 jalr t9                           |     t9 ();
    0x0004b2fc lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b300 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b304 lw v0, -0x7b7c(v0)                |     v0 = *((v0 - 7903));
    0x0004b308 addiu t4, zero, 8                 |     t4 = 8;
    0x0004b30c lw a0, 0x14(s0)                   |     a0 = *((s0 + 5));
    0x0004b310 div zero, s3, v0                  |     __asm ("div zero, s3, v0");
    0x0004b314 teq v0, zero, 7                   |     __asm ("teq v0, zero, 7");
    0x0004b318 sll a2, v0, 1                     |     a2 = v0 << 1;
    0x0004b31c sll a1, v0, 3                     |     a1 = v0 << 3;
    0x0004b320 addiu a0, a0, 1                   |     a0++;
    0x0004b324 addu a1, a2, a1                   |     a1 = a2 + a1;
    0x0004b328 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b32c sw zero, 0x1ed8(sp)               |     *(var_1ed8h) = 0;
    0x0004b330 sw a0, 0x14(s0)                   |     *((s0 + 5)) = a0;
    0x0004b334 mflo s3                           |     __asm ("mflo s3");
    0x0004b338 div zero, t4, v0                  |     __asm ("div zero, t4, v0");
    0x0004b33c teq v0, zero, 7                   |     __asm ("teq v0, zero, 7");
    0x0004b340 mflo fp                           |     __asm ("mflo fp");
                                                 |     if (a1 == a0) {
    0x0004b344 beq a1, a0, 0x4c0dc               |         goto label_25;
                                                 |     }
                                                 | label_7:
    0x0004b348 lw t9, -0x7a54(gp)                |     t9 = sym.imp.memset;
    0x0004b34c addiu a0, sp, 0x20                |     a0 = sp + 0x20;
    0x0004b350 move a1, zero                     |     a1 = 0;
    0x0004b354 addiu a2, zero, 0x208             |     a2 = aav.0x00000208;
    0x0004b358 jalr t9                           |     t9 ();
    0x0004b35c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b360 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b364 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b368 lw a0, -0x7b84(v0)                |     a0 = *(v0);
    0x0004b36c lw t9, -0x7f04(gp)                |     t9 = sym.WebRtc_ReadBuffer;
    0x0004b370 addiu a1, sp, 0x1ed8              |     a1 = sp + 0x1ed8;
    0x0004b374 addiu a2, sp, 0x228               |     a2 = sp + aav.0x00000228;
    0x0004b378 addiu a3, zero, 1                 |     a3 = 1;
    0x0004b37c jalr t9                           |     t9 ();
    0x0004b380 lw a0, 0x1ed8(sp)                 |     a0 = *(var_1ed8h);
    0x0004b384 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b388 addiu v1, s0, 0x66d8              |     v1 = s0 + aav.0x000066d8;
    0x0004b38c sw v1, 0x1ee8(sp)                 |     *(var_1ee8h) = v1;
    0x0004b390 move v0, v1                       |     v0 = v1;
    0x0004b394 addiu t2, a0, 0x200               |     t2 = a0 + aav.0x00000200;
                                                 |     do {
    0x0004b398 lwl t1, 3(a0)                     |         __asm ("lwl t1, 3(a0)");
    0x0004b39c lwl a3, 7(a0)                     |         __asm ("lwl a3, 7(a0)");
    0x0004b3a0 lwl a2, 0xb(a0)                   |         __asm ("lwl a2, 0xb(a0)");
    0x0004b3a4 lwl a1, 0xf(a0)                   |         __asm ("lwl a1, 0xf(a0)");
    0x0004b3a8 lwr t1, (a0)                      |         __asm ("lwr t1, (a0)");
    0x0004b3ac lwr a3, 4(a0)                     |         __asm ("lwr a3, 4(a0)");
    0x0004b3b0 lwr a2, 8(a0)                     |         __asm ("lwr a2, 8(a0)");
    0x0004b3b4 lwr a1, 0xc(a0)                   |         __asm ("lwr a1, 0xc(a0)");
    0x0004b3b8 swl t1, 3(v0)                     |         __asm ("swl t1, 3(v0)");
    0x0004b3bc swr t1, (v0)                      |         __asm ("swr t1, (v0)");
    0x0004b3c0 swl a3, 7(v0)                     |         __asm ("swl a3, 7(v0)");
    0x0004b3c4 swr a3, 4(v0)                     |         __asm ("swr a3, 4(v0)");
    0x0004b3c8 swl a2, 0xb(v0)                   |         __asm ("swl a2, 0xb(v0)");
    0x0004b3cc swr a2, 8(v0)                     |         __asm ("swr a2, 8(v0)");
    0x0004b3d0 addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004b3d4 swl a1, 0xf(v0)                   |         __asm ("swl a1, 0xf(v0)");
    0x0004b3d8 swr a1, 0xc(v0)                   |         __asm ("swr a1, 0xc(v0)");
    0x0004b3dc addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004b3e0 bne a0, t2, 0x4b398               |         
                                                 |     } while (a0 != t2);
    0x0004b3e4 lwl a2, 3(a0)                     |     __asm ("lwl a2, 3(a0)");
    0x0004b3e8 lwl a1, 7(a0)                     |     __asm ("lwl a1, 7(a0)");
    0x0004b3ec addiu t2, sp, 0x1660              |     t2 = sp + 0x1660;
    0x0004b3f0 lwr a2, (a0)                      |     __asm ("lwr a2, (a0)");
    0x0004b3f4 lwr a1, 4(a0)                     |     __asm ("lwr a1, 4(a0)");
    0x0004b3f8 addiu t1, sp, 0x155c              |     t1 = sp + 0x155c;
    0x0004b3fc swl a2, 3(v0)                     |     __asm ("swl a2, 3(v0)");
    0x0004b400 swr a2, (v0)                      |     __asm ("swr a2, (v0)");
    0x0004b404 swl a1, 7(v0)                     |     __asm ("swl a1, 7(v0)");
    0x0004b408 swr a1, 4(v0)                     |     __asm ("swr a1, 4(v0)");
    0x0004b40c lw v0, -0x7ce4(gp)                |     v0 = *(gp);
    0x0004b410 move a0, s0                       |     a0 = s0;
    0x0004b414 addiu a1, sp, 0x430               |     a1 = sp + aav.0x00000430;
    0x0004b418 lw t9, (v0)                       |     t9 = *(v0);
    0x0004b41c addiu a2, sp, 0x228               |     a2 = sp + aav.0x00000228;
    0x0004b420 sw t2, 0x10(sp)                   |     *(var_10h) = t2;
    0x0004b424 sw t1, 0x14(sp)                   |     *(var_14h) = t1;
    0x0004b428 sw t1, 0x1efc(sp)                 |     *(var_1efch) = t1;
    0x0004b42c sw t2, 0x1f00(sp)                 |     *(var_1f00h) = t2;
    0x0004b430 addiu a3, sp, 0xe58               |     a3 = sp + 0xe58;
    0x0004b434 jalr t9                           |     t9 ();
    0x0004b438 addu a0, s3, fp                   |     a0 = s3 + fp;
    0x0004b43c slt v0, fp, a0                    |     v0 = (fp < a0) ? 1 : 0;
    0x0004b440 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004b444 lw t1, 0x1efc(sp)                 |     t1 = *(var_1efch);
    0x0004b448 lw t2, 0x1f00(sp)                 |     t2 = *(var_1f00h);
                                                 |     if (v0 == 0) {
    0x0004b44c beqz v0, 0x4c4b4                  |         goto label_26;
                                                 |     }
    0x0004b450 subu a0, a0, fp                   |     __asm ("subu a0, a0, fp");
    0x0004b454 sll a1, fp, 2                     |     a1 = fp << 2;
    0x0004b458 mtc1 zero, f1                     |     __asm ("mtc1 zero, f1");
    0x0004b45c sll a0, a0, 2                     |     a0 <<= 2;
    0x0004b460 addu a2, t1, a1                   |     a2 = t1 + a1;
    0x0004b464 move v0, zero                     |     v0 = 0;
                                                 |     do {
    0x0004b468 lwxc1 f0, a2(v0)                  |         __asm ("lwxc1 f0, a2(v0)");
    0x0004b46c addiu v0, v0, 4                   |         v0 += 4;
    0x0004b470 add.s f1, f1, f0                  |         __asm ("add.s f1, f1, f0");
    0x0004b474 bne v0, a0, 0x4b468               |         
                                                 |     } while (v0 != a0);
    0x0004b478 mtc1 s3, f0                       |     __asm ("mtc1 s3, f0");
    0x0004b47c lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004b480 cvt.s.w f21, f0                   |     __asm ("cvt.s.w f21, f0");
    0x0004b484 div.s f1, f1, f21                 |     __asm ("div.s f1, f1, f21");
    0x0004b488 lwc1 f20, -0x4b68(v0)             |     __asm ("lwc1 f20, -0x4b68(v0)");
    0x0004b48c mtc1 zero, f0                     |     __asm ("mtc1 zero, f0");
    0x0004b490 addu a1, t2, a1                   |     a1 = t2 + a1;
    0x0004b494 move v0, zero                     |     v0 = 0;
    0x0004b498 sub.s f20, f20, f1                |     __asm ("sub.s f20, f20, f1");
                                                 |     do {
    0x0004b49c lwxc1 f2, a1(v0)                  |         __asm ("lwxc1 f2, a1(v0)");
    0x0004b4a0 addiu v0, v0, 4                   |         v0 += 4;
    0x0004b4a4 add.s f0, f0, f2                  |         __asm ("add.s f0, f0, f2");
    0x0004b4a8 bne v0, a0, 0x4b49c               |         
                                                 |     } while (v0 != a0);
                                                 | label_15:
    0x0004b4ac lw s1, -0x7fcc(gp)                |     s1 = *(gp);
    0x0004b4b0 div.s f21, f0, f21                |     __asm ("div.s f21, f0, f21");
    0x0004b4b4 lwc1 f0, 0x53b0(s1)               |     __asm ("lwc1 f0, 0x53b0(s1)");
    0x0004b4b8 c.lt.s f20, f0                    |     __asm ("c.lt.s f20, f0");
    0x0004b4bc bc1f 0x4b4e4                      |     __asm ("bc1f 0x4b4e4");
    0x0004b4c0 lw t5, -0x7fcc(gp)                |     t5 = *(gp);
    0x0004b4c4 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b4c8 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b4cc lwc1 f0, -0x7cb0(v0)              |     __asm ("lwc1 f0, -0x7cb0(v0)");
    0x0004b4d0 c.lt.s f20, f0                    |     __asm ("c.lt.s f20, f0");
    0x0004b4d4 bc1f 0x4b4e8                      |     __asm ("bc1f 0x4b4e8");
    0x0004b4d8 lwc1 f0, 0x53b4(t5)               |     __asm ("lwc1 f0, 0x53b4(t5)");
    0x0004b4dc swc1 f20, -0x7cb0(v0)             |     __asm ("swc1 f20, -0x7cb0(v0)");
    0x0004b4e0 lw t5, -0x7fcc(gp)                |     t5 = *(gp);
    0x0004b4e4 lwc1 f0, 0x53b4(t5)               |     __asm ("lwc1 f0, 0x53b4(t5)");
    0x0004b4e8 c.lt.s f0, f21                    |     __asm ("c.lt.s f0, f21");
    0x0004b4ec bc1f 0x4bcb8                      |     __asm ("bc1f 0x4bcb8");
    0x0004b4f0 lwc1 f0, 0x539c(s7)               |     __asm ("lwc1 f0, 0x539c(s7)");
    0x0004b4f4 c.lt.s f0, f20                    |     __asm ("c.lt.s f0, f20");
    0x0004b4f8 bc1f 0x4bcb8                      |     __asm ("bc1f 0x4bcb8");
    0x0004b4fc lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b500 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b504 addiu a0, zero, 1                 |     a0 = 1;
    0x0004b508 sh a0, -0x7b94(v0)                |     *((v0 - 15818)) = a0;
    0x0004b50c lw t3, -0x7fe4(gp)                |     t3 = *((gp - 8185));
    0x0004b510 lw a1, 0x28(s0)                   |     a1 = *((s0 + 10));
    0x0004b514 addiu a0, zero, 4                 |     a0 = 4;
    0x0004b518 lw v0, 0x3320(t3)                 |     v0 = *(t3);
    0x0004b51c addiu v0, v0, 1                   |     v0++;
    0x0004b520 sw v0, 0x3320(t3)                 |     *(t3) = v0;
                                                 |     if (a1 == a0) {
    0x0004b524 beq a1, a0, 0x4bcfc               |         goto label_27;
                                                 |     }
                                                 | label_3:
    0x0004b528 lw v0, 0x2c(s0)                   |     v0 = *((s0 + 11));
    0x0004b52c lui v0, 1                         |     v0 = 0x10000;
                                                 |     if (v0 == 0) {
    0x0004b530 beqz v0, 0x4b64c                  |         goto label_28;
                                                 |     }
                                                 |     /* aav.0x00010000 */
    0x0004b534 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b538 lh v0, -0x7b94(v0)                |     v0 = *((v0 - 15818));
    0x0004b53c addiu a0, zero, 1                 |     a0 = 1;
                                                 |     if (v0 == a0) {
    0x0004b540 beq v0, a0, 0x4bfa0               |         goto label_29;
                                                 |     }
    0x0004b544 nop                               |     
                                                 |     if (v0 != 0) {
    0x0004b548 bnez v0, 0x4c000                  |         goto label_8;
                                                 |     }
    0x0004b54c nop                               |     
    0x0004b550 lw v0, 0x30(s0)                   |     v0 = *((s0 + 12));
    0x0004b554 lwc1 f1, 0x40(s0)                 |     __asm ("lwc1 f1, 0x40(s0)");
    0x0004b558 addiu a1, v0, 0x1fce              |     a1 = v0 + 0x1fce;
    0x0004b55c sll a1, a1, 2                     |     a1 <<= 2;
    0x0004b560 lwxc1 f0, s0(a1)                  |     __asm ("lwxc1 f0, s0(a1)");
    0x0004b564 addiu v0, v0, 0x200e              |     v0 += 0x200e;
    0x0004b568 sll v0, v0, 2                     |     v0 <<= 2;
    0x0004b56c mul.s f1, f0, f1                  |     __asm ("mul.s f1, f0, f1");
    0x0004b570 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b574 lwc1 f0, 4(v0)                    |     __asm ("lwc1 f0, 4(v0)");
    0x0004b578 c.lt.s f1, f0                     |     __asm ("c.lt.s f1, f0");
    0x0004b57c bc1f 0x4c104                      |     __asm ("bc1f 0x4c104");
    0x0004b580 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004b584 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004b588 lwc1 f1, 0x38(s0)                 |     __asm ("lwc1 f1, 0x38(s0)");
    0x0004b58c lwc1 f2, 0x53c0(v0)               |     __asm ("lwc1 f2, 0x53c0(v0)");
    0x0004b590 mul.s f1, f1, f2                  |     __asm ("mul.s f1, f1, f2");
    0x0004b594 c.lt.s f1, f0                     |     __asm ("c.lt.s f1, f0");
    0x0004b598 bc1f 0x4c104                      |     __asm ("bc1f 0x4c104");
    0x0004b59c lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004b5a0 lw v0, 0x20(s0)                   |     v0 = *((s0 + 8));
                                                 |     if (v0 == 0) {
    0x0004b5a4 beqz v0, 0x4c1e0                  |         goto label_30;
                                                 |     }
    0x0004b5a8 nop                               |     
    0x0004b5ac lw a1, 0x24(s0)                   |     a1 = *((s0 + 9));
                                                 |     if (a1 != 0) {
    0x0004b5b0 bnez a1, 0x4b628                  |         goto label_31;
                                                 |     }
    0x0004b5b4 nop                               |     
    0x0004b5b8 lw v0, 0x28(s0)                   |     v0 = *((s0 + 10));
    0x0004b5bc lw a0, -0x7fcc(gp)                |     a0 = *(gp);
                                                 |     if (v0 == a0) {
    0x0004b5c0 beq v0, a0, 0x4c800               |         goto label_32;
                                                 |     }
                                                 | label_16:
    0x0004b5c4 addiu a0, s0, 0x4964              |     a0 = s0 + 0x4964;
    0x0004b5c8 addiu v0, s0, 0x3104              |     v0 = s0 + aav.0x00003104;
    0x0004b5cc addiu t8, s0, 0x61c4              |     t8 = s0 + 0x61c4;
                                                 |     do {
    0x0004b5d0 lwl t7, 3(a0)                     |         __asm ("lwl t7, 3(a0)");
    0x0004b5d4 lwl a3, 7(a0)                     |         __asm ("lwl a3, 7(a0)");
    0x0004b5d8 lwl a2, 0xb(a0)                   |         __asm ("lwl a2, 0xb(a0)");
    0x0004b5dc lwl a1, 0xf(a0)                   |         __asm ("lwl a1, 0xf(a0)");
    0x0004b5e0 lwr t7, (a0)                      |         __asm ("lwr t7, (a0)");
    0x0004b5e4 lwr a3, 4(a0)                     |         __asm ("lwr a3, 4(a0)");
    0x0004b5e8 lwr a2, 8(a0)                     |         __asm ("lwr a2, 8(a0)");
    0x0004b5ec lwr a1, 0xc(a0)                   |         __asm ("lwr a1, 0xc(a0)");
    0x0004b5f0 swl t7, 3(v0)                     |         __asm ("swl t7, 3(v0)");
    0x0004b5f4 swr t7, (v0)                      |         __asm ("swr t7, (v0)");
    0x0004b5f8 swl a3, 7(v0)                     |         __asm ("swl a3, 7(v0)");
    0x0004b5fc swr a3, 4(v0)                     |         __asm ("swr a3, 4(v0)");
    0x0004b600 swl a2, 0xb(v0)                   |         __asm ("swl a2, 0xb(v0)");
    0x0004b604 swr a2, 8(v0)                     |         __asm ("swr a2, 8(v0)");
    0x0004b608 addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004b60c swl a1, 0xf(v0)                   |         __asm ("swl a1, 0xf(v0)");
    0x0004b610 swr a1, 0xc(v0)                   |         __asm ("swr a1, 0xc(v0)");
    0x0004b614 addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004b618 bne a0, t8, 0x4b5d0               |         
                                                 |     } while (a0 != t8);
    0x0004b61c lw v0, 0x20(s0)                   |     v0 = *((s0 + 8));
    0x0004b620 addiu a0, zero, 1                 |     a0 = 1;
    0x0004b624 sw a0, 0x24(s0)                   |     *((s0 + 9)) = a0;
                                                 | label_31:
    0x0004b628 addiu a0, zero, 0x12c             |     a0 = obj._DYNAMIC;
    0x0004b62c sw a0, 0x18(s0)                   |     *((s0 + 6)) = a0;
    0x0004b630 addiu a0, zero, 1                 |     a0 = 1;
                                                 |     if (v0 != a0) {
    0x0004b634 bne v0, a0, 0x4c1e8               |         goto label_33;
                                                 |     }
    0x0004b638 nop                               |     
    0x0004b63c sw zero, 0x1c(s0)                 |     *((s0 + 7)) = 0;
    0x0004b640 addiu v0, zero, 0x12c             |     v0 = obj._DYNAMIC;
    0x0004b644 addiu v0, v0, -1                  |     v0 += -1;
                                                 | label_4:
    0x0004b648 sw v0, 0x18(s0)                   |     *((s0 + 6)) = v0;
                                                 | label_28:
    0x0004b64c lw v0, 0x24(s0)                   |     v0 = *((s0 + 9));
    0x0004b650 addiu a0, zero, 1                 |     a0 = 1;
    0x0004b654 lw a0, 0x3320(t3)                 |     a0 = *(t3);
                                                 |     if (v0 == a0) {
    0x0004b658 beq v0, a0, 0x4c06c               |         goto label_34;
                                                 |     }
                                                 | label_5:
    0x0004b65c lwc1 f0, 0x44(s0)                 |     __asm ("lwc1 f0, 0x44(s0)");
    0x0004b660 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b664 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b668 swc1 f0, -0x7ca4(v0)              |     __asm ("swc1 f0, -0x7ca4(v0)");
                                                 | label_6:
    0x0004b66c lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004b670 lui a1, 1                         |     a1 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b674 addu s5, s0, a1                   |     s5 = s0 + a1;
    0x0004b678 lwc1 f3, -0x7cb0(s5)              |     __asm ("lwc1 f3, -0x7cb0(s5)");
    0x0004b67c lwc1 f1, -0x4b68(v0)              |     __asm ("lwc1 f1, -0x4b68(v0)");
    0x0004b680 c.eq.s f3, f1                     |     __asm ("c.eq.s f3, f1");
    0x0004b684 bc1f 0x4be60                      |     __asm ("bc1f 0x4be60");
    0x0004b688 addiu a0, zero, 1                 |     a0 = 1;
    0x0004b68c lh a2, -0x7b94(s5)                |     a2 = *((s5 - 15818));
    0x0004b690 sh zero, -0x7b92(s5)              |     *((s5 - 15817)) = 0;
    0x0004b694 move v0, zero                     |     v0 = 0;
                                                 |     if (a2 == a0) {
    0x0004b698 beq a2, a0, 0x4c24c               |         goto label_35;
                                                 |     }
    0x0004b69c addiu a0, zero, 0x104             |     a0 = aav.0x00000104;
                                                 |     do {
    0x0004b6a0 lwxc1 f0, t1(v0)                  |         __asm ("lwxc1 f0, t1(v0)");
    0x0004b6a4 sub.s f0, f1, f0                  |         __asm ("sub.s f0, f1, f0");
    0x0004b6a8 swxc1 f0, s6(v0)                  |         __asm ("swxc1 f0, s6(v0)");
    0x0004b6ac addiu v0, v0, 4                   |         v0 += 4;
    0x0004b6b0 bne v0, a0, 0x4b6a0               |         
                                                 |     } while (v0 != a0);
    0x0004b6b4 nop                               |     
    0x0004b6b8 mov.s f21, f20                    |     __asm ("mov.s f21, f20");
                                                 | label_11:
    0x0004b6bc lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004b6c0 lwc1 f0, 0x5370(v0)               |     __asm ("lwc1 f0, 0x5370(v0)");
    0x0004b6c4 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b6c8 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b6cc c.lt.s f20, f0                    |     __asm ("c.lt.s f20, f0");
    0x0004b6d0 bc1f 0x4bcb0                      |     __asm ("bc1f 0x4bcb0");
    0x0004b6d4 lwc1 f4, -0x7cb4(v0)              |     __asm ("lwc1 f4, -0x7cb4(v0)");
    0x0004b6d8 c.lt.s f20, f4                    |     __asm ("c.lt.s f20, f4");
    0x0004b6dc bc1f 0x4bcb0                      |     __asm ("bc1f 0x4bcb0");
    0x0004b6e0 addiu a0, zero, 1                 |     a0 = 1;
    0x0004b6e4 mov.s f4, f20                     |     __asm ("mov.s f4, f20");
    0x0004b6e8 swc1 f20, -0x7cb8(v0)             |     __asm ("swc1 f20, -0x7cb8(v0)");
    0x0004b6ec sw a0, -0x7cac(v0)                |     *((v0 - 7979)) = a0;
    0x0004b6f0 sw zero, -0x7ca8(v0)              |     *((v0 - 7978)) = 0;
    0x0004b6f4 addiu a1, zero, 1                 |     a1 = 1;
    0x0004b6f8 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004b6fc addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004b700 lwc1 f1, -0x7b7c(v0)              |     __asm ("lwc1 f1, -0x7b7c(v0)");
    0x0004b704 lw a0, -0x7fcc(gp)                |     a0 = *(gp);
    0x0004b708 lw v1, -0x7fcc(gp)                |     v1 = *(gp);
    0x0004b70c cvt.s.w f0, f1                    |     __asm ("cvt.s.w f0, f1");
    0x0004b710 lwc1 f1, 0x53c4(a0)               |     __asm ("lwc1 f1, 0x53c4(a0)");
    0x0004b714 lw a0, -0x7fcc(gp)                |     a0 = *(gp);
    0x0004b718 div.s f1, f1, f0                  |     __asm ("div.s f1, f1, f0");
    0x0004b71c lwc1 f2, 0x53c8(a0)               |     __asm ("lwc1 f2, 0x53c8(a0)");
    0x0004b720 addiu a0, zero, 1                 |     a0 = 1;
    0x0004b724 div.s f0, f2, f0                  |     __asm ("div.s f0, f2, f0");
    0x0004b728 lwc1 f2, -0x4b68(v1)              |     __asm ("lwc1 f2, -0x4b68(v1)");
    0x0004b72c add.s f1, f1, f4                  |     __asm ("add.s f1, f1, f4");
    0x0004b730 add.s f0, f0, f3                  |     __asm ("add.s f0, f0, f3");
                                                 | label_23:
    0x0004bca0 lw v0, -0x7818(a0)                |     v0 = *((a0 - 7686));
    0x0004bca4 addiu v0, v0, -1                  |     v0 += -1;
    0x0004bca8 sw v0, -0x7b8c(a0)                |     *((a0 - 7907)) = v0;
    0x0004bcac b 0x4af94                         |     goto label_2;
                                                 | label_27:
    0x0004bcfc lui a1, 0x51eb                    |     a1 = 0x51eb851f;
    0x0004bd00 ori a1, a1, 0x851f                |     
    0x0004bd04 mult v0, a1                       |     __asm ("mult v0, a1");
    0x0004bd08 sra a0, v0, 0x1f                  |     a0 = v0 >> 0x1f;
    0x0004bd0c mfhi a1                           |     __asm ("mfhi a1");
    0x0004bd10 sra a1, a1, 5                     |     a1 >>= 5;
    0x0004bd14 subu a1, a1, a0                   |     __asm ("subu a1, a1, a0");
    0x0004bd18 sll a0, a1, 2                     |     a0 = a1 << 2;
    0x0004bd1c sll a1, a1, 4                     |     a1 <<= 4;
    0x0004bd20 addu a0, a0, a1                   |     a0 += a1;
    0x0004bd24 sll a1, a0, 2                     |     a1 = a0 << 2;
    0x0004bd28 addu a0, a0, a1                   |     a0 += a1;
    0x0004bd2c lw a0, -0x7fcc(gp)                |     a0 = *(gp);
                                                 |     if (v0 != a0) {
    0x0004bd30 bne v0, a0, 0x4b528               |         goto label_3;
                                                 |     }
    0x0004bd34 cvt.d.s f0, f20                   |     __asm ("cvt.d.s f0, f20");
    0x0004bd38 lw t9, -0x7e50(gp)                |     t9 = sym.imp.printf
    0x0004bd3c sdc1 f0, 0x10(sp)                 |     __asm ("sdc1 f0, 0x10(sp)");
    0x0004bd40 cvt.d.s f0, f21                   |     __asm ("cvt.d.s f0, f21");
    0x0004bd44 mfc1 a2, f0                       |     __asm ("mfc1 a2, f0");
    0x0004bd48 mfc1 a3, f1                       |     __asm ("mfc1 a3, f1");
    0x0004bd4c sw t1, 0x1efc(sp)                 |     *(var_1efch) = t1;
    0x0004bd50 sw t2, 0x1f00(sp)                 |     *(var_1f00h) = t2;
    0x0004bd54 sw t3, 0x1f08(sp)                 |     *(var_1f08h) = t3;
    0x0004bd58 sw t5, 0x1f04(sp)                 |     *(var_1f04h) = t5;
                                                 |     /* str.dev_check_hNlDeAvg___f___hNlXdAvg___f_n */
    0x0004bd5c addiu a0, a0, 0x6438              |     a0 += aav.0x00006438;
    0x0004bd60 jalr t9                           |     t9 ();
    0x0004bd64 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004bd68 lw t5, 0x1f04(sp)                 |     t5 = *(var_1f04h);
    0x0004bd6c lw t3, 0x1f08(sp)                 |     t3 = *(var_1f08h);
    0x0004bd70 lw t2, 0x1f00(sp)                 |     t2 = *(var_1f00h);
    0x0004bd74 lw t1, 0x1efc(sp)                 |     t1 = *(var_1efch);
    0x0004bd78 b 0x4b528                         |     goto label_3;
                                                 | label_29:
    0x0004bfa0 lw v0, 0x30(s0)                   |     v0 = *((s0 + 12));
    0x0004bfa4 lwc1 f0, 0x3c(s0)                 |     __asm ("lwc1 f0, 0x3c(s0)");
    0x0004bfa8 addiu v0, v0, 0x200e              |     v0 += 0x200e;
    0x0004bfac sll v0, v0, 2                     |     v0 <<= 2;
    0x0004bfb0 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004bfb4 lwc1 f2, 4(v0)                    |     __asm ("lwc1 f2, 4(v0)");
    0x0004bfb8 c.lt.s f0, f2                     |     __asm ("c.lt.s f0, f2");
    0x0004bfbc bc1f 0x4c000                      |     __asm ("bc1f 0x4c000");
    0x0004bfc0 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004bfc4 lwc1 f1, 0x53bc(v0)               |     __asm ("lwc1 f1, 0x53bc(v0)");
    0x0004bfc8 mul.s f0, f0, f1                  |     __asm ("mul.s f0, f0, f1");
    0x0004bfcc c.lt.s f2, f0                     |     __asm ("c.lt.s f2, f0");
    0x0004bfd0 bc1f 0x4c000                      |     __asm ("bc1f 0x4c000");
    0x0004bfd4 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004bfd8 cvt.d.s f2, f2                    |     __asm ("cvt.d.s f2, f2");
    0x0004bfdc lwc1 f0, 0x38(s0)                 |     __asm ("lwc1 f0, 0x38(s0)");
    0x0004bfe0 ldc1 f4, 0x5180(v0)               |     __asm ("ldc1 f4, 0x5180(v0)");
    0x0004bfe4 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004bfe8 cvt.d.s f0, f0                    |     __asm ("cvt.d.s f0, f0");
    0x0004bfec mul.d f2, f2, f4                  |     __asm ("mul.d f2, f2, f4");
    0x0004bff0 ldc1 f4, 0x5190(v0)               |     __asm ("ldc1 f4, 0x5190(v0)");
    0x0004bff4 madd.d f0, f2, f0, f4             |     __asm ("madd.d f0, f2, f0, f4");
    0x0004bff8 cvt.s.d f0, f0                    |     __asm ("cvt.s.d f0, f0");
    0x0004bffc swc1 f0, 0x38(s0)                 |     __asm ("swc1 f0, 0x38(s0)");
                                                 | label_8:
    0x0004c000 lw v0, 0x18(s0)                   |     v0 = *((s0 + 6));
                                                 | label_9:
    0x0004c004 addiu v0, v0, -1                  |     v0 += -1;
                                                 |     if (v0 > 0) {
    0x0004c008 bgtz v0, 0x4b648                  |         goto label_4;
                                                 |     }
    0x0004c00c lw v0, 0x24(s0)                   |     v0 = *((s0 + 9));
    0x0004c010 addiu a0, zero, 1                 |     a0 = 1;
                                                 |     if (v0 == a0) {
    0x0004c014 beq v0, a0, 0x4c024               |         goto label_36;
                                                 |     }
    0x0004c018 nop                               |     
                                                 |     do {
    0x0004c01c sw zero, 0x24(s0)                 |         *((s0 + 9)) = 0;
    0x0004c020 b 0x4b65c                         |         goto label_5;
                                                 | label_36:
    0x0004c024 lw a0, 0x28(s0)                   |         a0 = *((s0 + 10));
    0x0004c028 bne a0, v0, 0x4c01c               |         
                                                 |     } while (a0 != v0);
    0x0004c02c nop                               |     
    0x0004c030 lw a0, -0x7fcc(gp)                |     a0 = *(gp);
    0x0004c034 lw t9, -0x7e94(gp)                |     t9 = *(gp);
    0x0004c038 sw t1, 0x1efc(sp)                 |     *(var_1efch) = t1;
    0x0004c03c sw t2, 0x1f00(sp)                 |     *(var_1f00h) = t2;
    0x0004c040 sw t3, 0x1f08(sp)                 |     *(var_1f08h) = t3;
    0x0004c044 sw t5, 0x1f04(sp)                 |     *(var_1f04h) = t5;
                                                 |     /* str.now_start_update_filter____ */
    0x0004c048 addiu a0, a0, 0x64e8              |     a0 += 0x64e8;
    0x0004c04c jalr t9                           |     t9 ();
    0x0004c050 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004c054 lw t5, 0x1f04(sp)                 |     t5 = *(var_1f04h);
    0x0004c058 lw t3, 0x1f08(sp)                 |     t3 = *(var_1f08h);
    0x0004c05c lw t2, 0x1f00(sp)                 |     t2 = *(var_1f00h);
    0x0004c060 lw t1, 0x1efc(sp)                 |     t1 = *(var_1efch);
    0x0004c064 sw zero, 0x24(s0)                 |     *((s0 + 9)) = 0;
    0x0004c068 b 0x4b65c                         |     goto label_5;
                                                 | label_34:
    0x0004c06c lui a2, 0x51eb                    |     a2 = 0x51eb851f;
    0x0004c070 ori a2, a2, 0x851f                |     
    0x0004c074 mult a0, a2                       |     __asm ("mult a0, a2");
    0x0004c078 sra a1, a0, 0x1f                  |     a1 = a0 >> 0x1f;
    0x0004c07c mfhi a2                           |     __asm ("mfhi a2");
    0x0004c080 sra a2, a2, 5                     |     a2 >>= 5;
    0x0004c084 subu a2, a2, a1                   |     __asm ("subu a2, a2, a1");
    0x0004c088 sll a1, a2, 2                     |     a1 = a2 << 2;
    0x0004c08c sll a2, a2, 4                     |     a2 <<= 4;
    0x0004c090 addu a1, a1, a2                   |     a1 += a2;
    0x0004c094 sll a2, a1, 2                     |     a2 = a1 << 2;
    0x0004c098 addu a1, a1, a2                   |     a1 += a2;
                                                 |     if (a0 == a1) {
    0x0004c09c bne a0, a1, 0x4c0b0               |         
    0x0004c0a0 nop                               |         
    0x0004c0a4 lw a0, 0x28(s0)                   |         a0 = *((s0 + 10));
    0x0004c0a8 lui v0, 1                         |         v0 = 0x10000;
                                                 |         if (a0 == v0) {
    0x0004c0ac beq a0, v0, 0x4c464               |             goto label_37;
                                                 |         }
                                                 |     }
                                                 | label_14:
    0x0004c0b0 lui v0, 1                         |     v0 = 0x10000;
                                                 |     /* aav.0x00010000 */
    0x0004c0b4 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004c0b8 lw a0, -0x7c9c(v0)                |     a0 = *((v0 - 7975));
    0x0004c0bc lw a1, -0x7fcc(gp)                |     a1 = *(gp);
    0x0004c0c0 lwc1 f1, 0x44(s0)                 |     __asm ("lwc1 f1, 0x44(s0)");
    0x0004c0c4 sll a0, a0, 2                     |     a0 <<= 2;
                                                 |     /* obj.kNlp */
    0x0004c0c8 addiu a1, a1, 0x40a4              |     a1 += 0x40a4;
    0x0004c0cc lwxc1 f0, a1(a0)                  |     __asm ("lwxc1 f0, a1(a0)");
    0x0004c0d0 mul.s f0, f1, f0                  |     __asm ("mul.s f0, f1, f0");
    0x0004c0d4 swc1 f0, -0x7ca4(v0)              |     __asm ("swc1 f0, -0x7ca4(v0)");
    0x0004c0d8 b 0x4b66c                         |     goto label_6;
                                                 | label_25:
    0x0004c0dc sw zero, 0x14(s0)                 |     *((s0 + 5)) = 0;
    0x0004c0e0 b 0x4b348                         |     goto label_7;
                                                 | label_10:
    0x0004c12c slti v0, v0, 0x191                |     v0 = (v0 < 0x191) ? 1 : 0;
    0x0004c130 addiu t8, s0, 0x4964              |     t8 = s0 + 0x4964;
                                                 |     if (v0 != 0) {
    0x0004c134 bnez v0, 0x4c000                  |         goto label_8;
                                                 |     }
    0x0004c138 sw zero, 0x1c(s0)                 |     *((s0 + 7)) = 0;
    0x0004c13c addiu a0, s0, 0x3104              |     a0 = s0 + aav.0x00003104;
    0x0004c140 move v0, t8                       |     v0 = t8;
                                                 |     do {
    0x0004c144 lwl t7, 3(a0)                     |         __asm ("lwl t7, 3(a0)");
    0x0004c148 lwl a3, 7(a0)                     |         __asm ("lwl a3, 7(a0)");
    0x0004c14c lwl a2, 0xb(a0)                   |         __asm ("lwl a2, 0xb(a0)");
    0x0004c150 lwl a1, 0xf(a0)                   |         __asm ("lwl a1, 0xf(a0)");
    0x0004c154 lwr t7, (a0)                      |         __asm ("lwr t7, (a0)");
    0x0004c158 lwr a3, 4(a0)                     |         __asm ("lwr a3, 4(a0)");
    0x0004c15c lwr a2, 8(a0)                     |         __asm ("lwr a2, 8(a0)");
    0x0004c160 lwr a1, 0xc(a0)                   |         __asm ("lwr a1, 0xc(a0)");
    0x0004c164 swl t7, 3(v0)                     |         __asm ("swl t7, 3(v0)");
    0x0004c168 swr t7, (v0)                      |         __asm ("swr t7, (v0)");
    0x0004c16c swl a3, 7(v0)                     |         __asm ("swl a3, 7(v0)");
    0x0004c170 swr a3, 4(v0)                     |         __asm ("swr a3, 4(v0)");
    0x0004c174 swl a2, 0xb(v0)                   |         __asm ("swl a2, 0xb(v0)");
    0x0004c178 swr a2, 8(v0)                     |         __asm ("swr a2, 8(v0)");
    0x0004c17c addiu a0, a0, 0x10                |         a0 += 0x10;
    0x0004c180 swl a1, 0xf(v0)                   |         __asm ("swl a1, 0xf(v0)");
    0x0004c184 swr a1, 0xc(v0)                   |         __asm ("swr a1, 0xc(v0)");
    0x0004c188 addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004c18c bne a0, t8, 0x4c144               |         
                                                 |     } while (a0 != t8);
    0x0004c190 lw a0, 0x28(s0)                   |     a0 = *((s0 + 10));
    0x0004c194 addiu v0, zero, 1                 |     v0 = 1;
    0x0004c198 lw a0, -0x7fcc(gp)                |     a0 = *(gp);
                                                 |     if (a0 == v0) {
    0x0004c19c bne a0, v0, 0x4c1d0               |         
    0x0004c1a0 lw t9, -0x7e94(gp)                |         t9 = *(gp);
    0x0004c1a4 sw t1, 0x1efc(sp)                 |         *(var_1efch) = t1;
    0x0004c1a8 sw t2, 0x1f00(sp)                 |         *(var_1f00h) = t2;
    0x0004c1ac sw t3, 0x1f08(sp)                 |         *(var_1f08h) = t3;
    0x0004c1b0 sw t5, 0x1f04(sp)                 |         *(var_1f04h) = t5;
                                                 |         /* str.save_filter_ */
    0x0004c1b4 addiu a0, a0, 0x64d8              |         a0 += 0x64d8;
    0x0004c1b8 jalr t9                           |         t9 ();
    0x0004c1bc lw gp, 0x18(sp)                   |         gp = *(var_18h);
    0x0004c1c0 lw t5, 0x1f04(sp)                 |         t5 = *(var_1f04h);
    0x0004c1c4 lw t3, 0x1f08(sp)                 |         t3 = *(var_1f08h);
    0x0004c1c8 lw t2, 0x1f00(sp)                 |         t2 = *(var_1f00h);
    0x0004c1cc lw t1, 0x1efc(sp)                 |         t1 = *(var_1efch);
                                                 |     }
    0x0004c1d0 addiu a0, zero, 1                 |     a0 = 1;
    0x0004c1d4 lw v0, 0x18(s0)                   |     v0 = *((s0 + 6));
    0x0004c1d8 sw a0, 0x20(s0)                   |     *((s0 + 8)) = a0;
    0x0004c1dc b 0x4c004                         |     goto label_9;
                                                 | label_30:
    0x0004c1e0 addiu v0, zero, 0x12c             |     v0 = obj._DYNAMIC;
    0x0004c1e4 sw v0, 0x18(s0)                   |     *((s0 + 6)) = v0;
                                                 | label_33:
    0x0004c1e8 lw v0, 0x1c(s0)                   |     v0 = *((s0 + 7));
    0x0004c1ec b 0x4c12c                         |     goto label_10;
                                                 | label_12:
    0x0004c240 mov.s f20, f21                    |     __asm ("mov.s f20, f21");
    0x0004c244 sw a0, (v0)                       |     *(v0) = a0;
    0x0004c248 b 0x4b6bc                         |     goto label_11;
                                                 | label_35:
    0x0004c24c move v0, s6                       |     v0 = s6;
    0x0004c250 addiu a0, sp, 0x1760              |     a0 = sp + 0x1760;
                                                 |     do {
    0x0004c254 lw t1, (t2)                       |         t1 = *(t2);
    0x0004c258 lw a3, 4(t2)                      |         a3 = *((t2 + 1));
    0x0004c25c lw a2, 8(t2)                      |         a2 = *((t2 + 2));
    0x0004c260 lw a1, 0xc(t2)                    |         a1 = *((t2 + 3));
    0x0004c264 addiu t2, t2, 0x10                |         t2 += 0x10;
    0x0004c268 sw t1, (v0)                       |         *(v0) = t1;
    0x0004c26c sw a3, 4(v0)                      |         *(var_4h_7) = a3;
    0x0004c270 sw a2, 8(v0)                      |         *(var_8h_4) = a2;
    0x0004c274 sw a1, 0xc(v0)                    |         *(var_ch_5) = a1;
    0x0004c278 addiu v0, v0, 0x10                |         v0 += 0x10;
    0x0004c27c bne t2, a0, 0x4c254               |         
                                                 |     } while (t2 != a0);
    0x0004c280 lw a0, (t2)                       |     a0 = *(t2);
    0x0004c284 b 0x4c240                         |     goto label_12;
                                                 | label_24:
    0x0004c358 ori a0, zero, 0x84d8              |     a0 = 0x84d8;
    0x0004c35c addu a0, s0, a0                   |     a0 = s0 + a0;
                                                 |     /* sym.UpdateLevel */
    0x0004c360 addiu t9, t9, -0x6418             |     t9 += -0x6418;
    0x0004c364 addiu a1, sp, 0x840               |     a1 = sp + 0x840;
    0x0004c368 bal 0x49be8                       |     sym_UpdateLevel ();
    0x0004c36c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004c370 b 0x4b2c8                         |     goto label_13;
                                                 |     /* aav.0x00010000 */
                                                 | label_37:
    0x0004c464 addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004c468 lw a2, -0x7ca0(v0)                |     a2 = *((v0 - 7976));
    0x0004c46c lw a0, -0x7fcc(gp)                |     a0 = *(gp);
    0x0004c470 lw t9, -0x7e50(gp)                |     t9 = sym.imp.printf
    0x0004c474 mtc1 a2, f1                       |     __asm ("mtc1 a2, f1");
    0x0004c478 sw t1, 0x1efc(sp)                 |     *(var_1efch) = t1;
    0x0004c47c cvt.d.s f0, f1                    |     __asm ("cvt.d.s f0, f1");
    0x0004c480 mfc1 a2, f0                       |     __asm ("mfc1 a2, f0");
    0x0004c484 mfc1 a3, f1                       |     __asm ("mfc1 a3, f1");
    0x0004c488 sw t2, 0x1f00(sp)                 |     *(var_1f00h) = t2;
    0x0004c48c sw t3, 0x1f08(sp)                 |     *(var_1f08h) = t3;
    0x0004c490 sw t5, 0x1f04(sp)                 |     *(var_1f04h) = t5;
                                                 |     /* str.dt_detected____aec__overDriveSm___f__n */
    0x0004c494 addiu a0, a0, 0x6504              |     a0 += 0x6504;
    0x0004c498 jalr t9                           |     t9 ();
    0x0004c49c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004c4a0 lw t5, 0x1f04(sp)                 |     t5 = *(var_1f04h);
    0x0004c4a4 lw t3, 0x1f08(sp)                 |     t3 = *(var_1f08h);
    0x0004c4a8 lw t2, 0x1f00(sp)                 |     t2 = *(var_1f00h);
    0x0004c4ac lw t1, 0x1efc(sp)                 |     t1 = *(var_1efch);
    0x0004c4b0 b 0x4c0b0                         |     goto label_14;
                                                 | label_26:
    0x0004c4b4 mtc1 s3, f1                       |     __asm ("mtc1 s3, f1");
    0x0004c4b8 mtc1 zero, f0                     |     __asm ("mtc1 zero, f0");
    0x0004c4bc cvt.s.w f21, f1                   |     __asm ("cvt.s.w f21, f1");
    0x0004c4c0 div.s f1, f0, f21                 |     __asm ("div.s f1, f0, f21");
    0x0004c4c4 lw v0, -0x7fcc(gp)                |     v0 = *(gp);
    0x0004c4c8 lwc1 f20, -0x4b68(v0)             |     __asm ("lwc1 f20, -0x4b68(v0)");
    0x0004c4cc sub.s f20, f20, f1                |     __asm ("sub.s f20, f20, f1");
    0x0004c4d0 b 0x4b4ac                         |     goto label_15;
                                                 | label_32:
    0x0004c800 lw t9, -0x7e94(gp)                |     t9 = *(gp);
    0x0004c804 sw t1, 0x1efc(sp)                 |     *(var_1efch) = t1;
    0x0004c808 sw t2, 0x1f00(sp)                 |     *(var_1f00h) = t2;
    0x0004c80c sw t3, 0x1f08(sp)                 |     *(var_1f08h) = t3;
    0x0004c810 sw t5, 0x1f04(sp)                 |     *(var_1f04h) = t5;
                                                 |     /* str._now_double_talk_detected____reload_filter_ */
    0x0004c814 addiu a0, a0, 0x6464              |     a0 += 0x6464;
    0x0004c818 jalr t9                           |     t9 ();
    0x0004c81c lw a1, 0x30(s0)                   |     a1 = *((s0 + 12));
    0x0004c820 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004c824 addiu v0, a1, 0x200e              |     v0 = a1 + 0x200e;
    0x0004c828 sll v0, v0, 2                     |     v0 <<= 2;
    0x0004c82c addu v0, s0, v0                   |     v0 = s0 + v0;
    0x0004c830 lw a2, 4(v0)                      |     a2 = *((v0 + 1));
    0x0004c834 lw a0, -0x7fcc(gp)                |     a0 = *(gp);
    0x0004c838 lw t9, -0x7e50(gp)                |     t9 = sym.imp.printf
    0x0004c83c mtc1 a2, f3                       |     __asm ("mtc1 a2, f3");
                                                 |     /* str._aec__sd___d_____f__n */
    0x0004c840 addiu a0, a0, 0x6490              |     a0 += 0x6490;
    0x0004c844 cvt.d.s f2, f3                    |     __asm ("cvt.d.s f2, f3");
    0x0004c848 mfc1 a2, f2                       |     __asm ("mfc1 a2, f2");
    0x0004c84c mfc1 a3, f3                       |     __asm ("mfc1 a3, f3");
    0x0004c850 jalr t9                           |     t9 ();
    0x0004c854 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004c858 lwc1 f0, 0x38(s0)                 |     __asm ("lwc1 f0, 0x38(s0)");
    0x0004c85c lw a0, -0x7fcc(gp)                |     a0 = *(gp);
    0x0004c860 cvt.d.s f2, f0                    |     __asm ("cvt.d.s f2, f0");
    0x0004c864 lw t9, -0x7e50(gp)                |     t9 = sym.imp.printf
    0x0004c868 mfc1 a2, f2                       |     __asm ("mfc1 a2, f2");
    0x0004c86c mfc1 a3, f3                       |     __asm ("mfc1 a3, f3");
                                                 |     /* str._aec__dtdPowThd___f__n */
    0x0004c870 addiu a0, a0, 0x64a8              |     a0 += 0x64a8;
    0x0004c874 jalr t9                           |     t9 ();
    0x0004c878 lw a1, 0x30(s0)                   |     a1 = *((s0 + 12));
    0x0004c87c lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004c880 addiu a2, a1, 0x1fce              |     a2 = a1 + 0x1fce;
    0x0004c884 sll a2, a2, 2                     |     a2 <<= 2;
    0x0004c888 lwxc1 f3, s0(a2)                  |     __asm ("lwxc1 f3, s0(a2)");
    0x0004c88c lw a0, -0x7fcc(gp)                |     a0 = *(gp);
    0x0004c890 lw t9, -0x7e50(gp)                |     t9 = sym.imp.printf
    0x0004c894 cvt.d.s f0, f3                    |     __asm ("cvt.d.s f0, f3");
    0x0004c898 mfc1 a2, f0                       |     __asm ("mfc1 a2, f0");
    0x0004c89c mfc1 a3, f1                       |     __asm ("mfc1 a3, f1");
                                                 |     /* str._aec__sx___d_____f__n */
    0x0004c8a0 addiu a0, a0, 0x64c0              |     a0 += 0x64c0;
    0x0004c8a4 jalr t9                           |     t9 ();
    0x0004c8a8 lw gp, 0x18(sp)                   |     gp = *(var_18h);
    0x0004c8ac lw t5, 0x1f04(sp)                 |     t5 = *(var_1f04h);
    0x0004c8b0 lw t3, 0x1f08(sp)                 |     t3 = *(var_1f08h);
    0x0004c8b4 lw t2, 0x1f00(sp)                 |     t2 = *(var_1f00h);
    0x0004c8b8 lw t1, 0x1efc(sp)                 |     t1 = *(var_1efch);
    0x0004c8bc b 0x4b5c4                         |     goto label_16;
                                                 | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x208d0 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.audio_process_aec_create ()      | void audio_process_aec_create () {
    0x000208d0 lui gp, 8                         |     
    0x000208d4 addiu gp, gp, -0x6ed0             |     
    0x000208d8 addu gp, gp, t9                   |     gp += t9;
    0x000208dc lw t9, -0x74d8(gp)                |     t9 = sym.imp.malloc;
    0x000208e0 addiu sp, sp, -0x28               |     
    0x000208e4 sw gp, 0x10(sp)                   |     *(var_10h) = gp;
    0x000208e8 sw s1, 0x20(sp)                   |     *(var_20h) = s1;
    0x000208ec sw s0, 0x1c(sp)                   |     *(var_1ch) = s0;
    0x000208f0 sw ra, 0x24(sp)                   |     *(var_24h) = ra;
    0x000208f4 move s1, a0                       |     s1 = a0;
    0x000208f8 addiu a0, zero, 8                 |     a0 = 8;
    0x000208fc jalr t9                           |     t9 ();
    0x00020900 move s0, v0                       |     s0 = v0;
    0x00020904 lw gp, 0x10(sp)                   |     gp = *(var_10h);
                                                 |     if (v0 == 0) {
    0x00020908 beqz v0, 0x20940                  |         goto label_0;
                                                 |     }
    0x0002090c lw t9, -0x7910(gp)                |     t9 = sym.ingenic_apm_init;
    0x00020910 move a0, s1                       |     a0 = s1;
    0x00020914 jalr t9                           |     t9 ();
    0x00020918 lui v0, 0x6165                    |     v0 = 0x61656330;
    0x0002091c addiu v0, v0, 0x6330              |     
    0x00020920 sw s1, 4(s0)                      |     *((s0 + 1)) = s1;
    0x00020924 sw v0, (s0)                       |     *(s0) = v0;
    0x00020928 lw ra, 0x24(sp)                   |     ra = *(var_24h);
                                                 |     do {
    0x0002092c move v0, s0                       |         v0 = s0;
    0x00020930 lw s1, 0x20(sp)                   |         s1 = *(var_20h);
    0x00020934 lw s0, 0x1c(sp)                   |         s0 = *(var_1ch);
    0x00020938 addiu sp, sp, 0x28                |         
    0x0002093c jr ra                             |         return v0;
                                                 | label_0:
    0x00020940 lw t9, -0x723c(gp)                |         t9 = sym.imp.__errno_location;
    0x00020944 jalr t9                           |         t9 ();
    0x00020948 nop                               |         
    0x0002094c lw gp, 0x10(sp)                   |         gp = *(var_10h);
    0x00020950 lw t9, -0x7e2c(gp)                |         t9 = sym.imp.strerror;
    0x00020954 lw a0, (v0)                       |         a0 = *(v0);
    0x00020958 jalr t9                           |         t9 ();
    0x0002095c lw gp, 0x10(sp)                   |         gp = *(var_10h);
    0x00020960 addiu a2, zero, 0x14              |         a2 = 0x14;
    0x00020964 move a3, v0                       |         a3 = v0;
    0x00020968 lw a0, -0x7fcc(gp)                |         a0 = *(gp);
    0x0002096c lw a1, -0x7fcc(gp)                |         a1 = *(gp);
    0x00020970 lw t9, -0x7e50(gp)                |         t9 = sym.imp.printf
                                                 |         /* str.err:__s__d__s_n */
    0x00020974 addiu a0, a0, -0x5280             |         a0 += -0x5280;
                                                 |         /* obj.audio_process_aec_create::__func__ */
    0x00020978 addiu a1, a1, -0x5230             |         a1 += -0x5230;
    0x0002097c jalr t9                           |         t9 ();
    0x00020980 lw ra, 0x24(sp)                   |         ra = *(var_24h);
    0x00020984 b 0x2092c                         |         
                                                 |     } while (1);
                                                 | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x20a84 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.audio_process_aec_free ()        | void audio_process_aec_free () {
    0x00020a84 lui gp, 8                         |     
    0x00020a88 addiu gp, gp, -0x7084             |     
    0x00020a8c addu gp, gp, t9                   |     gp += t9;
    0x00020a90 lw v1, (a0)                       |     v1 = *(a0);
    0x00020a94 addiu sp, sp, -0x28               |     
    0x00020a98 lui v0, 0x6165                    |     v0 = 0x61656330;
    0x00020a9c addiu v0, v0, 0x6330              |     
    0x00020aa0 sw gp, 0x10(sp)                   |     *(var_10h) = gp;
    0x00020aa4 sw ra, 0x24(sp)                   |     *(var_24h) = ra;
    0x00020aa8 lw t9, -0x724c(gp)                |     t9 = sym.ingenic_apm_destroy;
                                                 |     if (v1 != v0) {
    0x00020aac bne v1, v0, 0x20ad8               |         goto label_0;
                                                 |     }
    0x00020ab0 sw a0, 0x18(sp)                   |     *(var_18h) = a0;
    0x00020ab4 jalr t9                           |     t9 ();
    0x00020ab8 lw gp, 0x10(sp)                   |     gp = *(var_10h);
    0x00020abc lw t9, -0x7dbc(gp)                |     t9 = sym.imp.free;
    0x00020ac0 lw a0, 0x18(sp)                   |     a0 = *(var_18h);
    0x00020ac4 jalr t9                           |     t9 ();
    0x00020ac8 move v0, zero                     |     v0 = 0;
                                                 |     do {
    0x00020acc lw ra, 0x24(sp)                   |         ra = *(var_24h);
    0x00020ad0 addiu sp, sp, 0x28                |         
    0x00020ad4 jr ra                             |         return v0;
                                                 | label_0:
    0x00020ad8 move a1, a0                       |         a1 = a0;
    0x00020adc lw a0, -0x7fcc(gp)                |         a0 = *(gp);
    0x00020ae0 lw t9, -0x7e50(gp)                |         t9 = sym.imp.printf
                                                 |         /* str.err_aec_handle_free_error__p_n */
    0x00020ae4 addiu a0, a0, -0x5254             |         a0 += -0x5254;
    0x00020ae8 jalr t9                           |         t9 ();
    0x00020aec addiu v0, zero, -1                |         v0 = -1;
    0x00020af0 b 0x20acc                         |         
                                                 |     } while (1);
                                                 | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x20988 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.audio_process_aec_process ()     | void audio_process_aec_process () {
    0x00020988 lui gp, 8                         |     
    0x0002098c addiu gp, gp, -0x6f88             |     
    0x00020990 addu gp, gp, t9                   |     gp += t9;
    0x00020994 lw v0, (a0)                       |     v0 = *(a0);
    0x00020998 addiu sp, sp, -0x38               |     
    0x0002099c lui v1, 0x6165                    |     v1 = 0x61656330;
    0x000209a0 addiu v1, v1, 0x6330              |     
    0x000209a4 sw gp, 0x10(sp)                   |     *(var_10h) = gp;
    0x000209a8 sw ra, 0x34(sp)                   |     *(var_34h) = ra;
    0x000209ac sw s5, 0x30(sp)                   |     *(var_30h) = s5;
    0x000209b0 sw s4, 0x2c(sp)                   |     *(var_2ch) = s4;
    0x000209b4 sw s3, 0x28(sp)                   |     *(var_28h) = s3;
    0x000209b8 sw s2, 0x24(sp)                   |     *(var_24h) = s2;
    0x000209bc sw s1, 0x20(sp)                   |     *(var_20h) = s1;
    0x000209c0 sw s0, 0x1c(sp)                   |     *(var_1ch) = s0;
    0x000209c4 move s2, a1                       |     s2 = a1;
                                                 |     if (v0 != v1) {
    0x000209c8 bne v0, v1, 0x20a68               |         goto label_0;
                                                 |     }
    0x000209cc lw s4, 4(a0)                      |     s4 = *((a0 + 1));
    0x000209d0 lui v0, 0x51eb                    |     v0 = 0x51eb851f;
    0x000209d4 ori v0, v0, 0x851f                |     
    0x000209d8 sll s4, s4, 1                     |     s4 <<= 1;
    0x000209dc multu s4, v0                      |     __asm ("multu s4, v0");
    0x000209e0 lw s5, 0xc(a1)                    |     s5 = *((a1 + 3));
    0x000209e4 move s0, zero                     |     s0 = 0;
    0x000209e8 mfhi s4                           |     __asm ("mfhi s4");
    0x000209ec srl s4, s4, 5                     |     s4 >>= 5;
    0x000209f0 div zero, s5, s4                  |     __asm ("div zero, s5, s4");
    0x000209f4 teq s4, zero, 7                   |     __asm ("teq s4, zero, 7");
    0x000209f8 mflo s5                           |     __asm ("mflo s5");
    0x000209fc move s1, zero                     |     s1 = 0;
                                                 |     if (s5 <= 0) {
    0x00020a00 blez s5, 0x20a40                  |         goto label_1;
                                                 |     }
                                                 |     do {
    0x00020a04 lw a0, (s2)                       |         a0 = *(s2);
    0x00020a08 lw t9, -0x7408(gp)                |         t9 = sym.ingenic_apm_set_far_frame;
    0x00020a0c lw s3, 4(s2)                      |         s3 = *((s2 + 1));
    0x00020a10 addu a0, a0, s0                   |         a0 += s0;
    0x00020a14 jalr t9                           |         t9 ();
    0x00020a18 lw gp, 0x10(sp)                   |         gp = *(var_10h);
    0x00020a1c addu s3, s3, s0                   |         s3 += s0;
    0x00020a20 move a0, s3                       |         a0 = s3;
    0x00020a24 lw t9, -0x7a00(gp)                |         t9 = *(gp);
    0x00020a28 move a1, s3                       |         a1 = s3;
    0x00020a2c addiu s1, s1, 1                   |         s1++;
    0x00020a30 jalr t9                           |         t9 ();
    0x00020a34 addu s0, s0, s4                   |         s0 += s4;
    0x00020a38 lw gp, 0x10(sp)                   |         gp = *(var_10h);
    0x00020a3c bne s1, s5, 0x20a04               |         
                                                 |     } while (s1 != s5);
                                                 | label_1:
    0x00020a40 move v0, zero                     |     v0 = 0;
                                                 |     do {
    0x00020a44 lw ra, 0x34(sp)                   |         ra = *(var_34h);
    0x00020a48 lw s5, 0x30(sp)                   |         s5 = *(var_30h);
    0x00020a4c lw s4, 0x2c(sp)                   |         s4 = *(var_2ch);
    0x00020a50 lw s3, 0x28(sp)                   |         s3 = *(var_28h);
    0x00020a54 lw s2, 0x24(sp)                   |         s2 = *(var_24h);
    0x00020a58 lw s1, 0x20(sp)                   |         s1 = *(var_20h);
    0x00020a5c lw s0, 0x1c(sp)                   |         s0 = *(var_1ch);
    0x00020a60 addiu sp, sp, 0x38                |         
    0x00020a64 jr ra                             |         return v0;
                                                 | label_0:
    0x00020a68 move a1, a0                       |         a1 = a0;
    0x00020a6c lw a0, -0x7fcc(gp)                |         a0 = *(gp);
    0x00020a70 lw t9, -0x7e50(gp)                |         t9 = sym.imp.printf
                                                 |         /* str.err_aec_handle_error__p_n */
    0x00020a74 addiu a0, a0, -0x5270             |         a0 += -0x5270;
    0x00020a78 jalr t9                           |         t9 ();
    0x00020a7c addiu v0, zero, -1                |         v0 = -1;
    0x00020a80 b 0x20a44                         |         
                                                 |     } while (1);
                                                 | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x20b00 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.dump__ ()                | void dump_ () {
                                         |     /* dump() */
    0x00020b00 lui gp, 8                 |     
    0x00020b04 addiu gp, gp, -0x7100     |     
    0x00020b08 addu gp, gp, t9           |     gp += t9;
    0x00020b0c addiu sp, sp, -0x30       |     
    0x00020b10 sw s0, 0x18(sp)           |     *(var_18h) = s0;
    0x00020b14 lw s0, -0x7254(gp)        |     s0 = *(gp);
    0x00020b18 sw ra, 0x2c(sp)           |     *(var_2ch) = ra;
    0x00020b1c sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00020b20 lw a0, (s0)               |     a0 = *(s0);
    0x00020b24 sw s4, 0x28(sp)           |     *(var_28h) = s4;
    0x00020b28 sw s3, 0x24(sp)           |     *(var_24h) = s3;
    0x00020b2c lw v0, (a0)               |     v0 = *(a0);
    0x00020b30 sw s2, 0x20(sp)           |     *(var_20h) = s2;
    0x00020b34 sw s1, 0x1c(sp)           |     *(var_1ch) = s1;
    0x00020b38 lw t9, 0x18(v0)           |     t9 = *((v0 + 6));
    0x00020b3c jalr t9                   |     t9 ();
    0x00020b40 nop                       |     
    0x00020b44 lw a0, (s0)               |     a0 = *(s0);
    0x00020b48 move s1, v0               |     s1 = v0;
    0x00020b4c lw v0, (a0)               |     v0 = *(a0);
    0x00020b50 lw t9, 0x20(v0)           |     t9 = *((v0 + 8));
    0x00020b54 jalr t9                   |     t9 ();
    0x00020b58 nop                       |     
    0x00020b5c lw a0, (s0)               |     a0 = *(s0);
    0x00020b60 move s4, v0               |     s4 = v0;
    0x00020b64 lw v0, (a0)               |     v0 = *(a0);
    0x00020b68 lw t9, 0x24(v0)           |     t9 = *((v0 + 9));
    0x00020b6c jalr t9                   |     t9 ();
    0x00020b70 nop                       |     
    0x00020b74 lw a0, (s0)               |     a0 = *(s0);
    0x00020b78 move s3, v0               |     s3 = v0;
    0x00020b7c lw v0, (a0)               |     v0 = *(a0);
    0x00020b80 lw t9, 0x28(v0)           |     t9 = *((v0 + 10));
    0x00020b84 jalr t9                   |     t9 ();
    0x00020b88 nop                       |     
    0x00020b8c lw a0, (s0)               |     a0 = *(s0);
    0x00020b90 move s2, v0               |     s2 = v0;
    0x00020b94 lw v0, (a0)               |     v0 = *(a0);
    0x00020b98 lw t9, 0x50(v0)           |     t9 = *((v0 + 20));
    0x00020b9c jalr t9                   |     t9 ();
    0x00020ba0 nop                       |     
    0x00020ba4 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020ba8 move a1, s1               |     a1 = s1;
    0x00020bac move s1, v0               |     s1 = v0;
    0x00020bb0 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020bb4 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str.sample_rate_:__d_n */
    0x00020bb8 addiu a0, a0, -0x5210     |     a0 += -aav.0x00005210;
    0x00020bbc jalr t9                   |     t9 ();
    0x00020bc0 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020bc4 move a1, s4               |     a1 = s4;
    0x00020bc8 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020bcc lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str.num_input_channels_:__d_n */
    0x00020bd0 addiu a0, a0, -0x51fc     |     a0 += -aav.0x000051fc;
    0x00020bd4 jalr t9                   |     t9 ();
    0x00020bd8 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020bdc move a1, s3               |     a1 = s3;
    0x00020be0 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020be4 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str.num_output_channels_:__d_n */
    0x00020be8 addiu a0, a0, -0x51e0     |     a0 += -0x51e0;
    0x00020bec jalr t9                   |     t9 ();
    0x00020bf0 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020bf4 move a1, s2               |     a1 = s2;
    0x00020bf8 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020bfc lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str.num_reverse_channels_:__d_n */
    0x00020c00 addiu a0, a0, -0x51c4     |     a0 += -0x51c4;
    0x00020c04 jalr t9                   |     t9 ();
    0x00020c08 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020c0c move a1, s1               |     a1 = s1;
    0x00020c10 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020c14 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str.stream_delay_ms_:__d_n */
    0x00020c18 addiu a0, a0, -0x51a8     |     a0 += -0x51a8;
    0x00020c1c jalr t9                   |     t9 ();
    0x00020c20 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020c24 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020c28 lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str.Ingenic_Aec_Version_1.1.0_20161014 */
    0x00020c2c addiu a0, a0, -0x5190     |     a0 += -0x5190;
    0x00020c30 jalr t9                   |     t9 ();
    0x00020c34 lw a0, (s0)               |     a0 = *(s0);
    0x00020c38 lw v0, (a0)               |     v0 = *(a0);
    0x00020c3c lw t9, 0x78(v0)           |     t9 = *((v0 + 30));
    0x00020c40 jalr t9                   |     t9 ();
    0x00020c44 nop                       |     
    0x00020c48 lw v1, (v0)               |     v1 = *(v0);
    0x00020c4c lw t9, 4(v1)              |     t9 = *((v1 + 1));
    0x00020c50 move a0, v0               |     a0 = v0;
    0x00020c54 jalr t9                   |     t9 ();
    0x00020c58 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x00020c5c bnez v0, 0x20ef0          |         goto label_6;
                                         |     }
                                         | label_3:
    0x00020c60 lw a0, (s0)               |     a0 = *(s0);
    0x00020c64 lw s1, -0x7254(gp)        |     s1 = *(gp);
    0x00020c68 lw v0, (a0)               |     v0 = *(a0);
    0x00020c6c lw t9, 0x80(v0)           |     t9 = *((v0 + 32));
    0x00020c70 jalr t9                   |     t9 ();
    0x00020c74 nop                       |     
    0x00020c78 lw v1, (v0)               |     v1 = *(v0);
    0x00020c7c lw t9, 4(v1)              |     t9 = *((v1 + 1));
    0x00020c80 move a0, v0               |     a0 = v0;
    0x00020c84 jalr t9                   |     t9 ();
    0x00020c88 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x00020c8c bnez v0, 0x20dd4          |         goto label_7;
                                         |     }
                                         | label_1:
    0x00020c90 lw a0, (s0)               |     a0 = *(s0);
                                         | label_2:
    0x00020c94 lw v0, (a0)               |     v0 = *(a0);
    0x00020c98 lw t9, 0x84(v0)           |     t9 = *((v0 + 33));
    0x00020c9c jalr t9                   |     t9 ();
    0x00020ca0 nop                       |     
    0x00020ca4 lw v1, (v0)               |     v1 = *(v0);
    0x00020ca8 lw t9, 4(v1)              |     t9 = *((v1 + 1));
    0x00020cac move a0, v0               |     a0 = v0;
    0x00020cb0 jalr t9                   |     t9 ();
    0x00020cb4 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x00020cb8 bnez v0, 0x20dbc          |         goto label_8;
                                         |     }
    0x00020cbc lw a0, (s0)               |     a0 = *(s0);
                                         | label_0:
    0x00020cc0 lw v0, (a0)               |     v0 = *(a0);
    0x00020cc4 lw t9, 0x88(v0)           |     t9 = *((v0 + 34));
    0x00020cc8 jalr t9                   |     t9 ();
    0x00020ccc nop                       |     
    0x00020cd0 lw v1, (v0)               |     v1 = *(v0);
    0x00020cd4 lw t9, 4(v1)              |     t9 = *((v1 + 1));
    0x00020cd8 move a0, v0               |     a0 = v0;
    0x00020cdc jalr t9                   |     t9 ();
    0x00020ce0 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x00020ce4 bnez v0, 0x20da4          |         goto label_9;
                                         |     }
    0x00020ce8 lw a0, (s0)               |     a0 = *(s0);
                                         |     do {
    0x00020cec lw v0, (a0)               |         v0 = *(a0);
    0x00020cf0 lw t9, 0x8c(v0)           |         t9 = *((v0 + 35));
    0x00020cf4 jalr t9                   |         t9 ();
    0x00020cf8 nop                       |         
    0x00020cfc lw v1, (v0)               |         v1 = *(v0);
    0x00020d00 lw t9, 4(v1)              |         t9 = *((v1 + 1));
    0x00020d04 move a0, v0               |         a0 = v0;
    0x00020d08 jalr t9                   |         t9 ();
    0x00020d0c lw gp, 0x10(sp)           |         gp = *(var_10h);
                                         |         if (v0 == 0) {
    0x00020d10 bnez v0, 0x20d34          |             
    0x00020d14 lw ra, 0x2c(sp)           |             ra = *(var_2ch);
    0x00020d18 lw s4, 0x28(sp)           |             s4 = *(var_28h);
    0x00020d1c lw s3, 0x24(sp)           |             s3 = *(var_24h);
    0x00020d20 lw s2, 0x20(sp)           |             s2 = *(var_20h);
    0x00020d24 lw s1, 0x1c(sp)           |             s1 = *(var_1ch);
    0x00020d28 lw s0, 0x18(sp)           |             s0 = *(var_18h);
    0x00020d2c addiu sp, sp, 0x30        |             
    0x00020d30 jr ra                     |             return v1;
                                         |         }
    0x00020d34 lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x00020d38 lw t9, -0x7e94(gp)        |         t9 = *(gp);
                                         |         /* str.NoiseSuppression_is_enabled__ */
    0x00020d3c addiu a0, a0, -0x4ff4     |         a0 += -aav.0x00004ff4;
    0x00020d40 jalr t9                   |         t9 ();
    0x00020d44 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00020d48 lw v0, -0x7254(gp)        |         v0 = *(gp);
    0x00020d4c lw a0, (v0)               |         a0 = *(v0);
    0x00020d50 lw v0, (a0)               |         v0 = *(a0);
    0x00020d54 lw t9, 0x8c(v0)           |         t9 = *((v0 + 35));
    0x00020d58 jalr t9                   |         t9 ();
    0x00020d5c nop                       |         
    0x00020d60 lw v1, (v0)               |         v1 = *(v0);
    0x00020d64 lw t9, 0xc(v1)            |         t9 = *((v1 + 3));
    0x00020d68 move a0, v0               |         a0 = v0;
    0x00020d6c jalr t9                   |         t9 ();
    0x00020d70 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00020d74 lw ra, 0x2c(sp)           |         ra = *(var_2ch);
    0x00020d78 lw s4, 0x28(sp)           |         s4 = *(var_28h);
    0x00020d7c lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x00020d80 lw s3, 0x24(sp)           |         s3 = *(var_24h);
    0x00020d84 lw s2, 0x20(sp)           |         s2 = *(var_20h);
    0x00020d88 lw s1, 0x1c(sp)           |         s1 = *(var_1ch);
    0x00020d8c lw s0, 0x18(sp)           |         s0 = *(var_18h);
    0x00020d90 lw t9, -0x7e50(gp)        |         t9 = sym.imp.printf
    0x00020d94 move a1, v0               |         a1 = v0;
                                         |         /* str._t_tNoiseSuppression_:__d_n */
    0x00020d98 addiu a0, a0, -0x4fd4     |         a0 += -0x4fd4;
    0x00020d9c addiu sp, sp, 0x30        |         
    0x00020da0 jr t9                     |         t9 ();
                                         | label_9:
    0x00020da4 lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x00020da8 lw t9, -0x7e94(gp)        |         t9 = *(gp);
                                         |         /* str.LevelEstimator_is_enable */
    0x00020dac addiu a0, a0, -0x5010     |         a0 += -aav.0x00005010;
    0x00020db0 jalr t9                   |         t9 ();
    0x00020db4 lw a0, (s0)               |         a0 = *(s0);
    0x00020db8 b 0x20cec                 |         
                                         |     } while (1);
                                         | label_8:
    0x00020dbc lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020dc0 lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str.HighPassFilter_is_enabled */
    0x00020dc4 addiu a0, a0, -0x502c     |     a0 += -aav.0x0000502c;
    0x00020dc8 jalr t9                   |     t9 ();
    0x00020dcc lw a0, (s0)               |     a0 = *(s0);
    0x00020dd0 b 0x20cc0                 |     goto label_0;
                                         | label_7:
    0x00020dd4 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020dd8 lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str.AGC_enabled__ */
    0x00020ddc addiu a0, a0, -0x50d8     |     a0 += -0x50d8;
    0x00020de0 jalr t9                   |     t9 ();
    0x00020de4 lw a0, (s1)               |     a0 = *(s1);
    0x00020de8 lw v0, (a0)               |     v0 = *(a0);
    0x00020dec lw t9, 0x80(v0)           |     t9 = *((v0 + 32));
    0x00020df0 jalr t9                   |     t9 ();
    0x00020df4 nop                       |     
    0x00020df8 lw v1, (v0)               |     v1 = *(v0);
    0x00020dfc lw t9, 0x14(v1)           |     t9 = *((v1 + 5));
    0x00020e00 move a0, v0               |     a0 = v0;
    0x00020e04 jalr t9                   |     t9 ();
    0x00020e08 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020e0c move a1, v0               |     a1 = v0;
    0x00020e10 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020e14 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str._t_tmode_:__d_n */
    0x00020e18 addiu a0, a0, -0x50c8     |     a0 += -0x50c8;
    0x00020e1c jalr t9                   |     t9 ();
    0x00020e20 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020e24 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020e28 lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str._t_tps:_0:_kAdaptiveAnalog_1:_kAdaptiveDigital_2:_kFixedDigital */
    0x00020e2c addiu a0, a0, -0x50b8     |     a0 += -0x50b8;
    0x00020e30 jalr t9                   |     t9 ();
    0x00020e34 lw a0, (s1)               |     a0 = *(s1);
    0x00020e38 lw v0, (a0)               |     v0 = *(a0);
    0x00020e3c lw t9, 0x80(v0)           |     t9 = *((v0 + 32));
    0x00020e40 jalr t9                   |     t9 ();
    0x00020e44 nop                       |     
    0x00020e48 lw v1, (v0)               |     v1 = *(v0);
    0x00020e4c lw t9, 0x1c(v1)           |     t9 = *((v1 + 7));
    0x00020e50 move a0, v0               |     a0 = v0;
    0x00020e54 jalr t9                   |     t9 ();
    0x00020e58 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020e5c move a1, v0               |     a1 = v0;
    0x00020e60 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020e64 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str._t_ttarget_level_dbfs_:__d_n */
    0x00020e68 addiu a0, a0, -0x5078     |     a0 += -aav.0x00005078;
    0x00020e6c jalr t9                   |     t9 ();
    0x00020e70 lw a0, (s1)               |     a0 = *(s1);
    0x00020e74 lw v0, (a0)               |     v0 = *(a0);
    0x00020e78 lw t9, 0x80(v0)           |     t9 = *((v0 + 32));
    0x00020e7c jalr t9                   |     t9 ();
    0x00020e80 nop                       |     
    0x00020e84 lw v1, (v0)               |     v1 = *(v0);
    0x00020e88 lw t9, 0x24(v1)           |     t9 = *((v1 + 9));
    0x00020e8c move a0, v0               |     a0 = v0;
    0x00020e90 jalr t9                   |     t9 ();
    0x00020e94 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020e98 move a1, v0               |     a1 = v0;
    0x00020e9c lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020ea0 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str._t_tcompression_gain_db_:__d_n */
    0x00020ea4 addiu a0, a0, -0x505c     |     a0 += -0x505c;
    0x00020ea8 jalr t9                   |     t9 ();
    0x00020eac lw a0, (s1)               |     a0 = *(s1);
    0x00020eb0 lw v0, (a0)               |     v0 = *(a0);
    0x00020eb4 lw t9, 0x80(v0)           |     t9 = *((v0 + 32));
    0x00020eb8 jalr t9                   |     t9 ();
    0x00020ebc nop                       |     
    0x00020ec0 lw v1, (v0)               |     v1 = *(v0);
    0x00020ec4 lw t9, 0x2c(v1)           |     t9 = *((v1 + 11));
    0x00020ec8 move a0, v0               |     a0 = v0;
    0x00020ecc jalr t9                   |     t9 ();
    0x00020ed0 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x00020ed4 beqz v0, 0x20c90          |         goto label_1;
                                         |     }
    0x00020ed8 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020edc lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str._t_tlimiter_enabled */
    0x00020ee0 addiu a0, a0, -0x5040     |     a0 += -aav.0x00005040;
    0x00020ee4 jalr t9                   |     t9 ();
    0x00020ee8 lw a0, (s0)               |     a0 = *(s0);
    0x00020eec b 0x20c94                 |     goto label_2;
                                         | label_6:
    0x00020ef0 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020ef4 lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str.AEC_enable__ */
    0x00020ef8 addiu a0, a0, -0x516c     |     a0 += -0x516c;
    0x00020efc jalr t9                   |     t9 ();
    0x00020f00 lw a0, (s0)               |     a0 = *(s0);
    0x00020f04 lw v0, (a0)               |     v0 = *(a0);
    0x00020f08 lw t9, 0x78(v0)           |     t9 = *((v0 + 30));
    0x00020f0c jalr t9                   |     t9 ();
    0x00020f10 nop                       |     
    0x00020f14 lw v1, (v0)               |     v1 = *(v0);
    0x00020f18 lw t9, 0xc(v1)            |     t9 = *((v1 + 3));
    0x00020f1c move a0, v0               |     a0 = v0;
    0x00020f20 jalr t9                   |     t9 ();
    0x00020f24 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x00020f28 bnez v0, 0x21020          |         goto label_10;
                                         |     }
    0x00020f2c lw a0, (s0)               |     a0 = *(s0);
                                         | label_5:
    0x00020f30 lw v0, (a0)               |     v0 = *(a0);
    0x00020f34 lw t9, 0x78(v0)           |     t9 = *((v0 + 30));
    0x00020f38 jalr t9                   |     t9 ();
    0x00020f3c nop                       |     
    0x00020f40 lw v1, (v0)               |     v1 = *(v0);
    0x00020f44 lw t9, 0x1c(v1)           |     t9 = *((v1 + 7));
    0x00020f48 move a0, v0               |     a0 = v0;
    0x00020f4c jalr t9                   |     t9 ();
    0x00020f50 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020f54 move a1, v0               |     a1 = v0;
    0x00020f58 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020f5c lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str._t_tsuppression_level_:__d_n */
    0x00020f60 addiu a0, a0, -0x5120     |     a0 += -0x5120;
    0x00020f64 jalr t9                   |     t9 ();
    0x00020f68 lw a0, (s0)               |     a0 = *(s0);
    0x00020f6c lw v0, (a0)               |     v0 = *(a0);
    0x00020f70 lw t9, 0x78(v0)           |     t9 = *((v0 + 30));
    0x00020f74 jalr t9                   |     t9 ();
    0x00020f78 nop                       |     
    0x00020f7c lw v1, (v0)               |     v1 = *(v0);
    0x00020f80 lw t9, 0x38(v1)           |     t9 = *((v1 + 14));
    0x00020f84 move a0, v0               |     a0 = v0;
    0x00020f88 jalr t9                   |     t9 ();
    0x00020f8c lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x00020f90 bnez v0, 0x20fd8          |         goto label_11;
                                         |     }
    0x00020f94 lw a0, (s0)               |     a0 = *(s0);
                                         | label_4:
    0x00020f98 lw v0, (a0)               |     v0 = *(a0);
    0x00020f9c lw t9, 0x78(v0)           |     t9 = *((v0 + 30));
    0x00020fa0 jalr t9                   |     t9 ();
    0x00020fa4 nop                       |     
    0x00020fa8 lw v1, (v0)               |     v1 = *(v0);
    0x00020fac lw t9, 0x44(v1)           |     t9 = *((v1 + 17));
    0x00020fb0 move a0, v0               |     a0 = v0;
    0x00020fb4 jalr t9                   |     t9 ();
    0x00020fb8 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 == 0) {
    0x00020fbc beqz v0, 0x20c60          |         goto label_3;
                                         |     }
    0x00020fc0 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020fc4 lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str._t_tenable_delay_logging */
    0x00020fc8 addiu a0, a0, -0x50f0     |     a0 += -0x50f0;
    0x00020fcc jalr t9                   |     t9 ();
    0x00020fd0 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020fd4 b 0x20c60                 |     goto label_3;
                                         | label_11:
    0x00020fd8 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00020fdc lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str._t_tenable_metrics */
    0x00020fe0 addiu a0, a0, -0x5104     |     a0 += -0x5104;
    0x00020fe4 jalr t9                   |     t9 ();
    0x00020fe8 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00020fec lw v0, -0x7254(gp)        |     v0 = *(gp);
    0x00020ff0 lw a0, (v0)               |     a0 = *(v0);
    0x00020ff4 lw v0, (a0)               |     v0 = *(a0);
    0x00020ff8 lw t9, 0x78(v0)           |     t9 = *((v0 + 30));
    0x00020ffc jalr t9                   |     t9 ();
    0x00021000 nop                       |     
    0x00021004 lw v1, (v0)               |     v1 = *(v0);
    0x00021008 move a0, v0               |     a0 = v0;
    0x0002100c lw t9, 0x3c(v1)           |     t9 = *((v1 + 15));
    0x00021010 move a1, zero             |     a1 = 0;
    0x00021014 jalr t9                   |     t9 ();
    0x00021018 lw a0, (s0)               |     a0 = *(s0);
    0x0002101c b 0x20f98                 |     goto label_4;
                                         | label_10:
    0x00021020 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00021024 lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str._t_tenable_drift_compensation */
    0x00021028 addiu a0, a0, -0x515c     |     a0 += -0x515c;
    0x0002102c jalr t9                   |     t9 ();
    0x00021030 lw a0, (s0)               |     a0 = *(s0);
    0x00021034 lw v0, (a0)               |     v0 = *(a0);
    0x00021038 lw t9, 0x78(v0)           |     t9 = *((v0 + 30));
    0x0002103c jalr t9                   |     t9 ();
    0x00021040 nop                       |     
    0x00021044 lw v1, (v0)               |     v1 = *(v0);
    0x00021048 lw t9, 0x14(v1)           |     t9 = *((v1 + 5));
    0x0002104c move a0, v0               |     a0 = v0;
    0x00021050 jalr t9                   |     t9 ();
    0x00021054 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00021058 move a1, v0               |     a1 = v0;
    0x0002105c lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00021060 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str._t_t_tstream_drift_samples_:__d_n */
    0x00021064 addiu a0, a0, -0x5140     |     a0 += -0x5140;
    0x00021068 jalr t9                   |     t9 ();
    0x0002106c lw a0, (s0)               |     a0 = *(s0);
    0x00021070 b 0x20f30                 |     goto label_5;
                                         | }
    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x21348 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.ingenic_apm_init ()          | void ingenic_apm_init () {
    0x00021348 lui gp, 8                     |     
    0x0002134c addiu gp, gp, -0x7948         |     
    0x00021350 addu gp, gp, t9               |     gp += t9;
    0x00021354 lw v0, -0x7fe4(gp)            |     v0 = *((gp - 8185));
    0x00021358 addiu sp, sp, -0x98           |     
    0x0002135c lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
    0x00021360 sw s1, 0x78(sp)               |     *(var_78h) = s1;
    0x00021364 sw s0, 0x74(sp)               |     *(var_74h) = s0;
    0x00021368 addiu s1, sp, 0x2c            |     s1 = sp + 0x2c;
    0x0002136c move s0, a0                   |     s0 = a0;
    0x00021370 sw s2, 0x7c(sp)               |     *(var_7ch) = s2;
    0x00021374 sw gp, 0x20(sp)               |     *(var_20h) = gp;
    0x00021378 sw ra, 0x8c(sp)               |     *(var_8ch) = ra;
    0x0002137c sw s5, 0x88(sp)               |     *(var_88h) = s5;
    0x00021380 sw s4, 0x84(sp)               |     *(var_84h) = s4;
    0x00021384 sw s3, 0x80(sp)               |     *(var_80h) = s3;
    0x00021388 sdc1 f20, 0x90(sp)            |     __asm ("sdc1 f20, 0x90(sp)");
    0x0002138c sw zero, 0x2c(sp)             |     *(var_2ch) = 0;
    0x00021390 sw zero, 0x30(sp)             |     *(var_30h) = 0;
    0x00021394 sw zero, 0x3c(sp)             |     *(var_3ch) = 0;
    0x00021398 sw s1, 0x34(sp)               |     *(var_34h) = s1;
    0x0002139c sw s1, 0x38(sp)               |     *(var_38h) = s1;
    0x000213a0 addiu a0, zero, 1             |     a0 = 1;
    0x000213a4 sw s0, 0x1700(v0)             |     *((v0 + 1472)) = s0;
    0x000213a8 addiu s2, sp, 0x28            |     s2 = sp + 0x28;
    0x000213ac jalr t9                       |     t9 ();
    0x000213b0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000213b4 lw v1, 0x30(sp)               |     v1 = *(var_30h);
    0x000213b8 move s4, v0                   |     s4 = v0;
    0x000213bc addiu v0, zero, 1             |     v0 = 1;
    0x000213c0 sb v0, (s4)                   |     *(s4) = v0;
    0x000213c4 lw t0, -0x747c(gp)            |     t0 = *(gp);
    0x000213c8 move s3, s1                   |     s3 = s1;
                                             |     if (v1 == 0) {
    0x000213cc beqz v1, 0x21408              |         goto label_34;
                                             |     }
                                             |     do {
                                             | label_9:
    0x000213d0 lw a0, 0x10(v1)               |         a0 = *((v1 + 4));
    0x000213d4 sltu a0, a0, t0               |         a0 = (a0 < t0) ? 1 : 0;
                                             |         if (a0 != 0) {
    0x000213d8 bnez a0, 0x21cc0              |             goto label_35;
                                             |         }
    0x000213dc nop                           |         
    0x000213e0 move s3, v1                   |         s3 = v1;
    0x000213e4 lw v1, 8(v1)                  |         v1 = *((v1 + 2));
    0x000213e8 bnez v1, 0x213d0              |         
                                             |     } while (v1 != 0);
    0x000213ec nop                           |     
                                             | label_10:
    0x000213f0 lw t9, -0x7748(gp)            |     t9 = *(gp);
                                             |     if (s3 != s1) {
    0x000213f4 beq s3, s1, 0x2140c           |         
    0x000213f8 lw v0, 0x10(s3)               |         v0 = *(var_3ch);
    0x000213fc sltu v0, t0, v0               |         v0 = (t0 < v0) ? 1 : 0;
    0x00021400 addiu s2, sp, 0x28            |         s2 = sp + 0x28;
                                             |         if (v0 == 0) {
    0x00021404 beqz v0, 0x21434              |             goto label_36;
                                             |         }
                                             | label_34:
    0x00021408 lw t9, -0x7748(gp)            |         t9 = *(gp);
                                             |     }
    0x0002140c addiu s2, sp, 0x28            |     s2 = sp + 0x28;
    0x00021410 addiu a0, sp, 0x68            |     a0 = sp + 0x68;
    0x00021414 move a1, s2                   |     a1 = s2;
    0x00021418 move a2, s3                   |     a2 = s3;
    0x0002141c addiu a3, sp, 0x60            |     a3 = sp + 0x60;
    0x00021420 sw t0, 0x60(sp)               |     *(var_60h) = t0;
    0x00021424 sw zero, 0x64(sp)             |     *(var_64h) = 0;
    0x00021428 jalr t9                       |     t9 ();
    0x0002142c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00021430 lw s3, 0x68(sp)               |     s3 = *(var_68h);
                                             | label_36:
    0x00021434 lw a0, 0x14(s3)               |     a0 = *((s3 + 5));
    0x00021438 lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
                                             |     if (a0 != 0) {
    0x0002143c beqz a0, 0x21458              |         
    0x00021440 lw v0, (a0)                   |         v0 = *(a0);
    0x00021444 lw t9, 4(v0)                  |         t9 = *((v0 + 1));
    0x00021448 jalr t9                       |         t9 ();
    0x0002144c nop                           |         
    0x00021450 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021454 lw t9, -0x799c(gp)            |         t9 = sym.imp.operator_new_unsigned_int_;
                                             |     }
    0x00021458 addiu a0, zero, 8             |     a0 = 8;
    0x0002145c jalr t9                       |     t9 ();
    0x00021460 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00021464 lw v1, -0x78a4(gp)            |     v1 = *(gp);
    0x00021468 lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
    0x0002146c sw s4, 4(v0)                  |     *((v0 + 1)) = s4;
    0x00021470 addiu v1, v1, 8               |     v1 += 8;
    0x00021474 sw v1, (v0)                   |     *(v0) = v1;
    0x00021478 addiu a0, zero, 1             |     a0 = 1;
    0x0002147c sw v0, 0x14(s3)               |     *((s3 + 5)) = v0;
    0x00021480 jalr t9                       |     t9 ();
    0x00021484 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00021488 lw v1, 0x30(sp)               |     v1 = *(var_30h);
    0x0002148c move s4, v0                   |     s4 = v0;
    0x00021490 sb zero, (v0)                 |     *(v0) = 0;
    0x00021494 lw t0, -0x7e64(gp)            |     t0 = *(gp);
    0x00021498 move s3, s1                   |     s3 = s1;
                                             |     if (v1 == 0) {
    0x0002149c beqz v1, 0x21c58              |         goto label_37;
                                             |     }
                                             |     do {
                                             | label_11:
    0x000214a0 lw a0, 0x10(v1)               |         a0 = *((v1 + 4));
    0x000214a4 sltu a0, a0, t0               |         a0 = (a0 < t0) ? 1 : 0;
                                             |         if (a0 != 0) {
    0x000214a8 bnez a0, 0x21cd4              |             goto label_38;
                                             |         }
    0x000214ac nop                           |         
    0x000214b0 move s3, v1                   |         s3 = v1;
    0x000214b4 lw v1, 8(v1)                  |         v1 = *((v1 + 2));
    0x000214b8 bnez v1, 0x214a0              |         
                                             |     } while (v1 != 0);
    0x000214bc nop                           |     
                                             | label_12:
    0x000214c0 lw t9, -0x7748(gp)            |     t9 = *(gp);
                                             |     if (s3 == s1) {
    0x000214c4 beq s3, s1, 0x21c5c           |         goto label_39;
                                             |     }
    0x000214c8 lw v0, 0x10(s3)               |     v0 = *(var_3ch);
    0x000214cc sltu v0, t0, v0               |     v0 = (t0 < v0) ? 1 : 0;
    0x000214d0 addiu a0, sp, 0x68            |     a0 = sp + 0x68;
                                             |     if (v0 != 0) {
    0x000214d4 bnez v0, 0x21c60              |         goto label_40;
                                             |     }
                                             | label_2:
    0x000214d8 lw a0, 0x14(s3)               |     a0 = *((s3 + 5));
    0x000214dc lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
                                             |     if (a0 != 0) {
    0x000214e0 beqz a0, 0x214fc              |         
    0x000214e4 lw v0, (a0)                   |         v0 = *(a0);
    0x000214e8 lw t9, 4(v0)                  |         t9 = *((v0 + 1));
    0x000214ec jalr t9                       |         t9 ();
    0x000214f0 nop                           |         
    0x000214f4 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x000214f8 lw t9, -0x799c(gp)            |         t9 = sym.imp.operator_new_unsigned_int_;
                                             |     }
    0x000214fc addiu a0, zero, 8             |     a0 = 8;
    0x00021500 jalr t9                       |     t9 ();
    0x00021504 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00021508 lw v1, -0x7e90(gp)            |     v1 = *(gp);
    0x0002150c lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
    0x00021510 sw s4, 4(v0)                  |     *((v0 + 1)) = s4;
    0x00021514 addiu v1, v1, 8               |     v1 += 8;
    0x00021518 sw v1, (v0)                   |     *(v0) = v1;
    0x0002151c addiu a0, zero, 8             |     a0 = 8;
    0x00021520 sw v0, 0x14(s3)               |     *((s3 + 5)) = v0;
    0x00021524 jalr t9                       |     t9 ();
    0x00021528 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0002152c lw v1, 0x30(sp)               |     v1 = *(var_30h);
    0x00021530 move s4, v0                   |     s4 = v0;
    0x00021534 sb zero, (v0)                 |     *(v0) = 0;
    0x00021538 addiu v0, zero, 0x55          |     v0 = 0x55;
    0x0002153c sw v0, 4(s4)                  |     *((s4 + 1)) = v0;
    0x00021540 lw t0, -0x7df4(gp)            |     t0 = *(gp);
    0x00021544 move s3, s1                   |     s3 = s1;
                                             |     if (v1 == 0) {
    0x00021548 beqz v1, 0x21c2c              |         goto label_41;
                                             |     }
                                             |     do {
                                             | label_7:
    0x0002154c lw a0, 0x10(v1)               |         a0 = *((v1 + 4));
    0x00021550 sltu a0, a0, t0               |         a0 = (a0 < t0) ? 1 : 0;
                                             |         if (a0 != 0) {
    0x00021554 bnez a0, 0x21cac              |             goto label_42;
                                             |         }
    0x00021558 nop                           |         
    0x0002155c move s3, v1                   |         s3 = v1;
    0x00021560 lw v1, 8(v1)                  |         v1 = *((v1 + 2));
    0x00021564 bnez v1, 0x2154c              |         
                                             |     } while (v1 != 0);
    0x00021568 nop                           |     
                                             | label_8:
    0x0002156c lw t9, -0x7748(gp)            |     t9 = *(gp);
                                             |     if (s3 == s1) {
    0x00021570 beq s3, s1, 0x21c30           |         goto label_43;
                                             |     }
    0x00021574 lw v0, 0x10(s3)               |     v0 = *(var_3ch);
    0x00021578 sltu v0, t0, v0               |     v0 = (t0 < v0) ? 1 : 0;
    0x0002157c addiu a0, sp, 0x68            |     a0 = sp + 0x68;
                                             |     if (v0 != 0) {
    0x00021580 bnez v0, 0x21c34              |         goto label_44;
                                             |     }
                                             | label_1:
    0x00021584 lw a0, 0x14(s3)               |     a0 = *((s3 + 5));
    0x00021588 lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
                                             |     if (a0 != 0) {
    0x0002158c beqz a0, 0x215a8              |         
    0x00021590 lw v0, (a0)                   |         v0 = *(a0);
    0x00021594 lw t9, 4(v0)                  |         t9 = *((v0 + 1));
    0x00021598 jalr t9                       |         t9 ();
    0x0002159c nop                           |         
    0x000215a0 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x000215a4 lw t9, -0x799c(gp)            |         t9 = sym.imp.operator_new_unsigned_int_;
                                             |     }
    0x000215a8 addiu a0, zero, 8             |     a0 = 8;
    0x000215ac jalr t9                       |     t9 ();
    0x000215b0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000215b4 lw v1, -0x79c4(gp)            |     v1 = *(gp);
    0x000215b8 lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
    0x000215bc sw s4, 4(v0)                  |     *((v0 + 1)) = s4;
    0x000215c0 addiu v1, v1, 8               |     v1 += 8;
    0x000215c4 sw v1, (v0)                   |     *(v0) = v1;
    0x000215c8 addiu a0, zero, 1             |     a0 = 1;
    0x000215cc sw v0, 0x14(s3)               |     *((s3 + 5)) = v0;
    0x000215d0 jalr t9                       |     t9 ();
    0x000215d4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000215d8 lw v1, 0x30(sp)               |     v1 = *(var_30h);
    0x000215dc move s4, v0                   |     s4 = v0;
    0x000215e0 sb zero, (v0)                 |     *(v0) = 0;
    0x000215e4 lw t0, -0x7f78(gp)            |     t0 = *(gp);
    0x000215e8 move s3, s1                   |     s3 = s1;
                                             |     if (v1 == 0) {
    0x000215ec beqz v1, 0x21bd4              |         goto label_45;
                                             |     }
                                             |     do {
                                             | label_5:
    0x000215f0 lw a0, 0x10(v1)               |         a0 = *((v1 + 4));
    0x000215f4 sltu a0, a0, t0               |         a0 = (a0 < t0) ? 1 : 0;
                                             |         if (a0 != 0) {
    0x000215f8 bnez a0, 0x21c98              |             goto label_46;
                                             |         }
    0x000215fc nop                           |         
    0x00021600 move s3, v1                   |         s3 = v1;
    0x00021604 lw v1, 8(v1)                  |         v1 = *((v1 + 2));
    0x00021608 bnez v1, 0x215f0              |         
                                             |     } while (v1 != 0);
    0x0002160c nop                           |     
                                             | label_6:
    0x00021610 lw t9, -0x7748(gp)            |     t9 = *(gp);
                                             |     if (s3 == s1) {
    0x00021614 beq s3, s1, 0x21bd8           |         goto label_47;
                                             |     }
    0x00021618 lw v0, 0x10(s3)               |     v0 = *(var_3ch);
    0x0002161c sltu v0, t0, v0               |     v0 = (t0 < v0) ? 1 : 0;
    0x00021620 addiu a0, sp, 0x68            |     a0 = sp + 0x68;
                                             |     if (v0 != 0) {
    0x00021624 bnez v0, 0x21bdc              |         goto label_48;
                                             |     }
                                             | label_0:
    0x00021628 lw a0, 0x14(s3)               |     a0 = *((s3 + 5));
    0x0002162c lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
                                             |     if (a0 != 0) {
    0x00021630 beqz a0, 0x2164c              |         
    0x00021634 lw v0, (a0)                   |         v0 = *(a0);
    0x00021638 lw t9, 4(v0)                  |         t9 = *((v0 + 1));
    0x0002163c jalr t9                       |         t9 ();
    0x00021640 nop                           |         
    0x00021644 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021648 lw t9, -0x799c(gp)            |         t9 = sym.imp.operator_new_unsigned_int_;
                                             |     }
    0x0002164c addiu a0, zero, 8             |     a0 = 8;
    0x00021650 jalr t9                       |     t9 ();
    0x00021654 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00021658 lw v1, -0x7310(gp)            |     v1 = *(gp);
    0x0002165c lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
    0x00021660 sw s4, 4(v0)                  |     *((v0 + 1)) = s4;
    0x00021664 addiu v1, v1, 8               |     v1 += 8;
    0x00021668 sw v1, (v0)                   |     *(v0) = v1;
    0x0002166c addiu a0, zero, 1             |     a0 = 1;
    0x00021670 sw v0, 0x14(s3)               |     *((s3 + 5)) = v0;
    0x00021674 jalr t9                       |     t9 ();
    0x00021678 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0002167c lw v1, 0x30(sp)               |     v1 = *(var_30h);
    0x00021680 move s4, v0                   |     s4 = v0;
    0x00021684 sb zero, (v0)                 |     *(v0) = 0;
    0x00021688 lw t0, -0x7e3c(gp)            |     t0 = *(gp);
    0x0002168c move s3, s1                   |     s3 = s1;
                                             |     if (v1 == 0) {
    0x00021690 beqz v1, 0x21c00              |         goto label_49;
                                             |     }
                                             |     do {
                                             | label_3:
    0x00021694 lw a3, 0x10(v1)               |         a3 = *((v1 + 4));
    0x00021698 sltu a3, a3, t0               |         a3 = (a3 < t0) ? 1 : 0;
                                             |         if (a3 != 0) {
    0x0002169c bnez a3, 0x21c84              |             goto label_50;
                                             |         }
    0x000216a0 nop                           |         
    0x000216a4 move s3, v1                   |         s3 = v1;
    0x000216a8 lw v1, 8(v1)                  |         v1 = *((v1 + 2));
    0x000216ac bnez v1, 0x21694              |         
                                             |     } while (v1 != 0);
    0x000216b0 nop                           |     
                                             | label_4:
    0x000216b4 lw t9, -0x7748(gp)            |     t9 = *(gp);
                                             |     if (s3 == s1) {
    0x000216b8 beq s3, s1, 0x21c04           |         goto label_51;
                                             |     }
    0x000216bc lw v0, 0x10(s3)               |     v0 = *(var_3ch);
    0x000216c0 sltu v0, t0, v0               |     v0 = (t0 < v0) ? 1 : 0;
    0x000216c4 addiu a0, sp, 0x68            |     a0 = sp + 0x68;
    0x000216c8 bnez v0, 0x21c08              |     
                                             |     while (1) {
    0x000216cc lw a0, 0x14(s3)               |         a0 = *((s3 + 5));
    0x000216d0 lw t9, -0x799c(gp)            |         t9 = sym.imp.operator_new_unsigned_int_;
                                             |         if (a0 != 0) {
    0x000216d4 beqz a0, 0x216f0              |             
    0x000216d8 lw v0, (a0)                   |             v0 = *(a0);
    0x000216dc lw t9, 4(v0)                  |             t9 = *((v0 + 1));
    0x000216e0 jalr t9                       |             t9 ();
    0x000216e4 nop                           |             
    0x000216e8 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x000216ec lw t9, -0x799c(gp)            |             t9 = sym.imp.operator_new_unsigned_int_;
                                             |         }
    0x000216f0 addiu a0, zero, 8             |         a0 = 8;
    0x000216f4 jalr t9                       |         t9 ();
    0x000216f8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x000216fc lw v1, -0x7674(gp)            |         v1 = *(gp);
    0x00021700 lw t9, -0x7e40(gp)            |         t9 = *(gp);
    0x00021704 sw s4, 4(v0)                  |         *((v0 + 1)) = s4;
    0x00021708 addiu v1, v1, 8               |         v1 += 8;
    0x0002170c sw v1, (v0)                   |         *(v0) = v1;
    0x00021710 move a0, s2                   |         a0 = s2;
    0x00021714 sw v0, 0x14(s3)               |         *((s3 + 5)) = v0;
    0x00021718 jalr t9                       |         t9 ();
    0x0002171c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021720 lw s3, -0x7254(gp)            |         s3 = *(gp);
    0x00021724 sw v0, (s3)                   |         *(s3) = v0;
                                             |         if (v0 == 0) {
    0x00021728 beqz v0, 0x22820              |             goto label_52;
                                             |         }
    0x0002172c lw v1, (v0)                   |         v1 = *(v0);
    0x00021730 sw zero, 0x10(sp)             |         *(var_10h) = 0;
    0x00021734 sw zero, 0x14(sp)             |         *(var_14h) = 0;
    0x00021738 sw zero, 0x18(sp)             |         *(var_18h) = 0;
    0x0002173c lw t9, 0x10(v1)               |         t9 = *((v1 + 4));
    0x00021740 move a1, s0                   |         a1 = s0;
    0x00021744 move a0, v0                   |         a0 = v0;
    0x00021748 move a2, s0                   |         a2 = s0;
    0x0002174c move a3, s0                   |         a3 = s0;
    0x00021750 jalr t9                       |         t9 ();
    0x00021754 lw a0, (s3)                   |         a0 = *(s3);
    0x00021758 lw v0, (a0)                   |         v0 = *(a0);
    0x0002175c lw t9, 0x84(v0)               |         t9 = *((v0 + 33));
    0x00021760 jalr t9                       |         t9 ();
    0x00021764 nop                           |         
    0x00021768 lw v1, (v0)                   |         v1 = *(v0);
    0x0002176c move a0, v0                   |         a0 = v0;
    0x00021770 lw t9, (v1)                   |         t9 = *(v1);
    0x00021774 addiu a1, zero, 1             |         a1 = 1;
    0x00021778 jalr t9                       |         t9 ();
    0x0002177c lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021780 lw s0, -0x7fcc(gp)            |         s0 = *(gp);
    0x00021784 lw s4, -0x7fcc(gp)            |         s4 = *(gp);
    0x00021788 lw a2, -0x7fcc(gp)            |         a2 = *(gp);
    0x0002178c lw a3, -0x7354(gp)            |         a3 = *(gp);
    0x00021790 lw t9, -0x7af0(gp)            |         t9 = sym.read_profile;
                                             |         /* str._etc_webrtc_profile.ini */
    0x00021794 addiu a0, s0, -0x4f54         |         a0 = s0 + -aav.0x00004f54;
                                             |         /* esilref: 'AEC' */
    0x00021798 addiu a1, s4, -0x4f3c         |         a1 = s4 + -0x4f3c;
                                             |         /* str.AEC_enable */
    0x0002179c addiu a2, a2, -0x4f38         |         a2 += -0x4f38;
    0x000217a0 jalr t9                       |         t9 ();
    0x000217a4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x000217a8 bltz v0, 0x2283c              |             goto label_53;
                                             |         }
    0x000217ac lw a1, -0x7fcc(gp)            |         a1 = *(gp);
    0x000217b0 lw t9, -0x7cec(gp)            |         t9 = sym.imp.strcmp;
    0x000217b4 lw a0, -0x7354(gp)            |         a0 = *(gp);
                                             |         /* str.true */
    0x000217b8 addiu a1, a1, -0x4f10         |         a1 += -0x4f10;
    0x000217bc jalr t9                       |         t9 ();
    0x000217c0 lw a0, (s3)                   |         a0 = *(s3);
                                             |         if (v0 != 0) {
    0x000217c4 bnez v0, 0x21ce8              |             goto label_54;
                                             |         }
                                             | label_30:
    0x000217c8 lw v0, (a0)                   |         v0 = *(a0);
    0x000217cc lw t9, 0x78(v0)               |         t9 = *((v0 + 30));
    0x000217d0 jalr t9                       |         t9 ();
    0x000217d4 nop                           |         
    0x000217d8 lw v1, (v0)                   |         v1 = *(v0);
    0x000217dc move a0, v0                   |         a0 = v0;
    0x000217e0 lw t9, (v1)                   |         t9 = *(v1);
    0x000217e4 addiu a1, zero, 1             |         a1 = 1;
    0x000217e8 jalr t9                       |         t9 ();
    0x000217ec lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             | label_13:
    0x000217f0 lw a2, -0x7fcc(gp)            |         a2 = *(gp);
    0x000217f4 lw a3, -0x7354(gp)            |         a3 = *(gp);
    0x000217f8 lw t9, -0x7af0(gp)            |         t9 = sym.read_profile;
                                             |         /* str._etc_webrtc_profile.ini */
    0x000217fc addiu a0, s0, -0x4f54         |         a0 = s0 + -aav.0x00004f54;
                                             |         /* esilref: 'AEC' */
    0x00021800 addiu a1, s4, -0x4f3c         |         a1 = s4 + -0x4f3c;
                                             |         /* str.enable_drift_compensation */
    0x00021804 addiu a2, a2, -0x4f2c         |         a2 += -aav.0x00004f2c;
    0x00021808 jalr t9                       |         t9 ();
    0x0002180c lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x00021810 bltz v0, 0x21d14              |             goto label_55;
                                             |         }
    0x00021814 lw a1, -0x7fcc(gp)            |         a1 = *(gp);
    0x00021818 lw t9, -0x7cec(gp)            |         t9 = sym.imp.strcmp;
    0x0002181c lw a0, -0x7354(gp)            |         a0 = *(gp);
                                             |         /* str.true */
    0x00021820 addiu a1, a1, -0x4f10         |         a1 += -0x4f10;
    0x00021824 jalr t9                       |         t9 ();
    0x00021828 lw a0, (s3)                   |         a0 = *(s3);
                                             |         if (v0 != 0) {
    0x0002182c bnez v0, 0x21d18              |             goto label_56;
                                             |         }
    0x00021830 lw v0, (a0)                   |         v0 = *(a0);
    0x00021834 lw t9, 0x78(v0)               |         t9 = *((v0 + 30));
    0x00021838 jalr t9                       |         t9 ();
    0x0002183c nop                           |         
    0x00021840 lw v1, (v0)                   |         v1 = *(v0);
    0x00021844 move a0, v0                   |         a0 = v0;
    0x00021848 lw t9, 8(v1)                  |         t9 = *((v1 + 2));
    0x0002184c addiu a1, zero, 1             |         a1 = 1;
    0x00021850 jalr t9                       |         t9 ();
    0x00021854 lw a0, (s3)                   |         a0 = *(s3);
                                             | label_14:
    0x00021858 lw v0, (a0)                   |         v0 = *(a0);
    0x0002185c lw t9, 0x78(v0)               |         t9 = *((v0 + 30));
    0x00021860 jalr t9                       |         t9 ();
    0x00021864 nop                           |         
    0x00021868 lw v1, (v0)                   |         v1 = *(v0);
    0x0002186c lw t9, 0xc(v1)                |         t9 = *((v1 + 3));
    0x00021870 move a0, v0                   |         a0 = v0;
    0x00021874 jalr t9                       |         t9 ();
    0x00021878 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 != 0) {
    0x0002187c beqz v0, 0x218ac              |             
    0x00021880 lw a0, (s3)                   |             a0 = *(s3);
    0x00021884 lw v0, (a0)                   |             v0 = *(a0);
    0x00021888 lw t9, 0x78(v0)               |             t9 = *((v0 + 30));
    0x0002188c jalr t9                       |             t9 ();
    0x00021890 nop                           |             
    0x00021894 lw v1, (v0)                   |             v1 = *(v0);
    0x00021898 move a0, v0                   |             a0 = v0;
    0x0002189c lw t9, 0x10(v1)               |             t9 = *((v1 + 4));
    0x000218a0 move a1, zero                 |             a1 = 0;
    0x000218a4 jalr t9                       |             t9 ();
    0x000218a8 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
    0x000218ac lw a2, -0x7fcc(gp)            |         a2 = *(gp);
    0x000218b0 lw a3, -0x7354(gp)            |         a3 = *(gp);
    0x000218b4 lw t9, -0x7af0(gp)            |         t9 = sym.read_profile;
                                             |         /* str._etc_webrtc_profile.ini */
    0x000218b8 addiu a0, s0, -0x4f54         |         a0 = s0 + -aav.0x00004f54;
                                             |         /* esilref: 'AEC' */
    0x000218bc addiu a1, s4, -0x4f3c         |         a1 = s4 + -0x4f3c;
                                             |         /* str.set_suppression_level */
    0x000218c0 addiu a2, a2, -0x4f08         |         a2 += -0x4f08;
    0x000218c4 jalr t9                       |         t9 ();
    0x000218c8 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x000218cc bltz v0, 0x21d44              |             goto label_57;
                                             |         }
    0x000218d0 lw a1, -0x7fcc(gp)            |         a1 = *(gp);
    0x000218d4 lw t9, -0x7cec(gp)            |         t9 = sym.imp.strcmp;
    0x000218d8 lw a0, -0x7354(gp)            |         a0 = *(gp);
                                             |         /* str.kLowSuppression */
    0x000218dc addiu a1, a1, -0x4ee4         |         a1 += -aav.0x00004ee4;
    0x000218e0 jalr t9                       |         t9 ();
    0x000218e4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x000218e8 beqz v0, 0x226ec              |             goto label_58;
                                             |         }
    0x000218ec lw a1, -0x7fcc(gp)            |         a1 = *(gp);
    0x000218f0 lw t9, -0x7cec(gp)            |         t9 = sym.imp.strcmp;
    0x000218f4 lw a0, -0x7354(gp)            |         a0 = *(gp);
                                             |         /* str.kModerateSuppression */
    0x000218f8 addiu a1, a1, -0x4ed4         |         a1 += -0x4ed4;
    0x000218fc jalr t9                       |         t9 ();
    0x00021900 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x00021904 beqz v0, 0x21d44              |             goto label_57;
                                             |         }
    0x00021908 lw a1, -0x7fcc(gp)            |         a1 = *(gp);
    0x0002190c lw t9, -0x7cec(gp)            |         t9 = sym.imp.strcmp;
    0x00021910 lw a0, -0x7354(gp)            |         a0 = *(gp);
                                             |         /* str.kHighSuppression */
    0x00021914 addiu a1, a1, -0x4ebc         |         a1 += -aav.0x00004ebc;
    0x00021918 jalr t9                       |         t9 ();
    0x0002191c lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x00021920 beqz v0, 0x22874              |             goto label_59;
                                             |         }
    0x00021924 lw a1, -0x7fcc(gp)            |         a1 = *(gp);
    0x00021928 lw t9, -0x7cec(gp)            |         t9 = sym.imp.strcmp;
    0x0002192c lw a0, -0x7354(gp)            |         a0 = *(gp);
                                             |         /* str.kMoreSuppression */
    0x00021930 addiu a1, a1, -0x4ea8         |         a1 += -0x4ea8;
    0x00021934 jalr t9                       |         t9 ();
    0x00021938 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x0002193c beqz v0, 0x2274c              |             goto label_60;
                                             |         }
    0x00021940 lw a1, -0x7fcc(gp)            |         a1 = *(gp);
    0x00021944 lw t9, -0x7cec(gp)            |         t9 = sym.imp.strcmp;
    0x00021948 lw a0, -0x7354(gp)            |         a0 = *(gp);
                                             |         /* str.kMostSuppression */
    0x0002194c addiu a1, a1, -0x4e94         |         a1 += -aav.0x00004e94;
    0x00021950 jalr t9                       |         t9 ();
    0x00021954 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 == 0) {
    0x00021958 bnez v0, 0x21988              |             
    0x0002195c lw a0, (s3)                   |             a0 = *(s3);
    0x00021960 lw v0, (a0)                   |             v0 = *(a0);
    0x00021964 lw t9, 0x78(v0)               |             t9 = *((v0 + 30));
    0x00021968 jalr t9                       |             t9 ();
    0x0002196c nop                           |             
    0x00021970 lw v1, (v0)                   |             v1 = *(v0);
    0x00021974 move a0, v0                   |             a0 = v0;
    0x00021978 lw t9, 0x18(v1)               |             t9 = *((v1 + 6));
    0x0002197c addiu a1, zero, 4             |             a1 = 4;
    0x00021980 jalr t9                       |             t9 ();
    0x00021984 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
                                             | label_15:
    0x00021988 lw a2, -0x7fcc(gp)            |         a2 = *(gp);
    0x0002198c lw a3, -0x7354(gp)            |         a3 = *(gp);
    0x00021990 lw t9, -0x7af0(gp)            |         t9 = sym.read_profile;
                                             |         /* str._etc_webrtc_profile.ini */
    0x00021994 addiu a0, s0, -0x4f54         |         a0 = s0 + -aav.0x00004f54;
                                             |         /* esilref: 'AEC' */
    0x00021998 addiu a1, s4, -0x4f3c         |         a1 = s4 + -0x4f3c;
                                             |         /* str.aec_mode */
    0x0002199c addiu a2, a2, -0x4ef0         |         a2 += -0x4ef0;
    0x000219a0 jalr t9                       |         t9 ();
    0x000219a4 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 >= 0) {
    0x000219a8 bltz v0, 0x21a64              |             
    0x000219ac lw a1, -0x7fcc(gp)            |             a1 = *(gp);
    0x000219b0 lw t9, -0x7cec(gp)            |             t9 = sym.imp.strcmp;
    0x000219b4 lw a0, -0x7354(gp)            |             a0 = *(gp);
                                             |             /* str.user */
    0x000219b8 addiu a1, a1, -0x4e74         |             a1 += -0x4e74;
    0x000219bc jalr t9                       |             t9 ();
    0x000219c0 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 == 0) {
    0x000219c4 beqz v0, 0x2268c              |                 goto label_61;
                                             |             }
    0x000219c8 lw a1, -0x7fcc(gp)            |             a1 = *(gp);
    0x000219cc lw t9, -0x7cec(gp)            |             t9 = sym.imp.strcmp;
    0x000219d0 lw a0, -0x7354(gp)            |             a0 = *(gp);
                                             |             /* str.dtd_debug */
    0x000219d4 addiu a1, a1, -0x4e6c         |             a1 += -0x4e6c;
    0x000219d8 jalr t9                       |             t9 ();
    0x000219dc lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 == 0) {
    0x000219e0 beqz v0, 0x227c0              |                 goto label_62;
                                             |             }
    0x000219e4 lw a1, -0x7fcc(gp)            |             a1 = *(gp);
    0x000219e8 lw t9, -0x7cec(gp)            |             t9 = sym.imp.strcmp;
    0x000219ec lw a0, -0x7354(gp)            |             a0 = *(gp);
                                             |             /* str.sup_debug */
    0x000219f0 addiu a1, a1, -0x4e60         |             a1 += -0x4e60;
    0x000219f4 jalr t9                       |             t9 ();
    0x000219f8 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 == 0) {
    0x000219fc beqz v0, 0x22844              |                 goto label_63;
                                             |             }
    0x00021a00 lw a1, -0x7fcc(gp)            |             a1 = *(gp);
    0x00021a04 lw t9, -0x7cec(gp)            |             t9 = sym.imp.strcmp;
    0x00021a08 lw a0, -0x7354(gp)            |             a0 = *(gp);
                                             |             /* str.can_debug */
    0x00021a0c addiu a1, a1, -0x4e54         |             a1 += -aav.0x00004e54;
    0x00021a10 jalr t9                       |             t9 ();
    0x00021a14 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 == 0) {
    0x00021a18 beqz v0, 0x2271c              |                 goto label_64;
                                             |             }
    0x00021a1c lw a1, -0x7fcc(gp)            |             a1 = *(gp);
    0x00021a20 lw t9, -0x7cec(gp)            |             t9 = sym.imp.strcmp;
    0x00021a24 lw a0, -0x7354(gp)            |             a0 = *(gp);
                                             |             /* str.dev_debug */
    0x00021a28 addiu a1, a1, -0x4e48         |             a1 += -aav.0x00004e48;
    0x00021a2c jalr t9                       |             t9 ();
    0x00021a30 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |             if (v0 != 0) {
    0x00021a34 bnez v0, 0x21a64              |                 goto label_28;
                                             |             }
    0x00021a38 lw a0, (s3)                   |             a0 = *(s3);
    0x00021a3c lw v0, (a0)                   |             v0 = *(a0);
    0x00021a40 lw t9, 0x78(v0)               |             t9 = *((v0 + 30));
    0x00021a44 jalr t9                       |             t9 ();
    0x00021a48 nop                           |             
    0x00021a4c lw v1, (v0)                   |             v1 = *(v0);
    0x00021a50 move a0, v0                   |             a0 = v0;
    0x00021a54 lw t9, 0x28(v1)               |             t9 = *((v1 + 10));
    0x00021a58 addiu a1, zero, 4             |             a1 = 4;
    0x00021a5c jalr t9                       |             t9 ();
    0x00021a60 lw gp, 0x20(sp)               |             gp = *(var_20h);
                                             |         }
                                             | label_28:
    0x00021a64 lw a2, -0x7fcc(gp)            |         a2 = *(gp);
    0x00021a68 lw a3, -0x7354(gp)            |         a3 = *(gp);
    0x00021a6c lw t9, -0x7af0(gp)            |         t9 = sym.read_profile;
                                             |         /* str._etc_webrtc_profile.ini */
    0x00021a70 addiu a0, s0, -0x4f54         |         a0 = s0 + -aav.0x00004f54;
                                             |         /* esilref: 'AEC' */
    0x00021a74 addiu a1, s4, -0x4f3c         |         a1 = s4 + -0x4f3c;
                                             |         /* str.enable_ifun */
    0x00021a78 addiu a2, a2, -0x4e80         |         a2 += -aav.0x00004e80;
    0x00021a7c jalr t9                       |         t9 ();
    0x00021a80 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x00021a84 bltz v0, 0x21d74              |             goto label_65;
                                             |         }
    0x00021a88 lw a1, -0x7fcc(gp)            |         a1 = *(gp);
    0x00021a8c lw t9, -0x7cec(gp)            |         t9 = sym.imp.strcmp;
    0x00021a90 lw a0, -0x7354(gp)            |         a0 = *(gp);
                                             |         /* str.true */
    0x00021a94 addiu a1, a1, -0x4f10         |         a1 += -0x4f10;
    0x00021a98 jalr t9                       |         t9 ();
    0x00021a9c lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 != 0) {
    0x00021aa0 bnez v0, 0x21d74              |             goto label_65;
                                             |         }
    0x00021aa4 lw a2, -0x7fcc(gp)            |         a2 = *(gp);
    0x00021aa8 lw a3, -0x7354(gp)            |         a3 = *(gp);
    0x00021aac lw t9, -0x7af0(gp)            |         t9 = sym.read_profile;
                                             |         /* str._etc_webrtc_profile.ini */
    0x00021ab0 addiu a0, s0, -0x4f54         |         a0 = s0 + -aav.0x00004f54;
                                             |         /* esilref: 'AEC' */
    0x00021ab4 addiu a1, s4, -0x4f3c         |         a1 = s4 + -0x4f3c;
                                             |         /* str.set_ifun_arg1 */
    0x00021ab8 addiu a2, a2, -0x4e20         |         a2 += -aav.0x00004e20;
    0x00021abc jalr t9                       |         t9 ();
    0x00021ac0 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x00021ac4 bltz v0, 0x228b4              |             goto label_66;
                                             |         }
    0x00021ac8 lw t9, -0x7dc0(gp)            |         t9 = sym.imp.atoi;
    0x00021acc lw a0, -0x7354(gp)            |         a0 = *(gp);
    0x00021ad0 jalr t9                       |         t9 ();
    0x00021ad4 nop                           |         
    0x00021ad8 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021adc move s5, v0                   |         s5 = v0;
                                             | label_33:
    0x00021ae0 lw a2, -0x7fcc(gp)            |         a2 = *(gp);
    0x00021ae4 lw a3, -0x7354(gp)            |         a3 = *(gp);
    0x00021ae8 lw t9, -0x7af0(gp)            |         t9 = sym.read_profile;
                                             |         /* str._etc_webrtc_profile.ini */
    0x00021aec addiu a0, s0, -0x4f54         |         a0 = s0 + -aav.0x00004f54;
                                             |         /* esilref: 'AEC' */
    0x00021af0 addiu a1, s4, -0x4f3c         |         a1 = s4 + -0x4f3c;
                                             |         /* str.set_ifun_arg2 */
    0x00021af4 addiu a2, a2, -0x4e10         |         a2 += -0x4e10;
    0x00021af8 jalr t9                       |         t9 ();
    0x00021afc lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x00021b00 bltz v0, 0x228ac              |             goto label_67;
                                             |         }
    0x00021b04 lw t9, -0x79c0(gp)            |         t9 = sym.imp.atof;
    0x00021b08 lw a0, -0x7354(gp)            |         a0 = *(gp);
    0x00021b0c jalr t9                       |         t9 ();
    0x00021b10 nop                           |         
    0x00021b14 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021b18 cvt.s.d f20, f0               |         __asm ("cvt.s.d f20, f0");
                                             | label_32:
    0x00021b1c lw a2, -0x7fcc(gp)            |         a2 = *(gp);
    0x00021b20 lw a3, -0x7354(gp)            |         a3 = *(gp);
    0x00021b24 lw t9, -0x7af0(gp)            |         t9 = sym.read_profile;
                                             |         /* str._etc_webrtc_profile.ini */
    0x00021b28 addiu a0, s0, -0x4f54         |         a0 = s0 + -aav.0x00004f54;
                                             |         /* esilref: 'AEC' */
    0x00021b2c addiu a1, s4, -0x4f3c         |         a1 = s4 + -0x4f3c;
                                             |         /* str.set_ifun_arg3 */
    0x00021b30 addiu a2, a2, -0x4e00         |         a2 += -0x4e00;
    0x00021b34 jalr t9                       |         t9 ();
    0x00021b38 lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |         if (v0 < 0) {
    0x00021b3c bltz v0, 0x228a4              |             goto label_68;
                                             |         }
    0x00021b40 lw t9, -0x79c0(gp)            |         t9 = sym.imp.atof;
    0x00021b44 lw a0, -0x7354(gp)            |         a0 = *(gp);
    0x00021b48 jalr t9                       |         t9 ();
    0x00021b4c nop                           |         
    0x00021b50 cvt.s.d f21, f0               |         __asm ("cvt.s.d f21, f0");
                                             | label_31:
    0x00021b54 mtc1 zero, f1                 |         __asm ("mtc1 zero, f1");
                                             |         if (s5 <= 0) {
    0x00021b58 blez s5, 0x21d74              |             goto label_65;
                                             |         }
    0x00021b5c c.lt.s f1, f20                |         __asm ("c.lt.s f1, f20");
    0x00021b60 bc1f 0x21d74                  |         __asm ("bc1f 0x21d74");
    0x00021b64 nop                           |         
    0x00021b68 c.lt.s f1, f21                |         __asm ("c.lt.s f1, f21");
    0x00021b6c bc1f 0x21d74                  |         __asm ("bc1f 0x21d74");
    0x00021b70 nop                           |         
    0x00021b74 lw a0, (s3)                   |         a0 = *(s3);
    0x00021b78 lw v0, (a0)                   |         v0 = *(a0);
    0x00021b7c lw t9, 0x78(v0)               |         t9 = *((v0 + 30));
    0x00021b80 jalr t9                       |         t9 ();
    0x00021b84 nop                           |         
    0x00021b88 lw v1, (v0)                   |         v1 = *(v0);
    0x00021b8c move a0, v0                   |         a0 = v0;
    0x00021b90 lw t9, 0x20(v1)               |         t9 = *((v1 + 8));
    0x00021b94 addiu a1, zero, 1             |         a1 = 1;
    0x00021b98 jalr t9                       |         t9 ();
    0x00021b9c lw a0, (s3)                   |         a0 = *(s3);
    0x00021ba0 lw v0, (a0)                   |         v0 = *(a0);
    0x00021ba4 lw t9, 0x78(v0)               |         t9 = *((v0 + 30));
    0x00021ba8 jalr t9                       |         t9 ();
    0x00021bac nop                           |         
    0x00021bb0 lw v1, (v0)                   |         v1 = *(v0);
    0x00021bb4 mfc1 a2, f21                  |         __asm ("mfc1 a2, f21");
    0x00021bb8 mfc1 a3, f20                  |         __asm ("mfc1 a3, f20");
    0x00021bbc lw t9, 0x24(v1)               |         t9 = *((v1 + 9));
    0x00021bc0 move a0, v0                   |         a0 = v0;
    0x00021bc4 move a1, s5                   |         a1 = s5;
    0x00021bc8 jalr t9                       |         t9 ();
    0x00021bcc lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021bd0 b 0x21da0                     |         goto label_69;
                                             | label_45:
    0x00021bd4 lw t9, -0x7748(gp)            |         t9 = *(gp);
                                             | label_47:
    0x00021bd8 addiu a0, sp, 0x68            |         a0 = sp + 0x68;
                                             | label_48:
    0x00021bdc move a1, s2                   |         a1 = s2;
    0x00021be0 move a2, s3                   |         a2 = s3;
    0x00021be4 addiu a3, sp, 0x48            |         a3 = sp + 0x48;
    0x00021be8 sw t0, 0x48(sp)               |         *(var_48h) = t0;
    0x00021bec sw zero, 0x4c(sp)             |         *(var_4ch) = 0;
    0x00021bf0 jalr t9                       |         t9 ();
    0x00021bf4 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021bf8 lw s3, 0x68(sp)               |         s3 = *(var_68h);
    0x00021bfc b 0x21628                     |         goto label_0;
                                             | label_49:
    0x00021c00 lw t9, -0x7748(gp)            |         t9 = *(gp);
                                             | label_51:
    0x00021c04 addiu a0, sp, 0x68            |         a0 = sp + 0x68;
    0x00021c08 move a1, s2                   |         a1 = s2;
    0x00021c0c move a2, s3                   |         a2 = s3;
    0x00021c10 addiu a3, sp, 0x40            |         a3 = sp + 0x40;
    0x00021c14 sw t0, 0x40(sp)               |         *(var_40h) = t0;
    0x00021c18 sw zero, 0x44(sp)             |         *(var_44h) = 0;
    0x00021c1c jalr t9                       |         t9 ();
    0x00021c20 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021c24 lw s3, 0x68(sp)               |         s3 = *(var_68h);
    0x00021c28 b 0x216cc                     |         
                                             |     }
                                             | label_41:
    0x00021c2c lw t9, -0x7748(gp)            |     t9 = *(gp);
                                             | label_43:
    0x00021c30 addiu a0, sp, 0x68            |     a0 = sp + 0x68;
                                             | label_44:
    0x00021c34 move a1, s2                   |     a1 = s2;
    0x00021c38 move a2, s3                   |     a2 = s3;
    0x00021c3c addiu a3, sp, 0x50            |     a3 = sp + 0x50;
    0x00021c40 sw t0, 0x50(sp)               |     *(var_50h) = t0;
    0x00021c44 sw zero, 0x54(sp)             |     *(var_54h) = 0;
    0x00021c48 jalr t9                       |     t9 ();
    0x00021c4c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00021c50 lw s3, 0x68(sp)               |     s3 = *(var_68h);
    0x00021c54 b 0x21584                     |     goto label_1;
                                             | label_37:
    0x00021c58 lw t9, -0x7748(gp)            |     t9 = *(gp);
                                             | label_39:
    0x00021c5c addiu a0, sp, 0x68            |     a0 = sp + 0x68;
                                             | label_40:
    0x00021c60 move a1, s2                   |     a1 = s2;
    0x00021c64 move a2, s3                   |     a2 = s3;
    0x00021c68 addiu a3, sp, 0x58            |     a3 = sp + 0x58;
    0x00021c6c sw t0, 0x58(sp)               |     *(var_58h) = t0;
    0x00021c70 sw zero, 0x5c(sp)             |     *(var_5ch) = 0;
    0x00021c74 jalr t9                       |     t9 ();
    0x00021c78 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00021c7c lw s3, 0x68(sp)               |     s3 = *(var_68h);
    0x00021c80 b 0x214d8                     |     goto label_2;
                                             | label_50:
    0x00021c84 lw v1, 0xc(v1)                |     v1 = *((v1 + 3));
                                             |     if (v1 != 0) {
    0x00021c88 bnez v1, 0x21694              |         goto label_3;
                                             |     }
    0x00021c8c nop                           |     
    0x00021c90 b 0x216b4                     |     goto label_4;
    0x00021c94 nop                           |     
                                             | label_46:
    0x00021c98 lw v1, 0xc(v1)                |     v1 = *((v1 + 3));
                                             |     if (v1 != 0) {
    0x00021c9c bnez v1, 0x215f0              |         goto label_5;
                                             |     }
    0x00021ca0 nop                           |     
    0x00021ca4 b 0x21610                     |     goto label_6;
    0x00021ca8 nop                           |     
                                             | label_42:
    0x00021cac lw v1, 0xc(v1)                |     v1 = *((v1 + 3));
                                             |     if (v1 != 0) {
    0x00021cb0 bnez v1, 0x2154c              |         goto label_7;
                                             |     }
    0x00021cb4 nop                           |     
    0x00021cb8 b 0x2156c                     |     goto label_8;
    0x00021cbc nop                           |     
                                             | label_35:
    0x00021cc0 lw v1, 0xc(v1)                |     v1 = *((v1 + 3));
                                             |     if (v1 != 0) {
    0x00021cc4 bnez v1, 0x213d0              |         goto label_9;
                                             |     }
    0x00021cc8 nop                           |     
    0x00021ccc b 0x213f0                     |     goto label_10;
    0x00021cd0 nop                           |     
                                             | label_38:
    0x00021cd4 lw v1, 0xc(v1)                |     v1 = *((v1 + 3));
                                             |     if (v1 != 0) {
    0x00021cd8 bnez v1, 0x214a0              |         goto label_11;
                                             |     }
    0x00021cdc nop                           |     
    0x00021ce0 b 0x214c0                     |     goto label_12;
    0x00021ce4 nop                           |     
                                             | label_54:
    0x00021ce8 lw v0, (a0)                   |     v0 = *(a0);
    0x00021cec lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00021cf0 jalr t9                       |     t9 ();
    0x00021cf4 nop                           |     
    0x00021cf8 lw v1, (v0)                   |     v1 = *(v0);
    0x00021cfc move a0, v0                   |     a0 = v0;
    0x00021d00 lw t9, (v1)                   |     t9 = *(v1);
    0x00021d04 move a1, zero                 |     a1 = 0;
    0x00021d08 jalr t9                       |     t9 ();
    0x00021d0c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00021d10 b 0x217f0                     |     goto label_13;
                                             | label_55:
    0x00021d14 lw a0, (s3)                   |     a0 = *(s3);
                                             | label_56:
    0x00021d18 lw v0, (a0)                   |     v0 = *(a0);
    0x00021d1c lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00021d20 jalr t9                       |     t9 ();
    0x00021d24 nop                           |     
    0x00021d28 lw v1, (v0)                   |     v1 = *(v0);
    0x00021d2c move a0, v0                   |     a0 = v0;
    0x00021d30 lw t9, 8(v1)                  |     t9 = *((v1 + 2));
    0x00021d34 move a1, zero                 |     a1 = 0;
    0x00021d38 jalr t9                       |     t9 ();
    0x00021d3c lw a0, (s3)                   |     a0 = *(s3);
    0x00021d40 b 0x21858                     |     goto label_14;
                                             | label_57:
    0x00021d44 lw a0, (s3)                   |     a0 = *(s3);
    0x00021d48 lw v0, (a0)                   |     v0 = *(a0);
    0x00021d4c lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00021d50 jalr t9                       |     t9 ();
    0x00021d54 nop                           |     
    0x00021d58 lw v1, (v0)                   |     v1 = *(v0);
    0x00021d5c move a0, v0                   |     a0 = v0;
    0x00021d60 lw t9, 0x18(v1)               |     t9 = *((v1 + 6));
    0x00021d64 addiu a1, zero, 1             |     a1 = 1;
    0x00021d68 jalr t9                       |     t9 ();
    0x00021d6c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00021d70 b 0x21988                     |     goto label_15;
                                             | label_65:
    0x00021d74 lw a0, (s3)                   |     a0 = *(s3);
    0x00021d78 lw v0, (a0)                   |     v0 = *(a0);
    0x00021d7c lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00021d80 jalr t9                       |     t9 ();
    0x00021d84 nop                           |     
    0x00021d88 lw v1, (v0)                   |     v1 = *(v0);
    0x00021d8c move a0, v0                   |     a0 = v0;
    0x00021d90 lw t9, 0x20(v1)               |     t9 = *((v1 + 8));
    0x00021d94 move a1, zero                 |     a1 = 0;
    0x00021d98 jalr t9                       |     t9 ();
    0x00021d9c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_69:
    0x00021da0 lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x00021da4 lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x00021da8 lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00021dac addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'AEC' */
    0x00021db0 addiu a1, s4, -0x4f3c         |     a1 = s4 + -0x4f3c;
                                             |     /* str.set_safe_suppression_value */
    0x00021db4 addiu a2, a2, -0x4e3c         |     a2 += -0x4e3c;
    0x00021db8 jalr t9                       |     t9 ();
    0x00021dbc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 >= 0) {
    0x00021dc0 bltz v0, 0x21e30              |         
    0x00021dc4 lw t9, -0x79c0(gp)            |         t9 = sym.imp.atof;
    0x00021dc8 lw a0, -0x7354(gp)            |         a0 = *(gp);
    0x00021dcc jalr t9                       |         t9 ();
    0x00021dd0 nop                           |         
    0x00021dd4 cvt.s.d f20, f0               |         __asm ("cvt.s.d f20, f0");
    0x00021dd8 mtc1 zero, f0                 |         __asm ("mtc1 zero, f0");
    0x00021ddc lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00021de0 c.lt.s f0, f20                |         __asm ("c.lt.s f0, f20");
    0x00021de4 cvt.d.s f0, f20               |         __asm ("cvt.d.s f0, f20");
    0x00021de8 mfc1 a2, f0                   |         __asm ("mfc1 a2, f0");
    0x00021dec lw t9, -0x7e50(gp)            |         t9 = sym.imp.printf
    0x00021df0 bc1f 0x227ac                  |         __asm ("bc1f 0x227ac");
    0x00021df4 mfc1 a3, f1                   |         __asm ("mfc1 a3, f1");
    0x00021df8 lw a0, -0x7fcc(gp)            |         a0 = *(gp);
                                             |         /* str.set_safe_suppression_value__f__n */
    0x00021dfc addiu a0, a0, -0x4de0         |         a0 += -0x4de0;
    0x00021e00 jalr t9                       |         t9 ();
    0x00021e04 lw a0, (s3)                   |         a0 = *(s3);
    0x00021e08 lw v0, (a0)                   |         v0 = *(a0);
    0x00021e0c lw t9, 0x78(v0)               |         t9 = *((v0 + 30));
    0x00021e10 jalr t9                       |         t9 ();
    0x00021e14 nop                           |         
    0x00021e18 lw v1, (v0)                   |         v1 = *(v0);
    0x00021e1c mfc1 a1, f20                  |         __asm ("mfc1 a1, f20");
    0x00021e20 lw t9, 0x2c(v1)               |         t9 = *((v1 + 11));
    0x00021e24 move a0, v0                   |         a0 = v0;
    0x00021e28 jalr t9                       |         t9 ();
    0x00021e2c lw gp, 0x20(sp)               |         gp = *(var_20h);
                                             |     }
    0x00021e30 lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x00021e34 lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x00021e38 lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00021e3c addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'AEC' */
    0x00021e40 addiu a1, s4, -0x4f3c         |     a1 = s4 + -0x4f3c;
                                             |     /* str.enable_metrics */
    0x00021e44 addiu a2, a2, -0x4df0         |     a2 += -0x4df0;
    0x00021e48 jalr t9                       |     t9 ();
    0x00021e4c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00021e50 bltz v0, 0x22538              |         goto label_70;
                                             |     }
    0x00021e54 lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x00021e58 lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x00021e5c lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.true */
    0x00021e60 addiu a1, a1, -0x4f10         |     a1 += -0x4f10;
    0x00021e64 jalr t9                       |     t9 ();
    0x00021e68 lw a0, (s3)                   |     a0 = *(s3);
                                             |     if (v0 == 0) {
    0x00021e6c beqz v0, 0x2253c              |         goto label_71;
                                             |     }
    0x00021e70 lw v0, (a0)                   |     v0 = *(a0);
    0x00021e74 lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00021e78 jalr t9                       |     t9 ();
    0x00021e7c nop                           |     
    0x00021e80 lw v1, (v0)                   |     v1 = *(v0);
    0x00021e84 move a0, v0                   |     a0 = v0;
    0x00021e88 lw t9, 0x34(v1)               |     t9 = *((v1 + 13));
    0x00021e8c move a1, zero                 |     a1 = 0;
    0x00021e90 jalr t9                       |     t9 ();
    0x00021e94 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_20:
    0x00021e98 lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x00021e9c lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x00021ea0 lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00021ea4 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'AEC' */
    0x00021ea8 addiu a1, s4, -0x4f3c         |     a1 = s4 + -0x4f3c;
                                             |     /* str.enable_delay_logging */
    0x00021eac addiu a2, a2, -0x4d8c         |     a2 += -0x4d8c;
    0x00021eb0 jalr t9                       |     t9 ();
    0x00021eb4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00021eb8 bltz v0, 0x22508              |         goto label_72;
                                             |     }
    0x00021ebc lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x00021ec0 lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x00021ec4 lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.true */
    0x00021ec8 addiu a1, a1, -0x4f10         |     a1 += -0x4f10;
    0x00021ecc jalr t9                       |     t9 ();
    0x00021ed0 lw a0, (s3)                   |     a0 = *(s3);
                                             |     if (v0 == 0) {
    0x00021ed4 beqz v0, 0x2250c              |         goto label_73;
                                             |     }
    0x00021ed8 lw v0, (a0)                   |     v0 = *(a0);
    0x00021edc lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00021ee0 jalr t9                       |     t9 ();
    0x00021ee4 nop                           |     
    0x00021ee8 lw v1, (v0)                   |     v1 = *(v0);
    0x00021eec move a0, v0                   |     a0 = v0;
    0x00021ef0 lw t9, 0x40(v1)               |     t9 = *((v1 + 16));
    0x00021ef4 move a1, zero                 |     a1 = 0;
    0x00021ef8 jalr t9                       |     t9 ();
    0x00021efc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_19:
    0x00021f00 lw s4, -0x7fcc(gp)            |     s4 = *(gp);
    0x00021f04 lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x00021f08 lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x00021f0c lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00021f10 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'NS' */
    0x00021f14 addiu a1, s4, -0x4d74         |     a1 = s4 + -aav.0x00004d74;
                                             |     /* str.NS_enable */
    0x00021f18 addiu a2, a2, -0x4d70         |     a2 += -0x4d70;
    0x00021f1c jalr t9                       |     t9 ();
    0x00021f20 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00021f24 bltz v0, 0x224d8              |         goto label_74;
                                             |     }
    0x00021f28 lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x00021f2c lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x00021f30 lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.true */
    0x00021f34 addiu a1, a1, -0x4f10         |     a1 += -0x4f10;
    0x00021f38 jalr t9                       |     t9 ();
    0x00021f3c lw a0, (s3)                   |     a0 = *(s3);
                                             |     if (v0 == 0) {
    0x00021f40 beqz v0, 0x224dc              |         goto label_75;
                                             |     }
    0x00021f44 lw v0, (a0)                   |     v0 = *(a0);
    0x00021f48 lw t9, 0x8c(v0)               |     t9 = *((v0 + 35));
    0x00021f4c jalr t9                       |     t9 ();
    0x00021f50 nop                           |     
    0x00021f54 lw v1, (v0)                   |     v1 = *(v0);
    0x00021f58 move a0, v0                   |     a0 = v0;
    0x00021f5c lw t9, (v1)                   |     t9 = *(v1);
    0x00021f60 move a1, zero                 |     a1 = 0;
    0x00021f64 jalr t9                       |     t9 ();
    0x00021f68 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_18:
    0x00021f6c lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x00021f70 lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x00021f74 lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00021f78 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'NS' */
    0x00021f7c addiu a1, s4, -0x4d74         |     a1 = s4 + -aav.0x00004d74;
                                             |     /* str.set_level */
    0x00021f80 addiu a2, a2, -0x4d64         |     a2 += -0x4d64;
    0x00021f84 jalr t9                       |     t9 ();
    0x00021f88 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00021f8c bltz v0, 0x2265c              |         goto label_76;
                                             |     }
    0x00021f90 lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x00021f94 lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x00021f98 lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.kLow */
    0x00021f9c addiu a1, a1, -0x4d48         |     a1 += -0x4d48;
    0x00021fa0 jalr t9                       |     t9 ();
    0x00021fa4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00021fa8 beqz v0, 0x226bc              |         goto label_77;
                                             |     }
    0x00021fac lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x00021fb0 lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x00021fb4 lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.kModerate */
    0x00021fb8 addiu a1, a1, -0x4d40         |     a1 += -0x4d40;
    0x00021fbc jalr t9                       |     t9 ();
    0x00021fc0 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00021fc4 beqz v0, 0x227f0              |         goto label_78;
                                             |     }
    0x00021fc8 lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x00021fcc lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x00021fd0 lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.kHigh */
    0x00021fd4 addiu a1, a1, -0x4d34         |     a1 += -0x4d34;
    0x00021fd8 jalr t9                       |     t9 ();
    0x00021fdc lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00021fe0 beqz v0, 0x2265c              |         goto label_76;
                                             |     }
    0x00021fe4 lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x00021fe8 lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x00021fec lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.kVeryHigh */
    0x00021ff0 addiu a1, a1, -0x4d2c         |     a1 += -0x4d2c;
    0x00021ff4 jalr t9                       |     t9 ();
    0x00021ff8 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x00021ffc beqz v0, 0x2277c              |         goto label_79;
                                             |     }
                                             | label_27:
    0x00022000 lw s4, -0x7fcc(gp)            |     s4 = *(gp);
    0x00022004 lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x00022008 lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x0002200c lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00022010 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'AGC' */
    0x00022014 addiu a1, s4, -0x4d58         |     a1 = s4 + -0x4d58;
                                             |     /* str.AGC_enable */
    0x00022018 addiu a2, a2, -0x4d54         |     a2 += -0x4d54;
    0x0002201c jalr t9                       |     t9 ();
    0x00022020 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00022024 bltz v0, 0x224a8              |         goto label_80;
                                             |     }
    0x00022028 lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x0002202c lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x00022030 lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.true */
    0x00022034 addiu a1, a1, -0x4f10         |     a1 += -0x4f10;
    0x00022038 jalr t9                       |     t9 ();
    0x0002203c lw a0, (s3)                   |     a0 = *(s3);
                                             |     if (v0 == 0) {
    0x00022040 beqz v0, 0x224ac              |         goto label_81;
                                             |     }
    0x00022044 lw v0, (a0)                   |     v0 = *(a0);
    0x00022048 lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x0002204c jalr t9                       |     t9 ();
    0x00022050 nop                           |     
    0x00022054 lw v1, (v0)                   |     v1 = *(v0);
    0x00022058 move a0, v0                   |     a0 = v0;
    0x0002205c lw t9, (v1)                   |     t9 = *(v1);
    0x00022060 move a1, zero                 |     a1 = 0;
    0x00022064 jalr t9                       |     t9 ();
    0x00022068 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_17:
    0x0002206c lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x00022070 lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x00022074 lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00022078 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'AGC' */
    0x0002207c addiu a1, s4, -0x4d58         |     a1 = s4 + -0x4d58;
                                             |     /* str.set_mode */
    0x00022080 addiu a2, a2, -0x4d20         |     a2 += -0x4d20;
    0x00022084 jalr t9                       |     t9 ();
    0x00022088 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x0002208c bltz v0, 0x22568              |         goto label_82;
                                             |     }
    0x00022090 lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x00022094 lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x00022098 lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* esilref: 'kFixedDigital' */
    0x0002209c addiu a1, a1, -0x5088         |     a1 += -0x5088;
    0x000220a0 jalr t9                       |     t9 ();
    0x000220a4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 == 0) {
    0x000220a8 beqz v0, 0x22568              |         goto label_82;
                                             |     }
    0x000220ac lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x000220b0 lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x000220b4 lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.kAdaptiveAnalog */
    0x000220b8 addiu a1, a1, -0x4cfc         |     a1 += -0x4cfc;
    0x000220bc jalr t9                       |     t9 ();
    0x000220c0 lw a0, (s3)                   |     a0 = *(s3);
                                             |     if (v0 != 0) {
    0x000220c4 bnez v0, 0x22598              |         goto label_83;
                                             |     }
    0x000220c8 lw v0, (a0)                   |     v0 = *(a0);
    0x000220cc lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x000220d0 jalr t9                       |     t9 ();
    0x000220d4 nop                           |     
    0x000220d8 lw v1, (v0)                   |     v1 = *(v0);
    0x000220dc move a0, v0                   |     a0 = v0;
    0x000220e0 lw t9, 0x10(v1)               |     t9 = *((v1 + 4));
    0x000220e4 move a1, zero                 |     a1 = 0;
    0x000220e8 jalr t9                       |     t9 ();
    0x000220ec lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_21:
    0x000220f0 lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x000220f4 lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x000220f8 lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x000220fc addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'AGC' */
    0x00022100 addiu a1, s4, -0x4d58         |     a1 = s4 + -0x4d58;
                                             |     /* str.set_target_level_dbfs */
    0x00022104 addiu a2, a2, -0x4d14         |     a2 += -0x4d14;
    0x00022108 jalr t9                       |     t9 ();
                                             |     if (v0 < 0) {
    0x0002210c bltz v0, 0x225c4              |         goto label_84;
                                             |     }
    0x00022110 nop                           |     
    0x00022114 lw a0, (s3)                   |     a0 = *(s3);
    0x00022118 lw v0, (a0)                   |     v0 = *(a0);
    0x0002211c lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x00022120 jalr t9                       |     t9 ();
    0x00022124 nop                           |     
    0x00022128 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0002212c lw a0, -0x7354(gp)            |     a0 = *(gp);
    0x00022130 lw t9, -0x7dc0(gp)            |     t9 = sym.imp.atoi;
    0x00022134 move s5, v0                   |     s5 = v0;
    0x00022138 jalr t9                       |     t9 ();
    0x0002213c lw v1, (s5)                   |     v1 = *(s5);
    0x00022140 move a0, s5                   |     a0 = s5;
    0x00022144 lw t9, 0x18(v1)               |     t9 = *((v1 + 6));
    0x00022148 move a1, v0                   |     a1 = v0;
    0x0002214c jalr t9                       |     t9 ();
    0x00022150 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_22:
    0x00022154 lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x00022158 lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x0002215c lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00022160 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'AGC' */
    0x00022164 addiu a1, s4, -0x4d58         |     a1 = s4 + -0x4d58;
                                             |     /* str.set_compression_gain_db */
    0x00022168 addiu a2, a2, -0x4cec         |     a2 += -0x4cec;
    0x0002216c jalr t9                       |     t9 ();
                                             |     if (v0 < 0) {
    0x00022170 bltz v0, 0x22608              |         goto label_85;
                                             |     }
    0x00022174 nop                           |     
    0x00022178 lw a0, (s3)                   |     a0 = *(s3);
    0x0002217c lw v0, (a0)                   |     v0 = *(a0);
    0x00022180 lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x00022184 jalr t9                       |     t9 ();
    0x00022188 nop                           |     
    0x0002218c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022190 lw a0, -0x7354(gp)            |     a0 = *(gp);
    0x00022194 lw t9, -0x7dc0(gp)            |     t9 = sym.imp.atoi;
    0x00022198 move s5, v0                   |     s5 = v0;
    0x0002219c jalr t9                       |     t9 ();
    0x000221a0 lw v1, (s5)                   |     v1 = *(s5);
    0x000221a4 move a0, s5                   |     a0 = s5;
    0x000221a8 lw t9, 0x20(v1)               |     t9 = *((v1 + 8));
    0x000221ac move a1, v0                   |     a1 = v0;
    0x000221b0 jalr t9                       |     t9 ();
    0x000221b4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_24:
    0x000221b8 lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x000221bc lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x000221c0 lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x000221c4 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* esilref: 'AGC' */
    0x000221c8 addiu a1, s4, -0x4d58         |     a1 = s4 + -0x4d58;
                                             |     /* str.enable_limiter */
    0x000221cc addiu a2, a2, -0x4cd4         |     a2 += -0x4cd4;
    0x000221d0 jalr t9                       |     t9 ();
    0x000221d4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x000221d8 bltz v0, 0x22478              |         goto label_86;
                                             |     }
    0x000221dc lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x000221e0 lw t9, -0x7cec(gp)            |     t9 = sym.imp.strcmp;
    0x000221e4 lw a0, -0x7354(gp)            |     a0 = *(gp);
                                             |     /* str.true */
    0x000221e8 addiu a1, a1, -0x4f10         |     a1 += -0x4f10;
    0x000221ec jalr t9                       |     t9 ();
    0x000221f0 lw a0, (s3)                   |     a0 = *(s3);
                                             |     if (v0 == 0) {
    0x000221f4 beqz v0, 0x2247c              |         goto label_87;
                                             |     }
    0x000221f8 lw v0, (a0)                   |     v0 = *(a0);
    0x000221fc lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x00022200 jalr t9                       |     t9 ();
    0x00022204 nop                           |     
    0x00022208 lw v1, (v0)                   |     v1 = *(v0);
    0x0002220c move a0, v0                   |     a0 = v0;
    0x00022210 lw t9, 0x28(v1)               |     t9 = *((v1 + 10));
    0x00022214 move a1, zero                 |     a1 = 0;
    0x00022218 jalr t9                       |     t9 ();
    0x0002221c lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             | label_16:
    0x00022220 lw s4, -0x7fcc(gp)            |     s4 = *(gp);
    0x00022224 lw a2, -0x7fcc(gp)            |     a2 = *(gp);
    0x00022228 lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x0002222c lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00022230 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* str.Set_Near_Frame */
    0x00022234 addiu a1, s4, -0x4cc4         |     a1 = s4 + -aav.0x00004cc4;
                                             |     /* str.delay_ms */
    0x00022238 addiu a2, a2, -0x4cb4         |     a2 += -0x4cb4;
    0x0002223c jalr t9                       |     t9 ();
    0x00022240 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00022244 bltz v0, 0x2264c              |         goto label_88;
                                             |     }
    0x00022248 lw t9, -0x7dc0(gp)            |     t9 = sym.imp.atoi;
    0x0002224c lw a0, -0x7354(gp)            |     a0 = *(gp);
    0x00022250 jalr t9                       |     t9 ();
    0x00022254 nop                           |     
    0x00022258 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0002225c lw v1, -0x7fe4(gp)            |     v1 = *((gp - 8185));
    0x00022260 sw v0, 0x1704(v1)             |     *((v1 + 1473)) = v0;
                                             | label_26:
    0x00022264 lw s3, -0x7fcc(gp)            |     s3 = *(gp);
    0x00022268 lw a1, -0x7fcc(gp)            |     a1 = *(gp);
    0x0002226c lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x00022270 lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x00022274 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* str.Set_Far_Frame */
    0x00022278 addiu a1, a1, -0x4ca8         |     a1 += -0x4ca8;
                                             |     /* str.Frame_V */
    0x0002227c addiu a2, s3, -0x4c98         |     a2 = s3 + -0x4c98;
    0x00022280 jalr t9                       |     t9 ();
    0x00022284 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x00022288 bltz v0, 0x22638              |         goto label_89;
                                             |     }
    0x0002228c lw t9, -0x79c0(gp)            |     t9 = sym.imp.atof;
    0x00022290 lw a0, -0x7354(gp)            |     a0 = *(gp);
    0x00022294 jalr t9                       |     t9 ();
    0x00022298 nop                           |     
    0x0002229c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000222a0 cvt.s.d f0, f0                |     __asm ("cvt.s.d f0, f0");
    0x000222a4 lw v0, -0x7fe4(gp)            |     v0 = *((gp - 8185));
    0x000222a8 swc1 f0, 0x1708(v0)           |     __asm ("swc1 f0, aav.0x00001708(v0)");
                                             | label_25:
    0x000222ac lw a3, -0x7354(gp)            |     a3 = *(gp);
    0x000222b0 lw t9, -0x7af0(gp)            |     t9 = sym.read_profile;
                                             |     /* str._etc_webrtc_profile.ini */
    0x000222b4 addiu a0, s0, -0x4f54         |     a0 = s0 + -aav.0x00004f54;
                                             |     /* str.Set_Near_Frame */
    0x000222b8 addiu a1, s4, -0x4cc4         |     a1 = s4 + -aav.0x00004cc4;
                                             |     /* str.Frame_V */
    0x000222bc addiu a2, s3, -0x4c98         |     a2 = s3 + -0x4c98;
    0x000222c0 jalr t9                       |     t9 ();
    0x000222c4 lw gp, 0x20(sp)               |     gp = *(var_20h);
                                             |     if (v0 < 0) {
    0x000222c8 bltz v0, 0x225f4              |         goto label_90;
                                             |     }
    0x000222cc lw t9, -0x79c0(gp)            |     t9 = sym.imp.atof;
    0x000222d0 lw a0, -0x7354(gp)            |     a0 = *(gp);
    0x000222d4 jalr t9                       |     t9 ();
    0x000222d8 nop                           |     
    0x000222dc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000222e0 cvt.s.d f0, f0                |     __asm ("cvt.s.d f0, f0");
    0x000222e4 lw v0, -0x7fe4(gp)            |     v0 = *((gp - 8185));
    0x000222e8 swc1 f0, 0x170c(v0)           |     __asm ("swc1 f0, aav.0x0000170c(v0)");
                                             | label_23:
    0x000222ec lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
    0x000222f0 addiu a0, zero, 0x1e40        |     a0 = 0x1e40;
    0x000222f4 jalr t9                       |     t9 ();
    0x000222f8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000222fc lw s0, -0x7510(gp)            |     s0 = *(gp);
    0x00022300 addiu v1, v0, 0x20            |     v1 = v0 + 0x20;
    0x00022304 addiu a0, v0, 0x1e20          |     a0 = v0 + 0x1e20;
    0x00022308 addiu s0, s0, 8               |     s0 += 8;
    0x0002230c sw s0, (v0)                   |     *(v0) = s0;
                                             |     do {
    0x00022310 sh zero, (v1)                 |         *(v1) = 0;
    0x00022314 addiu v1, v1, 2               |         v1 += 2;
    0x00022318 bne v1, a0, 0x22310           |         
                                             |     } while (v1 != a0);
    0x0002231c nop                           |     
    0x00022320 addiu v1, zero, -1            |     v1 = -1;
    0x00022324 sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x00022328 sw v1, 0x1e34(v0)             |     *((v0 + 1933)) = v1;
    0x0002232c addiu v1, zero, 1             |     v1 = 1;
    0x00022330 sb v1, 0x1e38(v0)             |     *((v0 + 7736)) = v1;
    0x00022334 lw v1, -0x7b0c(gp)            |     v1 = *(gp);
    0x00022338 addiu a0, zero, 4             |     a0 = 4;
    0x0002233c lw t9, -0x799c(gp)            |     t9 = sym.imp.operator_new_unsigned_int_;
    0x00022340 addiu a2, zero, -1            |     a2 = -1;
    0x00022344 addiu a3, zero, -1            |     a3 = -1;
    0x00022348 sw a0, 0x1e2c(v0)             |     *((v0 + 1931)) = a0;
    0x0002234c addiu a0, zero, 2             |     a0 = 2;
    0x00022350 sw a0, 0x1e30(v0)             |     *((v0 + 1932)) = a0;
    0x00022354 sw zero, 8(v0)                |     *((v0 + 2)) = 0;
    0x00022358 sw a2, 0x10(v0)               |     *((v0 + 4)) = a2;
    0x0002235c sw a3, 0x14(v0)               |     *((v0 + 5)) = a3;
    0x00022360 sw a2, 0x18(v0)               |     *((v0 + 6)) = a2;
    0x00022364 sw a3, 0x1c(v0)               |     *((v0 + 7)) = a3;
    0x00022368 sw zero, 0x1e20(v0)           |     *((v0 + 1928)) = 0;
    0x0002236c sw zero, 0x1e24(v0)           |     *((v0 + 1929)) = 0;
    0x00022370 sw zero, 0x1e28(v0)           |     *((v0 + 1930)) = 0;
    0x00022374 addiu a0, zero, 0x1e40        |     a0 = 0x1e40;
    0x00022378 sw v0, (v1)                   |     *(v1) = v0;
    0x0002237c jalr t9                       |     t9 ();
    0x00022380 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022384 sw s0, (v0)                   |     *(v0) = s0;
    0x00022388 addiu v1, v0, 0x20            |     v1 = v0 + 0x20;
    0x0002238c addiu a0, v0, 0x1e20          |     a0 = v0 + 0x1e20;
                                             |     do {
    0x00022390 sh zero, (v1)                 |         *(v1) = 0;
    0x00022394 addiu v1, v1, 2               |         v1 += 2;
    0x00022398 bne v1, a0, 0x22390           |         
                                             |     } while (v1 != a0);
    0x0002239c nop                           |     
    0x000223a0 addiu v1, zero, -1            |     v1 = -1;
    0x000223a4 sw v1, 4(v0)                  |     *((v0 + 1)) = v1;
    0x000223a8 sw v1, 0x1e34(v0)             |     *((v0 + 1933)) = v1;
    0x000223ac addiu v1, zero, 1             |     v1 = 1;
    0x000223b0 sb v1, 0x1e38(v0)             |     *((v0 + 7736)) = v1;
    0x000223b4 lw v1, -0x7880(gp)            |     v1 = *(gp);
    0x000223b8 addiu a0, zero, 4             |     a0 = 4;
    0x000223bc addiu a2, zero, -1            |     a2 = -1;
    0x000223c0 addiu a3, zero, -1            |     a3 = -1;
    0x000223c4 sw a0, 0x1e2c(v0)             |     *((v0 + 1931)) = a0;
    0x000223c8 addiu a0, zero, 2             |     a0 = 2;
    0x000223cc sw zero, 8(v0)                |     *((v0 + 2)) = 0;
    0x000223d0 sw a2, 0x10(v0)               |     *((v0 + 4)) = a2;
    0x000223d4 sw a3, 0x14(v0)               |     *((v0 + 5)) = a3;
    0x000223d8 sw a2, 0x18(v0)               |     *((v0 + 6)) = a2;
    0x000223dc sw a3, 0x1c(v0)               |     *((v0 + 7)) = a3;
    0x000223e0 sw zero, 0x1e20(v0)           |     *((v0 + 1928)) = 0;
    0x000223e4 sw zero, 0x1e24(v0)           |     *((v0 + 1929)) = 0;
    0x000223e8 sw zero, 0x1e28(v0)           |     *((v0 + 1930)) = 0;
    0x000223ec sw a0, 0x1e30(v0)             |     *((v0 + 1932)) = a0;
    0x000223f0 sw v0, (v1)                   |     *(v1) = v0;
    0x000223f4 move s3, zero                 |     s3 = 0;
                                             | label_29:
    0x000223f8 lw s0, 0x34(sp)               |     s0 = *(var_34h);
    0x000223fc lw t9, -0x75b4(gp)            |     t9 = *(gp);
                                             |     if (s0 == s1) {
    0x00022400 beq s0, s1, 0x22440           |         goto label_91;
                                             |     }
                                             |     do {
    0x00022404 lw a0, 0x14(s0)               |         a0 = *((s0 + 5));
    0x00022408 lw t9, -0x7cac(gp)            |         t9 = *(gp);
                                             |         if (a0 != 0) {
    0x0002240c beqz a0, 0x22428              |             
    0x00022410 lw v1, (a0)                   |             v1 = *(a0);
    0x00022414 lw t9, 4(v1)                  |             t9 = *((v1 + 1));
    0x00022418 jalr t9                       |             t9 ();
    0x0002241c nop                           |             
    0x00022420 lw gp, 0x20(sp)               |             gp = *(var_20h);
    0x00022424 lw t9, -0x7cac(gp)            |             t9 = *(gp);
                                             |         }
    0x00022428 move a0, s0                   |         a0 = s0;
    0x0002242c jalr t9                       |         t9 ();
    0x00022430 move s0, v0                   |         s0 = v0;
    0x00022434 lw gp, 0x20(sp)               |         gp = *(var_20h);
    0x00022438 bne v0, s1, 0x22404           |         
                                             |     } while (v0 != s1);
    0x0002243c lw t9, -0x75b4(gp)            |     t9 = *(gp);
                                             | label_91:
    0x00022440 lw a1, 0x30(sp)               |     a1 = *(var_30h);
    0x00022444 move a0, s2                   |     a0 = s2;
    0x00022448 jalr t9                       |     t9 ();
    0x0002244c lw ra, 0x8c(sp)               |     ra = *(var_8ch);
    0x00022450 move v0, s3                   |     v0 = s3;
    0x00022454 lw s5, 0x88(sp)               |     s5 = *(var_88h);
    0x00022458 lw s4, 0x84(sp)               |     s4 = *(var_84h);
    0x0002245c lw s3, 0x80(sp)               |     s3 = *(var_80h);
    0x00022460 lw s2, 0x7c(sp)               |     s2 = *(var_7ch);
    0x00022464 lw s1, 0x78(sp)               |     s1 = *(var_78h);
    0x00022468 lw s0, 0x74(sp)               |     s0 = *(var_74h);
    0x0002246c ldc1 f20, 0x90(sp)            |     __asm ("ldc1 f20, (var_90h)");
    0x00022470 addiu sp, sp, 0x98            |     
    0x00022474 jr ra                         |     return v1;
                                             | label_86:
    0x00022478 lw a0, (s3)                   |     a0 = *(s3);
                                             | label_87:
    0x0002247c lw v0, (a0)                   |     v0 = *(a0);
    0x00022480 lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x00022484 jalr t9                       |     t9 ();
    0x00022488 nop                           |     
    0x0002248c lw v1, (v0)                   |     v1 = *(v0);
    0x00022490 move a0, v0                   |     a0 = v0;
    0x00022494 lw t9, 0x28(v1)               |     t9 = *((v1 + 10));
    0x00022498 addiu a1, zero, 1             |     a1 = 1;
    0x0002249c jalr t9                       |     t9 ();
    0x000224a0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000224a4 b 0x22220                     |     goto label_16;
                                             | label_80:
    0x000224a8 lw a0, (s3)                   |     a0 = *(s3);
                                             | label_81:
    0x000224ac lw v0, (a0)                   |     v0 = *(a0);
    0x000224b0 lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x000224b4 jalr t9                       |     t9 ();
    0x000224b8 nop                           |     
    0x000224bc lw v1, (v0)                   |     v1 = *(v0);
    0x000224c0 move a0, v0                   |     a0 = v0;
    0x000224c4 lw t9, (v1)                   |     t9 = *(v1);
    0x000224c8 addiu a1, zero, 1             |     a1 = 1;
    0x000224cc jalr t9                       |     t9 ();
    0x000224d0 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000224d4 b 0x2206c                     |     goto label_17;
                                             | label_74:
    0x000224d8 lw a0, (s3)                   |     a0 = *(s3);
                                             | label_75:
    0x000224dc lw v0, (a0)                   |     v0 = *(a0);
    0x000224e0 lw t9, 0x8c(v0)               |     t9 = *((v0 + 35));
    0x000224e4 jalr t9                       |     t9 ();
    0x000224e8 nop                           |     
    0x000224ec lw v1, (v0)                   |     v1 = *(v0);
    0x000224f0 move a0, v0                   |     a0 = v0;
    0x000224f4 lw t9, (v1)                   |     t9 = *(v1);
    0x000224f8 addiu a1, zero, 1             |     a1 = 1;
    0x000224fc jalr t9                       |     t9 ();
    0x00022500 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022504 b 0x21f6c                     |     goto label_18;
                                             | label_72:
    0x00022508 lw a0, (s3)                   |     a0 = *(s3);
                                             | label_73:
    0x0002250c lw v0, (a0)                   |     v0 = *(a0);
    0x00022510 lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00022514 jalr t9                       |     t9 ();
    0x00022518 nop                           |     
    0x0002251c lw v1, (v0)                   |     v1 = *(v0);
    0x00022520 move a0, v0                   |     a0 = v0;
    0x00022524 lw t9, 0x40(v1)               |     t9 = *((v1 + 16));
    0x00022528 addiu a1, zero, 1             |     a1 = 1;
    0x0002252c jalr t9                       |     t9 ();
    0x00022530 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022534 b 0x21f00                     |     goto label_19;
                                             | label_70:
    0x00022538 lw a0, (s3)                   |     a0 = *(s3);
                                             | label_71:
    0x0002253c lw v0, (a0)                   |     v0 = *(a0);
    0x00022540 lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00022544 jalr t9                       |     t9 ();
    0x00022548 nop                           |     
    0x0002254c lw v1, (v0)                   |     v1 = *(v0);
    0x00022550 move a0, v0                   |     a0 = v0;
    0x00022554 lw t9, 0x34(v1)               |     t9 = *((v1 + 13));
    0x00022558 addiu a1, zero, 1             |     a1 = 1;
    0x0002255c jalr t9                       |     t9 ();
    0x00022560 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022564 b 0x21e98                     |     goto label_20;
                                             | label_82:
    0x00022568 lw a0, (s3)                   |     a0 = *(s3);
    0x0002256c lw v0, (a0)                   |     v0 = *(a0);
    0x00022570 lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x00022574 jalr t9                       |     t9 ();
    0x00022578 nop                           |     
    0x0002257c lw v1, (v0)                   |     v1 = *(v0);
    0x00022580 move a0, v0                   |     a0 = v0;
    0x00022584 lw t9, 0x10(v1)               |     t9 = *((v1 + 4));
    0x00022588 addiu a1, zero, 2             |     a1 = 2;
    0x0002258c jalr t9                       |     t9 ();
    0x00022590 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022594 b 0x220f0                     |     goto label_21;
                                             | label_83:
    0x00022598 lw v0, (a0)                   |     v0 = *(a0);
    0x0002259c lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x000225a0 jalr t9                       |     t9 ();
    0x000225a4 nop                           |     
    0x000225a8 lw v1, (v0)                   |     v1 = *(v0);
    0x000225ac move a0, v0                   |     a0 = v0;
    0x000225b0 lw t9, 0x10(v1)               |     t9 = *((v1 + 4));
    0x000225b4 addiu a1, zero, 1             |     a1 = 1;
    0x000225b8 jalr t9                       |     t9 ();
    0x000225bc lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000225c0 b 0x220f0                     |     goto label_21;
                                             | label_84:
    0x000225c4 lw a0, (s3)                   |     a0 = *(s3);
    0x000225c8 lw v0, (a0)                   |     v0 = *(a0);
    0x000225cc lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x000225d0 jalr t9                       |     t9 ();
    0x000225d4 nop                           |     
    0x000225d8 lw v1, (v0)                   |     v1 = *(v0);
    0x000225dc move a0, v0                   |     a0 = v0;
    0x000225e0 lw t9, 0x18(v1)               |     t9 = *((v1 + 6));
    0x000225e4 addiu a1, zero, 3             |     a1 = 3;
    0x000225e8 jalr t9                       |     t9 ();
    0x000225ec lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000225f0 b 0x22154                     |     goto label_22;
                                             | label_90:
    0x000225f4 lw v0, -0x7fcc(gp)            |     v0 = *(gp);
    0x000225f8 lwc1 f0, -0x4b68(v0)          |     __asm ("lwc1 f0, -0x4b68(v0)");
    0x000225fc lw v0, -0x7fe4(gp)            |     v0 = *((gp - 8185));
    0x00022600 swc1 f0, 0x170c(v0)           |     __asm ("swc1 f0, aav.0x0000170c(v0)");
    0x00022604 b 0x222ec                     |     goto label_23;
                                             | label_85:
    0x00022608 lw a0, (s3)                   |     a0 = *(s3);
    0x0002260c lw v0, (a0)                   |     v0 = *(a0);
    0x00022610 lw t9, 0x80(v0)               |     t9 = *((v0 + 32));
    0x00022614 jalr t9                       |     t9 ();
    0x00022618 nop                           |     
    0x0002261c lw v1, (v0)                   |     v1 = *(v0);
    0x00022620 move a0, v0                   |     a0 = v0;
    0x00022624 lw t9, 0x20(v1)               |     t9 = *((v1 + 8));
    0x00022628 addiu a1, zero, 1             |     a1 = 1;
    0x0002262c jalr t9                       |     t9 ();
    0x00022630 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022634 b 0x221b8                     |     goto label_24;
                                             | label_89:
    0x00022638 lw v0, -0x7fcc(gp)            |     v0 = *(gp);
    0x0002263c lwc1 f0, -0x4b68(v0)          |     __asm ("lwc1 f0, -0x4b68(v0)");
    0x00022640 lw v0, -0x7fe4(gp)            |     v0 = *((gp - 8185));
    0x00022644 swc1 f0, 0x1708(v0)           |     __asm ("swc1 f0, aav.0x00001708(v0)");
    0x00022648 b 0x222ac                     |     goto label_25;
                                             | label_88:
    0x0002264c lw v0, -0x7fe4(gp)            |     v0 = *((gp - 8185));
    0x00022650 addiu v1, zero, 0x96          |     v1 = 0x96;
    0x00022654 sw v1, 0x1704(v0)             |     *((v0 + 1473)) = v1;
    0x00022658 b 0x22264                     |     goto label_26;
                                             | label_76:
    0x0002265c lw a0, (s3)                   |     a0 = *(s3);
    0x00022660 lw v0, (a0)                   |     v0 = *(a0);
    0x00022664 lw t9, 0x8c(v0)               |     t9 = *((v0 + 35));
    0x00022668 jalr t9                       |     t9 ();
    0x0002266c nop                           |     
    0x00022670 lw v1, (v0)                   |     v1 = *(v0);
    0x00022674 move a0, v0                   |     a0 = v0;
    0x00022678 lw t9, 8(v1)                  |     t9 = *((v1 + 2));
    0x0002267c addiu a1, zero, 2             |     a1 = 2;
    0x00022680 jalr t9                       |     t9 ();
    0x00022684 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022688 b 0x22000                     |     goto label_27;
                                             | label_61:
    0x0002268c lw a0, (s3)                   |     a0 = *(s3);
    0x00022690 lw v0, (a0)                   |     v0 = *(a0);
    0x00022694 lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00022698 jalr t9                       |     t9 ();
    0x0002269c nop                           |     
    0x000226a0 lw v1, (v0)                   |     v1 = *(v0);
    0x000226a4 move a0, v0                   |     a0 = v0;
    0x000226a8 lw t9, 0x28(v1)               |     t9 = *((v1 + 10));
    0x000226ac move a1, zero                 |     a1 = 0;
    0x000226b0 jalr t9                       |     t9 ();
    0x000226b4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000226b8 b 0x21a64                     |     goto label_28;
                                             | label_77:
    0x000226bc lw a0, (s3)                   |     a0 = *(s3);
    0x000226c0 lw v0, (a0)                   |     v0 = *(a0);
    0x000226c4 lw t9, 0x8c(v0)               |     t9 = *((v0 + 35));
    0x000226c8 jalr t9                       |     t9 ();
    0x000226cc nop                           |     
    0x000226d0 lw v1, (v0)                   |     v1 = *(v0);
    0x000226d4 move a0, v0                   |     a0 = v0;
    0x000226d8 lw t9, 8(v1)                  |     t9 = *((v1 + 2));
    0x000226dc move a1, zero                 |     a1 = 0;
    0x000226e0 jalr t9                       |     t9 ();
    0x000226e4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000226e8 b 0x22000                     |     goto label_27;
                                             | label_58:
    0x000226ec lw a0, (s3)                   |     a0 = *(s3);
    0x000226f0 lw v0, (a0)                   |     v0 = *(a0);
    0x000226f4 lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x000226f8 jalr t9                       |     t9 ();
    0x000226fc nop                           |     
    0x00022700 lw v1, (v0)                   |     v1 = *(v0);
    0x00022704 move a0, v0                   |     a0 = v0;
    0x00022708 lw t9, 0x18(v1)               |     t9 = *((v1 + 6));
    0x0002270c move a1, zero                 |     a1 = 0;
    0x00022710 jalr t9                       |     t9 ();
    0x00022714 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022718 b 0x21988                     |     goto label_15;
                                             | label_64:
    0x0002271c lw a0, (s3)                   |     a0 = *(s3);
    0x00022720 lw v0, (a0)                   |     v0 = *(a0);
    0x00022724 lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00022728 jalr t9                       |     t9 ();
    0x0002272c nop                           |     
    0x00022730 lw v1, (v0)                   |     v1 = *(v0);
    0x00022734 move a0, v0                   |     a0 = v0;
    0x00022738 lw t9, 0x28(v1)               |     t9 = *((v1 + 10));
    0x0002273c addiu a1, zero, 3             |     a1 = 3;
    0x00022740 jalr t9                       |     t9 ();
    0x00022744 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022748 b 0x21a64                     |     goto label_28;
                                             | label_60:
    0x0002274c lw a0, (s3)                   |     a0 = *(s3);
    0x00022750 lw v0, (a0)                   |     v0 = *(a0);
    0x00022754 lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00022758 jalr t9                       |     t9 ();
    0x0002275c nop                           |     
    0x00022760 lw v1, (v0)                   |     v1 = *(v0);
    0x00022764 move a0, v0                   |     a0 = v0;
    0x00022768 lw t9, 0x18(v1)               |     t9 = *((v1 + 6));
    0x0002276c addiu a1, zero, 3             |     a1 = 3;
    0x00022770 jalr t9                       |     t9 ();
    0x00022774 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022778 b 0x21988                     |     goto label_15;
                                             | label_79:
    0x0002277c lw a0, (s3)                   |     a0 = *(s3);
    0x00022780 lw v0, (a0)                   |     v0 = *(a0);
    0x00022784 lw t9, 0x8c(v0)               |     t9 = *((v0 + 35));
    0x00022788 jalr t9                       |     t9 ();
    0x0002278c nop                           |     
    0x00022790 lw v1, (v0)                   |     v1 = *(v0);
    0x00022794 move a0, v0                   |     a0 = v0;
    0x00022798 lw t9, 8(v1)                  |     t9 = *((v1 + 2));
    0x0002279c addiu a1, zero, 3             |     a1 = 3;
    0x000227a0 jalr t9                       |     t9 ();
    0x000227a4 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000227a8 b 0x22000                     |     goto label_27;
                                             | label_62:
    0x000227c0 lw a0, (s3)                   |     a0 = *(s3);
    0x000227c4 lw v0, (a0)                   |     v0 = *(a0);
    0x000227c8 lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x000227cc jalr t9                       |     t9 ();
    0x000227d0 nop                           |     
    0x000227d4 lw v1, (v0)                   |     v1 = *(v0);
    0x000227d8 move a0, v0                   |     a0 = v0;
    0x000227dc lw t9, 0x28(v1)               |     t9 = *((v1 + 10));
    0x000227e0 addiu a1, zero, 1             |     a1 = 1;
    0x000227e4 jalr t9                       |     t9 ();
    0x000227e8 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000227ec b 0x21a64                     |     goto label_28;
                                             | label_78:
    0x000227f0 lw a0, (s3)                   |     a0 = *(s3);
    0x000227f4 lw v0, (a0)                   |     v0 = *(a0);
    0x000227f8 lw t9, 0x8c(v0)               |     t9 = *((v0 + 35));
    0x000227fc jalr t9                       |     t9 ();
    0x00022800 nop                           |     
    0x00022804 lw v1, (v0)                   |     v1 = *(v0);
    0x00022808 move a0, v0                   |     a0 = v0;
    0x0002280c lw t9, 8(v1)                  |     t9 = *((v1 + 2));
    0x00022810 addiu a1, zero, 1             |     a1 = 1;
    0x00022814 jalr t9                       |     t9 ();
    0x00022818 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x0002281c b 0x22000                     |     goto label_27;
                                             | label_52:
    0x00022820 lw a0, -0x7fcc(gp)            |     a0 = *(gp);
    0x00022824 lw t9, -0x7e94(gp)            |     t9 = *(gp);
                                             |     /* str.AudioProcessing::Create___error__ */
    0x00022828 addiu a0, a0, -0x4f78         |     a0 += -aav.0x00004f78;
    0x0002282c jalr t9                       |     t9 ();
    0x00022830 lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022834 addiu s3, zero, -1            |     s3 = -1;
    0x00022838 b 0x223f8                     |     goto label_29;
                                             | label_53:
    0x0002283c lw a0, (s3)                   |     a0 = *(s3);
    0x00022840 b 0x217c8                     |     goto label_30;
                                             | label_63:
    0x00022844 lw a0, (s3)                   |     a0 = *(s3);
    0x00022848 lw v0, (a0)                   |     v0 = *(a0);
    0x0002284c lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00022850 jalr t9                       |     t9 ();
    0x00022854 nop                           |     
    0x00022858 lw v1, (v0)                   |     v1 = *(v0);
    0x0002285c move a0, v0                   |     a0 = v0;
    0x00022860 lw t9, 0x28(v1)               |     t9 = *((v1 + 10));
    0x00022864 addiu a1, zero, 2             |     a1 = 2;
    0x00022868 jalr t9                       |     t9 ();
    0x0002286c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x00022870 b 0x21a64                     |     goto label_28;
                                             | label_59:
    0x00022874 lw a0, (s3)                   |     a0 = *(s3);
    0x00022878 lw v0, (a0)                   |     v0 = *(a0);
    0x0002287c lw t9, 0x78(v0)               |     t9 = *((v0 + 30));
    0x00022880 jalr t9                       |     t9 ();
    0x00022884 nop                           |     
    0x00022888 lw v1, (v0)                   |     v1 = *(v0);
    0x0002288c move a0, v0                   |     a0 = v0;
    0x00022890 lw t9, 0x18(v1)               |     t9 = *((v1 + 6));
    0x00022894 addiu a1, zero, 2             |     a1 = 2;
    0x00022898 jalr t9                       |     t9 ();
    0x0002289c lw gp, 0x20(sp)               |     gp = *(var_20h);
    0x000228a0 b 0x21988                     |     goto label_15;
                                             | label_68:
    0x000228a4 mtc1 zero, f21                |     __asm ("mtc1 zero, f21");
    0x000228a8 b 0x21b54                     |     goto label_31;
                                             | label_67:
    0x000228ac mtc1 zero, f20                |     __asm ("mtc1 zero, f20");
    0x000228b0 b 0x21b1c                     |     goto label_32;
                                             | label_66:
    0x000228b4 move s5, zero                 |     s5 = 0;
    0x000228b8 b 0x21ae0                     |     goto label_33;
                                             | }
    ; assembly                                   | /* r2dec pseudo code output */
                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x21074 */
                                                 | #include <stdint.h>
                                                 |  
    ; (fcn) sym.ingenic_apm_set_far_frame ()     | void ingenic_apm_set_far_frame () {
    0x00021074 lui gp, 8                         |     
    0x00021078 addiu gp, gp, -0x7674             |     
    0x0002107c addu gp, gp, t9                   |     gp += t9;
    0x00021080 lw v0, -0x7fe4(gp)                |     v0 = *((gp - 8185));
    0x00021084 lui a2, 0x1062                    |     a2 = 0x10624dd3;
    0x00021088 addiu a2, a2, 0x4dd3              |     
    0x0002108c lw v0, 0x1700(v0)                 |     v0 = *((v0 + 1472));
    0x00021090 addiu sp, sp, -0x20               |     
    0x00021094 addiu a3, zero, 1                 |     a3 = 1;
    0x00021098 sll a1, v0, 1                     |     a1 = v0 << 1;
    0x0002109c sll v1, v0, 3                     |     v1 = v0 << 3;
    0x000210a0 addu v1, a1, v1                   |     v1 = a1 + v1;
    0x000210a4 mult v1, a2                       |     __asm ("mult v1, a2");
    0x000210a8 lw a1, -0x7b0c(gp)                |     a1 = *(gp);
    0x000210ac sra v1, v1, 0x1f                  |     v1 >>= 0x1f;
    0x000210b0 sw gp, 0x10(sp)                   |     *(var_10h) = gp;
    0x000210b4 lw a1, (a1)                       |     a1 = *(a1);
    0x000210b8 sw ra, 0x1c(sp)                   |     *(var_1ch) = ra;
    0x000210bc sw a3, 0x1e28(a1)                 |     *((a1 + 1930)) = a3;
    0x000210c0 sw v0, 0x1e24(a1)                 |     *((a1 + 1929)) = v0;
    0x000210c4 mfhi a2                           |     __asm ("mfhi a2");
    0x000210c8 sra a2, a2, 6                     |     a2 >>= 6;
    0x000210cc subu a3, a2, v1                   |     __asm ("subu a3, a2, v1");
    0x000210d0 sw a3, 0x1e20(a1)                 |     *((a1 + 1928)) = a3;
                                                 |     if (a3 <= 0) {
    0x000210d4 blez a3, 0x21114                  |         goto label_0;
                                                 |     }
    0x000210d8 lw v1, -0x7fe4(gp)                |     v1 = *((gp - 8185));
    0x000210dc sll a3, a3, 1                     |     a3 <<= 1;
    0x000210e0 move v0, zero                     |     v0 = 0;
    0x000210e4 lwc1 f0, 0x1708(v1)               |     __asm ("lwc1 f0, aav.0x00001708(v1)");
                                                 |     do {
    0x000210e8 addu v1, a0, v0                   |         v1 = a0 + v0;
    0x000210ec lh a2, (v1)                       |         a2 = *(v1);
    0x000210f0 addu v1, a1, v0                   |         v1 = a1 + v0;
    0x000210f4 addiu v0, v0, 2                   |         v0 += 2;
    0x000210f8 mtc1 a2, f2                       |         __asm ("mtc1 a2, f2");
    0x000210fc cvt.s.w f1, f2                    |         __asm ("cvt.s.w f1, f2");
    0x00021100 mul.s f1, f1, f0                  |         __asm ("mul.s f1, f1, f0");
    0x00021104 trunc.w.s f1, f1                  |         __asm ("trunc.w.s f1, f1");
    0x00021108 mfc1 a2, f1                       |         __asm ("mfc1 a2, f1");
    0x0002110c sh a2, 0x20(v1)                   |         *((v1 + 16)) = a2;
    0x00021110 bne v0, a3, 0x210e8               |         
                                                 |     } while (v0 != a3);
                                                 | label_0:
    0x00021114 lw v0, -0x7254(gp)                |     v0 = *(gp);
    0x00021118 lw a0, (v0)                       |     a0 = *(v0);
    0x0002111c lw v0, (a0)                       |     v0 = *(a0);
    0x00021120 lw t9, 0x40(v0)                   |     t9 = *((v0 + 16));
    0x00021124 jalr t9                           |     t9 ();
    0x00021128 nop                               |     
    0x0002112c lw gp, 0x10(sp)                   |     gp = *(var_10h);
                                                 |     if (v0 >= 0) {
    0x00021130 bltz v0, 0x21144                  |         
    0x00021134 lw ra, 0x1c(sp)                   |         ra = *(var_1ch);
    0x00021138 move v0, zero                     |         v0 = 0;
    0x0002113c addiu sp, sp, 0x20                |         
    0x00021140 jr ra                             |         return v0;
                                                 |     }
    0x00021144 lw a0, -0x7fcc(gp)                |     a0 = *(gp);
    0x00021148 lw t9, -0x7e50(gp)                |     t9 = sym.imp.printf
    0x0002114c move a1, v0                       |     a1 = v0;
                                                 |     /* str.ProcessReverseStream_error_:__d____n */
    0x00021150 addiu a0, a0, -0x4fb8             |     a0 += -0x4fb8;
    0x00021154 jalr t9                           |     t9 ();
    0x00021158 lw ra, 0x1c(sp)                   |     ra = *(var_1ch);
    0x0002115c move v0, zero                     |     v0 = 0;
    0x00021160 addiu sp, sp, 0x20                |     
    0x00021164 jr ra                             |     return v0;
                                                 | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x21168 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.ingenic_apm_set_near_frame ()        | void ingenic_apm_set_near_frame () {
    0x00021168 lui gp, 8                             |     
    0x0002116c addiu gp, gp, -0x7768                 |     
    0x00021170 addu gp, gp, t9                       |     gp += t9;
    0x00021174 lw v0, -0x7fe4(gp)                    |     v0 = *((gp - 8185));
    0x00021178 addiu sp, sp, -0x28                   |     
    0x0002117c sw s0, 0x18(sp)                       |     *(var_18h) = s0;
    0x00021180 lw v0, 0x1700(v0)                     |     v0 = *((v0 + 1472));
    0x00021184 lw s0, -0x7880(gp)                    |     s0 = *(gp);
    0x00021188 sw s1, 0x1c(sp)                       |     *(var_1ch) = s1;
    0x0002118c sll a2, v0, 1                         |     a2 = v0 << 1;
    0x00021190 sll v1, v0, 3                         |     v1 = v0 << 3;
    0x00021194 addu v1, a2, v1                       |     v1 = a2 + v1;
    0x00021198 lui a2, 0x1062                        |     a2 = 0x10624dd3;
    0x0002119c addiu a2, a2, 0x4dd3                  |     
    0x000211a0 mult v1, a2                           |     __asm ("mult v1, a2");
    0x000211a4 lw a3, (s0)                           |     a3 = *(s0);
    0x000211a8 sw gp, 0x10(sp)                       |     *(var_10h) = gp;
    0x000211ac move s1, a1                           |     s1 = a1;
    0x000211b0 addiu a1, zero, 1                     |     a1 = 1;
    0x000211b4 sw ra, 0x24(sp)                       |     *(var_24h) = ra;
    0x000211b8 sw s2, 0x20(sp)                       |     *(var_20h) = s2;
    0x000211bc sra v1, v1, 0x1f                      |     v1 >>= 0x1f;
    0x000211c0 sw a1, 0x1e28(a3)                     |     *((a3 + 1930)) = a1;
    0x000211c4 sw v0, 0x1e24(a3)                     |     *((a3 + 1929)) = v0;
    0x000211c8 mfhi a2                               |     __asm ("mfhi a2");
    0x000211cc sra a1, a2, 6                         |     a1 = a2 >> 6;
    0x000211d0 subu a1, a1, v1                       |     __asm ("subu a1, a1, v1");
    0x000211d4 sw a1, 0x1e20(a3)                     |     *((a3 + 1928)) = a1;
                                                     |     if (a1 <= 0) {
    0x000211d8 blez a1, 0x21218                      |         goto label_0;
                                                     |     }
    0x000211dc lw v1, -0x7fe4(gp)                    |     v1 = *((gp - 8185));
    0x000211e0 sll a1, a1, 1                         |     a1 <<= 1;
    0x000211e4 move v0, zero                         |     v0 = 0;
    0x000211e8 lwc1 f0, 0x170c(v1)                   |     __asm ("lwc1 f0, aav.0x0000170c(v1)");
                                                     |     do {
    0x000211ec addu v1, a0, v0                       |         v1 = a0 + v0;
    0x000211f0 lh a2, (v1)                           |         a2 = *(v1);
    0x000211f4 addu v1, a3, v0                       |         v1 = a3 + v0;
    0x000211f8 addiu v0, v0, 2                       |         v0 += 2;
    0x000211fc mtc1 a2, f2                           |         __asm ("mtc1 a2, f2");
    0x00021200 cvt.s.w f1, f2                        |         __asm ("cvt.s.w f1, f2");
    0x00021204 mul.s f1, f1, f0                      |         __asm ("mul.s f1, f1, f0");
    0x00021208 trunc.w.s f1, f1                      |         __asm ("trunc.w.s f1, f1");
    0x0002120c mfc1 a2, f1                           |         __asm ("mfc1 a2, f1");
    0x00021210 sh a2, 0x20(v1)                       |         *((v1 + 16)) = a2;
    0x00021214 bne v0, a1, 0x211ec                   |         
                                                     |     } while (v0 != a1);
                                                     | label_0:
    0x00021218 lw s2, -0x7254(gp)                    |     s2 = *(gp);
    0x0002121c lw v0, -0x7fe4(gp)                    |     v0 = *((gp - 8185));
    0x00021220 lw a0, (s2)                           |     a0 = *(s2);
    0x00021224 lw a1, 0x1704(v0)                     |     a1 = *((v0 + 1473));
    0x00021228 lw v0, (a0)                           |     v0 = *(a0);
    0x0002122c lw t9, 0x4c(v0)                       |     t9 = *((v0 + 19));
    0x00021230 jalr t9                               |     t9 ();
    0x00021234 nop                                   |     
    0x00021238 lw a0, (s2)                           |     a0 = *(s2);
    0x0002123c lw v0, (a0)                           |     v0 = *(a0);
    0x00021240 lw t9, 0x30(v0)                       |     t9 = *((v0 + 12));
    0x00021244 lw a1, (s0)                           |     a1 = *(s0);
    0x00021248 jalr t9                               |     t9 ();
    0x0002124c lw gp, 0x10(sp)                       |     gp = *(var_10h);
    0x00021250 bltz v0, 0x2128c                      |     
                                                     |     while (1) {
    0x00021254 lw a1, (s0)                           |         a1 = *(s0);
    0x00021258 lw t9, -0x7300(gp)                    |         t9 = sym.imp.memcpy;
    0x0002125c move a0, s1                           |         a0 = s1;
    0x00021260 lw a2, 0x1e20(a1)                     |         a2 = *((a1 + 1928));
    0x00021264 addiu a1, a1, 0x20                    |         a1 += 0x20;
    0x00021268 sll a2, a2, 1                         |         a2 <<= 1;
    0x0002126c jalr t9                               |         t9 ();
    0x00021270 lw ra, 0x24(sp)                       |         ra = *(var_24h);
    0x00021274 lw s2, 0x20(sp)                       |         s2 = *(var_20h);
    0x00021278 lw s1, 0x1c(sp)                       |         s1 = *(var_1ch);
    0x0002127c lw s0, 0x18(sp)                       |         s0 = *(var_18h);
    0x00021280 move v0, zero                         |         v0 = 0;
    0x00021284 addiu sp, sp, 0x28                    |         
    0x00021288 jr ra                                 |         return v0;
    0x0002128c lw a0, -0x7fcc(gp)                    |         a0 = *(gp);
    0x00021290 lw t9, -0x7e50(gp)                    |         t9 = sym.imp.printf
    0x00021294 move a1, v0                           |         a1 = v0;
                                                     |         /* str.ProcessStream___error_:__d_n */
    0x00021298 addiu a0, a0, -0x4f94                 |         a0 += -0x4f94;
    0x0002129c jalr t9                               |         t9 ();
    0x000212a0 lw gp, 0x10(sp)                       |         gp = *(var_10h);
    0x000212a4 b 0x21254                             |         
                                                     |     }
                                                     | }
    ; 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;
                                         | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/6225984-11075644.jffs2_new_extract/lib/libaudioProcess.so @ 0x23af0 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) sym.write_profile ()         | void write_profile () {
    0x00023af0 lui gp, 7                 |     
    0x00023af4 addiu gp, gp, 0x5f10      |     
    0x00023af8 addu gp, gp, t9           |     gp += t9;
    0x00023afc lw v0, -0x7fcc(gp)        |     v0 = *(gp);
    0x00023b00 lw t9, -0x7a54(gp)        |     t9 = sym.imp.memset;
    0x00023b04 addiu sp, sp, -0xb8       |     
    0x00023b08 lbu v0, -0x49c0(v0)       |     v0 = *((v0 - 18880));
    0x00023b0c sw ra, 0xb4(sp)           |     *(var_b4h) = ra;
    0x00023b10 sw gp, 0x18(sp)           |     *(var_18h) = gp;
    0x00023b14 sw s6, 0xa8(sp)           |     *(var_a8h) = s6;
    0x00023b18 sw s4, 0xa0(sp)           |     *(var_a0h) = s4;
    0x00023b1c sw s2, 0x98(sp)           |     *(var_98h) = s2;
    0x00023b20 sw s1, 0x94(sp)           |     *(var_94h) = s1;
    0x00023b24 sw s0, 0x90(sp)           |     *(var_90h) = s0;
    0x00023b28 sw fp, 0xb0(sp)           |     *(var_b0h) = fp;
    0x00023b2c sw s7, 0xac(sp)           |     *(var_ach) = s7;
    0x00023b30 sw s5, 0xa4(sp)           |     *(var_a4h) = s5;
    0x00023b34 sw s3, 0x9c(sp)           |     *(var_9ch) = s3;
    0x00023b38 move s2, a0               |     s2 = a0;
    0x00023b3c move s6, a1               |     s6 = a1;
    0x00023b40 addiu a0, sp, 0x21        |     a0 = sp + 0x21;
    0x00023b44 move a1, zero             |     a1 = 0;
    0x00023b48 move s0, a2               |     s0 = a2;
    0x00023b4c sb v0, 0x20(sp)           |     *(var_20h) = v0;
    0x00023b50 addiu a2, zero, 0x63      |     a2 = 0x63;
    0x00023b54 move s4, a3               |     s4 = a3;
    0x00023b58 jalr t9                   |     t9 ();
    0x00023b5c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023b60 lw t9, -0x74d8(gp)        |     t9 = sym.imp.malloc;
    0x00023b64 addiu a0, zero, 0x100     |     a0 = aav.0x00000100;
    0x00023b68 jalr t9                   |     t9 ();
    0x00023b6c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023b70 lw t9, -0x7fd8(gp)        |     t9 = *(gp);
                                         |     /* sym.profile_lock */
    0x00023b74 addiu t9, t9, 0x3440      |     t9 += 0x3440;
    0x00023b78 move s1, v0               |     s1 = v0;
    0x00023b7c bal 0x23440               |     sym_profile_lock ();
    0x00023b80 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (s1 == 0) {
    0x00023b84 beqz s1, 0x241c8          |         goto label_7;
                                         |     }
    0x00023b88 lw t9, -0x7a54(gp)        |     t9 = sym.imp.memset;
    0x00023b8c move a0, s1               |     a0 = s1;
    0x00023b90 move a1, zero             |     a1 = 0;
    0x00023b94 addiu a2, zero, 0x100     |     a2 = aav.0x00000100;
    0x00023b98 jalr t9                   |     t9 ();
    0x00023b9c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023ba0 move a0, s2               |     a0 = s2;
    0x00023ba4 lw a1, -0x7fcc(gp)        |     a1 = *(gp);
    0x00023ba8 lw t9, -0x77ac(gp)        |     t9 = *(gp);
                                         |     /* esilref: 'r+' */
    0x00023bac addiu a1, a1, -0x4a34     |     a1 += -0x4a34;
    0x00023bb0 jalr t9                   |     t9 ();
    0x00023bb4 move s5, v0               |     s5 = v0;
    0x00023bb8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00023bbc beqz v0, 0x23f0c          |         goto label_8;
                                         |     }
    0x00023bc0 lw t9, -0x7bb8(gp)        |     t9 = sym.imp.fseek;
    0x00023bc4 move a0, v0               |     a0 = v0;
    0x00023bc8 move a1, zero             |     a1 = 0;
    0x00023bcc addiu a2, zero, 2         |     a2 = 2;
    0x00023bd0 jalr t9                   |     t9 ();
    0x00023bd4 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023bd8 beqz v0, 0x23c5c          |     
                                         |     while (v0 != 0) {
    0x00023bdc lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x00023be0 lw t9, -0x7e50(gp)        |         t9 = sym.imp.printf
    0x00023be4 move a1, s2               |         a1 = s2;
                                         |         /* str.ERROR:Calculated_length_of_the__s_failed_n */
    0x00023be8 addiu a0, a0, -0x4b40     |         a0 += -0x4b40;
    0x00023bec jalr t9                   |         t9 ();
    0x00023bf0 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023bf4 move a0, s5               |         a0 = s5;
    0x00023bf8 lw t9, -0x774c(gp)        |         t9 = sym.imp.fclose;
    0x00023bfc addiu s0, zero, -1        |         s0 = -1;
    0x00023c00 jalr t9                   |         t9 ();
    0x00023c04 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         | label_1:
    0x00023c08 lw t9, -0x7dbc(gp)        |         t9 = sym.imp.free;
    0x00023c0c move a0, s1               |         a0 = s1;
    0x00023c10 jalr t9                   |         t9 ();
    0x00023c14 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         | label_5:
    0x00023c18 lw a0, -0x7fe4(gp)        |         a0 = *((gp - 8185));
    0x00023c1c lw t9, -0x7c9c(gp)        |         t9 = sym.imp.pthread_mutex_unlock;
                                         |         /* obj.mutex */
    0x00023c20 addiu a0, a0, 0x32d4      |         a0 += aav.0x000032d4;
    0x00023c24 jalr t9                   |         t9 ();
    0x00023c28 lw ra, 0xb4(sp)           |         ra = *(var_b4h);
    0x00023c2c move v0, s0               |         v0 = s0;
    0x00023c30 lw fp, 0xb0(sp)           |         fp = *(var_b0h);
    0x00023c34 lw s7, 0xac(sp)           |         s7 = *(var_ach);
    0x00023c38 lw s6, 0xa8(sp)           |         s6 = *(var_a8h);
    0x00023c3c lw s5, 0xa4(sp)           |         s5 = *(var_a4h);
    0x00023c40 lw s4, 0xa0(sp)           |         s4 = *(var_a0h);
    0x00023c44 lw s3, 0x9c(sp)           |         s3 = *(var_9ch);
    0x00023c48 lw s2, 0x98(sp)           |         s2 = *(var_98h);
    0x00023c4c lw s1, 0x94(sp)           |         s1 = *(var_94h);
    0x00023c50 lw s0, 0x90(sp)           |         s0 = *(var_90h);
    0x00023c54 addiu sp, sp, 0xb8        |         
    0x00023c58 jr ra                     |         return v0;
    0x00023c5c lw t9, -0x7da4(gp)        |         t9 = sym.imp.ftell;
    0x00023c60 move a0, s5               |         a0 = s5;
    0x00023c64 jalr t9                   |         t9 ();
    0x00023c68 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023c6c move a0, s5               |         a0 = s5;
    0x00023c70 move a1, zero             |         a1 = 0;
    0x00023c74 lw t9, -0x7bb8(gp)        |         t9 = sym.imp.fseek;
    0x00023c78 move a2, zero             |         a2 = 0;
    0x00023c7c move s7, v0               |         s7 = v0;
    0x00023c80 jalr t9                   |         t9 ();
    0x00023c84 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023c88 bnez v0, 0x23bdc          |         
                                         |     }
    0x00023c8c lw t9, -0x74d8(gp)        |     t9 = sym.imp.malloc;
    0x00023c90 addiu fp, s7, 1           |     fp = s7 + 1;
    0x00023c94 move a0, fp               |     a0 = fp;
    0x00023c98 jalr t9                   |     t9 ();
    0x00023c9c move s3, v0               |     s3 = v0;
    0x00023ca0 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00023ca4 beqz v0, 0x23fc0          |         goto label_9;
                                         |     }
    0x00023ca8 lw t9, -0x7a54(gp)        |     t9 = sym.imp.memset;
    0x00023cac move a0, v0               |     a0 = v0;
    0x00023cb0 move a1, zero             |     a1 = 0;
    0x00023cb4 move a2, fp               |     a2 = fp;
    0x00023cb8 jalr t9                   |     t9 ();
    0x00023cbc lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023cc0 move a3, s5               |     a3 = s5;
    0x00023cc4 addiu a1, zero, 1         |     a1 = 1;
    0x00023cc8 lw t9, -0x7764(gp)        |     t9 = sym.imp.fread;
    0x00023ccc move a2, s7               |     a2 = s7;
    0x00023cd0 move a0, s3               |     a0 = s3;
    0x00023cd4 jalr t9                   |     t9 ();
    0x00023cd8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023cdc lw t9, -0x774c(gp)        |     t9 = sym.imp.fclose;
    0x00023ce0 move a0, s5               |     a0 = s5;
    0x00023ce4 jalr t9                   |     t9 ();
    0x00023ce8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023cec addiu a0, sp, 0x20        |     a0 = sp + 0x20;
    0x00023cf0 move a2, s6               |     a2 = s6;
    0x00023cf4 lw a1, -0x7fcc(gp)        |     a1 = *(gp);
    0x00023cf8 lw t9, -0x7b6c(gp)        |     t9 = sym.imp.sprintf
                                         |     /* esilref: '&s]' */
    0x00023cfc addiu a1, a1, -0x4af0     |     a1 += -0x4af0;
    0x00023d00 jalr t9                   |     t9 ();
    0x00023d04 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023d08 lw t9, -0x7598(gp)        |     t9 = sym.imp.strlen;
    0x00023d0c addiu a0, sp, 0x20        |     a0 = sp + 0x20;
    0x00023d10 jalr t9                   |     t9 ();
    0x00023d14 sltu v0, s7, v0           |     v0 = (s7 < v0) ? 1 : 0;
    0x00023d18 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00023d1c bnez v0, 0x23f28          |         goto label_10;
                                         |     }
    0x00023d20 lw t9, -0x7cdc(gp)        |     t9 = sym.imp.strstr;
    0x00023d24 move a0, s3               |     a0 = s3;
    0x00023d28 addiu a1, sp, 0x20        |     a1 = sp + 0x20;
    0x00023d2c jalr t9                   |     t9 ();
    0x00023d30 sw v0, 0x88(sp)           |     *(var_88h) = v0;
    0x00023d34 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00023d38 beqz v0, 0x23f28          |         goto label_10;
                                         |     }
    0x00023d3c lw t9, -0x7df8(gp)        |     t9 = sym.imp.strchr;
    0x00023d40 lw a0, 0x88(sp)           |     a0 = *(var_88h);
    0x00023d44 addiu a1, zero, 0x5b      |     a1 = 0x5b;
    0x00023d48 jalr t9                   |     t9 ();
    0x00023d4c move fp, v0               |     fp = v0;
    0x00023d50 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00023d54 beqz v0, 0x2410c          |         goto label_11;
                                         |     }
    0x00023d58 lw v0, 0x88(sp)           |     v0 = *(var_88h);
    0x00023d5c lw t9, -0x74d8(gp)        |     t9 = sym.imp.malloc;
    0x00023d60 subu s5, fp, v0           |     __asm ("subu s5, fp, v0");
    0x00023d64 addiu s7, s5, 1           |     s7 = s5 + 1;
    0x00023d68 move a0, s7               |     a0 = s7;
    0x00023d6c jalr t9                   |     t9 ();
    0x00023d70 move s6, v0               |     s6 = v0;
    0x00023d74 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00023d78 beqz v0, 0x24180          |         goto label_12;
                                         |     }
    0x00023d7c lw t9, -0x7a54(gp)        |     t9 = sym.imp.memset;
    0x00023d80 move a0, v0               |     a0 = v0;
    0x00023d84 move a1, zero             |     a1 = 0;
    0x00023d88 move a2, s7               |     a2 = s7;
    0x00023d8c jalr t9                   |     t9 ();
    0x00023d90 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023d94 lw a1, 0x88(sp)           |     a1 = *(var_88h);
    0x00023d98 move a0, s6               |     a0 = s6;
    0x00023d9c lw t9, -0x7954(gp)        |     t9 = sym.imp.strncpy;
    0x00023da0 move a2, s5               |     a2 = s5;
    0x00023da4 jalr t9                   |     t9 ();
    0x00023da8 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         | label_3:
    0x00023dac move s7, zero             |     s7 = 0;
    0x00023db0 addiu s5, zero, 0x3d      |     s5 = 0x3d;
    0x00023db4 b 0x23e00                 |     
                                         |     while (s7 != 0) {
    0x00023db8 jalr t9                   |         t9 ();
    0x00023dbc nop                       |         
    0x00023dc0 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023dc4 addu a0, s7, v0           |         a0 = s7 + v0;
    0x00023dc8 lw t9, -0x7cdc(gp)        |         t9 = sym.imp.strstr;
    0x00023dcc move a1, s0               |         a1 = s0;
    0x00023dd0 jalr t9                   |         t9 ();
    0x00023dd4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023dd8 move s7, v0               |         s7 = v0;
    0x00023ddc move a0, s0               |         a0 = s0;
    0x00023de0 lw t9, -0x7598(gp)        |         t9 = sym.imp.strlen;
                                         |         if (s7 == 0) {
    0x00023de4 beqz s7, 0x23e30          |             goto label_13;
                                         |         }
                                         | label_0:
    0x00023de8 jalr t9                   |         t9 ();
    0x00023dec nop                       |         
    0x00023df0 addu v0, s7, v0           |         v0 = s7 + v0;
    0x00023df4 lb v0, (v0)               |         v0 = *(v0);
    0x00023df8 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == s5) {
    0x00023dfc beq v0, s5, 0x23fec       |             goto label_14;
                                         |         }
    0x00023e00 lw t9, -0x7598(gp)        |         t9 = sym.imp.strlen;
    0x00023e04 move a0, s0               |         a0 = s0;
    0x00023e08 bnez s7, 0x23db8          |         
                                         |     }
    0x00023e0c lw t9, -0x7cdc(gp)        |     t9 = sym.imp.strstr;
    0x00023e10 move a0, s6               |     a0 = s6;
    0x00023e14 move a1, s0               |     a1 = s0;
    0x00023e18 jalr t9                   |     t9 ();
    0x00023e1c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023e20 move s7, v0               |     s7 = v0;
    0x00023e24 move a0, s0               |     a0 = s0;
    0x00023e28 lw t9, -0x7598(gp)        |     t9 = sym.imp.strlen;
                                         |     if (s7 != 0) {
    0x00023e2c bnez s7, 0x23de8          |         goto label_0;
                                         |     }
                                         | label_13:
    0x00023e30 lw a1, -0x7fcc(gp)        |     a1 = *(gp);
    0x00023e34 lw t9, -0x77ac(gp)        |     t9 = *(gp);
    0x00023e38 move a0, s2               |     a0 = s2;
                                         |     /* esilref: 'w+' */
    0x00023e3c addiu a1, a1, -0x49dc     |     a1 += -0x49dc;
    0x00023e40 jalr t9                   |     t9 ();
    0x00023e44 move s5, v0               |     s5 = v0;
    0x00023e48 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 == 0) {
    0x00023e4c beqz v0, 0x241a8          |         goto label_15;
                                         |     }
    0x00023e50 lw t9, -0x7298(gp)        |     t9 = sym.imp.fwrite;
    0x00023e54 move a0, s3               |     a0 = s3;
    0x00023e58 addiu a1, zero, 1         |     a1 = 1;
    0x00023e5c subu a2, fp, s3           |     __asm ("subu a2, fp, s3");
    0x00023e60 move a3, v0               |     a3 = v0;
    0x00023e64 jalr t9                   |     t9 ();
    0x00023e68 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023e6c move a2, s0               |     a2 = s0;
    0x00023e70 move a3, s4               |     a3 = s4;
    0x00023e74 lw a1, -0x7fcc(gp)        |     a1 = *(gp);
    0x00023e78 lw t9, -0x7b6c(gp)        |     t9 = sym.imp.sprintf
    0x00023e7c move a0, s1               |     a0 = s1;
                                         |     /* str._s_s_n */
    0x00023e80 addiu a1, a1, -0x49d0     |     a1 += -0x49d0;
    0x00023e84 jalr t9                   |     t9 ();
    0x00023e88 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023e8c move a0, s1               |     a0 = s1;
    0x00023e90 lw t9, -0x7598(gp)        |     t9 = sym.imp.strlen;
    0x00023e94 move s0, zero             |     s0 = 0;
    0x00023e98 jalr t9                   |     t9 ();
    0x00023e9c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023ea0 addiu a1, zero, 1         |     a1 = 1;
    0x00023ea4 move a2, v0               |     a2 = v0;
    0x00023ea8 lw t9, -0x7298(gp)        |     t9 = sym.imp.fwrite;
    0x00023eac move a3, s5               |     a3 = s5;
    0x00023eb0 move a0, s1               |     a0 = s1;
    0x00023eb4 jalr t9                   |     t9 ();
    0x00023eb8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023ebc lw t9, -0x7598(gp)        |     t9 = sym.imp.strlen;
    0x00023ec0 move a0, fp               |     a0 = fp;
    0x00023ec4 jalr t9                   |     t9 ();
    0x00023ec8 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023ecc move a0, fp               |     a0 = fp;
    0x00023ed0 addiu a1, zero, 1         |     a1 = 1;
    0x00023ed4 lw t9, -0x7298(gp)        |     t9 = sym.imp.fwrite;
    0x00023ed8 move a2, v0               |     a2 = v0;
    0x00023edc move a3, s5               |     a3 = s5;
    0x00023ee0 jalr t9                   |     t9 ();
    0x00023ee4 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00023ee8 lw t9, -0x774c(gp)        |     t9 = sym.imp.fclose;
    0x00023eec move a0, s5               |     a0 = s5;
    0x00023ef0 jalr t9                   |     t9 ();
    0x00023ef4 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     do {
                                         | label_4:
    0x00023ef8 lw t9, -0x7dbc(gp)        |         t9 = sym.imp.free;
    0x00023efc move a0, s6               |         a0 = s6;
    0x00023f00 jalr t9                   |         t9 ();
    0x00023f04 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023f08 b 0x23fac                 |         goto label_2;
                                         | label_8:
    0x00023f0c lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x00023f10 lw t9, -0x7e50(gp)        |         t9 = sym.imp.printf
    0x00023f14 move a1, s2               |         a1 = s2;
                                         |         /* str.fopen_error_file:_s_n */
    0x00023f18 addiu a0, a0, -0x4a30     |         a0 += -aav.0x00004a30;
    0x00023f1c jalr t9                   |         t9 ();
    0x00023f20 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023f24 move s3, zero             |         s3 = 0;
                                         | label_10:
    0x00023f28 lw a1, -0x7fcc(gp)        |         a1 = *(gp);
    0x00023f2c lw t9, -0x77ac(gp)        |         t9 = *(gp);
    0x00023f30 move a0, s2               |         a0 = s2;
                                         |         /* esilref: 'a+' */
    0x00023f34 addiu a1, a1, -0x4a18     |         a1 += -0x4a18;
    0x00023f38 jalr t9                   |         t9 ();
    0x00023f3c move s5, v0               |         s5 = v0;
    0x00023f40 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x00023f44 beqz v0, 0x240ec          |             goto label_16;
                                         |         }
    0x00023f48 lw a1, -0x7fcc(gp)        |         a1 = *(gp);
    0x00023f4c lw t9, -0x7b6c(gp)        |         t9 = sym.imp.sprintf
    0x00023f50 move a3, s0               |         a3 = s0;
    0x00023f54 move a2, s6               |         a2 = s6;
                                         |         /* str.__s__n_s_s_n */
    0x00023f58 addiu a1, a1, -0x4a00     |         a1 += -0x4a00;
    0x00023f5c move a0, s1               |         a0 = s1;
    0x00023f60 sw s4, 0x10(sp)           |         *(var_10h) = s4;
    0x00023f64 jalr t9                   |         t9 ();
    0x00023f68 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023f6c move a0, s1               |         a0 = s1;
    0x00023f70 lw t9, -0x7598(gp)        |         t9 = sym.imp.strlen;
    0x00023f74 move s0, zero             |         s0 = 0;
    0x00023f78 jalr t9                   |         t9 ();
    0x00023f7c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023f80 move a0, s1               |         a0 = s1;
    0x00023f84 addiu a1, zero, 1         |         a1 = 1;
    0x00023f88 lw t9, -0x7298(gp)        |         t9 = sym.imp.fwrite;
    0x00023f8c move a2, v0               |         a2 = v0;
    0x00023f90 move a3, s5               |         a3 = s5;
    0x00023f94 jalr t9                   |         t9 ();
    0x00023f98 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023f9c lw t9, -0x774c(gp)        |         t9 = sym.imp.fclose;
    0x00023fa0 move a0, s5               |         a0 = s5;
    0x00023fa4 jalr t9                   |         t9 ();
    0x00023fa8 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         | label_2:
    0x00023fac lw t9, -0x7dbc(gp)        |         t9 = sym.imp.free;
    0x00023fb0 move a0, s3               |         a0 = s3;
    0x00023fb4 jalr t9                   |         t9 ();
    0x00023fb8 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023fbc b 0x23c08                 |         goto label_1;
                                         | label_9:
    0x00023fc0 lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x00023fc4 lw t9, -0x7e94(gp)        |         t9 = *(gp);
    0x00023fc8 addiu s0, zero, -1        |         s0 = -1;
                                         |         /* str.ERROR:_file_buffer_malloc_failed */
    0x00023fcc addiu a0, a0, -0x4b14     |         a0 += -0x4b14;
    0x00023fd0 jalr t9                   |         t9 ();
    0x00023fd4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023fd8 lw t9, -0x774c(gp)        |         t9 = sym.imp.fclose;
    0x00023fdc move a0, s5               |         a0 = s5;
    0x00023fe0 jalr t9                   |         t9 ();
    0x00023fe4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00023fe8 b 0x23c08                 |         goto label_1;
                                         | label_14:
    0x00023fec lw t9, -0x7df8(gp)        |         t9 = sym.imp.strchr;
    0x00023ff0 move a0, s7               |         a0 = s7;
    0x00023ff4 addiu a1, zero, 0xa       |         a1 = 0xa;
    0x00023ff8 jalr t9                   |         t9 ();
    0x00023ffc move s5, v0               |         s5 = v0;
    0x00024000 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x00024004 beqz v0, 0x2420c          |             goto label_17;
                                         |         }
                                         | label_6:
    0x00024008 lw a1, -0x7fcc(gp)        |         a1 = *(gp);
    0x0002400c lw t9, -0x77ac(gp)        |         t9 = *(gp);
    0x00024010 move a0, s2               |         a0 = s2;
                                         |         /* esilref: 'w+' */
    0x00024014 addiu a1, a1, -0x49dc     |         a1 += -0x49dc;
    0x00024018 jalr t9                   |         t9 ();
    0x0002401c move fp, v0               |         fp = v0;
    0x00024020 lw gp, 0x18(sp)           |         gp = *(var_18h);
                                         |         if (v0 == 0) {
    0x00024024 beqz v0, 0x241a8          |             goto label_15;
                                         |         }
    0x00024028 lw v0, 0x88(sp)           |         v0 = *(var_88h);
    0x0002402c subu v1, s7, s6           |         __asm ("subu v1, s7, s6");
    0x00024030 lw t9, -0x7298(gp)        |         t9 = sym.imp.fwrite;
    0x00024034 addu a2, v0, v1           |         a2 = v0 + v1;
    0x00024038 move a0, s3               |         a0 = s3;
    0x0002403c addiu a1, zero, 1         |         a1 = 1;
    0x00024040 subu a2, a2, s3           |         __asm ("subu a2, a2, s3");
    0x00024044 move a3, fp               |         a3 = fp;
    0x00024048 jalr t9                   |         t9 ();
    0x0002404c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00024050 move a2, s0               |         a2 = s0;
    0x00024054 move a3, s4               |         a3 = s4;
    0x00024058 lw a1, -0x7fcc(gp)        |         a1 = *(gp);
    0x0002405c lw t9, -0x7b6c(gp)        |         t9 = sym.imp.sprintf
    0x00024060 move a0, s1               |         a0 = s1;
                                         |         /* str._s_s */
    0x00024064 addiu a1, a1, -0x49d8     |         a1 += -0x49d8;
    0x00024068 jalr t9                   |         t9 ();
    0x0002406c lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00024070 move a0, s1               |         a0 = s1;
    0x00024074 subu s5, s5, s6           |         __asm ("subu s5, s5, s6");
    0x00024078 lw t9, -0x7598(gp)        |         t9 = sym.imp.strlen;
    0x0002407c move s0, zero             |         s0 = 0;
    0x00024080 jalr t9                   |         t9 ();
    0x00024084 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00024088 addiu a1, zero, 1         |         a1 = 1;
    0x0002408c move a2, v0               |         a2 = v0;
    0x00024090 lw t9, -0x7298(gp)        |         t9 = sym.imp.fwrite;
    0x00024094 move a3, fp               |         a3 = fp;
    0x00024098 move a0, s1               |         a0 = s1;
    0x0002409c jalr t9                   |         t9 ();
    0x000240a0 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000240a4 lw v0, 0x88(sp)           |         v0 = *(var_88h);
    0x000240a8 lw t9, -0x7598(gp)        |         t9 = sym.imp.strlen;
    0x000240ac addu s7, v0, s5           |         s7 = v0 + s5;
    0x000240b0 move a0, s7               |         a0 = s7;
    0x000240b4 jalr t9                   |         t9 ();
    0x000240b8 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000240bc move a0, s7               |         a0 = s7;
    0x000240c0 addiu a1, zero, 1         |         a1 = 1;
    0x000240c4 lw t9, -0x7298(gp)        |         t9 = sym.imp.fwrite;
    0x000240c8 move a2, v0               |         a2 = v0;
    0x000240cc move a3, fp               |         a3 = fp;
    0x000240d0 jalr t9                   |         t9 ();
    0x000240d4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000240d8 lw t9, -0x774c(gp)        |         t9 = sym.imp.fclose;
    0x000240dc move a0, fp               |         a0 = fp;
    0x000240e0 jalr t9                   |         t9 ();
    0x000240e4 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000240e8 b 0x23ef8                 |         
                                         |     } while (1);
                                         | label_16:
    0x000240ec lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x000240f0 lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
    0x000240f4 move a1, s2               |     a1 = s2;
                                         |     /* str.fwopen__s_error_n */
    0x000240f8 addiu a0, a0, -0x4a14     |     a0 += -0x4a14;
    0x000240fc jalr t9                   |     t9 ();
    0x00024100 addiu s0, zero, -1        |     s0 = -1;
    0x00024104 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00024108 b 0x23fac                 |     goto label_2;
                                         | label_11:
    0x0002410c lw t9, -0x7598(gp)        |     t9 = sym.imp.strlen;
    0x00024110 move a0, s3               |     a0 = s3;
    0x00024114 jalr t9                   |     t9 ();
    0x00024118 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x0002411c lw a0, 0x88(sp)           |     a0 = *(var_88h);
    0x00024120 lw t9, -0x7598(gp)        |     t9 = sym.imp.strlen;
    0x00024124 addu fp, s3, v0           |     fp = s3 + v0;
    0x00024128 jalr t9                   |     t9 ();
    0x0002412c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00024130 addiu s5, v0, 1           |     s5 = v0 + 1;
    0x00024134 lw t9, -0x74d8(gp)        |     t9 = sym.imp.malloc;
    0x00024138 move a0, s5               |     a0 = s5;
    0x0002413c jalr t9                   |     t9 ();
    0x00024140 move s6, v0               |     s6 = v0;
    0x00024144 lw gp, 0x18(sp)           |     gp = *(var_18h);
                                         |     if (v0 != 0) {
    0x00024148 beqz v0, 0x241e4          |         
    0x0002414c lw t9, -0x7a54(gp)        |         t9 = sym.imp.memset;
    0x00024150 move a0, v0               |         a0 = v0;
    0x00024154 move a1, zero             |         a1 = 0;
    0x00024158 move a2, s5               |         a2 = s5;
    0x0002415c jalr t9                   |         t9 ();
    0x00024160 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x00024164 lw a1, 0x88(sp)           |         a1 = *(var_88h);
    0x00024168 move a0, s6               |         a0 = s6;
    0x0002416c lw t9, -0x7300(gp)        |         t9 = sym.imp.memcpy;
    0x00024170 move a2, s5               |         a2 = s5;
    0x00024174 jalr t9                   |         t9 ();
    0x00024178 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x0002417c b 0x23dac                 |         goto label_3;
                                         | label_12:
    0x00024180 lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x00024184 lw a1, -0x7fcc(gp)        |         a1 = *(gp);
    0x00024188 lw t9, -0x7e50(gp)        |         t9 = sym.imp.printf
                                         |         /* str.ERROR:_temp_buffer_malloc_failed__s___d_n */
    0x0002418c addiu a0, a0, -0x4ac8     |         a0 += -0x4ac8;
                                         |         /* obj.__func__.3832 */
    0x00024190 addiu a1, a1, -0x494c     |         a1 += -0x494c;
    0x00024194 addiu a2, zero, 0x12a     |         a2 = 0x12a;
    0x00024198 jalr t9                   |         t9 ();
    0x0002419c addiu s0, zero, -1        |         s0 = -1;
    0x000241a0 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000241a4 b 0x23fac                 |         goto label_2;
                                         | label_15:
    0x000241a8 lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x000241ac lw t9, -0x7e50(gp)        |         t9 = sym.imp.printf
    0x000241b0 move a1, s2               |         a1 = s2;
                                         |         /* str.fwopen__s_error_n */
    0x000241b4 addiu a0, a0, -0x4a14     |         a0 += -0x4a14;
    0x000241b8 jalr t9                   |         t9 ();
    0x000241bc addiu s0, zero, -1        |         s0 = -1;
    0x000241c0 lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000241c4 b 0x23ef8                 |         goto label_4;
                                         | label_7:
    0x000241c8 lw a0, -0x7fcc(gp)        |         a0 = *(gp);
    0x000241cc lw t9, -0x7e94(gp)        |         t9 = *(gp);
    0x000241d0 addiu s0, zero, -1        |         s0 = -1;
                                         |         /* str.malloc_parameter_buffer_error_ */
    0x000241d4 addiu a0, a0, -0x4a54     |         a0 += -aav.0x00004a54;
    0x000241d8 jalr t9                   |         t9 ();
    0x000241dc lw gp, 0x18(sp)           |         gp = *(var_18h);
    0x000241e0 b 0x23c18                 |         goto label_5;
                                         |     }
    0x000241e4 lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x000241e8 lw a1, -0x7fcc(gp)        |     a1 = *(gp);
    0x000241ec lw t9, -0x7e50(gp)        |     t9 = sym.imp.printf
                                         |     /* str.ERROR:_temp_buffer_malloc_failed__s___d_n */
    0x000241f0 addiu a0, a0, -0x4ac8     |     a0 += -0x4ac8;
                                         |     /* obj.__func__.3832 */
    0x000241f4 addiu a1, a1, -0x494c     |     a1 += -0x494c;
    0x000241f8 addiu a2, zero, 0x121     |     a2 = 0x121;
    0x000241fc jalr t9                   |     t9 ();
    0x00024200 addiu s0, zero, -1        |     s0 = -1;
    0x00024204 lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00024208 b 0x23fac                 |     goto label_2;
                                         | label_17:
    0x0002420c lw a0, -0x7fcc(gp)        |     a0 = *(gp);
    0x00024210 lw t9, -0x7e94(gp)        |     t9 = *(gp);
                                         |     /* str.parameter_end_p_is_NULL */
    0x00024214 addiu a0, a0, -0x49f4     |     a0 += -0x49f4;
    0x00024218 jalr t9                   |     t9 ();
    0x0002421c lw gp, 0x18(sp)           |     gp = *(var_18h);
    0x00024220 b 0x24008                 |     goto label_6;
                                         | }

[*] Function printf used 41 times libaudioProcess.so