[*] Binary protection state of systemd-cgls

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


[*] Function printf tear down of systemd-cgls

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/systemd-cgls @ 0x1e88 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00001e88 ()              | void fcn_00001e88 () {
    0x00001e88 lui gp, 2                 |     
    0x00001e8c addiu gp, gp, -0x6e78     |     
    0x00001e90 addu gp, gp, t9           |     gp += t9;
    0x00001e94 addiu sp, sp, -0x28       |     
    0x00001e98 lw t9, -0x7f14(gp)        |     t9 = sym.imp.cg_all_unified;
    0x00001e9c sw gp, 0x10(sp)           |     *(var_10h) = gp;
    0x00001ea0 sw s1, 0x20(sp)           |     *(var_20h) = s1;
    0x00001ea4 sw s0, 0x1c(sp)           |     *(var_1ch) = s0;
    0x00001ea8 sw ra, 0x24(sp)           |     *(var_24h) = ra;
    0x00001eac move s1, a0               |     s1 = a0;
    0x00001eb0 move s0, a1               |     s0 = a1;
    0x00001eb4 jalr t9                   |     t9 ();
    0x00001eb8 lw gp, 0x10(sp)           |     gp = *(var_10h);
                                         |     if (v0 != 0) {
    0x00001ebc bnez v0, 0x1ee0           |         goto label_0;
                                         |     }
    0x00001ec0 lw a1, -0x7fdc(gp)        |     a1 = *((gp - 8183));
                                         |     if (s1 == 0) {
    0x00001ec4 beqz s1, 0x1ee0           |         goto label_0;
                                         |     }
    0x00001ec8 lw t9, -0x7f9c(gp)        |     t9 = sym.imp.strcmp;
    0x00001ecc addiu a1, a1, 0x228c      |     a1 += str._systemd;
    0x00001ed0 move a0, s1               |     a0 = s1;
    0x00001ed4 jalr t9                   |     t9 ();
    0x00001ed8 lw gp, 0x10(sp)           |     gp = *(var_10h);
    0x00001edc bnez v0, 0x1f38           |     
                                         |     if (s0 != 0) {
                                         |         while (1) {
                                         | label_0:
    0x00001ee0 beql s0, zero, 0x1ef8     |             
    0x00001ee4 lw s0, -0x7fdc(gp)        |             s0 = *((gp - 8183));
    0x00001ee8 lb v0, (s0)               |             v0 = *(s0);
    0x00001eec lw a1, -0x7fdc(gp)        |             a1 = *((gp - 8183));
                                         |             if (v0 == 0) {
    0x00001ef0 bnel v0, zero, 0x1f00     |                 goto label_1;
                                         |             }
    0x00001ef4 lw s0, -0x7fdc(gp)        |             s0 = *((gp - 8183));
                                         |         }
    0x00001ef8 addiu s0, s0, 0x2288      |         s0 += 0x2288;
    0x00001efc lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
                                         | label_1:
    0x00001f00 lw t9, -0x7f0c(gp)        |         t9 = sym.imp.__printf_chk
    0x00001f04 addiu a0, zero, 1         |         a0 = 1;
    0x00001f08 move a2, s0               |         a2 = s0;
    0x00001f0c addiu a1, a1, 0x22a8      |         a1 += str.Control_group__s:_n;
    0x00001f10 jalr t9                   |         t9 ();
    0x00001f14 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00001f18 lw ra, 0x24(sp)           |         ra = *(var_24h);
    0x00001f1c lw s1, 0x20(sp)           |         s1 = *(var_20h);
    0x00001f20 lw v0, -0x7f88(gp)        |         v0 = *((gp - 8162));
    0x00001f24 lw s0, 0x1c(sp)           |         s0 = *(var_1ch);
    0x00001f28 lw t9, -0x7f34(gp)        |         t9 = sym.imp.fflush;
    0x00001f2c lw a0, (v0)               |         a0 = *(v0);
    0x00001f30 addiu sp, sp, 0x28        |         
    0x00001f34 jr t9                     |         t9 ();
    0x00001f38 lw a1, -0x7fdc(gp)        |         a1 = *((gp - 8183));
    0x00001f3c lw t9, -0x7f0c(gp)        |         t9 = sym.imp.__printf_chk
    0x00001f40 move a2, s1               |         a2 = s1;
    0x00001f44 addiu a1, a1, 0x2298      |         a1 += str.Controller__s__;
    0x00001f48 addiu a0, zero, 1         |         a0 = 1;
    0x00001f4c jalr t9                   |         t9 ();
    0x00001f50 lw gp, 0x10(sp)           |         gp = *(var_10h);
    0x00001f54 b 0x1ee0                  |         
                                         |     }
                                         | }

[*] Function printf used 3 times systemd-cgls