[*] Binary protection state of mdnsd
Full RELRO Canary found NX disabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function strcpy tear down of mdnsd
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/4325012-58052244.squashfs_v4_le_extract/usr/sbin/mdnsd @ 0x48bf8 */
| #include <stdint.h>
|
; (fcn) sym.put_string () | void put_string () {
0x00048bf8 lui gp, 3 |
0x00048bfc addiu gp, gp, -0x3b88 |
0x00048c00 addu gp, gp, t9 | gp += t9;
0x00048c04 addiu sp, sp, -0x28 |
0x00048c08 sw gp, 0x10(sp) | *(var_10h) = gp;
0x00048c0c sw s1, 0x20(sp) | *(var_20h) = s1;
0x00048c10 sw s0, 0x1c(sp) | *(var_1ch) = s0;
0x00048c14 sw ra, 0x24(sp) | *(var_24h) = ra;
0x00048c18 move s1, a1 | s1 = a1;
0x00048c1c move s0, a0 | s0 = a0;
| if (a0 == 0) {
0x00048c20 bnez a0, 0x48c2c |
0x00048c24 lw s0, -0x7fc4(gp) | s0 = *(gp);
0x00048c28 addiu s0, s0, -0x3b88 | s0 += -0x3b88;
| }
0x00048c2c lw t9, -0x798c(gp) | t9 = sym.imp.strcpy
0x00048c30 lw a0, (s1) | a0 = *(s1);
0x00048c34 move a1, s0 | a1 = s0;
0x00048c38 jalr t9 | t9 ();
0x00048c3c lw gp, 0x10(sp) | gp = *(var_10h);
0x00048c40 lw t9, -0x79b8(gp) | t9 = sym.imp.strlen;
0x00048c44 move a0, s0 | a0 = s0;
0x00048c48 jalr t9 | t9 ();
0x00048c4c lw v1, (s1) | v1 = *(s1);
0x00048c50 lw ra, 0x24(sp) | ra = *(var_24h);
0x00048c54 addiu v0, v0, 1 | v0++;
0x00048c58 addu v1, v1, v0 | v1 += v0;
0x00048c5c lw s0, 0x1c(sp) | s0 = *(var_1ch);
0x00048c60 sw v1, (s1) | *(s1) = v1;
0x00048c64 move v0, zero | v0 = 0;
0x00048c68 lw s1, 0x20(sp) | s1 = *(var_20h);
0x00048c6c addiu sp, sp, 0x28 |
0x00048c70 jr ra | return v0;
| }
[*] Function strcpy used 2 times mdnsd