[*] Binary protection state of gdbserver
Full RELRO No Canary found NX enabled No PIE No RPATH No RUNPATH No Symbols
[*] Function printf tear down of gdbserver
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/unblob_extracted/firmware_extract/1568982-13971496.squashfs_v4_le_extract/usr/bin/gdbserver @ 0x42d824 */
| #include <stdint.h>
|
; (fcn) method.std.__throw_out_of_range_fmt_char_const__..._ () | void method_std_throw_out_of_range_fmt_char_const_ () {
| /* std::__throw_out_of_range_fmt(char const*, ...) */
0x0042d824 lui gp, 4 |
0x0042d828 addiu gp, gp, 0x3f5c |
0x0042d82c addu gp, gp, t9 | gp += t9;
0x0042d830 addiu sp, sp, -0x30 |
0x0042d834 lw t9, -0x7edc(gp) | t9 = *((gp - 8119));
0x0042d838 sw fp, 0x28(sp) | *(var_28h) = fp;
0x0042d83c move fp, sp | fp = sp;
0x0042d840 sw ra, 0x2c(sp) | *(var_2ch) = ra;
0x0042d844 sw s1, 0x24(sp) | *(var_24h_3) = s1;
0x0042d848 sw s0, 0x20(sp) | *(var_20h_3) = s0;
0x0042d84c sw gp, 0x10(sp) | *(var_10h_3) = gp;
0x0042d850 sw a1, 0x34(fp) | *(arg_34h) = a1;
0x0042d854 sw a2, 0x38(fp) | *(arg_38h) = a2;
0x0042d858 sw a3, 0x3c(fp) | *(arg_3ch) = a3;
0x0042d85c move s0, a0 | s0 = a0;
0x0042d860 jalr t9 | t9 ();
0x0042d864 addiu v1, v0, 0x20e | v1 = v0 + 0x20e;
0x0042d868 lw gp, 0x10(fp) | gp = *(var_10h_3);
0x0042d86c srl v1, v1, 3 | v1 >>= 3;
0x0042d870 sll v1, v1, 3 | v1 <<= 3;
0x0042d874 subu sp, sp, v1 |
0x0042d878 addiu a3, fp, 0x34 | a3 = fp + 0x34;
0x0042d87c lw t9, -0x7ed8(gp) | t9 = *(gp);
0x0042d880 addiu s1, sp, 0x10 | s1 = sp + 0x10;
0x0042d884 move a2, s0 | a2 = s0;
0x0042d888 addiu a1, v0, 0x200 | a1 = v0 + 0x200;
0x0042d88c sw a3, 0x18(fp) | *(arg_18h) = a3;
0x0042d890 move a0, s1 | a0 = s1;
0x0042d894 bal 0x42f59c | method ();
0x0042d898 lw gp, 0x10(fp) | gp = *(var_10h_3);
0x0042d89c lw t9, -0x7fcc(gp) | t9 = sym.__cxa_allocate_exception;
0x0042d8a0 addiu a0, zero, 8 | a0 = 8;
0x0042d8a4 bal 0x42cdac | sym_cxa_allocate_exception ();
0x0042d8a8 lw gp, 0x10(fp) | gp = *(var_10h_3);
0x0042d8ac move a1, s1 | a1 = s1;
0x0042d8b0 move a0, v0 | a0 = v0;
0x0042d8b4 lw t9, -0x7ed4(gp) | t9 = *(gp);
0x0042d8b8 move s0, v0 | s0 = v0;
0x0042d8bc bal 0x42f3f4 | method ();
0x0042d8c0 lw gp, 0x10(fp) | gp = *(var_10h_3);
0x0042d8c4 lw a2, -0x7ed0(gp) | a2 = *(gp);
0x0042d8c8 lw a1, -0x7ecc(gp) | a1 = *(gp);
0x0042d8cc lw t9, -0x7fc4(gp) | t9 = sym.__cxa_throw;
0x0042d8d0 move a0, s0 | a0 = s0;
0x0042d8d4 bal 0x42a42c | sym_cxa_throw ();
0x0042d8d8 lw gp, 0x10(fp) | gp = *(var_10h_3);
0x0042d8dc move s1, a0 | s1 = a0;
0x0042d8e0 lw t9, -0x7f8c(gp) | t9 = sym.__cxa_free_exception;
0x0042d8e4 move a0, s0 | a0 = s0;
0x0042d8e8 bal 0x42ce3c | sym_cxa_free_exception ();
0x0042d8ec lw gp, 0x10(fp) | gp = *(var_10h_3);
0x0042d8f0 lw t9, -0x7fbc(gp) | t9 = *((gp - 8175));
0x0042d8f4 move a0, s1 | a0 = s1;
0x0042d8f8 jalr t9 | return t9 ();
| }
[*] Function printf used 1 times gdbserver