[*] Binary protection state of libext2fs.so.2.4
Full RELRO Canary found NX enabled DSO No RPATH No RUNPATH No Symbols
[*] Function fprintf tear down of libext2fs.so.2.4
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-80367616.squashfs_v4_le_extract/usr/lib/libext2fs.so.2.4 @ 0x1fda4 */
| #include <stdint.h>
|
; (fcn) sym.ext2fs_get_array () | uint32_t ext2fs_get_array (int16_t arg2, int16_t arg3) {
| r1 = arg2;
| r2 = arg3;
| if (? >= ?) {
0x0001fda4 ldrmi r4, [r1], -fp, lsl 12 | r4 = *(r1);
| r1 += 12;
| }
| if (r0 != 0) {
0x0001fda8 cbz r0, 0x1fdb0 |
0x0001fdaa umull ip, r2, r3, r0 | ip:r2 = r3 * r0;
| if (r2 != 0) {
0x0001fdae cbnz r2, 0x1fdb8 | goto label_0;
| }
| }
0x0001fdb0 mul r0, r3, r0 | r0 = r3 * r0;
0x0001fdb4 b.w 0xbe64 | void (*0xbe64)() ();
| label_0:
0x0001fdb8 movw r0, 0xb746 |
0x0001fdbc movt r0, 0x7f2b | r0 = 0x7f2bb746;
0x0001fdc0 bx lr | return r0;
| }
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-80367616.squashfs_v4_le_extract/usr/lib/libext2fs.so.2.4 @ 0x1fdc4 */
| #include <stdint.h>
|
; (fcn) sym.ext2fs_get_arrayzero () | uint32_t ext2fs_get_arrayzero (int16_t arg2, int16_t arg3) {
| r1 = arg2;
| r2 = arg3;
| do {
0x0000c258 bx pc | return void (*pc)() ();
0x0001fdc4 mov r3, r1 | r3 = r1;
0x0001fdc6 mov r1, r2 | r1 = r2;
| if (r0 != 0) {
0x0001fdc8 cbz r0, 0x1fdd0 |
0x0001fdca umull ip, r2, r3, r0 | ip:r2 = r3 * r0;
| if (r2 != 0) {
0x0001fdce cbnz r2, 0x1fdd8 | goto label_0;
| }
| }
0x0001fdd0 mul r0, r3, r0 | r0 = r3 * r0;
0x0001fdd4 b.w 0xc258 |
| } while (1);
| label_0:
0x0001fdd8 movw r0, 0xb746 |
0x0001fddc movt r0, 0x7f2b | r0 = 0x7f2bb746;
0x0001fde0 bx lr | return r0;
| }
[*] Function fprintf used 1 times libext2fs.so.2.4