[*] Binary protection state of ntpd

  
  	Partial RELRO  No Canary found   NX disabled  No PIE       No RPATH     No RUNPATH   No Symbols


[*] Function fprintf tear down of ntpd

    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/56048-12514271.gzip_extract/gzip.uncompressed_extract/5243916-15068666.gzip_extract/gzip.uncompressed_extract/usr/sbin/ntpd @ 0x60710 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) aav.0x00060710 ()            | void aav_0x00060710 (int32_t arg1, int32_t arg2) {
                                         |     r0 = arg1;
                                         |     r1 = arg2;
    0x00060710 push {r4, r5, r6, lr}     |     
    0x00060714 ldr r4, [pc, 0x40]        |     r4 = *(0x60758);
    0x00060718 mov r5, r2                |     r5 = r2;
    0x0006071c mov r6, r3                |     r6 = r3;
    0x00060720 mov r2, r0                |     r2 = r0;
    0x00060724 mov r3, r1                |     r3 = r1;
    0x00060728 ldr r0, [r4]              |     r0 = *(0x60758);
    0x0006072c ldr r1, [pc, 0x2c]        |     r1 = stderr;
    0x00060730 bl 0x150dc                |     fprintf (r0, r1, r2, r3, r4, r5, r6)
    0x00060734 mov r2, r6                |     r2 = r6;
    0x00060738 mov r1, r5                |     r1 = r5;
    0x0006073c ldr r0, [r4]              |     r0 = *(0x60758);
    0x00060740 bl 0x14848                |     vfprintf (r0, r1, r2)
    0x00060744 ldr r1, [r4]              |     r1 = *(0x60758);
    0x00060748 mov r0, 0xa               |     r0 = 0xa;
    0x0006074c bl 0x14e54                |     fputc (r0, r1);
    0x00060750 ldr r0, [r4]              |     r0 = *(0x60758);
    0x00060754 pop {r4, r5, r6, lr}      |     
    0x00060758 b 0x15028                 |     return void (*0x15028)() ();
                                         | }
    ; assembly                                                   | /* r2dec pseudo code output */
                                                                 | /* /logs/firmware/unblob_extracted/firmware_extract/56048-12514271.gzip_extract/gzip.uncompressed_extract/5243916-15068666.gzip_extract/gzip.uncompressed_extract/usr/sbin/ntpd @ 0x60764 */
                                                                 | #include <stdint.h>
                                                                 |  
    ; (fcn) aav.0x00060764 ()                                    | void aav_0x00060764 (int32_t arg1, int32_t arg2) {
                                                                 |     int32_t var_0h;
                                                                 |     int32_t var_ch;
                                                                 |     r0 = arg1;
                                                                 |     r1 = arg2;
    0x00060764 push {r0, r1, r2, r4, r5, r6, r7, r8, sb, lr}     |     
    0x00060768 ldr r4, [pc, 0x6c]                                |     r4 = *(0x607d8);
    0x0006076c mov r8, r0                                        |     r8 = r0;
    0x00060770 ldr r0, [pc, 0x68]                                |     
    0x00060774 mov sb, r1                                        |     sb = r1;
    0x00060778 mov r5, r2                                        |     r5 = r2;
    0x0006077c mov r6, r3                                        |     r6 = r3;
    0x00060780 mov r2, 0x6e                                      |     r2 = 0x6e;
    0x00060784 ldr r3, [pc, 0x58]                                |     r3 = *(0x607e0);
    0x00060788 mov r1, 1                                         |     r1 = 1;
    0x0006078c ldr r0, [r0]                                      |     r0 = stderr;
    0x00060790 ldr r7, [r4]                                      |     r7 = *(0x607d8);
    0x00060794 bl 0x63704                                        |     fcn_00063704 (r0, r1);
    0x00060798 mov r3, sb                                        |     r3 = sb;
    0x0006079c mov r2, r8                                        |     r2 = r8;
    0x000607a0 ldr r1, [pc, 0x40]                                |     r1 = "fatal_error";
    0x000607a4 str r0, [sp]                                      |     *(sp) = r0;
    0x000607a8 mov r0, r7                                        |     r0 = r7;
    0x000607ac bl 0x150dc                                        |     fprintf (r0, "fatal_error", r2, r3)
    0x000607b0 mov r2, r6                                        |     r2 = r6;
    0x000607b4 mov r1, r5                                        |     r1 = r5;
    0x000607b8 ldr r0, [r4]                                      |     r0 = *(0x607d8);
    0x000607bc bl 0x14848                                        |     vfprintf (r0, r1, r2)
    0x000607c0 ldr r1, [r4]                                      |     r1 = *(0x607d8);
    0x000607c4 mov r0, 0xa                                       |     r0 = 0xa;
    0x000607c8 bl 0x14e54                                        |     fputc (r0, r1);
    0x000607cc ldr r0, [r4]                                      |     r0 = *(0x607d8);
    0x000607d0 add sp, sp, 0xc                                   |     
    0x000607d4 pop {r4, r5, r6, r7, r8, sb, lr}                  |     
    0x000607d8 b 0x15028                                         |     return void (*0x15028)() ();
                                                                 | }
    ; assembly                           | /* r2dec pseudo code output */
                                         | /* /logs/firmware/unblob_extracted/firmware_extract/56048-12514271.gzip_extract/gzip.uncompressed_extract/5243916-15068666.gzip_extract/gzip.uncompressed_extract/usr/sbin/ntpd @ 0x59e04 */
                                         | #include <stdint.h>
                                         |  
    ; (fcn) fcn.00059e04 ()              | void fcn_00059e04 (int32_t arg1, int32_t arg2) {
                                         |     char * format;
                                         |     int32_t var_100h;
                                         |     r0 = arg1;
                                         |     r1 = arg2;
    0x00059e04 push {r4, r5, r6, lr}     |     
    0x00059e08 sub sp, sp, 0x100         |     
    0x00059e0c mov r6, r1                |     r6 = r1;
    0x00059e10 mov r5, r2                |     r5 = r2;
    0x00059e14 mov r4, r0                |     r4 = r0;
    0x00059e18 bl 0x1471c                |     errno_location ();
    0x00059e1c mov r2, r6                |     r2 = r6;
    0x00059e20 mov r1, 0x100             |     r1 = 0x100;
    0x00059e24 ldr r3, [r0]              |     r3 = *(r0);
    0x00059e28 mov r0, sp                |     r0 = sp;
    0x00059e2c bl 0x59b24                |     fcn_00059b24 (r0, r1);
    0x00059e30 mov r2, r5                |     r2 = r5;
    0x00059e34 mov r1, sp                |     r1 = sp;
    0x00059e38 mov r0, r4                |     r0 = r4;
    0x00059e3c bl 0x14848                |     vfprintf (r0, r1, r2)
    0x00059e40 add sp, sp, 0x100         |     
    0x00059e44 pop {r4, r5, r6, pc}      |     
                                         | }

[*] Function fprintf used 6 times ntpd