[*] Binary protection state of kmod
Full RELRO Canary found NX enabled PIE enabled No RPATH No RUNPATH No Symbols
[*] Function strcat tear down of kmod
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-80367616.squashfs_v4_le_extract/usr/bin/kmod @ 0xbb5c */
| #include <stdint.h>
|
; (fcn) fcn.0000bb5c () | void fcn_0000bb5c (int16_t arg1) {
| r0 = arg1;
0x0000bb5c push {r4, lr} |
0x0000bb5e mov r4, r0 | r4 = r0;
| if (r0 != 0) {
0x0000bb60 cbz r0, 0xbb82 |
0x0000bb62 ldr r0, [r0, 0xc] | r0 = *((r0 + 0xc));
| if (r0 == 0) {
0x0000bb64 cbz r0, 0xbb82 | goto label_0;
| }
0x0000bb66 ldr r3, [r4, 0x18] | r3 = *((r4 + 0x18));
| if (r3 == 0) {
0x0000bb68 cbz r3, 0xbb84 | goto label_1;
| }
0x0000bb6a ldrb r2, [r4, 4] | r2 = *((r4 + 4));
| if (r2 == 0) {
0x0000bb6c cbnz r2, 0xbb74 |
0x0000bb6e pop.w {r4, lr} |
0x0000bb72 bx r3 | return uint32_t (*r3)() ();
| }
0x0000bb74 ldr r0, [r4, 0x10] | r0 = *((r4 + 0x10));
0x0000bb76 blx 0x1cb0 | fcn_00001cb0 ();
0x0000bb7a ldr r3, [r4, 0x18] | r3 = *((r4 + 0x18));
0x0000bb7c ldr r0, [r4, 0xc] | r0 = *((r4 + 0xc));
0x0000bb7e blx r3 | uint32_t (*r3)(uint32_t, uint32_t) (r0, r3);
0x0000bb80 str r0, [r4, 0x10] | *((r4 + 0x10)) = r0;
| }
| label_0:
0x0000bb82 pop {r4, pc} |
| label_1:
0x0000bb84 mov r0, r3 | r0 = r3;
0x0000bb86 pop {r4, pc} |
| }
[*] Function strcat used 1 times kmod