[*] Binary protection state of audiocontrol

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


[*] Function printf tear down of audiocontrol

    ; assembly                                                   | /* r2dec pseudo code output */
                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ef00 */
                                                                 | #include <stdint.h>
                                                                 |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosink ()           | void asound_utils_generate_pcm_audiosink () {
    0x0002ef00 lui gp, 3                                         |     
    0x0002ef04 addiu gp, gp, 0x51e0                              |     
    0x0002ef08 addu gp, gp, t9                                   |     gp += t9;
    0x0002ef0c addiu sp, sp, -0x28                               |     
    0x0002ef10 move a3, a2                                       |     a3 = a2;
    0x0002ef14 move a2, a1                                       |     a2 = a1;
    0x0002ef18 lw a1, -0x7ea4(gp)                                |     a1 = *((gp - 8105));
    0x0002ef1c lw t9, -0x7a80(gp)                                |     t9 = sym.imp.g_string_append_printf
    0x0002ef20 sw ra, 0x24(sp)                                   |     *(var_24h) = ra;
    0x0002ef24 sw gp, 0x18(sp)                                   |     *(var_18h) = gp;
    0x0002ef28 sw a3, 0x10(sp)                                   |     *(var_10h) = a3;
                                                                 |     /* str.pcm.audiosink__n_ttype_dmix_n_tipc_key__u_n_tipc_perm_0666_n_tslave__s_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ef2c addiu a1, a1, -0x7dd4                             |     a1 += -0x7dd4;
    0x0002ef30 jalr t9                                           |     t9 ();
    0x0002ef34 lw ra, 0x24(sp)                                   |     ra = *(var_24h);
    0x0002ef38 addiu sp, sp, 0x28                                |     
    0x0002ef3c jr ra                                             |     return;
                                                                 | }
    ; assembly                                                       | /* r2dec pseudo code output */
                                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ef40 */
                                                                     | #include <stdint.h>
                                                                     |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosink_index ()         | void asound_utils_generate_pcm_audiosink_index () {
    0x0002ef40 lui gp, 3                                             |     
    0x0002ef44 addiu gp, gp, 0x51a0                                  |     
    0x0002ef48 addu gp, gp, t9                                       |     gp += t9;
    0x0002ef4c addiu sp, sp, -0x28                                   |     
    0x0002ef50 lw t9, -0x7a80(gp)                                    |     t9 = sym.imp.g_string_append_printf
    0x0002ef54 sw a3, 0x10(sp)                                       |     *(var_10h) = a3;
    0x0002ef58 move a3, a2                                           |     a3 = a2;
    0x0002ef5c move a2, a1                                           |     a2 = a1;
    0x0002ef60 lw a1, -0x7ea4(gp)                                    |     a1 = *((gp - 8105));
    0x0002ef64 sw ra, 0x24(sp)                                       |     *(var_24h) = ra;
    0x0002ef68 sw gp, 0x18(sp)                                       |     *(var_18h) = gp;
                                                                     |     /* str.pcm.audiosink_u__n_ttype_route_n_tslave.pcm_audiosink_n_tslave.channels__u_n_thint.show_on_n_thint.description_Slaved_to_audiosink_n_s_n_n */
    0x0002ef6c addiu a1, a1, -0x7d60                                 |     a1 += -0x7d60;
    0x0002ef70 jalr t9                                               |     t9 ();
    0x0002ef74 lw ra, 0x24(sp)                                       |     ra = *(var_24h);
    0x0002ef78 addiu sp, sp, 0x28                                    |     
    0x0002ef7c jr ra                                                 |     return;
                                                                     | }
    ; assembly                                                       | /* r2dec pseudo code output */
                                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ef40 */
                                                                     | #include <stdint.h>
                                                                     |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosink_index ()         | void asound_utils_generate_pcm_audiosink_index () {
    0x0002ef40 lui gp, 3                                             |     
    0x0002ef44 addiu gp, gp, 0x51a0                                  |     
    0x0002ef48 addu gp, gp, t9                                       |     gp += t9;
    0x0002ef4c addiu sp, sp, -0x28                                   |     
    0x0002ef50 lw t9, -0x7a80(gp)                                    |     t9 = sym.imp.g_string_append_printf
    0x0002ef54 sw a3, 0x10(sp)                                       |     *(var_10h) = a3;
    0x0002ef58 move a3, a2                                           |     a3 = a2;
    0x0002ef5c move a2, a1                                           |     a2 = a1;
    0x0002ef60 lw a1, -0x7ea4(gp)                                    |     a1 = *((gp - 8105));
    0x0002ef64 sw ra, 0x24(sp)                                       |     *(var_24h) = ra;
    0x0002ef68 sw gp, 0x18(sp)                                       |     *(var_18h) = gp;
                                                                     |     /* str.pcm.audiosink_u__n_ttype_route_n_tslave.pcm_audiosink_n_tslave.channels__u_n_thint.show_on_n_thint.description_Slaved_to_audiosink_n_s_n_n */
    0x0002ef6c addiu a1, a1, -0x7d60                                 |     a1 += -0x7d60;
    0x0002ef70 jalr t9                                               |     t9 ();
    0x0002ef74 lw ra, 0x24(sp)                                       |     ra = *(var_24h);
    0x0002ef78 addiu sp, sp, 0x28                                    |     
    0x0002ef7c jr ra                                                 |     return;
                                                                     | }
    ; assembly                                                       | /* r2dec pseudo code output */
                                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ebe0 */
                                                                     | #include <stdint.h>
                                                                     |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_raw ()         | void asound_utils_generate_pcm_audiosource_raw () {
    0x0002ebe0 lui gp, 3                                             |     
    0x0002ebe4 addiu gp, gp, 0x5500                                  |     
    0x0002ebe8 addu gp, gp, t9                                       |     gp += t9;
    0x0002ebec move a3, a2                                           |     a3 = a2;
    0x0002ebf0 move a2, a1                                           |     a2 = a1;
    0x0002ebf4 lw a1, -0x7fdc(gp)                                    |     a1 = *(gp);
    0x0002ebf8 lw t9, -0x7a80(gp)                                    |     t9 = sym.imp.g_string_append_printf
                                                                     |     /* str.pcm.audiosource_raw__n_ttype_dsnoop_n_tipc_key__d_n_tipc_key_add_uid_0_n_tipc_perm_0666_n_tslave__s_n_n_n */
    0x0002ebfc addiu a1, a1, 0x7b64                                  |     a1 += 0x7b64;
    0x0002ec00 jr t9                                                 |     return t9 ();
                                                                     | }
    ; assembly                                                               | /* r2dec pseudo code output */
                                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ec04 */
                                                                             | #include <stdint.h>
                                                                             |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_raw ()           | void asound_utils_generate_pcm_audiosource_index_raw () {
    0x0002ec04 lui gp, 3                                                     |     
    0x0002ec08 addiu gp, gp, 0x54dc                                          |     
    0x0002ec0c addu gp, gp, t9                                               |     gp += t9;
    0x0002ec10 addiu sp, sp, -0x28                                           |     
    0x0002ec14 lw t9, -0x7a80(gp)                                            |     t9 = sym.imp.g_string_append_printf
    0x0002ec18 lw v0, 0x38(sp)                                               |     v0 = *(arg_38h);
    0x0002ec1c sw a3, 0x10(sp)                                               |     *(var_10h) = a3;
    0x0002ec20 move a3, a2                                                   |     a3 = a2;
    0x0002ec24 move a2, a1                                                   |     a2 = a1;
    0x0002ec28 lw a1, -0x7fdc(gp)                                            |     a1 = *(gp);
    0x0002ec2c sw ra, 0x24(sp)                                               |     *(var_24h) = ra;
    0x0002ec30 sw gp, 0x18(sp)                                               |     *(var_18h) = gp;
    0x0002ec34 sw v0, 0x14(sp)                                               |     *(var_14h) = v0;
                                                                             |     /* str.pcm.audiosource_u_raw__n_ttype_dsnoop_n_tipc_key__u_n_tipc_key_add_uid_0_n_tipc_perm_0666_n_tslave__s_n_s_n_n */
    0x0002ec38 addiu a1, a1, 0x7bc4                                          |     a1 += 0x7bc4;
    0x0002ec3c jalr t9                                                       |     t9 ();
    0x0002ec40 lw ra, 0x24(sp)                                               |     ra = *(var_24h);
    0x0002ec44 addiu sp, sp, 0x28                                            |     
    0x0002ec48 jr ra                                                         |     return v0;
                                                                             | }
    ; assembly                                                           | /* r2dec pseudo code output */
                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ec4c */
                                                                         | #include <stdint.h>
                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_dsnoop ()          | void asound_utils_generate_pcm_audiosource_dsnoop () {
    0x0002ec4c lui gp, 3                                                 |     
    0x0002ec50 addiu gp, gp, 0x5494                                      |     
    0x0002ec54 addu gp, gp, t9                                           |     gp += t9;
    0x0002ec58 addiu sp, sp, -0x28                                       |     
    0x0002ec5c move a3, a2                                               |     a3 = a2;
    0x0002ec60 move a2, a1                                               |     a2 = a1;
    0x0002ec64 lw a1, -0x7fdc(gp)                                        |     a1 = *(gp);
    0x0002ec68 lw t9, -0x7a80(gp)                                        |     t9 = sym.imp.g_string_append_printf
    0x0002ec6c sw ra, 0x24(sp)                                           |     *(var_24h) = ra;
    0x0002ec70 sw gp, 0x18(sp)                                           |     *(var_18h) = gp;
    0x0002ec74 sw a3, 0x10(sp)                                           |     *(var_10h) = a3;
                                                                         |     /* str.pcm.audiosource_dsnoop__n_ttype_dsnoop_n_tipc_key__u_n_tipc_key_add_uid_0_n_tipc_perm_0666_n_tslave__s_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ec78 addiu a1, a1, 0x7c28                                      |     a1 += 0x7c28;
    0x0002ec7c jalr t9                                                   |     t9 ();
    0x0002ec80 lw ra, 0x24(sp)                                           |     ra = *(var_24h);
    0x0002ec84 addiu sp, sp, 0x28                                        |     
    0x0002ec88 jr ra                                                     |     return;
                                                                         | }
    ; assembly                                                               | /* r2dec pseudo code output */
                                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ec8c */
                                                                             | #include <stdint.h>
                                                                             |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_dsnoop ()        | void asound_utils_generate_pcm_audiosource_index_dsnoop () {
    0x0002ec8c lui gp, 3                                                     |     
    0x0002ec90 addiu gp, gp, 0x5454                                          |     
    0x0002ec94 addu gp, gp, t9                                               |     gp += t9;
    0x0002ec98 addiu sp, sp, -0x30                                           |     
    0x0002ec9c move v0, a3                                                   |     v0 = a3;
    0x0002eca0 move a3, a2                                                   |     a3 = a2;
    0x0002eca4 lw v1, 0x40(sp)                                               |     v1 = *(arg_40h);
    0x0002eca8 move a2, a1                                                   |     a2 = a1;
    0x0002ecac lw a1, -0x7fdc(gp)                                            |     a1 = *(gp);
    0x0002ecb0 lw t9, -0x7a80(gp)                                            |     t9 = sym.imp.g_string_append_printf
    0x0002ecb4 sw ra, 0x2c(sp)                                               |     *(var_2ch) = ra;
    0x0002ecb8 sw gp, 0x20(sp)                                               |     *(var_20h) = gp;
    0x0002ecbc sw v1, 0x18(sp)                                               |     *(var_18h) = v1;
    0x0002ecc0 sw v0, 0x14(sp)                                               |     *(var_14h) = v0;
    0x0002ecc4 sw v0, 0x10(sp)                                               |     *(var_10h) = v0;
                                                                             |     /* str.pcm.audiosource_dsnoop_u__n_ttype_dsnoop_n_tipc_key__u_n_tipc_key_add_uid_0_n_tipc_perm_0666_n_tslave__s_n_thint.show_on_n_thint.description_Slaved_to__s_n_s_n_n */
    0x0002ecc8 addiu a1, a1, 0x7cbc                                          |     a1 += 0x7cbc;
    0x0002eccc jalr t9                                                       |     t9 ();
    0x0002ecd0 lw ra, 0x2c(sp)                                               |     ra = *(var_2ch);
    0x0002ecd4 addiu sp, sp, 0x30                                            |     
    0x0002ecd8 jr ra                                                         |     return v0;
                                                                             | }
    ; assembly                                                           | /* r2dec pseudo code output */
                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ecdc */
                                                                         | #include <stdint.h>
                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_softvol ()         | void asound_utils_generate_pcm_audiosource_softvol () {
    0x0002ecdc lui gp, 3                                                 |     
    0x0002ece0 addiu gp, gp, 0x5404                                      |     
    0x0002ece4 addu gp, gp, t9                                           |     gp += t9;
    0x0002ece8 addiu sp, sp, -0x38                                       |     
    0x0002ecec lw t9, -0x7a80(gp)                                        |     t9 = sym.imp.g_string_append_printf
    0x0002ecf0 lw v0, 0x50(sp)                                           |     v0 = *(arg_50h);
    0x0002ecf4 lw v1, 0x4c(sp)                                           |     v1 = *(arg_4ch);
    0x0002ecf8 sw a2, 0x10(sp)                                           |     *(var_10h) = a2;
    0x0002ecfc sw a1, 0x24(sp)                                           |     *(var_24h) = a1;
    0x0002ed00 sw v0, 0x20(sp)                                           |     *(var_20h) = v0;
    0x0002ed04 move a2, a1                                               |     a2 = a1;
    0x0002ed08 lw v0, 0x48(sp)                                           |     v0 = *(arg_48h);
    0x0002ed0c lw a1, -0x7fdc(gp)                                        |     a1 = *(gp);
    0x0002ed10 sw ra, 0x34(sp)                                           |     *(var_34h) = ra;
    0x0002ed14 sw gp, 0x28(sp)                                           |     *(var_28h) = gp;
    0x0002ed18 sw a3, 0x14(sp)                                           |     *(var_14h) = a3;
    0x0002ed1c sw v0, 0x18(sp)                                           |     *(var_18h) = v0;
    0x0002ed20 sw v1, 0x1c(sp)                                           |     *(var_1ch) = v1;
                                                                         |     /* str.pcm.audiosource_softvol__n_ttype_softvol_n_tslave.pcm__s_n_tcontrol__n_t_tname_Soft_Gain_n_t_n_tmin_dB__.1f_n_tmax_dB__.1f_n_tresolution__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ed24 addiu a1, a1, 0x7d54                                      |     a1 += 0x7d54;
    0x0002ed28 jalr t9                                                   |     t9 ();
    0x0002ed2c lw ra, 0x34(sp)                                           |     ra = *(var_34h);
    0x0002ed30 addiu sp, sp, 0x38                                        |     
    0x0002ed34 jr ra                                                     |     return v1;
                                                                         | }
    ; assembly                                                                   | /* r2dec pseudo code output */
                                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ed38 */
                                                                                 | #include <stdint.h>
                                                                                 |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_softvol ()           | void asound_utils_generate_pcm_audiosource_index_softvol () {
    0x0002ed38 lui gp, 3                                                         |     
    0x0002ed3c addiu gp, gp, 0x53a8                                              |     
    0x0002ed40 addu gp, gp, t9                                                   |     gp += t9;
    0x0002ed44 addiu sp, sp, -0x40                                               |     
    0x0002ed48 move a3, a2                                                       |     a3 = a2;
    0x0002ed4c lw v0, 0x60(sp)                                                   |     v0 = *(arg_60h);
    0x0002ed50 lw v1, 0x5c(sp)                                                   |     v1 = *(arg_5ch);
    0x0002ed54 sw v0, 0x28(sp)                                                   |     *(var_28h) = v0;
    0x0002ed58 lw v0, 0x58(sp)                                                   |     v0 = *(arg_58h);
    0x0002ed5c sw a2, 0x2c(sp)                                                   |     *(var_2ch) = a2;
    0x0002ed60 sw v0, 0x20(sp)                                                   |     *(var_20h) = v0;
    0x0002ed64 sw v1, 0x24(sp)                                                   |     *(var_24h) = v1;
    0x0002ed68 lw v0, 0x50(sp)                                                   |     v0 = *(arg_50h);
    0x0002ed6c lw v1, 0x54(sp)                                                   |     v1 = *(arg_54h);
    0x0002ed70 sw a1, 0x10(sp)                                                   |     *(var_10h) = a1;
    0x0002ed74 move a2, a1                                                       |     a2 = a1;
    0x0002ed78 lw a1, -0x7fdc(gp)                                                |     a1 = *(gp);
    0x0002ed7c lw t9, -0x7a80(gp)                                                |     t9 = sym.imp.g_string_append_printf
    0x0002ed80 sw ra, 0x3c(sp)                                                   |     *(var_3ch) = ra;
    0x0002ed84 sw gp, 0x30(sp)                                                   |     *(var_30h) = gp;
    0x0002ed88 sw v0, 0x18(sp)                                                   |     *(var_18h) = v0;
    0x0002ed8c sw v1, 0x1c(sp)                                                   |     *(var_1ch) = v1;
                                                                                 |     /* str.pcm.audiosource_softvol_u__n_ttype_softvol_n_tslave.pcm__s_n_tcontrol__n_t_tname_Soft_Gain_u_n_t_n_tmin_dB__.1f_n_tmax_dB__.1f_n_tresolution__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ed90 addiu a1, a1, 0x7e08                                              |     a1 += 0x7e08;
    0x0002ed94 jalr t9                                                           |     t9 ();
    0x0002ed98 lw ra, 0x3c(sp)                                                   |     ra = *(var_3ch);
    0x0002ed9c addiu sp, sp, 0x40                                                |     
    0x0002eda0 jr ra                                                             |     return v1;
                                                                                 | }
    ; assembly                                                                   | /* r2dec pseudo code output */
                                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2eda4 */
                                                                                 | #include <stdint.h>
                                                                                 |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_softvol_convert ()         | void asound_utils_generate_pcm_audiosource_softvol_convert () {
    0x0002eda4 lui gp, 3                                                         |     
    0x0002eda8 addiu gp, gp, 0x533c                                              |     
    0x0002edac addu gp, gp, t9                                                   |     gp += t9;
    0x0002edb0 addiu sp, sp, -0x40                                               |     
    0x0002edb4 lw t9, -0x7a80(gp)                                                |     t9 = sym.imp.g_string_append_printf
    0x0002edb8 lw v0, 0x5c(sp)                                                   |     v0 = *(arg_5ch);
    0x0002edbc lw v1, 0x54(sp)                                                   |     v1 = *(arg_54h);
    0x0002edc0 sw v0, 0x24(sp)                                                   |     *(var_24h) = v0;
    0x0002edc4 lw v0, 0x58(sp)                                                   |     v0 = *(arg_58h);
    0x0002edc8 sw a2, 0x10(sp)                                                   |     *(var_10h) = a2;
    0x0002edcc sw a1, 0x28(sp)                                                   |     *(var_28h) = a1;
    0x0002edd0 sw v0, 0x20(sp)                                                   |     *(var_20h) = v0;
    0x0002edd4 move a2, a1                                                       |     a2 = a1;
    0x0002edd8 lw v0, 0x50(sp)                                                   |     v0 = *(arg_50h);
    0x0002eddc lw a1, -0x7fdc(gp)                                                |     a1 = *(gp);
    0x0002ede0 sw ra, 0x3c(sp)                                                   |     *(var_3ch) = ra;
    0x0002ede4 sw gp, 0x30(sp)                                                   |     *(var_30h) = gp;
    0x0002ede8 sw a3, 0x14(sp)                                                   |     *(var_14h) = a3;
    0x0002edec sw v0, 0x18(sp)                                                   |     *(var_18h) = v0;
    0x0002edf0 sw v1, 0x1c(sp)                                                   |     *(var_1ch) = v1;
                                                                                 |     /* str.pcm.audiosource__n_ttype_plug_n_tslave.pcm__n_t_ttype_softvol_n_t_tslave.pcm__n_t_t_ttype_plug_n_t_t_tslave.pcm__s_n_t_t_n_t_tcontrol__n_t_t_tname_Soft_Gain_n_t_t_n_t_tmin_dB__.1f_n_t_tmax_dB__.1f_n_t_tresolution__u_n_t_n_tslave.format_S32_LE_n_tslave.rate__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002edf4 addiu a1, a1, 0x7ec0                                              |     a1 += 0x7ec0;
    0x0002edf8 jalr t9                                                           |     t9 ();
    0x0002edfc lw ra, 0x3c(sp)                                                   |     ra = *(var_3ch);
    0x0002ee00 addiu sp, sp, 0x40                                                |     
    0x0002ee04 jr ra                                                             |     return v1;
                                                                                 | }
    ; assembly                                                                           | /* r2dec pseudo code output */
                                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ee08 */
                                                                                         | #include <stdint.h>
                                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_softvol_convert ()           | void asound_utils_generate_pcm_audiosource_index_softvol_convert () {
    0x0002ee08 lui gp, 3                                                                 |     
    0x0002ee0c addiu gp, gp, 0x52d8                                                      |     
    0x0002ee10 addu gp, gp, t9                                                           |     gp += t9;
    0x0002ee14 addiu sp, sp, -0x48                                                       |     
    0x0002ee18 move a3, a2                                                               |     a3 = a2;
    0x0002ee1c lw v0, 0x6c(sp)                                                           |     v0 = *(arg_6ch);
    0x0002ee20 lw v1, 0x64(sp)                                                           |     v1 = *(arg_64h);
    0x0002ee24 sw v0, 0x2c(sp)                                                           |     *(var_2ch) = v0;
    0x0002ee28 lw v0, 0x68(sp)                                                           |     v0 = *(arg_68h);
    0x0002ee2c sw a2, 0x30(sp)                                                           |     *(var_30h) = a2;
    0x0002ee30 sw v0, 0x28(sp)                                                           |     *(var_28h) = v0;
    0x0002ee34 lw v0, 0x60(sp)                                                           |     v0 = *(arg_60h);
    0x0002ee38 sw v1, 0x24(sp)                                                           |     *(var_24h) = v1;
    0x0002ee3c sw v0, 0x20(sp)                                                           |     *(var_20h) = v0;
    0x0002ee40 lw v1, 0x5c(sp)                                                           |     v1 = *(arg_5ch);
    0x0002ee44 lw v0, 0x58(sp)                                                           |     v0 = *(arg_58h);
    0x0002ee48 sw a1, 0x10(sp)                                                           |     *(var_10h) = a1;
    0x0002ee4c move a2, a1                                                               |     a2 = a1;
    0x0002ee50 lw a1, -0x7fdc(gp)                                                        |     a1 = *(gp);
    0x0002ee54 lw t9, -0x7a80(gp)                                                        |     t9 = sym.imp.g_string_append_printf
    0x0002ee58 sw ra, 0x44(sp)                                                           |     *(var_44h) = ra;
    0x0002ee5c sw gp, 0x38(sp)                                                           |     *(var_38h) = gp;
    0x0002ee60 sw v0, 0x18(sp)                                                           |     *(var_18h) = v0;
    0x0002ee64 sw v1, 0x1c(sp)                                                           |     *(var_1ch) = v1;
                                                                                         |     /* str.pcm.audiosource_u__n_ttype_plug_n_tslave.pcm__n_t_ttype_softvol_n_t_tslave.pcm__n_t_t_ttype_plug_n_t_t_tslave.pcm__s_n_t_t_n_t_tcontrol__n_t_t_tname_Soft_Gain_u_n_t_t_n_t_tmin_dB__.1f_n_t_tmax_dB__.1f_n_t_tresolution__u_n_t_n_tslave.format_S32_LE_n_tslave.rate__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ee68 addiu a1, a1, 0x7fd4                                                      |     a1 += 0x7fd4;
    0x0002ee6c jalr t9                                                                   |     t9 ();
    0x0002ee70 lw ra, 0x44(sp)                                                           |     ra = *(var_44h);
    0x0002ee74 addiu sp, sp, 0x48                                                        |     
    0x0002ee78 jr ra                                                                     |     return v1;
                                                                                         | }
    ; assembly                                                   | /* r2dec pseudo code output */
                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ee7c */
                                                                 | #include <stdint.h>
                                                                 |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource ()         | void asound_utils_generate_pcm_audiosource () {
    0x0002ee7c lui gp, 3                                         |     
    0x0002ee80 addiu gp, gp, 0x5264                              |     
    0x0002ee84 addu gp, gp, t9                                   |     gp += t9;
    0x0002ee88 addiu sp, sp, -0x28                               |     
    0x0002ee8c move a3, a2                                       |     a3 = a2;
    0x0002ee90 move a2, a1                                       |     a2 = a1;
    0x0002ee94 sw a1, 0x10(sp)                                   |     *(var_10h) = a1;
    0x0002ee98 lw a1, -0x7ea4(gp)                                |     a1 = *((gp - 8105));
    0x0002ee9c lw t9, -0x7a80(gp)                                |     t9 = sym.imp.g_string_append_printf
    0x0002eea0 sw ra, 0x24(sp)                                   |     *(var_24h) = ra;
    0x0002eea4 sw gp, 0x18(sp)                                   |     *(var_18h) = gp;
                                                                 |     /* str.pcm.audiosource__n_ttype_agc_alsa_plugin_n_tslave.pcm__s_n_tcontrol__n_t_tname_axis_agc_enabled__n_t_tindex__i_n_t_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002eea8 addiu a1, a1, -0x7f14                             |     a1 += -0x7f14;
    0x0002eeac jalr t9                                           |     t9 ();
    0x0002eeb0 lw ra, 0x24(sp)                                   |     ra = *(var_24h);
    0x0002eeb4 addiu sp, sp, 0x28                                |     
    0x0002eeb8 jr ra                                             |     return;
                                                                 | }
    ; assembly                                                           | /* r2dec pseudo code output */
                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2eebc */
                                                                         | #include <stdint.h>
                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index ()           | void asound_utils_generate_pcm_audiosource_index () {
    0x0002eebc lui gp, 3                                                 |     
    0x0002eec0 addiu gp, gp, 0x5224                                      |     
    0x0002eec4 addu gp, gp, t9                                           |     gp += t9;
    0x0002eec8 addiu sp, sp, -0x28                                       |     
    0x0002eecc move a3, a2                                               |     a3 = a2;
    0x0002eed0 sw a2, 0x14(sp)                                           |     *(var_14h) = a2;
    0x0002eed4 sw a1, 0x10(sp)                                           |     *(var_10h) = a1;
    0x0002eed8 move a2, a1                                               |     a2 = a1;
    0x0002eedc lw a1, -0x7ea4(gp)                                        |     a1 = *((gp - 8105));
    0x0002eee0 lw t9, -0x7a80(gp)                                        |     t9 = sym.imp.g_string_append_printf
    0x0002eee4 sw ra, 0x24(sp)                                           |     *(var_24h) = ra;
    0x0002eee8 sw gp, 0x18(sp)                                           |     *(var_18h) = gp;
                                                                         |     /* str.pcm.audiosource_u__n_ttype_agc_alsa_plugin_n_tslave.pcm__s_n_tcontrol__n_t_tname_axis_agc_enabled__n_t_tindex__i_n_t_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002eeec addiu a1, a1, -0x7e74                                     |     a1 += -0x7e74;
    0x0002eef0 jalr t9                                                   |     t9 ();
    0x0002eef4 lw ra, 0x24(sp)                                           |     ra = *(var_24h);
    0x0002eef8 addiu sp, sp, 0x28                                        |     
    0x0002eefc jr ra                                                     |     return;
                                                                         | }
    ; assembly                                                           | /* r2dec pseudo code output */
                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ec4c */
                                                                         | #include <stdint.h>
                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_dsnoop ()          | void asound_utils_generate_pcm_audiosource_dsnoop () {
    0x0002ec4c lui gp, 3                                                 |     
    0x0002ec50 addiu gp, gp, 0x5494                                      |     
    0x0002ec54 addu gp, gp, t9                                           |     gp += t9;
    0x0002ec58 addiu sp, sp, -0x28                                       |     
    0x0002ec5c move a3, a2                                               |     a3 = a2;
    0x0002ec60 move a2, a1                                               |     a2 = a1;
    0x0002ec64 lw a1, -0x7fdc(gp)                                        |     a1 = *(gp);
    0x0002ec68 lw t9, -0x7a80(gp)                                        |     t9 = sym.imp.g_string_append_printf
    0x0002ec6c sw ra, 0x24(sp)                                           |     *(var_24h) = ra;
    0x0002ec70 sw gp, 0x18(sp)                                           |     *(var_18h) = gp;
    0x0002ec74 sw a3, 0x10(sp)                                           |     *(var_10h) = a3;
                                                                         |     /* str.pcm.audiosource_dsnoop__n_ttype_dsnoop_n_tipc_key__u_n_tipc_key_add_uid_0_n_tipc_perm_0666_n_tslave__s_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ec78 addiu a1, a1, 0x7c28                                      |     a1 += 0x7c28;
    0x0002ec7c jalr t9                                                   |     t9 ();
    0x0002ec80 lw ra, 0x24(sp)                                           |     ra = *(var_24h);
    0x0002ec84 addiu sp, sp, 0x28                                        |     
    0x0002ec88 jr ra                                                     |     return;
                                                                         | }
    ; assembly                                                               | /* r2dec pseudo code output */
                                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ec04 */
                                                                             | #include <stdint.h>
                                                                             |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_raw ()           | void asound_utils_generate_pcm_audiosource_index_raw () {
    0x0002ec04 lui gp, 3                                                     |     
    0x0002ec08 addiu gp, gp, 0x54dc                                          |     
    0x0002ec0c addu gp, gp, t9                                               |     gp += t9;
    0x0002ec10 addiu sp, sp, -0x28                                           |     
    0x0002ec14 lw t9, -0x7a80(gp)                                            |     t9 = sym.imp.g_string_append_printf
    0x0002ec18 lw v0, 0x38(sp)                                               |     v0 = *(arg_38h);
    0x0002ec1c sw a3, 0x10(sp)                                               |     *(var_10h) = a3;
    0x0002ec20 move a3, a2                                                   |     a3 = a2;
    0x0002ec24 move a2, a1                                                   |     a2 = a1;
    0x0002ec28 lw a1, -0x7fdc(gp)                                            |     a1 = *(gp);
    0x0002ec2c sw ra, 0x24(sp)                                               |     *(var_24h) = ra;
    0x0002ec30 sw gp, 0x18(sp)                                               |     *(var_18h) = gp;
    0x0002ec34 sw v0, 0x14(sp)                                               |     *(var_14h) = v0;
                                                                             |     /* str.pcm.audiosource_u_raw__n_ttype_dsnoop_n_tipc_key__u_n_tipc_key_add_uid_0_n_tipc_perm_0666_n_tslave__s_n_s_n_n */
    0x0002ec38 addiu a1, a1, 0x7bc4                                          |     a1 += 0x7bc4;
    0x0002ec3c jalr t9                                                       |     t9 ();
    0x0002ec40 lw ra, 0x24(sp)                                               |     ra = *(var_24h);
    0x0002ec44 addiu sp, sp, 0x28                                            |     
    0x0002ec48 jr ra                                                         |     return v0;
                                                                             | }
    ; assembly                                                               | /* r2dec pseudo code output */
                                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ec8c */
                                                                             | #include <stdint.h>
                                                                             |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_dsnoop ()        | void asound_utils_generate_pcm_audiosource_index_dsnoop () {
    0x0002ec8c lui gp, 3                                                     |     
    0x0002ec90 addiu gp, gp, 0x5454                                          |     
    0x0002ec94 addu gp, gp, t9                                               |     gp += t9;
    0x0002ec98 addiu sp, sp, -0x30                                           |     
    0x0002ec9c move v0, a3                                                   |     v0 = a3;
    0x0002eca0 move a3, a2                                                   |     a3 = a2;
    0x0002eca4 lw v1, 0x40(sp)                                               |     v1 = *(arg_40h);
    0x0002eca8 move a2, a1                                                   |     a2 = a1;
    0x0002ecac lw a1, -0x7fdc(gp)                                            |     a1 = *(gp);
    0x0002ecb0 lw t9, -0x7a80(gp)                                            |     t9 = sym.imp.g_string_append_printf
    0x0002ecb4 sw ra, 0x2c(sp)                                               |     *(var_2ch) = ra;
    0x0002ecb8 sw gp, 0x20(sp)                                               |     *(var_20h) = gp;
    0x0002ecbc sw v1, 0x18(sp)                                               |     *(var_18h) = v1;
    0x0002ecc0 sw v0, 0x14(sp)                                               |     *(var_14h) = v0;
    0x0002ecc4 sw v0, 0x10(sp)                                               |     *(var_10h) = v0;
                                                                             |     /* str.pcm.audiosource_dsnoop_u__n_ttype_dsnoop_n_tipc_key__u_n_tipc_key_add_uid_0_n_tipc_perm_0666_n_tslave__s_n_thint.show_on_n_thint.description_Slaved_to__s_n_s_n_n */
    0x0002ecc8 addiu a1, a1, 0x7cbc                                          |     a1 += 0x7cbc;
    0x0002eccc jalr t9                                                       |     t9 ();
    0x0002ecd0 lw ra, 0x2c(sp)                                               |     ra = *(var_2ch);
    0x0002ecd4 addiu sp, sp, 0x30                                            |     
    0x0002ecd8 jr ra                                                         |     return v0;
                                                                             | }
    ; assembly                                                                   | /* r2dec pseudo code output */
                                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ed38 */
                                                                                 | #include <stdint.h>
                                                                                 |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_softvol ()           | void asound_utils_generate_pcm_audiosource_index_softvol () {
    0x0002ed38 lui gp, 3                                                         |     
    0x0002ed3c addiu gp, gp, 0x53a8                                              |     
    0x0002ed40 addu gp, gp, t9                                                   |     gp += t9;
    0x0002ed44 addiu sp, sp, -0x40                                               |     
    0x0002ed48 move a3, a2                                                       |     a3 = a2;
    0x0002ed4c lw v0, 0x60(sp)                                                   |     v0 = *(arg_60h);
    0x0002ed50 lw v1, 0x5c(sp)                                                   |     v1 = *(arg_5ch);
    0x0002ed54 sw v0, 0x28(sp)                                                   |     *(var_28h) = v0;
    0x0002ed58 lw v0, 0x58(sp)                                                   |     v0 = *(arg_58h);
    0x0002ed5c sw a2, 0x2c(sp)                                                   |     *(var_2ch) = a2;
    0x0002ed60 sw v0, 0x20(sp)                                                   |     *(var_20h) = v0;
    0x0002ed64 sw v1, 0x24(sp)                                                   |     *(var_24h) = v1;
    0x0002ed68 lw v0, 0x50(sp)                                                   |     v0 = *(arg_50h);
    0x0002ed6c lw v1, 0x54(sp)                                                   |     v1 = *(arg_54h);
    0x0002ed70 sw a1, 0x10(sp)                                                   |     *(var_10h) = a1;
    0x0002ed74 move a2, a1                                                       |     a2 = a1;
    0x0002ed78 lw a1, -0x7fdc(gp)                                                |     a1 = *(gp);
    0x0002ed7c lw t9, -0x7a80(gp)                                                |     t9 = sym.imp.g_string_append_printf
    0x0002ed80 sw ra, 0x3c(sp)                                                   |     *(var_3ch) = ra;
    0x0002ed84 sw gp, 0x30(sp)                                                   |     *(var_30h) = gp;
    0x0002ed88 sw v0, 0x18(sp)                                                   |     *(var_18h) = v0;
    0x0002ed8c sw v1, 0x1c(sp)                                                   |     *(var_1ch) = v1;
                                                                                 |     /* str.pcm.audiosource_softvol_u__n_ttype_softvol_n_tslave.pcm__s_n_tcontrol__n_t_tname_Soft_Gain_u_n_t_n_tmin_dB__.1f_n_tmax_dB__.1f_n_tresolution__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ed90 addiu a1, a1, 0x7e08                                              |     a1 += 0x7e08;
    0x0002ed94 jalr t9                                                           |     t9 ();
    0x0002ed98 lw ra, 0x3c(sp)                                                   |     ra = *(var_3ch);
    0x0002ed9c addiu sp, sp, 0x40                                                |     
    0x0002eda0 jr ra                                                             |     return v1;
                                                                                 | }
    ; assembly                                                                           | /* r2dec pseudo code output */
                                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ee08 */
                                                                                         | #include <stdint.h>
                                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_softvol_convert ()           | void asound_utils_generate_pcm_audiosource_index_softvol_convert () {
    0x0002ee08 lui gp, 3                                                                 |     
    0x0002ee0c addiu gp, gp, 0x52d8                                                      |     
    0x0002ee10 addu gp, gp, t9                                                           |     gp += t9;
    0x0002ee14 addiu sp, sp, -0x48                                                       |     
    0x0002ee18 move a3, a2                                                               |     a3 = a2;
    0x0002ee1c lw v0, 0x6c(sp)                                                           |     v0 = *(arg_6ch);
    0x0002ee20 lw v1, 0x64(sp)                                                           |     v1 = *(arg_64h);
    0x0002ee24 sw v0, 0x2c(sp)                                                           |     *(var_2ch) = v0;
    0x0002ee28 lw v0, 0x68(sp)                                                           |     v0 = *(arg_68h);
    0x0002ee2c sw a2, 0x30(sp)                                                           |     *(var_30h) = a2;
    0x0002ee30 sw v0, 0x28(sp)                                                           |     *(var_28h) = v0;
    0x0002ee34 lw v0, 0x60(sp)                                                           |     v0 = *(arg_60h);
    0x0002ee38 sw v1, 0x24(sp)                                                           |     *(var_24h) = v1;
    0x0002ee3c sw v0, 0x20(sp)                                                           |     *(var_20h) = v0;
    0x0002ee40 lw v1, 0x5c(sp)                                                           |     v1 = *(arg_5ch);
    0x0002ee44 lw v0, 0x58(sp)                                                           |     v0 = *(arg_58h);
    0x0002ee48 sw a1, 0x10(sp)                                                           |     *(var_10h) = a1;
    0x0002ee4c move a2, a1                                                               |     a2 = a1;
    0x0002ee50 lw a1, -0x7fdc(gp)                                                        |     a1 = *(gp);
    0x0002ee54 lw t9, -0x7a80(gp)                                                        |     t9 = sym.imp.g_string_append_printf
    0x0002ee58 sw ra, 0x44(sp)                                                           |     *(var_44h) = ra;
    0x0002ee5c sw gp, 0x38(sp)                                                           |     *(var_38h) = gp;
    0x0002ee60 sw v0, 0x18(sp)                                                           |     *(var_18h) = v0;
    0x0002ee64 sw v1, 0x1c(sp)                                                           |     *(var_1ch) = v1;
                                                                                         |     /* str.pcm.audiosource_u__n_ttype_plug_n_tslave.pcm__n_t_ttype_softvol_n_t_tslave.pcm__n_t_t_ttype_plug_n_t_t_tslave.pcm__s_n_t_t_n_t_tcontrol__n_t_t_tname_Soft_Gain_u_n_t_t_n_t_tmin_dB__.1f_n_t_tmax_dB__.1f_n_t_tresolution__u_n_t_n_tslave.format_S32_LE_n_tslave.rate__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ee68 addiu a1, a1, 0x7fd4                                                      |     a1 += 0x7fd4;
    0x0002ee6c jalr t9                                                                   |     t9 ();
    0x0002ee70 lw ra, 0x44(sp)                                                           |     ra = *(var_44h);
    0x0002ee74 addiu sp, sp, 0x48                                                        |     
    0x0002ee78 jr ra                                                                     |     return v1;
                                                                                         | }
    ; assembly                                                           | /* r2dec pseudo code output */
                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2eebc */
                                                                         | #include <stdint.h>
                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index ()           | void asound_utils_generate_pcm_audiosource_index () {
    0x0002eebc lui gp, 3                                                 |     
    0x0002eec0 addiu gp, gp, 0x5224                                      |     
    0x0002eec4 addu gp, gp, t9                                           |     gp += t9;
    0x0002eec8 addiu sp, sp, -0x28                                       |     
    0x0002eecc move a3, a2                                               |     a3 = a2;
    0x0002eed0 sw a2, 0x14(sp)                                           |     *(var_14h) = a2;
    0x0002eed4 sw a1, 0x10(sp)                                           |     *(var_10h) = a1;
    0x0002eed8 move a2, a1                                               |     a2 = a1;
    0x0002eedc lw a1, -0x7ea4(gp)                                        |     a1 = *((gp - 8105));
    0x0002eee0 lw t9, -0x7a80(gp)                                        |     t9 = sym.imp.g_string_append_printf
    0x0002eee4 sw ra, 0x24(sp)                                           |     *(var_24h) = ra;
    0x0002eee8 sw gp, 0x18(sp)                                           |     *(var_18h) = gp;
                                                                         |     /* str.pcm.audiosource_u__n_ttype_agc_alsa_plugin_n_tslave.pcm__s_n_tcontrol__n_t_tname_axis_agc_enabled__n_t_tindex__i_n_t_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002eeec addiu a1, a1, -0x7e74                                     |     a1 += -0x7e74;
    0x0002eef0 jalr t9                                                   |     t9 ();
    0x0002eef4 lw ra, 0x24(sp)                                           |     ra = *(var_24h);
    0x0002eef8 addiu sp, sp, 0x28                                        |     
    0x0002eefc jr ra                                                     |     return;
                                                                         | }
    ; assembly                                                               | /* r2dec pseudo code output */
                                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ec8c */
                                                                             | #include <stdint.h>
                                                                             |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_dsnoop ()        | void asound_utils_generate_pcm_audiosource_index_dsnoop () {
    0x0002ec8c lui gp, 3                                                     |     
    0x0002ec90 addiu gp, gp, 0x5454                                          |     
    0x0002ec94 addu gp, gp, t9                                               |     gp += t9;
    0x0002ec98 addiu sp, sp, -0x30                                           |     
    0x0002ec9c move v0, a3                                                   |     v0 = a3;
    0x0002eca0 move a3, a2                                                   |     a3 = a2;
    0x0002eca4 lw v1, 0x40(sp)                                               |     v1 = *(arg_40h);
    0x0002eca8 move a2, a1                                                   |     a2 = a1;
    0x0002ecac lw a1, -0x7fdc(gp)                                            |     a1 = *(gp);
    0x0002ecb0 lw t9, -0x7a80(gp)                                            |     t9 = sym.imp.g_string_append_printf
    0x0002ecb4 sw ra, 0x2c(sp)                                               |     *(var_2ch) = ra;
    0x0002ecb8 sw gp, 0x20(sp)                                               |     *(var_20h) = gp;
    0x0002ecbc sw v1, 0x18(sp)                                               |     *(var_18h) = v1;
    0x0002ecc0 sw v0, 0x14(sp)                                               |     *(var_14h) = v0;
    0x0002ecc4 sw v0, 0x10(sp)                                               |     *(var_10h) = v0;
                                                                             |     /* str.pcm.audiosource_dsnoop_u__n_ttype_dsnoop_n_tipc_key__u_n_tipc_key_add_uid_0_n_tipc_perm_0666_n_tslave__s_n_thint.show_on_n_thint.description_Slaved_to__s_n_s_n_n */
    0x0002ecc8 addiu a1, a1, 0x7cbc                                          |     a1 += 0x7cbc;
    0x0002eccc jalr t9                                                       |     t9 ();
    0x0002ecd0 lw ra, 0x2c(sp)                                               |     ra = *(var_2ch);
    0x0002ecd4 addiu sp, sp, 0x30                                            |     
    0x0002ecd8 jr ra                                                         |     return v0;
                                                                             | }
    ; assembly                                                               | /* r2dec pseudo code output */
                                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ec04 */
                                                                             | #include <stdint.h>
                                                                             |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_raw ()           | void asound_utils_generate_pcm_audiosource_index_raw () {
    0x0002ec04 lui gp, 3                                                     |     
    0x0002ec08 addiu gp, gp, 0x54dc                                          |     
    0x0002ec0c addu gp, gp, t9                                               |     gp += t9;
    0x0002ec10 addiu sp, sp, -0x28                                           |     
    0x0002ec14 lw t9, -0x7a80(gp)                                            |     t9 = sym.imp.g_string_append_printf
    0x0002ec18 lw v0, 0x38(sp)                                               |     v0 = *(arg_38h);
    0x0002ec1c sw a3, 0x10(sp)                                               |     *(var_10h) = a3;
    0x0002ec20 move a3, a2                                                   |     a3 = a2;
    0x0002ec24 move a2, a1                                                   |     a2 = a1;
    0x0002ec28 lw a1, -0x7fdc(gp)                                            |     a1 = *(gp);
    0x0002ec2c sw ra, 0x24(sp)                                               |     *(var_24h) = ra;
    0x0002ec30 sw gp, 0x18(sp)                                               |     *(var_18h) = gp;
    0x0002ec34 sw v0, 0x14(sp)                                               |     *(var_14h) = v0;
                                                                             |     /* str.pcm.audiosource_u_raw__n_ttype_dsnoop_n_tipc_key__u_n_tipc_key_add_uid_0_n_tipc_perm_0666_n_tslave__s_n_s_n_n */
    0x0002ec38 addiu a1, a1, 0x7bc4                                          |     a1 += 0x7bc4;
    0x0002ec3c jalr t9                                                       |     t9 ();
    0x0002ec40 lw ra, 0x24(sp)                                               |     ra = *(var_24h);
    0x0002ec44 addiu sp, sp, 0x28                                            |     
    0x0002ec48 jr ra                                                         |     return v0;
                                                                             | }
    ; assembly                                                                   | /* r2dec pseudo code output */
                                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ed38 */
                                                                                 | #include <stdint.h>
                                                                                 |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_softvol ()           | void asound_utils_generate_pcm_audiosource_index_softvol () {
    0x0002ed38 lui gp, 3                                                         |     
    0x0002ed3c addiu gp, gp, 0x53a8                                              |     
    0x0002ed40 addu gp, gp, t9                                                   |     gp += t9;
    0x0002ed44 addiu sp, sp, -0x40                                               |     
    0x0002ed48 move a3, a2                                                       |     a3 = a2;
    0x0002ed4c lw v0, 0x60(sp)                                                   |     v0 = *(arg_60h);
    0x0002ed50 lw v1, 0x5c(sp)                                                   |     v1 = *(arg_5ch);
    0x0002ed54 sw v0, 0x28(sp)                                                   |     *(var_28h) = v0;
    0x0002ed58 lw v0, 0x58(sp)                                                   |     v0 = *(arg_58h);
    0x0002ed5c sw a2, 0x2c(sp)                                                   |     *(var_2ch) = a2;
    0x0002ed60 sw v0, 0x20(sp)                                                   |     *(var_20h) = v0;
    0x0002ed64 sw v1, 0x24(sp)                                                   |     *(var_24h) = v1;
    0x0002ed68 lw v0, 0x50(sp)                                                   |     v0 = *(arg_50h);
    0x0002ed6c lw v1, 0x54(sp)                                                   |     v1 = *(arg_54h);
    0x0002ed70 sw a1, 0x10(sp)                                                   |     *(var_10h) = a1;
    0x0002ed74 move a2, a1                                                       |     a2 = a1;
    0x0002ed78 lw a1, -0x7fdc(gp)                                                |     a1 = *(gp);
    0x0002ed7c lw t9, -0x7a80(gp)                                                |     t9 = sym.imp.g_string_append_printf
    0x0002ed80 sw ra, 0x3c(sp)                                                   |     *(var_3ch) = ra;
    0x0002ed84 sw gp, 0x30(sp)                                                   |     *(var_30h) = gp;
    0x0002ed88 sw v0, 0x18(sp)                                                   |     *(var_18h) = v0;
    0x0002ed8c sw v1, 0x1c(sp)                                                   |     *(var_1ch) = v1;
                                                                                 |     /* str.pcm.audiosource_softvol_u__n_ttype_softvol_n_tslave.pcm__s_n_tcontrol__n_t_tname_Soft_Gain_u_n_t_n_tmin_dB__.1f_n_tmax_dB__.1f_n_tresolution__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ed90 addiu a1, a1, 0x7e08                                              |     a1 += 0x7e08;
    0x0002ed94 jalr t9                                                           |     t9 ();
    0x0002ed98 lw ra, 0x3c(sp)                                                   |     ra = *(var_3ch);
    0x0002ed9c addiu sp, sp, 0x40                                                |     
    0x0002eda0 jr ra                                                             |     return v1;
                                                                                 | }
    ; assembly                                                                           | /* r2dec pseudo code output */
                                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ee08 */
                                                                                         | #include <stdint.h>
                                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_softvol_convert ()           | void asound_utils_generate_pcm_audiosource_index_softvol_convert () {
    0x0002ee08 lui gp, 3                                                                 |     
    0x0002ee0c addiu gp, gp, 0x52d8                                                      |     
    0x0002ee10 addu gp, gp, t9                                                           |     gp += t9;
    0x0002ee14 addiu sp, sp, -0x48                                                       |     
    0x0002ee18 move a3, a2                                                               |     a3 = a2;
    0x0002ee1c lw v0, 0x6c(sp)                                                           |     v0 = *(arg_6ch);
    0x0002ee20 lw v1, 0x64(sp)                                                           |     v1 = *(arg_64h);
    0x0002ee24 sw v0, 0x2c(sp)                                                           |     *(var_2ch) = v0;
    0x0002ee28 lw v0, 0x68(sp)                                                           |     v0 = *(arg_68h);
    0x0002ee2c sw a2, 0x30(sp)                                                           |     *(var_30h) = a2;
    0x0002ee30 sw v0, 0x28(sp)                                                           |     *(var_28h) = v0;
    0x0002ee34 lw v0, 0x60(sp)                                                           |     v0 = *(arg_60h);
    0x0002ee38 sw v1, 0x24(sp)                                                           |     *(var_24h) = v1;
    0x0002ee3c sw v0, 0x20(sp)                                                           |     *(var_20h) = v0;
    0x0002ee40 lw v1, 0x5c(sp)                                                           |     v1 = *(arg_5ch);
    0x0002ee44 lw v0, 0x58(sp)                                                           |     v0 = *(arg_58h);
    0x0002ee48 sw a1, 0x10(sp)                                                           |     *(var_10h) = a1;
    0x0002ee4c move a2, a1                                                               |     a2 = a1;
    0x0002ee50 lw a1, -0x7fdc(gp)                                                        |     a1 = *(gp);
    0x0002ee54 lw t9, -0x7a80(gp)                                                        |     t9 = sym.imp.g_string_append_printf
    0x0002ee58 sw ra, 0x44(sp)                                                           |     *(var_44h) = ra;
    0x0002ee5c sw gp, 0x38(sp)                                                           |     *(var_38h) = gp;
    0x0002ee60 sw v0, 0x18(sp)                                                           |     *(var_18h) = v0;
    0x0002ee64 sw v1, 0x1c(sp)                                                           |     *(var_1ch) = v1;
                                                                                         |     /* str.pcm.audiosource_u__n_ttype_plug_n_tslave.pcm__n_t_ttype_softvol_n_t_tslave.pcm__n_t_t_ttype_plug_n_t_t_tslave.pcm__s_n_t_t_n_t_tcontrol__n_t_t_tname_Soft_Gain_u_n_t_t_n_t_tmin_dB__.1f_n_t_tmax_dB__.1f_n_t_tresolution__u_n_t_n_tslave.format_S32_LE_n_tslave.rate__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ee68 addiu a1, a1, 0x7fd4                                                      |     a1 += 0x7fd4;
    0x0002ee6c jalr t9                                                                   |     t9 ();
    0x0002ee70 lw ra, 0x44(sp)                                                           |     ra = *(var_44h);
    0x0002ee74 addiu sp, sp, 0x48                                                        |     
    0x0002ee78 jr ra                                                                     |     return v1;
                                                                                         | }
    ; assembly                                                                           | /* r2dec pseudo code output */
                                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ee08 */
                                                                                         | #include <stdint.h>
                                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_index_softvol_convert ()           | void asound_utils_generate_pcm_audiosource_index_softvol_convert () {
    0x0002ee08 lui gp, 3                                                                 |     
    0x0002ee0c addiu gp, gp, 0x52d8                                                      |     
    0x0002ee10 addu gp, gp, t9                                                           |     gp += t9;
    0x0002ee14 addiu sp, sp, -0x48                                                       |     
    0x0002ee18 move a3, a2                                                               |     a3 = a2;
    0x0002ee1c lw v0, 0x6c(sp)                                                           |     v0 = *(arg_6ch);
    0x0002ee20 lw v1, 0x64(sp)                                                           |     v1 = *(arg_64h);
    0x0002ee24 sw v0, 0x2c(sp)                                                           |     *(var_2ch) = v0;
    0x0002ee28 lw v0, 0x68(sp)                                                           |     v0 = *(arg_68h);
    0x0002ee2c sw a2, 0x30(sp)                                                           |     *(var_30h) = a2;
    0x0002ee30 sw v0, 0x28(sp)                                                           |     *(var_28h) = v0;
    0x0002ee34 lw v0, 0x60(sp)                                                           |     v0 = *(arg_60h);
    0x0002ee38 sw v1, 0x24(sp)                                                           |     *(var_24h) = v1;
    0x0002ee3c sw v0, 0x20(sp)                                                           |     *(var_20h) = v0;
    0x0002ee40 lw v1, 0x5c(sp)                                                           |     v1 = *(arg_5ch);
    0x0002ee44 lw v0, 0x58(sp)                                                           |     v0 = *(arg_58h);
    0x0002ee48 sw a1, 0x10(sp)                                                           |     *(var_10h) = a1;
    0x0002ee4c move a2, a1                                                               |     a2 = a1;
    0x0002ee50 lw a1, -0x7fdc(gp)                                                        |     a1 = *(gp);
    0x0002ee54 lw t9, -0x7a80(gp)                                                        |     t9 = sym.imp.g_string_append_printf
    0x0002ee58 sw ra, 0x44(sp)                                                           |     *(var_44h) = ra;
    0x0002ee5c sw gp, 0x38(sp)                                                           |     *(var_38h) = gp;
    0x0002ee60 sw v0, 0x18(sp)                                                           |     *(var_18h) = v0;
    0x0002ee64 sw v1, 0x1c(sp)                                                           |     *(var_1ch) = v1;
                                                                                         |     /* str.pcm.audiosource_u__n_ttype_plug_n_tslave.pcm__n_t_ttype_softvol_n_t_tslave.pcm__n_t_t_ttype_plug_n_t_t_tslave.pcm__s_n_t_t_n_t_tcontrol__n_t_t_tname_Soft_Gain_u_n_t_t_n_t_tmin_dB__.1f_n_t_tmax_dB__.1f_n_t_tresolution__u_n_t_n_tslave.format_S32_LE_n_tslave.rate__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ee68 addiu a1, a1, 0x7fd4                                                      |     a1 += 0x7fd4;
    0x0002ee6c jalr t9                                                                   |     t9 ();
    0x0002ee70 lw ra, 0x44(sp)                                                           |     ra = *(var_44h);
    0x0002ee74 addiu sp, sp, 0x48                                                        |     
    0x0002ee78 jr ra                                                                     |     return v1;
                                                                                         | }
    ; assembly                                                           | /* r2dec pseudo code output */
                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2ecdc */
                                                                         | #include <stdint.h>
                                                                         |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_softvol ()         | void asound_utils_generate_pcm_audiosource_softvol () {
    0x0002ecdc lui gp, 3                                                 |     
    0x0002ece0 addiu gp, gp, 0x5404                                      |     
    0x0002ece4 addu gp, gp, t9                                           |     gp += t9;
    0x0002ece8 addiu sp, sp, -0x38                                       |     
    0x0002ecec lw t9, -0x7a80(gp)                                        |     t9 = sym.imp.g_string_append_printf
    0x0002ecf0 lw v0, 0x50(sp)                                           |     v0 = *(arg_50h);
    0x0002ecf4 lw v1, 0x4c(sp)                                           |     v1 = *(arg_4ch);
    0x0002ecf8 sw a2, 0x10(sp)                                           |     *(var_10h) = a2;
    0x0002ecfc sw a1, 0x24(sp)                                           |     *(var_24h) = a1;
    0x0002ed00 sw v0, 0x20(sp)                                           |     *(var_20h) = v0;
    0x0002ed04 move a2, a1                                               |     a2 = a1;
    0x0002ed08 lw v0, 0x48(sp)                                           |     v0 = *(arg_48h);
    0x0002ed0c lw a1, -0x7fdc(gp)                                        |     a1 = *(gp);
    0x0002ed10 sw ra, 0x34(sp)                                           |     *(var_34h) = ra;
    0x0002ed14 sw gp, 0x28(sp)                                           |     *(var_28h) = gp;
    0x0002ed18 sw a3, 0x14(sp)                                           |     *(var_14h) = a3;
    0x0002ed1c sw v0, 0x18(sp)                                           |     *(var_18h) = v0;
    0x0002ed20 sw v1, 0x1c(sp)                                           |     *(var_1ch) = v1;
                                                                         |     /* str.pcm.audiosource_softvol__n_ttype_softvol_n_tslave.pcm__s_n_tcontrol__n_t_tname_Soft_Gain_n_t_n_tmin_dB__.1f_n_tmax_dB__.1f_n_tresolution__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002ed24 addiu a1, a1, 0x7d54                                      |     a1 += 0x7d54;
    0x0002ed28 jalr t9                                                   |     t9 ();
    0x0002ed2c lw ra, 0x34(sp)                                           |     ra = *(var_34h);
    0x0002ed30 addiu sp, sp, 0x38                                        |     
    0x0002ed34 jr ra                                                     |     return v1;
                                                                         | }
    ; assembly                                                                   | /* r2dec pseudo code output */
                                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2eda4 */
                                                                                 | #include <stdint.h>
                                                                                 |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_softvol_convert ()         | void asound_utils_generate_pcm_audiosource_softvol_convert () {
    0x0002eda4 lui gp, 3                                                         |     
    0x0002eda8 addiu gp, gp, 0x533c                                              |     
    0x0002edac addu gp, gp, t9                                                   |     gp += t9;
    0x0002edb0 addiu sp, sp, -0x40                                               |     
    0x0002edb4 lw t9, -0x7a80(gp)                                                |     t9 = sym.imp.g_string_append_printf
    0x0002edb8 lw v0, 0x5c(sp)                                                   |     v0 = *(arg_5ch);
    0x0002edbc lw v1, 0x54(sp)                                                   |     v1 = *(arg_54h);
    0x0002edc0 sw v0, 0x24(sp)                                                   |     *(var_24h) = v0;
    0x0002edc4 lw v0, 0x58(sp)                                                   |     v0 = *(arg_58h);
    0x0002edc8 sw a2, 0x10(sp)                                                   |     *(var_10h) = a2;
    0x0002edcc sw a1, 0x28(sp)                                                   |     *(var_28h) = a1;
    0x0002edd0 sw v0, 0x20(sp)                                                   |     *(var_20h) = v0;
    0x0002edd4 move a2, a1                                                       |     a2 = a1;
    0x0002edd8 lw v0, 0x50(sp)                                                   |     v0 = *(arg_50h);
    0x0002eddc lw a1, -0x7fdc(gp)                                                |     a1 = *(gp);
    0x0002ede0 sw ra, 0x3c(sp)                                                   |     *(var_3ch) = ra;
    0x0002ede4 sw gp, 0x30(sp)                                                   |     *(var_30h) = gp;
    0x0002ede8 sw a3, 0x14(sp)                                                   |     *(var_14h) = a3;
    0x0002edec sw v0, 0x18(sp)                                                   |     *(var_18h) = v0;
    0x0002edf0 sw v1, 0x1c(sp)                                                   |     *(var_1ch) = v1;
                                                                                 |     /* str.pcm.audiosource__n_ttype_plug_n_tslave.pcm__n_t_ttype_softvol_n_t_tslave.pcm__n_t_t_ttype_plug_n_t_t_tslave.pcm__s_n_t_t_n_t_tcontrol__n_t_t_tname_Soft_Gain_n_t_t_n_t_tmin_dB__.1f_n_t_tmax_dB__.1f_n_t_tresolution__u_n_t_n_tslave.format_S32_LE_n_tslave.rate__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002edf4 addiu a1, a1, 0x7ec0                                              |     a1 += 0x7ec0;
    0x0002edf8 jalr t9                                                           |     t9 ();
    0x0002edfc lw ra, 0x3c(sp)                                                   |     ra = *(var_3ch);
    0x0002ee00 addiu sp, sp, 0x40                                                |     
    0x0002ee04 jr ra                                                             |     return v1;
                                                                                 | }
    ; assembly                                                                   | /* r2dec pseudo code output */
                                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2eda4 */
                                                                                 | #include <stdint.h>
                                                                                 |  
    ; (fcn) sym.asound_utils_generate_pcm_audiosource_softvol_convert ()         | void asound_utils_generate_pcm_audiosource_softvol_convert () {
    0x0002eda4 lui gp, 3                                                         |     
    0x0002eda8 addiu gp, gp, 0x533c                                              |     
    0x0002edac addu gp, gp, t9                                                   |     gp += t9;
    0x0002edb0 addiu sp, sp, -0x40                                               |     
    0x0002edb4 lw t9, -0x7a80(gp)                                                |     t9 = sym.imp.g_string_append_printf
    0x0002edb8 lw v0, 0x5c(sp)                                                   |     v0 = *(arg_5ch);
    0x0002edbc lw v1, 0x54(sp)                                                   |     v1 = *(arg_54h);
    0x0002edc0 sw v0, 0x24(sp)                                                   |     *(var_24h) = v0;
    0x0002edc4 lw v0, 0x58(sp)                                                   |     v0 = *(arg_58h);
    0x0002edc8 sw a2, 0x10(sp)                                                   |     *(var_10h) = a2;
    0x0002edcc sw a1, 0x28(sp)                                                   |     *(var_28h) = a1;
    0x0002edd0 sw v0, 0x20(sp)                                                   |     *(var_20h) = v0;
    0x0002edd4 move a2, a1                                                       |     a2 = a1;
    0x0002edd8 lw v0, 0x50(sp)                                                   |     v0 = *(arg_50h);
    0x0002eddc lw a1, -0x7fdc(gp)                                                |     a1 = *(gp);
    0x0002ede0 sw ra, 0x3c(sp)                                                   |     *(var_3ch) = ra;
    0x0002ede4 sw gp, 0x30(sp)                                                   |     *(var_30h) = gp;
    0x0002ede8 sw a3, 0x14(sp)                                                   |     *(var_14h) = a3;
    0x0002edec sw v0, 0x18(sp)                                                   |     *(var_18h) = v0;
    0x0002edf0 sw v1, 0x1c(sp)                                                   |     *(var_1ch) = v1;
                                                                                 |     /* str.pcm.audiosource__n_ttype_plug_n_tslave.pcm__n_t_ttype_softvol_n_t_tslave.pcm__n_t_t_ttype_plug_n_t_t_tslave.pcm__s_n_t_t_n_t_tcontrol__n_t_t_tname_Soft_Gain_n_t_t_n_t_tmin_dB__.1f_n_t_tmax_dB__.1f_n_t_tresolution__u_n_t_n_tslave.format_S32_LE_n_tslave.rate__u_n_thint.show_on_n_thint.description_Slaved_to__s_n_n_n */
    0x0002edf4 addiu a1, a1, 0x7ec0                                              |     a1 += 0x7ec0;
    0x0002edf8 jalr t9                                                           |     t9 ();
    0x0002edfc lw ra, 0x3c(sp)                                                   |     ra = *(var_3ch);
    0x0002ee00 addiu sp, sp, 0x40                                                |     
    0x0002ee04 jr ra                                                             |     return v1;
                                                                                 | }
    ; assembly                                               | /* r2dec pseudo code output */
                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2eb80 */
                                                             | #include <stdint.h>
                                                             |  
    ; (fcn) sym.asound_utils_generate_pcm_slave_hw ()        | void asound_utils_generate_pcm_slave_hw () {
    0x0002eb80 lui gp, 3                                     |     
    0x0002eb84 addiu gp, gp, 0x5560                          |     
    0x0002eb88 addu gp, gp, t9                               |     gp += t9;
    0x0002eb8c addiu sp, sp, -0x38                           |     
    0x0002eb90 lw t9, -0x7a80(gp)                            |     t9 = sym.imp.g_string_append_printf
    0x0002eb94 lw v0, 0x54(sp)                               |     v0 = *(arg_54h);
    0x0002eb98 sw a3, 0x10(sp)                               |     *(var_10h) = a3;
    0x0002eb9c sw v0, 0x20(sp)                               |     *(var_20h) = v0;
    0x0002eba0 lw v0, 0x50(sp)                               |     v0 = *(arg_50h);
    0x0002eba4 move a3, a2                                   |     a3 = a2;
    0x0002eba8 sw v0, 0x1c(sp)                               |     *(var_1ch) = v0;
    0x0002ebac lw v0, 0x4c(sp)                               |     v0 = *(arg_4ch);
    0x0002ebb0 move a2, a1                                   |     a2 = a1;
    0x0002ebb4 sw v0, 0x18(sp)                               |     *(var_18h) = v0;
    0x0002ebb8 lw a1, -0x7fdc(gp)                            |     a1 = *(gp);
    0x0002ebbc lw v0, 0x48(sp)                               |     v0 = *(arg_48h);
    0x0002ebc0 sw ra, 0x34(sp)                               |     *(var_34h) = ra;
    0x0002ebc4 sw gp, 0x28(sp)                               |     *(var_28h) = gp;
    0x0002ebc8 sw v0, 0x14(sp)                               |     *(var_14h) = v0;
                                                             |     /* str.pcm_slave.hw_u__n_tpcm__hw:_u__u__n_tformat__s_n_tchannels__u_n_trate__u_n_tperiod_time__u_n_n_n */
    0x0002ebcc addiu a1, a1, 0x7b0c                          |     a1 += 0x7b0c;
    0x0002ebd0 jalr t9                                       |     t9 ();
    0x0002ebd4 lw ra, 0x34(sp)                               |     ra = *(var_34h);
    0x0002ebd8 addiu sp, sp, 0x38                            |     
    0x0002ebdc jr ra                                         |     return v0;
                                                             | }
    ; assembly                                                               | /* r2dec pseudo code output */
                                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2f1cc */
                                                                             | #include <stdint.h>
                                                                             |  
    ; (fcn) sym.asound_utils_generate_portcast_pcm_audiosink_index ()        | void asound_utils_generate_portcast_pcm_audiosink_index () {
    0x0002f1cc lui gp, 3                                                     |     
    0x0002f1d0 addiu gp, gp, 0x4f14                                          |     
    0x0002f1d4 addu gp, gp, t9                                               |     gp += t9;
    0x0002f1d8 addiu sp, sp, -0x30                                           |     
    0x0002f1dc lw t9, -0x7a80(gp)                                            |     t9 = sym.imp.g_string_append_printf
    0x0002f1e0 lw v0, 0x44(sp)                                               |     v0 = *(arg_44h);
    0x0002f1e4 sw s0, 0x20(sp)                                               |     *(var_20h) = s0;
    0x0002f1e8 sw v0, 0x14(sp)                                               |     *(var_14h) = v0;
    0x0002f1ec move s0, a1                                                   |     s0 = a1;
    0x0002f1f0 lw v0, 0x40(sp)                                               |     v0 = *(arg_40h);
    0x0002f1f4 lw a1, -0x7ea4(gp)                                            |     a1 = *((gp - 8105));
    0x0002f1f8 sw s2, 0x28(sp)                                               |     *(var_28h) = s2;
    0x0002f1fc sw s1, 0x24(sp)                                               |     *(var_24h) = s1;
    0x0002f200 sw ra, 0x2c(sp)                                               |     *(var_2ch) = ra;
    0x0002f204 sw gp, 0x18(sp)                                               |     *(var_18h) = gp;
    0x0002f208 move s2, a2                                                   |     s2 = a2;
                                                                             |     /* str.pcm._audiosinkslave_u__n_ttype_hw_n_tcard_Loopback_n_tdevice_0_n_tsubdevice_1_n_tformat__s_n_tchannels__u_n_trate__u_n_n_n */
    0x0002f20c addiu a1, a1, -0x78d4                                         |     a1 += -0x78d4;
    0x0002f210 move a2, s0                                                   |     a2 = s0;
    0x0002f214 sw v0, 0x10(sp)                                               |     *(var_10h) = v0;
    0x0002f218 move s1, a0                                                   |     s1 = a0;
    0x0002f21c jalr t9                                                       |     t9 ();
    0x0002f220 lw gp, 0x18(sp)                                               |     gp = *(var_18h);
    0x0002f224 sw s0, 0x44(sp)                                               |     *(arg_44h) = s0;
    0x0002f228 sw s0, 0x40(sp)                                               |     *(arg_40h) = s0;
    0x0002f22c lw a1, -0x7ea4(gp)                                            |     a1 = *((gp - 8105));
    0x0002f230 lw ra, 0x2c(sp)                                               |     ra = *(var_2ch);
    0x0002f234 move a3, s2                                                   |     a3 = s2;
    0x0002f238 move a2, s0                                                   |     a2 = s0;
    0x0002f23c lw s2, 0x28(sp)                                               |     s2 = *(var_28h);
    0x0002f240 lw s0, 0x20(sp)                                               |     s0 = *(var_20h);
    0x0002f244 move a0, s1                                                   |     a0 = s1;
    0x0002f248 lw t9, -0x7a80(gp)                                            |     t9 = sym.imp.g_string_append_printf
    0x0002f24c lw s1, 0x24(sp)                                               |     s1 = *(var_24h);
                                                                             |     /* str.pcm._audiosink_u__n_ttype_route_n_tslave.pcm__n_t_ttype_dmix_n_t_tipc_key__d_n_t_tipc_perm_0666_n_t_tslave.pcm_audiosinkslave_u_n_t_n_tttable.0.0_1_n_tttable.1.0_1_n_thint.show_on_n_thint.description_Routed_to_audiosinkslave_u_n_n_n */
    0x0002f250 addiu a1, a1, -0x7868                                         |     a1 += -0x7868;
    0x0002f254 addiu sp, sp, 0x30                                            |     
    0x0002f258 jr t9                                                         |     return t9 ();
                                                                             | }
    ; assembly                                                           | /* r2dec pseudo code output */
                                                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2f154 */
                                                                         | #include <stdint.h>
                                                                         |  
    ; (fcn) sym.asound_utils_generate_portcast_pcm_slave_hw ()           | void asound_utils_generate_portcast_pcm_slave_hw () {
    0x0002f154 lui gp, 3                                                 |     
    0x0002f158 addiu gp, gp, 0x4f8c                                      |     
    0x0002f15c addu gp, gp, t9                                           |     gp += t9;
    0x0002f160 addiu sp, sp, -0x30                                       |     
    0x0002f164 lw t9, -0x7a80(gp)                                        |     t9 = sym.imp.g_string_append_printf
    0x0002f168 lw v0, 0x48(sp)                                           |     v0 = *(arg_48h);
    0x0002f16c sw a3, 0x10(sp)                                           |     *(var_10h) = a3;
    0x0002f170 sw v0, 0x1c(sp)                                           |     *(var_1ch) = v0;
    0x0002f174 lw v0, 0x44(sp)                                           |     v0 = *(arg_44h);
    0x0002f178 move a3, a2                                               |     a3 = a2;
    0x0002f17c sw v0, 0x18(sp)                                           |     *(var_18h) = v0;
    0x0002f180 move a2, a1                                               |     a2 = a1;
    0x0002f184 lw v0, 0x40(sp)                                           |     v0 = *(arg_40h);
    0x0002f188 lw a1, -0x7ea4(gp)                                        |     a1 = *((gp - 8105));
    0x0002f18c sw ra, 0x2c(sp)                                           |     *(var_2ch) = ra;
    0x0002f190 sw gp, 0x20(sp)                                           |     *(var_20h) = gp;
    0x0002f194 sw v0, 0x14(sp)                                           |     *(var_14h) = v0;
                                                                         |     /* str.pcm_slave.aloopcommon__n_tpcm__hw:Loopback__u__u__n_tformat__s_n_tchannels__u_n_trate__u_n_tperiod_time__u_n_n_n */
    0x0002f198 addiu a1, a1, -0x79f4                                     |     a1 += -0x79f4;
    0x0002f19c jalr t9                                                   |     t9 ();
    0x0002f1a0 lw ra, 0x2c(sp)                                           |     ra = *(var_2ch);
    0x0002f1a4 addiu sp, sp, 0x30                                        |     
    0x0002f1a8 jr ra                                                     |     return v0;
                                                                         | }
    ; assembly                                               | /* r2dec pseudo code output */
                                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2f0d8 */
                                                             | #include <stdint.h>
                                                             |  
    ; (fcn) sym.asound_utils_generate_speaker_dmix ()        | void asound_utils_generate_speaker_dmix () {
    0x0002f0d8 lui gp, 3                                     |     
    0x0002f0dc addiu gp, gp, 0x5008                          |     
    0x0002f0e0 addu gp, gp, t9                               |     gp += t9;
    0x0002f0e4 addiu sp, sp, -0x38                           |     
    0x0002f0e8 lw t9, -0x7a80(gp)                            |     t9 = sym.imp.g_string_append_printf
    0x0002f0ec lw v0, 0x54(sp)                               |     v0 = *(arg_54h);
    0x0002f0f0 sw a3, 0x10(sp)                               |     *(var_10h) = a3;
    0x0002f0f4 sw v0, 0x20(sp)                               |     *(var_20h) = v0;
    0x0002f0f8 lw v0, 0x50(sp)                               |     v0 = *(arg_50h);
    0x0002f0fc move a3, a2                                   |     a3 = a2;
    0x0002f100 sw v0, 0x1c(sp)                               |     *(var_1ch) = v0;
    0x0002f104 lw v0, 0x4c(sp)                               |     v0 = *(arg_4ch);
    0x0002f108 move a2, a1                                   |     a2 = a1;
    0x0002f10c sw v0, 0x18(sp)                               |     *(var_18h) = v0;
    0x0002f110 lw a1, -0x7ea4(gp)                            |     a1 = *((gp - 8105));
    0x0002f114 lw v0, 0x48(sp)                               |     v0 = *(arg_48h);
    0x0002f118 sw ra, 0x34(sp)                               |     *(var_34h) = ra;
    0x0002f11c sw gp, 0x28(sp)                               |     *(var_28h) = gp;
    0x0002f120 sw v0, 0x14(sp)                               |     *(var_14h) = v0;
                                                             |     /* str.pcm._s__n_ttype_dmix_n_tipc_key__u_n_tipc_perm_0666_n_tslave__n_t_tpcm__s_n_t_tformat__s_n_t_tchannels__u_n_t_trate__u_n_t_tperiod_time__u_n_t_n_n_n */
    0x0002f124 addiu a1, a1, -0x7aa4                         |     a1 += -0x7aa4;
    0x0002f128 jalr t9                                       |     t9 ();
    0x0002f12c lw ra, 0x34(sp)                               |     ra = *(var_34h);
    0x0002f130 addiu sp, sp, 0x38                            |     
    0x0002f134 jr ra                                         |     return v0;
                                                             | }
    ; assembly                                                       | /* r2dec pseudo code output */
                                                                     | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/audiocontrol @ 0x2f080 */
                                                                     | #include <stdint.h>
                                                                     |  
    ; (fcn) sym.asound_utils_generate_speaker_plug_alias ()          | void asound_utils_generate_speaker_plug_alias () {
    0x0002f080 lui gp, 3                                             |     
    0x0002f084 addiu gp, gp, 0x5060                                  |     
    0x0002f088 addu gp, gp, t9                                       |     gp += t9;
    0x0002f08c addiu sp, sp, -0x28                                   |     
    0x0002f090 sw gp, 0x18(sp)                                       |     *(var_18h) = gp;
    0x0002f094 sw ra, 0x24(sp)                                       |     *(var_24h) = ra;
    0x0002f098 lw v0, -0x7ea4(gp)                                    |     v0 = *((gp - 8105));
                                                                     |     if (a3 != 0) {
    0x0002f09c bnez a3, 0x2f0d0                                      |         goto label_0;
                                                                     |     }
    0x0002f0a0 lw v0, -0x7ea4(gp)                                    |     v0 = *((gp - 8105));
    0x0002f0a4 addiu v0, v0, -0x79f8                                 |     v0 += -0x79f8;
                                                                     |     do {
    0x0002f0a8 move a3, a2                                           |         a3 = a2;
    0x0002f0ac move a2, a1                                           |         a2 = a1;
    0x0002f0b0 lw a1, -0x7ea4(gp)                                    |         a1 = *((gp - 8105));
    0x0002f0b4 lw t9, -0x7a80(gp)                                    |         t9 = sym.imp.g_string_append_printf
    0x0002f0b8 sw v0, 0x10(sp)                                       |         *(var_10h) = v0;
                                                                     |         /* str.pcm._s__n_ttype_plug_n_tslave.pcm__s_n_s_n_n */
    0x0002f0bc addiu a1, a1, -0x7acc                                 |         a1 += -0x7acc;
    0x0002f0c0 jalr t9                                               |         t9 ();
    0x0002f0c4 lw ra, 0x24(sp)                                       |         ra = *(var_24h);
    0x0002f0c8 addiu sp, sp, 0x28                                    |         
    0x0002f0cc jr ra                                                 |         return v0;
                                                                     |         /* str._thint.show_on_n */
                                                                     | label_0:
    0x0002f0d0 addiu v0, v0, -0x7adc                                 |         v0 += -0x7adc;
    0x0002f0d4 b 0x2f0a8                                             |         
                                                                     |     } while (1);
                                                                     | }

[*] Function printf used 34 times audiocontrol