[*] Binary protection state of wpa_supplicant

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


[*] Function printf tear down of wpa_supplicant

    ; assembly                               | /* r2dec pseudo code output */
                                             | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/wpa_supplicant @ 0x26298 */
                                             | #include <stdint.h>
                                             |  
    ; (fcn) sym.wpas_wmm_ac_status ()        | void wpas_wmm_ac_status () {
    0x00026298 lui gp, 0xa                   |     
    0x0002629c addiu gp, gp, -0x3138         |     
    0x000262a0 addu gp, gp, t9               |     gp += t9;
    0x000262a4 addiu sp, sp, -0x90           |     
    0x000262a8 lw v0, 0x4bc(a0)              |     v0 = *((a0 + 303));
    0x000262ac sw gp, 0x38(sp)               |     *(var_38h) = gp;
    0x000262b0 sw s2, 0x70(sp)               |     *(var_70h) = s2;
    0x000262b4 sw s1, 0x6c(sp)               |     *(var_6ch) = s1;
    0x000262b8 sw ra, 0x8c(sp)               |     *(var_8ch) = ra;
    0x000262bc sw fp, 0x88(sp)               |     *(var_88h) = fp;
    0x000262c0 sw s7, 0x84(sp)               |     *(var_84h) = s7;
    0x000262c4 sw s6, 0x80(sp)               |     *(var_80h) = s6;
    0x000262c8 sw s5, 0x7c(sp)               |     *(var_7ch) = s5;
    0x000262cc sw s4, 0x78(sp)               |     *(var_78h) = s4;
    0x000262d0 sw s3, 0x74(sp)               |     *(var_74h) = s3;
    0x000262d4 sw s0, 0x68(sp)               |     *(var_68h) = s0;
    0x000262d8 move s1, a1                   |     s1 = a1;
    0x000262dc sw v0, 0x50(sp)               |     *(var_50h) = v0;
    0x000262e0 move s2, a2                   |     s2 = a2;
                                             |     if (v0 == 0) {
    0x000262e4 beqz v0, 0x26530              |         goto label_4;
                                             |     }
    0x000262e8 lw a2, -0x7f7c(gp)            |     a2 = *(gp);
    0x000262ec lw t9, -0x7d98(gp)            |     t9 = sym.wpa_scnprintf
    0x000262f0 move s7, a0                   |     s7 = a0;
                                             |     /* str.WMM_AC_is_Enabled_n */
    0x000262f4 addiu a2, a2, -0xe9c          |     a2 += -0xe9c;
    0x000262f8 move a1, s2                   |     a1 = s2;
    0x000262fc move a0, s1                   |     a0 = s1;
    0x00026300 bal 0x19744                   |     sym_wpa_scnprintf ()
    0x00026304 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00026308 move fp, v0                   |     fp = v0;
    0x0002630c sw s7, 0x48(sp)               |     *(var_40h) = s7;
    0x00026310 lw v0, -0x7f7c(gp)            |     v0 = *(gp);
    0x00026314 lw v1, -0x7f7c(gp)            |     v1 = *(gp);
                                             |     /* str.Downlink */
    0x00026318 addiu v0, v0, -0xef0          |     v0 += -0xef0;
    0x0002631c sw v1, 0x54(sp)               |     *(var_4ch) = v1;
    0x00026320 sw v0, 0x5c(sp)               |     *(var_5ch) = v0;
    0x00026324 lw v1, -0x7f7c(gp)            |     v1 = *(gp);
    0x00026328 lw v0, -0x7f7c(gp)            |     v0 = *(gp);
    0x0002632c lw s6, -0x7f7c(gp)            |     s6 = *(gp);
                                             |     /* str.Uplink */
    0x00026330 addiu v0, v0, -0xed4          |     v0 += -0xed4;
    0x00026334 sw v1, 0x64(sp)               |     *(var_64h) = v1;
    0x00026338 lw v1, -0x7f7c(gp)            |     v1 = *(gp);
    0x0002633c sw v0, 0x58(sp)               |     *(var_58h) = v0;
                                             |     /* str.Bi_directional */
    0x00026340 addiu v0, s6, -0xee4          |     v0 = s6 + -0xee4;
    0x00026344 sw v1, 0x60(sp)               |     *(var_60h) = v1;
    0x00026348 move s0, zero                 |     s0 = 0;
    0x0002634c sw v0, 0x4c(sp)               |     *(var_44h_2) = v0;
                                             | label_0:
    0x00026350 andi v0, s0, 0xff             |     v0 = s0 & 0xff;
    0x00026354 addiu v1, zero, 2             |     v1 = 2;
    0x00026358 addu a0, s1, fp               |     a0 = s1 + fp;
    0x0002635c subu a1, s2, fp               |     __asm ("subu a1, s2, fp");
                                             |     if (v0 == v1) {
    0x00026360 beq v0, v1, 0x26524           |         goto label_5;
                                             |     }
    0x00026364 addiu v1, zero, 3             |     v1 = 3;
    0x00026368 addiu v1, zero, 1             |     v1 = 1;
                                             |     if (v0 == v1) {
    0x0002636c beq v0, v1, 0x264f8           |         goto label_6;
                                             |     }
    0x00026370 lw a3, -0x7f7c(gp)            |     a3 = *(gp);
                                             |     if (v0 == v1) {
    0x00026374 beq v0, v1, 0x264f0           |         goto label_7;
                                             |     }
    0x00026378 lw a3, -0x7f7c(gp)            |     a3 = *(gp);
                                             |     /* esilref: 'BE' */
    0x0002637c addiu a3, a3, -0xef8          |     a3 += -0xef8;
                                             | label_2:
    0x00026380 lw v1, 0x50(sp)               |     v1 = *(var_50h);
    0x00026384 sll v0, s0, 2                 |     v0 = s0 << 2;
    0x00026388 addu v0, v1, v0               |     v0 = v1 + v0;
    0x0002638c lw t9, -0x7d98(gp)            |     t9 = sym.wpa_scnprintf
    0x00026390 lw v1, (v0)                   |     v1 = *(v0);
    0x00026394 move s6, zero                 |     s6 = 0;
    0x00026398 ext v1, v1, 1, 1              |     __asm ("ext v1, v1, 1, 1");
    0x0002639c sw v1, 0x14(sp)               |     *(var_14h_2) = v1;
    0x000263a0 lw v0, (v0)                   |     v0 = *(v0);
    0x000263a4 lw v1, 0x54(sp)               |     v1 = *(var_4ch);
    0x000263a8 andi v0, v0, 1                |     v0 &= 1;
    0x000263ac addiu a2, v1, -0xe88          |     a2 = v1 + -0xe88;
    0x000263b0 sw v0, 0x10(sp)               |     *(var_10h_2) = v0;
    0x000263b4 bal 0x19744                   |     sym_wpa_scnprintf ()
    0x000263b8 lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x000263bc lw s3, 0x48(sp)               |     s3 = *(var_40h);
    0x000263c0 addu fp, fp, v0               |     fp += v0;
    0x000263c4 lw v1, -0x7f7c(gp)            |     v1 = *(gp);
    0x000263c8 lw s4, -0x7f7c(gp)            |     s4 = *(gp);
    0x000263cc sw v1, 0x44(sp)               |     *(var_3ch) = v1;
    0x000263d0 move s5, zero                 |     s5 = 0;
                                             |     do {
    0x000263d4 lw v0, 0x4c0(s3)              |         v0 = *((s3 + 304));
    0x000263d8 addiu a1, zero, 1             |         a1 = 1;
    0x000263dc addiu a0, zero, 3             |         a0 = 3;
                                             |         if (v0 != 0) {
    0x000263e0 beqz v0, 0x2647c              |             
    0x000263e4 lbu a3, 8(v0)                 |             a3 = *((v0 + 8));
    0x000263e8 ext v1, a3, 5, 2              |             __asm ("ext v1, a3, 5, 2");
    0x000263ec addiu s6, s6, 1               |             s6++;
                                             |             if (v1 == a1) {
    0x000263f0 beq v1, a1, 0x264e8           |                 goto label_8;
                                             |             }
                                             |             if (v1 != 0) {
    0x000263f4 beql v1, zero, 0x26408        |                 
    0x000263f8 lw a0, 0x58(sp)               |                 a0 = *(var_58h);
    0x000263fc lw v1, 0x44(sp)               |                 v1 = *(var_3ch);
                                             |                 if (v1 != a0) {
    0x00026400 bne v1, a0, 0x264e0           |                     goto label_9;
                                             |                 }
    0x00026404 lw a0, 0x4c(sp)               |                 a0 = *(var_44h_2);
                                             |             }
                                             | label_1:
    0x00026408 lbu v1, 0x3e(v0)              |             v1 = *((v0 + 62));
    0x0002640c lbu t4, 0x3d(v0)              |             t4 = *((v0 + 61));
    0x00026410 lbu a2, 0xdd(s7)              |             a2 = *((s7 + 221));
    0x00026414 lbu a1, 0xdc(s7)              |             a1 = *((s7 + 220));
    0x00026418 lbu t3, 0xe1(s7)              |             t3 = *((s7 + 225));
    0x0002641c lbu t2, 0xe0(s7)              |             t2 = *((s7 + 224));
    0x00026420 lbu t1, 0xdf(s7)              |             t1 = *((s7 + 223));
    0x00026424 lbu t0, 0xde(s7)              |             t0 = *((s7 + 222));
    0x00026428 sll v1, v1, 8                 |             v1 <<= 8;
    0x0002642c or v1, v1, t4                 |             v1 |= t4;
    0x00026430 sw a0, 0x2c(sp)               |             *(var_2ch_2) = a0;
    0x00026434 sw a2, 0x18(sp)               |             *(var_10h) = a2;
    0x00026438 sw a1, 0x14(sp)               |             *(var_14h_2) = a1;
    0x0002643c sw v1, 0x30(sp)               |             *(var_30h_2) = v1;
    0x00026440 sw t3, 0x28(sp)               |             *(var_20h) = t3;
    0x00026444 sw t2, 0x24(sp)               |             *(var_24h) = t2;
    0x00026448 sw t1, 0x20(sp)               |             *(var_18h) = t1;
    0x0002644c sw t0, 0x1c(sp)               |             *(var_14h) = t0;
    0x00026450 lbu v0, 9(v0)                 |             v0 = *((v0 + 9));
    0x00026454 lw t9, -0x7d98(gp)            |             t9 = sym.wpa_scnprintf
    0x00026458 ext v0, v0, 3, 3              |             __asm ("ext v0, v0, 3, 3");
    0x0002645c subu a1, s2, fp               |             __asm ("subu a1, s2, fp");
    0x00026460 addu a0, s1, fp               |             a0 = s1 + fp;
    0x00026464 sw v0, 0x10(sp)               |             *(var_10h_2) = v0;
    0x00026468 ext a3, a3, 1, 4              |             __asm ("ext a3, a3, 1, 4");
                                             |             /* str._tTSID_u_UP_u_n_tAddress___02x:_02x:_02x:_02x:_02x:_02x_n_tWMM_AC_dir___s_n_tTotal_admitted_time___u_n_n */
    0x0002646c addiu a2, s4, -0xe70          |             a2 = s4 + -0xe70;
    0x00026470 bal 0x19744                   |             sym_wpa_scnprintf ()
    0x00026474 lw gp, 0x38(sp)               |             gp = *(var_38h);
    0x00026478 addu fp, fp, v0               |             fp += v0;
                                             |         }
    0x0002647c addiu s5, s5, 1               |         s5++;
    0x00026480 addiu v0, zero, 3             |         v0 = 3;
    0x00026484 addiu s3, s3, 4               |         s3 += 4;
    0x00026488 bne s5, v0, 0x263d4           |         
                                             |     } while (s5 != v0);
                                             |     if (s6 == 0) {
    0x0002648c beql s6, zero, 0x26504        |         goto label_10;
                                             |     }
    0x00026490 lw a2, -0x7f7c(gp)            |     a2 = *(gp);
                                             | label_3:
    0x00026494 lw v1, 0x48(sp)               |     v1 = *(var_40h);
    0x00026498 addiu s0, s0, 1               |     s0++;
    0x0002649c addiu v1, v1, 0xc             |     v1 += 0xc;
    0x000264a0 addiu v0, zero, 4             |     v0 = 4;
    0x000264a4 sw v1, 0x48(sp)               |     *(var_40h) = v1;
                                             |     if (s0 != v0) {
    0x000264a8 bne s0, v0, 0x26350           |         goto label_0;
                                             |     }
    0x000264ac lw ra, 0x8c(sp)               |     ra = *(var_8ch);
    0x000264b0 move v0, fp                   |     v0 = fp;
    0x000264b4 lw s7, 0x84(sp)               |     s7 = *(var_84h);
    0x000264b8 lw fp, 0x88(sp)               |     fp = *(var_88h);
    0x000264bc lw s6, 0x80(sp)               |     s6 = *(var_80h);
    0x000264c0 lw s5, 0x7c(sp)               |     s5 = *(var_7ch);
    0x000264c4 lw s4, 0x78(sp)               |     s4 = *(var_78h);
    0x000264c8 lw s3, 0x74(sp)               |     s3 = *(var_74h);
    0x000264cc lw s2, 0x70(sp)               |     s2 = *(var_70h);
    0x000264d0 lw s1, 0x6c(sp)               |     s1 = *(var_6ch);
    0x000264d4 lw s0, 0x68(sp)               |     s0 = *(var_68h);
    0x000264d8 addiu sp, sp, 0x90            |     
    0x000264dc jr ra                         |     return v0;
                                             | label_9:
    0x000264e0 addiu a0, v1, -0xef4          |     a0 = v1 + -0xef4;
    0x000264e4 b 0x26408                     |     goto label_1;
                                             | label_8:
    0x000264e8 lw a0, 0x5c(sp)               |     a0 = *(var_5ch);
    0x000264ec b 0x26408                     |     goto label_1;
                                             |     /* esilref: 'BK' */
                                             | label_7:
    0x000264f0 addiu a3, a3, -0xf04          |     a3 += -0xf04;
    0x000264f4 b 0x26380                     |     goto label_2;
                                             | label_6:
    0x000264f8 lw v0, 0x60(sp)               |     v0 = *(var_60h);
    0x000264fc addiu a3, v0, -0xf00          |     a3 = v0 + -0xf00;
    0x00026500 b 0x26380                     |     goto label_2;
                                             | label_10:
    0x00026504 lw t9, -0x7d98(gp)            |     t9 = sym.wpa_scnprintf
    0x00026508 subu a1, s2, fp               |     __asm ("subu a1, s2, fp");
    0x0002650c addu a0, s1, fp               |     a0 = s1 + fp;
                                             |     /* str._t_No_Traffic_Stream__n_n */
    0x00026510 addiu a2, a2, -0xe08          |     a2 += -0xe08;
    0x00026514 bal 0x19744                   |     sym_wpa_scnprintf ()
    0x00026518 addu fp, fp, v0               |     fp += v0;
    0x0002651c lw gp, 0x38(sp)               |     gp = *(var_38h);
    0x00026520 b 0x26494                     |     goto label_3;
                                             | label_5:
    0x00026524 lw v0, 0x64(sp)               |     v0 = *(var_64h);
    0x00026528 addiu a3, v0, -0xefc          |     a3 = v0 + -0xefc;
    0x0002652c b 0x26380                     |     goto label_2;
                                             | label_4:
    0x00026530 lw a2, -0x7f7c(gp)            |     a2 = *(gp);
    0x00026534 lw ra, 0x8c(sp)               |     ra = *(var_8ch);
    0x00026538 lw fp, 0x88(sp)               |     fp = *(var_88h);
    0x0002653c lw s7, 0x84(sp)               |     s7 = *(var_84h);
    0x00026540 lw s6, 0x80(sp)               |     s6 = *(var_80h);
    0x00026544 lw s5, 0x7c(sp)               |     s5 = *(var_7ch);
    0x00026548 lw s4, 0x78(sp)               |     s4 = *(var_78h);
    0x0002654c lw s3, 0x74(sp)               |     s3 = *(var_74h);
    0x00026550 lw s0, 0x68(sp)               |     s0 = *(var_68h);
    0x00026554 move a1, s2                   |     a1 = s2;
    0x00026558 move a0, s1                   |     a0 = s1;
    0x0002655c lw s2, 0x70(sp)               |     s2 = *(var_70h);
    0x00026560 lw s1, 0x6c(sp)               |     s1 = *(var_6ch);
    0x00026564 lw t9, -0x7d98(gp)            |     t9 = sym.wpa_scnprintf
                                             |     /* str.Not_associated_to_a_WMM_AP__WMM_AC_is_Disabled_n */
    0x00026568 addiu a2, a2, -0xecc          |     a2 += -0xecc;
    0x0002656c addiu sp, sp, 0x90            |     
    0x00026570 b 0x19744                     |     return void (*0x19744)() ();
                                             | }

[*] Function printf used 10 times wpa_supplicant