[*] Binary protection state of storage_manager
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function sprintf tear down of storage_manager
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/bin/storage_manager @ 0x17a70 */
| #include <stdint.h>
|
; (fcn) sym.disk_event_remove_oldest () | void disk_event_remove_oldest () {
0x00017a70 lui gp, 6 |
0x00017a74 addiu gp, gp, -0x1980 |
0x00017a78 addu gp, gp, t9 | gp += t9;
0x00017a7c addiu sp, sp, -0x50 |
0x00017a80 lw t9, -0x7dcc(gp) | t9 = sym.disk_is_internal;
0x00017a84 sw s0, 0x38(sp) | *(var_38h) = s0;
0x00017a88 lw s0, -0x7214(gp) | s0 = *((gp - 7301));
0x00017a8c sw gp, 0x10(sp) | *(var_10h) = gp;
0x00017a90 sw s5, 0x48(sp) | *(var_48h) = s5;
0x00017a94 lw v0, (s0) | v0 = *(s0);
0x00017a98 sw s4, 0x44(sp) | *(var_44h) = s4;
0x00017a9c sw s2, 0x40(sp) | *(var_40h) = s2;
0x00017aa0 sw ra, 0x4c(sp) | *(var_4ch) = ra;
0x00017aa4 sw s1, 0x3c(sp) | *(var_3ch) = s1;
0x00017aa8 sw v0, 0x34(sp) | *(var_34h) = v0;
0x00017aac move s2, a0 | s2 = a0;
0x00017ab0 move s4, a2 | s4 = a2;
0x00017ab4 move s5, a3 | s5 = a3;
0x00017ab8 bal 0x1d224 | sym_disk_is_internal ();
0x00017abc lw gp, 0x10(sp) | gp = *(var_10h);
| if (v0 == 0) {
0x00017ac0 bnez v0, 0x17b04 |
0x00017ac4 lw a1, -0x7fc8(gp) | a1 = *(gp);
0x00017ac8 lw t9, -0x7438(gp) | t9 = sym.imp.g_sprintf
0x00017acc addiu s1, sp, 0x1c | s1 = sp + 0x1c;
0x00017ad0 move a2, s4 | a2 = s4;
0x00017ad4 move a3, s5 | a3 = s5;
| /* str._lli */
0x00017ad8 addiu a1, a1, 0x57d4 | a1 += 0x57d4;
0x00017adc move a0, s1 | a0 = s1;
0x00017ae0 jalr t9 | t9 ();
0x00017ae4 lw gp, 0x10(sp) | gp = *(var_10h);
0x00017ae8 move a2, s1 | a2 = s1;
0x00017aec addiu a1, zero, 1 | a1 = 1;
0x00017af0 lw t9, -0x7fbc(gp) | t9 = *(gp);
| /* fcn.00013c9c */
0x00017af4 addiu t9, t9, 0x3c9c | t9 += 0x3c9c;
0x00017af8 move a0, s2 | a0 = s2;
0x00017afc bal 0x13c9c | fcn_00013c9c ();
0x00017b00 lw gp, 0x10(sp) | gp = *(var_10h);
| }
0x00017b04 lw v1, 0x34(sp) | v1 = *(var_34h);
0x00017b08 lw v0, (s0) | v0 = *(s0);
0x00017b0c lw ra, 0x4c(sp) | ra = *(var_4ch);
| if (v1 == v0) {
0x00017b10 bne v1, v0, 0x17b30 |
0x00017b14 lw s5, 0x48(sp) | s5 = *(var_48h);
0x00017b18 lw s4, 0x44(sp) | s4 = *(var_44h);
0x00017b1c lw s2, 0x40(sp) | s2 = *(var_40h);
0x00017b20 lw s1, 0x3c(sp) | s1 = *(var_3ch);
0x00017b24 lw s0, 0x38(sp) | s0 = *(var_38h);
0x00017b28 addiu sp, sp, 0x50 |
0x00017b2c jr ra | return v1;
| }
0x00017b30 lw t9, -0x7520(gp) | t9 = sym.imp.__stack_chk_fail;
0x00017b34 jalr t9 | t9 ();
0x00017b38 nop |
| }
[*] Function sprintf used 2 times storage_manager