[*] Binary protection state of axisns

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


[*] Function system tear down of axisns

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/axisns @ 0x32f8 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.000032f8 ()              | void fcn_000032f8 () {
    0x000032f8 lui gp, 2                 |     
    0x000032fc addiu gp, gp, -0x2d8      |     
    0x00003300 addu gp, gp, t9           |     gp += t9;
    0x00003304 addiu sp, sp, -0x128      |     
    0x00003308 lw a1, -0x7fd8(gp)        |     a1 = *((gp - 8182));
    0x0000330c sw s0, 0x120(sp)          |     *(var_120h) = s0;
    0x00003310 lw s0, -0x7e40(gp)        |     s0 = *((gp - 8080));
    0x00003314 lw t9, -0x7f1c(gp)        |     t9 = sym.imp.strcmp;
    0x00003318 sw gp, 0x10(sp)           |     *(var_10h_2) = gp;
    0x0000331c lw v0, (s0)               |     v0 = *(s0);
    0x00003320 sw ra, 0x124(sp)          |     *(var_124h) = ra;
    0x00003324 addiu a1, a1, -0x7418     |     a1 += -0x7418;
    0x00003328 sw v0, 0x11c(sp)          |     *(var_11ch) = v0;
    0x0000332c jalr t9                   |     t9 ();
    0x00003330 nop                       |     
    0x00003334 lw gp, 0x10(sp)           |     gp = *(var_10h_2);
    0x00003338 addiu a0, sp, 0x1c        |     a0 = sp + 0x1c;
                                         |     if (v0 != 0) {
    0x0000333c bnez v0, 0x33b8           |         goto label_2;
                                         |     }
    0x00003340 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x00003344 move v1, a0               |     v1 = a0;
    0x00003348 addiu v0, v0, -0x740c     |     v0 += -0x740c;
    0x0000334c addiu t1, v0, 0x90        |     t1 = v0 + 0x90;
                                         |     do {
    0x00003350 lw t0, (v0)               |         t0 = *(v0);
    0x00003354 lw a3, 4(v0)              |         a3 = *((v0 + 1));
    0x00003358 lw a2, 8(v0)              |         a2 = *((v0 + 2));
    0x0000335c lw a1, 0xc(v0)            |         a1 = *((v0 + 3));
    0x00003360 addiu v0, v0, 0x10        |         v0 += 0x10;
    0x00003364 sw t0, (v1)               |         *(v1) = t0;
    0x00003368 sw a3, 4(v1)              |         *((v1 + 1)) = a3;
    0x0000336c sw a2, 8(v1)              |         *((v1 + 2)) = a2;
    0x00003370 sw a1, 0xc(v1)            |         *((v1 + 3)) = a1;
    0x00003374 addiu v1, v1, 0x10        |         v1 += 0x10;
    0x00003378 bne v0, t1, 0x3350        |         
                                         |     } while (v0 != t1);
    0x0000337c lw a1, (v0)               |     a1 = *(v0);
    0x00003380 lw v0, 4(v0)              |     v0 = *((v0 + 1));
    0x00003384 sw a1, (v1)               |     *(v1) = a1;
    0x00003388 sw v0, 4(v1)              |     *((v1 + 1)) = v0;
                                         | label_0:
    0x0000338c lw t9, -0x7d80(gp)        |     t9 = sym.imp.system
    0x00003390 jalr t9                   |     t9 ();
    0x00003394 nop                       |     
    0x00003398 lw v1, 0x11c(sp)          |     v1 = *(var_11ch);
    0x0000339c lw v0, (s0)               |     v0 = *(s0);
    0x000033a0 lw gp, 0x10(sp)           |     gp = *(var_10h_2);
                                         |     if (v1 != v0) {
    0x000033a4 bne v1, v0, 0x3418        |         goto label_3;
                                         |     }
    0x000033a8 lw ra, 0x124(sp)          |     ra = *(var_124h);
    0x000033ac lw s0, 0x120(sp)          |     s0 = *(var_120h);
    0x000033b0 addiu sp, sp, 0x128       |     
    0x000033b4 jr ra                     |     return v1;
                                         | label_2:
    0x000033b8 lw v0, -0x7fd8(gp)        |     v0 = *((gp - 8182));
    0x000033bc move v1, a0               |     v1 = a0;
    0x000033c0 addiu v0, v0, -0x7374     |     v0 += -0x7374;
    0x000033c4 addiu t1, v0, 0x90        |     t1 = v0 + 0x90;
                                         |     do {
    0x000033c8 lw t0, (v0)               |         t0 = *(v0);
    0x000033cc lw a3, 4(v0)              |         a3 = *((v0 + 1));
    0x000033d0 lw a2, 8(v0)              |         a2 = *((v0 + 2));
    0x000033d4 lw a1, 0xc(v0)            |         a1 = *((v0 + 3));
    0x000033d8 addiu v0, v0, 0x10        |         v0 += 0x10;
    0x000033dc sw t0, (v1)               |         *(v1) = t0;
    0x000033e0 sw a3, 4(v1)              |         *((v1 + 1)) = a3;
    0x000033e4 sw a2, 8(v1)              |         *((v1 + 2)) = a2;
    0x000033e8 sw a1, 0xc(v1)            |         *((v1 + 3)) = a1;
    0x000033ec addiu v1, v1, 0x10        |         v1 += 0x10;
    0x000033f0 bne v0, t1, 0x33c8        |         
                                         |     } while (v0 != t1);
    0x000033f4 lw a3, (v0)               |     a3 = *(v0);
    0x000033f8 lw a2, 4(v0)              |     a2 = *((v0 + 1));
    0x000033fc lhu a1, 8(v0)             |     a1 = *((v0 + 4));
    0x00003400 lbu v0, 0xa(v0)           |     v0 = *((v0 + 10));
    0x00003404 sw a3, (v1)               |     *(v1) = a3;
    0x00003408 sw a2, 4(v1)              |     *((v1 + 1)) = a2;
    0x0000340c sh a1, 8(v1)              |     *((v1 + 4)) = a1;
    0x00003410 sb v0, 0xa(v1)            |     *((v1 + 10)) = v0;
    0x00003414 b 0x338c                  |     goto label_0;
                                         | label_3:
    0x00003418 lw t9, -0x7e80(gp)        |     t9 = sym.imp.__stack_chk_fail;
    0x0000341c jalr t9                   |     t9 ();
    0x00003420 nop                       |     
    0x00003424 lui gp, 2                 |     
    0x00003428 addiu gp, gp, -0x404      |     
    0x0000342c addu gp, gp, t9           |     gp += t9;
    0x00003430 addiu sp, sp, -0x20       |     
    0x00003434 addiu v0, zero, 0x10      |     v0 = 0x10;
    0x00003438 sw gp, 0x10(sp)           |     *(var_10h_3) = gp;
    0x0000343c sw ra, 0x1c(sp)           |     *(var_1ch_3) = ra;
    0x00003440 sw s0, 0x18(sp)           |     *(var_18h) = s0;
    0x00003444 addiu v0, zero, 0x11      |     v0 = 0x11;
                                         |     if (a0 == v0) {
    0x00003448 beq a0, v0, 0x349c        |         goto label_4;
                                         |     }
    0x0000344c lw v0, -0x7fd4(gp)        |     v0 = *((gp - 8181));
                                         |     if (a0 != v0) {
    0x00003450 bne a0, v0, 0x346c        |         goto label_5;
                                         |     }
    0x00003454 addiu v1, zero, 1         |     v1 = 1;
    0x00003458 sw v1, -0x4ff0(v0)        |     *((v0 - 5116)) = v1;
    0x0000345c lw ra, 0x1c(sp)           |     ra = *(var_1ch_3);
                                         |     do {
                                         | label_1:
    0x00003460 lw s0, 0x18(sp)           |         s0 = *(var_18h);
    0x00003464 addiu sp, sp, 0x20        |         
    0x00003468 jr ra                     |         return v1;
                                         | label_5:
    0x0000346c lw t9, -0x7e30(gp)        |         t9 = sym.imp.__libc_current_sigrtmin;
    0x00003470 move s0, a0               |         s0 = a0;
    0x00003474 jalr t9                   |         t9 ();
    0x00003478 lw gp, 0x10(sp)           |         gp = *(var_10h_3);
                                         |         if (v0 == s0) {
    0x0000347c bne v0, s0, 0x34b8        |             
    0x00003480 lw v0, -0x7fd4(gp)        |             v0 = *((gp - 8181));
    0x00003484 lw ra, 0x1c(sp)           |             ra = *(var_1ch_3);
    0x00003488 addiu v1, zero, 1         |             v1 = 1;
    0x0000348c lw s0, 0x18(sp)           |             s0 = *(var_18h);
    0x00003490 sw v1, -0x4880(v0)        |             *((v0 - 4640)) = v1;
    0x00003494 addiu sp, sp, 0x20        |             
    0x00003498 jr ra                     |             return v1;
                                         | label_4:
    0x0000349c lw v0, -0x7fd4(gp)        |             v0 = *((gp - 8181));
    0x000034a0 lw ra, 0x1c(sp)           |             ra = *(var_1ch_3);
    0x000034a4 addiu v1, zero, 1         |             v1 = 1;
    0x000034a8 lw s0, 0x18(sp)           |             s0 = *(var_18h);
    0x000034ac sw v1, -0x4878(v0)        |             *((v0 - 4638)) = v1;
    0x000034b0 addiu sp, sp, 0x20        |             
    0x000034b4 jr ra                     |             return v1;
                                         |         }
    0x000034b8 lw t9, -0x7e30(gp)        |         t9 = sym.imp.__libc_current_sigrtmin;
    0x000034bc jalr t9                   |         t9 ();
    0x000034c0 nop                       |         
    0x000034c4 addiu v0, v0, 1           |         v0++;
    0x000034c8 lw gp, 0x10(sp)           |         gp = *(var_10h_3);
                                         |         if (v0 != s0) {
    0x000034cc bne v0, s0, 0x34e4        |             goto label_6;
                                         |         }
    0x000034d0 lw v0, -0x7fd4(gp)        |         v0 = *((gp - 8181));
    0x000034d4 addiu v1, zero, 1         |         v1 = 1;
    0x000034d8 sw v1, -0x487c(v0)        |         *((v0 - 4639)) = v1;
    0x000034dc lw ra, 0x1c(sp)           |         ra = *(var_1ch_3);
    0x000034e0 b 0x3460                  |         
                                         |     } while (1);
                                         | label_6:
    0x000034e4 lw t9, -0x7e30(gp)        |     t9 = sym.imp.__libc_current_sigrtmin;
    0x000034e8 jalr t9                   |     t9 ();
    0x000034ec nop                       |     
    0x000034f0 addiu v0, v0, 2           |     v0 += 2;
    0x000034f4 lw gp, 0x10(sp)           |     gp = *(var_10h_3);
                                         |     if (v0 == s0) {
    0x000034f8 bne v0, s0, 0x3510        |         
    0x000034fc lw v0, -0x7fd4(gp)        |         v0 = *((gp - 8181));
    0x00003500 addiu v1, zero, 1         |         v1 = 1;
    0x00003504 sw v1, -0x4884(v0)        |         *((v0 - 4641)) = v1;
    0x00003508 lw ra, 0x1c(sp)           |         ra = *(var_1ch_3);
    0x0000350c b 0x3460                  |         goto label_1;
                                         |     }
    0x00003510 lw t9, -0x7e30(gp)        |     t9 = sym.imp.__libc_current_sigrtmin;
    0x00003514 jalr t9                   |     t9 ();
    0x00003518 nop                       |     
    0x0000351c addiu v0, v0, 3           |     v0 += 3;
    0x00003520 lw gp, 0x10(sp)           |     gp = *(var_10h_3);
                                         |     if (v0 == s0) {
    0x00003524 bne v0, s0, 0x353c        |         
    0x00003528 lw v0, -0x7fd4(gp)        |         v0 = *((gp - 8181));
    0x0000352c addiu v1, zero, 1         |         v1 = 1;
    0x00003530 sw v1, -0x4888(v0)        |         *((v0 - 4642)) = v1;
    0x00003534 lw ra, 0x1c(sp)           |         ra = *(var_1ch_3);
    0x00003538 b 0x3460                  |         goto label_1;
                                         |     }
    0x0000353c lw t9, -0x7e30(gp)        |     t9 = sym.imp.__libc_current_sigrtmin;
    0x00003540 jalr t9                   |     t9 ();
    0x00003544 nop                       |     
    0x00003548 addiu v0, v0, 4           |     v0 += 4;
    0x0000354c lw gp, 0x10(sp)           |     gp = *(var_10h_3);
                                         |     if (s0 != v0) {
    0x00003550 beq s0, v0, 0x3568        |         
    0x00003554 lw v0, -0x7fd4(gp)        |         v0 = *((gp - 8181));
    0x00003558 addiu v1, zero, 1         |         v1 = 1;
    0x0000355c sw v1, -0x4874(v0)        |         *((v0 - 4637)) = v1;
    0x00003560 lw ra, 0x1c(sp)           |         ra = *(var_1ch_3);
    0x00003564 b 0x3460                  |         goto label_1;
                                         |     }
    0x00003568 lw v0, -0x7fd4(gp)        |     v0 = *((gp - 8181));
    0x0000356c addiu v1, zero, 1         |     v1 = 1;
    0x00003570 sw v1, -0x488c(v0)        |     *((v0 - 4643)) = v1;
    0x00003574 lw ra, 0x1c(sp)           |     ra = *(var_1ch_3);
    0x00003578 b 0x3460                  |     goto label_1;
                                         | }

[*] Function system used 2 times axisns