[*] Binary protection state of libip6tc.so.0.1.0

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


[*] Function printf tear down of libip6tc.so.0.1.0

    ; 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/lib/libip6tc.so.0.1.0 @ 0x1734 */
                                                             | #include <stdint.h>
                                                             |  
    ; (fcn) sym.dump_entries6 ()                             | void dump_entries6 (int32_t arg1) {
                                                             |     int32_t var_0h;
                                                             |     int32_t var_4h;
                                                             |     int32_t var_ch;
                                                             |     char * s;
                                                             |     int32_t var_3ch;
                                                             |     r0 = arg1;
    0x00001734 push {r4, r5, r6, r7, r8, sb, sl, fp, lr}     |     
    0x00001738 ldr r8, [pc, 0x4f4]                           |     r8 = *(0x1c30);
    0x0000173c ldr r3, [pc, 0x4f4]                           |     r3 = *(0x1c34);
    0x00001740 add r8, pc, r8                                |     r8 = pc + r8;
    0x00001744 ldr r2, [r8, r3]                              |     r2 = *(0x1c30);
    0x00001748 ldr r3, [pc, 0x4ec]                           |     r3 = *(0x1c38);
    0x0000174c mov r5, r0                                    |     r5 = r0;
    0x00001750 add r3, pc, r3                                |     r3 = pc + r3;
    0x00001754 str r2, [r3]                                  |     *(r3) = r2;
    0x00001758 ldr r1, [pc, 0x4e0]                           |     r1 = *(0x1c3c);
    0x0000175c ldr r3, [r0, 0x7c]                            |     r3 = *((r0 + 0x7c));
    0x00001760 ldr r0, [pc, 0x4dc]                           |     r0 = *(0x1c40);
    0x00001764 sub sp, sp, 0x3c                              |     
    0x00001768 ldr r2, [r3, 0x20]                            |     r2 = *(0x1c58);
    0x0000176c add r1, pc, r1                                |     r1 = pc + r1;
    0x00001770 add r0, pc, r0                                |     r0 = pc + r0;
    0x00001774 bl 0xef8                                      |     printf (r0, r1, r2, r3, r4, r5)
    0x00001778 ldr r0, [pc, 0x4c8]                           |     r0 = *(0x1c44);
    0x0000177c add r1, r5, 0x28                              |     r1 = r5 + 0x28;
    0x00001780 add r0, pc, r0                                |     r0 = pc + r0;
    0x00001784 bl 0xef8                                      |     printf (r0, r1)
    0x00001788 ldr r3, [r5, 0x5c]                            |     r3 = *((r5 + 0x5c));
    0x0000178c ldr r0, [pc, 0x4b8]                           |     r0 = *(0x1c48);
    0x00001790 str r3, [sp, 4]                               |     var_4h = r3;
    0x00001794 ldr r3, [r5, 0x58]                            |     r3 = *((r5 + 0x58));
    0x00001798 add r1, r5, 0x4c                              |     r1 = r5 + 0x4c;
    0x0000179c str r3, [sp]                                  |     *(sp) = r3;
    0x000017a0 add r0, pc, r0                                |     r0 = pc + r0;
    0x000017a4 ldm r1, {r1, r2, r3}                          |     r1 = *(r1);
                                                             |     r2 = *((r1 + 4));
                                                             |     r3 = *((r1 + 8));
    0x000017a8 bl 0xef8                                      |     printf (r0, r1, r2, r3)
    0x000017ac ldr r3, [r5, 0x70]                            |     r3 = *((r5 + 0x70));
    0x000017b0 ldr r0, [pc, 0x498]                           |     r0 = *(0x1c4c);
    0x000017b4 str r3, [sp, 4]                               |     var_4h = r3;
    0x000017b8 ldr r3, [r5, 0x6c]                            |     r3 = *((r5 + 0x6c));
    0x000017bc add r1, r5, 0x60                              |     r1 = r5 + 0x60;
    0x000017c0 str r3, [sp]                                  |     *(sp) = r3;
    0x000017c4 add r0, pc, r0                                |     r0 = pc + r0;
    0x000017c8 ldm r1, {r1, r2, r3}                          |     r1 = *(r1);
                                                             |     r2 = *((r1 + 4));
                                                             |     r3 = *((r1 + 8));
    0x000017cc bl 0xef8                                      |     printf (r0, r1, r2, r3)
    0x000017d0 ldr sl, [pc, 0x47c]                           |     sl = *(0x00001c54);
    0x000017d4 ldr fp, [pc, 0x47c]                           |     fp = *(0x00001c58);
    0x000017d8 mov r7, 0                                     |     r7 = 0;
    0x000017dc add sl, pc, sl                                |     sl = pc + sl;
    0x000017e0 add fp, pc, fp                                |     
                                                             | label_0:
    0x000017e4 ldr r3, [r5, 0x7c]                            |     r3 = *((r5 + 0x7c));
    0x000017e8 ldr r0, [r3, 0x20]                            |     r0 = *((r3 + 0x20));
    0x000017ec cmp r0, r7                                    |     
                                                             |     if (r0 <= r7) {
    0x000017f0 bhi 0x17fc                                    |         
    0x000017f4 add sp, sp, 0x3c                              |         
    0x000017f8 pop {r4, r5, r6, r7, r8, sb, sl, fp, pc}      |         
                                                             |     }
    0x000017fc add r3, r3, 0x28                              |     r3 += 0x28;
    0x00001800 mov r1, 0                                     |     r1 = 0;
    0x00001804 add r4, r3, r7                                |     r4 = r3 + r7;
    0x00001808 mov r2, r1                                    |     r2 = r1;
                                                             |     do {
    0x0000180c cmp r0, r2                                    |         
                                                             |         if (r0 <= r2) {
    0x00001810 bhi 0x1834                                    |             
    0x00001814 ldr r3, [pc, 0x440]                           |             r3 = *(0x1c58);
    0x00001818 ldr r1, [pc, 0x440]                           |             r1 = *(0x1c5c);
    0x0000181c ldr r3, [r8, r3]                              |             r3 = *((r8 + r3));
    0x00001820 mov r2, r7                                    |             r2 = r7;
    0x00001824 add r1, pc, r1                                |             r1 = pc + r1;
    0x00001828 ldr r0, [r3]                                  |             r0 = *(0x1c58);
    0x0000182c bl 0xf7c                                      |             r0 = fprintf (r0, r1, r2, r3)
    0x00001830 bl 0xf64                                      |             abort ();
                                                             |         }
    0x00001834 add ip, r3, r2                                |         
    0x00001838 cmp r4, ip                                    |         
                                                             |         if (r4 == ip) {
    0x0000183c beq 0x1bdc                                    |             goto label_11;
                                                             |         }
    0x00001840 ldrh ip, [ip, 0x8e]                           |         ip = *((ip + 0x8e));
    0x00001844 add r1, r1, 1                                 |         r1++;
    0x00001848 add r2, r2, ip                                |         r2 += ip;
    0x0000184c b 0x180c                                      |         
                                                             |     } while (1);
                                                             | label_10:
    0x00001850 ldr r3, [r1, 0x10]                            |     r3 = *((r1 + 0x10));
    0x00001854 ldr r2, [r1, 0x1c]                            |     r2 = *((r1 + 0x1c));
    0x00001858 cmp r3, r2                                    |     
                                                             |     if (r3 >= r2) {
    0x0000185c bhs 0x1adc                                    |         goto label_12;
                                                             |     }
    0x00001860 add r2, r3, 1                                 |     r2 = r3 + 1;
    0x00001864 str r2, [r1, 0x10]                            |     *((r1 + 0x10)) = r2;
    0x00001868 mov r2, 0x2f                                  |     r2 = 0x2f;
    0x0000186c strb r2, [r3]                                 |     *(r3) = r2;
                                                             | label_1:
    0x00001870 add r1, r4, 0x20                              |     r1 = r4 + 0x20;
    0x00001874 mov r0, r1                                    |     r0 = r1;
    0x00001878 str r1, [sp, 0xc]                             |     var_ch = r1;
    0x0000187c bl 0x16b8                                     |     fcn_000016b8 (r0);
    0x00001880 ldr r1, [sp, 0xc]                             |     r1 = var_ch;
    0x00001884 cmn r0, 1                                     |     
                                                             |     if (r0 == 1) {
    0x00001888 beq 0x1ae8                                    |         goto label_13;
                                                             |     }
    0x0000188c mov r1, r0                                    |     r1 = r0;
    0x00001890 ldr r0, [pc, 0x3cc]                           |     r0 = *(0x1c60);
    0x00001894 add r0, pc, r0                                |     r0 = pc + r0;
    0x00001898 bl 0xef8                                      |     printf (r0, r1)
                                                             | label_2:
    0x0000189c ldr r1, [sb]                                  |     r1 = *(sb);
    0x000018a0 ldr r3, [r1, 0x34]                            |     r3 = *((r1 + 0x34));
    0x000018a4 cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x000018a8 beq 0x1b10                                    |         goto label_14;
                                                             |     }
    0x000018ac ldr r3, [r1, 0x10]                            |     r3 = *((r1 + 0x10));
    0x000018b0 ldr r2, [r1, 0x1c]                            |     r2 = *((r1 + 0x1c));
    0x000018b4 cmp r3, r2                                    |     
                                                             |     if (r3 >= r2) {
    0x000018b8 bhs 0x1b04                                    |         goto label_15;
                                                             |     }
    0x000018bc add r2, r3, 1                                 |     r2 = r3 + 1;
    0x000018c0 str r2, [r1, 0x10]                            |     *((r1 + 0x10)) = r2;
    0x000018c4 mov r2, 0xa                                   |     r2 = 0xa;
    0x000018c8 strb r2, [r3]                                 |     *(r3) = r2;
                                                             | label_3:
    0x000018cc ldr r0, [pc, 0x394]                           |     r0 = *(0x1c64);
    0x000018d0 add r0, pc, r0                                |     r0 = pc + r0;
    0x000018d4 bl 0xf34                                      |     puts (r0);
    0x000018d8 mov r3, 0x28                                  |     r3 = 0x28;
    0x000018dc add r1, r4, 0x10                              |     r1 = r4 + 0x10;
    0x000018e0 mov r2, r6                                    |     r2 = r6;
    0x000018e4 mov r0, 0xa                                   |     r0 = 0xa;
    0x000018e8 bl 0x1000                                     |     inet_ntop ();
    0x000018ec mov r0, r6                                    |     r0 = r6;
    0x000018f0 bl 0xf34                                      |     puts (r0);
    0x000018f4 ldr r1, [sb]                                  |     r1 = *(sb);
    0x000018f8 ldr r3, [r1, 0x34]                            |     r3 = *((r1 + 0x34));
    0x000018fc cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x00001900 beq 0x1b28                                    |         goto label_16;
                                                             |     }
    0x00001904 ldr r3, [r1, 0x10]                            |     r3 = *((r1 + 0x10));
    0x00001908 ldr r2, [r1, 0x1c]                            |     r2 = *((r1 + 0x1c));
    0x0000190c cmp r3, r2                                    |     
                                                             |     if (r3 >= r2) {
    0x00001910 bhs 0x1b1c                                    |         goto label_17;
                                                             |     }
    0x00001914 add r2, r3, 1                                 |     r2 = r3 + 1;
    0x00001918 str r2, [r1, 0x10]                            |     *((r1 + 0x10)) = r2;
    0x0000191c mov r2, 0x2f                                  |     r2 = 0x2f;
    0x00001920 strb r2, [r3]                                 |     *(r3) = r2;
                                                             | label_4:
    0x00001924 add r1, r4, 0x30                              |     r1 = r4 + 0x30;
    0x00001928 mov r0, r1                                    |     r0 = r1;
    0x0000192c str r1, [sp, 0xc]                             |     var_ch = r1;
    0x00001930 bl 0x16b8                                     |     fcn_000016b8 (r0);
    0x00001934 ldr r1, [sp, 0xc]                             |     r1 = var_ch;
    0x00001938 cmn r0, 1                                     |     
                                                             |     if (r0 == 1) {
    0x0000193c beq 0x1b34                                    |         goto label_18;
                                                             |     }
    0x00001940 mov r1, r0                                    |     r1 = r0;
    0x00001944 ldr r0, [pc, 0x320]                           |     r0 = *(0x1c68);
    0x00001948 add r0, pc, r0                                |     r0 = pc + r0;
    0x0000194c bl 0xef8                                      |     printf (r0, r1)
                                                             | label_5:
    0x00001950 ldr r1, [sb]                                  |     r1 = *(sb);
    0x00001954 ldr r3, [r1, 0x34]                            |     r3 = *((r1 + 0x34));
    0x00001958 cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x0000195c beq 0x1b5c                                    |         goto label_19;
                                                             |     }
    0x00001960 ldr r3, [r1, 0x10]                            |     r3 = *((r1 + 0x10));
    0x00001964 ldr r2, [r1, 0x1c]                            |     r2 = *((r1 + 0x1c));
    0x00001968 cmp r3, r2                                    |     
                                                             |     if (r3 >= r2) {
    0x0000196c bhs 0x1b50                                    |         goto label_20;
                                                             |     }
    0x00001970 add r2, r3, 1                                 |     r2 = r3 + 1;
    0x00001974 str r2, [r1, 0x10]                            |     *((r1 + 0x10)) = r2;
    0x00001978 mov r2, 0xa                                   |     r2 = 0xa;
    0x0000197c strb r2, [r3]                                 |     *(r3) = r2;
                                                             | label_6:
    0x00001980 ldr r0, [pc, 0x2e8]                           |     r0 = *(0x1c6c);
    0x00001984 add r1, r4, 0x40                              |     r1 = r4 + 0x40;
    0x00001988 add r0, pc, r0                                |     r0 = pc + r0;
    0x0000198c bl 0xef8                                      |     printf (r0, r1, r2)
    0x00001990 add sb, r4, 0x60                              |     sb = r4 + 0x60;
    0x00001994 add r6, r4, 0x70                              |     r6 = r4 + 0x70;
                                                             |     do {
    0x00001998 ldrb r3, [sb], 1                              |         r3 = *(sb);
                                                             |         sb++;
    0x0000199c cmp r3, 0                                     |         
                                                             |         if (r3 != 0) {
    0x000019a0 moveq r0, 0x2e                                |             r0 = 0x2e;
                                                             |         }
                                                             |         if (r3 == 0) {
    0x000019a4 movne r0, 0x58                                |             r0 = 0x58;
                                                             |         }
    0x000019a8 bl 0xee0                                      |         putchar (r0);
    0x000019ac cmp r6, sb                                    |         
    0x000019b0 bne 0x1998                                    |         
                                                             |     } while (r6 != sb);
    0x000019b4 ldr r0, [pc, 0x2b8]                           |     r0 = *(0x1c70);
    0x000019b8 add r1, r4, 0x50                              |     r1 = r4 + 0x50;
    0x000019bc add r0, pc, r0                                |     r0 = pc + r0;
    0x000019c0 bl 0xef8                                      |     printf (r0, r1)
    0x000019c4 add sb, r4, 0x80                              |     sb = r4 + 0x80;
                                                             |     do {
    0x000019c8 ldrb r3, [r6], 1                              |         r3 = *(r6);
                                                             |         r6++;
    0x000019cc cmp r3, 0                                     |         
                                                             |         if (r3 != 0) {
    0x000019d0 moveq r0, 0x2e                                |             r0 = 0x2e;
                                                             |         }
                                                             |         if (r3 == 0) {
    0x000019d4 movne r0, 0x58                                |             r0 = 0x58;
                                                             |         }
    0x000019d8 bl 0xee0                                      |         putchar (r0);
    0x000019dc cmp sb, r6                                    |         
    0x000019e0 bne 0x19c8                                    |         
                                                             |     } while (sb != r6);
    0x000019e4 ldr r0, [pc, 0x28c]                           |     r0 = *(0x1c74);
    0x000019e8 ldrh r1, [r4, 0x80]                           |     r1 = *((r4 + 0x80));
    0x000019ec add r0, pc, r0                                |     r0 = pc + r0;
    0x000019f0 bl 0xef8                                      |     printf (r0, r1)
    0x000019f4 ldrb r3, [r4, 0x83]                           |     r3 = *((r4 + 0x83));
    0x000019f8 tst r3, 2                                     |     
                                                             |     if ((r3 & 2) != 0) {
    0x000019fc beq 0x1a10                                    |         
    0x00001a00 ldr r0, [pc, 0x274]                           |         r0 = *(0x1c78);
    0x00001a04 ldrb r1, [r4, 0x82]                           |         r1 = *((r4 + 0x82));
    0x00001a08 add r0, pc, r0                                |         r0 = pc + r0;
    0x00001a0c bl 0xef8                                      |         printf (r0, r1)
                                                             |     }
    0x00001a10 ldr r0, [pc, 0x268]                           |     r0 = *(0x1c7c);
    0x00001a14 ldrb r1, [r4, 0x83]                           |     r1 = *((r4 + 0x83));
    0x00001a18 add r0, pc, r0                                |     r0 = pc + r0;
    0x00001a1c bl 0xef8                                      |     printf (r0, r1)
    0x00001a20 ldr r0, [pc, 0x25c]                           |     r0 = *(0x1c80);
    0x00001a24 ldrb r1, [r4, 0x84]                           |     r1 = *((r4 + 0x84));
    0x00001a28 add r0, pc, r0                                |     r0 = pc + r0;
    0x00001a2c bl 0xef8                                      |     printf (r0, r1)
    0x00001a30 ldrd r0, r1, [r4, 0xa0]                       |     __asm ("ldrd r0, r1, [r4, 0xa0]");
    0x00001a34 ldrd r2, r3, [r4, 0x98]                       |     __asm ("ldrd r2, r3, [r4, 0x98]");
    0x00001a38 strd r0, r1, [sp]                             |     __asm ("strd r0, r1, [sp]");
    0x00001a3c ldr r0, [pc, 0x244]                           |     r0 = *(0x1c84);
    0x00001a40 mov r6, 0xa8                                  |     r6 = 0xa8;
    0x00001a44 add r0, pc, r0                                |     r0 = pc + r0;
    0x00001a48 bl 0xef8                                      |     printf (r0, r1, r2, r3, r4, r5, r6)
    0x00001a4c ldr r0, [pc, 0x238]                           |     r0 = *(0x1c88);
    0x00001a50 ldr r1, [r4, 0x88]                            |     r1 = *((r4 + 0x88));
    0x00001a54 add r0, pc, r0                                |     r0 = pc + r0;
    0x00001a58 bl 0xef8                                      |     printf (r0, r1)
                                                             |     do {
    0x00001a5c ldrh r3, [r4, 0x8c]                           |         r3 = *((r4 + 0x8c));
    0x00001a60 cmp r6, r3                                    |         
                                                             |         if (r6 > r3) {
    0x00001a64 blo 0x1b68                                    |             
    0x00001a68 ldr r0, [pc, 0x220]                           |             r0 = *(0x1c8c);
    0x00001a6c add r6, r4, r3                                |             r6 = r4 + r3;
    0x00001a70 add sb, r6, 2                                 |             sb = r6 + 2;
    0x00001a74 ldrh r2, [r4, r3]                             |             r2 = *((r4 + r3));
    0x00001a78 mov r1, sb                                    |             r1 = sb;
    0x00001a7c add r0, pc, r0                                |             r0 = pc + r0;
    0x00001a80 bl 0xef8                                      |             printf (r0, r1, r2, r3, r4, r5, r6)
    0x00001a84 ldrb r3, [r6, 2]                              |             r3 = *((r6 + 2));
    0x00001a88 cmp r3, 0                                     |             
                                                             |             if (r3 != 0) {
    0x00001a8c bne 0x1bb4                                    |                 goto label_21;
                                                             |             }
    0x00001a90 ldr r1, [r6, 0x20]                            |             r1 = *((r6 + 0x20));
    0x00001a94 cmp r1, 0                                     |             
                                                             |             if (r1 >= 0) {
    0x00001a98 bge 0x1ba8                                    |                 goto label_22;
                                                             |             }
    0x00001a9c cmn r1, 2                                     |             
                                                             |             if (r1 == 2) {
    0x00001aa0 beq 0x1b84                                    |                 goto label_23;
                                                             |             }
    0x00001aa4 cmn r1, 1                                     |             
                                                             |             if (r1 == 1) {
    0x00001aa8 beq 0x1b90                                    |                 goto label_24;
                                                             |             }
    0x00001aac cmn r1, 5                                     |             
                                                             |             if (r1 != 5) {
    0x00001ab0 bne 0x1b9c                                    |                 goto label_25;
                                                             |             }
    0x00001ab4 ldr r1, [pc, 0x1d8]                           |             r1 = *(0x1c90);
    0x00001ab8 add r1, pc, r1                                |             r1 = pc + r1;
                                                             | label_7:
    0x00001abc ldr r0, [pc, 0x1d4]                           |             r0 = *(0x1c94);
    0x00001ac0 add r0, pc, r0                                |             r0 = pc + r0;
                                                             | label_8:
    0x00001ac4 bl 0xef8                                      |             printf (r0, r1)
                                                             | label_9:
    0x00001ac8 mov r0, 0xa                                   |             r0 = 0xa;
    0x00001acc bl 0xee0                                      |             putchar (r0);
    0x00001ad0 ldrh r3, [r4, 0x8e]                           |             r3 = *((r4 + 0x8e));
    0x00001ad4 add r7, r7, r3                                |             r7 += r3;
    0x00001ad8 b 0x17e4                                      |             goto label_0;
                                                             | label_12:
    0x00001adc mov r0, 0x2f                                  |             r0 = 0x2f;
    0x00001ae0 bl 0x1048                                     |             fputc_unlocked ();
    0x00001ae4 b 0x1870                                      |             goto label_1;
                                                             | label_13:
    0x00001ae8 mov r3, 0x28                                  |             r3 = 0x28;
    0x00001aec mov r2, r6                                    |             r2 = r6;
    0x00001af0 mov r0, 0xa                                   |             r0 = 0xa;
    0x00001af4 bl 0x1000                                     |             inet_ntop ();
    0x00001af8 mov r0, r6                                    |             r0 = r6;
    0x00001afc bl 0xf34                                      |             puts (r0);
    0x00001b00 b 0x189c                                      |             goto label_2;
                                                             | label_15:
    0x00001b04 mov r0, 0xa                                   |             r0 = 0xa;
    0x00001b08 bl 0x1048                                     |             fputc_unlocked ();
    0x00001b0c b 0x18cc                                      |             goto label_3;
                                                             | label_14:
    0x00001b10 mov r0, 0xa                                   |             r0 = 0xa;
    0x00001b14 bl 0xfdc                                      |             fputc (r0, r1);
    0x00001b18 b 0x18cc                                      |             goto label_3;
                                                             | label_17:
    0x00001b1c mov r0, 0x2f                                  |             r0 = 0x2f;
    0x00001b20 bl 0x1048                                     |             fputc_unlocked ();
    0x00001b24 b 0x1924                                      |             goto label_4;
                                                             | label_16:
    0x00001b28 mov r0, 0x2f                                  |             r0 = 0x2f;
    0x00001b2c bl 0xfdc                                      |             fputc (r0, r1);
    0x00001b30 b 0x1924                                      |             goto label_4;
                                                             | label_18:
    0x00001b34 mov r3, 0x28                                  |             r3 = 0x28;
    0x00001b38 mov r2, r6                                    |             r2 = r6;
    0x00001b3c mov r0, 0xa                                   |             r0 = 0xa;
    0x00001b40 bl 0x1000                                     |             inet_ntop ();
    0x00001b44 mov r0, r6                                    |             r0 = r6;
    0x00001b48 bl 0xf34                                      |             puts (r0);
    0x00001b4c b 0x1950                                      |             goto label_5;
                                                             | label_20:
    0x00001b50 mov r0, 0xa                                   |             r0 = 0xa;
    0x00001b54 bl 0x1048                                     |             fputc_unlocked ();
    0x00001b58 b 0x1980                                      |             goto label_6;
                                                             | label_19:
    0x00001b5c mov r0, 0xa                                   |             r0 = 0xa;
    0x00001b60 bl 0xfdc                                      |             fputc (r0, r1);
    0x00001b64 b 0x1980                                      |             goto label_6;
                                                             |         }
    0x00001b68 add r1, r4, r6                                |         r1 = r4 + r6;
    0x00001b6c add r1, r1, 2                                 |         r1 += 2;
    0x00001b70 mov r0, fp                                    |         r0 = fp;
    0x00001b74 bl 0xef8                                      |         printf (r0, r1)
    0x00001b78 ldrh r3, [r4, r6]                             |         r3 = *((r4 + r6));
    0x00001b7c add r6, r6, r3                                |         r6 += r3;
    0x00001b80 b 0x1a5c                                      |         
                                                             |     } while (1);
                                                             | label_23:
    0x00001b84 ldr r1, [pc, 0x110]                           |     r1 = *(0x1c98);
    0x00001b88 add r1, pc, r1                                |     r1 = pc + r1;
    0x00001b8c b 0x1abc                                      |     goto label_7;
                                                             | label_24:
    0x00001b90 ldr r1, [pc, 0x108]                           |     r1 = *(0x1c9c);
    0x00001b94 add r1, pc, r1                                |     r1 = pc + r1;
    0x00001b98 b 0x1abc                                      |     goto label_7;
                                                             | label_25:
    0x00001b9c ldr r1, [pc, 0x100]                           |     r1 = *(0x1ca0);
    0x00001ba0 add r1, pc, r1                                |     r1 = pc + r1;
    0x00001ba4 b 0x1abc                                      |     goto label_7;
                                                             | label_22:
    0x00001ba8 ldr r0, [pc, 0xf8]                            |     r0 = *(0x1ca4);
    0x00001bac add r0, pc, r0                                |     r0 = pc + r0;
    0x00001bb0 b 0x1ac4                                      |     goto label_8;
                                                             | label_21:
    0x00001bb4 ldr r1, [pc, 0xf0]                            |     r1 = *(0x1ca8);
    0x00001bb8 mov r0, sb                                    |     r0 = sb;
    0x00001bbc add r1, pc, r1                                |     r1 = pc + r1;
    0x00001bc0 bl 0xfc4                                      |     r0 = strcmp (r0, r1);
    0x00001bc4 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x00001bc8 bne 0x1ac8                                    |         goto label_9;
                                                             |     }
    0x00001bcc ldr r0, [pc, 0xdc]                            |     r0 = *(0x1cac);
    0x00001bd0 add r1, r6, 0x20                              |     r1 = r6 + 0x20;
    0x00001bd4 add r0, pc, r0                                |     r0 = pc + r0;
    0x00001bd8 b 0x1ac4                                      |     goto label_8;
                                                             | label_11:
    0x00001bdc mov r0, sl                                    |     r0 = sl;
    0x00001be0 bl 0xef8                                      |     printf (r0)
    0x00001be4 ldr r0, [pc, 0xc8]                            |     r0 = *(0x1cb0);
    0x00001be8 add r6, sp, 0x10                              |     r6 += s;
    0x00001bec add r0, pc, r0                                |     r0 = pc + r0;
    0x00001bf0 bl 0xf34                                      |     puts (r0);
    0x00001bf4 mov r3, 0x28                                  |     r3 = 0x28;
    0x00001bf8 mov r1, r4                                    |     r1 = r4;
    0x00001bfc mov r2, r6                                    |     r2 = r6;
    0x00001c00 mov r0, 0xa                                   |     r0 = 0xa;
    0x00001c04 bl 0x1000                                     |     inet_ntop ();
    0x00001c08 mov r0, r6                                    |     r0 = r6;
    0x00001c0c bl 0xf34                                      |     puts (r0);
    0x00001c10 ldr r3, [pc, 0xa0]                            |     r3 = *(0x1cb4);
    0x00001c14 ldr sb, [r8, r3]                              |     sb = *((r8 + r3));
    0x00001c18 ldr r1, [sb]                                  |     r1 = *(sb);
    0x00001c1c ldr r3, [r1, 0x34]                            |     r3 = *((r1 + 0x34));
    0x00001c20 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00001c24 bne 0x1850                                    |         goto label_10;
                                                             |     }
    0x00001c28 mov r0, 0x2f                                  |     r0 = 0x2f;
    0x00001c2c bl 0xfdc                                      |     fputc (r0, r1);
    0x00001c30 b 0x1870                                      |     goto label_1;
                                                             | }

[*] Function printf used 20 times libip6tc.so.0.1.0