[*] Binary protection state of mkfs.ext3

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


[*] Function popen tear down of mkfs.ext3

    ; assembly                                               | /* r2dec pseudo code output */
                                                             | /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-80367616.squashfs_v4_le_extract/usr/sbin/mkfs.ext3 @ 0x7472 */
                                                             | #include <stdint.h>
                                                             |  
                                                             | #define BIT_MASK(t,v) ((t)(-((v)!= 0)))&(((t)-1)>>((sizeof(t)*CHAR_BIT)-(v)))
                                                             |  
    ; (fcn) aav.0x00007472 ()                                | void aav_0x00007472 (int16_t arg_454h, int16_t arg_0h, int16_t arg_4h, int16_t arg_8h, int16_t arg_ch, int16_t arg_10h, int16_t arg_14h, int16_t arg_18h, int16_t arg_1ch, int16_t arg_20h, int16_t arg_24h, int16_t arg_28h, int16_t arg_2ch, int16_t arg_30h, int16_t arg_34h, int16_t arg_38h, int16_t arg_3ch, int16_t arg_40h, int16_t arg_44h, int16_t arg_48h, int16_t arg_4ch, int16_t arg_50h, int16_t arg_54h, char * * endptr, int16_t arg_60h, int16_t arg_64h, int16_t arg_68h, int16_t arg_6ch, int16_t arg_70h, int16_t arg_74h, int16_t arg_78h, int16_t arg_7ch, int16_t arg_80h, int16_t arg_84h, int16_t arg_88h, int16_t arg_8ch, int16_t arg_b8h, int16_t arg_d0h, int16_t arg_e4h, int16_t arg_f0h, int16_t arg_120h, int16_t arg_150h, int16_t arg_1b8h, int16_t arg_228h, int16_t arg_238h, int16_t arg_258h, int16_t arg_278h, int16_t arg_298h, int16_t arg_2a0h, int16_t arg_2f8h, int16_t arg_3a8h, int16_t arg_3b0h, int16_t arg_3e0h) {
                                                             | label_0:
    0x00007124 mov r2, r6                                    |     r2 = r6;
    0x00007126 mov r1, r5                                    |     r1 = r5;
    0x00007128 mov r0, r4                                    |     r0 = r4;
    0x0000712a blx 0x344c                                    |     r0 = fcn_0000344c ();
    0x0000712e adds r3, r0, 1                                |     r3 = r0 + 1;
                                                             |     if (r3 == r0) {
    0x00007130 beq 0x71d8                                    |         goto label_62;
                                                             |     }
                                                             |     do {
    0x00007132 subs r0, 0x43                                 |         r0 -= 0x43;
    0x00007134 cmp r0, 0x37                                  |         
                                                             |         if (r0 > 0x37) {
    0x00007136 bhi.w 0x9250                                  |             goto label_63;
                                                             |         }
                                                             |         /* switch table (57 cases) at 0x713e */
    0x0000713a tbh [pc, r0, lsl 1]                           |         __asm ("tbh [pc, r0, lsl 1]");
    0x000071ae ldr r3, [pc, 0x208]                           |         
    0x000071b0 movs r1, 0                                    |         r1 = 0;
    0x000071b2 ldr r2, [pc, 0x208]                           |         
    0x000071b4 add r3, pc                                    |         r3 = 0xe572;
    0x000071b6 ldr r0, [r3]                                  |         r0 = *(0xe572);
    0x000071b8 add r2, pc                                    |         r2 = 0xe57a;
    0x000071ba ldr r3, [pc, 0x204]                           |         
    0x000071bc add r3, pc                                    |         r3 = 0xe582;
    0x000071be blx 0x322c                                    |         fcn_0000322c ();
    0x000071c2 ldr r3, [pc, 0x200]                           |         
    0x000071c4 mov r2, r6                                    |         r2 = r6;
    0x000071c6 mov r1, r5                                    |         r1 = r5;
    0x000071c8 mov r0, r4                                    |         r0 = r4;
    0x000071ca ldr r3, [r7, r3]                              |         r3 = *((r7 + r3));
    0x000071cc ldr r3, [r3]                                  |         r3 = *(0x73c6);
    0x000071ce str r3, [sp, 0x24]                            |         *(arg_24h) = r3;
    0x000071d0 blx 0x344c                                    |         r0 = fcn_0000344c ();
    0x000071d4 adds r3, r0, 1                                |         r3 = r0 + 1;
    0x000071d6 bne 0x7132                                    |         
                                                             |     } while (r3 != r0);
                                                             | label_62:
    0x000071d8 ldr r3, [pc, 0x1ec]                           |     r3 = *(0x73c8);
    0x000071da ldr r6, [r7, r3]                              |     r6 = *((r7 + r3));
    0x000071dc ldr r3, [r6]                                  |     r3 = *(r6);
    0x000071de cmp.w sb, 0                                   |     
    0x000071e2 it eq                                         |     
                                                             |     if (sb == 0) {
    0x000071e4 cmpeq r3, r4                                  |         __asm ("cmpeq r3, r4");
                                                             |     }
                                                             |     if (sb == 0) {
    0x000071e6 beq.w 0x9250                                  |         goto label_63;
                                                             |     }
    0x000071ea ldr r2, [pc, 0x1e0]                           |     
    0x000071ec ldr.w r1, [r5, r3, lsl 2]                     |     offset_0 = r3 << 2;
                                                             |     r1 = *((r5 + offset_0));
    0x000071f0 adds r3, 1                                    |     r3++;
    0x000071f2 str r3, [r6]                                  |     *(r6) = r3;
    0x000071f4 add r2, pc                                    |     
    0x000071f6 str.w r1, [r2, 0x474]                         |     __asm ("str.w r1, [r2, 0x474]");
    0x000071fa ldr r2, [r2]                                  |     r2 = *(0xe5c6);
    0x000071fc cmp r2, 0                                     |     
                                                             |     if (r2 == 0) {
    0x000071fe beq.w 0x7766                                  |         goto label_64;
                                                             |     }
    0x00007202 cmp.w sb, 0                                   |     
                                                             |     if (sb == 0) {
    0x00007206 beq.w 0x778c                                  |         goto label_65;
                                                             |     }
    0x0000720a ldr r0, [pc, 0x1c4]                           |     
    0x0000720c movs r1, 1                                    |     r1 = 1;
    0x0000720e ldr r3, [pc, 0x1c4]                           |     
    0x00007210 ldr r2, [pc, 0x1c4]                           |     
    0x00007212 add r0, pc                                    |     
    0x00007214 str r0, [sp]                                  |     *(sp) = r0;
    0x00007216 add r3, pc                                    |     r3 = 0xe5f0;
    0x00007218 ldr r0, [sp, 0x18]                            |     r0 = *(arg_18h);
    0x0000721a add r2, pc                                    |     r2 = 0xe5f6;
    0x0000721c ldr r0, [r0]                                  |     r0 = *(0xe5e8);
    0x0000721e blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
                                                             | label_1:
    0x00007222 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00007224 mov.w r0, 0xb700                              |     
    0x00007228 movt r0, 0x7f2b                               |     r0 = 0x7f2bb700;
    0x0000722c ldr r4, [r3]                                  |     r4 = *(r3);
    0x0000722e blx 0x32b0                                    |     fcn_000032b0 ();
    0x00007232 ldr r2, [pc, 0x1a8]                           |     
    0x00007234 mov r3, r0                                    |     r3 = r0;
    0x00007236 movs r1, 1                                    |     r1 = 1;
    0x00007238 mov r0, r4                                    |     r0 = r4;
    0x0000723a add r2, pc                                    |     r2 = 0xe61c;
    0x0000723c blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x00007240 movs r0, 0                                    |     r0 = 0;
    0x00007242 blx 0x3934                                    |     fcn_00003934 ();
    0x00007246 ldr r3, [pc, 0x198]                           |     
    0x00007248 movs r2, 1                                    |     r2 = 1;
    0x0000724a add r3, pc                                    |     r3 = 0xe630;
    0x0000724c str.w r2, [r3, 0x444]                         |     __asm ("str.w r2, [r3, 0x444]");
    0x00007250 b 0x7124                                      |     goto label_0;
    0x00007252 ldr r3, [pc, 0x170]                           |     r3 = *(0x73c6);
    0x00007254 mov.w r1, -1                                  |     r1 = -1;
    0x00007258 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x0000725a ldr r0, [r3]                                  |     r0 = *(0x73c6);
    0x0000725c str r3, [sp, 0x34]                            |     *(arg_34h) = r3;
    0x0000725e blx 0x3404                                    |     fcn_00003404 ();
    0x00007262 movw r3, 0xfbff                               |     
    0x00007266 mov r2, r0                                    |     r2 = r0;
    0x00007268 mvn r1, 0x400                                 |     r1 = ~0x400;
    0x0000726a str r0, [r0, 0x18]                            |     *((r0 + 0x18)) = r0;
    0x0000726c movt r3, 0x1fff                               |     r3 = 0x1ffffbff;
    0x00007270 add r2, r1                                    |     r2 += r1;
    0x00007272 str r0, [sp, 0x38]                            |     *(arg_38h) = r0;
    0x00007274 cmp r2, r3                                    |     
                                                             |     if (r2 < r3) {
    0x00007276 bls.w 0x7124                                  |         goto label_0;
                                                             |     }
    0x0000727a ldr r0, [pc, 0x168]                           |     
    0x0000727c ldr r3, [sp, 0x34]                            |     r3 = *(arg_34h);
    0x0000727e ldr r2, [pc, 0x168]                           |     
    0x00007280 add r0, pc                                    |     r0 = 0xe66a;
    0x00007282 ldr r3, [r3]                                  |     r3 = *(r3);
    0x00007284 add r2, pc                                    |     r2 = 0xe672;
    0x00007286 b.w 0x93a0                                    |     goto label_58;
    0x0000728a ldr r3, [pc, 0x138]                           |     
    0x0000728c ldr r2, [sp, 0x28]                            |     r2 = *(arg_28h);
    0x0000728e ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x00007290 ldr r3, [r3]                                  |     r3 = *(0x73c6);
    0x00007292 str.w r3, [r2, 0x470]                         |     __asm ("str.w r3, [r2, 0x470]");
    0x00007296 b 0x7124                                      |     goto label_0;
    0x00007298 ldr r3, [pc, 0x150]                           |     
    0x0000729a movs r2, 1                                    |     r2 = 1;
    0x0000729c add r3, pc                                    |     r3 = 0xe68c;
    0x0000729e str r2, [r3, 8]                               |     *((r3 + 8)) = r2;
    0x000072a0 b 0x7124                                      |     goto label_0;
    0x000072a2 ldr r3, [sp, 0x6c]                            |     r3 = *(arg_6ch);
    0x000072a4 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x000072a6 bne.w 0x93d2                                  |         goto label_66;
                                                             |     }
    0x000072aa ldr r3, [pc, 0x118]                           |     r3 = *(0x73c6);
    0x000072ac ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000072ae ldr r0, [r3]                                  |     r0 = *(0x73c6);
    0x000072b0 blx 0x367c                                    |     r0 = fcn_0000367c ();
    0x000072b2 strd sb, r0, [r4, 0x6c]!                      |     __asm ("strd sb, r0, [r4, 0x6c]!");
    0x000072b6 b 0x7124                                      |     goto label_0;
    0x000072b8 ldr r3, [pc, 0x108]                           |     r3 = *(0x73c4);
    0x000072ba movs r2, 0xa                                  |     r2 = 0xa;
    0x000072bc movs r1, 0                                    |     r1 = 0;
    0x000072be ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000072c0 ldr r0, [r3]                                  |     r0 = *(0x73c4);
    0x000072c2 blx 0x34d0                                    |     fcn_000034d0 ();
    0x000072c6 str r0, [sp, 0x48]                            |     *(arg_48h) = r0;
    0x000072c8 b 0x7124                                      |     goto label_0;
    0x000072ca ldr r3, [pc, 0xf8]                            |     r3 = *(0x73c6);
    0x000072cc movs r2, 0                                    |     r2 = 0;
    0x000072ce add r1, sp, 0x5c                              |     r1 += endptr;
    0x000072d0 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000072d2 ldr r0, [r3]                                  |     r0 = *(0x73c6);
    0x000072d4 str r3, [sp, 0x34]                            |     *(arg_34h) = r3;
    0x000072d6 blx 0x3458                                    |     fcn_00003458 ();
    0x000072da ldr r3, [sp, 0x5c]                            |     r3 = *(endptr);
    0x000072dc str r0, [sp, 0x1c]                            |     *(arg_1ch) = r0;
    0x000072de ldrb r3, [r3]                                 |     r3 = *(r3);
    0x000072e0 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x000072e2 bne.w 0x93c4                                  |         goto label_67;
                                                             |     }
    0x000072e6 ldr r3, [sp, 0x1c]                            |     r3 = *(arg_1ch);
    0x000072e8 cmp r3, 1                                     |     
                                                             |     if (r3 > 1) {
    0x000072ea bgt.w 0x95d0                                  |         goto label_68;
                                                             |     }
    0x000072ee ldr r3, [pc, 0x100]                           |     
    0x000072f0 ldr r2, [sp, 0x1c]                            |     r2 = *(arg_1ch);
    0x000072f2 add r3, pc                                    |     r3 = 0xe6e8;
    0x000072f4 str r2, [r3, 0x5c]                            |     *((r3 + 0x5c)) = r2;
    0x000072f6 b 0x7124                                      |     goto label_0;
    0x000072f8 ldr r3, [pc, 0xf8]                            |     
    0x000072fa movs r2, 1                                    |     r2 = 1;
    0x000072fc add r3, pc                                    |     r3 = 0xe6f4;
    0x000072fe str r2, [r3]                                  |     *(r3) = r2;
    0x00007300 b 0x7124                                      |     goto label_0;
    0x00007302 ldr r3, [pc, 0xc0]                            |     r3 = *(0x73c6);
    0x00007304 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x00007306 ldr r2, [r3]                                  |     r2 = *(0x73c6);
    0x00007308 ldr r3, [pc, 0xec]                            |     
    0x0000730a add r3, pc                                    |     r3 = 0xe706;
    0x0000730c str.w r2, [r3, 0x464]                         |     __asm ("str.w r2, [r3, 0x464]");
    0x00007310 b 0x7124                                      |     goto label_0;
    0x00007312 ldr r2, [pc, 0xe8]                            |     
    0x00007314 add r2, pc                                    |     r2 = 0xe716;
    0x00007316 ldr.w r3, [r2, 0x460]                         |     r3 = *(0xeb76);
    0x0000731a adds r3, 1                                    |     r3++;
    0x0000731c str.w r3, [r2, 0x460]                         |     __asm ("str.w r3, [r2, 0x460]");
    0x00007320 b 0x7124                                      |     goto label_0;
    0x00007322 ldr r3, [pc, 0xa0]                            |     r3 = *(0x73c6);
    0x00007324 add r1, sp, 0x5c                              |     r1 += endptr;
    0x00007326 ldr.w sl, [r7, r3]                            |     sl = *((r7 + r3));
    0x0000732a ldr.w r0, [sl]                                |     r0 = *(sl);
    0x0000732e blx 0x315c                                    |     strtod (r0, r1);
    0x00007332 ldr r3, [sp, 0x5c]                            |     r3 = *(endptr);
    0x00007334 vmov.f64 d8, d0                               |     __asm ("vmov.f64 d8, d0");
    0x00007338 ldrb r3, [r3]                                 |     r3 = *(r3);
                                                             |     if (r3 != 0) {
    0x0000733a cbnz r3, 0x7352                               |         goto label_69;
                                                             |     }
    0x0000733c vcmpe.f64 d0, d9                              |     __asm ("vcmpe.f64 d0, d9");
    0x00007340 vmrs apsr_nzcv, fpscr                         |     __asm ("vmrs apsr_nzcv, fpscr");
                                                             |     if (r3 > 0) {
    0x00007344 bgt 0x7352                                    |         goto label_69;
                                                             |     }
    0x00007346 vcmpe.f64 d0, 0                               |     __asm ("vcmpe.f64 d0, 0");
    0x0000734a vmrs apsr_nzcv, fpscr                         |     __asm ("vmrs apsr_nzcv, fpscr");
                                                             |     if (r3 >= 0) {
    0x0000734e bpl.w 0x7124                                  |         goto label_0;
                                                             |     }
                                                             | label_69:
    0x00007352 ldr r0, [pc, 0xac]                            |     
    0x00007354 ldr r2, [pc, 0xac]                            |     
    0x00007356 ldr.w r3, [sl]                                |     r3 = *(sl);
    0x0000735a add r0, pc                                    |     r0 = 0xe760;
    0x0000735c add r2, pc                                    |     r2 = 0xe764;
    0x0000735e b.w 0x93a0                                    |     goto label_58;
    0x00007408 ldr.w r3, [pc, 0x7ac]                         |     r3 = *(0x7bb8);
    0x0000740c ldr.w fp, [pc, 0x7ac]                         |     
    0x00007410 ldr.w sl, [r7, r3]                            |     sl = *((r7 + r3));
    0x00007414 add fp, pc                                    |     fp = 0xefd4;
    0x00007416 ldr.w r0, [sl]                                |     r0 = *(sl);
    0x0000741a blx 0x3434                                    |     r0 = fcn_00003434 ();
    0x0000741e adds r1, r0, 1                                |     r1 = r0 + 1;
    0x00007420 ldr.w r0, [fp, 0x454]                         |     r0 = *(arg_454h);
    0x00007424 blx 0x38dc                                    |     readdir ();
    0x00007428 str.w r0, [fp, 0x454]                         |     __asm ("str.w r0, [arg_454h]");
    0x0000742c cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x0000742e beq.w 0x95b6                                  |         goto label_70;
                                                             |     }
    0x00007432 ldr.w r1, [sl]                                |     r1 = *(sl);
    0x00007436 blx 0x34dc                                    |     fcn_000034dc ();
    0x0000743a b 0x7124                                      |     goto label_0;
    0x0000743c ldr.w r3, [pc, 0x780]                         |     
    0x00007440 add r3, pc                                    |     r3 = 0xf004;
    0x00007442 ldr.w r2, [r3, 0x43c]                         |     r2 = *(0xf440);
                                                             |     if (r2 == 0) {
    0x00007446 cbnz r2, 0x7450                               |         
    0x00007448 mov.w r2, -1                                  |         r2 = -1;
    0x0000744c str.w r2, [r3, 0x43c]                         |         __asm ("str.w r2, [r3, 0x43c]");
                                                             |     }
    0x00007450 ldr.w r3, [pc, 0x770]                         |     
    0x00007454 add r3, pc                                    |     r3 = 0xf01c;
    0x00007456 ldr.w r2, [r3, 0x450]                         |     r2 = *(0xf46c);
    0x0000745a cmp r2, 0                                     |     
                                                             |     if (r2 != 0) {
    0x0000745c bne.w 0x7124                                  |         goto label_0;
                                                             |     }
    0x00007460 mov.w r2, -1                                  |     r2 = -1;
    0x00007464 str.w r2, [r3, 0x450]                         |     __asm ("str.w r2, [r3, 0x450]");
    0x00007466 movs r4, 0x50                                 |     r4 = 0x50;
    0x00007468 b 0x7124                                      |     goto label_0;
    0x0000746a ldr.w r3, [pc, 0x74c]                         |     r3 = *(0x7bba);
    0x0000746e mov.w r1, -1                                  |     r1 = -1;
    0x00007470 adds r1, 0xff                                 |     r1 += 0xff;
    0x00007472 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x00007474 ldr r0, [r3]                                  |     r0 = *(r3);
    0x00007476 str r3, [sp, 0x34]                            |     *(arg_34h) = r3;
    0x00007478 blx 0x338c                                    |     fcn_0000338c ();
    0x0000747c mov.w r3, 0xfc00                              |     r3 = 0xfc00;
    0x00007480 sub.w r2, r0, 0x400                           |     r2 = r0 - 0x400;
    0x00007484 movt r3, 0x3ff                                |     r3 = (r3 & 0xFFFF) | 0x3ff0000;
    0x00007488 str r0, [sp, 0x30]                            |     *(arg_30h) = r0;
    0x0000748a cmp r2, r3                                    |     
                                                             |     if (r2 < r3) {
    0x0000748c bls.w 0x7124                                  |         goto label_0;
                                                             |     }
    0x00007490 ldr.w r1, [pc, 0x734]                         |     
    0x00007494 mov.w r0, 0x4000000                           |     r0 = 0x4000000;
    0x00007498 ldr r3, [sp, 0x34]                            |     r3 = *(arg_34h);
    0x0000749a mov.w r4, 0x400                               |     r4 = 0x400;
    0x0000749e ldr.w r2, [pc, 0x72c]                         |     
    0x000074a2 add r1, pc                                    |     r1 = 0xf06e;
    0x000074a4 ldr r3, [r3]                                  |     r3 = *(r3);
    0x000074a6 add r2, pc                                    |     r2 = 0xf078;
    0x000074a8 str r0, [sp, 4]                               |     *(arg_4h) = r0;
    0x000074aa ldr r0, [r1]                                  |     r0 = *(0xf06e);
    0x000074ac movs r1, 0                                    |     r1 = 0;
    0x000074ae str r4, [sp]                                  |     *(sp) = r4;
    0x000074b0 blx 0x322c                                    |     fcn_0000322c ();
    0x000074b4 movs r0, 1                                    |     r0 = 1;
    0x000074b6 blx 0x3934                                    |     fcn_00003934 ();
    0x000074ba ldr.w r3, [pc, 0x6fc]                         |     r3 = *(0x7bba);
    0x000074be add r1, sp, 0x5c                              |     r1 += endptr;
    0x000074c0 movs r2, 0                                    |     r2 = 0;
    0x000074c2 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000074c4 ldr r0, [r3]                                  |     r0 = *(0x7bba);
    0x000074c6 blx 0x3458                                    |     fcn_00003458 ();
    0x000074ca ldr.w r3, [pc, 0x704]                         |     
    0x000074ce add r3, pc                                    |     r3 = 0xf0a4;
    0x000074d0 str r0, [r3, 0x30]                            |     *((r3 + 0x30)) = r0;
    0x000074d2 ldr r3, [sp, 0x5c]                            |     r3 = *(endptr);
    0x000074d4 ldrb r1, [r3]                                 |     r1 = *(r3);
    0x000074d6 cmp r1, 0                                     |     
                                                             |     if (r1 != 0) {
    0x000074d8 bne.w 0x95a8                                  |         goto label_71;
                                                             |     }
    0x000074dc lsls r2, r0, 0x1d                             |     r2 = r0 << 0x1d;
                                                             |     if (r2 == r0) {
    0x000074de beq.w 0x7124                                  |         goto label_0;
                                                             |     }
    0x000074e2 ldr.w r0, [pc, 0x6f0]                         |     
    0x000074e6 ldr.w r3, [pc, 0x6f0]                         |     
    0x000074ea ldr.w r2, [pc, 0x6f0]                         |     
    0x000074ee add r0, pc                                    |     
    0x000074f0 ldr r0, [r0]                                  |     r0 = *(0xf0c8);
    0x000074f2 add r3, pc                                    |     r3 = 0xf0d0;
    0x000074f4 add r2, pc                                    |     r2 = 0xf0d6;
    0x000074f6 blx 0x322c                                    |     fcn_0000322c ();
    0x000074fa movs r0, 1                                    |     r0 = 1;
    0x000074fc blx 0x3934                                    |     fcn_00003934 ();
    0x00007500 ldr.w r3, [pc, 0x6b4]                         |     r3 = *(0x7bb8);
    0x00007504 ldr.w r1, [pc, 0x6d8]                         |     
    0x00007508 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x0000750a add r1, pc                                    |     r1 = 0xf0ee;
    0x0000750c ldr.w sl, [r3]                                |     sl = *(0x7bb8);
    0x0000750e adr r0, 0                                     |     r0 = 0;
    0x00007510 mov r0, sl                                    |     r0 = sl;
    0x00007512 blx 0x3928                                    |     r0 = fcn_00003928 ();
    0x00007516 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x00007518 bne.w 0x795c                                  |         goto label_72;
                                                             |     }
    0x0000751c ldr.w r3, [pc, 0x6c4]                         |     
    0x00007520 movs r2, 1                                    |     r2 = 1;
    0x00007522 add r3, pc                                    |     r3 = 0xf10a;
    0x00007524 str.w r2, [r3, 0x448]                         |     __asm ("str.w r2, [r3, 0x448]");
    0x00007526 movs r4, 0x48                                 |     r4 = 0x48;
    0x00007528 b 0x7124                                      |     goto label_0;
    0x0000752a ldr.w r3, [pc, 0x68c]                         |     r3 = *(0x7bba);
    0x0000752e ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x00007530 ldr r2, [r3]                                  |     r2 = *(0x7bba);
    0x00007532 ldr.w r3, [pc, 0x6b4]                         |     
    0x00007536 add r3, pc                                    |     r3 = 0xf124;
    0x00007538 str.w r2, [r3, 0x440]                         |     __asm ("str.w r2, [r3, 0x440]");
    0x0000753c b 0x7124                                      |     goto label_0;
    0x0000753e ldr.w r2, [pc, 0x6ac]                         |     
    0x00007542 add r2, pc                                    |     r2 = 0xf134;
    0x00007544 ldr r3, [r2, 4]                               |     r3 = *(0xf138);
    0x00007546 adds r3, 1                                    |     r3++;
    0x00007548 str r3, [r2, 4]                               |     *((r2 + 4)) = r3;
    0x0000754a b 0x7124                                      |     goto label_0;
    0x0000754c ldr.w r3, [pc, 0x668]                         |     r3 = *(0x7bb8);
    0x00007550 mov.w r1, -1                                  |     r1 = -1;
    0x00007554 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x00007556 ldr r0, [r3]                                  |     r0 = *(0x7bb8);
    0x00007558 str r3, [sp, 0x34]                            |     *(arg_34h) = r3;
    0x0000755a blx 0x3404                                    |     r0 = fcn_00003404 ();
    0x0000755e eor.w r3, r0, r0, asr 31                      |     r3 = r0 ^ (r0 >> 31);
    0x00007562 str r0, [sp, 0x10]                            |     *(arg_10h) = r0;
    0x00007564 sub.w r3, r3, r0, asr 31                      |     r3 -= (r0 >> 31);
    0x00007568 sub.w r3, r3, 0x400                           |     r3 -= 0x400;
    0x0000756c cmp.w r3, 0xfc00                              |     
                                                             |     if (r3 > 0xfc00) {
    0x00007570 bhi.w 0x959a                                  |         goto label_73;
                                                             |     }
    0x00007574 ldr r3, [sp, 0x10]                            |     r3 = *(arg_10h);
    0x00007576 cmp.w r3, 0x1000                              |     
                                                             |     if (r3 > 0x1000) {
    0x0000757a bgt.w 0x7b20                                  |         goto label_74;
                                                             |     }
    0x0000757e ldr r3, [sp, 0x10]                            |     r3 = *(arg_10h);
    0x00007580 cmp r3, 0                                     |     
                                                             |     if (r3 <= 0) {
    0x00007582 ble.w 0x7124                                  |         goto label_0;
                                                             |     }
    0x00007584 add r5, sp, 0x33c                             |     r5 = sp + 0x33c;
    0x00007586 mov r2, r3                                    |     r2 = r3;
    0x00007588 asrs r3, r3, 0xa                              |     r3 >>= 0xa;
    0x0000758a asrs r1, r2, 0x1f                             |     r1 = r2 >> 0x1f;
    0x0000758c lsrs r3, r3, 1                                |     r3 >>= 1;
    0x0000758e lsrs r2, r1, 1                                |     r2 = r1 >> 1;
    0x00007590 orr.w r3, r3, r1, lsl 31                      |     r3 |= (r1 << 31);
    0x00007594 orrs.w r1, r3, r1, lsr 1                      |     r1 = r3 | (r1 >> 1);
    0x00007598 it eq                                         |     
                                                             |     if (r1 != r3) {
    0x0000759a moveq r1, 0                                   |         r1 = 0;
                                                             |     }
                                                             |     if (r1 != r3) {
    0x0000759c bne.w 0x7b42                                  |         goto label_75;
                                                             |     }
                                                             | label_5:
    0x000075a0 ldr.w r3, [pc, 0x64c]                         |     
    0x000075a4 add r3, pc                                    |     r3 = 0xf198;
    0x000075a6 str r1, [r3, 0x28]                            |     *((r3 + 0x28)) = r1;
    0x000075a8 b 0x7124                                      |     goto label_0;
    0x000075aa add.w sb, sb, 1                               |     sb++;
    0x000075ae b 0x7124                                      |     goto label_0;
    0x000075b0 ldr.w r3, [pc, 0x604]                         |     r3 = *(0x7bb8);
    0x000075b4 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000075b6 ldr r2, [r3]                                  |     r2 = *(0x7bb8);
    0x000075b8 ldr.w r3, [pc, 0x638]                         |     
    0x000075ba adds r6, 0x38                                 |     r6 += 0x38;
    0x000075bc add r3, pc                                    |     r3 = 0xf1b4;
    0x000075be str.w r2, [r3, 0x46c]                         |     __asm ("str.w r2, [r3, 0x46c]");
    0x000075c2 b 0x7124                                      |     goto label_0;
    0x000075c4 ldr r3, [sp, 0x70]                            |     r3 = *(arg_70h);
    0x000075c6 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x000075c8 bne.w 0x95ec                                  |         goto label_76;
                                                             |     }
    0x000075cc ldr.w r3, [pc, 0x5e8]                         |     r3 = *(0x7bb8);
    0x000075d0 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000075d2 ldr r0, [r3]                                  |     r0 = *(0x7bb8);
    0x000075d4 blx 0x367c                                    |     fcn_0000367c ();
    0x000075d8 str r0, [sp, 0x70]                            |     *(arg_70h) = r0;
    0x000075da b 0x7124                                      |     goto label_0;
    0x000075dc ldr.w r3, [pc, 0x618]                         |     
    0x000075e0 movs r2, 1                                    |     r2 = 1;
    0x000075e2 add r3, pc                                    |     r3 = 0xf1de;
    0x000075e4 str.w r2, [r3, 0x468]                         |     __asm ("str.w r2, [r3, 0x468]");
    0x000075e8 b 0x7124                                      |     goto label_0;
    0x000075ea ldr.w r3, [pc, 0x5cc]                         |     r3 = *(0x7bba);
    0x000075ee add.w fp, r8, 1                               |     
    0x000075f0 lsrs r1, r0, 0xc                              |     r1 = r0 >> 0xc;
    0x000075f2 ldr.w sl, [r7, r3]                            |     sl = *((r7 + r3));
    0x000075f4 adr r0, 0xc                                   |     r0 = 0xc;
    0x000075f6 ldr.w r0, [sl]                                |     r0 = *(sl);
    0x000075fa blx 0x3434                                    |     r0 = fcn_00003434 ();
    0x000075fe add.w r1, r0, fp                              |     r1 = r0 + fp;
    0x00007602 ldr r0, [sp, 0x74]                            |     r0 = *(arg_74h);
    0x00007604 blx 0x38dc                                    |     r0 = readdir ();
    0x00007608 mov r3, r0                                    |     r3 = r0;
    0x0000760a cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x0000760c beq.w 0x937c                                  |         goto label_77;
                                                             |     }
    0x00007610 str r0, [sp, 0x74]                            |     *(arg_74h) = r0;
    0x00007612 cmp.w r8, 0                                   |     
                                                             |     if (r8 != 0) {
    0x00007616 bne.w 0x7b56                                  |         goto label_78;
                                                             |     }
    0x0000761a strb.w r8, [r0]                               |     *(r0) = r8;
                                                             | label_6:
    0x0000761e ldr.w r1, [sl]                                |     r1 = *(sl);
    0x00007622 mov r0, r3                                    |     r0 = r3;
    0x00007624 blx 0x3774                                    |     popen (r0, r1)
    0x00007628 ldr.w r0, [sl]                                |     r0 = *(sl);
    0x0000762a movs r0, r0                                   |     
    0x0000762c blx 0x3434                                    |     r0 = fcn_00003434 ();
    0x00007630 add.w r8, r0, fp                              |     r8 = r0 + fp;
    0x00007634 b 0x7124                                      |     goto label_0;
    0x00007636 ldr.w r3, [pc, 0x580]                         |     r3 = *(0x7bba);
    0x0000763a movs r2, 0                                    |     r2 = 0;
    0x0000763c add r1, sp, 0x5c                              |     r1 += endptr;
    0x0000763e ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x00007640 str r2, [sp, 0x3c]                            |     *(arg_3ch) = r2;
    0x00007642 ldr r0, [r3]                                  |     r0 = *(0x7bba);
    0x00007644 str r3, [sp, 0x34]                            |     *(arg_34h) = r3;
    0x00007646 blx 0x3458                                    |     fcn_00003458 ();
    0x0000764a ldr r3, [sp, 0x5c]                            |     r3 = *(endptr);
    0x0000764c str r0, [sp, 0x2c]                            |     *(arg_2ch) = r0;
    0x0000764e ldrb r3, [r3]                                 |     r3 = *(r3);
    0x00007650 cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x00007652 beq.w 0x7124                                  |         goto label_0;
                                                             |     }
    0x00007656 ldr.w r0, [pc, 0x5a4]                         |     
    0x0000765a ldr r3, [sp, 0x34]                            |     r3 = *(arg_34h);
    0x0000765c ldr.w r2, [pc, 0x5a0]                         |     
    0x00007660 add r0, pc                                    |     r0 = 0xf262;
    0x00007662 ldr r3, [r3]                                  |     r3 = *(r3);
    0x00007664 add r2, pc                                    |     r2 = 0xf268;
    0x00007666 b.w 0x93a0                                    |     goto label_58;
    0x0000766a ldr.w r3, [pc, 0x54c]                         |     r3 = *(0x7bba);
    0x0000766e ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x00007670 ldr r2, [r3]                                  |     r2 = *(0x7bba);
    0x00007672 ldr.w r3, [pc, 0x590]                         |     
    0x00007676 add r3, pc                                    |     r3 = 0xf280;
    0x00007678 str.w r2, [r3, 0x45c]                         |     __asm ("str.w r2, [r3, 0x45c]");
    0x0000767c b 0x7124                                      |     goto label_0;
    0x0000767e ldr.w r3, [pc, 0x538]                         |     r3 = *(0x7bba);
    0x00007682 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x00007684 ldr.w sl, [r3]                                |     sl = *(0x7bba);
    0x00007688 ldr.w r3, [pc, 0x57c]                         |     
    0x0000768c mov r0, sl                                    |     r0 = sl;
    0x0000768e add r3, pc                                    |     r3 = 0xf29a;
    0x00007690 str.w sl, [r3, 0x458]                         |     __asm ("str.w sl, [r3, 0x458]");
    0x00007694 blx 0x3434                                    |     r0 = fcn_00003434 ();
    0x00007698 cmp r0, 0x10                                  |     
                                                             |     if (r0 < 0x10) {
    0x0000769a bls.w 0x7124                                  |         goto label_0;
                                                             |     }
    0x0000769e ldr r1, [sp, 0x18]                            |     r1 = *(arg_18h);
    0x000076a0 movs r3, 0                                    |     r3 = 0;
    0x000076a2 ldr.w r2, [pc, 0x568]                         |     
    0x000076a6 strb.w r3, [sl, 0x10]                         |     *((sl + 0x10)) = r3;
    0x000076aa mov r3, sl                                    |     r3 = sl;
    0x000076ac ldr r0, [r1]                                  |     r0 = *(r1);
    0x000076ae movs r1, 1                                    |     r1 = 1;
    0x000076b0 add r2, pc                                    |     r2 = 0xf2c2;
    0x000076b2 blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x000076b6 b 0x7124                                      |     goto label_0;
    0x000076b8 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x000076ba movs r2, 0x6d                                 |     r2 = 0x6d;
    0x000076bc ldr.w r0, [pc, 0x550]                         |     
    0x000076c0 movs r1, 1                                    |     r1 = 1;
    0x000076c2 ldr r3, [r3]                                  |     r3 = *(r3);
    0x000076c4 add r0, pc                                    |     r0 = 0xf2d8;
    0x000076c6 blx 0x35c4                                    |     ext2fs_namei ();
    0x000076ca ldr.w r3, [pc, 0x548]                         |     
    0x000076ce movs r2, 0                                    |     r2 = 0;
    0x000076d0 add r3, pc                                    |     r3 = 0xf2ea;
    0x000076d2 str r2, [r3, 0x20]                            |     *((r3 + 0x20)) = r2;
    0x000076d4 b 0x7124                                      |     goto label_0;
    0x000076d6 ldr.w r3, [pc, 0x4e0]                         |     r3 = *(0x7bba);
    0x000076da ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000076dc ldr r0, [r3]                                  |     r0 = *(0x7bba);
    0x000076de bl 0x9a70                                     |     fcn_00009a70 (r0);
    0x000076e2 b 0x7124                                      |     goto label_0;
    0x000076e4 ldr.w r3, [pc, 0x4d0]                         |     r3 = *(0x7bb8);
    0x000076e8 movs r2, 0                                    |     r2 = 0;
    0x000076ea add r1, sp, 0x5c                              |     r1 += endptr;
    0x000076ec ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000076ee ldr r0, [r3]                                  |     r0 = *(0x7bb8);
    0x000076f0 str r3, [sp, 0x34]                            |     *(arg_34h) = r3;
    0x000076f2 blx 0x3458                                    |     fcn_00003458 ();
    0x000076f6 ldr r3, [sp, 0x5c]                            |     r3 = *(endptr);
    0x000076f8 str r0, [sp, 0x14]                            |     *(arg_14h) = r0;
    0x000076fa ldrb r3, [r3]                                 |     r3 = *(r3);
    0x000076fc cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x000076fe beq.w 0x7124                                  |         goto label_0;
                                                             |     }
    0x00007702 ldr.w r0, [pc, 0x514]                         |     
    0x00007706 ldr r3, [sp, 0x34]                            |     r3 = *(arg_34h);
    0x00007708 ldr.w r2, [pc, 0x510]                         |     
    0x0000770a movs r5, 0x10                                 |     r5 = 0x10;
    0x0000770c add r0, pc                                    |     r0 = 0xf32a;
    0x0000770e ldr r3, [r3]                                  |     r3 = *(r3);
    0x00007710 add r2, pc                                    |     r2 = 0xf330;
    0x00007712 b.w 0x93a0                                    |     goto label_58;
    0x00007716 ldr.w r3, [pc, 0x4a0]                         |     r3 = *(0x7bba);
    0x0000771a movs r2, 0                                    |     r2 = 0;
    0x0000771c add r1, sp, 0x5c                              |     r1 += endptr;
    0x0000771e ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x00007720 ldr r0, [r3]                                  |     r0 = *(0x7bba);
    0x00007722 blx 0x3458                                    |     fcn_00003458 ();
    0x00007726 ldr r3, [sp, 0x5c]                            |     r3 = *(endptr);
    0x00007728 str r0, [sp, 0x20]                            |     *(arg_20h) = r0;
    0x0000772a ldrb r3, [r3]                                 |     r3 = *(r3);
    0x0000772c cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x0000772e bne.w 0x95fa                                  |         goto label_79;
                                                             |     }
    0x00007732 ldr r2, [sp, 0x20]                            |     r2 = *(arg_20h);
                                                             |     if (r2 == 0) {
    0x00007734 cbz r2, 0x773e                                |         goto label_80;
                                                             |     }
    0x00007736 subs r3, r2, 1                                |     r3 = r2 - 1;
    0x00007738 tst r3, r2                                    |     
                                                             |     if ((r3 & r2) == 0) {
    0x0000773a beq.w 0x7124                                  |         goto label_0;
                                                             |     }
                                                             | label_80:
    0x0000773e ldr.w r0, [pc, 0x4e0]                         |     
    0x00007742 ldr.w r3, [pc, 0x4e0]                         |     
    0x00007746 ldr.w r2, [pc, 0x4e0]                         |     
    0x0000774a add r0, pc                                    |     r0 = 0xf370;
    0x0000774c add r3, pc                                    |     r3 = 0xf376;
    0x0000774e add r2, pc                                    |     r2 = 0xf37c;
    0x00007750 b.w 0x93a0                                    |     goto label_58;
    0x00007754 ldr.w r2, [pc, 0x4d4]                         |     
    0x00007758 add r2, pc                                    |     r2 = 0xf388;
    0x0000775a ldr.w r3, [r2, 0x44c]                         |     r3 = *(0xf7d4);
    0x0000775e adds r3, 1                                    |     r3++;
    0x00007760 str.w r3, [r2, 0x44c]                         |     __asm ("str.w r3, [r2, 0x44c]");
    0x00007764 b 0x7124                                      |     goto label_0;
                                                             | label_64:
    0x00007766 ldr.w r3, [pc, 0x4c8]                         |     
    0x0000776a ldr r1, [sp, 0x18]                            |     r1 = *(arg_18h);
    0x0000776c ldr.w r2, [pc, 0x4c4]                         |     
    0x00007770 add r3, pc                                    |     r3 = 0xf3a6;
    0x00007772 str r3, [sp]                                  |     *(sp) = r3;
    0x00007774 ldr.w r3, [pc, 0x4c0]                         |     
    0x00007778 add r2, pc                                    |     r2 = 0xf3b0;
    0x0000777a ldr r0, [r1]                                  |     r0 = *(r1);
    0x0000777c movs r1, 1                                    |     r1 = 1;
    0x0000777e add r3, pc                                    |     r3 = 0xf3ba;
    0x00007780 blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x00007784 cmp.w sb, 0                                   |     
                                                             |     if (sb != 0) {
    0x00007788 bne.w 0x7222                                  |         goto label_1;
                                                             |     }
                                                             | label_65:
    0x0000778c ldr r3, [sp, 0x10]                            |     r3 = *(arg_10h);
    0x0000778e cmp r3, 0                                     |     
    0x00007790 ble.w 0x79c6                                  |     
                                                             |     while (r3 == 0) {
                                                             | label_2:
    0x00007794 ldr r3, [r6]                                  |         r3 = *(r6);
    0x00007796 cmp r3, r4                                    |         
                                                             |         if (r3 < r4) {
    0x00007798 blt.w 0x8798                                  |             goto label_81;
                                                             |         }
    0x0000779c ldr.w r4, [pc, 0x49c]                         |         
    0x000077a0 movs r6, 0                                    |         r6 = 0;
    0x000077a2 ldr.w r8, [pc, 0x49c]                         |         
    0x000077a6 ldr.w r2, [pc, 0x49c]                         |         
    0x000077aa add r4, pc                                    |         r4 = 0xf3ea;
    0x000077ac str r6, [sp]                                  |         *(sp) = r6;
    0x000077ae addw r3, r4, 0x47c                            |         __asm ("addw r3, r4, 0x47c");
    0x000077b2 add r8, pc                                    |         r8 = 0xf3f8;
    0x000077b4 str r3, [sp, 4]                               |         *(arg_4h) = r3;
    0x000077b6 add r2, pc                                    |         r2 = 0xf400;
    0x000077b8 mov r3, r6                                    |         r3 = r6;
    0x000077ba mov r1, r8                                    |         r1 = r8;
    0x000077bc ldr.w r0, [r4, 0x434]                         |         r0 = *(0xf81e);
    0x000077c0 bl 0xe648                                     |         fcn_0000e648 (r0);
    0x000077c4 ldr.w r0, [pc, 0x480]                         |         
    0x000077c8 add r0, pc                                    |         r0 = 0xf414;
    0x000077ca blx 0x3144                                    |         getenv (r0);
    0x000077ce str r0, [sp, 0x5c]                            |         *(endptr) = r0;
    0x000077d0 cmp r0, 0                                     |         
                                                             |         if (r0 == 0) {
    0x000077d2 beq.w 0x7a72                                  |             goto label_82;
                                                             |         }
    0x000077d6 strd r6, r6, [sp, 0x40]                       |         __asm ("strd r6, r6, [sp, 0x40]");
                                                             | label_15:
    0x000077da movs r2, 0xa                                  |         r2 = 0xa;
    0x000077dc movs r1, 0                                    |         r1 = 0;
    0x000077de blx 0x34d0                                    |         fcn_000034d0 ();
    0x000077e2 ldr.w r3, [pc, 0x468]                         |         
    0x000077e6 add r3, pc                                    |         r3 = 0xf438;
    0x000077e8 str.w r0, [r3, 0x47c]                         |         __asm ("str.w r0, [r3, 0x47c]");
    0x000077ea lsls r4, r7, 0x11                             |         r4 = r7 << 0x11;
                                                             | label_16:
    0x000077ec ldr.w r3, [pc, 0x460]                         |         
    0x000077f0 ldr.w r4, [pc, 0x460]                         |         
    0x000077f4 ldr.w r2, [pc, 0x460]                         |         
    0x000077f8 ldr.w r1, [pc, 0x460]                         |         
    0x000077fc add r3, pc                                    |         r3 = 0xf450;
    0x000077fe adds r3, 0x2c                                 |         r3 += 0x2c;
    0x00007800 add r4, pc                                    |         r4 = 0xf458;
    0x00007802 str r3, [sp, 4]                               |         *(arg_4h) = r3;
    0x00007804 movs r3, 0                                    |         r3 = 0;
    0x00007806 str r3, [sp]                                  |         *(sp) = r3;
    0x00007808 add r2, pc                                    |         r2 = 0xf464;
    0x0000780a add r1, pc                                    |         r1 = 0xf46a;
    0x0000780c ldr.w r0, [r4, 0x434]                         |         r0 = *(0xf88c);
    0x00007810 bl 0xe648                                     |         fcn_0000e648 (r0);
    0x00007814 ldr.w r2, [pc, 0x448]                         |         
    0x00007816 movs r4, 0x48                                 |         r4 = 0x48;
    0x00007818 ldr.w r1, [r4, 0x44c]                         |         r1 = *(0xf8a4);
    0x0000781c ldr.w r0, [r4, 0x474]                         |         r0 = *(0xf8cc);
    0x00007820 add r2, pc                                    |         r2 = 0xf484;
    0x00007822 bl 0x9980                                     |         fcn_00009980 (r0, r1, r2);
    0x00007826 ldr.w r3, [r4, 0x460]                         |         r3 = *(0xf8b8);
    0x0000782a cmp r3, 0                                     |         
                                                             |         if (r3 == 0) {
    0x0000782c beq.w 0x7aa2                                  |             goto label_83;
                                                             |         }
    0x00007830 ldrd r2, r1, [sp, 0x40]                       |         __asm ("ldrd r2, r1, [arg_40h]");
    0x00007834 orrs.w r3, r2, r1                             |         r3 = r2 | r1;
                                                             |         if (r3 == r2) {
    0x00007838 beq.w 0x7aa2                                  |             goto label_83;
                                                             |         }
    0x0000783c str.w r2, [r4, 0x480]                         |         __asm ("str.w r2, [r4, 0x480]");
    0x00007840 str.w r1, [r4, 0x484]                         |         __asm ("str.w r1, [r4, 0x484]");
                                                             | label_3:
    0x00007844 ldr.w r3, [pc, 0x41c]                         |         
    0x00007848 add r3, pc                                    |         r3 = 0xf4b0;
    0x0000784a ldr.w r1, [r3, 0x44c]                         |         r1 = *(0xf8fc);
                                                             |         if (r1 == 0) {
    0x0000784e cbnz r1, 0x7858                               |             
    0x00007850 ldr r2, [sp, 0x68]                            |             r2 = *(arg_68h);
    0x00007852 cmp r2, 0                                     |             
                                                             |             if (r2 != 0) {
    0x00007854 bne.w 0x91cc                                  |                 goto label_84;
                                                             |             }
                                                             |         }
                                                             | label_52:
    0x00007858 ldr r3, [sp, 0x40]                            |         r3 = *(arg_40h);
    0x0000785a str r3, [sp, 0x34]                            |         *(arg_34h) = r3;
    0x0000785c ldr r3, [sp, 0x44]                            |         r3 = *(arg_44h);
    0x0000785e str r3, [sp, 0x28]                            |         *(arg_28h) = r3;
                                                             | label_4:
    0x00007860 ldr r3, [sp, 0x6c]                            |         r3 = *(arg_6ch);
    0x00007862 cmp r3, 0                                     |         
                                                             |         if (r3 == 0) {
    0x00007864 beq.w 0x8f94                                  |             goto label_85;
                                                             |         }
                                                             | label_46:
    0x00007868 ldr r3, [sp, 0x70]                            |         r3 = *(arg_70h);
    0x0000786a cmp r3, 0                                     |         
                                                             |         if (r3 == 0) {
    0x0000786c beq.w 0x8f72                                  |             goto label_86;
                                                             |         }
    0x00007870 ldr r2, [pc, 0x3f4]                           |         
    0x00007872 add r2, pc                                    |         r2 = 0xf4de;
    0x00007874 ldr.w r3, [r2, 0x464]                         |         r3 = *(0xf942);
    0x00007878 cmp r3, 0                                     |         
                                                             |         if (r3 == 0) {
    0x0000787a beq.w 0x8fd0                                  |             goto label_87;
                                                             |         }
                                                             | label_47:
    0x0000787e ldr r3, [sp, 0x34]                            |         r3 = *(arg_34h);
    0x00007880 ldr r2, [sp, 0x28]                            |         r2 = *(arg_28h);
    0x00007882 ldrd r4, r8, [sp, 0x6c]                       |         __asm ("ldrd r4, r8, [arg_6ch]");
    0x00007886 orrs r3, r2                                   |         r3 |= r2;
    0x00007888 itt ne                                        |         
                                                             |         if (r3 == r2) {
    0x0000788a ldrne fp, [sp, 0x34]                          |             fp = *(arg_34h);
                                                             |         }
                                                             |         if (r3 != r2) {
    0x0000788e ldr.w sl, [sp, 0x28]                          |             sl = *(arg_28h);
                                                             |         }
                                                             |         if (r3 == r2) {
    0x00007892 bne 0x78a0                                    |             
    0x00007894 ldr r3, [pc, 0x3d4]                           |             
    0x00007896 add r3, pc                                    |             r3 = 0xf506;
    0x00007898 ldr.w fp, [r3, 0x480]                         |             fp = *(0xf986);
    0x0000789c ldr.w sl, [r3, 0x484]                         |             sl = *(0xf98a);
    0x0000789e adr r4, 0x210                                 |             r4 = 0x210;
                                                             |         }
    0x000078a0 ldr r3, [r5]                                  |         r3 = *(r5);
    0x000078a2 movs r2, 0                                    |         r2 = 0;
    0x000078a4 ldr r5, [pc, 0x3c8]                           |         
    0x000078a6 str r2, [sp, 0x78]                            |         *(arg_78h) = r2;
    0x000078a8 str r3, [sp, 0x50]                            |         *(arg_50h) = r3;
    0x000078aa add r5, pc                                    |         r5 = 0xf51e;
    0x000078ac ldr.w r0, [r5, 0x464]                         |         r0 = *(0xf982);
    0x000078b0 bl 0x6094                                     |         fcn_00006094 (r0);
    0x000078b4 vldr d16, [pc, 0x2f8]                         |         __asm ("vldr d16, [0x00007bb4]");
    0x000078b8 add r1, sp, 0x8c                              |         r1 += arg_8ch;
    0x000078ba mov r6, r0                                    |         r6 = r0;
    0x000078bc movs r0, 8                                    |         r0 = 8;
    0x000078be vst1.32 {d16}, [r1]                           |         __asm ("vst1.32 {d16}, [r1]");
    0x000078c2 blx 0x36a4                                    |         r0 = fcn_000036a4 ();
    0x000078c6 mov sb, r0                                    |         sb = r0;
    0x000078c8 str r0, [sp, 0x88]                            |         *(arg_88h) = r0;
    0x000078ca cmp r0, 0                                     |         
                                                             |         if (r0 == 0) {
    0x000078cc beq.w 0x8fb6                                  |             goto label_88;
                                                             |         }
    0x000078d0 movs r2, 0                                    |         r2 = 0;
    0x000078d2 ldr.w r3, [r5, 0x434]                         |         r3 = *((r5 + 0x434));
    0x000078d6 str r2, [r0]                                  |         *(r0) = r2;
    0x000078d8 cmp r4, 0                                     |         
                                                             |         if (r4 == 0) {
    0x000078da beq.w 0x8dc0                                  |             goto label_89;
                                                             |         }
                                                             | label_41:
    0x000078de ldr r3, [pc, 0x394]                           |         
    0x000078e0 mov r1, r4                                    |         r1 = r4;
    0x000078e2 add r3, pc                                    |         r3 = 0xf55c;
    0x000078e4 ldr.w r0, [r3, 0x434]                         |         r0 = *(0xf990);
    0x000078e8 bl 0x61e8                                     |         r0 = fcn_000061e8 (r0, r1);
                                                             |         if (r0 == 0) {
    0x000078ec cbnz r0, 0x78fe                               |             
    0x000078ee ldr r1, [pc, 0x388]                           |             
    0x000078f0 mov r0, r4                                    |             r0 = r4;
    0x000078f2 add r1, pc                                    |             r1 = 0xf570;
    0x000078f4 blx 0x3928                                    |             r0 = fcn_00003928 ();
    0x000078f8 cmp r0, 0                                     |             
                                                             |             if (r0 != 0) {
    0x000078fa bne.w 0x8c84                                  |                 goto label_90;
                                                             |             }
                                                             |         }
                                                             | label_39:
    0x000078fe ldr r3, [pc, 0x37c]                           |         
    0x00007900 mov.w r2, 0x100000                            |         r2 = 0x100000;
    0x00007904 add r3, pc                                    |         
    0x00007906 ldr r3, [r3, 0x28]                            |         r3 = *(0xf5ae);
    0x00007908 adds r3, 0xa                                  |         r3 += 0xa;
    0x0000790a asr.w r3, r2, r3                              |         r3 = r2 >> r3;
    0x0000790e movs r2, 3                                    |         r2 = 3;
    0x00007910 smull r2, r1, r3, r2                          |         r2:r1 = r3 * r2;
    0x00007914 cmp fp, r2                                    |         
    0x00007916 sbcs.w r1, sl, r1                             |         __asm ("sbcs.w r1, sl, r1");
                                                             |         if (fp <= r2) {
    0x0000791a blo.w 0x7b64                                  |             goto label_91;
                                                             |         }
    0x0000791c strh r3, [r4, 8]                              |         *((r4 + 8)) = r3;
    0x0000791e asrs r0, r3, 0x1f                             |         r0 = r3 >> 0x1f;
    0x00007920 lsls r1, r3, 9                                |         r1 = r3 << 9;
    0x00007922 lsls r2, r0, 9                                |         r2 = r0 << 9;
    0x00007924 cmp fp, r1                                    |         
    0x00007926 orr.w r2, r2, r3, lsr 23                      |         r2 |= (r3 >> 23);
    0x0000792a sbcs.w r2, sl, r2                             |         __asm ("sbcs.w r2, sl, r2");
    0x0000792c lsls r2, r0, 8                                |         r2 = r0 << 8;
                                                             |         if (r2 <= r0) {
    0x0000792e blo.w 0x8bac                                  |             goto label_92;
                                                             |         }
    0x00007932 lsls r2, r0, 0x16                             |         r2 = r0 << 0x16;
    0x00007934 lsls r1, r3, 0x16                             |         r1 = r3 << 0x16;
    0x00007936 orr.w r2, r2, r3, lsr 10                      |         r2 |= (r3 >> 10);
    0x00007938 movs r2, 0x93                                 |         r2 = 0x93;
    0x0000793a cmp fp, r1                                    |         
    0x0000793c sbcs.w r2, sl, r2                             |         __asm ("sbcs.w r2, sl, r2");
                                                             |         if (fp <= r1) {
    0x00007940 blo.w 0x9208                                  |             goto label_93;
                                                             |         }
    0x00007942 strh r2, [r4, 0x22]                           |         *((r4 + 0x22)) = r2;
    0x00007944 lsls r2, r0, 0x18                             |         r2 = r0 << 0x18;
    0x00007946 orr.w r2, r2, r3, lsr 8                       |         r2 |= (r3 >> 8);
    0x0000794a lsls r3, r3, 0x18                             |         r3 <<= 0x18;
    0x0000794c cmp fp, r3                                    |         
    0x0000794e sbcs.w r2, sl, r2                             |         __asm ("sbcs.w r2, sl, r2");
    0x00007950 lsls r2, r0, 8                                |         r2 = r0 << 8;
                                                             |         if (r2 >= r0) {
    0x00007952 bhs.w 0x926a                                  |             goto label_94;
                                                             |         }
    0x00007956 ldr r3, [pc, 0x328]                           |         
    0x00007958 add r3, pc                                    |         r3 = 0xf5de;
    0x0000795a b 0x7b68                                      |         goto label_34;
                                                             | label_72:
    0x0000795c ldr r1, [pc, 0x324]                           |         
    0x0000795e mov r0, sl                                    |         r0 = sl;
    0x00007960 add r1, pc                                    |         r1 = 0xf5e8;
    0x00007962 blx 0x3928                                    |         r0 = fcn_00003928 ();
                                                             |         if (r0 != 0) {
    0x00007966 cbz r0, 0x79b8                                |             
    0x00007968 ldr r1, [pc, 0x31c]                           |             
    0x0000796a mov r0, sl                                    |             r0 = sl;
    0x0000796c add r1, pc                                    |             r1 = 0xf5f8;
    0x0000796e blx 0x3928                                    |             fcn_00003928 ();
    0x00007970 vmlal.s16 q9, d12, d0                         |             __asm ("vmlal.s16 q9, d12, d0");
    0x00007972 cmp r0, 0                                     |             
                                                             |             if (r0 != 0) {
    0x00007974 bne.w 0x93ae                                  |                 goto label_95;
                                                             |             }
    0x00007978 ldr r3, [pc, 0x310]                           |             
    0x0000797a movs r2, 3                                    |             r2 = 3;
    0x0000797c add r3, pc                                    |             r3 = 0xf60c;
    0x0000797e str.w r2, [r3, 0x448]                         |             __asm ("str.w r2, [r3, 0x448]");
    0x00007982 b.w 0x7124                                    |             goto label_0;
                                                             |         }
    0x000079b8 ldr r3, [pc, 0x2e0]                           |         
    0x000079ba movs r2, 2                                    |         r2 = 2;
    0x000079bc add r3, pc                                    |         r3 = 0xf65c;
    0x000079be str.w r2, [r3, 0x448]                         |         __asm ("str.w r2, [r3, 0x448]");
    0x000079c2 b.w 0x7124                                    |         goto label_0;
    0x000079c6 ldr r3, [pc, 0x2d8]                           |         
    0x000079c8 add r3, pc                                    |         
    0x000079ca ldr.w r3, [r3, 0x478]                         |         r3 = *(0xfae6);
    0x000079ce cmp r3, 0                                     |         
    0x000079d0 beq.w 0x7794                                  |         
                                                             |     }
    0x000079d4 ldr r0, [pc, 0x2cc]                           |     
    0x000079d6 add r0, pc                                    |     r0 = 0xf67e;
    0x000079d8 blx 0x3144                                    |     r0 = getenv (r0);
    0x000079dc cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x000079de beq.w 0x92ba                                  |         goto label_96;
                                                             |     }
                                                             | label_55:
    0x000079e2 ldr r3, [pc, 0x2c4]                           |     r3 = *(0x7caa);
    0x000079e4 ldr r2, [pc, 0x2c4]                           |     r2 = *(0x7cac);
    0x000079e6 ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000079e8 ldr r2, [r7, r2]                              |     r2 = *((r7 + r2));
    0x000079ea ldr r1, [r3]                                  |     r1 = *(0x7caa);
    0x000079ec ldr r3, [pc, 0x2c0]                           |     
    0x000079ee ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000079f0 str r1, [r2]                                  |     *(r2) = r1;
    0x000079f2 ldr r3, [r3]                                  |     r3 = *(0x7cb0);
                                                             | label_56:
    0x000079f4 ldr.w sb, [pc, 0x2bc]                         |     
    0x000079f8 add.w fp, sp, 0x88                            |     
    0x000079fc str r3, [sp]                                  |     *(sp) = r3;
    0x000079fe movs r3, 0                                    |     r3 = 0;
    0x00007a00 str.w fp, [sp, 4]                             |     __asm ("str.w fp, [arg_4h]");
    0x00007a04 mov r2, r3                                    |     r2 = r3;
    0x00007a06 add sb, pc                                    |     sb = 0xf6be;
    0x00007a08 mov.w r1, 0x1000                              |     r1 = 0x1000;
    0x00007a0c ldr.w r0, [sb, 0x478]                         |     r0 = *(0xfb36);
    0x00007a10 blx 0x38c4                                    |     r0 = realloc (r0, r1);
    0x00007a14 mov r8, r0                                    |     r8 = r0;
    0x00007a16 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x00007a18 bne.w 0x934c                                  |         goto label_97;
                                                             |     }
    0x00007a1c ldr r2, [sp, 0x10]                            |     r2 = *(arg_10h);
    0x00007a1e ldr r3, [sp, 0x88]                            |     r3 = *(arg_88h);
    0x00007a20 ldr r3, [r3, 0x14]                            |     r3 = *((r3 + 0x14));
                                                             |     if (r2 != 0) {
    0x00007a22 cbz r2, 0x7a2c                                |         
    0x00007a24 rsbs r0, r2, 0                                |         r0 = r2 - ;
    0x00007a26 cmp r0, r3                                    |         
                                                             |         if (r0 > r3) {
    0x00007a28 bhi.w 0x9334                                  |             goto label_98;
                                                             |         }
                                                             |     }
    0x00007a2c ldr r1, [pc, 0x288]                           |     
    0x00007a2e mov sb, r3                                    |     sb = r3;
    0x00007a30 mov r2, r3                                    |     r2 = r3;
    0x00007a32 movs r0, 1                                    |     r0 = 1;
    0x00007a34 str r3, [sp, 0x10]                            |     *(arg_10h) = r3;
    0x00007a36 add r1, pc                                    |     r1 = 0xf6f2;
    0x00007a38 blx 0x3150                                    |     printf_chk ();
    0x00007a3c mov r2, sb                                    |     r2 = sb;
    0x00007a3e asrs r3, r2, 0xa                              |     r3 = r2 >> 0xa;
    0x00007a40 asrs r1, r2, 0x1f                             |     r1 = r2 >> 0x1f;
    0x00007a42 lsrs r3, r3, 1                                |     r3 >>= 1;
    0x00007a44 lsrs r2, r1, 1                                |     r2 = r1 >> 1;
    0x00007a46 orr.w r3, r3, r1, lsl 31                      |     r3 |= (r1 << 31);
    0x00007a4a orrs.w r1, r3, r1, lsr 1                      |     r1 = r3 | (r1 >> 1);
                                                             |     if (r1 == r3) {
    0x00007a4e beq 0x7a62                                    |         goto label_99;
                                                             |     }
                                                             |     do {
    0x00007a50 lsrs r3, r3, 1                                |         r3 >>= 1;
    0x00007a52 add.w r8, r8, 1                               |         r8++;
    0x00007a56 orr.w r3, r3, r2, lsl 31                      |         r3 |= (r2 << 31);
    0x00007a5a lsrs r2, r2, 1                                |         r2 >>= 1;
    0x00007a5c orrs.w r1, r3, r2                             |         r1 = r3 | r2;
    0x00007a60 bne 0x7a50                                    |         
                                                             |     } while (r1 != r3);
                                                             | label_99:
    0x00007a62 ldr r3, [pc, 0x258]                           |     
    0x00007a64 mov r0, fp                                    |     r0 = fp;
    0x00007a66 add r3, pc                                    |     r3 = 0xf728;
    0x00007a68 str.w r8, [r3, 0x28]                          |     __asm ("str.w r8, [r3, 0x28]");
    0x00007a6c blx 0x34f4                                    |     fcn_000034f4 ();
    0x00007a70 b 0x7794                                      |     goto label_2;
                                                             | label_82:
    0x00007a72 ldr r3, [pc, 0x24c]                           |     
    0x00007a74 mov r1, r8                                    |     r1 = r8;
    0x00007a76 ldr r2, [pc, 0x24c]                           |     
    0x00007a78 mov r6, r0                                    |     r6 = r0;
    0x00007a7a str r0, [sp]                                  |     *(sp) = r0;
    0x00007a7c add r3, pc                                    |     r3 = 0xf742;
    0x00007a7e str r0, [sp, 0x40]                            |     *(arg_40h) = r0;
    0x00007a80 adds r3, 0x2c                                 |     r3 += 0x2c;
    0x00007a82 add r2, pc                                    |     r2 = 0xf74c;
    0x00007a84 str r3, [sp, 4]                               |     *(arg_4h) = r3;
    0x00007a86 mov r3, r0                                    |     r3 = r0;
    0x00007a88 ldr.w r0, [r4, 0x434]                         |     r0 = *((r4 + 0x434));
    0x00007a8c bl 0xe648                                     |     fcn_0000e648 (r0);
    0x00007a90 ldr r2, [pc, 0x234]                           |     
    0x00007a92 ldr.w r1, [r4, 0x44c]                         |     r1 = *((r4 + 0x44c));
    0x00007a96 ldr.w r0, [r4, 0x474]                         |     r0 = *((r4 + 0x474));
    0x00007a9a add r2, pc                                    |     r2 = 0xf766;
    0x00007a9c bl 0x9980                                     |     fcn_00009980 (r0, r1, r2);
    0x00007aa0 str r6, [sp, 0x44]                            |     *(arg_44h) = r6;
                                                             | label_83:
    0x00007aa2 ldr r6, [pc, 0x228]                           |     
    0x00007aa4 mov.w r1, 0x400                               |     r1 = 0x400;
    0x00007aa8 add r6, pc                                    |     r6 = 0xf77a;
    0x00007aaa ldr r3, [r6, 0x28]                            |     r3 = *(0xf7a2);
    0x00007aac add.w r4, r6, 0x480                           |     r4 = r6 + 0x480;
    0x00007ab0 ldr.w r0, [r6, 0x474]                         |     r0 = *(0xfbee);
    0x00007ab4 mov r2, r4                                    |     r2 = r4;
    0x00007ab6 lsls r1, r3                                   |     r1 <<= r3;
    0x00007ab8 blx 0x3368                                    |     r0 = fcn_00003368 ();
    0x00007abc cmp r0, 2                                     |     
                                                             |     if (r0 == 2) {
    0x00007abe beq.w 0x8ee8                                  |         goto label_100;
                                                             |     }
    0x00007ac2 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x00007ac4 bne.w 0x8b68                                  |         goto label_101;
                                                             |     }
                                                             | label_31:
    0x00007ac8 ldrd r3, r2, [sp, 0x40]                       |     __asm ("ldrd r3, r2, [arg_40h]");
    0x00007acc orrs r3, r2                                   |     r3 |= r2;
                                                             |     if (r3 != r2) {
    0x00007ace bne.w 0x7844                                  |         goto label_3;
                                                             |     }
    0x00007ad2 movw r3, 0xb750                               |     
    0x00007ad6 movt r3, 0x7f2b                               |     r3 = 0x7f2bb750;
    0x00007ada cmp r0, r3                                    |     
                                                             |     if (r0 == r3) {
    0x00007adc beq.w 0x9608                                  |         goto label_102;
                                                             |     }
    0x00007ae0 ldr r3, [pc, 0x1ec]                           |     
    0x00007ae2 add r3, pc                                    |     r3 = 0xf7b6;
    0x00007ae4 ldr.w r2, [r3, 0x480]                         |     r2 = *(0xfc36);
    0x00007ae6 movs r4, 0x80                                 |     r4 = 0x80;
    0x00007ae8 ldr.w r1, [r3, 0x484]                         |     r1 = *(0xfc3a);
    0x00007aec str r2, [sp, 0x34]                            |     *(arg_34h) = r2;
    0x00007aee orrs r2, r1                                   |     r2 |= r1;
    0x00007af0 str r1, [sp, 0x28]                            |     *(arg_28h) = r1;
                                                             |     if (r2 == r1) {
    0x00007af2 beq.w 0x9638                                  |         goto label_103;
                                                             |     }
    0x00007af6 ldr r2, [pc, 0x1dc]                           |     
    0x00007af8 mov.w r1, 0x400                               |     r1 = 0x400;
    0x00007afc ldr r3, [r3, 0x28]                            |     r3 = *((r3 + 0x28));
    0x00007afe add r2, pc                                    |     r2 = 0xf7d8;
    0x00007b00 ldr r0, [r2, 0x28]                            |     r0 = *(0xf800);
    0x00007b02 lsls r1, r3                                   |     r1 <<= r3;
    0x00007b04 cmp r1, r0                                    |     
                                                             |     if (r1 >= r0) {
    0x00007b06 bge.w 0x7860                                  |         goto label_4;
                                                             |     }
    0x00007b0a bl 0x11930                                    |     fcn_00011930 (r0, r1);
    0x00007b0e ldr r2, [sp, 0x28]                            |     r2 = *(arg_28h);
    0x00007b10 rsbs r3, r0, 0                                |     r3 = r0 - ;
    0x00007b12 and.w r2, r2, r3, asr 31                      |     r2 &= (r3 >> 31);
    0x00007b16 str r2, [sp, 0x28]                            |     *(arg_28h) = r2;
    0x00007b18 ldr r2, [sp, 0x34]                            |     r2 = *(arg_34h);
    0x00007b1a ands r2, r3                                   |     r2 &= r3;
    0x00007b1c str r2, [sp, 0x34]                            |     *(arg_34h) = r2;
    0x00007b1e b 0x7860                                      |     goto label_4;
                                                             | label_74:
    0x00007b20 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00007b22 movs r1, 1                                    |     r1 = 1;
    0x00007b24 ldr.w sl, [sp, 0x10]                          |     sl = *(arg_10h);
    0x00007b28 ldr r2, [pc, 0x1ac]                           |     
    0x00007b2a ldr r0, [r3]                                  |     r0 = *(r3);
    0x00007b2c mov r3, sl                                    |     r3 = sl;
    0x00007b2e add r2, pc                                    |     r2 = 0xf80a;
    0x00007b30 blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x00007b34 mov r2, sl                                    |     r2 = sl;
    0x00007b36 asrs r3, r2, 0xa                              |     r3 = r2 >> 0xa;
    0x00007b38 asrs r2, r2, 0x1f                             |     r2 >>= 0x1f;
    0x00007b3a lsrs r3, r3, 1                                |     r3 >>= 1;
    0x00007b3c orr.w r3, r3, r2, lsl 31                      |     r3 |= (r2 << 31);
    0x00007b40 lsrs r2, r2, 1                                |     r2 >>= 1;
                                                             | label_75:
    0x00007b42 movs r1, 0                                    |     r1 = 0;
                                                             |     do {
    0x00007b44 lsrs r3, r3, 1                                |         r3 >>= 1;
    0x00007b46 adds r1, 1                                    |         r1++;
    0x00007b48 orr.w r3, r3, r2, lsl 31                      |         r3 |= (r2 << 31);
    0x00007b4c lsrs r2, r2, 1                                |         r2 >>= 1;
    0x00007b4e orrs.w r0, r3, r2                             |         r0 = r3 | r2;
    0x00007b52 bne 0x7b44                                    |         
                                                             |     } while (r0 != r3);
    0x00007b54 b 0x75a0                                      |     goto label_5;
                                                             | label_78:
    0x00007b56 ldr r1, [pc, 0x184]                           |     
    0x00007b58 str r0, [sp, 0x34]                            |     *(arg_34h) = r0;
    0x00007b5a add r1, pc                                    |     r1 = 0xf83c;
    0x00007b5c blx 0x3774                                    |     popen (r0, r1)
    0x00007b5e vmla.f64 d9, d10, d13                         |     __asm ("vmla.f64 d9, d10, d13");
    0x00007b62 b 0x761e                                      |     goto label_6;
                                                             | label_91:
    0x00007b64 ldr r3, [pc, 0x178]                           |     
    0x00007b66 add r3, pc                                    |     r3 = 0xf84a;
                                                             | label_34:
    0x00007b68 cmp.w r8, 0                                   |     
    0x00007b6c it eq                                         |     
                                                             |     if (r8 != 0) {
    0x00007b6e moveq r8, r3                                  |         r8 = r3;
                                                             |     }
    0x00007b70 mov r0, r8                                    |     r0 = r8;
    0x00007b72 blx 0x3434                                    |     r0 = fcn_00003434 ();
    0x00007b76 add.w sl, r0, 1                               |     sl = r0 + 1;
    0x00007b7a mov r0, sl                                    |     r0 = sl;
    0x00007b7c blx 0x36a4                                    |     r0 = fcn_000036a4 ();
    0x00007b80 mov r5, r0                                    |     r5 = r0;
    0x00007b82 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00007b84 beq.w 0x9616                                  |         goto label_104;
                                                             |     }
    0x00007b88 mov r1, r8                                    |     r1 = r8;
    0x00007b8a ldr.w sb, [pc, 0x158]                         |     
    0x00007b8e ldr.w r8, [pc, 0x158]                         |     
    0x00007b92 mov r2, sl                                    |     r2 = sl;
    0x00007b94 add.w fp, sp, 0x88                            |     
    0x00007b98 mov sl, r5                                    |     sl = r5;
    0x00007b9a blx 0x3470                                    |     fcn_00003470 ();
    0x00007b9e mov r1, r4                                    |     r1 = r4;
    0x00007ba0 mov r0, fp                                    |     r0 = fp;
    0x00007ba2 add r8, pc                                    |     r8 = 0xf890;
    0x00007ba4 add sb, pc                                    |     sb = 0xf88e;
    0x00007ba6 bl 0x6c2c                                     |     fcn_00006c2c (r0, r1);
    0x00007baa b 0x7cfe                                      |     
                                                             |     while (r0 != 0) {
    0x00007cec movs r3, 0                                    |         r3 = 0;
    0x00007cee strb r3, [r0]                                 |         *(r0) = r3;
    0x00007cf0 ldrb.w r3, [sl]                               |         r3 = *(sl);
    0x00007cf4 cmp r3, 0                                     |         
                                                             |         if (r3 != 0) {
    0x00007cf6 bne.w 0x7f4e                                  |             goto label_105;
                                                             |         }
                                                             | label_7:
    0x00007cfa add.w sl, r4, 1                               |         sl = r4 + 1;
    0x00007cfe movs r1, 0x2c                                 |         r1 = 0x2c;
    0x00007d00 mov r0, sl                                    |         r0 = sl;
    0x00007d02 blx 0x3168                                    |         r0 = strchr (r0, r1);
    0x00007d06 mov r4, r0                                    |         r4 = r0;
    0x00007d08 cmp r0, 0                                     |         
    0x00007d0a bne 0x7cec                                    |         
                                                             |     }
    0x00007d0c ldrb.w r3, [sl]                               |     r3 = *(sl);
    0x00007d10 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00007d12 bne.w 0x7f4e                                  |         goto label_105;
                                                             |     }
    0x00007d16 mov r0, r5                                    |     r0 = r5;
    0x00007d18 blx 0x332c                                    |     fcn_0000332c ();
    0x00007d1c ldr r0, [sp, 0x78]                            |     r0 = *(arg_78h);
    0x00007d1e blx 0x332c                                    |     fcn_0000332c ();
    0x00007d22 cmp r6, 0                                     |     
                                                             |     if (r6 != 0) {
    0x00007d24 bne.w 0x7f7c                                  |         goto label_106;
                                                             |     }
                                                             | label_8:
    0x00007d28 ldr r0, [sp, 0x88]                            |     r0 = *(arg_88h);
    0x00007d2a ldr r4, [pc, 0x28c]                           |     
    0x00007d2c add r4, pc                                    |     r4 = 0xfcea;
    0x00007d2e str.w r0, [r4, 0x438]                         |     __asm ("str.w r0, [r4, 0x438]");
    0x00007d32 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00007d34 beq.w 0x8fba                                  |         goto label_61;
                                                             |     }
    0x00007d38 ldr r3, [r4, 0x5c]                            |     r3 = *((r4 + 0x5c));
    0x00007d3a movs r2, 0                                    |     r2 = 0;
    0x00007d3c str r2, [sp, 0x5c]                            |     *(endptr) = r2;
    0x00007d3e cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00007d40 bne.w 0x8812                                  |         goto label_107;
                                                             |     }
                                                             | label_21:
    0x00007d44 ldr r4, [pc, 0x274]                           |     
    0x00007d46 add r4, pc                                    |     r4 = 0xfd06;
    0x00007d48 ldr.w r0, [r4, 0x464]                         |     r0 = *(0x1016a);
    0x00007d4c bl 0x6094                                     |     r0 = fcn_00006094 (r0);
                                                             |     if (r0 != 0) {
    0x00007d50 cbz r0, 0x7d62                                |         
    0x00007d52 vldr d16, [r4, 0x70]                          |         __asm ("vldr d16, [r4, 0x70]");
    0x00007d56 vldr d17, [pc, 0x258]                         |         __asm ("vldr d17, [0x00007fb4]");
    0x00007d5a vand d16, d16, d17                            |         __asm ("vand d16, d16, d17");
    0x00007d5e vstr d16, [r4, 0x70]                          |         __asm ("vstr d16, [r4, 0x70]");
                                                             |     }
    0x00007d62 ldr r0, [sp, 0x74]                            |     r0 = *(arg_74h);
    0x00007d64 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00007d66 beq.w 0x8a92                                  |         goto label_108;
                                                             |     }
                                                             | label_23:
    0x00007d6a bl 0x6268                                     |     fcn_00006268 (r0);
    0x00007d6e ldr r0, [sp, 0x5c]                            |     r0 = *(endptr);
                                                             |     if (r0 != 0) {
    0x00007d70 cbz r0, 0x7d76                                |         
    0x00007d72 blx 0x332c                                    |         fcn_0000332c ();
                                                             |     }
    0x00007d76 ldr r4, [pc, 0x248]                           |     
    0x00007d78 add r0, sp, 0x74                              |     r0 += arg_74h;
    0x00007d7a bl 0x6c80                                     |     fcn_00006c80 (r0);
    0x00007d7e add r4, pc                                    |     r4 = 0xfd44;
    0x00007d80 ldr.w r0, [r4, 0x464]                         |     r0 = *(0x101a8);
    0x00007d84 bl 0x6094                                     |     r0 = fcn_00006094 (r0);
                                                             |     if (r0 != 0) {
    0x00007d88 cbz r0, 0x7da6                                |         
    0x00007d8a ldr r3, [r4, 0x70]                            |         r3 = *((r4 + 0x70));
    0x00007d8c lsls r6, r3, 0x1e                             |         r6 = r3 << 0x1e;
                                                             |         if (r6 < r3) {
    0x00007d8e bmi.w 0x9366                                  |             goto label_109;
                                                             |         }
    0x00007d90 strh r2, [r5, 0x16]                           |         *((r5 + 0x16)) = r2;
    0x00007d92 ldr r2, [r4, 0x74]                            |         r2 = *((r4 + 0x74));
    0x00007d94 lsls r5, r2, 0x1c                             |         r5 = r2 << 0x1c;
                                                             |         if (r5 < r2) {
    0x00007d96 bmi.w 0x92f4                                  |             goto label_110;
                                                             |         }
    0x00007d9a lsls r4, r2, 0x15                             |         r4 = r2 << 0x15;
                                                             |         if (r4 < r2) {
    0x00007d9c bmi.w 0x930a                                  |             goto label_111;
                                                             |         }
    0x00007da0 lsls r0, r3, 0x15                             |         r0 = r3 << 0x15;
                                                             |         if (r0 < r3) {
    0x00007da2 bmi.w 0x9476                                  |             goto label_112;
                                                             |         }
                                                             |     }
    0x00007da6 ldr r4, [pc, 0x21c]                           |     
    0x00007da8 add r1, sp, 0x60                              |     r1 += arg_60h;
    0x00007daa add r4, pc                                    |     r4 = 0xfd74;
    0x00007dac ldr.w r0, [r4, 0x474]                         |     r0 = *(0x101e8);
    0x00007db0 blx 0x33d4                                    |     r0 = fcn_000033d4 ();
    0x00007db4 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x00007db6 bne.w 0x953e                                  |         goto label_113;
                                                             |     }
    0x00007dba ldr.w r0, [r4, 0x474]                         |     r0 = *((r4 + 0x474));
    0x00007dbe add r1, sp, 0x64                              |     r1 += arg_64h;
    0x00007dc0 blx 0x387c                                    |     r0 = ext2fs_numeric_progress_close ();
    0x00007dc4 mov r4, r0                                    |     r4 = r0;
    0x00007dc6 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x00007dc8 bne.w 0x954e                                  |         goto label_114;
                                                             |     }
    0x00007dcc ldr r0, [pc, 0x1f8]                           |     
    0x00007dce add r0, pc                                    |     r0 = 0xfd9a;
    0x00007dd0 blx 0x3144                                    |     getenv (r0);
    0x00007dd4 str r0, [sp, 0x5c]                            |     *(endptr) = r0;
                                                             |     if (r0 != 0) {
    0x00007dd6 cbz r0, 0x7de2                                |         
    0x00007dd8 movs r2, 0xa                                  |         r2 = 0xa;
    0x00007dda mov r1, r4                                    |         r1 = r4;
    0x00007ddc blx 0x34d0                                    |         fcn_000034d0 ();
    0x00007de0 str r0, [sp, 0x60]                            |         *(arg_60h) = r0;
                                                             |     }
    0x00007de2 ldr r0, [pc, 0x1e8]                           |     
    0x00007de4 add r0, pc                                    |     r0 = 0xfdb6;
    0x00007de6 blx 0x3144                                    |     getenv (r0);
    0x00007dea str r0, [sp, 0x5c]                            |     *(endptr) = r0;
                                                             |     if (r0 != 0) {
    0x00007dec cbz r0, 0x7df8                                |         
    0x00007dee movs r2, 0xa                                  |         r2 = 0xa;
    0x00007df0 movs r1, 0                                    |         r1 = 0;
    0x00007df2 blx 0x34d0                                    |         fcn_000034d0 ();
    0x00007df6 str r0, [sp, 0x64]                            |         *(arg_64h) = r0;
                                                             |     }
    0x00007df8 ldr r3, [sp, 0x64]                            |     r3 = *(arg_64h);
                                                             |     if (r3 == 0) {
    0x00007dfa cbnz r3, 0x7e00                               |         
    0x00007dfc ldr r3, [sp, 0x60]                            |         r3 = *(arg_60h);
    0x00007dfe str r3, [sp, 0x64]                            |         *(arg_64h) = r3;
                                                             |     }
    0x00007e00 ldr r3, [sp, 0x10]                            |     r3 = *(arg_10h);
    0x00007e02 cmp r3, 0                                     |     
                                                             |     if (r3 <= 0) {
    0x00007e04 ble.w 0x8cdc                                  |         goto label_115;
                                                             |     }
    0x00007e08 ldr r3, [sp, 0x60]                            |     r3 = *(arg_60h);
    0x00007e0a ldr r2, [sp, 0x10]                            |     r2 = *(arg_10h);
    0x00007e0c cmp r3, r2                                    |     
                                                             |     if (r3 > r2) {
    0x00007e0e bgt.w 0x9568                                  |         goto label_116;
                                                             |     }
    0x00007e12 ldr r3, [sp, 0x64]                            |     r3 = *(arg_64h);
    0x00007e14 ldr r2, [sp, 0x10]                            |     r2 = *(arg_10h);
    0x00007e16 cmp r3, r2                                    |     
                                                             |     if (r3 > r2) {
    0x00007e18 bgt.w 0x8776                                  |         goto label_117;
                                                             |     }
                                                             | label_14:
    0x00007e1c ldr r5, [sp, 0x10]                            |     r5 = *(arg_10h);
                                                             | label_40:
    0x00007e1e asrs r3, r5, 0xa                              |     r3 = r5 >> 0xa;
    0x00007e20 asrs r1, r5, 0x1f                             |     r1 = r5 >> 0x1f;
    0x00007e22 lsrs r3, r3, 1                                |     r3 >>= 1;
    0x00007e24 lsrs r2, r1, 1                                |     r2 = r1 >> 1;
    0x00007e26 orr.w r3, r3, r1, lsl 31                      |     r3 |= (r1 << 31);
    0x00007e2a orrs.w r1, r3, r1, lsr 1                      |     r1 = r3 | (r1 >> 1);
    0x00007e2e mov.w r1, 0                                   |     r1 = 0;
                                                             |     if (r1 == r3) {
    0x00007e32 beq 0x7e44                                    |         goto label_118;
                                                             |     }
                                                             |     do {
    0x00007e34 lsrs r3, r3, 1                                |         r3 >>= 1;
    0x00007e36 adds r1, 1                                    |         r1++;
    0x00007e38 orr.w r3, r3, r2, lsl 31                      |         r3 |= (r2 << 31);
    0x00007e3c lsrs r2, r2, 1                                |         r2 >>= 1;
    0x00007e3e orrs.w r0, r3, r2                             |         r0 = r3 | r2;
    0x00007e42 bne 0x7e34                                    |         
                                                             |     } while (r0 != r3);
                                                             | label_118:
    0x00007e44 ldr r6, [pc, 0x188]                           |     
    0x00007e46 ldr r3, [sp, 0x28]                            |     r3 = *(arg_28h);
    0x00007e48 add r6, pc                                    |     r6 = 0xfe1c;
    0x00007e4a str r1, [r6, 0x28]                            |     *((r6 + 0x28)) = r1;
                                                             |     if (r3 != 0) {
    0x00007e4c cbz r3, 0x7e84                                |         
    0x00007e4e ldr r3, [r6, 0x70]                            |         r3 = *((r6 + 0x70));
    0x00007e50 ands r2, r3, 0x80                             |         r2 = r3 & 0x80;
                                                             |         if (r2 != r3) {
    0x00007e54 bne.w 0x8b5c                                  |             goto label_119;
                                                             |         }
    0x00007e58 ldr r1, [pc, 0x178]                           |         
    0x00007e5a ldr.w r0, [r6, 0x438]                         |         r0 = *((r6 + 0x438));
    0x00007e5e add r1, pc                                    |         r1 = 0xfe36;
    0x00007e60 bl 0x6f28                                     |         r0 = fcn_00006f28 (r0, r1, r2);
                                                             |         if (r0 != 0) {
    0x00007e64 cbz r0, 0x7e76                                |             
    0x00007e66 ldr r3, [r6, 0x70]                            |             r3 = *((r6 + 0x70));
    0x00007e68 orr r3, r3, 0x80                              |             r3 |= 0x80;
    0x00007e6c str r3, [r6, 0x70]                            |             *((r6 + 0x70)) = r3;
    0x00007e6e ldr r3, [r6, 0x6c]                            |             r3 = *((r6 + 0x6c));
    0x00007e70 bic r3, r3, 0x10                              |             r3 = BIT_MASK (r3, 0x10);
    0x00007e74 str r3, [r6, 0x6c]                            |             *((r6 + 0x6c)) = r3;
                                                             |         }
    0x00007e76 ldr r3, [pc, 0x160]                           |         
    0x00007e78 add r3, pc                                    |         r3 = 0xfe56;
    0x00007e7a ldr r2, [r3, 0x70]                            |         r2 = *(0xfec6);
    0x00007e7c ldr r6, [r3, 0x28]                            |         r6 = *(0xfe7e);
    0x00007e7e lsls r2, r2, 0x18                             |         r2 <<= 0x18;
                                                             |         if (r2 >= r2) {
    0x00007e80 bpl.w 0x9428                                  |             goto label_120;
                                                             |         }
                                                             |     }
                                                             | label_30:
    0x00007e84 ldr.w r8, [pc, 0x154]                         |     
    0x00007e88 movs r6, 1                                    |     r6 = 1;
    0x00007e8a add r8, pc                                    |     r8 = 0xfe6a;
    0x00007e8c ldr.w r1, [r8, 0x28]                          |     r1 = *(0xfe92);
    0x00007e90 add.w r2, r1, 0x2d                            |     r2 = r1 + 0x2d;
    0x00007e94 add.w r3, r1, 0xd                             |     r3 = r1 + 0xd;
    0x00007e98 rsb.w r0, r2, 0x20                            |     r0 = 0x20 - r2;
    0x00007e9c lsl.w r3, r6, r3                              |     r3 = r6 << r3;
    0x00007ea0 lsr.w r0, r6, r0                              |     r0 = r6 >> r0;
    0x00007ea4 lsl.w r2, r6, r2                              |     r2 = r6 << r2;
    0x00007ea8 orrs r3, r0                                   |     r3 |= r0;
    0x00007eaa ldr r0, [sp, 0x34]                            |     r0 = *(arg_34h);
    0x00007eac subs r2, 1                                    |     r2--;
    0x00007eae adc r3, r3, -1                                |     __asm ("adc r3, r3, -1");
    0x00007eb2 cmp r2, r0                                    |     
    0x00007eb4 ldr r2, [sp, 0x28]                            |     r2 = *(arg_28h);
    0x00007eb6 sbcs r3, r2                                   |     __asm ("sbcs r3, r2");
                                                             |     if (r2 <= r0) {
    0x00007eb8 blo.w 0x94c4                                  |         goto label_121;
                                                             |     }
    0x00007ebc ldr r3, [sp, 0x28]                            |     r3 = *(arg_28h);
    0x00007ebe add.w r0, r8, 0x10                            |     r0 = r8 + 0x10;
    0x00007ec2 ldr r2, [sp, 0x34]                            |     r2 = *(arg_34h);
    0x00007ec4 blx 0x39ac                                    |     fcn_000039ac ();
    0x00007ec8 ldr.w r3, [r8, 0x70]                          |     r3 = *((r8 + 0x70));
    0x00007ecc lsls r6, r3, 0x1c                             |     r6 = r3 << 0x1c;
                                                             |     if (r6 >= r3) {
    0x00007ece bpl 0x7f0c                                    |         goto label_122;
                                                             |     }
    0x00007ed0 ldr.w sl, [r8, 0x438]                         |     sl = *((r8 + 0x438));
    0x00007ed4 ldr.w r0, [sl]                                |     r0 = *(sl);
                                                             |     if (r0 == 0) {
    0x00007ed8 cbz r0, 0x7efa                                |         goto label_123;
                                                             |     }
    0x00007eda mov.w sb, 0                                   |     sb = 0;
    0x00007ede mov r6, sb                                    |     r6 = sb;
                                                             |     do {
    0x00007ee0 blx 0x332c                                    |         fcn_0000332c ();
    0x00007ee4 ldr.w r3, [r8, 0x438]                         |         r3 = *((r8 + 0x438));
    0x00007ee8 str.w r6, [r3, sb]                            |         __asm ("str.w r6, [r3, sb]");
    0x00007eec add.w sb, sb, 4                               |         sb += 4;
    0x00007ef0 ldr.w r0, [r3, sb]                            |         r0 = *((r3 + sb));
    0x00007ef4 cmp r0, 0                                     |         
    0x00007ef6 bne 0x7ee0                                    |         
                                                             |     } while (r0 != 0);
                                                             | label_123:
    0x00007efa ldr r0, [pc, 0xe4]                            |     
    0x00007efc add r0, pc                                    |     r0 = 0xfee2;
    0x00007efe blx 0x367c                                    |     fcn_0000367c ();
    0x00007f02 movs r3, 0                                    |     r3 = 0;
    0x00007f04 str.w r0, [sl]                                |     __asm ("str.w r0, [sl]");
    0x00007f08 str.w r3, [sl, 4]                             |     __asm ("str.w r3, [sl, 4]");
                                                             | label_122:
    0x00007f0c ldr r6, [pc, 0xd4]                            |     
    0x00007f0e add r6, pc                                    |     r6 = 0xfef6;
    0x00007f10 ldr r3, [r6, 8]                               |     r3 = *(0xfefe);
    0x00007f12 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00007f14 bne.w 0x8a3c                                  |         goto label_124;
                                                             |     }
    0x00007f16 strh r2, [r2, 0x2c]                           |     *((r2 + 0x2c)) = r2;
    0x00007f18 ldr r3, [sp, 0x1c]                            |     r3 = *(arg_1ch);
    0x00007f1a cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00007f1c bne 0x7ff8                                    |         void (*0x7ff8)() ();
                                                             |     }
                                                             | label_105:
    0x00007f4e ldr.w r0, [r8, 0x434]                         |     r0 = *((r8 + 0x434));
    0x00007f52 mov r1, sl                                    |     r1 = sl;
    0x00007f54 bl 0x61e8                                     |     r0 = fcn_000061e8 (r0, r1);
                                                             |     if (r0 != 0) {
    0x00007f58 cbnz r0, 0x7f9e                               |         goto label_125;
                                                             |     }
    0x00007f5a mov r1, sb                                    |     r1 = sb;
    0x00007f5c mov r0, sl                                    |     r0 = sl;
    0x00007f5e blx 0x3928                                    |     r0 = fcn_00003928 ();
                                                             |     if (r0 != 0) {
    0x00007f62 cbnz r0, 0x7f88                               |         goto label_126;
                                                             |     }
    0x00007f64 cmp r4, 0                                     |     
                                                             |     if (r4 != 0) {
    0x00007f66 bne.w 0x7cfa                                  |         goto label_7;
                                                             |     }
                                                             | label_9:
    0x00007f6a mov r0, r5                                    |     r0 = r5;
    0x00007f6c blx 0x332c                                    |     fcn_0000332c ();
    0x00007f70 ldr r0, [sp, 0x78]                            |     r0 = *(arg_78h);
    0x00007f72 blx 0x332c                                    |     fcn_0000332c ();
    0x00007f76 cmp r6, 0                                     |     
                                                             |     if (r6 == 0) {
    0x00007f78 beq.w 0x7d28                                  |         goto label_8;
                                                             |     }
                                                             | label_106:
    0x00007f7c ldr r1, [pc, 0x70]                            |     
    0x00007f7e mov r0, fp                                    |     r0 = fp;
    0x00007f80 add r1, pc                                    |     r1 = 0xff74;
    0x00007f82 bl 0x6c2c                                     |     fcn_00006c2c (r0, r1);
    0x00007f86 b 0x7d28                                      |     goto label_8;
                                                             | label_126:
    0x00007f88 ldr r1, [sp, 0x18]                            |     r1 = *(arg_18h);
    0x00007f8a mov r3, sl                                    |     r3 = sl;
    0x00007f8c ldr r2, [pc, 0x64]                            |     
    0x00007f8e ldr r0, [r1]                                  |     r0 = *(r1);
    0x00007f90 movs r1, 1                                    |     r1 = 1;
    0x00007f92 add r2, pc                                    |     r2 = 0xff8a;
    0x00007f94 blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x00007f98 cmp r4, 0                                     |     
                                                             |     if (r4 == 0) {
    0x00007f9a beq 0x7f6a                                    |         goto label_9;
                                                             |     }
    0x00007f9c b 0x7cfa                                      |     goto label_7;
                                                             | label_125:
    0x00007f9e mov r1, sl                                    |     r1 = sl;
    0x00007fa0 mov r0, fp                                    |     r0 = fp;
    0x00007fa2 bl 0x6c2c                                     |     fcn_00006c2c (r0, r1);
    0x00007fa6 cmp r4, 0                                     |     
                                                             |     if (r4 == 0) {
    0x00007fa8 beq 0x7f6a                                    |         goto label_9;
                                                             |     }
    0x00007faa b 0x7cfa                                      |     goto label_7;
                                                             | label_33:
    0x00008100 str.w sl, [sp, 0x7c]                          |     __asm ("str.w sl, [arg_7ch]");
                                                             | label_32:
    0x00008104 mov r0, r8                                    |     r0 = r8;
    0x00008106 blx 0x3940                                    |     fcn_00003940 ();
    0x0000810a str r0, [sp, 0x80]                            |     *(arg_80h) = r0;
    0x0000810c mov r0, r8                                    |     r0 = r8;
    0x0000810e blx 0x3410                                    |     fcn_00003410 ();
    0x00008112 ldrb.w r3, [sp, 0x84]                         |     r3 = *(arg_84h);
    0x00008116 mov r2, r0                                    |     r2 = r0;
    0x00008118 mov r0, r6                                    |     r0 = r6;
    0x0000811a bfi r3, r2, 0, 1                              |     value_1 = BIT_MASK (0, 1);
                                                             |     value_2 = r2 & value_1;
                                                             |     value_1 = ~value_1;
                                                             |     r3 &= value_1;
                                                             |     r3 |= value_2;
    0x0000811e strb.w r3, [sp, 0x84]                         |     *(arg_84h) = r3;
    0x00008122 blx 0x2f40                                    |     blkid_free_probe ();
    0x00008126 ldr r0, [sp, 0x78]                            |     r0 = *(arg_78h);
    0x00008128 cmp r5, r0                                    |     
                                                             |     if (r5 < r0) {
    0x0000812a bhs 0x813a                                    |         
    0x0000812c ldr r6, [pc, 0x1c0]                           |         
    0x0000812e mov r1, r5                                    |         r1 = r5;
    0x00008130 bl 0x116b8                                    |         fcn_000116b8 (r0, r1, r2);
    0x00008134 add r6, pc                                    |         r6 = 0x10428;
    0x00008136 strh.w r0, [r6, 0x174]                        |         *((r6 + 0x174)) = r0;
                                                             |     }
    0x0000813a ldr r0, [sp, 0x7c]                            |     r0 = *(arg_7ch);
    0x0000813c cmp r5, r0                                    |     
                                                             |     if (r5 < r0) {
    0x0000813e bhs 0x814e                                    |         
    0x00008140 ldr r6, [pc, 0x1b0]                           |         
    0x00008142 mov r1, r5                                    |         r1 = r5;
    0x00008144 bl 0x116b8                                    |         fcn_000116b8 (r0, r1, r2);
    0x00008148 add r6, pc                                    |         r6 = 0x10440;
    0x0000814a str.w r0, [r6, 0x180]                         |         __asm ("str.w r0, [r6, 0x180]");
                                                             |     }
    0x0000814e ldr r3, [sp, 0x80]                            |     r3 = *(arg_80h);
    0x00008150 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00008152 bne.w 0x8e82                                  |         goto label_127;
                                                             |     }
                                                             | label_43:
    0x00008156 ldrb.w r3, [sp, 0x84]                         |     r3 = *(arg_84h);
    0x0000815a lsls r1, r3, 0x1f                             |     r1 = r3 << 0x1f;
                                                             |     if (r1 < r3) {
    0x0000815c bpl 0x816a                                    |         
    0x0000815e ldr r3, [pc, 0x198]                           |         
    0x00008160 add r3, pc                                    |         
    0x00008162 ldr r3, [r3, 0x28]                            |         r3 = *(0x10486);
    0x00008164 cmp r3, r5                                    |         
                                                             |         if (r3 != r5) {
    0x00008166 bne.w 0x8bb6                                  |             goto label_128;
                                                             |         }
                                                             |     }
                                                             | label_35:
    0x0000816a ldr r5, [pc, 0x190]                           |     
    0x0000816c movs r2, 2                                    |     r2 = 2;
    0x0000816e ldr r1, [pc, 0x190]                           |     
    0x00008170 mov.w r8, 0x400                               |     r8 = 0x400;
    0x00008174 add r5, pc                                    |     r5 = 0x10476;
    0x00008176 ldr.w r0, [r5, 0x438]                         |     r0 = *(0x108ae);
    0x0000817a add r1, pc                                    |     r1 = 0x10480;
    0x0000817c bl 0x6dbc                                     |     fcn_00006dbc (r0, r1, r2);
    0x00008180 ldr r3, [pc, 0x180]                           |     
    0x00008182 ldr r2, [r5, 0x28]                            |     r2 = *(0x1049e);
    0x00008184 add r3, pc                                    |     r3 = 0x1048c;
    0x00008186 str r0, [r3, 0x10]                            |     *((r3 + 0x10)) = r0;
    0x00008188 ldr r3, [r5, 0x70]                            |     r3 = *(0x104e6);
    0x0000818a lsl.w r8, r8, r2                              |     r8 <<= r2;
    0x0000818e lsls r2, r3, 0x18                             |     r2 = r3 << 0x18;
    0x00008190 itt mi                                        |     
                                                             |     if (r2 >= r3) {
    0x00008192 movmi r3, 0x40                                |         r3 = 0x40;
                                                             |     }
                                                             |     if (r2 < r3) {
    0x00008194 strhmi r3, [r5, 0x10e]                        |         __asm ("strhmi r3, [r5, 0x10e]");
                                                             |     }
    0x00008198 ldr r5, [pc, 0x16c]                           |     
    0x0000819a add r5, pc                                    |     r5 = 0x104a6;
    0x0000819c ldr r3, [r5, 0x28]                            |     r3 = *(0x104ce);
    0x0000819e cmp r3, r8                                    |     
                                                             |     if (r3 < r8) {
    0x000081a0 bge 0x81c8                                    |         
    0x000081a2 ldr r2, [pc, 0x168]                           |         
    0x000081a4 add r2, pc                                    |         r2 = 0x104b6;
    0x000081a6 ldr.w r1, [r2, 0x44c]                         |         r1 = *(0x10902);
    0x000081aa cmp r1, 0                                     |         
                                                             |         if (r1 == 0) {
    0x000081ac beq.w 0x9000                                  |             goto label_129;
                                                             |         }
    0x000081b0 ldr r3, [pc, 0x15c]                           |         
    0x000081b2 movs r1, 1                                    |         r1 = 1;
    0x000081b4 ldr r2, [pc, 0x15c]                           |         
    0x000081b6 add r3, pc                                    |         
    0x000081b8 ldr r3, [r3, 0x28]                            |         r3 = *(0x104f2);
    0x000081ba add r2, pc                                    |         r2 = 0x104d2;
    0x000081bc str r3, [sp]                                  |         *(sp) = r3;
    0x000081be ldr r3, [sp, 0x18]                            |         r3 = *(arg_18h);
    0x000081c0 ldr r0, [r3]                                  |         r0 = *(0x104f2);
    0x000081c2 mov r3, r8                                    |         r3 = r8;
    0x000081c4 blx 0x36f0                                    |         ext2fs_bg_itable_unused_set ();
                                                             |     }
    0x000081c8 movs r2, 0                                    |     r2 = 0;
    0x000081ca movs r1, 0x12                                 |     r1 = 0x12;
    0x000081cc movs r0, 3                                    |     r0 = 3;
    0x000081ce bl 0x60e8                                     |     r0 = fcn_000060e8 (r0, r1, r2);
                                                             |     if (r0 != 0) {
    0x000081d2 cbz r0, 0x81e0                                |         
    0x000081d4 ldr r3, [pc, 0x140]                           |         
    0x000081d6 add r3, pc                                    |         
    0x000081d8 ldr r3, [r3, 0x74]                            |         r3 = *(0x10566);
    0x000081da lsls r3, r3, 0x15                             |         r3 <<= 0x15;
                                                             |         if (r3 < r3) {
    0x000081dc bmi.w 0x8fec                                  |             goto label_130;
                                                             |         }
                                                             |     }
                                                             | label_48:
    0x000081e0 movs r1, 6                                    |     r1 = 6;
    0x000081e2 ldr r5, [pc, 0x138]                           |     
    0x000081e4 movs r2, 0x25                                 |     r2 = 0x25;
    0x000081e6 movs r0, 2                                    |     r0 = 2;
    0x000081e8 bl 0x60e8                                     |     r0 = fcn_000060e8 (r0, r1, r2);
    0x000081ec clz r0, r0                                    |     r0 &= r0;
    0x000081f0 add r5, pc                                    |     r5 = 0x10512;
    0x000081f2 lsrs r0, r0, 5                                |     r0 >>= 5;
    0x000081f4 movs r1, 4                                    |     r1 = 4;
    0x000081f6 str.w r0, [r5, 0x420]                         |     __asm ("str.w r0, [r5, 0x420]");
    0x000081f8 lsls r0, r4, 0x10                             |     r0 = r4 << 0x10;
    0x000081fa ldr r0, [pc, 0x124]                           |     
    0x000081fc add r0, pc                                    |     r0 = 0x10522;
    0x000081fe blx 0x3374                                    |     r0 = fcn_00003374 ();
                                                             |     if (r0 == 0) {
    0x00008202 cbnz r0, 0x820a                               |         
    0x00008204 movs r3, 1                                    |         r3 = 1;
    0x00008206 str.w r3, [r5, 0x420]                         |         __asm ("str.w r3, [r5, 0x420]");
                                                             |     }
    0x0000820a ldr r6, [pc, 0x118]                           |     
    0x0000820c ldr r1, [pc, 0x118]                           |     
    0x0000820e ldr r5, [pc, 0x11c]                           |     
    0x00008210 add r6, pc                                    |     r6 = 0x1053a;
    0x00008212 ldr.w r2, [r6, 0x420]                         |     r2 = *(0x1095a);
    0x00008216 add r1, pc                                    |     r1 = 0x10542;
    0x00008218 ldr.w r0, [r6, 0x438]                         |     r0 = *(0x10972);
    0x0000821c add r5, pc                                    |     r5 = 0x1054e;
    0x0000821e bl 0x6f28                                     |     fcn_00006f28 (r0, r1, r2);
    0x00008222 ldr r1, [pc, 0x10c]                           |     
    0x00008224 ldr r2, [r5, 0x20]                            |     r2 = *(0x1056e);
    0x00008226 str.w r0, [r6, 0x420]                         |     __asm ("str.w r0, [r6, 0x420]");
    0x0000822a add r1, pc                                    |     r1 = 0x10560;
    0x0000822c ldr.w r0, [r6, 0x438]                         |     r0 = *(0x10972);
    0x00008230 bl 0x6f28                                     |     fcn_00006f28 (r0, r1, r2);
    0x00008234 ldr r1, [pc, 0xfc]                            |     
    0x00008236 movs r2, 0                                    |     r2 = 0;
    0x00008238 str r0, [r5, 0x20]                            |     *((r5 + 0x20)) = r0;
    0x0000823a ldr.w r0, [r6, 0x438]                         |     r0 = *(0x10972);
    0x0000823e add r1, pc                                    |     r1 = 0x10576;
    0x00008240 bl 0x6f28                                     |     fcn_00006f28 (r0, r1, r2);
    0x00008244 ldr.w r3, [r6, 0x424]                         |     r3 = *(0x1095e);
    0x00008248 subs r2, r0, 0                                |     r2 = r0 - 0;
    0x0000824a it ne                                         |     
                                                             |     if (r2 == r0) {
    0x0000824c movne r2, 1                                   |         r2 = 1;
                                                             |     }
    0x0000824e orr.w r3, r3, r2, lsl 1                       |     r3 |= (r2 << 1);
    0x00008252 orr r3, r3, 4                                 |     r3 |= 4;
    0x00008256 str.w r3, [r6, 0x424]                         |     __asm ("str.w r3, [r6, 0x424]");
    0x0000825a ldr r3, [pc, 0xdc]                            |     r3 = *(0x833a);
    0x0000825c ldr r7, [r7, r3]                              |     r7 = *((r7 + r3));
    0x0000825e ldr r0, [r7]                                  |     r0 = *(r7);
    0x00008260 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00008262 beq.w 0x8ea0                                  |         goto label_131;
                                                             |     }
    0x00008266 ldrd r2, r3, [r5, 0x18]                       |     __asm ("ldrd r2, r3, [r5, 0x18]");
    0x0000826a cmp.w r3, -1                                  |     
    0x0000826e it eq                                         |     
                                                             |     if (r3 == -1) {
    0x00008270 cmpeq r2, -1                                  |         __asm ("cmpeq r2, -1");
                                                             |     }
                                                             |     if (r3 == -1) {
    0x00008274 beq.w 0x8eca                                  |         goto label_132;
                                                             |     }
                                                             | label_44:
    0x00008278 ldr r0, [r7]                                  |     r0 = *(r7);
    0x0000827a ldr r5, [pc, 0xc0]                            |     
    0x0000827c blx 0x332c                                    |     fcn_0000332c ();
    0x00008280 ldr r1, [pc, 0xbc]                            |     
    0x00008282 movs r2, 0                                    |     r2 = 0;
    0x00008284 add r5, pc                                    |     r5 = 0x105c6;
    0x00008286 ldr.w r0, [r5, 0x438]                         |     r0 = *(0x109fe);
    0x0000828a add r1, pc                                    |     r1 = 0x105ce;
    0x0000828c bl 0x6f28                                     |     fcn_00006f28 (r0, r1, r2);
    0x00008290 str.w r0, [r5, 0x41c]                         |     __asm ("str.w r0, [r5, 0x41c]");
                                                             |     if (r0 != 0) {
    0x00008294 cbz r0, 0x82a2                                |         
    0x00008296 ldr r3, [pc, 0xac]                            |         
    0x00008298 vmov.i32 d16, 0                               |         __asm ("vmov.i32 d16, 0");
    0x0000829c add r3, pc                                    |         r3 = 0x105e6;
    0x0000829e vstr d16, [r3, 0x18]                          |         __asm ("vstr d16, [r3, 0x18]");
                                                             |     }
    0x000082a2 ldr r5, [pc, 0xa4]                            |     
    0x000082a4 add r5, pc                                    |     r5 = 0x105f2;
    0x000082a6 ldr r3, [r5, 0x70]                            |     r3 = *(0x10662);
    0x000082a8 ldr.w r0, [r5, 0x438]                         |     r0 = *(0x10a2a);
    0x000082ac lsls r6, r3, 0xe                              |     r6 = r3 << 0xe;
                                                             |     if (r6 < r3) {
    0x000082ae bmi.w 0x88fc                                  |         goto label_133;
                                                             |     }
                                                             | label_22:
    0x000082b2 ldr.w sl, [pc, 0x98]                          |     
    0x000082b6 add sl, pc                                    |     sl = 0x10608;
    0x000082b8 ldr.w sb, [sl, 0x438]                         |     sb = *(0x10a40);
    0x000082bc ldr.w r3, [sb]                                |     r3 = *(0x10a40);
    0x000082c0 cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x000082c2 beq 0x839e                                    |         goto label_134;
                                                             |     }
    0x000082c4 ldr r7, [pc, 0x88]                            |     
    0x000082c6 add r5, sp, 0x5c                              |     r5 += endptr;
    0x000082c8 ldr r6, [pc, 0x88]                            |     
    0x000082ca add r7, pc                                    |     r7 = 0x1061e;
    0x000082cc add r6, pc                                    |     r6 = 0x10624;
    0x000082ce b 0x8362                                      |     
                                                             |     while (r0 == 0) {
                                                             | label_10:
    0x00008358 blx 0x332c                                    |         fcn_0000332c ();
    0x0000835c ldr r3, [sb, 4]!                              |         r3 = *((sb += 4));
                                                             |         if (r3 == 0) {
    0x00008360 cbz r3, 0x839e                                |             goto label_134;
                                                             |         }
                                                             | label_11:
    0x00008362 movs r3, 0                                    |         r3 = 0;
    0x00008364 ldr.w r0, [sl, 0x434]                         |         r0 = *((sl + 0x434));
    0x00008368 str r3, [sp, 0x5c]                            |         *(endptr) = r3;
    0x0000836a mov r1, r6                                    |         r1 = r6;
    0x0000836c ldr.w r3, [pc, 0x5e8]                         |         
    0x00008370 ldr.w r2, [sb]                                |         r2 = *(sb);
    0x00008374 str r5, [sp, 4]                               |         *(arg_4h) = r5;
    0x00008376 add r3, pc                                    |         r3 = 0x10cd2;
    0x00008378 str r3, [sp]                                  |         *(sp) = r3;
    0x0000837a mov r3, r7                                    |         r3 = r7;
    0x0000837c bl 0xe5c4                                     |         fcn_0000e5c4 (r0);
    0x00008380 ldr r0, [sp, 0x5c]                            |         r0 = *(endptr);
    0x00008382 cmp r0, 0                                     |         
    0x00008384 beq 0x8358                                    |         
                                                             |     }
    0x00008386 ldrb r3, [r0]                                 |     r3 = *(r0);
    0x00008388 cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x0000838a beq 0x8358                                    |         goto label_10;
                                                             |     }
    0x0000838c bl 0x62b4                                     |     fcn_000062b4 (r0);
    0x00008390 ldr r0, [sp, 0x5c]                            |     r0 = *(endptr);
    0x00008392 blx 0x332c                                    |     fcn_0000332c ();
    0x00008396 ldr r3, [sb, 4]!                              |     r3 = *((sb += 4));
    0x0000839a cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x0000839c bne 0x8362                                    |         goto label_11;
                                                             |     }
                                                             | label_134:
    0x0000839e ldr r3, [sp, 0x24]                            |     r3 = *(arg_24h);
                                                             |     if (r3 != 0) {
    0x000083a0 cbz r3, 0x83a8                                |         
    0x000083a2 ldr r0, [sp, 0x24]                            |         r0 = *(arg_24h);
    0x000083a4 bl 0x62b4                                     |         fcn_000062b4 (r0);
                                                             |     }
    0x000083a8 ldrd r3, r2, [sp, 0x40]                       |     __asm ("ldrd r3, r2, [arg_40h]");
    0x000083ac orrs r3, r2                                   |     r3 |= r2;
                                                             |     if (r3 == r2) {
    0x000083ae bne 0x83c6                                    |         
    0x000083b0 ldr.w r5, [pc, 0x5a8]                         |         
    0x000083b4 add r5, pc                                    |         r5 = 0x10d14;
    0x000083b6 ldr.w r0, [r5, 0x410]                         |         r0 = *(0x11124);
    0x000083ba ldr.w r1, [r5, 0x414]                         |         r1 = *(0x11128);
    0x000083be orrs.w r3, r0, r1                             |         r3 = r0 | r1;
    0x000083c0 lsls r1, r0, 0xc                              |         r1 = r0 << 0xc;
                                                             |         if (r1 != r0) {
    0x000083c2 bne.w 0x903c                                  |             goto label_135;
                                                             |         }
                                                             |     }
                                                             | label_50:
    0x000083c6 ldr.w r3, [pc, 0x598]                         |     
    0x000083ca add r3, pc                                    |     
    0x000083cc ldr r3, [r3, 0x24]                            |     r3 = *(0x10d54);
    0x000083ce lsls r1, r3, 0x1d                             |     r1 = r3 << 0x1d;
                                                             |     if (r1 < r3) {
    0x000083d0 bpl 0x83e0                                    |         
    0x000083d2 ldr.w r1, [pc, 0x590]                         |         
    0x000083d6 add r1, pc                                    |         r1 = 0x10d40;
    0x000083d8 ldr r2, [r1, 0x74]                            |         r2 = *(0x10db4);
    0x000083da orr r2, r2, 0x2000                            |         r2 |= 0x2000;
    0x000083de str r2, [r1, 0x74]                            |         *((r1 + 0x74)) = r2;
                                                             |     }
    0x000083e0 ldr.w r1, [pc, 0x584]                         |     
    0x000083e4 add r1, pc                                    |     r1 = 0x10d50;
    0x000083e6 ldr r2, [r1, 0x74]                            |     r2 = *(0x10dc4);
    0x000083e8 lsls r2, r2, 0x12                             |     r2 <<= 0x12;
                                                             |     if (r2 < r2) {
    0x000083ea bpl 0x8408                                    |         
    0x000083ec ldr.w r2, [pc, 0x57c]                         |         
    0x000083f0 orr r3, r3, 4                                 |         r3 |= 4;
    0x000083f4 add r2, pc                                    |         r2 = 0x10d64;
    0x000083f6 str r3, [r2, 0x24]                            |         *((r2 + 0x24)) = r3;
    0x000083f8 ldr r3, [sp, 0x14]                            |         r3 = *(arg_14h);
    0x000083fa cmp r3, 0x80                                  |         
                                                             |         if (r3 == 0x80) {
    0x000083fc beq.w 0x9398                                  |             goto label_136;
                                                             |         }
    0x00008400 ldr r3, [sp, 0x14]                            |         r3 = *(arg_14h);
    0x00008402 cmp r3, 0                                     |         
                                                             |         if (r3 == 0) {
    0x00008404 beq.w 0x901c                                  |             goto label_137;
                                                             |         }
                                                             |     }
                                                             | label_49:
    0x00008408 ldr.w r2, [pc, 0x564]                         |     
    0x0000840c ldr.w r0, [pc, 0x564]                         |     
    0x00008410 add r2, pc                                    |     r2 = 0x10d84;
    0x00008412 ldr r3, [r2, 0x74]                            |     r3 = *(0x10df8);
    0x00008414 add r0, pc                                    |     r0 = 0x10d8c;
    0x00008416 and r1, r3, 0x410                             |     r1 = r3 & 0x410;
    0x0000841a cmp.w r1, 0x410                               |     
    0x0000841e itt eq                                        |     
                                                             |     if (r1 == 0x410) {
    0x00008420 biceq r3, r3, 0x10                            |         __asm ("biceq r3, r3, 0x10");
                                                             |     }
                                                             |     if (r1 == 0x410) {
    0x00008424 str r3, [r2, 0x74]                            |         *((r2 + 0x74)) = r3;
                                                             |     }
    0x00008426 ldrd r3, r2, [r0, 0x70]                       |     __asm ("ldrd r3, r2, [r0, 0x70]");
    0x0000842a lsls r7, r2, 0x16                             |     r7 = r2 << 0x16;
                                                             |     if (r7 < r2) {
    0x0000842c bpl 0x84ac                                    |         
    0x0000842e ands r1, r3, 0x40                             |         r1 = r3 & 0x40;
                                                             |         if (r1 == r3) {
    0x00008432 beq.w 0x9582                                  |             goto label_138;
                                                             |         }
    0x00008436 lsls r6, r3, 0x1b                             |         r6 = r3 << 0x1b;
                                                             |         if (r6 >= r3) {
    0x00008438 bpl.w 0x8b2a                                  |             goto label_139;
                                                             |         }
    0x0000843c ldr r3, [r0, 0x6c]                            |         r3 = *((r0 + 0x6c));
    0x0000843e lsls r1, r3, 0x1b                             |         r1 = r3 << 0x1b;
                                                             |         if (r1 < r3) {
    0x00008440 bmi.w 0x8b12                                  |             goto label_140;
                                                             |         }
    0x00008444 ldr r3, [r0]                                  |         r3 = *(r0);
    0x00008446 cmp r3, 0                                     |         
                                                             |         if (r3 == 0) {
    0x00008448 bne 0x84c8                                    |             
    0x0000844a ldrd r1, r2, [r0, 0x28]                       |             __asm ("ldrd r1, r2, [r0, 0x28]");
    0x0000844e mov.w r3, 0x400                               |             r3 = 0x400;
    0x00008452 lsl.w r2, r3, r2                              |             r2 = r3 << r2;
    0x00008456 lsls r3, r1                                   |             r3 <<= r1;
    0x00008458 cmp.w r2, r3, lsl 4                           |             
                                                             |             if (r2 > r3) {
    0x0000845c bgt.w 0x8b48                                  |                 goto label_141;
                                                             |             }
    0x00008460 ldr r3, [r0, 0x30]                            |             r3 = *((r0 + 0x30));
    0x00008462 cmp r3, 0                                     |             
                                                             |             if (r3 != 0) {
    0x00008464 bne 0x84d2                                    |                 goto label_142;
                                                             |             }
    0x00008466 b 0x84ec                                      |             
                                                             |         } else {
    0x000084ac lsls r5, r3, 0x1b                             |             r5 = r3 << 0x1b;
                                                             |             if (r5 < r3) {
    0x000084ae bmi.w 0x8b0a                                  |                 goto label_143;
                                                             |             }
                                                             | label_29:
    0x000084b2 ldr.w r3, [pc, 0x4cc]                         |             
    0x000084b6 add r3, pc                                    |             r3 = 0x10e3c;
    0x000084b8 ldr r2, [r3, 0x6c]                            |             r2 = *(0x10ea8);
    0x000084ba lsls r2, r2, 0x1b                             |             r2 <<= 0x1b;
                                                             |             if (r2 >= r2) {
    0x000084bc bpl 0x84c8                                    |                 goto label_28;
                                                             |             }
    0x000084be ldr r1, [r3, 0x74]                            |             r1 = *((r3 + 0x74));
    0x000084c0 ands r1, r1, 1                                |             r1 &= 1;
                                                             |             if (r1 == r1) {
    0x000084c4 beq.w 0x965e                                  |                 goto label_144;
                                                             |             }
                                                             |         }
                                                             | label_28:
    0x000084c8 ldr.w r3, [pc, 0x4b8]                         |         
    0x000084cc add r3, pc                                    |         
    0x000084ce ldr r3, [r3, 0x30]                            |         r3 = *(0x10e84);
                                                             |         if (r3 != 0) {
    0x000084d0 cbz r3, 0x84e0                                |             
                                                             | label_142:
    0x000084d2 cmp r3, 0xff                                  |             
                                                             |             if (r3 < 0xff) {
    0x000084d4 bls.w 0x950a                                  |                 goto label_145;
                                                             |             }
    0x000084d8 cmp.w r3, r8, lsl 3                           |             
                                                             |             if (r3 > r8) {
    0x000084dc bhi.w 0x950a                                  |                 goto label_145;
                                                             |             }
                                                             |         }
    0x000084e0 ldr.w r2, [pc, 0x4a4]                         |         
    0x000084e4 add r2, pc                                    |         
    0x000084e6 ldr r2, [r2, 0x74]                            |         r2 = *(0x10ee4);
    0x000084e8 lsls r7, r2, 0x16                             |         r7 = r2 << 0x16;
                                                             |         if (r7 >= r2) {
    0x000084ea bpl 0x84f8                                    |             goto label_146;
                                                             |         }
                                                             |     }
    0x000084ec ldr.w r2, [pc, 0x49c]                         |     
    0x000084f0 add r2, pc                                    |     r2 = 0x10e80;
    0x000084f2 str r3, [r2, 0x34]                            |     *((r2 + 0x34)) = r3;
    0x000084f4 movs r3, 0                                    |     r3 = 0;
    0x000084f6 str r3, [r2, 0x30]                            |     *((r2 + 0x30)) = r3;
                                                             | label_146:
    0x000084f8 ldr r3, [sp, 0x14]                            |     r3 = *(arg_14h);
    0x000084fa cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x000084fc beq 0x85cc                                    |         
    0x000084fe ldr.w r3, [pc, 0x490]                         |         
    0x00008502 ldr r2, [sp, 0x20]                            |         r2 = *(arg_20h);
    0x00008504 add r3, pc                                    |         
    0x00008506 ldr r3, [r3, 0x70]                            |         r3 = *(0x10f0a);
    0x00008508 cmp r2, 0                                     |         
                                                             |         if (r2 != 0) {
    0x0000850a bne 0x85e8                                    |             goto label_37;
                                                             |         }
    0x0000850c lsls r6, r3, 0x16                             |         r6 = r3 << 0x16;
                                                             |         if (r6 < r3) {
    0x0000850e bmi.w 0x8bf6                                  |             goto label_147;
                                                             |         }
                                                             | label_12:
    0x00008512 ldr.w r3, [pc, 0x480]                         |         
    0x00008516 add r3, pc                                    |         r3 = 0x10eb0;
    0x00008518 ldr r2, [r3, 0x5c]                            |         r2 = *(0x10f0c);
                                                             |         if (r2 != 0) {
    0x0000851a cbz r2, 0x8540                                |             
    0x0000851c ldr r0, [sp, 0x14]                            |             r0 = *(arg_14h);
    0x0000851e cmp r0, 0x7f                                  |             
                                                             |             if (r0 <= 0x7f) {
    0x00008520 ble.w 0x9458                                  |                 goto label_148;
                                                             |             }
    0x00008524 ldr r1, [r3, 0x28]                            |             r1 = *((r3 + 0x28));
    0x00008526 mov.w r2, 0x400                               |             r2 = 0x400;
    0x0000852a lsls r2, r1                                   |             r2 <<= r1;
    0x0000852c cmp r2, r0                                    |             
                                                             |             if (r2 < r0) {
    0x0000852e blt.w 0x9458                                  |                 goto label_148;
                                                             |             }
    0x00008532 subs r2, r0, 1                                |             r2 = r0 - 1;
    0x00008534 tst r2, r0                                    |             
                                                             |             if ((r2 & r0) != 0) {
    0x00008536 bne.w 0x9458                                  |                 goto label_148;
                                                             |             }
    0x0000853a ldr r2, [sp, 0x14]                            |             r2 = *(arg_14h);
    0x0000853c strh.w r2, [r3, 0x68]                         |             *((r3 + 0x68)) = r2;
                                                             |         }
    0x00008540 ldr.w r3, [pc, 0x454]                         |         
    0x00008544 add r3, pc                                    |         r3 = 0x10ee0;
    0x00008546 ldr r2, [r3, 0x70]                            |         r2 = *(0x10f50);
    0x00008548 lsls r1, r2, 0x10                             |         r1 = r2 << 0x10;
                                                             |         if (r1 < r2) {
    0x0000854a bmi.w 0x8afe                                  |             goto label_149;
                                                             |         }
                                                             | label_26:
    0x0000854e ldr r3, [sp, 0x14]                            |         r3 = *(arg_14h);
    0x00008550 cmp r3, 0x80                                  |         
                                                             |         if (r3 != 0x80) {
    0x00008552 bne.w 0x8a98                                  |             goto label_150;
                                                             |         }
    0x00008556 ldr.w r3, [pc, 0x444]                         |         
    0x0000855a movs r2, 1                                    |         r2 = 1;
    0x0000855c ldr.w r1, [pc, 0x440]                         |         
    0x00008560 add r3, pc                                    |         r3 = 0x10f02;
    0x00008562 ldr.w r0, [r3, 0x438]                         |         r0 = *(0x1133a);
    0x00008566 add r1, pc                                    |         r1 = 0x10f0a;
    0x00008568 bl 0x6f28                                     |         r0 = fcn_00006f28 (r0, r1, r2);
    0x0000856c cmp r0, 0                                     |         
                                                             |         if (r0 != 0) {
    0x0000856e bne.w 0x9254                                  |             goto label_151;
                                                             |         }
    0x00008572 ldr r3, [sp, 0x2c]                            |         r3 = *(arg_2ch);
    0x00008574 cmp r3, 0                                     |         
                                                             |         if (r3 != 0) {
    0x00008576 bne 0x8634                                    |             goto label_24;
                                                             |         }
                                                             | label_13:
    0x00008578 ldr.w r4, [pc, 0x428]                         |         
    0x0000857c asr.w r6, r8, 0x1f                            |         r6 = r8 >> 0x1f;
    0x00008580 ldr r3, [sp, 0x30]                            |         r3 = *(arg_30h);
    0x00008582 add r4, pc                                    |         r4 = 0x10f2a;
    0x00008584 add.w r7, r4, 0x10                            |         r7 = r4 + 0x10;
    0x00008588 mov r0, r7                                    |         r0 = r7;
    0x0000858a asrs r5, r3, 0x1f                             |         r5 = r3 >> 0x1f;
    0x0000858c blx 0x347c                                    |         r0 = fcn_0000347c ();
    0x00008590 mul r3, r0, r6                                |         r3 = r0 * r6;
    0x00008594 ldr r2, [sp, 0x30]                            |         r2 = *(arg_30h);
    0x00008596 mla r3, r8, r1, r3                            |         __asm ("mla r3, r8, r1, r3");
    0x0000859a umull r0, r1, r0, r8                          |         r0:r1 = r0 * r8;
    0x0000859e add r1, r3                                    |         r1 += r3;
    0x000085a0 mov r3, r5                                    |         r3 = r5;
    0x000085a2 bl 0x11ff8                                    |         fcn_00011ff8 (r0, r1, r2, r3);
    0x000085a6 mov.w r3, -1                                  |         r3 = -1;
    0x000085aa mov ip, r0                                    |         
    0x000085ac mov r0, r1                                    |         r0 = r1;
    0x000085ae cmp r1, 0                                     |         
                                                             |         if (r1 == 0) {
    0x000085b0 beq.w 0x8c56                                  |             goto label_152;
                                                             |         }
    0x000085b4 ldr r1, [r4, 0x70]                            |         r1 = *((r4 + 0x70));
    0x000085b6 ands r1, r1, 0x80                             |         r1 &= 0x80;
                                                             |         if (r1 == r1) {
    0x000085ba beq.w 0x93ee                                  |             goto label_153;
                                                             |         }
                                                             | label_38:
    0x000085be movs r2, 0                                    |         r2 = 0;
    0x000085c0 str r3, [sp, 0x2c]                            |         *(arg_2ch) = r3;
    0x000085c2 str r2, [sp, 0x3c]                            |         *(arg_3ch) = r2;
    0x000085c4 ldr r2, [sp, 0x14]                            |         r2 = *(arg_14h);
    0x000085c6 cmp r2, 0                                     |         
                                                             |         if (r2 == 0) {
    0x000085c8 beq 0x8630                                    |             goto label_154;
                                                             |         }
    0x000085ca b 0x8634                                      |         goto label_24;
                                                             |     }
    0x000085cc ldr r5, [pc, 0x3d8]                           |     
    0x000085ce ldr r1, [pc, 0x3dc]                           |     
    0x000085d0 ldr r2, [sp, 0x14]                            |     r2 = *(arg_14h);
    0x000085d2 add r5, pc                                    |     r5 = 0x10f7e;
    0x000085d4 ldr.w r0, [r5, 0x438]                         |     r0 = *(0x113b6);
    0x000085d8 add r1, pc                                    |     r1 = 0x10f8a;
    0x000085da bl 0x6dbc                                     |     fcn_00006dbc (r0, r1, r2);
    0x000085de ldr r3, [sp, 0x20]                            |     r3 = *(arg_20h);
    0x000085e0 str r0, [sp, 0x14]                            |     *(arg_14h) = r0;
    0x000085e2 cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x000085e4 beq.w 0x8bee                                  |         goto label_155;
                                                             |     }
                                                             | label_37:
    0x000085e8 ldr r3, [pc, 0x3c4]                           |     
    0x000085ea add r3, pc                                    |     r3 = 0x10f9e;
    0x000085ec ldr r1, [r3, 0x70]                            |     r1 = *(0x1100e);
    0x000085ee ands r1, r1, 0x200                            |     r1 &= 0x200;
                                                             |     if (r1 == r1) {
    0x000085f2 beq.w 0x94ac                                  |         goto label_156;
                                                             |     }
    0x000085f6 ldr r3, [sp, 0x20]                            |     r3 = *(arg_20h);
    0x000085f8 movs r2, 0                                    |     r2 = 0;
    0x000085fa lsrs r3, r3, 1                                |     r3 >>= 1;
                                                             |     if (r3 == r3) {
    0x000085fc beq 0x860e                                    |         goto label_157;
                                                             |     }
                                                             |     do {
    0x000085fe lsrs r3, r3, 1                                |         r3 >>= 1;
    0x00008600 adds r4, 1                                    |         r4++;
    0x00008602 orr.w r3, r3, r2, lsl 31                      |         r3 |= (r2 << 31);
    0x00008606 lsrs r2, r2, 1                                |         r2 >>= 1;
    0x00008608 orrs.w r1, r3, r2                             |         r1 = r3 | r2;
    0x0000860c bne 0x85fe                                    |         
                                                             |     } while (r1 != r3);
                                                             | label_157:
    0x0000860e ldr r3, [pc, 0x3a4]                           |     
    0x00008610 add r3, pc                                    |     r3 = 0x10fca;
    0x00008612 strb.w r4, [r3, 0x184]                        |     *((r3 + 0x184)) = r4;
                                                             | label_36:
    0x00008616 ldr r3, [sp, 0x14]                            |     r3 = *(arg_14h);
    0x00008618 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x0000861a bne.w 0x8512                                  |         goto label_12;
                                                             |     }
    0x0000861e ldr r3, [pc, 0x398]                           |     
    0x00008620 add r3, pc                                    |     r3 = 0x10fde;
    0x00008622 ldr r2, [r3, 0x70]                            |     r2 = *(0x1104e);
    0x00008624 lsls r0, r2, 0x10                             |     r0 = r2 << 0x10;
                                                             |     if (r0 < r2) {
    0x00008626 bmi.w 0x8ae2                                  |         goto label_158;
                                                             |     }
                                                             | label_25:
    0x0000862a ldr r3, [sp, 0x2c]                            |     r3 = *(arg_2ch);
    0x0000862c cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x0000862e beq 0x8578                                    |         goto label_13;
                                                             |     }
                                                             | label_154:
    0x00008630 movs r2, 0x80                                 |     r2 = 0x80;
    0x00008632 str r2, [sp, 0x14]                            |     *(arg_14h) = r2;
                                                             | label_24:
    0x00008634 ldr r1, [sp, 0x14]                            |     r1 = *(arg_14h);
    0x00008636 ldr r6, [sp, 0x3c]                            |     r6 = *(arg_3ch);
    0x00008638 ldr r0, [sp, 0x2c]                            |     r0 = *(arg_2ch);
    0x0000863a ldr r4, [pc, 0x380]                           |     
    0x0000863c asrs r2, r1, 0x1f                             |     r2 = r1 >> 0x1f;
    0x0000863e mul r6, r1, r6                                |     r6 = r1 * r6;
    0x00008642 add r4, pc                                    |     r4 = 0x11004;
    0x00008644 mov r5, r4                                    |     r5 = r4;
    0x00008646 str r3, [r5, 0x10]!                           |     *((r5 += 0x10)) = r3;
    0x0000864a mla r6, r0, r2, r6                            |     __asm ("mla r6, r0, r2, r6");
    0x0000864e umull r7, r2, r1, r0                          |     r7:r2 = r1 * r0;
    0x00008652 mov r0, r5                                    |     r0 = r5;
    0x00008654 add r6, r2                                    |     r6 += r2;
    0x00008656 blx 0x347c                                    |     fcn_0000347c ();
    0x0000865a ldr r3, [r4, 0x28]                            |     r3 = *(0x1102c);
    0x0000865c mov.w r2, 0x400                               |     r2 = 0x400;
    0x00008660 lsls r2, r3                                   |     r2 <<= r3;
    0x00008662 mul r3, r2, r1                                |     r3 = r2 * r1;
    0x00008666 asrs r1, r2, 0x1f                             |     r1 = r2 >> 0x1f;
    0x00008668 mla r3, r0, r1, r3                            |     __asm ("mla r3, r0, r1, r3");
    0x0000866c umull r2, r0, r2, r0                          |     r2:r0 = r2 * r0;
    0x00008670 add r3, r0                                    |     r3 += r0;
    0x00008672 cmp r7, r2                                    |     
    0x00008674 sbcs.w r3, r6, r3                             |     __asm ("sbcs.w r3, r6, r3");
                                                             |     if (r7 >= r2) {
    0x00008678 bhs.w 0x9480                                  |         goto label_159;
                                                             |     }
    0x0000867c mov r0, r5                                    |     r0 = r5;
    0x0000867e blx 0x347c                                    |     fcn_0000347c ();
    0x00008682 bl 0x11eec                                    |     r0 = fcn_00011eec (r0, r1, r2);
    0x00008686 vmov d16, r0, r1                              |     __asm ("vmov d16, r0, r1");
    0x0000868a vldr d17, [pc, 0x2c4]                         |     __asm ("vldr d17, [0x00008954]");
    0x0000868e vmul.f64 d16, d16, d8                         |     __asm ("vmul.f64 d16, d16, d8");
    0x00008692 vdiv.f64 d16, d16, d17                        |     __asm ("vdiv.f64 d16, d16, d17");
    0x00008696 vmov r0, r1, d16                              |     __asm ("vmov r0, r1, d16");
    0x0000869a bl 0x12038                                    |     r0 = fcn_00012038 (r0, r1);
    0x0000869e mov r2, r0                                    |     r2 = r0;
    0x000086a0 mov r3, r1                                    |     r3 = r1;
    0x000086a2 mov r0, r5                                    |     r0 = r5;
    0x000086a4 blx 0x34a0                                    |     fcn_000034a0 ();
    0x000086a8 ldr r3, [r4, 0x6c]                            |     r3 = *((r4 + 0x6c));
    0x000086aa lsls r2, r3, 0x16                             |     r2 = r3 << 0x16;
                                                             |     if (r2 < r3) {
    0x000086ac bpl 0x86ca                                    |         
    0x000086ae ldr r3, [pc, 0x310]                           |         
    0x000086b0 add r3, pc                                    |         
    0x000086b2 ldr r3, [r3, 0x10]                            |         r3 = *(0x11086);
    0x000086b4 cmp r3, 0                                     |         
                                                             |         if (r3 <= 0) {
    0x000086b6 ble 0x86ca                                    |             goto label_160;
                                                             |         }
    0x000086b8 movs r2, 1                                    |         r2 = 1;
    0x000086ba cmp r3, r2                                    |         
    0x000086bc str.w r2, [r4, 0x25c]                         |         __asm ("str.w r2, [r4, 0x25c]");
    0x000086c0 itt ne                                        |         
                                                             |         if (r3 == r2) {
    0x000086c2 movne r3, -1                                  |             r3 = -1;
                                                             |         }
                                                             |         if (r3 == r2) {
    0x000086c6 str.w r3, [r4, 0x260]                         |             __asm ("str.w r3, [r4, 0x260]");
                                                             |             goto label_160;
                                                             |         }
                                                             |     }
                                                             | label_160:
    0x000086ca ldr r0, [sp, 0x6c]                            |     r0 = *(arg_6ch);
    0x000086cc blx 0x332c                                    |     fcn_0000332c ();
    0x000086d0 ldr r0, [sp, 0x70]                            |     r0 = *(arg_70h);
    0x000086d2 blx 0x332c                                    |     fcn_0000332c ();
    0x000086d6 movs r0, 0                                    |     r0 = 0;
    0x000086d8 blx 0x33ec                                    |     r0 = fcn_000033ec ();
    0x000086dc cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x000086de bne.w 0x87f0                                  |         goto label_161;
                                                             |     }
                                                             | label_17:
    0x000086e2 movs r1, 2                                    |     r1 = 2;
                                                             | label_18:
    0x000086e4 ldr r3, [pc, 0x2dc]                           |     
    0x000086e6 add r3, pc                                    |     
    0x000086e8 ldr r3, [r3]                                  |     r3 = *(0x110ae);
                                                             |     if (r3 == 0) {
    0x000086ea cbnz r3, 0x86f0                               |         
    0x000086ec orr r1, r1, 8                                 |         r1 |= 8;
                                                             |     }
    0x000086f0 ldrd r3, r2, [sp, 0x40]                       |     __asm ("ldrd r3, r2, [arg_40h]");
    0x000086f4 ldr r4, [pc, 0x2d0]                           |     
    0x000086f6 orrs r3, r2                                   |     r3 |= r2;
    0x000086f8 add r2, sp, 0x68                              |     r2 += arg_68h;
    0x000086fa add r4, pc                                    |     r4 = 0x110c6;
    0x000086fc it eq                                         |     
                                                             |     if (r3 != r2) {
    0x000086fe orreq r1, r1, 0x10                            |         r1 |= 0x10;
                                                             |     }
    0x00008702 ldr.w r0, [r4, 0x474]                         |     r0 = *(0x1153a);
    0x00008706 bl 0xd08c                                     |     fcn_0000d08c (r0, r1, r2, r3, r4, r5, r6);
    0x0000870a ldr.w r3, [r4, 0x44c]                         |     r3 = *(0x11512);
    0x0000870e orrs r0, r3                                   |     r0 |= r3;
                                                             |     if (r0 == r3) {
    0x00008710 beq.w 0x9076                                  |         goto label_162;
                                                             |     }
                                                             | label_51:
    0x00008714 ldr r2, [pc, 0x2b4]                           |     
    0x00008716 ldr r3, [pc, 0x2b8]                           |     r3 = *(0x89d2);
    0x00008718 add r2, pc                                    |     r2 = 0x110e8;
    0x0000871a ldr r3, [r2, r3]                              |     r3 = *(0x110e8);
    0x0000871c ldr r2, [r3]                                  |     r2 = *(0x110e8);
    0x0000871e ldr r3, [sp, 0xe4]                            |     r3 = *(arg_e4h);
    0x00008720 eors r2, r3                                   |     r2 ^= r3;
    0x00008722 mov.w r3, 0                                   |     r3 = 0;
                                                             |     if (r2 != r3) {
    0x00008726 bne.w 0x94a8                                  |         goto label_163;
                                                             |     }
    0x0000872a add sp, 0xec                                  |     
    0x0000872c vpop {d8, d9}                                 |     __asm ("vpop {d8, d9}");
    0x00008730 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc}    |     
                                                             | label_117:
    0x00008776 ldr r2, [pc, 0x268]                           |     
    0x00008778 add r2, pc                                    |     
    0x0000877a ldr r2, [r2, 0x28]                            |     r2 = *(0x11186);
    0x0000877c cmp r3, r2                                    |     
                                                             |     if (r3 > r2) {
    0x0000877e bgt.w 0x7e1c                                  |         goto label_14;
                                                             |     }
    0x00008782 str r3, [sp]                                  |     *(sp) = r3;
    0x00008784 movs r1, 1                                    |     r1 = 1;
    0x00008786 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00008788 ldr r2, [pc, 0x258]                           |     
    0x0000878a ldr r0, [r3]                                  |     r0 = *(r3);
    0x0000878c add r2, pc                                    |     r2 = 0x11174;
    0x0000878e ldr r3, [sp, 0x10]                            |     r3 = *(arg_10h);
    0x00008790 blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x00008794 b.w 0x7e1c                                    |     goto label_14;
                                                             | label_81:
    0x00008798 ldr.w r8, [pc, 0x24c]                         |     
    0x0000879c adds r2, r3, 1                                |     r2 = r3 + 1;
    0x0000879e ldr.w r0, [r5, r3, lsl 2]                     |     offset_3 = r3 << 2;
                                                             |     r0 = *((r5 + offset_3));
    0x000087a2 str r2, [r6]                                  |     *(r6) = r2;
    0x000087a4 add r8, pc                                    |     r8 = 0x11190;
    0x000087a6 ldr.w r1, [r8, 0x28]                          |     r1 = *(0x111b8);
    0x000087aa blx 0x3404                                    |     r0 = fcn_00003404 ();
    0x000087ae mov r3, r0                                    |     r3 = r0;
    0x000087b0 str r0, [sp, 0x40]                            |     *(arg_40h) = r0;
    0x000087b2 orrs r3, r1                                   |     r3 |= r1;
    0x000087b4 str r1, [sp, 0x44]                            |     *(arg_44h) = r1;
    0x000087b6 ldr r3, [r6]                                  |     r3 = *(r6);
                                                             |     if (r3 == r1) {
    0x000087b8 beq.w 0x9518                                  |         goto label_164;
                                                             |     }
    0x000087bc cmp r3, r4                                    |     
                                                             |     if (r3 < r4) {
    0x000087be blt.w 0x9250                                  |         goto label_63;
                                                             |     }
    0x000087c2 addw r2, r8, 0x47c                            |     __asm ("addw r2, r8, 0x47c");
    0x000087c6 ldr r1, [pc, 0x224]                           |     
    0x000087c8 str r2, [sp, 4]                               |     *(arg_4h) = r2;
    0x000087ca movs r3, 0                                    |     r3 = 0;
    0x000087cc ldr r2, [pc, 0x220]                           |     
    0x000087ce str r3, [sp]                                  |     *(sp) = r3;
    0x000087d0 add r1, pc                                    |     r1 = 0x111c2;
    0x000087d2 ldr.w r0, [r8, 0x434]                         |     r0 = *((r8 + 0x434));
    0x000087d6 add r2, pc                                    |     r2 = 0x111ca;
    0x000087d8 bl 0xe648                                     |     fcn_0000e648 (r0);
    0x000087dc ldr r0, [pc, 0x214]                           |     
    0x000087de add r0, pc                                    |     r0 = 0x111d6;
    0x000087e0 blx 0x3144                                    |     getenv (r0);
    0x000087e4 str r0, [sp, 0x5c]                            |     *(endptr) = r0;
    0x000087e6 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x000087e8 bne.w 0x77da                                  |         goto label_15;
                                                             |     }
    0x000087ec b.w 0x77ec                                    |     goto label_16;
                                                             | label_161:
    0x000087f0 movs r0, 1                                    |     r0 = 1;
    0x000087f2 blx 0x33ec                                    |     r0 = fcn_000033ec ();
    0x000087f6 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x000087f8 beq.w 0x86e2                                  |         goto label_17;
                                                             |     }
    0x000087fc ldr r2, [pc, 0x1f8]                           |     
    0x000087fe add r2, pc                                    |     
    0x00008800 ldr.w r3, [r2, 0x410]                         |     r3 = *(0x1160a);
    0x00008804 ldr.w r2, [r2, 0x414]                         |     r2 = *(0x1160e);
    0x00008808 orrs r3, r2                                   |     r3 |= r2;
                                                             |     if (r3 != r2) {
    0x0000880a bne.w 0x86e2                                  |         goto label_17;
                                                             |     }
    0x0000880e movs r1, 6                                    |     r1 = 6;
    0x00008810 b 0x86e4                                      |     goto label_18;
                                                             | label_107:
    0x00008812 ldr r2, [pc, 0x1e8]                           |     
    0x00008814 ldr r1, [pc, 0x1e8]                           |     
    0x00008816 add r2, pc                                    |     r2 = 0x11218;
    0x00008818 add r1, pc                                    |     r1 = 0x1121c;
    0x0000881a bl 0x6cf4                                     |     fcn_00006cf4 (r0, r1, r2);
    0x0000881e str r0, [sp, 0x5c]                            |     *(endptr) = r0;
    0x00008820 bl 0x6268                                     |     fcn_00006268 (r0);
    0x00008824 ldr r0, [sp, 0x5c]                            |     r0 = *(endptr);
    0x00008826 blx 0x332c                                    |     fcn_0000332c ();
    0x0000882a ldr r2, [pc, 0x1d8]                           |     
    0x0000882c ldr r1, [pc, 0x1d8]                           |     
    0x0000882e ldr.w r0, [r4, 0x438]                         |     r0 = *((r4 + 0x438));
    0x00008832 add r2, pc                                    |     r2 = 0x1123c;
    0x00008834 add r1, pc                                    |     r1 = 0x11240;
    0x00008836 bl 0x6cf4                                     |     r0 = fcn_00006cf4 (r0, r1, r2);
    0x0000883a mov r5, r0                                    |     r5 = r0;
    0x0000883c str r0, [sp, 0x5c]                            |     *(endptr) = r0;
                                                             |     if (r0 != 0) {
    0x0000883e cbz r0, 0x885a                                |         
    0x00008840 add.w r1, r4, 0x110                           |         r1 = r4 + 0x110;
    0x00008844 mov.w r2, -1                                  |         r2 = -1;
    0x00008848 blx 0x37a4                                    |         r0 = ext2fs_badblocks_list_iterate ();
    0x0000884c cmp r0, 0                                     |         
                                                             |         if (r0 != 0) {
    0x0000884e bne.w 0x9406                                  |             goto label_165;
                                                             |         }
    0x00008852 ldr r0, [sp, 0x5c]                            |         r0 = *(endptr);
                                                             |         if (r0 == 0) {
    0x00008854 cbz r0, 0x885a                                |             goto label_166;
                                                             |         }
    0x00008856 blx 0x332c                                    |         fcn_0000332c ();
                                                             |     }
                                                             | label_166:
    0x0000885a ldr.w sb, [pc, 0x1b0]                         |     
    0x0000885e add sb, pc                                    |     sb = 0x11270;
    0x00008860 ldr.w r8, [sb, 0x438]                         |     r8 = *(0x116a8);
    0x00008864 ldr.w r3, [r8]                                |     r3 = *(0x116a8);
                                                             |     if (r3 == 0) {
    0x00008868 cbz r3, 0x88b4                                |         goto label_167;
                                                             |     }
    0x0000886a ldr r6, [pc, 0x1a4]                           |     
    0x0000886c add r5, sp, 0x5c                              |     r5 += endptr;
    0x0000886e ldr r4, [pc, 0x1a4]                           |     
    0x00008870 add r6, pc                                    |     r6 = 0x11286;
    0x00008872 add r4, pc                                    |     r4 = 0x1128c;
    0x00008874 b 0x8880                                      |     goto label_168;
                                                             | label_19:
    0x00008876 blx 0x332c                                    |     fcn_0000332c ();
                                                             |     do {
                                                             | label_20:
    0x0000887a ldr r3, [r8, 4]!                              |         r3 = *((r8 += 4));
                                                             |         if (r3 == 0) {
    0x0000887e cbz r3, 0x88b4                                |             goto label_167;
                                                             |         }
                                                             | label_168:
    0x00008880 movs r3, 0                                    |         r3 = 0;
    0x00008882 ldr.w r0, [sb, 0x434]                         |         r0 = *((sb + 0x434));
    0x00008886 str r3, [sp, 0x5c]                            |         *(endptr) = r3;
    0x00008888 mov r1, r4                                    |         r1 = r4;
    0x0000888a ldr r3, [pc, 0x18c]                           |         
    0x0000888c ldr.w r2, [r8]                                |         r2 = *(r8);
    0x00008890 str r5, [sp, 4]                               |         *(arg_4h) = r5;
    0x00008892 add r3, pc                                    |         r3 = 0x112b0;
    0x00008894 str r3, [sp]                                  |         *(sp) = r3;
    0x00008896 mov r3, r6                                    |         r3 = r6;
    0x00008898 bl 0xe5c4                                     |         fcn_0000e5c4 (r0);
    0x0000889c ldr r0, [sp, 0x5c]                            |         r0 = *(endptr);
    0x0000889e cmp r0, 0                                     |         
    0x000088a0 beq 0x887a                                    |         
                                                             |     } while (r0 == 0);
    0x000088a2 ldrb r3, [r0]                                 |     r3 = *(r0);
    0x000088a4 cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x000088a6 beq 0x8876                                    |         goto label_19;
                                                             |     }
    0x000088a8 bl 0x6268                                     |     fcn_00006268 (r0);
    0x000088ac ldr r0, [sp, 0x5c]                            |     r0 = *(endptr);
    0x000088ae cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x000088b0 beq 0x887a                                    |         goto label_20;
                                                             |     }
    0x000088b2 b 0x8876                                      |     goto label_19;
                                                             | label_167:
    0x000088b4 ldr r3, [pc, 0x164]                           |     
    0x000088b6 ldr r2, [pc, 0x168]                           |     
    0x000088b8 ldr r1, [pc, 0x168]                           |     
    0x000088ba add r3, pc                                    |     r3 = 0x112da;
    0x000088bc ldr.w r0, [r3, 0x438]                         |     r0 = *(0x11712);
    0x000088c0 add r2, pc                                    |     r2 = 0x112e6;
    0x000088c2 add r1, pc                                    |     r1 = 0x112ea;
    0x000088c4 bl 0x6cf4                                     |     fcn_00006cf4 (r0, r1, r2);
    0x000088c8 str r0, [sp, 0x5c]                            |     *(endptr) = r0;
    0x000088ca b.w 0x7d44                                    |     goto label_21;
                                                             | label_133:
    0x000088fc ldr r2, [pc, 0x130]                           |     
    0x000088fe ldr r1, [pc, 0x134]                           |     
    0x00008900 add r2, pc                                    |     r2 = 0x11334;
    0x00008902 add r1, pc                                    |     r1 = 0x1133c;
    0x00008904 bl 0x6cf4                                     |     r0 = fcn_00006cf4 (r0, r1, r2);
    0x00008908 mov r7, r0                                    |     r7 = r0;
    0x0000890a blx 0x37f8                                    |     r0 = ext2fs_create_resize_inode ();
    0x0000890e subs r6, r0, 0                                |     r6 = r0 - 0;
                                                             |     if (r6 < r0) {
    0x00008910 blt.w 0x962c                                  |         goto label_169;
                                                             |     }
    0x00008914 mov r0, r7                                    |     r0 = r7;
    0x00008916 blx 0x332c                                    |     fcn_0000332c ();
    0x0000891a ldr r1, [pc, 0x11c]                           |     
    0x0000891c movs r2, 0                                    |     r2 = 0;
    0x0000891e ldr.w r0, [r5, 0x438]                         |     r0 = *((r5 + 0x438));
    0x00008922 strh.w r6, [r5, 0x28c]                        |     *((r5 + 0x28c)) = r6;
    0x00008926 add r1, pc                                    |     r1 = 0x11364;
    0x00008928 bl 0x6cf4                                     |     r0 = fcn_00006cf4 (r0, r1, r2);
    0x0000892c mov r7, r0                                    |     r7 = r0;
    0x0000892e cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00008930 beq.w 0x8c76                                  |         goto label_170;
                                                             |     }
    0x00008934 addw r2, r5, 0x28e                            |     __asm ("addw r2, r5, 0x28e");
    0x00008938 mov r0, r6                                    |     r0 = r6;
    0x0000893a mov r1, r7                                    |     r1 = r7;
    0x0000893c blx 0x364c                                    |     r0 = fcn_0000364c ();
    0x00008940 cmp r0, 0                                     |     
                                                             |     if (r0 < 0) {
    0x00008942 blt.w 0x941c                                  |         goto label_171;
                                                             |     }
    0x00008946 mov r0, r7                                    |     r0 = r7;
    0x00008948 blx 0x332c                                    |     fcn_0000332c ();
    0x0000894c b 0x82b2                                      |     goto label_22;
                                                             | label_124:
    0x00008a3c ldr r3, [sp, 0x4c]                            |     r3 = *(arg_4ch);
    0x00008a3e movs r2, 0x25                                 |     r2 = 0x25;
    0x00008a40 ldr.w r0, [pc, 0x64c]                         |     
    0x00008a42 lsls r4, r1, 0x19                             |     r4 = r1 << 0x19;
    0x00008a44 movs r1, 1                                    |     r1 = 1;
    0x00008a46 ldr r3, [r3]                                  |     r3 = *(r3);
    0x00008a48 add r0, pc                                    |     r0 = 0x11adc;
    0x00008a4a blx 0x35c4                                    |     ext2fs_namei ();
    0x00008a4e ldr.w r6, [r6, 0x438]                         |     r6 = *((r6 + 0x438));
    0x00008a52 ldr r2, [r6]                                  |     r2 = *(r6);
                                                             |     if (r2 == 0) {
    0x00008a54 cbz r2, 0x8a84                                |         void (*0x8a84)() ();
                                                             |     }
                                                             | label_108:
    0x00008a92 ldr r0, [sp, 0x5c]                            |     r0 = *(endptr);
    0x00008a94 b.w 0x7d6a                                    |     goto label_23;
                                                             | label_150:
    0x00008a98 ldr r3, [sp, 0x2c]                            |     r3 = *(arg_2ch);
    0x00008a9a cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x00008a9c beq.w 0x8578                                  |         goto label_13;
                                                             |     }
    0x00008aa0 ldr r3, [sp, 0x2c]                            |     r3 = *(arg_2ch);
    0x00008aa2 b 0x8634                                      |     goto label_24;
                                                             | label_158:
    0x00008ae2 ldrh.w r3, [r3, 0x68]                         |     r3 = *((r3 + 0x68));
    0x00008ae6 cmp r3, 0x80                                  |     
                                                             |     if (r3 != 0x80) {
    0x00008ae8 bne.w 0x862a                                  |         goto label_25;
                                                             |     }
                                                             | label_27:
    0x00008aec ldr.w r0, [pc, 0x5b8]                         |     
    0x00008af0 movs r3, 0x80                                 |     r3 = 0x80;
    0x00008af2 ldr.w r2, [pc, 0x5b8]                         |     
    0x00008af6 add r0, pc                                    |     r0 = 0x11ba2;
    0x00008af8 add r2, pc                                    |     r2 = 0x11baa;
    0x00008afa b.w 0x93a0                                    |     goto label_58;
                                                             | label_149:
    0x00008afe ldrh.w r3, [r3, 0x68]                         |     r3 = *((r3 + 0x68));
    0x00008b02 cmp r3, 0x80                                  |     
                                                             |     if (r3 != 0x80) {
    0x00008b04 bne.w 0x854e                                  |         goto label_26;
                                                             |     }
    0x00008b08 b 0x8aec                                      |     goto label_27;
                                                             | label_143:
    0x00008b0a ldr r3, [r0, 0x6c]                            |     r3 = *((r0 + 0x6c));
    0x00008b0c lsls r3, r3, 0x1b                             |     r3 <<= 0x1b;
                                                             |     if (r3 >= r3) {
    0x00008b0e bpl.w 0x84c8                                  |         goto label_28;
                                                             |     }
                                                             | label_140:
    0x00008b12 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00008b14 movs r2, 0x67                                 |     r2 = 0x67;
    0x00008b16 ldr.w r0, [pc, 0x598]                         |     
    0x00008b1a movs r1, 1                                    |     r1 = 1;
    0x00008b1c ldr r3, [r3]                                  |     r3 = *(r3);
    0x00008b1e add r0, pc                                    |     r0 = 0x11bd4;
    0x00008b20 blx 0x35c4                                    |     ext2fs_namei ();
    0x00008b24 movs r0, 1                                    |     r0 = 1;
    0x00008b26 blx 0x3934                                    |     r0 = fcn_00003934 ();
                                                             | label_139:
    0x00008b2a ldr r3, [r0]                                  |     r3 = *(r0);
    0x00008b2c cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00008b2e bne.w 0x84b2                                  |         goto label_29;
                                                             |     }
    0x00008b32 ldrd r1, r2, [r0, 0x28]                       |     __asm ("ldrd r1, r2, [r0, 0x28]");
    0x00008b36 mov.w r3, 0x400                               |     r3 = 0x400;
    0x00008b3a lsl.w r2, r3, r2                              |     r2 = r3 << r2;
    0x00008b3e lsls r3, r1                                   |     r3 <<= r1;
    0x00008b40 cmp.w r2, r3, lsl 4                           |     
                                                             |     if (r2 <= r3) {
    0x00008b44 ble.w 0x84b2                                  |         goto label_29;
                                                             |     }
                                                             | label_141:
    0x00008b48 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00008b4a movs r2, 0x74                                 |     r2 = 0x74;
    0x00008b4c ldr.w r0, [pc, 0x564]                         |     
    0x00008b50 movs r1, 1                                    |     r1 = 1;
    0x00008b52 ldr r3, [r3]                                  |     r3 = *(r3);
    0x00008b54 add r0, pc                                    |     r0 = 0x11c0c;
    0x00008b56 blx 0x35c4                                    |     ext2fs_namei ();
    0x00008b5a b 0x84b2                                      |     goto label_29;
                                                             | label_119:
    0x00008b5c ldr r3, [r6, 0x6c]                            |     r3 = *((r6 + 0x6c));
    0x00008b5e bic r3, r3, 0x10                              |     r3 = BIT_MASK (r3, 0x10);
    0x00008b62 str r3, [r6, 0x6c]                            |     *((r6 + 0x6c)) = r3;
    0x00008b64 b.w 0x7e84                                    |     goto label_30;
                                                             | label_101:
    0x00008b68 movw r3, 0xb750                               |     
    0x00008b6c movt r3, 0x7f2b                               |     r3 = 0x7f2bb750;
    0x00008b70 cmp r0, r3                                    |     
                                                             |     if (r0 == r3) {
    0x00008b72 beq.w 0x7ac8                                  |         goto label_31;
                                                             |     }
                                                             | label_45:
    0x00008b76 ldr.w r4, [pc, 0x540]                         |     
    0x00008b7a ldr.w r3, [pc, 0x540]                         |     
    0x00008b7e ldr.w r2, [pc, 0x540]                         |     
    0x00008b82 add r4, pc                                    |     r4 = 0x11c40;
    0x00008b84 add r3, pc                                    |     r3 = 0x11c46;
    0x00008b86 add r2, pc                                    |     r2 = 0x11c4c;
                                                             | label_60:
    0x00008b88 mov r1, r0                                    |     r1 = r0;
    0x00008b8a ldr r0, [r4]                                  |     r0 = *(r4);
    0x00008b8c blx 0x322c                                    |     fcn_0000322c ();
    0x00008b90 movs r0, 1                                    |     r0 = 1;
    0x00008b92 blx 0x3934                                    |     fcn_00003934 ();
    0x00008b96 cmp r5, sb                                    |     
    0x00008b98 mov sl, sb                                    |     sl = sb;
                                                             |     if (r5 >= sb) {
    0x00008b9a bhs.w 0x8104                                  |         goto label_32;
                                                             |     }
    0x00008b9e str.w sb, [sp, 0x78]                          |     __asm ("str.w sb, [arg_78h]");
    0x00008ba2 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00008ba4 beq.w 0x8100                                  |         goto label_33;
                                                             |     }
    0x00008ba8 b.w 0x8104                                    |     goto label_32;
                                                             | label_92:
    0x00008bac ldr.w r3, [pc, 0x514]                         |     
    0x00008bb0 add r3, pc                                    |     r3 = 0x11c78;
    0x00008bb2 b.w 0x7b68                                    |     goto label_34;
                                                             | label_128:
    0x00008bb6 strd r5, r3, [sp]                             |     __asm ("strd r5, r3, [sp]");
    0x00008bba ldr.w r3, [pc, 0x50c]                         |     
    0x00008bbe ldr r1, [sp, 0x18]                            |     r1 = *(arg_18h);
    0x00008bc0 ldr.w r2, [pc, 0x508]                         |     
    0x00008bc4 add r3, pc                                    |     
    0x00008bc6 ldr.w r3, [r3, 0x474]                         |     r3 = *(0x12106);
    0x00008bca ldr r0, [r1]                                  |     r0 = *(r1);
    0x00008bcc add r2, pc                                    |     r2 = 0x11c9c;
    0x00008bce movs r1, 1                                    |     r1 = 1;
    0x00008bd0 blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x00008bd4 b.w 0x816a                                    |     goto label_35;
                                                             | label_155:
    0x00008bee ldr r3, [r5, 0x70]                            |     r3 = *((r5 + 0x70));
    0x00008bf0 lsls r5, r3, 0x16                             |     r5 = r3 << 0x16;
                                                             |     if (r5 >= r3) {
    0x00008bf2 bpl.w 0x8616                                  |         goto label_36;
                                                             |     }
                                                             | label_147:
    0x00008bf6 ldr.w r6, [pc, 0x4dc]                         |     
    0x00008bfa movs r3, 0x10                                 |     r3 = 0x10;
    0x00008bfc ldr.w r7, [pc, 0x4d8]                         |     
    0x00008c00 ldr.w r1, [pc, 0x4d8]                         |     
    0x00008c04 add r6, pc                                    |     r6 = 0x11cde;
    0x00008c06 str r3, [sp]                                  |     *(sp) = r3;
    0x00008c08 str.w fp, [sp, 4]                             |     __asm ("str.w fp, [arg_4h]");
    0x00008c0c add r7, pc                                    |     r7 = 0x11ce8;
    0x00008c0e ldr.w r5, [r6, 0x438]                         |     r5 = *(0x12116);
    0x00008c12 mov r2, r7                                    |     r2 = r7;
    0x00008c14 ldr.w r0, [r6, 0x434]                         |     r0 = *(0x12112);
    0x00008c16 lsls r4, r6, 0x10                             |     r4 = r6 << 0x10;
    0x00008c18 add r1, pc                                    |     r1 = 0x11cf8;
    0x00008c1a movs r3, 0                                    |     r3 = 0;
    0x00008c1c bl 0xe6f4                                     |     fcn_0000e6f4 ();
    0x00008c20 ldr r2, [r5]                                  |     r2 = *(0x12116);
                                                             |     if (r2 == 0) {
    0x00008c22 cbz r2, 0x8c4a                                |         goto label_172;
                                                             |     }
    0x00008c24 ldr.w sb, [pc, 0x4b8]                         |     
    0x00008c28 mov sl, r4                                    |     sl = r4;
    0x00008c2a mov r4, fp                                    |     r4 = fp;
    0x00008c2c add sb, pc                                    |     sb = 0x11d10;
                                                             |     do {
    0x00008c2e ldr r3, [sp, 0x88]                            |         r3 = *(arg_88h);
    0x00008c30 mov r1, sb                                    |         r1 = sb;
    0x00008c32 str r4, [sp, 4]                               |         *(arg_4h) = r4;
    0x00008c34 ldr.w r0, [r6, 0x434]                         |         r0 = *((r6 + 0x434));
    0x00008c38 str r3, [sp]                                  |         *(sp) = r3;
    0x00008c3a mov r3, r7                                    |         r3 = r7;
    0x00008c3c bl 0xe6f4                                     |         fcn_0000e6f4 ();
    0x00008c40 ldr r2, [r5, 4]!                              |         r2 = *((r5 += 4));
    0x00008c44 cmp r2, 0                                     |         
    0x00008c46 bne 0x8c2e                                    |         
                                                             |     } while (r2 != 0);
    0x00008c48 mov r4, sl                                    |     r4 = sl;
                                                             | label_172:
    0x00008c4a ldr r3, [sp, 0x88]                            |     r3 = *(arg_88h);
    0x00008c4c str r3, [sp, 0x20]                            |     *(arg_20h) = r3;
    0x00008c4e cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00008c50 bne.w 0x85e8                                  |         goto label_37;
                                                             |     }
    0x00008c54 b 0x8616                                      |     goto label_36;
                                                             | label_152:
    0x00008c56 mov r0, r7                                    |     r0 = r7;
    0x00008c58 blx 0x347c                                    |     fcn_0000347c ();
    0x00008c5c mul r2, r8, r1                                |     r2 = r8 * r1;
    0x00008c60 mov r3, r5                                    |     r3 = r5;
    0x00008c62 mla r2, r0, r6, r2                            |     __asm ("mla r2, r0, r6, r2");
    0x00008c66 umull r0, r1, r8, r0                          |     r0:r1 = r8 * r0;
    0x00008c6a add r1, r2                                    |     r1 += r2;
    0x00008c6c ldr r2, [sp, 0x30]                            |     r2 = *(arg_30h);
    0x00008c6e bl 0x11ff8                                    |     r0 = fcn_00011ff8 (r0, r1, r2, r3);
    0x00008c72 mov r3, r0                                    |     r3 = r0;
    0x00008c74 b 0x85be                                      |     goto label_38;
                                                             | label_170:
    0x00008c76 mov r0, r6                                    |     r0 = r6;
    0x00008c78 blx 0x318c                                    |     e2p_get_encoding_flags ();
    0x00008c7c strh.w r0, [r5, 0x28e]                        |     *((r5 + 0x28e)) = r0;
    0x00008c80 b.w 0x82b2                                    |     goto label_22;
                                                             | label_90:
    0x00008c84 ldr.w r1, [pc, 0x45c]                         |     
    0x00008c88 mov r2, r4                                    |     r2 = r4;
    0x00008c8a movs r0, 1                                    |     r0 = 1;
    0x00008c8c add r1, pc                                    |     r1 = 0x11d74;
    0x00008c8e blx 0x3150                                    |     printf_chk ();
    0x00008c92 ldr.w r1, [pc, 0x454]                         |     
    0x00008c96 mov r0, r4                                    |     r0 = r4;
    0x00008c98 add r1, pc                                    |     r1 = 0x11d86;
    0x00008c9a blx 0x3928                                    |     r0 = fcn_00003928 ();
                                                             |     if (r0 != 0) {
    0x00008c9e cbz r0, 0x8cb2                                |         
                                                             | label_57:
    0x00008ca0 ldr.w r1, [pc, 0x448]                         |         
    0x00008ca4 mov r0, r4                                    |         r0 = r4;
    0x00008ca6 add r1, pc                                    |         r1 = 0x11d96;
    0x00008ca8 blx 0x3928                                    |         r0 = fcn_00003928 ();
    0x00008cac cmp r0, 0                                     |         
                                                             |         if (r0 != 0) {
    0x00008cae bne.w 0x9274                                  |             goto label_173;
                                                             |         }
                                                             |     }
                                                             | label_42:
    0x00008cb2 ldr.w r0, [pc, 0x43c]                         |     
    0x00008cb6 add r0, pc                                    |     r0 = 0x11dac;
    0x00008cb8 blx 0x37d4                                    |     ext2fs_extent_insert ();
                                                             | label_53:
    0x00008cbc ldr.w r3, [pc, 0x434]                         |     
    0x00008cc0 add r3, pc                                    |     
    0x00008cc2 ldr.w r3, [r3, 0x44c]                         |     r3 = *(0x12204);
    0x00008cc6 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00008cc8 bne.w 0x78fe                                  |         goto label_39;
                                                             |     }
    0x00008ccc ldr.w r0, [pc, 0x428]                         |     
    0x00008cd0 add r0, pc                                    |     r0 = 0x11dcc;
    0x00008cd2 blx 0x37d4                                    |     ext2fs_extent_insert ();
    0x00008cd6 movs r0, 1                                    |     r0 = 1;
    0x00008cd8 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_115:
    0x00008cdc ldr.w r3, [pc, 0x41c]                         |     
    0x00008ce0 mov.w r2, 0x1000                              |     r2 = 0x1000;
    0x00008ce4 ldr.w r1, [pc, 0x418]                         |     
    0x00008ce8 add r3, pc                                    |     r3 = 0x11de8;
    0x00008cea add r1, pc                                    |     r1 = 0x11dee;
    0x00008cec ldr.w r0, [r3, 0x438]                         |     r0 = *(0x12220);
    0x00008cf0 bl 0x6dbc                                     |     r0 = fcn_00006dbc (r0, r1, r2);
    0x00008cf4 adds r1, r0, 1                                |     r1 = r0 + 1;
    0x00008cf6 mov r5, r0                                    |     r5 = r0;
                                                             |     if (r1 == r0) {
    0x00008cf8 beq.w 0x9296                                  |         goto label_174;
                                                             |     }
                                                             | label_54:
    0x00008cfc ldr r3, [sp, 0x60]                            |     r3 = *(arg_60h);
                                                             |     if (r3 != 0) {
    0x00008cfe cbz r3, 0x8d06                                |         
    0x00008d00 cmp r5, r3                                    |         
    0x00008d02 it lt                                         |         
                                                             |         if (r5 < r3) {
    0x00008d04 movlt r5, r3                                  |             r5 = r3;
                                                             |             goto label_175;
                                                             |         }
                                                             |     }
                                                             | label_175:
    0x00008d06 ldr r3, [sp, 0x10]                            |     r3 = *(arg_10h);
                                                             |     if (r3 != 0) {
    0x00008d08 cbz r3, 0x8d12                                |         
    0x00008d0a rsbs r3, r3, 0                                |         r3 -= ;
    0x00008d0c cmp r5, r3                                    |         
    0x00008d0e it lt                                         |         
                                                             |         if (r5 < r3) {
    0x00008d10 movlt r5, r3                                  |             r5 = r3;
                                                             |             goto label_176;
                                                             |         }
                                                             |     }
                                                             | label_176:
    0x00008d12 cmp r5, 0                                     |     
    0x00008d14 mov r3, r5                                    |     r3 = r5;
    0x00008d16 it lt                                         |     
                                                             |     if (r5 < 0) {
    0x00008d18 addwlt r3, r5, 0x3ff                          |         __asm ("addwlt r3, r5, 0x3ff");
                                                             |     }
    0x00008d1c ldr r0, [sp, 0x34]                            |     r0 = *(arg_34h);
    0x00008d1e ldr r1, [sp, 0x28]                            |     r1 = *(arg_28h);
    0x00008d20 asrs r2, r3, 0xa                              |     r2 = r3 >> 0xa;
    0x00008d22 asrs r3, r3, 0x1f                             |     r3 >>= 0x1f;
    0x00008d24 bl 0x11ff8                                    |     fcn_00011ff8 (r0, r1, r2, r3);
    0x00008d28 str r0, [sp, 0x34]                            |     *(arg_34h) = r0;
    0x00008d2a str r1, [sp, 0x28]                            |     *(arg_28h) = r1;
    0x00008d2c b.w 0x7e1e                                    |     goto label_40;
                                                             | label_89:
    0x00008dc0 cmp r6, 0                                     |     
                                                             |     if (r6 != 0) {
    0x00008dc2 bne.w 0x91ba                                  |         goto label_177;
                                                             |     }
    0x00008dc6 ldr r2, [pc, 0x354]                           |     
    0x00008dc8 ldr r1, [pc, 0x354]                           |     
    0x00008dca str r3, [sp, 0x54]                            |     *(arg_54h) = r3;
    0x00008dcc add r2, pc                                    |     r2 = 0x11eee;
    0x00008dce ldr r4, [r2]                                  |     r4 = *(0x11eee);
    0x00008dd0 add r1, pc                                    |     r1 = 0x11ef4;
    0x00008dd2 mov r0, r4                                    |     r0 = r4;
    0x00008dd4 blx 0x3928                                    |     r0 = fcn_00003928 ();
    0x00008dd8 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00008dda beq 0x8e5c                                    |         goto label_178;
                                                             |     }
    0x00008ddc ldr r1, [pc, 0x344]                           |     
    0x00008dde mov r0, r4                                    |     r0 = r4;
    0x00008de0 add r1, pc                                    |     r1 = 0x11f08;
    0x00008de2 blx 0x3928                                    |     fcn_00003928 ();
    0x00008de6 ldr r3, [sp, 0x54]                            |     r3 = *(arg_54h);
    0x00008de8 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00008dea beq.w 0x92d4                                  |         goto label_179;
                                                             |     }
    0x00008dee ldr r0, [sp, 0x50]                            |     r0 = *(arg_50h);
                                                             |     if (r0 != 0) {
    0x00008df0 cbz r0, 0x8e24                                |         
    0x00008df2 movs r1, 0x2f                                 |         r1 = 0x2f;
    0x00008df4 blx 0x3268                                    |         fcn_00003268 ();
    0x00008df8 ldr r3, [sp, 0x54]                            |         r3 = *(arg_54h);
    0x00008dfa mov r2, r0                                    |         r2 = r0;
                                                             |         if (r0 != 0) {
    0x00008dfc cbz r0, 0x8e02                                |             
    0x00008dfe adds r2, 1                                    |             r2++;
    0x00008e00 str r2, [sp, 0x50]                            |             *(arg_50h) = r2;
                                                             |         }
    0x00008e02 ldr r1, [pc, 0x324]                           |         
    0x00008e04 movs r2, 5                                    |         r2 = 5;
    0x00008e06 ldr r4, [sp, 0x50]                            |         r4 = *(arg_50h);
    0x00008e08 str r3, [sp, 0x54]                            |         *(arg_54h) = r3;
    0x00008e0a add r1, pc                                    |         r1 = 0x11f38;
    0x00008e0c mov r0, r4                                    |         r0 = r4;
    0x00008e0e blx 0x38b8                                    |         ext2fs_unmark_generic_bmap ();
    0x00008e12 ldr r3, [sp, 0x54]                            |         r3 = *(arg_54h);
                                                             |         if (r0 != 0) {
    0x00008e14 cbnz r0, 0x8e24                               |             goto label_180;
                                                             |         }
    0x00008e16 ldrb r2, [r4, 5]                              |         r2 = *((r4 + 5));
    0x00008e18 mov r1, r4                                    |         r1 = r4;
                                                             |         if (r2 == 0) {
    0x00008e1a cbz r2, 0x8e24                                |             goto label_180;
                                                             |         }
    0x00008e1c adds r1, 5                                    |         r1 += 5;
    0x00008e1e mov r4, r1                                    |         r4 = r1;
    0x00008e20 b.w 0x78de                                    |         goto label_41;
                                                             |     }
                                                             | label_180:
    0x00008e24 ldr r4, [pc, 0x304]                           |     
    0x00008e26 mov r0, r3                                    |     r0 = r3;
    0x00008e28 ldr r2, [pc, 0x304]                           |     
    0x00008e2a add r3, sp, 0x78                              |     r3 += arg_78h;
    0x00008e2c ldr r1, [pc, 0x304]                           |     
    0x00008e2e add r4, pc                                    |     r4 = 0x11f5e;
    0x00008e30 str r3, [sp, 4]                               |     *(arg_4h) = r3;
    0x00008e32 str r4, [sp]                                  |     *(sp) = r4;
    0x00008e34 add r2, pc                                    |     r2 = 0x11f68;
    0x00008e36 add r1, pc                                    |     r1 = 0x11f6e;
    0x00008e38 movs r3, 0                                    |     r3 = 0;
    0x00008e3a bl 0xe5c4                                     |     fcn_0000e5c4 (r0);
    0x00008e3e mov r1, r4                                    |     r1 = r4;
    0x00008e40 ldr r4, [sp, 0x78]                            |     r4 = *(arg_78h);
    0x00008e42 mov r0, r4                                    |     r0 = r4;
    0x00008e44 blx 0x3928                                    |     r0 = fcn_00003928 ();
    0x00008e48 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x00008e4a bne.w 0x78de                                  |         goto label_41;
                                                             |     }
    0x00008e4e ldr r3, [pc, 0x2e8]                           |     
    0x00008e50 add r3, pc                                    |     
    0x00008e52 ldr.w r3, [r3, 0x43c]                         |     r3 = *(0x123ca);
    0x00008e56 cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x00008e58 beq.w 0x78de                                  |         goto label_41;
                                                             |     }
                                                             | label_178:
    0x00008e5c ldr r4, [pc, 0x2dc]                           |     
    0x00008e5e ldr r3, [pc, 0x2e0]                           |     
    0x00008e60 add r4, pc                                    |     r4 = 0x11fa0;
    0x00008e62 add r3, pc                                    |     r3 = 0x11fa8;
    0x00008e64 mov r1, r4                                    |     r1 = r4;
    0x00008e66 ldr.w r0, [r3, 0x434]                         |     r0 = *(0x123dc);
    0x00008e6a bl 0x61e8                                     |     r0 = fcn_000061e8 (r0, r1);
    0x00008e6e cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x00008e70 bne.w 0x78fe                                  |         goto label_39;
                                                             |     }
    0x00008e74 ldr r1, [pc, 0x2cc]                           |     
    0x00008e76 mov r2, r4                                    |     r2 = r4;
    0x00008e78 movs r0, 1                                    |     r0 = 1;
    0x00008e7a add r1, pc                                    |     r1 = 0x11fc2;
    0x00008e7c blx 0x3150                                    |     printf_chk ();
    0x00008e80 b 0x8cb2                                      |     goto label_42;
                                                             | label_127:
    0x00008e82 ldr r2, [pc, 0x2c4]                           |     
    0x00008e84 movs r0, 1                                    |     r0 = 1;
    0x00008e86 ldr r1, [pc, 0x2c4]                           |     
    0x00008e88 add r2, pc                                    |     
    0x00008e8a ldr.w r2, [r2, 0x474]                         |     r2 = *(0x1244a);
    0x00008e8e add r1, pc                                    |     r1 = 0x11fe0;
    0x00008e90 blx 0x3150                                    |     printf_chk ();
    0x00008e94 ldr r0, [pc, 0x2b8]                           |     
    0x00008e96 add r0, pc                                    |     r0 = 0x11fea;
    0x00008e98 blx 0x37d4                                    |     ext2fs_extent_insert ();
    0x00008e9c b.w 0x8156                                    |     goto label_43;
                                                             | label_131:
    0x00008ea0 ldr r2, [pc, 0x2b0]                           |     
    0x00008ea2 ldr r1, [pc, 0x2b4]                           |     
    0x00008ea4 ldr.w r0, [r6, 0x438]                         |     r0 = *((r6 + 0x438));
    0x00008ea8 add r2, pc                                    |     r2 = 0x12000;
    0x00008eaa add r1, pc                                    |     r1 = 0x12008;
    0x00008eac bl 0x6cf4                                     |     fcn_00006cf4 (r0, r1, r2);
    0x00008eb0 ldrd r2, r3, [r5, 0x18]                       |     __asm ("ldrd r2, r3, [r5, 0x18]");
    0x00008eb4 str r0, [r7]                                  |     *(r7) = r0;
    0x00008eb6 cmp.w r3, -1                                  |     
    0x00008eba it eq                                         |     
                                                             |     if (r3 != -1) {
    0x00008ebc cmpeq r2, -1                                  |         __asm ("cmpeq r2, -1");
                                                             |         goto label_181;
                                                             |     }
                                                             |     if (r3 != -1) {
                                                             | label_181:
    0x00008ec0 bne.w 0x8278                                  |         goto label_44;
                                                             |     }
    0x00008ec4 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00008ec6 beq.w 0x8278                                  |         goto label_44;
                                                             |     }
                                                             | label_132:
    0x00008eca ldrb r3, [r0]                                 |     r3 = *(r0);
    0x00008ecc cmp r3, 0                                     |     
                                                             |     if (r3 == 0) {
    0x00008ece beq.w 0x8278                                  |         goto label_44;
                                                             |     }
    0x00008ed2 ldr r3, [pc, 0x288]                           |     
    0x00008ed4 add r3, pc                                    |     r3 = 0x12036;
    0x00008ed6 ldr r1, [r3, 0x28]                            |     r1 = *(0x1205e);
    0x00008ed8 blx 0x3404                                    |     fcn_00003404 ();
    0x00008edc ldr r3, [pc, 0x280]                           |     
    0x00008ede add r3, pc                                    |     r3 = 0x12042;
    0x00008ee0 strd r0, r1, [r3, 0x18]                       |     __asm ("strd r0, r1, [r3, 0x18]");
    0x00008ee4 b.w 0x8278                                    |     goto label_44;
                                                             | label_100:
    0x00008ee8 ldrd r2, r1, [sp, 0x40]                       |     __asm ("ldrd r2, r1, [arg_40h]");
    0x00008eec ldr.w r3, [r6, 0x474]                         |     r3 = *((r6 + 0x474));
    0x00008ef0 orrs r2, r1                                   |     r2 |= r1;
                                                             |     if (r2 == r1) {
    0x00008ef2 beq.w 0x9320                                  |         goto label_182;
                                                             |     }
    0x00008ef6 mov r0, r3                                    |     r0 = r3;
    0x00008ef8 mov.w r2, 0x1b6                               |     r2 = 0x1b6;
    0x00008efc movs r1, 0x41                                 |     r1 = 0x41;
    0x00008efe blx 0x2f4c                                    |     r0 = ext2fs_open_file ();
    0x00008f02 cmp r0, 0                                     |     
                                                             |     if (r0 >= 0) {
    0x00008f04 bge.w 0x9230                                  |         goto label_183;
                                                             |     }
    0x00008f08 blx 0x3964                                    |     r0 = fcn_00003964 ();
    0x00008f0c ldr r0, [r0]                                  |     r0 = *(r0);
    0x00008f0e cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x00008f10 beq.w 0x7844                                  |         goto label_3;
                                                             |     }
    0x00008f14 movw r3, 0xb750                               |     
    0x00008f18 movt r3, 0x7f2b                               |     r3 = 0x7f2bb750;
    0x00008f1c cmp r0, r3                                    |     
                                                             |     if (r0 == r3) {
    0x00008f1e beq.w 0x7844                                  |         goto label_3;
                                                             |     }
    0x00008f22 b 0x8b76                                      |     goto label_45;
                                                             | label_86:
    0x00008f72 ldr r1, [pc, 0x1f4]                           |     
    0x00008f74 str r3, [sp]                                  |     *(sp) = r3;
    0x00008f76 add r3, sp, 0x70                              |     r3 += arg_70h;
    0x00008f78 str r3, [sp, 4]                               |     *(arg_4h) = r3;
    0x00008f7a add r1, pc                                    |     r1 = 0x120e8;
    0x00008f7c ldr r3, [pc, 0x1ec]                           |     
    0x00008f7e ldr.w r2, [r1, 0x474]                         |     r2 = *(0x1255c);
    0x00008f82 ldr.w r0, [r1, 0x434]                         |     r0 = *(0x1251c);
    0x00008f86 ldr r1, [pc, 0x1e8]                           |     
    0x00008f88 add r3, pc                                    |     r3 = 0x120f8;
    0x00008f8a add r1, pc                                    |     r1 = 0x12100;
    0x00008f8c bl 0xe5c4                                     |     fcn_0000e5c4 (r0);
    0x00008f8e invalid                                       |     
    0x00008f92 pop {r1, r2, r3, r5, r6}                      |     
                                                             | label_85:
    0x00008f94 ldr r1, [pc, 0x1dc]                           |     
    0x00008f96 str r3, [sp]                                  |     *(sp) = r3;
    0x00008f98 add r3, sp, 0x6c                              |     r3 += arg_6ch;
    0x00008f9a str r3, [sp, 4]                               |     *(arg_4h) = r3;
    0x00008f9c add r1, pc                                    |     r1 = 0x12114;
    0x00008f9e ldr r3, [pc, 0x1d8]                           |     
    0x00008fa0 ldr.w r2, [r1, 0x474]                         |     r2 = "uname";
    0x00008fa4 ldr.w r0, [r1, 0x434]                         |     r0 = *(0x12548);
    0x00008fa8 ldr r1, [pc, 0x1d0]                           |     
    0x00008faa add r3, pc                                    |     r3 = 0x12128;
    0x00008fac add r1, pc                                    |     r1 = 0x1212c;
    0x00008fae bl 0xe5c4                                     |     fcn_0000e5c4 (r0);
    0x00008fb2 b.w 0x7868                                    |     goto label_46;
    0x00008fb4 pop {r0, r3, r4, r6}                          |     
                                                             | label_88:
    0x00008fb6 str.w r0, [r5, 0x438]                         |     __asm ("str.w r0, [r5, 0x438]");
                                                             | label_61:
    0x00008fba ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00008fbc movs r2, 0x1e                                 |     r2 = 0x1e;
    0x00008fbe ldr r0, [pc, 0x1c0]                           |     
    0x00008fc0 movs r1, 1                                    |     r1 = 1;
    0x00008fc2 ldr r3, [r3]                                  |     r3 = *(r3);
    0x00008fc4 add r0, pc                                    |     r0 = 0x1214a;
    0x00008fc6 blx 0x35c4                                    |     ext2fs_namei ();
    0x00008fca movs r0, 1                                    |     r0 = 1;
    0x00008fcc blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_87:
    0x00008fd0 addw r1, r2, 0x464                            |     __asm ("addw r1, r2, 0x464");
    0x00008fd4 str r3, [sp]                                  |     *(sp) = r3;
    0x00008fd6 str r1, [sp, 4]                               |     *(arg_4h) = r1;
    0x00008fd8 ldr r1, [pc, 0x1a8]                           |     
    0x00008fda ldr.w r0, [r2, 0x434]                         |     r0 = *((r2 + 0x434));
    0x00008fde ldr r2, [pc, 0x1a8]                           |     
    0x00008fe0 add r1, pc                                    |     r1 = 0x12168;
    0x00008fe2 add r2, pc                                    |     r2 = 0x12170;
    0x00008fe4 bl 0xe5c4                                     |     fcn_0000e5c4 (r0);
    0x00008fe8 b.w 0x787e                                    |     goto label_47;
    0x00008fea pop {r0, r3, r6}                              |     
                                                             | label_130:
    0x00008fec ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00008fee movs r2, 0x6b                                 |     r2 = 0x6b;
    0x00008ff0 ldr r0, [pc, 0x198]                           |     
    0x00008ff2 movs r1, 1                                    |     r1 = 1;
    0x00008ff4 ldr r3, [r3]                                  |     r3 = *(r3);
    0x00008ff6 add r0, pc                                    |     r0 = 0x12186;
    0x00008ff8 blx 0x35c4                                    |     ext2fs_namei ();
    0x00008ffc b.w 0x81e0                                    |     goto label_48;
                                                             | label_129:
    0x00009000 str r3, [sp]                                  |     *(sp) = r3;
    0x00009002 ldr r3, [pc, 0x18c]                           |     
    0x00009004 ldr r2, [pc, 0x18c]                           |     
    0x00009006 add r3, pc                                    |     r3 = "@&@5@";
    0x00009008 ldr r0, [r3]                                  |     r0 = "@&@5@";
    0x0000900a add r2, pc                                    |     r2 = 0x121a2;
    0x0000900c mov r3, r8                                    |     r3 = r8;
    0x0000900e blx 0x322c                                    |     fcn_0000322c ();
    0x00009012 ldr r0, [r5, 0x2c]                            |     r0 = *((r5 + 0x2c));
    0x00009014 bl 0x9854                                     |     fcn_00009854 (r0);
    0x00009016 invalid                                       |     
    0x0000901a invalid                                       |     
                                                             | label_137:
    0x0000901c ldr.w r0, [r1, 0x438]                         |     r0 = *((r1 + 0x438));
    0x00009020 mov r2, r3                                    |     r2 = r3;
    0x00009022 ldr r1, [pc, 0x174]                           |     
    0x00009024 add r1, pc                                    |     r1 = 0x121c2;
    0x00009026 bl 0x6dbc                                     |     r0 = fcn_00006dbc (r0, r1, r2);
    0x0000902a cmp.w r0, 0x100                               |     
    0x0000902e mov r3, r0                                    |     r3 = r0;
    0x00009030 it lt                                         |     
                                                             |     if (r0 >= 0x100) {
    0x00009032 movlt r3, 0x100                               |         r3 = 0x100;
                                                             |     }
    0x00009036 str r3, [sp, 0x14]                            |     *(arg_14h) = r3;
    0x00009038 b.w 0x8408                                    |     goto label_49;
                                                             | label_135:
    0x0000903c ldr r3, [r5, 0x28]                            |     r3 = *((r5 + 0x28));
    0x0000903e mov.w r2, 0x400                               |     r2 = 0x400;
    0x00009042 lsls r2, r3                                   |     r2 <<= r3;
    0x00009044 asrs r3, r2, 0x1f                             |     r3 = r2 >> 0x1f;
    0x00009046 bl 0x11ff8                                    |     fcn_00011ff8 (r0, r1, r2, r3);
    0x0000904a ldr r3, [sp, 0x34]                            |     r3 = *(arg_34h);
    0x0000904c subs r7, r3, r0                               |     r7 = r3 - r0;
    0x0000904e ldr r3, [sp, 0x28]                            |     r3 = *(arg_28h);
    0x00009050 add.w r0, r5, 0x10                            |     r0 = r5 + 0x10;
    0x00009054 mov r2, r7                                    |     r2 = r7;
    0x00009056 sbc.w r6, r3, r1                              |     __asm ("sbc.w r6, r3, r1");
    0x00009058 lsls r1, r0, 0x18                             |     r1 = r0 << 0x18;
    0x0000905a mov r3, r6                                    |     r3 = r6;
    0x0000905c blx 0x39ac                                    |     fcn_000039ac ();
    0x00009060 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00009062 movs r1, 1                                    |     r1 = 1;
    0x00009064 ldr r2, [pc, 0x134]                           |     
    0x00009066 strd r7, r6, [sp]                             |     __asm ("strd r7, r6, [sp]");
    0x00009068 strb r0, [r0, 0x18]                           |     *((r0 + 0x18)) = r0;
    0x0000906a ldr r0, [r3]                                  |     r0 = *(r3);
    0x0000906c add r2, pc                                    |     r2 = 0x1220c;
    0x0000906e blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x00009072 b.w 0x83c6                                    |     goto label_50;
                                                             |     if (r0 != 0) {
    0x00009074 cbnz r0, 0x90a2                               |         void (*0x90a2)() ();
                                                             |     }
                                                             | label_162:
    0x00009076 ldr r3, [pc, 0x128]                           |     
    0x00009078 add r3, pc                                    |     r3 = 0x1221e;
    0x0000907a ldr r0, [r3, 0x2c]                            |     r0 = *(0x1224a);
    0x0000907c bl 0x9854                                     |     fcn_00009854 (r0);
    0x00009080 b.w 0x8714                                    |     goto label_51;
                                                             | label_177:
    0x000091ba ldr.w r4, [pc, 0x4cc]                         |     
    0x000091be mov r0, r3                                    |     r0 = r3;
    0x000091c0 add r4, pc                                    |     r4 = 0x1284e;
    0x000091c2 mov r1, r4                                    |     r1 = r4;
    0x000091c4 bl 0x61e8                                     |     fcn_000061e8 (r0, r1);
    0x000091c8 b.w 0x78fe                                    |     goto label_39;
                                                             | label_84:
    0x000091cc ldr.w r2, [r3, 0x480]                         |     r2 = *((r3 + 0x480));
    0x000091d0 ldr r0, [sp, 0x40]                            |     r0 = *(arg_40h);
    0x000091d2 ldr.w r3, [r3, 0x484]                         |     r3 = *((r3 + 0x484));
    0x000091d6 cmp r2, r0                                    |     
    0x000091d8 ldr r2, [sp, 0x44]                            |     r2 = *(arg_44h);
    0x000091da sbcs r3, r2                                   |     __asm ("sbcs r3, r2");
                                                             |     if (r2 >= r0) {
    0x000091dc bhs.w 0x7858                                  |         goto label_52;
                                                             |     }
    0x000091e0 ldr.w r3, [pc, 0x4a8]                         |     
    0x000091e4 ldr.w r2, [pc, 0x4a8]                         |     
    0x000091e8 add r3, pc                                    |     r3 = 0x12878;
    0x000091ea ldr r0, [r3]                                  |     r0 = *(0x12878);
    0x000091ec add r2, pc                                    |     r2 = 0x12880;
    0x000091ee ldr.w r3, [pc, 0x4a4]                         |     
    0x000091f2 add r3, pc                                    |     r3 = 0x1288c;
    0x000091f4 blx 0x322c                                    |     fcn_0000322c ();
    0x000091f8 ldr.w r3, [pc, 0x49c]                         |     
    0x000091fc add r3, pc                                    |     r3 = "discard";
    0x000091fe ldr r0, [r3, 0x2c]                            |     r0 = *(0x128c4);
    0x00009200 bl 0x9854                                     |     fcn_00009854 (r0);
    0x00009204 b.w 0x7858                                    |     goto label_52;
                                                             | label_93:
    0x00009208 ldr.w r3, [pc, 0x490]                         |     
    0x0000920c add r3, pc                                    |     r3 = "quotatype";
    0x0000920e b.w 0x7b68                                    |     goto label_34;
                                                             | label_183:
    0x00009230 vmov.i32 d16, 0                               |     __asm ("vmov.i32 d16, 0");
    0x00009234 vstr d16, [r4]                                |     __asm ("vstr d16, [r4]");
    0x00009238 blx 0x359c                                    |     fcn_0000359c ();
    0x0000923c ldr.w r1, [pc, 0x464]                         |     
    0x00009240 movs r0, 1                                    |     r0 = 1;
    0x00009242 ldr.w r2, [r6, 0x474]                         |     r2 = *((r6 + 0x474));
    0x00009246 add r1, pc                                    |     r1 = 0x128ee;
    0x00009248 blx 0x3150                                    |     printf_chk ();
    0x0000924a invalid                                       |     
    0x0000924e revsh r2, r7                                  |     __asm ("revsh r2, r7");
                                                             | label_63:
    0x00009250 bl 0x5dac                                     |     fcn_00005dac (r0);
                                                             | label_151:
    0x00009254 ldr.w r0, [pc, 0x450]                         |     
    0x00009258 add r0, pc                                    |     r0 = 0x12904;
    0x0000925a blx 0x37d4                                    |     ext2fs_extent_insert ();
    0x0000925e ldr r3, [sp, 0x2c]                            |     r3 = *(arg_2ch);
    0x00009260 cmp r3, 0                                     |     
                                                             |     if (r3 != 0) {
    0x00009262 bne.w 0x8634                                  |         goto label_24;
                                                             |     }
    0x00009266 b.w 0x8578                                    |     goto label_13;
                                                             | label_94:
    0x0000926a ldr.w r3, [pc, 0x440]                         |     
    0x0000926e add r3, pc                                    |     r3 = 0x12920;
    0x00009270 b.w 0x7b68                                    |     goto label_34;
                                                             | label_173:
    0x00009274 ldr.w r1, [pc, 0x438]                         |     
    0x00009278 mov r0, r4                                    |     r0 = r4;
    0x0000927a add r1, pc                                    |     r1 = 0x1292e;
    0x0000927c blx 0x3928                                    |     r0 = fcn_00003928 ();
    0x00009280 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x00009282 bne.w 0x8cbc                                  |         goto label_53;
                                                             |     }
    0x00009286 b 0x8cb2                                      |     goto label_42;
                                                             | label_174:
    0x00009296 ldr.w r3, [pc, 0x420]                         |     
    0x0000929a movs r2, 0                                    |     r2 = 0;
    0x0000929c movs r1, 6                                    |     r1 = 6;
    0x0000929e movs r0, 2                                    |     r0 = 2;
    0x000092a0 add r3, pc                                    |     r3 = 0x1295e;
    0x000092a2 ldr r5, [r3, 0x28]                            |     r5 = *(0x12986);
    0x000092a4 bl 0x60e8                                     |     r0 = fcn_000060e8 (r0, r1, r2);
    0x000092a8 cmp r0, 0                                     |     
                                                             |     if (r0 == 0) {
    0x000092aa beq.w 0x8cfc                                  |         goto label_54;
                                                             |     }
    0x000092ae cmp.w r5, 0x1000                              |     
    0x000092b2 it ge                                         |     
                                                             |     if (r5 < 0x1000) {
    0x000092b4 movge r5, 0x1000                              |         r5 = 0x1000;
                                                             |     }
    0x000092b8 b 0x8cfc                                      |     goto label_54;
                                                             | label_96:
    0x000092ba ldr.w r0, [pc, 0x400]                         |     
    0x000092be add r0, pc                                    |     r0 = 0x12980;
    0x000092c0 blx 0x3144                                    |     r0 = getenv (r0);
    0x000092c4 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x000092c6 bne.w 0x79e2                                  |         goto label_55;
                                                             |     }
    0x000092ca ldr r3, [pc, 0x3f4]                           |     
    0x000092cc ldr r3, [r7, r3]                              |     r3 = *((r7 + r3));
    0x000092ce ldr r3, [r3]                                  |     r3 = *(0x96c2);
    0x000092d0 b.w 0x79f4                                    |     goto label_56;
                                                             | label_179:
    0x000092d4 ldr r4, [pc, 0x3ec]                           |     
    0x000092d6 mov r0, r3                                    |     r0 = r3;
    0x000092d8 add r4, pc                                    |     r4 = 0x129a0;
    0x000092da mov r1, r4                                    |     r1 = r4;
    0x000092dc bl 0x61e8                                     |     r0 = fcn_000061e8 (r0, r1);
    0x000092e0 cmp r0, 0                                     |     
                                                             |     if (r0 != 0) {
    0x000092e2 bne.w 0x78fe                                  |         goto label_39;
                                                             |     }
    0x000092e6 ldr r1, [pc, 0x3e0]                           |     
    0x000092e8 mov r2, r4                                    |     r2 = r4;
    0x000092ea movs r0, 1                                    |     r0 = 1;
    0x000092ec add r1, pc                                    |     r1 = 0x129ba;
    0x000092ee blx 0x3150                                    |     printf_chk ();
    0x000092f2 b 0x8ca0                                      |     goto label_57;
                                                             | label_110:
    0x000092f4 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x000092f6 movs r2, 0x31                                 |     r2 = 0x31;
    0x000092f8 ldr r0, [pc, 0x3d0]                           |     
    0x000092fa movs r1, 1                                    |     r1 = 1;
    0x000092fc ldr r3, [r3]                                  |     r3 = *(r3);
    0x000092fe add r0, pc                                    |     r0 = 0x129ce;
    0x00009300 blx 0x35c4                                    |     ext2fs_namei ();
    0x00009304 movs r0, 1                                    |     r0 = 1;
    0x00009306 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_111:
    0x0000930a ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x0000930c movs r2, 0x35                                 |     r2 = 0x35;
    0x0000930e ldr r0, [pc, 0x3c0]                           |     
    0x00009310 movs r1, 1                                    |     r1 = 1;
    0x00009312 ldr r3, [r3]                                  |     r3 = *(r3);
    0x00009314 add r0, pc                                    |     r0 = 0x129ea;
    0x00009316 blx 0x35c4                                    |     ext2fs_namei ();
    0x0000931a movs r0, 1                                    |     r0 = 1;
    0x0000931c blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_182:
    0x00009320 ldr r1, [sp, 0x18]                            |     r1 = *(arg_18h);
    0x00009322 ldr r2, [pc, 0x3b0]                           |     
    0x00009324 ldr r0, [r1]                                  |     r0 = *(r1);
    0x00009326 movs r1, 1                                    |     r1 = 1;
    0x00009328 add r2, pc                                    |     r2 = 0x12a02;
    0x0000932a blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x0000932e movs r0, 1                                    |     r0 = 1;
    0x00009330 blx 0x3934                                    |     fcn_00003934 ();
    0x00009332 invalid                                       |     
                                                             | label_98:
    0x00009334 ldr r4, [pc, 0x3a0]                           |     
    0x00009336 mov r1, r8                                    |     r1 = r8;
    0x00009338 ldr r2, [pc, 0x3a0]                           |     
    0x0000933a str r0, [sp]                                  |     *(sp) = r0;
    0x0000933c add r4, pc                                    |     r4 = 0x12a18;
    0x0000933e ldr r0, [r4]                                  |     r0 = *(0x12a18);
    0x00009340 add r2, pc                                    |     r2 = 0x12a20;
    0x00009342 blx 0x322c                                    |     fcn_0000322c ();
    0x00009346 movs r0, 1                                    |     r0 = 1;
    0x00009348 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_97:
    0x0000934c ldr r0, [pc, 0x390]                           |     
    0x0000934e mov r1, r8                                    |     r1 = r8;
    0x00009350 ldr r2, [pc, 0x390]                           |     
    0x00009352 ldr.w r3, [sb, 0x478]                         |     r3 = *((sb + 0x478));
    0x00009356 add r0, pc                                    |     
    0x00009358 ldr r0, [r0]                                  |     r0 = *(0x12a3a);
    0x0000935a add r2, pc                                    |     r2 = 0x12a42;
    0x0000935c blx 0x322c                                    |     fcn_0000322c ();
    0x00009360 movs r0, 1                                    |     r0 = 1;
    0x00009362 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_109:
    0x00009366 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00009368 ldr r0, [pc, 0x37c]                           |     
    0x0000936a ldr r3, [r3]                                  |     r3 = *(r3);
    0x0000936c add r0, pc                                    |     r0 = 0x12a58;
                                                             | label_59:
    0x0000936e movs r2, 0x30                                 |     r2 = 0x30;
    0x00009370 movs r1, 1                                    |     r1 = 1;
    0x00009372 blx 0x35c4                                    |     ext2fs_namei ();
    0x00009376 movs r0, 1                                    |     r0 = 1;
    0x00009378 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_77:
    0x0000937c ldr r3, [pc, 0x36c]                           |     
    0x0000937e movw r1, 0xb746                               |     
    0x00009382 ldr r2, [pc, 0x36c]                           |     
    0x00009384 movt r1, 0x7f2b                               |     r1 = 0x7f2bb746;
    0x00009388 add r3, pc                                    |     r3 = 0x12a78;
    0x0000938a ldr r0, [r3]                                  |     r0 = *(0x12a78);
    0x0000938c add r2, pc                                    |     r2 = 0x12a82;
    0x0000938e blx 0x322c                                    |     fcn_0000322c ();
    0x00009392 movs r0, 1                                    |     r0 = 1;
    0x00009394 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_136:
    0x00009398 ldr r0, [pc, 0x358]                           |     
    0x0000939a ldr r2, [pc, 0x35c]                           |     
    0x0000939c add r0, pc                                    |     r0 = 0x12a94;
    0x0000939e add r2, pc                                    |     r2 = 0x12a9c;
                                                             |     do {
                                                             | label_58:
    0x000093a0 ldr r0, [r0]                                  |         r0 = *(r0);
    0x000093a2 movs r1, 0                                    |         r1 = 0;
    0x000093a4 blx 0x322c                                    |         fcn_0000322c ();
    0x000093a8 movs r0, 1                                    |         r0 = 1;
    0x000093aa blx 0x3934                                    |         fcn_00003934 ();
                                                             | label_95:
    0x000093ae ldr r0, [pc, 0x34c]                           |         
    0x000093b0 mov r3, sl                                    |         r3 = sl;
    0x000093b2 ldr r2, [pc, 0x34c]                           |         
    0x000093b4 movs r1, 0                                    |         r1 = 0;
    0x000093b6 add r0, pc                                    |         
    0x000093b8 ldr r0, [r0]                                  |         r0 = *(0x12ab8);
    0x000093ba add r2, pc                                    |         r2 = 0x12ac0;
    0x000093bc blx 0x322c                                    |         fcn_0000322c ();
    0x000093c0 bl 0x5dac                                     |         fcn_00005dac (r0);
                                                             | label_67:
    0x000093c4 ldr r0, [pc, 0x33c]                           |         
    0x000093c6 ldr r3, [sp, 0x34]                            |         r3 = *(arg_34h);
    0x000093c8 ldr r2, [pc, 0x33c]                           |         
    0x000093ca add r0, pc                                    |         r0 = 0x12ad2;
    0x000093cc ldr r3, [r3]                                  |         r3 = *(r3);
    0x000093ce add r2, pc                                    |         r2 = 0x12ada;
    0x000093d0 b 0x93a0                                      |         
                                                             |     } while (1);
                                                             | label_66:
    0x000093d2 ldr r0, [pc, 0x338]                           |     
    0x000093d4 ldr r3, [pc, 0x338]                           |     
    0x000093d6 ldr r2, [pc, 0x33c]                           |     
    0x000093d8 add r0, pc                                    |     r0 = 0x12aea;
    0x000093da add r3, pc                                    |     r3 = 0x12aee;
    0x000093dc add r2, pc                                    |     r2 = 0x12af6;
    0x000093de b 0x93a0                                      |     goto label_58;
                                                             | label_153:
    0x000093ee ldr r3, [pc, 0x334]                           |     
    0x000093f0 ldr r2, [pc, 0x334]                           |     
    0x000093f2 strd ip, r0, [sp]                             |     __asm ("strd ip, r0, [sp]");
    0x000093f6 add r3, pc                                    |     r3 = 0x12b20;
    0x000093f8 ldr r0, [r3]                                  |     r0 = *(0x12b20);
    0x000093fa add r2, pc                                    |     r2 = 0x12b26;
    0x000093fc blx 0x322c                                    |     fcn_0000322c ();
    0x00009400 movs r0, 1                                    |     r0 = 1;
    0x00009402 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_165:
    0x00009406 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00009408 movs r1, 1                                    |     r1 = 1;
    0x0000940a ldr r2, [pc, 0x320]                           |     
    0x0000940c ldr r0, [r3]                                  |     r0 = *(r3);
    0x0000940e mov r3, r5                                    |     r3 = r5;
    0x00009410 add r2, pc                                    |     r2 = 0x12b42;
    0x00009412 blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x00009416 movs r0, 1                                    |     r0 = 1;
    0x00009418 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_171:
    0x0000941c ldr r0, [pc, 0x310]                           |     
    0x0000941e mov r3, r7                                    |     r3 = r7;
    0x00009420 ldr r2, [pc, 0x310]                           |     
    0x00009422 add r0, pc                                    |     r0 = 0x12b56;
    0x00009424 add r2, pc                                    |     r2 = 0x12b5c;
    0x00009426 b 0x93a0                                      |     goto label_58;
                                                             | label_120:
    0x00009428 ldr r2, [sp, 0x34]                            |     r2 = *(arg_34h);
    0x0000942a mov.w r4, 0x400                               |     r4 = 0x400;
    0x0000942e lsls r4, r6                                   |     r4 <<= r6;
    0x00009430 movs r1, 1                                    |     r1 = 1;
    0x00009432 str r2, [sp]                                  |     *(sp) = r2;
    0x00009434 ldr.w r3, [r3, 0x474]                         |     r3 = *((r3 + 0x474));
    0x00009438 ldr r2, [pc, 0x2fc]                           |     
    0x0000943a str r3, [sp, 8]                               |     *(arg_8h) = r3;
    0x0000943c ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x0000943e add r2, pc                                    |     r2 = 0x12b7a;
    0x00009440 ldr r0, [r3]                                  |     r0 = *(r3);
    0x00009442 ldr r3, [sp, 0x28]                            |     r3 = *(arg_28h);
    0x00009444 str r3, [sp, 4]                               |     *(arg_4h) = r3;
    0x00009446 ldr r3, [pc, 0x2f4]                           |     
    0x00009448 add r3, pc                                    |     
    0x0000944a ldr r3, [r3]                                  |     r3 = *(0x12b8a);
    0x0000944c str r4, [sp, 0xc]                             |     *(arg_ch) = r4;
    0x0000944e blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x00009452 movs r0, 1                                    |     r0 = 1;
    0x00009454 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_148:
    0x00009458 ldr r1, [pc, 0x2e4]                           |     
    0x0000945a movs r0, 0x80                                 |     r0 = 0x80;
    0x0000945c ldr r2, [pc, 0x2e4]                           |     
    0x0000945e strd r0, r8, [sp]                             |     __asm ("strd r0, r8, [sp]");
    0x00009462 add r1, pc                                    |     r1 = 0x12ba6;
    0x00009464 ldr r3, [sp, 0x14]                            |     r3 = *(arg_14h);
    0x00009466 ldr r0, [r1]                                  |     r0 = *(0x12ba6);
    0x00009468 add r2, pc                                    |     r2 = 0x12bb0;
    0x0000946a movs r1, 0                                    |     r1 = 0;
    0x0000946c blx 0x322c                                    |     fcn_0000322c ();
    0x00009470 movs r0, 1                                    |     r0 = 1;
    0x00009472 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_112:
    0x00009476 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x00009478 ldr r0, [pc, 0x2cc]                           |     
    0x0000947a ldr r3, [r3]                                  |     r3 = *(r3);
    0x0000947c add r0, pc                                    |     r0 = 0x12bc8;
    0x0000947e b 0x936e                                      |     goto label_59;
                                                             | label_159:
    0x00009480 ldr r3, [pc, 0x2c8]                           |     
    0x00009482 mov r0, r5                                    |     r0 = r5;
    0x00009484 ldr r4, [r4, 0x10]                            |     r4 = *((r4 + 0x10));
    0x00009486 add r3, pc                                    |     r3 = 0x12bd6;
    0x00009488 ldr r5, [r3]                                  |     r5 = *(0x12bd6);
    0x0000948a blx 0x347c                                    |     fcn_0000347c ();
    0x0000948e ldr r2, [pc, 0x2c0]                           |     
    0x00009490 strd r0, r1, [sp, 8]                          |     __asm ("strd r0, r1, [sp, 8]");
    0x00009494 mov r0, r5                                    |     r0 = r5;
    0x00009496 ldr r3, [sp, 0x14]                            |     r3 = *(arg_14h);
    0x00009498 movs r1, 0                                    |     r1 = 0;
    0x0000949a add r2, pc                                    |     r2 = 0x12bf0;
    0x0000949c str r4, [sp]                                  |     *(sp) = r4;
    0x0000949e blx 0x322c                                    |     fcn_0000322c ();
    0x000094a2 movs r0, 1                                    |     r0 = 1;
    0x000094a4 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_163:
    0x000094a8 blx 0x36bc                                    |     fcn_000036bc ();
                                                             | label_156:
    0x000094ac ldr r0, [pc, 0x2a4]                           |     
    0x000094ae ldr r3, [pc, 0x2a8]                           |     
    0x000094b0 ldr r2, [pc, 0x2a8]                           |     
    0x000094b2 add r0, pc                                    |     
    0x000094b4 ldr r0, [r0]                                  |     r0 = *(0x12c0a);
    0x000094b6 add r3, pc                                    |     r3 = 0x12c14;
    0x000094b8 add r2, pc                                    |     r2 = 0x12c18;
    0x000094ba blx 0x322c                                    |     fcn_0000322c ();
    0x000094be movs r0, 1                                    |     r0 = 1;
    0x000094c0 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_121:
    0x000094c4 str r0, [sp]                                  |     *(sp) = r0;
    0x000094c6 mov.w r4, 0x400                               |     r4 = 0x400;
    0x000094ca ldr.w r3, [r8, 0x474]                         |     r3 = *((r8 + 0x474));
    0x000094ce lsl.w r1, r4, r1                              |     r1 = r4 << r1;
    0x000094d2 ldr r2, [pc, 0x28c]                           |     
    0x000094d4 str r3, [sp, 8]                               |     *(arg_8h) = r3;
    0x000094d6 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x000094d8 add r2, pc                                    |     r2 = 0x12c3e;
    0x000094da ldr r0, [r3]                                  |     r0 = *(r3);
    0x000094dc ldr r3, [sp, 0x28]                            |     r3 = *(arg_28h);
    0x000094de str r3, [sp, 4]                               |     *(arg_4h) = r3;
    0x000094e0 ldr r3, [pc, 0x280]                           |     
    0x000094e2 add r3, pc                                    |     
    0x000094e4 ldr r3, [r3]                                  |     
    0x000094e6 str r1, [sp, 0xc]                             |     *(arg_ch) = r1;
    0x000094e8 mov r1, r6                                    |     r1 = r6;
    0x000094ea blx 0x36f0                                    |     ext2fs_bg_itable_unused_set ();
    0x000094ee mov r0, r6                                    |     r0 = r6;
    0x000094f0 blx 0x3934                                    |     fcn_00003934 ();
    0x000094f4 ldr r3, [sp, 0x18]                            |     r3 = *(arg_18h);
    0x000094f6 movs r2, 0x3e                                 |     r2 = 0x3e;
    0x000094f8 ldr r0, [pc, 0x26c]                           |     
    0x000094fa movs r1, 1                                    |     r1 = 1;
    0x000094fc ldr r3, [r3]                                  |     r3 = *(0x12c4a);
    0x000094fe add r0, pc                                    |     r0 = 0x12c6a;
    0x00009500 blx 0x35c4                                    |     ext2fs_namei ();
    0x00009504 movs r0, 1                                    |     r0 = 1;
    0x00009506 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_145:
    0x0000950a ldr r0, [pc, 0x260]                           |     
    0x0000950c ldr r3, [pc, 0x260]                           |     
    0x0000950e ldr r2, [pc, 0x264]                           |     
    0x00009510 add r0, pc                                    |     r0 = 0x12c82;
    0x00009512 add r3, pc                                    |     r3 = 0x12c86;
    0x00009514 add r2, pc                                    |     r2 = 0x12c8e;
    0x00009516 b 0x93a0                                      |     goto label_58;
                                                             | label_164:
    0x00009518 ldr r1, [pc, 0x25c]                           |     
    0x0000951a add.w r3, r3, 0x40000000                      |     r3 += 0x40000000;
    0x0000951e ldr.w r0, [r8, 0x474]                         |     r0 = *((r8 + 0x474));
    0x00009522 subs r3, 1                                    |     r3--;
    0x00009524 ldr r2, [pc, 0x254]                           |     
    0x00009526 add r1, pc                                    |     r1 = 0x12ca2;
    0x00009528 str r0, [sp]                                  |     *(sp) = r0;
    0x0000952a add r2, pc                                    |     r2 = 0x12caa;
    0x0000952c ldr r0, [r1]                                  |     r0 = *(0x12ca2);
    0x0000952e ldr.w r3, [r5, r3, lsl 2]                     |     offset_4 = r3 << 2;
                                                             |     r3 = *((r5 + offset_4));
    0x00009532 movs r1, 0                                    |     r1 = 0;
    0x00009534 blx 0x322c                                    |     fcn_0000322c ();
    0x00009538 movs r0, 1                                    |     r0 = 1;
    0x0000953a blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_113:
    0x0000953e ldr r4, [pc, 0x240]                           |     
    0x00009540 ldr r3, [pc, 0x240]                           |     
    0x00009542 ldr r2, [pc, 0x244]                           |     
    0x00009544 add r4, pc                                    |     r4 = 0x12cca;
    0x00009546 add r3, pc                                    |     r3 = 0x12cce;
    0x00009548 add r2, pc                                    |     r2 = 0x12cd6;
    0x0000954a b.w 0x8b88                                    |     goto label_60;
                                                             | label_114:
    0x0000954e ldr r0, [pc, 0x23c]                           |     
    0x00009550 mov r1, r4                                    |     r1 = r4;
    0x00009552 ldr r3, [pc, 0x23c]                           |     
    0x00009554 ldr r2, [pc, 0x23c]                           |     
    0x00009556 add r0, pc                                    |     
    0x00009558 ldr r0, [r0]                                  |     r0 = imp._et_list;
    0x0000955a add r3, pc                                    |     r3 = 0x12cf0;
    0x0000955c add r2, pc                                    |     r2 = "small";
    0x0000955e blx 0x322c                                    |     fcn_0000322c ();
    0x00009562 movs r0, 1                                    |     r0 = 1;
    0x00009564 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_116:
    0x00009568 ldr r0, [pc, 0x22c]                           |     
    0x0000956a movs r1, 0x16                                 |     r1 = 0x16;
    0x0000956c ldr r3, [pc, 0x22c]                           |     
    0x0000956e ldr r2, [pc, 0x230]                           |     
    0x00009570 add r0, pc                                    |     
    0x00009572 ldr r0, [r0]                                  |     r0 = imp._et_list;
    0x00009574 add r3, pc                                    |     r3 = 0x12d14;
    0x00009576 add r2, pc                                    |     r2 = 0x12d1c;
    0x00009578 blx 0x322c                                    |     fcn_0000322c ();
    0x0000957c movs r0, 1                                    |     r0 = 1;
    0x0000957e blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_138:
    0x00009582 ldr r0, [pc, 0x220]                           |     
    0x00009584 ldr r3, [pc, 0x220]                           |     
    0x00009586 ldr r2, [pc, 0x224]                           |     
    0x00009588 add r0, pc                                    |     
    0x0000958a ldr r0, [r0]                                  |     r0 = *(0x12d32);
    0x0000958c add r3, pc                                    |     r3 = 0x12d38;
    0x0000958e add r2, pc                                    |     r2 = "MKE2FS_CONFIG";
    0x00009590 blx 0x322c                                    |     fcn_0000322c ();
    0x00009594 movs r0, 1                                    |     r0 = 1;
    0x00009596 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_73:
    0x0000959a ldr r0, [pc, 0x214]                           |     
    0x0000959c ldr r3, [sp, 0x34]                            |     r3 = *(arg_34h);
    0x0000959e ldr r2, [pc, 0x214]                           |     
    0x000095a0 add r0, pc                                    |     r0 = 0x12d56;
    0x000095a2 ldr r3, [r3]                                  |     r3 = *(r3);
    0x000095a4 add r2, pc                                    |     r2 = 0x12d5e;
    0x000095a6 b 0x93a0                                      |     goto label_58;
                                                             | label_71:
    0x000095a8 ldr r0, [pc, 0x20c]                           |     
    0x000095aa ldr r3, [pc, 0x210]                           |     
    0x000095ac ldr r2, [pc, 0x210]                           |     
    0x000095ae add r0, pc                                    |     r0 = 0x12d6a;
    0x000095b0 add r3, pc                                    |     r3 = 0x12d72;
    0x000095b2 add r2, pc                                    |     r2 = 0x12d76;
    0x000095b4 b 0x93a0                                      |     goto label_58;
                                                             | label_70:
    0x000095b6 ldr r0, [pc, 0x20c]                           |     
    0x000095b8 movs r1, 0xc                                  |     r1 = 0xc;
    0x000095ba ldr r3, [pc, 0x20c]                           |     
    0x000095bc ldr r2, [pc, 0x20c]                           |     
    0x000095be add r0, pc                                    |     
    0x000095c0 ldr r0, [r0]                                  |     r0 = *(0x12d88);
    0x000095c2 add r3, pc                                    |     r3 = "mke3fs";
    0x000095c4 add r2, pc                                    |     r2 = 0x12d94;
    0x000095c6 blx 0x322c                                    |     fcn_0000322c ();
    0x000095ca movs r0, 1                                    |     r0 = 1;
    0x000095cc blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_68:
    0x000095d0 ldr r0, [pc, 0x1fc]                           |     
    0x000095d2 movw r1, 0xb714                               |     
    0x000095d6 ldr r2, [pc, 0x1fc]                           |     
    0x000095d8 movt r1, 0x7f2b                               |     r1 = 0x7f2bb714;
    0x000095dc add r0, pc                                    |     
    0x000095de ldr r0, [r0]                                  |     r0 = "Warning: blocksize %d not usable on most systems.\n";
    0x000095e0 add r2, pc                                    |     r2 = 0x12dba;
    0x000095e2 blx 0x322c                                    |     fcn_0000322c ();
    0x000095e6 movs r0, 1                                    |     r0 = 1;
    0x000095e8 blx 0x3934                                    |     fcn_00003934 ();
                                                             | label_76:
    0x000095ec ldr r0, [pc, 0x1e8]                           |     
    0x000095ee ldr r3, [pc, 0x1ec]                           |     
    0x000095f0 ldr r2, [pc, 0x1ec]                           |     
    0x000095f2 add r0, pc                                    |     r0 = 0x12dce;
    0x000095f4 add r3, pc                                    |     r3 = 0x12dd6;
    0x000095f6 add r2, pc                                    |     r2 = 0x12dda;
    0x000095f8 b 0x93a0                                      |     goto label_58;
                                                             | label_79:
    0x000095fa ldr r0, [pc, 0x1e8]                           |     
    0x000095fc ldr r3, [pc, 0x1e8]                           |     
    0x000095fe ldr r2, [pc, 0x1ec]                           |     
    0x00009600 add r0, pc                                    |     r0 = 0x12dea;
    0x00009602 add r3, pc                                    |     r3 = 0x12dee;
    0x00009604 add r2, pc                                    |     r2 = 0x12df6;
    0x00009606 b 0x93a0                                      |     goto label_58;
                                                             | label_102:
    0x00009608 ldr r0, [pc, 0x1e4]                           |     
    0x0000960a ldr r3, [pc, 0x1e8]                           |     
    0x0000960c ldr r2, [pc, 0x1e8]                           |     
    0x0000960e add r0, pc                                    |     r0 = 0x12e02;
    0x00009610 add r3, pc                                    |     r3 = 0x12e0a;
    0x00009612 add r2, pc                                    |     r2 = 0x12e0e;
    0x00009614 b 0x93a0                                      |     goto label_58;
                                                             | label_104:
    0x00009616 ldr r0, [sp, 0x78]                            |     r0 = *(arg_78h);
    0x00009618 blx 0x332c                                    |     fcn_0000332c ();
    0x0000961c mov r0, sb                                    |     r0 = sb;
    0x0000961e blx 0x332c                                    |     fcn_0000332c ();
    0x00009622 ldr r3, [pc, 0x1d8]                           |     
    0x00009624 add r3, pc                                    |     r3 = 0x12e26;
    0x00009626 str.w r5, [r3, 0x438]                         |     __asm ("str.w r5, [r3, 0x438]");
    0x0000962a b 0x8fba                                      |     goto label_61;
                                                             | label_169:
    0x0000962c ldr r0, [pc, 0x1d0]                           |     
    0x0000962e mov r3, r7                                    |     r3 = r7;
    0x00009630 ldr r2, [pc, 0x1d0]                           |     
    0x00009632 add r0, pc                                    |     r0 = 0x12e36;
    0x00009634 add r2, pc                                    |     r2 = 0x12e3c;
    0x00009636 b 0x93a0                                      |     goto label_58;
                                                             | label_103:
    0x00009638 ldr r0, [pc, 0x1cc]                           |     
    0x0000963a ldr r3, [pc, 0x1d0]                           |     
    0x0000963c ldr r2, [pc, 0x1d0]                           |     
    0x0000963e add r0, pc                                    |     r0 = 0x12e4a;
    0x00009640 add r3, pc                                    |     r3 = 0x12e52;
    0x00009642 add r2, pc                                    |     r2 = 0x12e56;
    0x00009644 b 0x93a0                                      |     goto label_58;
                                                             | label_144:
    0x0000965e ldr r0, [pc, 0x1c0]                           |     
    0x00009660 ldr r3, [pc, 0x1c0]                           |     
    0x00009662 ldr r2, [pc, 0x1c4]                           |     
    0x00009664 add r0, pc                                    |     
    0x00009666 ldr r0, [r0]                                  |     r0 = *(0x12e8a);
    0x00009668 add r3, pc                                    |     r3 = 0x12e90;
    0x0000966a add r2, pc                                    |     r2 = 0x12e98;
    0x0000966c blx 0x322c                                    |     fcn_0000322c ();
    0x00009670 movs r0, 1                                    |     r0 = 1;
    0x00009672 blx 0x3934                                    |     fcn_00003934 ();
    0x00009676 ldr r0, [pc, 0x1b4]                           |     
    0x00009678 add r0, pc                                    |     r0 = 0x12eaa;
    0x0000967a blx 0x37d4                                    |     ext2fs_extent_insert ();
    0x0000967e movs r0, 1                                    |     r0 = 1;
    0x00009680 blx 0x3934                                    |     fcn_00003934 ();
    0x00009684 add r0, sp, 0x298                             |     r0 += arg_298h;
    0x00009686 movs r0, r0                                   |     
    0x00009688 ldr r3, [sp, 0x80]                            |     r3 = *(arg_80h);
    0x0000968a movs r0, r0                                   |     
    0x0000968c cdp2 p0, 4, c0, c12, c0, 0                    |     __asm ("cdp2 p0, 4, c0, c12, c0, 0");
                                                             |     if (r4 != 0) {
    0x00009690 cbz r4, 0x969e                                |         
    0x00009692 movs r0, r0                                   |         
    0x00009694 adr r2, 0x88                                  |         r2 = 0x88;
    0x00009696 movs r0, r0                                   |         
    0x00009698 cdp2 p0, 0, c0, c8, c0, 0                     |         __asm ("cdp2 p0, 0, c0, c8, c0, 0");
    0x0000969c ldr r2, [sp, 0x3b0]                           |         r2 = *(arg_3b0h);
                                                             |     }
    0x0000969e movs r0, r0                                   |     
    0x000096a0 adr r7, 0x170                                 |     r7 = 0x170;
    0x000096a2 movs r0, r0                                   |     
    0x000096a4 adr r0, 0x138                                 |     r0 = 0x138;
    0x000096a6 movs r0, r0                                   |     
    0x000096a8 add r6, sp, 0x120                             |     r6 += arg_120h;
    0x000096aa movs r0, r0                                   |     
    0x000096ac ldr r2, [sp, 0x258]                           |     r2 = *(arg_258h);
    0x000096ae movs r0, r0                                   |     
    0x000096b0 adr r2, 0x108                                 |     r2 = 0x108;
    0x000096b2 movs r0, r0                                   |     
    0x000096b4 cdp2 p0, 0, c0, c6, c0, 0                     |     __asm ("cdp2 p0, 0, c0, c6, c0, 0");
    0x000096b8 stc2l p0, c0, [r4, -0]!                       |     __asm ("stc2l p0, c0, [r4, -0]!");
    0x000096bc ldr r6, [sp, 0x278]                           |     r6 = *(arg_278h);
    0x000096be movs r0, r0                                   |     
    0x000096c0 lsls r0, r0, 0xf                              |     r0 <<= 0xf;
    0x000096c2 movs r0, r0                                   |     
    0x000096c4 ldr r1, [sp, 0x3e0]                           |     r1 = *(arg_3e0h);
    0x000096c6 movs r0, r0                                   |     
    0x000096c8 adr r1, 0x240                                 |     r1 = 0x240;
    0x000096ca movs r0, r0                                   |     
    0x000096cc adr r3, 0xe8                                  |     r3 = 0xe8;
    0x000096ce movs r0, r0                                   |     
    0x000096d0 adr r3, 0x160                                 |     r3 = 0x160;
    0x000096d2 movs r0, r0                                   |     
    0x000096d4 ldr r7, [sp, 0xd0]                            |     r7 = *(arg_d0h);
    0x000096d6 movs r0, r0                                   |     
    0x000096d8 ldc2l p0, c0, [r8], 0                         |     __asm ("ldc2l p0, c0, [r8], 0");
    0x000096dc ldr r6, [sp, 0x150]                           |     r6 = *(arg_150h);
    0x000096de movs r0, r0                                   |     
    0x000096e0 ldc2l p0, c0, [lr], {0}                       |     __asm ("ldc2l p0, c0, [lr], {0}");
    0x000096e4 ldr r6, [sp, 0x48]                            |     r6 = *(arg_48h);
    0x000096e6 movs r0, r0                                   |     
    0x000096e8 adr r2, 0x260                                 |     r2 = 0x260;
    0x000096ea movs r0, r0                                   |     
    0x000096ec stc2 p0, c0, [ip], 0                          |     __asm ("stc2 p0, c0, [ip], 0");
    0x000096f0 ldr r4, [sp, 0x2a0]                           |     r4 = *(arg_2a0h);
    0x000096f2 movs r0, r0                                   |     
    0x000096f4 ldc2 p0, c0, [r8], {0}                        |     __asm ("ldc2 p0, c0, [r8], {0}");
    0x000096f8 add r2, sp, 0x1b8                             |     r2 += arg_1b8h;
    0x000096fa movs r0, r0                                   |     
    0x000096fc ldc2l p0, c0, [lr], -0                        |     __asm ("ldc2l p0, c0, [lr], -0");
    0x00009700 ldr r2, [sp, 0x228]                           |     r2 = *(arg_228h);
    0x00009702 movs r0, r0                                   |     
    0x00009704 stc2l p0, c0, [sl], -0                        |     __asm ("stc2l p0, c0, [sl], -0");
    0x00009708 ldr r4, [sp, 0x238]                           |     r4 = *(arg_238h);
    0x0000970a movs r0, r0                                   |     
    0x0000970c mrrc2 p0, 0, r0, ip, c0                       |     __asm ("mrrc2 p0, 0, r0, ip, c0");
    0x00009710 ldr r4, [sp, 0x2f8]                           |     r4 = *(arg_2f8h);
    0x00009712 movs r0, r0                                   |     
    0x00009714 add r7, sp, 0xf0                              |     r7 += arg_f0h;
    0x00009716 movs r0, r0                                   |     
    0x00009718 mcrr2 p0, 0, r0, lr, c0                       |     __asm ("mcrr2 p0, 0, r0, lr, c0");
    0x0000971c adr r6, 0x1f0                                 |     r6 = 0x1f0;
    0x0000971e movs r0, r0                                   |     
    0x00009720 add r7, sp, 0xb8                              |     r7 += arg_b8h;
    0x00009722 movs r0, r0                                   |     
    0x00009724 ldc2 p0, c0, [lr], -0                         |     __asm ("ldc2 p0, c0, [lr], -0");
    0x00009728 add r4, sp, 0x3a8                             |     r4 += arg_3a8h;
    0x0000972a movs r0, r0                                   |     
    0x0000972c adr r1, 0x300                                 |     r1 = 0x300;
    0x0000972e movs r0, r0                                   |     
    0x00009730 invalid                                       |     
                                                             | }

[*] Function popen used 3 times mkfs.ext3