[*] Binary protection state of udevadm

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


[*] Function printf tear down of udevadm

    ; assembly                                                   | /* r2dec pseudo code output */
                                                                 | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-50593792.squashfs_v4_le_extract/usr/libexec/udevadm @ 0x342f8 */
                                                                 | #include <stdint.h>
                                                                 |  
    ; (fcn) fcn.000342f8 ()                                      | void fcn_000342f8 (int16_t arg1, int16_t arg2, int16_t arg3, int16_t arg4) {
                                                                 |     int16_t var_1h;
                                                                 |     int16_t var_0h;
                                                                 |     int16_t var_4h;
                                                                 |     int16_t var_8h;
                                                                 |     int16_t var_ch;
                                                                 |     int16_t var_10h;
                                                                 |     int16_t var_14h;
                                                                 |     int16_t var_18h;
                                                                 |     int16_t var_1ch;
                                                                 |     int16_t var_20h;
                                                                 |     int16_t var_24h;
                                                                 |     int16_t var_28h;
                                                                 |     int16_t var_2ch;
                                                                 |     int16_t var_30h;
                                                                 |     int16_t var_34h;
                                                                 |     int16_t var_38h;
                                                                 |     int16_t var_3ch;
                                                                 |     int16_t var_40h;
                                                                 |     int16_t var_44h;
                                                                 |     int16_t var_48h;
                                                                 |     int16_t var_4ch;
                                                                 |     int16_t var_50h;
                                                                 |     char * dest;
                                                                 |     int16_t socket;
                                                                 |     int16_t var_5ch;
                                                                 |     int16_t var_60h;
                                                                 |     int32_t var_60h_2;
                                                                 |     int16_t var_68h;
                                                                 |     int16_t var_6ch;
                                                                 |     int16_t var_70h;
                                                                 |     int16_t var_74h;
                                                                 |     int16_t var_78h;
                                                                 |     int16_t var_7ch;
                                                                 |     int16_t var_84h;
                                                                 |     int16_t var_8ch;
                                                                 |     int16_t var_90h;
                                                                 |     int16_t var_94h;
                                                                 |     int32_t var_94h_2;
                                                                 |     int16_t var_9ch;
                                                                 |     int16_t var_a4h;
                                                                 |     int16_t var_ach;
                                                                 |     int16_t var_b4h;
                                                                 |     int32_t var_bch;
                                                                 |     int32_t var_bch_2;
                                                                 |     int16_t var_c4h;
                                                                 |     int16_t var_c8h;
                                                                 |     int32_t var_cch;
                                                                 |     int32_t var_cch_2;
                                                                 |     int16_t var_d4h;
                                                                 |     r0 = arg1;
                                                                 |     r1 = arg2;
                                                                 |     r2 = arg3;
                                                                 |     r3 = arg4;
    0x000342f8 push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr}       |     
    0x000342fc sub sp, 0xdc                                      |     
    0x000342fe strd r3, r2, [sp, 0x38]                           |     __asm ("strd r3, r2, [var_38h]");
    0x00034302 movs r4, 0                                        |     r4 = 0;
    0x00034304 mov r6, r0                                        |     r6 = r0;
    0x00034306 ldr.w r2, [pc, 0x8cc]                             |     
    0x0003430a ldr.w r3, [pc, 0x8cc]                             |     r3 = *(0x34bda);
    0x0003430e str r0, [sp, 0x4c]                                |     var_4ch = r0;
    0x00034310 movs r0, 1                                        |     r0 = 1;
    0x00034312 add r2, pc                                        |     r2 = 0x68eec;
    0x00034314 str r1, [sp, 0x44]                                |     var_44h = r1;
    0x00034316 ldr r3, [r2, r3]                                  |     
    0x00034318 movs r1, 0x14                                     |     r1 = 0x14;
    0x0003431a ldr r3, [r3]                                      |     r3 = *(0x68eec);
    0x0003431c str r3, [sp, 0xd4]                                |     var_d4h = r3;
    0x0003431e mov.w r3, 0                                       |     r3 = 0;
    0x00034322 str r4, [sp, 0x50]                                |     var_50h = r4;
    0x00034324 blx 0x8c20                                        |     fcn_00008c20 ();
    0x00034328 str r0, [sp, 0x28]                                |     var_28h = r0;
    0x0003432a cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x0003432c beq.w 0x34a42                                     |         goto label_18;
                                                                 |     }
    0x00034330 mov r5, r0                                        |     r5 = r0;
    0x00034332 bl 0x7a610                                        |     fcn_0007a610 ();
    0x00034336 str r0, [r5, 4]                                   |     *((r5 + 4)) = r0;
    0x00034338 cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x0003433a beq.w 0x34a38                                     |         goto label_19;
                                                                 |     }
    0x0003433e movs r1, 0x14                                     |     r1 = 0x14;
    0x00034340 movs r0, 1                                        |     r0 = 1;
    0x00034342 blx 0x8c20                                        |     fcn_00008c20 ();
    0x00034346 str r0, [r5]                                      |     *(r5) = r0;
    0x00034348 cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x0003434a beq.w 0x34a38                                     |         goto label_19;
                                                                 |     }
    0x0003434e ldr r3, [r5, 8]                                   |     r3 = *((r5 + 8));
    0x00034350 mov r2, r6                                        |     r2 = r6;
    0x00034352 ldr.w r1, [pc, 0x888]                             |     
    0x00034356 add r0, sp, 0x50                                  |     r0 += var_50h;
    0x00034358 adds r3, 1                                        |     r3++;
    0x0003435a str r3, [r5, 8]                                   |     *((r5 + 8)) = r3;
    0x0003435c add r1, pc                                        |     r1 = 0x68f3e;
    0x0003435e ldr.w r3, [pc, 0x880]                             |     
    0x00034362 add r3, pc                                        |     r3 = 0x68f48;
    0x00034364 str r3, [sp]                                      |     *(sp) = r3;
    0x00034366 mov r3, r4                                        |     r3 = r4;
    0x00034368 bl 0x67e84                                        |     fcn_00067e84 (r0, r1, r2, r3, r4);
    0x0003436c subs r5, r0, 0                                    |     r5 -= var_50h;
                                                                 |     if (r5 < var_50h) {
    0x0003436e blt.w 0x349ce                                     |         goto label_20;
                                                                 |     }
    0x00034372 ldr r3, [sp, 0x50]                                |     r3 = var_50h;
    0x00034374 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00034376 beq.w 0x34a34                                     |         goto label_21;
                                                                 |     }
    0x0003437a subs r3, 4                                        |     r3 -= 4;
    0x0003437c str r4, [sp, 0x1c]                                |     var_1ch = r4;
    0x0003437e str r3, [sp, 0x24]                                |     var_24h = r3;
    0x00034380 ldr.w r3, [pc, 0x860]                             |     
    0x00034384 add r3, pc                                        |     
    0x00034386 adds r3, 7                                        |     r3 += 7;
    0x00034388 str r3, [sp, 0x40]                                |     var_40h = r3;
    0x0003438a ldr.w r3, [pc, 0x85c]                             |     r3 = case.0x5d696.3;
    0x0003438e add r3, pc                                        |     r3 = 0x9d2fe;
    0x00034390 adds r3, 7                                        |     r3 += 7;
    0x00034392 str r3, [sp, 0x48]                                |     var_48h = r3;
    0x00034394 movs r3, 1                                        |     r3 = 1;
    0x00034396 str r3, [sp, 0x20]                                |     var_20h = r3;
    0x00034398 ldr r3, [sp, 0x24]                                |     r3 = var_24h;
    0x0003439a ldr fp, [r3, 4]!                                  |     fp = *(0x9d302);
    0x0003439e str r3, [sp, 0x24]                                |     var_24h = r3;
    0x000343a0 cmp.w fp, 0                                       |     
    0x000343a2 lsrs r0, r0, 0x1c                                 |     r0 >>= 0x1c;
                                                                 |     if (r0 == r0) {
    0x000343a4 beq.w 0x3457e                                     |         goto label_12;
                                                                 |     }
                                                                 | label_3:
    0x000343a8 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x000343ac cmp r0, 6                                         |     
                                                                 |     if (r0 > 6) {
    0x000343ae bgt.w 0x34798                                     |         goto label_22;
                                                                 |     }
                                                                 | label_6:
    0x000343b2 ldr r3, [sp, 0x20]                                |     r3 = var_20h;
    0x000343b4 movs r7, 0                                        |     r7 = 0;
    0x000343b6 ldr.w r1, [pc, 0x834]                             |     
    0x000343ba mov r0, fp                                        |     r0 = fp;
    0x000343bc str r7, [sp, 0x54]                                |     dest = r7;
    0x000343be adds r3, 1                                        |     r3++;
    0x000343c0 uxth r3, r3                                       |     r3 = (int16_t) r3;
    0x000343c2 add r1, pc                                        |     r1 = 0x68fb4;
    0x000343c4 str r3, [sp, 0x2c]                                |     var_2ch = r3;
    0x000343c6 blx 0x8fb4                                        |     r0 = fcn_00008fb4 ();
    0x000343ca mov sb, r0                                        |     sb = r0;
    0x000343cc cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x000343ce beq.w 0x34a56                                     |         goto label_23;
                                                                 |     }
    0x000343d2 ldr.w r3, [pc, 0x81c]                             |     
    0x000343d6 mov r8, r7                                        |     r8 = r7;
    0x000343d8 add.w sl, sp, 0x58                                |     sl += socket;
    0x000343dc str.w fp, [sp, 0x18]                              |     __asm ("str.w fp, [var_18h]");
    0x000343e0 add r3, pc                                        |     r3 = 0x68fd6;
    0x000343e2 str r3, [sp, 0x30]                                |     var_30h = r3;
    0x000343e4 ldr.w r3, [pc, 0x80c]                             |     
    0x000343e8 add r3, pc                                        |     r3 = 0x68fe0;
    0x000343ea str r3, [sp, 0x34]                                |     var_34h = r3;
                                                                 | label_0:
    0x000343ec movs r6, 0                                        |     r6 = 0;
    0x000343ee mov r3, sl                                        |     r3 = sl;
    0x000343f0 movs r2, 4                                        |     r2 = 4;
    0x000343f2 mov.w r1, 0x100000                                |     r1 = 0x100000;
    0x000343f6 mov r0, sb                                        |     r0 = sb;
    0x000343f8 str r6, [sp, 0x58]                                |     socket = r6;
    0x000343fa bl 0x6b144                                        |     r0 = fcn_0006b144 (r0, r1, r2, r3);
    0x000343fe cmp r0, 0                                         |     
                                                                 |     if (r0 < 0) {
    0x00034400 blt.w 0x34542                                     |         goto label_24;
                                                                 |     }
    0x00034404 ldr r4, [sp, 0x58]                                |     r4 = socket;
                                                                 |     if (r0 == 0) {
    0x00034406 beq.w 0x34762                                     |         goto label_25;
                                                                 |     }
    0x0003440a ldrb r3, [r4]                                     |     r3 = *(r4);
    0x0003440c adds r7, 1                                        |     r7++;
    0x0003440e cmp r3, 0x23                                      |     
                                                                 |     if (r3 == 0x23) {
    0x00034410 beq 0x344b6                                       |         goto label_26;
                                                                 |     }
    0x00034412 movs r1, 0x23                                     |     r1 = 0x23;
    0x00034414 mov r0, r4                                        |     r0 = r4;
    0x00034416 blx 0x8bb0                                        |     r0 = get_current_dir_name ();
                                                                 |     if (r0 != 0) {
    0x0003441a cbz r0, 0x34420                                   |         
    0x0003441c strb r6, [r0]                                     |         *(r0) = r6;
    0x0003441e ldr r4, [sp, 0x58]                                |         r4 = socket;
                                                                 |     }
    0x00034420 mov r0, r4                                        |     r0 = r4;
    0x00034422 blx 0x8f38                                        |     r0 = fcn_00008f38 ();
    0x00034426 mov r6, r0                                        |     r6 = r0;
    0x00034428 add.w fp, r4, r0                                  |     
                                                                 |     if (r6 == 0) {
    0x0003442c cbz r6, 0x3444a                                   |         goto label_27;
                                                                 |     }
                                                                 |     do {
    0x0003442e blx 0x91d8                                        |         fcn_000091d8 ();
    0x00034432 ldrb r2, [fp, -0x1]!                              |         r2 = *((fp -= 0x1));
    0x00034436 ldr r3, [r0]                                      |         r3 = *(r0);
    0x00034438 ldrh.w r5, [r3, r2, lsl 1]                        |         offset_0 = r2 << 1;
                                                                 |         r5 = *((r3 + offset_0));
    0x0003443c subs r3, r6, 1                                    |         r3 = r6 - 1;
    0x0003443e ands r5, r5, 0x2000                               |         r5 &= 0x2000;
    0x00034440 strb r0, [r0, r4]                                 |         *((r0 + r4)) = r0;
                                                                 |         if (r5 == r5) {
    0x00034442 beq 0x34460                                       |             goto label_28;
                                                                 |         }
    0x00034444 mov r6, r3                                        |         r6 = r3;
    0x00034446 cmp r6, 0                                         |         
    0x00034448 bne 0x3442e                                       |         
                                                                 |     } while (r6 != 0);
                                                                 | label_27:
    0x0003444a cmp.w r8, 1                                       |     
    0x0003444e strb r6, [r4]                                     |     *(r4) = r6;
                                                                 |     if (r8 == 1) {
    0x00034450 beq 0x344ec                                       |         goto label_29;
                                                                 |     }
    0x00034452 cmp.w r8, 2                                       |     
                                                                 |     if (r8 == 2) {
    0x00034456 beq 0x344e0                                       |         goto label_30;
                                                                 |     }
                                                                 |     do {
                                                                 | label_1:
    0x00034458 ldr r0, [sp, 0x58]                                |         r0 = socket;
    0x0003445a blx 0x8dac                                        |         fcn_00008dac ();
    0x0003445e b 0x343ec                                         |         goto label_0;
                                                                 | label_28:
    0x00034460 cmp.w r8, 1                                       |         
    0x00034464 strb r5, [r4, r6]                                 |         *((r4 + r6)) = r5;
                                                                 |         if (r8 == 1) {
    0x00034466 beq 0x3451c                                       |             goto label_31;
                                                                 |         }
    0x00034468 cmp.w r8, 2                                       |         
                                                                 |         if (r8 == 2) {
    0x0003446c beq 0x344be                                       |             goto label_32;
                                                                 |         }
    0x0003446e cmp.w r8, 0                                       |         
    0x00034472 bne 0x34458                                       |         
                                                                 |     } while (r8 != 0);
    0x00034474 ldr r4, [sp, 0x58]                                |     r4 = socket;
    0x00034476 ldrb r3, [r4]                                     |     r3 = *(r4);
    0x00034478 cmp r3, 0x20                                      |     
                                                                 |     if (r3 != 0x20) {
    0x0003447a bne 0x34536                                       |         goto label_33;
                                                                 |     }
    0x0003447c bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x00034480 cmp r0, 3                                         |     
                                                                 |     if (r0 <= 3) {
    0x00034482 ble 0x34458                                       |         goto label_1;
                                                                 |     }
    0x00034484 ldr r3, [sp, 0x48]                                |     r3 = var_48h;
    0x00034486 movs r1, 4                                        |     r1 = 4;
    0x00034488 ldr r2, [sp, 0x18]                                |     r2 = var_18h;
    0x0003448a mov r0, r8                                        |     r0 = r8;
    0x0003448c str r4, [sp, 0x14]                                |     var_14h = r4;
    0x0003448e str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034490 ldr.w r3, [pc, 0x764]                             |     
    0x00034494 add r3, pc                                        |     r3 = 0x69090;
    0x00034496 str r3, [sp, 0x10]                                |     var_10h = r3;
    0x00034498 ldr.w r3, [pc, 0x760]                             |     
    0x0003449c add r3, pc                                        |     
    0x0003449e str r3, [sp, 0xc]                                 |     var_ch = r3;
    0x000344a0 movs r3, 0x16                                     |     
    0x000344a2 movt r3, 0x4000                                   |     r3 = 0x4006909c;
    0x000344a6 str r3, [sp]                                      |     *(sp) = r3;
    0x000344a8 movw r3, 0x201                                    |     r3 = 0x201;
    0x000344ac str r3, [sp, 8]                                   |     var_8h = r3;
    0x000344ae mov r3, r7                                        |     r3 = r7;
    0x000344b0 bl 0x722f4                                        |     fcn_000722f4 (r0, r1, r2, r3, r4, r5, r6);
    0x000344b4 b 0x34458                                         |     goto label_1;
                                                                 | label_26:
    0x000344b6 mov r0, r4                                        |     r0 = r4;
    0x000344b8 blx 0x8dac                                        |     fcn_00008dac ();
    0x000344bc b 0x343ec                                         |     goto label_0;
                                                                 | label_32:
    0x000344be ldr r4, [sp, 0x58]                                |     r4 = socket;
    0x000344c0 ldrb r3, [r4]                                     |     r3 = *(r4);
    0x000344c2 cmp r3, 0x20                                      |     
                                                                 |     if (r3 == 0x20) {
    0x000344c4 beq.w 0x34780                                     |         goto label_34;
                                                                 |     }
    0x000344c8 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x000344cc cmp r0, 3                                         |     
                                                                 |     if (r0 > 3) {
    0x000344ce bgt.w 0x3470e                                     |         goto label_35;
                                                                 |     }
                                                                 |     do {
                                                                 | label_2:
    0x000344d2 ldr r0, [sp, 0x54]                                |         r0 = dest;
    0x000344d4 mov.w r8, 0                                       |         r8 = 0;
    0x000344d8 bl 0x7b004                                        |         fcn_0007b004 (r0);
    0x000344dc str r0, [sp, 0x54]                                |         dest = r0;
    0x000344de b 0x34458                                         |         goto label_1;
                                                                 | label_30:
    0x000344e0 ldr r0, [sp, 0x54]                                |         r0 = dest;
    0x000344e2 mov r8, r6                                        |         r8 = r6;
    0x000344e4 bl 0x7b004                                        |         fcn_0007b004 (r0);
    0x000344e8 str r0, [sp, 0x54]                                |         dest = r0;
    0x000344ea b 0x34458                                         |         goto label_1;
                                                                 | label_29:
    0x000344ec bl 0x70bf8                                        |         r0 = fcn_00070bf8 ();
    0x000344f0 cmp r0, 3                                         |         
    0x000344f2 ble 0x344d2                                       |         
                                                                 |     } while (r0 <= 3);
    0x000344f4 ldr r3, [sp, 0x30]                                |     r3 = var_30h;
    0x000344f6 mov r0, r6                                        |     r0 = r6;
    0x000344f8 ldr r2, [sp, 0x18]                                |     r2 = var_18h;
    0x000344fa movs r1, 4                                        |     r1 = 4;
    0x000344fc str r3, [sp, 0x10]                                |     var_10h = r3;
    0x000344fe ldr r3, [sp, 0x34]                                |     r3 = var_34h;
    0x00034500 str r3, [sp, 0xc]                                 |     var_ch = r3;
    0x00034502 ldr r3, [sp, 0x40]                                |     r3 = var_40h;
    0x00034504 str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034506 movs r3, 0x16                                     |     
    0x00034508 movt r3, 0x4000                                   |     r3 = 0x40000016;
    0x0003450c str r3, [sp]                                      |     *(sp) = r3;
    0x0003450e movw r3, 0x211                                    |     r3 = 0x211;
    0x00034512 str r3, [sp, 8]                                   |     var_8h = r3;
    0x00034514 mov r3, r7                                        |     r3 = r7;
    0x00034516 bl 0x722f4                                        |     fcn_000722f4 (r0, r1, r2, r3, r4, r5, r6);
    0x0003451a b 0x344d2                                         |     goto label_2;
                                                                 | label_31:
    0x0003451c ldr r1, [sp, 0x58]                                |     r1 = socket;
    0x0003451e ldrb r3, [r1]                                     |     r3 = *(r1);
    0x00034520 cmp r3, 0x20                                      |     
                                                                 |     if (r3 == 0x20) {
    0x00034522 beq.w 0x34746                                     |         goto label_36;
                                                                 |     }
    0x00034526 add r0, sp, 0x54                                  |     r0 += dest;
    0x00034528 bl 0x7b5f4                                        |     r0 = fcn_0007b5f4 (r0, r1);
    0x0003452c cmp r0, 0                                         |     
                                                                 |     if (r0 < 0) {
    0x0003452e blt 0x34542                                       |         goto label_24;
                                                                 |     }
                                                                 |     do {
    0x00034530 mov.w r8, 1                                       |         r8 = 1;
    0x00034534 b 0x34458                                         |         goto label_1;
                                                                 | label_33:
    0x00034536 mov r1, r4                                        |         r1 = r4;
    0x00034538 add r0, sp, 0x54                                  |         r0 += dest;
    0x0003453a bl 0x7b5f4                                        |         r0 = fcn_0007b5f4 (r0, r1);
    0x0003453e cmp r0, 0                                         |         
    0x00034540 bge 0x34530                                       |         
                                                                 |     } while (r0 >= 0);
                                                                 | label_24:
    0x00034542 mov r5, r0                                        |     r5 = r0;
    0x00034544 ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x00034546 blx 0x8dac                                        |     fcn_00008dac ();
                                                                 | label_15:
    0x0003454a ldr r3, [sp, 0x3c]                                |     r3 = var_3ch;
    0x0003454c ldr r0, [sp, 0x54]                                |     r0 = dest;
    0x0003454e and.w r4, r3, r5, lsr 31                          |     r4 = r3 & (r5 >> 31);
                                                                 |     if (r0 != 0) {
    0x00034552 cbz r0, 0x3455a                                   |         
                                                                 | label_4:
    0x00034554 bl 0x7b004                                        |         fcn_0007b004 (r0);
    0x00034558 str r0, [sp, 0x54]                                |         dest = r0;
                                                                 |     }
    0x0003455a ldr r3, [sp, 0x1c]                                |     r3 = var_1ch;
    0x0003455c cmp r4, 0                                         |     
    0x0003455e it ne                                             |     
                                                                 |     if (r4 == 0) {
    0x00034560 movne r3, r5                                      |         r3 = r5;
                                                                 |     }
    0x00034562 str r3, [sp, 0x1c]                                |     var_1ch = r3;
                                                                 | label_5:
    0x00034564 mov r0, sb                                        |     r0 = sb;
    0x00034566 bl 0x69b30                                        |     fcn_00069b30 (r0, r1, r2, r3);
    0x0003456a ldr r3, [sp, 0x2c]                                |     r3 = var_2ch;
    0x0003456c str r3, [sp, 0x20]                                |     var_20h = r3;
    0x0003456e ldr r3, [sp, 0x24]                                |     r3 = var_24h;
    0x00034570 ldr fp, [r3, 4]!                                  |     fp = *((r3 += 4));
    0x00034574 str r3, [sp, 0x24]                                |     var_24h = r3;
    0x00034576 cmp.w fp, 0                                       |     
                                                                 |     if (fp != 0) {
    0x0003457a bne.w 0x343a8                                     |         goto label_3;
                                                                 |     }
                                                                 | label_12:
    0x0003457e ldr r3, [sp, 0x28]                                |     r3 = var_28h;
    0x00034580 ldr r0, [r3, 4]                                   |     r0 = *((r3 + 4));
    0x00034582 bl 0x7a668                                        |     r0 = fcn_0007a668 (r0);
    0x00034586 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x0003458a cmp r0, 6                                         |     
                                                                 |     if (r0 > 6) {
    0x0003458c bgt.w 0x34868                                     |         goto label_37;
                                                                 |     }
                                                                 | label_8:
    0x00034590 ldr r3, [sp, 0x44]                                |     r3 = var_44h;
    0x00034592 cmp r3, 0                                         |     
                                                                 |     if (r3 == 0) {
    0x00034594 beq.w 0x34992                                     |         goto label_38;
                                                                 |     }
                                                                 | label_9:
    0x00034598 mov.w r3, -1                                      |     r3 = -1;
    0x0003459c ldr r2, [sp, 0x44]                                |     r2 = var_44h;
    0x0003459e str r3, [sp]                                      |     *(sp) = r3;
    0x000345a0 movs r0, 0                                        |     r0 = 0;
    0x000345a2 ldr.w r3, [pc, 0x65c]                             |     
    0x000345a6 ldr r1, [sp, 0x4c]                                |     r1 = var_4ch;
    0x000345a8 add r3, pc                                        |     r3 = 0x691ae;
    0x000345aa bl 0x74ccc                                        |     r0 = fcn_00074ccc ();
    0x000345ae mov r4, r0                                        |     r4 = r0;
    0x000345b0 cmp r0, 0                                         |     
                                                                 |     if (r0 == 0) {
    0x000345b2 beq.w 0x34a38                                     |         goto label_19;
                                                                 |     }
    0x000345b6 movs r5, 0                                        |     r5 = 0;
    0x000345b8 add r7, sp, 0x58                                  |     r7 += socket;
    0x000345ba movw r1, 0x1ed                                    |     r1 = 0x1ed;
    0x000345be add.w sl, sp, 0x84                                |     sl += var_84h;
    0x000345c2 bl 0x34e84                                        |     fcn_00034e84 (r0, r1);
    0x000345c6 movs r2, 0x28                                     |     r2 = 0x28;
    0x000345c8 mov r1, r5                                        |     r1 = r5;
    0x000345ca mov r0, r7                                        |     r0 = r7;
    0x000345cc mov.w r8, 0x50                                    |     r8 = 0x50;
    0x000345d0 blx 0x8c54                                        |     fcn_00008c54 ();
    0x000345d4 ldr r3, [sp, 0x28]                                |     r3 = var_28h;
    0x000345d6 movs r2, 0x40                                     |     r2 = 0x40;
    0x000345d8 mov r1, r5                                        |     r1 = r5;
    0x000345da add r0, sp, 0x94                                  |     r0 += var_94h;
    0x000345dc str r5, [sp, 0x54]                                |     dest = r5;
    0x000345de mov.w sb, 0                                       |     sb = 0;
    0x000345e2 str r3, [sp, 0x5c]                                |     var_5ch = r3;
    0x000345e4 blx 0x8c54                                        |     fcn_00008c54 ();
    0x000345e8 ldr.w r3, [pc, 0x618]                             |     
    0x000345ec mov.w ip, 0x50                                    |     
    0x000345f0 ldr r2, [sp, 0x38]                                |     r2 = var_38h;
    0x000345f2 str.w ip, [sp, 0x9c]                              |     __asm ("str.w ip, [var_9ch]");
    0x000345f6 add r3, pc                                        |     r3 = 0x691fe;
    0x000345f8 str r5, [sp, 0x90]                                |     var_90h = r5;
    0x000345fa ldm.w r3, {r0, r1}                                |     r0 = *(r3);
                                                                 |     r1 = *((r3 + 4));
    0x000345fe movs r3, 0xf9                                     |     r3 = 0xf9;
    0x00034600 str r3, [sp, 0x8c]                                |     var_8ch = r3;
    0x00034602 cmp r2, r5                                        |     
    0x00034604 ldr r3, [sp, 0x28]                                |     r3 = var_28h;
    0x00034606 it ne                                             |     
                                                                 |     if (r2 == r5) {
    0x00034608 movne r6, 0x10                                    |         r6 = 0x10;
                                                                 |     }
    0x0003460a stm.w sl, {r0, r1}                                |     *(sl) = r0;
                                                                 |     *((sl + 4)) = r1;
    0x0003460e it eq                                             |     
                                                                 |     if (r2 != r5) {
    0x00034610 moveq r6, 0x20                                    |         r6 = 0x20;
                                                                 |     }
    0x00034612 mov r0, r7                                        |     r0 = r7;
    0x00034614 str r6, [sp, 0xb4]                                |     var_b4h = r6;
    0x00034616 ldr r1, [r3]                                      |     r1 = *(0x691fe);
    0x00034618 movs r3, 0x18                                     |     r3 = 0x18;
    0x0003461a str r3, [sp, 0xa4]                                |     var_a4h = r3;
    0x0003461c movs r3, 0x10                                     |     r3 = 0x10;
    0x0003461e str r3, [sp, 0xac]                                |     var_ach = r3;
    0x00034620 strd r8, sb, [sp, 0x60]                           |     __asm ("strd r8, sb, [var_60h]");
    0x00034624 bl 0x33b1c                                        |     fcn_00033b1c (r0, r1, r2);
    0x00034628 add r2, sp, 0x54                                  |     r2 += dest;
    0x0003462a mov r1, r7                                        |     r1 = r7;
    0x0003462c mov r0, r4                                        |     r0 = r4;
    0x0003462e bl 0x7d228                                        |     r0 = fcn_0007d228 (r0, r1, r2);
    0x00034632 subs.w fp, r0, 0                                  |     
                                                                 |     if (fp < r0) {
    0x00034636 blt.w 0x34800                                     |         goto label_39;
                                                                 |     }
    0x0003463a ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x0003463c blx 0x89b0                                        |     fcn_000089b0 ();
    0x00034640 mov.w r1, 0x124                                   |     r1 = 0x124;
    0x00034644 blx 0x95b8                                        |     exit (r0);
    0x00034648 ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x0003464a mov r2, r8                                        |     r2 = r8;
    0x0003464c mov r3, sb                                        |     r3 = sb;
    0x0003464e str r5, [sp]                                      |     *(sp) = r5;
    0x00034650 blx 0x905c                                        |     r0 = fcn_0000905c ();
    0x00034654 cmp r0, r5                                        |     
                                                                 |     if (r0 < r5) {
    0x00034656 blt.w 0x3499a                                     |         goto label_40;
                                                                 |     }
    0x0003465a mov r0, r7                                        |     r0 = r7;
    0x0003465c ldr r7, [sp, 0x28]                                |     r7 = var_28h;
    0x0003465e ldr r2, [sp, 0x38]                                |     r2 = var_38h;
    0x00034660 ldr r1, [r7]                                      |     r1 = *(r7);
    0x00034662 bl 0x33c94                                        |     fcn_00033c94 (r0, r1, r2);
    0x00034666 strd r0, r1, [sp, 0xbc]                           |     __asm ("strd r0, r1, [var_bch]");
    0x0003466a ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x0003466c blx 0x8b8c                                        |     r0 = printf_chk ()
    0x00034670 mov r3, r0                                        |     r3 = r0;
    0x00034672 ldr r0, [r7, 4]                                   |     r0 = *((r7 + 4));
    0x00034674 subs r3, 0x50                                     |     r3 -= 0x50;
    0x00034676 mov.w r2, 1                                       |     r2 = 1;
    0x0003467a sbc r1, r1, 0                                     |     __asm ("sbc r1, r1, 0");
    0x0003467e str r3, [sp, 0xc4]                                |     var_c4h = r3;
    0x00034680 str r1, [sp, 0xc8]                                |     var_c8h = r1;
    0x00034682 ldr r3, [sp, 0x58]                                |     r3 = socket;
    0x00034684 ldrd r0, r1, [r0]                                 |     __asm ("ldrd r0, r1, [r0]");
    0x00034688 blx 0x918c                                        |     open64_2 ();
    0x0003468c ldr r3, [r7, 4]                                   |     r3 = *((r7 + 4));
    0x0003468e ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x00034690 ldr r3, [r3, 4]                                   |     r3 = *((r3 + 4));
    0x00034692 strd r3, r5, [sp, 0xcc]                           |     __asm ("strd r3, r5, [var_cch]");
    0x00034696 blx 0x8b8c                                        |     printf_chk ()
    0x0003469a movs r2, 0                                        |     r2 = 0;
    0x0003469c strd r0, r1, [sp, 0x94]                           |     __asm ("strd r0, r1, [var_94h]");
    0x000346a0 mov r8, r0                                        |     r8 = r0;
    0x000346a2 movs r3, 0                                        |     r3 = 0;
    0x000346a4 ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x000346a6 mov r7, r1                                        |     r7 = r1;
    0x000346a8 str r5, [sp]                                      |     *(sp) = r5;
    0x000346aa blx 0x905c                                        |     fcn_0000905c ();
    0x000346ac ldcl p2, c4, [r8], {0xa8}                         |     __asm ("ldcl p2, c4, [r8], {0xa8}");
                                                                 |     if (r3 < 0) {
    0x000346b0 blt.w 0x3499a                                     |         goto label_40;
                                                                 |     }
    0x000346b4 ldr r3, [sp, 0x58]                                |     r3 = socket;
    0x000346b6 movs r1, 0x50                                     |     r1 = 0x50;
    0x000346b8 mov r0, sl                                        |     r0 = sl;
    0x000346ba movs r2, 1                                        |     r2 = 1;
    0x000346bc blx 0x918c                                        |     open64_2 ();
    0x000346c0 ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x000346c2 blx 0x94d0                                        |     r0 = fcn_000094d0 ();
    0x000346c6 cmp r0, 0                                         |     
                                                                 |     if (r0 != 0) {
    0x000346c8 bne.w 0x3499a                                     |         goto label_40;
                                                                 |     }
    0x000346cc ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x000346ce blx 0x8ecc                                        |     r0 = fcn_00008ecc ();
    0x000346d2 cmp r0, r5                                        |     
                                                                 |     if (r0 < r5) {
    0x000346d4 blt.w 0x3499a                                     |         goto label_40;
                                                                 |     }
    0x000346d6 strh r1, [r4, 0xa]                                |     *((r4 + 0xa)) = r1;
    0x000346d8 ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x000346da blx 0x89b0                                        |     fcn_000089b0 ();
    0x000346de blx 0x8c9c                                        |     r0 = fcn_00008c9c ();
    0x000346e2 cmp r0, r5                                        |     
                                                                 |     if (r0 < r5) {
    0x000346e4 blt.w 0x3499a                                     |         goto label_40;
                                                                 |     }
    0x000346e8 ldr r0, [sp, 0x54]                                |     r0 = dest;
    0x000346ea mov r1, r4                                        |     r1 = r4;
    0x000346ec blx 0x8b50                                        |     r0 = strncpy (r0, r1, r2);
    0x000346f0 cmp r0, r5                                        |     
                                                                 |     if (r0 < r5) {
    0x000346f2 blt.w 0x3499a                                     |         goto label_40;
                                                                 |     }
    0x000346f6 ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x000346f8 blx 0x8b68                                        |     r0 = recv (r0, r1);
    0x000346fc bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x00034700 cmp r0, 6                                         |     
                                                                 |     if (r0 > 6) {
    0x00034702 bgt.w 0x34a60                                     |         goto label_41;
                                                                 |     }
                                                                 | label_16:
    0x00034706 ldr r0, [sp, 0x54]                                |     r0 = dest;
    0x00034708 blx 0x8dac                                        |     fcn_00008dac ();
    0x0003470c b 0x349b6                                         |     goto label_17;
                                                                 | label_35:
    0x0003470e ldr.w r3, [pc, 0x4f8]                             |     
    0x00034712 mov r0, r5                                        |     r0 = r5;
    0x00034714 ldr r2, [sp, 0x18]                                |     r2 = var_18h;
    0x00034716 movs r1, 4                                        |     r1 = 4;
    0x00034718 str r4, [sp, 0x14]                                |     var_14h = r4;
    0x0003471a add r3, pc                                        |     r3 = 0x69328;
    0x0003471c adds r3, 7                                        |     r3 += 7;
    0x0003471e str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034720 ldr.w r3, [pc, 0x4e8]                             |     
    0x00034724 add r3, pc                                        |     r3 = 0x69334;
    0x00034726 str r3, [sp, 0x10]                                |     var_10h = r3;
    0x00034728 ldr.w r3, [pc, 0x4e4]                             |     
    0x0003472c add r3, pc                                        |     
    0x0003472e str r3, [sp, 0xc]                                 |     var_ch = r3;
    0x00034730 movs r3, 0x16                                     |     
    0x00034732 movt r3, 0x4000                                   |     r3 = 0x40069340;
    0x00034736 str r3, [sp]                                      |     *(sp) = r3;
    0x00034738 movw r3, 0x231                                    |     r3 = 0x231;
    0x0003473c str r3, [sp, 8]                                   |     var_8h = r3;
    0x0003473e mov r3, r7                                        |     r3 = r7;
    0x00034740 bl 0x722f4                                        |     fcn_000722f4 (r0, r1, r2, r3, r4, r5, r6);
    0x00034744 b 0x344d2                                         |     goto label_2;
                                                                 | label_36:
    0x00034746 ldr r3, [sp, 0x38]                                |     r3 = var_38h;
    0x00034748 mov r2, r1                                        |     r2 = r1;
    0x0003474a ldr r0, [sp, 0x28]                                |     r0 = var_28h;
    0x0003474c mov.w r8, 2                                       |     r8 = 2;
    0x00034750 ldr r1, [sp, 0x54]                                |     r1 = dest;
    0x00034752 strd r7, r3, [sp, 4]                              |     __asm ("strd r7, r3, [var_8h]");
    0x00034756 ldr r3, [sp, 0x20]                                |     r3 = var_20h;
    0x00034758 str r3, [sp]                                      |     *(sp) = r3;
    0x0003475a ldr r3, [sp, 0x18]                                |     r3 = var_18h;
    0x0003475c bl 0x33fdc                                        |     fcn_00033fdc (r0, r1, r2, r3, r4, r5, r6);
    0x00034760 b 0x34458                                         |     goto label_1;
                                                                 | label_25:
    0x00034762 mov r5, r0                                        |     r5 = r0;
    0x00034764 mov r0, r4                                        |     r0 = r4;
    0x00034766 ldr.w fp, [sp, 0x18]                              |     fp = var_18h;
    0x0003476a blx 0x8dac                                        |     fcn_00008dac ();
    0x0003476c invalid                                           |     
    0x00034770 lsrs r1, r0, 0x1c                                 |     r1 = r0 >> 0x1c;
                                                                 |     if (r1 == r0) {
    0x00034772 beq 0x347c8                                       |         goto label_42;
                                                                 |     }
                                                                 | label_7:
    0x00034774 ldr r0, [sp, 0x54]                                |     r0 = dest;
    0x00034776 movs r4, 0                                        |     r4 = 0;
    0x00034778 cmp r0, 0                                         |     
                                                                 |     if (r0 != 0) {
    0x0003477a bne.w 0x34554                                     |         goto label_4;
                                                                 |     }
    0x0003477e b 0x34564                                         |     goto label_5;
                                                                 | label_34:
    0x00034780 ldr r3, [sp, 0x38]                                |     r3 = var_38h;
    0x00034782 mov r2, r4                                        |     r2 = r4;
    0x00034784 ldr r1, [sp, 0x54]                                |     r1 = dest;
    0x00034786 ldr r0, [sp, 0x28]                                |     r0 = var_28h;
    0x00034788 strd r7, r3, [sp, 4]                              |     __asm ("strd r7, r3, [var_8h]");
    0x0003478a strb r1, [r0, 0xc]                                |     *((r0 + 0xc)) = r1;
    0x0003478c ldr r3, [sp, 0x20]                                |     r3 = var_20h;
    0x0003478e str r3, [sp]                                      |     *(sp) = r3;
    0x00034790 ldr r3, [sp, 0x18]                                |     r3 = var_18h;
    0x00034792 bl 0x33fdc                                        |     fcn_00033fdc (r0, r1, r2, r3, r4, r5, r6);
    0x00034796 b 0x34458                                         |     goto label_1;
                                                                 | label_22:
    0x00034798 ldr.w r3, [pc, 0x478]                             |     
    0x0003479c movs r1, 0                                        |     r1 = 0;
    0x0003479e ldr.w r2, [pc, 0x478]                             |     
    0x000347a2 movs r0, 7                                        |     r0 = 7;
    0x000347a4 str.w fp, [sp, 8]                                 |     __asm ("str.w fp, [var_8h]");
    0x000347a8 add r3, pc                                        |     r3 = 0x693c0;
    0x000347aa str r3, [sp, 4]                                   |     var_4h = r3;
    0x000347ac add r2, pc                                        |     r2 = 0x693ca;
    0x000347ae ldr.w r3, [pc, 0x46c]                             |     
    0x000347b2 adds r2, 7                                        |     r2 += 7;
    0x000347b4 add r3, pc                                        |     r3 = 0x693d6;
    0x000347b6 str r3, [sp]                                      |     *(sp) = r3;
    0x000347b8 mov.w r3, 0x268                                   |     r3 = 0x268;
    0x000347bc bl 0x71448                                        |     fcn_00071448 ();
    0x000347c0 ldr r3, [sp, 0x24]                                |     r3 = var_24h;
    0x000347c2 ldr.w fp, [r3]                                    |     fp = *(r3);
    0x000347c6 b 0x343b2                                         |     goto label_6;
                                                                 | label_42:
    0x000347c8 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x000347cc cmp r0, 3                                         |     
                                                                 |     if (r0 <= 3) {
    0x000347ce ble 0x34774                                       |         goto label_7;
                                                                 |     }
    0x000347d0 ldr.w r1, [pc, 0x44c]                             |     
    0x000347d4 mov r3, r7                                        |     r3 = r7;
    0x000347d6 mov r2, fp                                        |     r2 = fp;
    0x000347d8 mov r0, r5                                        |     r0 = r5;
    0x000347da str r5, [sp]                                      |     *(sp) = r5;
    0x000347dc add r1, pc                                        |     r1 = 0x69400;
    0x000347de adds r1, 7                                        |     r1 += 7;
    0x000347e0 str r1, [sp, 4]                                   |     var_4h = r1;
    0x000347e2 ldr.w r1, [pc, 0x440]                             |     
    0x000347e6 add r1, pc                                        |     r1 = 0x69410;
    0x000347e8 str r1, [sp, 0x10]                                |     var_10h = r1;
    0x000347ea ldr.w r1, [pc, 0x43c]                             |     
    0x000347ee add r1, pc                                        |     r1 = 0x6941c;
    0x000347f0 str r1, [sp, 0xc]                                 |     var_ch = r1;
    0x000347f2 mov.w r1, 0x240                                   |     r1 = 0x240;
    0x000347f6 str r1, [sp, 8]                                   |     var_8h = r1;
    0x000347f8 movs r1, 4                                        |     r1 = 4;
    0x000347fa bl 0x722f4                                        |     fcn_000722f4 (r0, r1, r2, r3, r4, r5, r6);
    0x000347fe b 0x34774                                         |     goto label_7;
                                                                 | label_39:
    0x00034800 ldr r0, [sp, 0x54]                                |     r0 = dest;
    0x00034802 blx 0x8dac                                        |     fcn_00008dac ();
                                                                 | label_14:
    0x00034806 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x0003480a cmp r0, 2                                         |     
                                                                 |     if (r0 > 2) {
    0x0003480c bgt.w 0x34a10                                     |         goto label_43;
                                                                 |     }
    0x00034810 rsb.w r3, fp, 0                                   |     r3 = fp - ;
    0x00034814 uxtb r3, r3                                       |     r3 = (int8_t) r3;
    0x00034816 rsbs r3, r3, 0                                    |     r3 -= ;
    0x00034818 str r3, [sp, 0x1c]                                |     var_1ch = r3;
                                                                 | label_11:
    0x0003481a ldr r3, [sp, 0x1c]                                |     r3 = var_1ch;
    0x0003481c cmp r3, 0                                         |     
    0x0003481e it ge                                             |     
                                                                 |     if (r3 < 0) {
    0x00034820 mvnge r3, 0x55                                    |         r3 = ~0x55;
                                                                 |     }
    0x00034824 str r3, [sp, 0x1c]                                |     var_1ch = r3;
                                                                 | label_10:
    0x00034826 ldr r0, [sp, 0x50]                                |     r0 = var_50h;
                                                                 |     if (r0 != 0) {
    0x00034828 cbz r0, 0x34830                                   |         
    0x0003482a bl 0x7b004                                        |         fcn_0007b004 (r0);
    0x0003482e str r0, [sp, 0x50]                                |         var_50h = r0;
                                                                 |     }
    0x00034830 ldr r5, [sp, 0x28]                                |     r5 = var_28h;
    0x00034832 ldr r0, [r5]                                      |     r0 = *(r5);
    0x00034834 bl 0x33bdc                                        |     fcn_00033bdc (r0);
    0x00034838 ldr r0, [r5, 4]                                   |     r0 = *((r5 + 4));
    0x0003483a bl 0x7a6a0                                        |     fcn_0007a6a0 (r0);
    0x0003483e mov r0, r5                                        |     r0 = r5;
    0x00034840 blx 0x8dac                                        |     fcn_00008dac ();
                                                                 | label_13:
    0x00034844 mov r0, r4                                        |     r0 = r4;
    0x00034846 blx 0x8dac                                        |     fcn_00008dac ();
    0x0003484a ldr r2, [pc, 0x3e0]                               |     
    0x0003484c ldr r3, [pc, 0x388]                               |     r3 = *(0x34bd8);
    0x0003484e add r2, pc                                        |     r2 = 0x69480;
    0x00034850 ldr r3, [r2, r3]                                  |     r3 = *(0x69480);
    0x00034852 ldr r2, [r3]                                      |     r2 = *(0x69480);
    0x00034854 ldr r3, [sp, 0xd4]                                |     r3 = var_d4h;
    0x00034856 eors r2, r3                                       |     r2 ^= r3;
    0x00034858 mov.w r3, 0                                       |     r3 = 0;
                                                                 |     if (r2 != r3) {
    0x0003485c bne.w 0x34a4c                                     |         goto label_44;
                                                                 |     }
    0x00034860 ldr r0, [sp, 0x1c]                                |     r0 = var_1ch;
    0x00034862 add sp, 0xdc                                      |     
    0x00034864 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}        |     
    0x00034866 ldrh r0, [r6, 0x3e]                               |     r0 = *((r6 + 0x3e));
                                                                 | label_37:
    0x00034868 ldr r6, [pc, 0x3c4]                               |     
    0x0003486a movs r1, 0                                        |     r1 = 0;
    0x0003486c ldr r3, [pc, 0x3c4]                               |     
    0x0003486e movs r0, 7                                        |     r0 = 7;
    0x00034870 ldr r5, [pc, 0x3c4]                               |     
    0x00034872 add r6, pc                                        |     r6 = 0x694a6;
    0x00034874 add r3, pc                                        |     r3 = 0x694ac;
    0x00034876 adds r6, 7                                        |     r6 += 7;
    0x00034878 add r5, pc                                        |     r5 = 0x694b4;
    0x0003487a mov r2, r6                                        |     r2 = r6;
    0x0003487c str r3, [sp, 4]                                   |     var_4h = r3;
    0x0003487e mov.w r3, 0x270                                   |     r3 = 0x270;
    0x00034882 str r5, [sp]                                      |     *(sp) = r5;
    0x00034884 bl 0x71448                                        |     fcn_00071448 ();
    0x00034888 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x0003488c cmp r0, 6                                         |     
                                                                 |     if (r0 <= 6) {
    0x0003488e ble.w 0x34590                                     |         goto label_8;
                                                                 |     }
    0x00034892 ldr r4, [sp, 0x28]                                |     r4 = var_28h;
    0x00034894 mov r2, r6                                        |     r2 = r6;
    0x00034896 movs r1, 0                                        |     r1 = 0;
    0x00034898 movs r0, 7                                        |     r0 = 7;
    0x0003489a ldr r3, [r4, 8]                                   |     r3 = *((r4 + 8));
    0x0003489c str r5, [sp]                                      |     *(sp) = r5;
    0x0003489e str r3, [sp, 0xc]                                 |     var_ch = r3;
    0x000348a0 add.w r3, r3, r3, lsl 2                           |     r3 += (r3 << 2);
    0x000348a4 lsls r3, r3, 2                                    |     r3 <<= 2;
    0x000348a6 str r3, [sp, 8]                                   |     var_8h = r3;
    0x000348a8 ldr r3, [pc, 0x390]                               |     
    0x000348aa add r3, pc                                        |     r3 = 0x694ea;
    0x000348ac str r3, [sp, 4]                                   |     var_4h = r3;
    0x000348ae movw r3, 0x271                                    |     r3 = 0x271;
    0x000348b2 bl 0x71448                                        |     fcn_00071448 ();
    0x000348b6 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x000348ba cmp r0, 6                                         |     
                                                                 |     if (r0 <= 6) {
    0x000348bc ble.w 0x34590                                     |         goto label_8;
                                                                 |     }
    0x000348c0 ldr r3, [r4, 0xc]                                 |     r3 = *((r4 + 0xc));
    0x000348c2 mov r2, r6                                        |     r2 = r6;
    0x000348c4 movs r1, 0                                        |     r1 = 0;
    0x000348c6 movs r0, 7                                        |     r0 = 7;
    0x000348c8 str r5, [sp]                                      |     *(sp) = r5;
    0x000348ca str r3, [sp, 0xc]                                 |     var_ch = r3;
    0x000348cc lsls r3, r3, 3                                    |     r3 <<= 3;
    0x000348ce str r3, [sp, 8]                                   |     var_8h = r3;
    0x000348d0 ldr r3, [pc, 0x36c]                               |     
    0x000348d2 add r3, pc                                        |     r3 = 0x69516;
    0x000348d4 str r3, [sp, 4]                                   |     var_4h = r3;
    0x000348d6 movw r3, 0x273                                    |     r3 = 0x273;
    0x000348da bl 0x71448                                        |     fcn_00071448 ();
    0x000348de bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x000348e2 cmp r0, 6                                         |     
                                                                 |     if (r0 <= 6) {
    0x000348e4 ble.w 0x34590                                     |         goto label_8;
                                                                 |     }
    0x000348e8 ldr r3, [r4, 0x10]                                |     r3 = *((r4 + 0x10));
    0x000348ea mov r2, r6                                        |     r2 = r6;
    0x000348ec movs r1, 0                                        |     r1 = 0;
    0x000348ee movs r0, 7                                        |     r0 = 7;
    0x000348f0 str r5, [sp]                                      |     *(sp) = r5;
    0x000348f2 str r3, [sp, 0xc]                                 |     var_ch = r3;
    0x000348f4 add.w r3, r3, r3, lsl 2                           |     r3 += (r3 << 2);
    0x000348f8 lsls r3, r3, 2                                    |     r3 <<= 2;
    0x000348fa str r3, [sp, 8]                                   |     var_8h = r3;
    0x000348fc ldr r3, [pc, 0x344]                               |     
    0x000348fe add r3, pc                                        |     r3 = 0x69546;
    0x00034900 str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034902 movw r3, 0x275                                    |     r3 = 0x275;
    0x00034906 bl 0x71448                                        |     fcn_00071448 ();
    0x0003490a bl 0x70bf8                                        |     fcn_00070bf8 ();
    0x0003490c invalid                                           |     
                                                                 |     if (r3 <= r3) {
    0x00034910 ble.w 0x34590                                     |         goto label_8;
                                                                 |     }
    0x00034914 ldr r3, [r4, 4]                                   |     r3 = *((r4 + 4));
    0x00034916 mov r2, r6                                        |     r2 = r6;
    0x00034918 movs r1, 0                                        |     r1 = 0;
    0x0003491a movs r0, 7                                        |     r0 = 7;
    0x0003491c ldr r3, [r3, 4]                                   |     r3 = *((r3 + 4));
    0x0003491e str r5, [sp]                                      |     *(sp) = r5;
    0x00034920 str r3, [sp, 8]                                   |     var_8h = r3;
    0x00034922 ldr r3, [pc, 0x324]                               |     
    0x00034924 add r3, pc                                        |     r3 = 0x69572;
    0x00034926 str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034928 movw r3, 0x277                                    |     r3 = 0x277;
    0x0003492c bl 0x71448                                        |     fcn_00071448 ();
    0x00034930 bl 0x70bf8                                        |     fcn_00070bf8 ();
    0x00034932 vld2.8 {d18, d19}, [r2], r6                       |     __asm ("vld2.8 {d18, d19}, [r2], r6");
                                                                 |     if (r0 <= 7) {
    0x00034936 ble.w 0x34590                                     |         goto label_8;
                                                                 |     }
    0x0003493a str r4, [sp, 0x28]                                |     var_28h = r4;
    0x0003493c movw r3, 0x279                                    |     r3 = 0x279;
    0x00034940 ldr r4, [r4, 4]                                   |     r4 = *((r4 + 4));
    0x00034942 mov r2, r6                                        |     r2 = r6;
    0x00034944 ldr.w ip, [pc, 0x304]                             |     
    0x00034948 movs r1, 0                                        |     r1 = 0;
    0x0003494a movs r0, 7                                        |     r0 = 7;
    0x0003494c ldr r7, [r4, 0x10]                                |     r7 = *((r4 + 0x10));
    0x0003494e add ip, pc                                        |     ip = 0x6959e;
    0x00034950 str r7, [sp, 0xc]                                 |     var_ch = r7;
    0x00034952 ldr r4, [r4, 0x14]                                |     r4 = *((r4 + 0x14));
    0x00034954 str r5, [sp]                                      |     *(sp) = r5;
    0x00034956 strd ip, r4, [sp, 4]                              |     __asm ("strd ip, r4, [var_8h]");
    0x0003495a bl 0x71448                                        |     fcn_00071448 ();
    0x0003495e bl 0x70bf8                                        |     fcn_00070bf8 ();
    0x00034960 vst2.8 {d18, d19}, [fp], r6                       |     __asm ("vst2.8 {d18, d19}, [fp], r6");
                                                                 |     if (r0 <= 7) {
    0x00034964 ble.w 0x34590                                     |         goto label_8;
                                                                 |     }
    0x00034968 ldr r4, [sp, 0x28]                                |     r4 = var_28h;
    0x0003496a mov r2, r6                                        |     r2 = r6;
    0x0003496c ldr r6, [pc, 0x2e0]                               |     
    0x0003496e movw r3, 0x27b                                    |     r3 = 0x27b;
    0x00034972 movs r1, 0                                        |     r1 = 0;
    0x00034974 movs r0, 7                                        |     r0 = 7;
    0x00034976 ldr r7, [r4, 4]                                   |     r7 = *((r4 + 4));
    0x00034978 add r6, pc                                        |     r6 = 0x695cc;
    0x0003497a ldr r4, [r7, 0x1c]                                |     r4 = *((r7 + 0x1c));
    0x0003497c str r4, [sp, 0xc]                                 |     var_ch = r4;
    0x0003497e ldr r4, [r7, 0x18]                                |     r4 = *((r7 + 0x18));
    0x00034980 strd r5, r6, [sp]                                 |     __asm ("strd r5, r6, [sp]");
    0x00034984 str r4, [sp, 8]                                   |     var_8h = r4;
    0x00034986 bl 0x71448                                        |     fcn_00071448 ();
    0x0003498a ldr r3, [sp, 0x44]                                |     r3 = var_44h;
    0x0003498c cmp r3, 0                                         |     
                                                                 |     if (r3 != 0) {
    0x0003498e bne.w 0x34598                                     |         goto label_9;
                                                                 |     }
                                                                 | label_38:
    0x00034992 ldr r3, [pc, 0x2c0]                               |     
    0x00034994 add r3, pc                                        |     r3 = 0x695ee;
    0x00034996 str r3, [sp, 0x44]                                |     var_44h = r3;
    0x00034998 b 0x34598                                         |     goto label_9;
                                                                 | label_40:
    0x0003499a blx 0x9628                                        |     r0 = fcn_00009628 ();
    0x0003499e ldr r5, [r0]                                      |     r5 = *(r0);
    0x000349a0 ldr r0, [sp, 0x58]                                |     r0 = socket;
    0x000349a2 blx 0x8b68                                        |     recv (r0, r1);
    0x000349a6 ldr r0, [sp, 0x54]                                |     r0 = dest;
    0x000349a8 blx 0x8f68                                        |     fcn_00008f68 ();
    0x000349ac ldr r0, [sp, 0x54]                                |     r0 = dest;
    0x000349ae blx 0x8dac                                        |     fcn_00008dac ();
    0x000349b0 ldrd r2, sp, [lr, 0]!                             |     __asm ("ldrd r2, sp, [lr, 0]!");
                                                                 |     if (r3 > 0) {
    0x000349b4 bgt 0x34a50                                       |         goto label_45;
                                                                 |     }
                                                                 | label_17:
    0x000349b6 movs r2, 0                                        |     r2 = 0;
    0x000349b8 mov r1, r4                                        |     r1 = r4;
    0x000349ba mov r0, r4                                        |     r0 = r4;
    0x000349bc bl 0x34e08                                        |     fcn_00034e08 (r0, r1, r2);
    0x000349c0 ldr r3, [sp, 0x1c]                                |     r3 = var_1ch;
    0x000349c2 bics.w r3, r3, r0, asr 32                         |     __asm ("bics.w r3, r3, r0, asr 32");
    0x000349c6 it hs                                             |     
                                                                 |     if (r2 < 0) {
    0x000349c8 movhs r3, r0                                      |         r3 = r0;
                                                                 |     }
    0x000349ca str r3, [sp, 0x1c]                                |     var_1ch = r3;
    0x000349cc b 0x34826                                         |     goto label_10;
                                                                 | label_20:
    0x000349ce bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x000349d2 cmp r0, 2                                         |     
                                                                 |     if (r0 > 2) {
    0x000349d4 bgt 0x349ee                                       |         goto label_46;
                                                                 |     }
    0x000349d6 rsbs r3, r5, 0                                    |     r3 = r5 - ;
    0x000349d8 uxtb r3, r3                                       |     r3 = (int8_t) r3;
    0x000349da rsbs r3, r3, 0                                    |     r3 -= ;
    0x000349dc str r3, [sp, 0x1c]                                |     var_1ch = r3;
                                                                 |     do {
    0x000349de ldr r3, [sp, 0x1c]                                |         r3 = var_1ch;
    0x000349e0 movs r4, 0                                        |         r4 = 0;
    0x000349e2 cmp r3, 0                                         |         
    0x000349e4 itt ge                                            |         
                                                                 |         if (r3 < 0) {
    0x000349e6 mvnge r3, 0x55                                    |             r3 = ~0x55;
                                                                 |         }
                                                                 |         if (r3 >= 0) {
    0x000349ea str r3, [sp, 0x1c]                                |             var_1ch = r3;
                                                                 |         }
    0x000349ec b 0x34826                                         |         goto label_10;
                                                                 | label_46:
    0x000349ee ldr r2, [pc, 0x268]                               |         
    0x000349f0 mov r1, r5                                        |         r1 = r5;
    0x000349f2 ldr r0, [pc, 0x268]                               |         
    0x000349f4 ldr r3, [pc, 0x268]                               |         
    0x000349f6 add r2, pc                                        |         r2 = 0x69654;
    0x000349f8 add r0, pc                                        |         r0 = 0x6965a;
    0x000349fa adds r2, 7                                        |         r2 += 7;
    0x000349fc add r3, pc                                        |         r3 = 0x69660;
    0x000349fe strd r3, r0, [sp]                                 |         __asm ("strd r3, r0, [sp]");
    0x00034a00 adds r0, 0                                        |         r0 += 0;
    0x00034a02 movw r3, 0x265                                    |         r3 = 0x265;
    0x00034a06 movs r0, 3                                        |         r0 = 3;
    0x00034a08 bl 0x71448                                        |         fcn_00071448 ();
    0x00034a0c str r0, [sp, 0x1c]                                |         var_1ch = r0;
    0x00034a0e b 0x349de                                         |         
                                                                 |     } while (1);
                                                                 | label_43:
    0x00034a10 ldr r3, [pc, 0x250]                               |     
    0x00034a12 mov r1, fp                                        |     r1 = fp;
    0x00034a14 ldr r2, [pc, 0x250]                               |     
    0x00034a16 movs r0, 3                                        |     r0 = 3;
    0x00034a18 str r4, [sp, 8]                                   |     var_8h = r4;
    0x00034a1a add r3, pc                                        |     r3 = 0x69682;
    0x00034a1c str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034a1e add r2, pc                                        |     r2 = 0x6968a;
    0x00034a20 ldr r3, [pc, 0x248]                               |     
    0x00034a22 adds r2, 7                                        |     r2 += 7;
    0x00034a24 add r3, pc                                        |     r3 = 0x69694;
    0x00034a26 str r3, [sp]                                      |     *(sp) = r3;
    0x00034a28 movw r3, 0x285                                    |     r3 = 0x285;
    0x00034a2c bl 0x71448                                        |     fcn_00071448 ();
    0x00034a30 str r0, [sp, 0x1c]                                |     var_1ch = r0;
    0x00034a32 b 0x3481a                                         |     goto label_11;
                                                                 | label_21:
    0x00034a34 str r3, [sp, 0x1c]                                |     var_1ch = r3;
    0x00034a36 b 0x3457e                                         |     goto label_12;
                                                                 | label_19:
    0x00034a38 mvn r3, 0xb                                       |     r3 = ~0xb;
    0x00034a3c movs r4, 0                                        |     r4 = 0;
    0x00034a3e str r3, [sp, 0x1c]                                |     var_1ch = r3;
    0x00034a40 b 0x34826                                         |     goto label_10;
                                                                 | label_18:
    0x00034a42 mvn r3, 0xb                                       |     r3 = ~0xb;
    0x00034a46 ldr r4, [sp, 0x28]                                |     r4 = var_28h;
    0x00034a48 str r3, [sp, 0x1c]                                |     var_1ch = r3;
    0x00034a4a b 0x34844                                         |     goto label_13;
                                                                 | label_44:
    0x00034a4c blx 0x927c                                        |     fprintf_chk ()
                                                                 | label_45:
    0x00034a50 rsb.w fp, r5, 0                                   |     
    0x00034a54 b 0x34806                                         |     goto label_14;
                                                                 | label_23:
    0x00034a56 blx 0x9628                                        |     r0 = fcn_00009628 ();
    0x00034a5a ldr r5, [r0]                                      |     r5 = *(r0);
    0x00034a5c rsbs r5, r5, 0                                    |     r5 -= ;
    0x00034a5e b 0x3454a                                         |     goto label_15;
                                                                 | label_41:
    0x00034a60 mov r1, r5                                        |     r1 = r5;
    0x00034a62 ldr r5, [pc, 0x20c]                               |     
    0x00034a64 ldr r3, [pc, 0x20c]                               |     
    0x00034a66 movs r0, 7                                        |     r0 = 7;
    0x00034a68 ldr.w sb, [pc, 0x20c]                             |     
    0x00034a6c add r5, pc                                        |     r5 = 0x696e2;
    0x00034a6e add r3, pc                                        |     r3 = 0x696e6;
    0x00034a70 adds r5, 7                                        |     r5 += 7;
    0x00034a72 add sb, pc                                        |     sb = 0x696ee;
    0x00034a74 mov r2, r5                                        |     r2 = r5;
    0x00034a76 str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034a78 movw r3, 0x19f                                    |     r3 = 0x19f;
    0x00034a7c str.w sb, [sp]                                    |     __asm ("str.w sb, [sp]");
    0x00034a80 bl 0x71448                                        |     fcn_00071448 ();
    0x00034a84 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x00034a88 cmp r0, 6                                         |     
                                                                 |     if (r0 <= 6) {
    0x00034a8a ble.w 0x34706                                     |         goto label_16;
                                                                 |     }
    0x00034a8e ldr r3, [pc, 0x1ec]                               |     
    0x00034a90 mov r2, r5                                        |     r2 = r5;
    0x00034a92 movs r1, 0                                        |     r1 = 0;
    0x00034a94 movs r0, 7                                        |     r0 = 7;
    0x00034a96 strd r8, r7, [sp, 8]                              |     __asm ("strd r8, r7, [var_8h]");
    0x00034a9a add r3, pc                                        |     r3 = 0x6971c;
    0x00034a9c str.w sb, [sp]                                    |     __asm ("str.w sb, [sp]");
    0x00034aa0 str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034aa2 mov.w r3, 0x1a0                                   |     r3 = 0x1a0;
    0x00034aa6 bl 0x71448                                        |     fcn_00071448 ();
    0x00034aaa bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x00034aae cmp r0, 6                                         |     
                                                                 |     if (r0 <= 6) {
    0x00034ab0 ble.w 0x34706                                     |         goto label_16;
                                                                 |     }
    0x00034ab4 ldr r3, [pc, 0x1c8]                               |     
    0x00034ab6 mov r2, r5                                        |     r2 = r5;
    0x00034ab8 ldr r7, [pc, 0x1c8]                               |     
    0x00034aba movs r1, 0                                        |     r1 = 0;
    0x00034abc movs r0, 7                                        |     r0 = 7;
    0x00034abe add r3, pc                                        |     r3 = 0x69742;
    0x00034ac0 str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034ac2 add r7, pc                                        |     r7 = 0x6974a;
    0x00034ac4 movs r3, 0x50                                     |     r3 = 0x50;
    0x00034ac6 str r7, [sp]                                      |     *(sp) = r7;
    0x00034ac8 str r3, [sp, 8]                                   |     var_8h = r3;
    0x00034aca movw r3, 0x1a1                                    |     r3 = 0x1a1;
    0x00034ace bl 0x71448                                        |     fcn_00071448 ();
    0x00034ad2 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x00034ad6 cmp r0, 6                                         |     
                                                                 |     if (r0 <= 6) {
    0x00034ad8 ble.w 0x34706                                     |         goto label_16;
                                                                 |     }
    0x00034adc ldr r1, [sp, 0x68]                                |     r1 = var_68h;
    0x00034ade ldr r3, [sp, 0x6c]                                |     r3 = var_6ch;
    0x00034ae0 str r7, [sp]                                      |     *(sp) = r7;
    0x00034ae2 adds r2, r1, r1                                   |     r2 = r1 + r1;
    0x00034ae4 str r1, [sp, 0x10]                                |     var_10h = r1;
    0x00034ae6 adc.w r0, r3, r3                                  |     __asm ("adc.w r0, r3, r3");
    0x00034aea adds r2, r2, r1                                   |     r2 += r1;
    0x00034aec str r3, [sp, 0x14]                                |     var_14h = r3;
    0x00034aee adc.w r3, r3, r0                                  |     __asm ("adc.w r3, r3, r0");
    0x00034af2 lsls r3, r3, 3                                    |     r3 <<= 3;
    0x00034af4 movs r1, 0                                        |     r1 = 0;
    0x00034af6 movs r0, 7                                        |     r0 = 7;
    0x00034af8 orr.w r3, r3, r2, lsr 29                          |     r3 |= (r2 >> 29);
    0x00034afc lsls r2, r2, 3                                    |     r2 <<= 3;
    0x00034afe str r3, [sp, 0xc]                                 |     var_ch = r3;
    0x00034b00 ldr r3, [pc, 0x184]                               |     
    0x00034b02 str r2, [sp, 8]                                   |     var_8h = r2;
    0x00034b04 mov r2, r5                                        |     r2 = r5;
    0x00034b06 add r3, pc                                        |     r3 = 0x69792;
    0x00034b08 str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034b0a mov.w r3, 0x1a2                                   |     r3 = 0x1a2;
    0x00034b0e bl 0x71448                                        |     fcn_00071448 ();
    0x00034b12 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x00034b16 cmp r0, 6                                         |     
                                                                 |     if (r0 <= 6) {
    0x00034b18 ble.w 0x34706                                     |         goto label_16;
                                                                 |     }
    0x00034b1a add r5, sp, 0x3d4                                 |     r5 = sp + 0x3d4;
    0x00034b1c ldr r3, [sp, 0x74]                                |     r3 = var_74h;
    0x00034b1e movs r1, 0                                        |     r1 = 0;
    0x00034b20 ldr r2, [sp, 0x70]                                |     r2 = var_70h;
    0x00034b22 movs r0, 7                                        |     r0 = 7;
    0x00034b24 str r7, [sp]                                      |     *(sp) = r7;
    0x00034b26 str r3, [sp, 0x14]                                |     var_14h = r3;
    0x00034b28 lsls r3, r3, 4                                    |     r3 <<= 4;
    0x00034b2a str r2, [sp, 0x10]                                |     var_10h = r2;
    0x00034b2c orr.w r3, r3, r2, lsr 28                          |     r3 |= (r2 >> 28);
    0x00034b2e strb r2, [r2, 0xc]                                |     *((r2 + 0xc)) = r2;
    0x00034b30 lsls r2, r2, 4                                    |     r2 <<= 4;
    0x00034b32 str r3, [sp, 0xc]                                 |     var_ch = r3;
    0x00034b34 ldr r3, [pc, 0x154]                               |     
    0x00034b36 str r2, [sp, 8]                                   |     var_8h = r2;
    0x00034b38 mov r2, r5                                        |     r2 = r5;
    0x00034b3a add r3, pc                                        |     r3 = 0x697ca;
    0x00034b3c str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034b3e mov.w r3, 0x1a4                                   |     r3 = 0x1a4;
    0x00034b42 bl 0x71448                                        |     fcn_00071448 ();
    0x00034b46 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x00034b4a cmp r0, 6                                         |     
                                                                 |     if (r0 <= 6) {
    0x00034b4c ble.w 0x34706                                     |         goto label_16;
                                                                 |     }
    0x00034b50 ldr r3, [sp, 0x78]                                |     r3 = var_78h;
    0x00034b52 movs r0, 7                                        |     r0 = 7;
    0x00034b54 ldr r1, [sp, 0x7c]                                |     r1 = var_7ch;
    0x00034b56 str r7, [sp]                                      |     *(sp) = r7;
    0x00034b58 str r3, [sp, 0x10]                                |     var_10h = r3;
    0x00034b5a umull r3, r2, r6, r3                              |     r3:r2 = r6 * r3;
    0x00034b5e str r1, [sp, 0x14]                                |     var_14h = r1;
    0x00034b60 mla r2, r6, r1, r2                                |     __asm ("mla r2, r6, r1, r2");
    0x00034b64 movs r1, 0                                        |     r1 = 0;
    0x00034b66 strd r3, r2, [sp, 8]                              |     __asm ("strd r3, r2, [var_8h]");
    0x00034b6a mov r2, r5                                        |     r2 = r5;
    0x00034b6c ldr r3, [pc, 0x120]                               |     
    0x00034b6e add r3, pc                                        |     r3 = 0x69802;
    0x00034b70 str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034b72 mov.w r3, 0x1a6                                   |     r3 = 0x1a6;
    0x00034b76 bl 0x71448                                        |     fcn_00071448 ();
    0x00034b7a bl 0x70bf8                                        |     fcn_00070bf8 ();
    0x00034b7c invalid                                           |     
                                                                 |     if (r1 <= 0) {
    0x00034b80 ble.w 0x34706                                     |         goto label_16;
                                                                 |     }
    0x00034b84 ldr r3, [sp, 0x28]                                |     r3 = var_28h;
    0x00034b86 mov r2, r5                                        |     r2 = r5;
    0x00034b88 movs r1, 0                                        |     r1 = 0;
    0x00034b8a movs r0, 7                                        |     r0 = 7;
    0x00034b8c ldr r3, [r3, 4]                                   |     r3 = *((r3 + 4));
    0x00034b8e ldr r3, [r3, 4]                                   |     r3 = *((r3 + 4));
    0x00034b90 str r7, [sp]                                      |     *(sp) = r7;
    0x00034b92 str r3, [sp, 8]                                   |     var_8h = r3;
    0x00034b94 ldr r3, [pc, 0xfc]                                |     
    0x00034b96 add r3, pc                                        |     r3 = 0x6982e;
    0x00034b98 str r3, [sp, 4]                                   |     var_4h = r3;
    0x00034b9a mov.w r3, 0x1a8                                   |     r3 = 0x1a8;
    0x00034b9e bl 0x71448                                        |     fcn_00071448 ();
    0x00034ba2 bl 0x70bf8                                        |     r0 = fcn_00070bf8 ();
    0x00034ba6 cmp r0, 6                                         |     
                                                                 |     if (r0 <= 6) {
    0x00034ba8 ble.w 0x34706                                     |         goto label_16;
                                                                 |     }
    0x00034bac ldr r1, [pc, 0xe8]                                |     
    0x00034bae movw r3, 0x1a9                                    |     r3 = 0x1a9;
    0x00034bb2 str r7, [sp]                                      |     *(sp) = r7;
    0x00034bb4 mov r2, r5                                        |     r2 = r5;
    0x00034bb6 ldrd r6, r7, [sp, 0x60]                           |     __asm ("ldrd r6, r7, [var_60h]");
    0x00034bba movs r0, 7                                        |     r0 = 7;
    0x00034bbc add r1, pc                                        |     r1 = 0x69858;
    0x00034bbe str r1, [sp, 4]                                   |     var_4h = r1;
    0x00034bc0 movs r1, 0                                        |     r1 = 0;
    0x00034bc2 strd r6, r7, [sp, 8]                              |     __asm ("strd r6, r7, [var_8h]");
    0x00034bc6 bl 0x71448                                        |     fcn_00071448 ();
    0x00034bca ldr r0, [sp, 0x54]                                |     r0 = dest;
    0x00034bcc blx 0x8dac                                        |     fcn_00008dac ();
    0x00034bd0 b 0x349b6                                         |     goto label_17;
                                                                 | }

[*] Function printf used 4 times udevadm