[*] Binary protection state of libaprutil-1.so.0.6.1

  
  	Full RELRO     Canary found      NX enabled   DSO          No RPATH     No RUNPATH   No Symbols


[*] Function fprintf tear down of libaprutil-1.so.0.6.1

    ; assembly                                               | /* r2dec pseudo code output */
                                                             | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/libaprutil-1.so.0.6.1 @ 0x7d5c */
                                                             | #include <stdint.h>
                                                             |  
    ; (fcn) sym.apr_brigade_writev ()                        | void apr_brigade_writev (int16_t arg_40h, int16_t arg1, int16_t arg2, int16_t arg3, int16_t arg4) {
                                                             |     int16_t var_0h;
                                                             |     int16_t var_4h;
                                                             |     int16_t var_8h;
                                                             |     int16_t var_ch;
                                                             |     int16_t var_10h;
                                                             |     int16_t var_14h;
                                                             |     r0 = arg1;
                                                             |     r1 = arg2;
                                                             |     r2 = arg3;
                                                             |     r3 = arg4;
    0x00007d5c svcmi 0xf0e92d                                |     __asm ("svcmi aav.0x000000ff");
    0x00007d60 sub sp, 0x1c                                  |     
    0x00007d62 mov r7, r3                                    |     r7 = r3;
    0x00007d64 ldr.w sb, [sp, 0x40]                          |     sb = *(arg_40h);
    0x00007d68 mov fp, r2                                    |     
    0x00007d6a adds r2, r0, 4                                |     r2 = r0 + 4;
    0x00007d6c ldr r3, [pc, 0x260]                           |     
    0x00007d6e mov r4, r0                                    |     r4 = r0;
    0x00007d70 str r2, [sp]                                  |     *(sp) = r2;
    0x00007d72 add r3, pc                                    |     r3 = 0xfd46;
    0x00007d74 cmp.w sb, 0                                   |     
                                                             |     if (sb == 0) {
    0x00007d78 beq 0x7e76                                    |         goto label_7;
                                                             |     }
    0x00007d7a lsl.w r5, sb, 3                               |     r5 = sb << 3;
    0x00007d7e mov r8, r1                                    |     r8 = r1;
    0x00007d80 mov r2, r7                                    |     r2 = r7;
    0x00007d82 movs r6, 0                                    |     r6 = 0;
    0x00007d84 adds r0, r7, r5                               |     r0 = r7 + r5;
                                                             |     do {
    0x00007d86 ldr r1, [r2, 4]                               |         r1 = *((r2 + 4));
    0x00007d88 adds r2, 8                                    |         r2 += 8;
    0x00007d8a cmp r0, r2                                    |         
    0x00007d8c add r6, r1                                    |         r6 += r1;
    0x00007d8e bne 0x7d86                                    |         
                                                             |     } while (r0 != r2);
    0x00007d90 cmp.w r6, 0x1f40                              |     
                                                             |     if (r6 < 0x1f40) {
    0x00007d94 bls 0x7dd2                                    |         goto label_8;
                                                             |     }
    0x00007d96 cmp.w r8, 0                                   |     
                                                             |     if (r8 == 0) {
    0x00007d9a beq 0x7e44                                    |         goto label_9;
                                                             |     }
    0x00007d9c ldr r6, [sp]                                  |     r6 = *(sp);
    0x00007d9e movs r5, 0                                    |     r5 = 0;
    0x00007da0 add.w sl, r7, 4                               |     sl = r7 + 4;
                                                             |     do {
    0x00007da4 ldr.w r1, [sl, r5, lsl 3]                     |         offset_0 = r5 << 3;
                                                             |         r1 = *((sl + offset_0));
    0x00007da8 ldr.w r0, [r7, r5, lsl 3]                     |         offset_1 = r5 << 3;
                                                             |         r0 = *((r7 + offset_1));
    0x00007dac adds r5, 1                                    |         r5++;
    0x00007dae ldr r2, [r4, 0xc]                             |         r2 = *((r4 + 0xc));
    0x00007db0 blx 0x6a48                                    |         r0 = fcn_00006a48 ();
    0x00007db4 str r6, [r0]                                  |         *(r0) = r6;
    0x00007db6 cmp sb, r5                                    |         
    0x00007db8 ldr r3, [r4, 8]                               |         r3 = *((r4 + 8));
    0x00007dba str r3, [r0, 4]                               |         *((r0 + 4)) = r3;
    0x00007dbc ldr r3, [r4, 8]                               |         r3 = *((r4 + 8));
    0x00007dbe str r0, [r3]                                  |         *(r3) = r0;
    0x00007dc0 str r0, [r4, 8]                               |         *((r4 + 8)) = r0;
    0x00007dc2 bne 0x7da4                                    |         
                                                             |     } while (sb != r5);
    0x00007dc4 mov r1, fp                                    |     r1 = fp;
    0x00007dc6 mov r0, r4                                    |     r0 = r4;
    0x00007dc8 mov r3, r8                                    |     r3 = r8;
    0x00007dca add sp, 0x1c                                  |     
    0x00007dcc pop.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}    |     
    0x00007dd0 bx r3                                         |     return uint32_t (*r3)() ();
                                                             | label_8:
    0x00007dd2 ldr r2, [r4, 8]                               |     r2 = *((r4 + 8));
    0x00007dd4 ldr r1, [sp]                                  |     r1 = *(sp);
    0x00007dd6 str r2, [sp, 4]                               |     var_4h = r2;
    0x00007dd8 ldr r2, [r4, 4]                               |     r2 = *((r4 + 4));
    0x00007dda cmp r2, r1                                    |     
                                                             |     if (r2 != r1) {
    0x00007ddc beq 0x7dea                                    |         
    0x00007dde ldr r2, [pc, 0x1f4]                           |         r2 = *(0x7fd6);
    0x00007de0 ldr r1, [sp, 4]                               |         r1 = var_4h;
    0x00007de2 ldr r2, [r3, r2]                              |         r2 = *((r3 + r2));
    0x00007de4 ldr r1, [r1, 8]                               |         r1 = *((r1 + 8));
    0x00007de6 cmp r1, r2                                    |         
                                                             |         if (r1 == r2) {
    0x00007de8 beq 0x7ec2                                    |             goto label_10;
                                                             |         }
                                                             |     }
    0x00007dea ldr r1, [r4, 0xc]                             |     r1 = *((r4 + 0xc));
    0x00007dec mov.w r0, 0x1f40                              |     r0 = 0x1f40;
    0x00007df0 str r3, [sp, 4]                               |     var_4h = r3;
    0x00007df2 movs r5, 0                                    |     r5 = 0;
    0x00007df4 blx 0x7170                                    |     apr_pool_destroy ();
    0x00007df8 ldr r3, [sp, 4]                               |     r3 = var_4h;
    0x00007dfa mov.w r1, 0x1f40                              |     r1 = 0x1f40;
    0x00007dfe ldr r2, [pc, 0x1d8]                           |     r2 = *(0x7fda);
    0x00007e00 mov r8, r0                                    |     r8 = r0;
    0x00007e02 ldr r2, [r3, r2]                              |     r2 = *((r3 + r2));
    0x00007e04 ldr r3, [r4, 0xc]                             |     r3 = *((r4 + 0xc));
    0x00007e06 blx 0x7514                                    |     fcn_00007514 ();
    0x00007e0a str r0, [sp, 4]                               |     var_4h = r0;
                                                             | label_0:
    0x00007e0c add.w sl, r7, 4                               |     sl = r7 + 4;
    0x00007e10 mov fp, r7                                    |     
                                                             |     do {
    0x00007e12 ldr.w r7, [sl, r5, lsl 3]                     |         offset_2 = r5 << 3;
                                                             |         r7 = *((sl + offset_2));
    0x00007e16 mov r0, r8                                    |         r0 = r8;
    0x00007e18 ldr.w r1, [fp, r5, lsl 3]                     |         offset_3 = r5 << 3;
                                                             |         r1 = *((fp + offset_3));
    0x00007e1c adds r5, 1                                    |         r5++;
    0x00007e1e mov r2, r7                                    |         r2 = r7;
    0x00007e20 add r8, r7                                    |         r8 += r7;
    0x00007e22 blx 0x6a84                                    |         fcn_00006a84 ();
    0x00007e26 cmp sb, r5                                    |         
    0x00007e28 bhi 0x7e12                                    |         
                                                             |     } while (sb > r5);
                                                             | label_1:
    0x00007e2a ldrd r3, r2, [sp]                             |     __asm ("ldrd r3, r2, [sp]");
    0x00007e2e movs r0, 0                                    |     r0 = 0;
    0x00007e30 str r3, [r2]                                  |     *(r2) = r3;
    0x00007e32 ldr r3, [r4, 8]                               |     r3 = *((r4 + 8));
    0x00007e34 str r6, [r2, 0xc]                             |     *((r2 + 0xc)) = r6;
    0x00007e36 str r3, [r2, 4]                               |     *((r2 + 4)) = r3;
    0x00007e38 ldr r3, [r4, 8]                               |     r3 = *((r4 + 8));
    0x00007e3a str r2, [r3]                                  |     *(r3) = r2;
    0x00007e3c str r2, [r4, 8]                               |     *((r4 + 8)) = r2;
                                                             | label_3:
    0x00007e3e add sp, 0x1c                                  |     
    0x00007e40 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}    |     
                                                             | label_9:
    0x00007e44 ldr r5, [sp]                                  |     r5 = *(sp);
    0x00007e46 add.w sl, r7, 4                               |     sl = r7 + 4;
                                                             |     do {
    0x00007e4a ldr r3, [r4, 0xc]                             |         r3 = *((r4 + 0xc));
    0x00007e4c movs r2, 0                                    |         r2 = 0;
    0x00007e4e ldr.w r1, [sl, r8, lsl 3]                     |         offset_4 = r8 << 3;
                                                             |         r1 = *((sl + offset_4));
    0x00007e52 ldr.w r0, [r7, r8, lsl 3]                     |         offset_5 = r8 << 3;
                                                             |         r0 = *((r7 + offset_5));
    0x00007e56 add.w r8, r8, 1                               |         r8++;
    0x00007e5a blx 0x7514                                    |         r0 = fcn_00007514 ();
    0x00007e5e str r5, [r0]                                  |         *(r0) = r5;
    0x00007e60 cmp sb, r8                                    |         
    0x00007e62 ldr r3, [r4, 8]                               |         r3 = *((r4 + 8));
    0x00007e64 str r3, [r0, 4]                               |         *((r0 + 4)) = r3;
    0x00007e66 ldr r3, [r4, 8]                               |         r3 = *((r4 + 8));
    0x00007e68 str r0, [r3]                                  |         *(r3) = r0;
    0x00007e6a str r0, [r4, 8]                               |         *((r4 + 8)) = r0;
    0x00007e6c bne 0x7e4a                                    |         
                                                             |     } while (sb != r8);
    0x00007e6e movs r0, 0                                    |     r0 = 0;
    0x00007e70 add sp, 0x1c                                  |     
    0x00007e72 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}    |     
                                                             | label_7:
    0x00007e76 ldr r2, [r0, 8]                               |     r2 = *((r0 + 8));
    0x00007e78 adds r1, r0, 4                                |     r1 = r0 + 4;
    0x00007e7a str r2, [sp, 4]                               |     var_4h = r2;
    0x00007e7c ldr r2, [r0, 4]                               |     r2 = *((r0 + 4));
    0x00007e7e cmp r2, r1                                    |     
                                                             |     if (r2 == r1) {
    0x00007e80 beq 0x7f4e                                    |         goto label_11;
                                                             |     }
    0x00007e82 ldr r2, [pc, 0x150]                           |     r2 = *(0x7fd6);
    0x00007e84 ldr r1, [sp, 4]                               |     r1 = var_4h;
    0x00007e86 ldr r2, [r3, r2]                              |     r2 = *((r3 + r2));
    0x00007e88 ldr r1, [r1, 8]                               |     r1 = *((r1 + 8));
    0x00007e8a cmp r1, r2                                    |     
                                                             |     if (r1 != r2) {
    0x00007e8c bne 0x7f4e                                    |         goto label_11;
                                                             |     }
    0x00007e8e ldr r2, [sp, 4]                               |     r2 = var_4h;
    0x00007e90 ldr r2, [r2, 0x18]                            |     r2 = *((r2 + 0x18));
    0x00007e92 ldr r2, [r2]                                  |     r2 = *(r2);
    0x00007e94 cmp r2, 1                                     |     
                                                             |     if (r2 == 1) {
    0x00007e96 beq 0x7f98                                    |         goto label_12;
                                                             |     }
    0x00007e98 mov r5, sb                                    |     r5 = sb;
    0x00007e9a mov r6, sb                                    |     r6 = sb;
                                                             | label_2:
    0x00007e9c ldr r1, [r4, 0xc]                             |     r1 = *((r4 + 0xc));
    0x00007e9e mov.w r0, 0x1f40                              |     r0 = 0x1f40;
    0x00007ea2 str r3, [sp, 4]                               |     var_4h = r3;
    0x00007ea4 blx 0x7170                                    |     apr_pool_destroy ();
    0x00007ea8 ldr r3, [sp, 4]                               |     r3 = var_4h;
    0x00007eaa mov.w r1, 0x1f40                              |     r1 = 0x1f40;
    0x00007eae ldr r2, [pc, 0x128]                           |     r2 = *(0x7fda);
    0x00007eb0 mov r8, r0                                    |     r8 = r0;
    0x00007eb2 ldr r2, [r3, r2]                              |     r2 = *((r3 + r2));
    0x00007eb4 ldr r3, [r4, 0xc]                             |     r3 = *((r4 + 0xc));
    0x00007eb6 blx 0x7514                                    |     fcn_00007514 ();
    0x00007eba cmp r5, sb                                    |     
    0x00007ebc str r0, [sp, 4]                               |     var_4h = r0;
                                                             |     if (r5 <= sb) {
    0x00007ebe blo 0x7e0c                                    |         goto label_0;
                                                             |     }
    0x00007ec0 b 0x7e2a                                      |     goto label_1;
                                                             | label_10:
    0x00007ec2 ldr r1, [sp, 4]                               |     r1 = var_4h;
    0x00007ec4 ldr r0, [r1, 0x18]                            |     r0 = *((r1 + 0x18));
    0x00007ec6 ldr r2, [r0]                                  |     r2 = *(r0);
    0x00007ec8 cmp r2, 1                                     |     
    0x00007eca it ne                                         |     
                                                             |     if (r2 != 1) {
    0x00007ecc movne r5, 0                                   |         r5 = 0;
                                                             |         goto label_13;
                                                             |     }
                                                             |     if (r2 != 1) {
                                                             | label_13:
    0x00007ece bne 0x7e9c                                    |         goto label_2;
                                                             |     }
    0x00007ed0 ldrd lr, r1, [r1, 0xc]                        |     __asm ("ldrd lr, r1, [r1, 0xc]");
    0x00007ed4 ldrd r0, ip, [r0, 4]                          |     __asm ("ldrd r0, ip, [r0, 4]");
    0x00007ed8 add r1, lr                                    |     r1 += lr;
    0x00007eda sub.w r2, ip, r1                              |     r2 = ip - r1;
    0x00007ede adds r1, r0, r1                               |     r1 = r0 + r1;
    0x00007ee0 cmp r2, r6                                    |     
    0x00007ee2 str r2, [sp, 0xc]                             |     var_ch = r2;
    0x00007ee4 str r1, [sp, 8]                               |     var_8h = r1;
                                                             |     if (r2 >= r6) {
    0x00007ee6 bhs 0x7fac                                    |         goto label_14;
                                                             |     }
    0x00007ee8 mov r5, sb                                    |     r5 = sb;
    0x00007eea cmp.w sb, 0                                   |     
                                                             |     if (sb == 0) {
    0x00007eee beq 0x7f86                                    |         goto label_15;
                                                             |     }
    0x00007ef0 ldr r2, [sp, 8]                               |     r2 = var_8h;
    0x00007ef2 movs r5, 0                                    |     r5 = 0;
    0x00007ef4 str r6, [sp, 0x10]                            |     var_10h = r6;
    0x00007ef6 add.w sl, r7, 4                               |     sl = r7 + 4;
    0x00007efa ldr r6, [sp, 0xc]                             |     r6 = var_ch;
    0x00007efc str r3, [sp, 0x14]                            |     var_14h = r3;
    0x00007efe str r4, [sp, 0xc]                             |     var_ch = r4;
    0x00007f00 mov r4, r2                                    |     r4 = r2;
    0x00007f02 b 0x7f16                                      |     
                                                             |     while (r2 < r6) {
    0x00007f04 ldr.w r1, [r7, r5, lsl 3]                     |         offset_6 = r5 << 3;
                                                             |         r1 = *((r7 + offset_6));
    0x00007f08 mov r0, r4                                    |         r0 = r4;
    0x00007f0a adds r5, 1                                    |         r5++;
    0x00007f0c add r4, r2                                    |         r4 += r2;
    0x00007f0e blx 0x6a84                                    |         fcn_00006a84 ();
    0x00007f12 cmp sb, r5                                    |         
                                                             |         if (sb == r5) {
    0x00007f14 beq 0x7f70                                    |             goto label_16;
                                                             |         }
    0x00007f16 ldr.w r2, [sl, r5, lsl 3]                     |         offset_7 = r5 << 3;
                                                             |         r2 = *((sl + offset_7));
    0x00007f1a cmp r2, r6                                    |         
    0x00007f1c sub.w r6, r6, r2                              |         r6 -= r2;
    0x00007f20 bls 0x7f04                                    |         
                                                             |     }
    0x00007f22 ldr r0, [sp, 4]                               |     r0 = var_4h;
    0x00007f24 mov r2, r4                                    |     r2 = r4;
    0x00007f26 ldr r1, [sp, 8]                               |     r1 = var_8h;
    0x00007f28 ldrd r4, r6, [sp, 0xc]                        |     __asm ("ldrd r4, r6, [var_ch]");
    0x00007f2c ldr r3, [sp, 0x14]                            |     r3 = var_14h;
    0x00007f2e subs r1, r2, r1                               |     r1 = r2 - r1;
    0x00007f30 ldr r2, [r0, 0xc]                             |     r2 = *((r0 + 0xc));
    0x00007f32 subs r6, r6, r1                               |     r6 -= r1;
    0x00007f34 add r2, r1                                    |     r2 += r1;
    0x00007f36 str r2, [r0, 0xc]                             |     *((r0 + 0xc)) = r2;
    0x00007f38 cmp.w r8, 0                                   |     
                                                             |     if (r8 == 0) {
    0x00007f3c beq 0x7e9c                                    |         goto label_2;
                                                             |     }
                                                             | label_4:
    0x00007f3e str r3, [sp, 4]                               |     var_4h = r3;
    0x00007f40 mov r1, fp                                    |     r1 = fp;
    0x00007f42 mov r0, r4                                    |     r0 = r4;
    0x00007f44 blx r8                                        |     uint32_t (*r8)(uint32_t, uint32_t, uint32_t) (r0, r1, r3);
    0x00007f46 ldr r3, [sp, 4]                               |     r3 = var_4h;
    0x00007f48 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00007f4a beq 0x7e9c                                    |         goto label_2;
                                                             |     }
    0x00007f4c b 0x7e3e                                      |     goto label_3;
                                                             | label_11:
    0x00007f4e ldr r1, [r4, 0xc]                             |     r1 = *((r4 + 0xc));
    0x00007f50 mov r6, sb                                    |     r6 = sb;
    0x00007f52 str r3, [sp, 4]                               |     var_4h = r3;
                                                             | label_5:
    0x00007f54 mov.w r0, 0x1f40                              |     r0 = 0x1f40;
    0x00007f58 blx 0x7170                                    |     apr_pool_destroy ();
    0x00007f5c ldr r3, [sp, 4]                               |     r3 = var_4h;
    0x00007f5e mov.w r1, 0x1f40                              |     r1 = 0x1f40;
    0x00007f62 ldr r2, [pc, 0x74]                            |     r2 = *(0x7fda);
    0x00007f64 ldr r2, [r3, r2]                              |     r2 = *((r3 + r2));
    0x00007f66 ldr r3, [r4, 0xc]                             |     r3 = *((r4 + 0xc));
    0x00007f68 blx 0x7514                                    |     fcn_00007514 ();
    0x00007f6c str r0, [sp, 4]                               |     var_4h = r0;
    0x00007f6e b 0x7e2a                                      |     goto label_1;
                                                             | label_16:
    0x00007f70 ldr r1, [sp, 8]                               |     r1 = var_8h;
    0x00007f72 mov r2, r4                                    |     r2 = r4;
    0x00007f74 ldrd r4, r6, [sp, 0xc]                        |     __asm ("ldrd r4, r6, [var_ch]");
    0x00007f78 ldr r3, [sp, 0x14]                            |     r3 = var_14h;
    0x00007f7a subs r2, r2, r1                               |     r2 -= r1;
    0x00007f7c ldr r1, [sp, 4]                               |     r1 = var_4h;
    0x00007f7e subs r6, r6, r2                               |     r6 -= r2;
    0x00007f80 ldr r1, [r1, 0xc]                             |     r1 = *((r1 + 0xc));
    0x00007f82 add.w lr, r2, r1                              |     lr = r2 + r1;
                                                             | label_15:
    0x00007f86 ldr r2, [sp, 4]                               |     r2 = var_4h;
    0x00007f88 str.w lr, [r2, 0xc]                           |     __asm ("str.w lr, [r2, 0xc]");
    0x00007f8c cmp.w r8, 0                                   |     
                                                             |     if (r8 != 0) {
    0x00007f90 bne 0x7f3e                                    |         goto label_4;
                                                             |     }
    0x00007f92 ldr r1, [r4, 0xc]                             |     r1 = *((r4 + 0xc));
    0x00007f94 str r3, [sp, 4]                               |     var_4h = r3;
    0x00007f96 b 0x7f54                                      |     goto label_5;
                                                             | label_12:
    0x00007f98 ldr r3, [sp, 4]                               |     r3 = var_4h;
    0x00007f9a mov r6, sb                                    |     r6 = sb;
    0x00007f9c ldr.w lr, [r3, 0xc]                           |     
                                                             |     do {
                                                             | label_6:
    0x00007fa0 ldr r3, [sp, 4]                               |         r3 = var_4h;
    0x00007fa2 add.w r2, lr, r6                              |         r2 = lr + r6;
    0x00007fa6 movs r0, 0                                    |         r0 = 0;
    0x00007fa8 str r2, [r3, 0xc]                             |         *((r3 + 0xc)) = r2;
    0x00007faa b 0x7e3e                                      |         goto label_3;
                                                             | label_14:
    0x00007fac cmp.w sb, 0                                   |         
    0x00007fb0 beq 0x7fa0                                    |         
                                                             |     } while (sb == 0);
    0x00007fb2 ldr r4, [sp, 8]                               |     r4 = var_8h;
    0x00007fb4 add r5, r7                                    |     r5 += r7;
                                                             |     do {
    0x00007fb6 ldr r2, [r7, 4]                               |         r2 = *((r7 + 4));
    0x00007fb8 mov r0, r4                                    |         r0 = r4;
    0x00007fba ldr r1, [r7], 8                               |         r1 = *(r7);
                                                             |         r7 += 8;
    0x00007fbe add r4, r2                                    |         r4 += r2;
    0x00007fc0 blx 0x6a84                                    |         fcn_00006a84 ();
    0x00007fc4 cmp r5, r7                                    |         
    0x00007fc6 bne 0x7fb6                                    |         
                                                             |     } while (r5 != r7);
    0x00007fc8 ldr r3, [sp, 4]                               |     r3 = var_4h;
    0x00007fca ldr.w lr, [r3, 0xc]                           |     
    0x00007fce b 0x7fa0                                      |     goto label_6;
                                                             | }
    ; assembly                                       | /* r2dec pseudo code output */
                                                     | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/lib/libaprutil-1.so.0.6.1 @ 0x8de4 */
                                                     | #include <stdint.h>
                                                     |  
    ; (fcn) sym.apr_bucket_shared_split ()           | void apr_bucket_shared_split (int16_t arg1) {
                                                     |     r0 = arg1;
    0x00008de4 push {r4, lr}                         |     
    0x00008de6 ldr r4, [r0, 0x18]                    |     r4 = *((r0 + 0x18));
    0x00008de8 blx 0x73c8                            |     r0 = fcn_000073c8 ();
                                                     |     if (r0 == 0) {
    0x00008dec cbnz r0, 0x8df4                       |         
    0x00008dee ldr r3, [r4]                          |         r3 = *(r4);
    0x00008df0 adds r3, 1                            |         r3++;
    0x00008df2 str r3, [r4]                          |         *(r4) = r3;
                                                     |     }
    0x00008df4 pop {r4, pc}                          |     
                                                     | }

[*] Function fprintf used 1 times libaprutil-1.so.0.6.1